#include "push.h"
#include "privatePush.h"
Defines | |
#define | SPRING "spring" |
#define | GAUSS "gauss" |
#define | COULOMB "coulomb" |
#define | COTAN "cotan" |
#define | ZERO "zero" |
#define | _GAUSS(x, sig, cut) |
#define | _DGAUSS(x, sig, cut) |
Functions | |
void | _pushEnergyUnknownEval (double *enr, double *frc, double dist, const double *parm) |
double | _pushEnergyUnknownSupport (const double *parm) |
void | _pushEnergySpringEval (double *enr, double *frc, double dist, const double *parm) |
double | _pushEnergySpringSupport (const double *parm) |
void | _pushEnergyGaussEval (double *enr, double *frc, double dist, const double *parm) |
double | _pushEnergyGaussSupport (const double *parm) |
void | _pushEnergyCoulombEval (double *enr, double *frc, double dist, const double *parm) |
double | _pushEnergyCoulombSupport (const double *parm) |
void | _pushEnergyCotanEval (double *enr, double *frc, double dist, const double *parm) |
double | _pushEnergyCotanSupport (const double *parm) |
void | _pushEnergyZeroEval (double *enr, double *frc, double dist, const double *parm) |
double | _pushEnergyZeroSupport (const double *parm) |
pushEnergySpec * | pushEnergySpecNew () |
void | pushEnergySpecSet (pushEnergySpec *ensp, const pushEnergy *energy, const double parm[PUSH_ENERGY_PARM_NUM]) |
pushEnergySpec * | pushEnergySpecNix (pushEnergySpec *ensp) |
int | pushEnergySpecParse (pushEnergySpec *ensp, const char *_str) |
int | _pushHestEnergyParse (void *ptr, char *str, char err[AIR_STRLEN_HUGE]) |
Variables | |
char | _pushEnergyTypeStr [PUSH_ENERGY_TYPE_MAX+1][AIR_STRLEN_SMALL] |
char | _pushEnergyTypeDesc [PUSH_ENERGY_TYPE_MAX+1][AIR_STRLEN_MED] |
airEnum | _pushEnergyType |
airEnum * | pushEnergyType = &_pushEnergyType |
pushEnergy | _pushEnergyUnknown |
const pushEnergy *const | pushEnergyUnknown = &_pushEnergyUnknown |
const pushEnergy | _pushEnergySpring |
const pushEnergy *const | pushEnergySpring = &_pushEnergySpring |
const pushEnergy | _pushEnergyGauss |
const pushEnergy *const | pushEnergyGauss = &_pushEnergyGauss |
const pushEnergy | _pushEnergyCoulomb |
const pushEnergy *const | pushEnergyCoulomb = &_pushEnergyCoulomb |
const pushEnergy | _pushEnergyCotan |
const pushEnergy *const | pushEnergyCotan = &_pushEnergyCotan |
const pushEnergy | _pushEnergyZero |
const pushEnergy *const | pushEnergyZero = &_pushEnergyZero |
const pushEnergy *const | pushEnergyAll [PUSH_ENERGY_TYPE_MAX+1] |
hestCB | _pushHestEnergySpec |
hestCB * | pushHestEnergySpec = &_pushHestEnergySpec |
#define _DGAUSS | ( | x, | |||
sig, | |||||
cut | ) |
Value:
( \ x >= sig*cut ? 0 \ : -exp(-x*x/(2.0*sig*sig))*x/(sig*sig*sig*2.50662827463100050241))
#define _GAUSS | ( | x, | |||
sig, | |||||
cut | ) |
Value:
( \ x >= sig*cut ? 0 \ : exp(-x*x/(2.0*sig*sig))/(sig*2.50662827463100050241))
#define COTAN "cotan" |
#define COULOMB "coulomb" |
#define GAUSS "gauss" |
#define SPRING "spring" |
#define ZERO "zero" |
void _pushEnergyCotanEval | ( | double * | enr, | |
double * | frc, | |||
double | dist, | |||
const double * | parm | |||
) |
double _pushEnergyCotanSupport | ( | const double * | parm | ) |
void _pushEnergyCoulombEval | ( | double * | enr, | |
double * | frc, | |||
double | dist, | |||
const double * | parm | |||
) |
double _pushEnergyCoulombSupport | ( | const double * | parm | ) |
void _pushEnergyGaussEval | ( | double * | enr, | |
double * | frc, | |||
double | dist, | |||
const double * | parm | |||
) |
double _pushEnergyGaussSupport | ( | const double * | parm | ) |
void _pushEnergySpringEval | ( | double * | enr, | |
double * | frc, | |||
double | dist, | |||
const double * | parm | |||
) |
double _pushEnergySpringSupport | ( | const double * | parm | ) |
void _pushEnergyUnknownEval | ( | double * | enr, | |
double * | frc, | |||
double | dist, | |||
const double * | parm | |||
) |
double _pushEnergyUnknownSupport | ( | const double * | parm | ) |
void _pushEnergyZeroEval | ( | double * | enr, | |
double * | frc, | |||
double | dist, | |||
const double * | parm | |||
) |
double _pushEnergyZeroSupport | ( | const double * | parm | ) |
int _pushHestEnergyParse | ( | void * | ptr, | |
char * | str, | |||
char | err[AIR_STRLEN_HUGE] | |||
) |
pushEnergySpec* pushEnergySpecNew | ( | ) |
pushEnergySpec* pushEnergySpecNix | ( | pushEnergySpec * | ensp | ) |
int pushEnergySpecParse | ( | pushEnergySpec * | ensp, | |
const char * | _str | |||
) |
void pushEnergySpecSet | ( | pushEnergySpec * | ensp, | |
const pushEnergy * | energy, | |||
const double | parm[PUSH_ENERGY_PARM_NUM] | |||
) |
const pushEnergy _pushEnergyCotan |
Initial value:
const pushEnergy _pushEnergyCoulomb |
Initial value:
const pushEnergy _pushEnergyGauss |
Initial value:
const pushEnergy _pushEnergySpring |
Initial value:
Initial value:
{ "energy", PUSH_ENERGY_TYPE_MAX, _pushEnergyTypeStr, NULL, _pushEnergyTypeDesc, NULL, NULL, AIR_FALSE }
char _pushEnergyTypeDesc[PUSH_ENERGY_TYPE_MAX+1][AIR_STRLEN_MED] |
Initial value:
{ "unknown_energy", "Hooke's law-based potential, with a tunable region of attraction", "Gaussian potential", "Coulomb electrostatic potential, with tunable cut-off", "Cotangent-based potential (from Meyer et al. SMI '05)", "no energy" }
char _pushEnergyTypeStr[PUSH_ENERGY_TYPE_MAX+1][AIR_STRLEN_SMALL] |
Initial value:
{ "unknown", 0, _pushEnergyUnknownEval, _pushEnergyUnknownSupport }
const pushEnergy _pushEnergyZero |
Initial value:
Initial value:
{ sizeof(pushEnergySpec*), "energy specification", _pushHestEnergyParse, (airMopper)pushEnergySpecNix }
const pushEnergy* const pushEnergyAll[PUSH_ENERGY_TYPE_MAX+1] |
Initial value:
const pushEnergy* const pushEnergyCotan = &_pushEnergyCotan |
const pushEnergy* const pushEnergyCoulomb = &_pushEnergyCoulomb |
const pushEnergy* const pushEnergyGauss = &_pushEnergyGauss |
const pushEnergy* const pushEnergySpring = &_pushEnergySpring |
const pushEnergy* const pushEnergyUnknown = &_pushEnergyUnknown |
const pushEnergy* const pushEnergyZero = &_pushEnergyZero |