62 |
|
|
63 |
|
public: |
64 |
|
ForceFields(){ |
65 |
+ |
|
66 |
+ |
char* force_param_path; |
67 |
|
frcFile = NULL; |
68 |
|
entry_plug = NULL; |
69 |
|
has_variant=0; |
70 |
< |
ffPath = getenv("FORCE_PARAM_PATH"); |
70 |
> |
|
71 |
> |
force_param_path = getenv("FORCE_PARAM_PATH"); |
72 |
> |
if (force_param_path != NULL) { |
73 |
> |
ffPath = force_param_path; |
74 |
> |
} else { |
75 |
> |
ffPath = ""; |
76 |
> |
} |
77 |
> |
|
78 |
|
if( ffPath.empty() ) { |
79 |
|
STR_DEFINE(ffPath, FRC_PATH ); |
80 |
|
} |
81 |
|
} |
82 |
< |
ForceFields(string theVariant){ |
82 |
> |
ForceFields(const string &theVariant){ |
83 |
> |
char* force_param_path; |
84 |
|
frcFile = NULL; |
85 |
|
entry_plug = NULL; |
86 |
|
has_variant=1; |
87 |
|
variant = theVariant; |
88 |
< |
ffPath = getenv("FORCE_PARAM_PATH"); |
88 |
> |
|
89 |
> |
force_param_path = getenv("FORCE_PARAM_PATH"); |
90 |
> |
if (force_param_path != NULL) { |
91 |
> |
ffPath = force_param_path; |
92 |
> |
} else { |
93 |
> |
ffPath = ""; |
94 |
> |
} |
95 |
> |
|
96 |
|
if( ffPath.empty() ) { |
97 |
|
STR_DEFINE(ffPath, FRC_PATH ); |
98 |
|
} |
114 |
|
virtual void initializeTorsions( int nTorsions, Torsion** torsionArray, |
115 |
|
torsion_set* the_torsions ) = 0; |
116 |
|
virtual void initForceField() = 0; |
100 |
– |
virtual void initRestraints(); |
101 |
– |
virtual void dumpzAngle(); |
117 |
|
|
118 |
|
virtual void calcRcut( void ); |
119 |
|
virtual void setRcut( double LJrcut ); |
200 |
|
public: |
201 |
|
|
202 |
|
EAM_FF(); |
203 |
< |
EAM_FF(string theVariant); |
203 |
> |
EAM_FF(const string &theVariant); |
204 |
|
|
205 |
|
virtual ~EAM_FF(); |
206 |
|
|
255 |
|
|
256 |
|
public: |
257 |
|
Shapes_FF() : ForceFields() {}; |
258 |
< |
Shapes_FF(char* the_variant) : ForceFields(the_variant) {}; |
258 |
> |
Shapes_FF(const string &the_variant) : ForceFields(the_variant) {}; |
259 |
|
virtual ~Shapes_FF(); |
260 |
|
|
261 |
|
void readParams(); |
271 |
|
|
272 |
|
void initForceField(); |
273 |
|
|
259 |
– |
void parseShapeFile(string shapeFileName, ShapeAtomType* st); |
260 |
– |
|
274 |
|
void calcRcut( void ); |
275 |
|
|
276 |
+ |
void parseShapeFile(string shapeFileName, ShapeAtomType* st); |
277 |
+ |
|
278 |
|
private: |
279 |
|
|
280 |
|
double findLargestContactDistance(ShapeAtomType* st); |
281 |
+ |
double findCutoffDistance(ShapeAtomType* st); |
282 |
|
double shapesRcut; |
283 |
+ |
double bigContact; |
284 |
|
|
285 |
|
}; |
286 |
|
|