57 |
|
#include "brains/Exclude.hpp" |
58 |
|
#include "io/Globals.hpp" |
59 |
|
#include "math/Vector3.hpp" |
60 |
+ |
#include "math/SquareMatrix3.hpp" |
61 |
|
#include "types/MoleculeStamp.hpp" |
62 |
|
#include "UseTheForce/ForceField.hpp" |
63 |
|
#include "utils/PropertyMap.hpp" |
256 |
|
|
257 |
|
/** Returns the center of the mass of the whole system.*/ |
258 |
|
Vector3d getCom(); |
259 |
+ |
/** Returns the center of the mass and Center of Mass velocity of the whole system.*/ |
260 |
+ |
void getComAll(Vector3d& com,Vector3d& comVel); |
261 |
+ |
|
262 |
+ |
/** Returns intertia tensor for the entire system and system Angular Momentum.*/ |
263 |
+ |
void getInertiaTensor(Mat3x3d &intertiaTensor,Vector3d &angularMomentum); |
264 |
+ |
|
265 |
+ |
/** Returns system angular momentum */ |
266 |
+ |
Vector3d getAngularMomentum(); |
267 |
|
|
268 |
|
/** main driver function to interact with fortran during the initialization and molecule migration */ |
269 |
|
void update(); |
299 |
|
return i != molecules_.end() ? i->second : NULL; |
300 |
|
} |
301 |
|
|
293 |
– |
/** Calculate the maximum cutoff radius based on the atom types */ |
294 |
– |
double calcMaxCutoffRadius(); |
295 |
– |
|
302 |
|
double getRcut() { |
303 |
|
return rcut_; |
304 |
|
} |
306 |
|
double getRsw() { |
307 |
|
return rsw_; |
308 |
|
} |
309 |
+ |
|
310 |
+ |
double getList() { |
311 |
+ |
return rlist_; |
312 |
+ |
} |
313 |
|
|
314 |
|
std::string getFinalConfigFileName() { |
315 |
|
return finalConfigFileName_; |
439 |
|
/** Figure out the radius of cutoff, radius of switching function and pass them to fortran */ |
440 |
|
void setupCutoff(); |
441 |
|
|
442 |
+ |
/** Figure out which coulombic correction method to use and pass to fortran */ |
443 |
+ |
void setupElectrostaticSummationMethod( int isError ); |
444 |
+ |
|
445 |
+ |
/** Figure out which polynomial type to use for the switching function */ |
446 |
+ |
void setupSwitchingFunction(); |
447 |
+ |
|
448 |
|
/** Calculates the number of degress of freedom in the whole system */ |
449 |
|
void calcNdf(); |
450 |
|
void calcNdfRaw(); |
523 |
|
|
524 |
|
double rcut_; /**< cutoff radius*/ |
525 |
|
double rsw_; /**< radius of switching function*/ |
526 |
+ |
double rlist_; /**< neighbor list radius */ |
527 |
|
|
528 |
|
bool fortranInitialized_; /**< flag indicate whether fortran side is initialized */ |
529 |
|
|