61 |
|
#include "UseTheForce/ForceField.hpp" |
62 |
|
#include "utils/PropertyMap.hpp" |
63 |
|
#include "utils/LocalIndexManager.hpp" |
64 |
< |
#include "selection/SelectionManager.hpp" |
64 |
> |
|
65 |
|
//another nonsense macro declaration |
66 |
|
#define __C |
67 |
|
#include "brains/fSimulation.h" |
71 |
|
//forward decalration |
72 |
|
class SnapshotManager; |
73 |
|
class Molecule; |
74 |
< |
|
74 |
> |
class SelectionManager; |
75 |
|
/** |
76 |
|
* @class SimInfo SimInfo.hpp "brains/SimInfo.hpp" |
77 |
|
* @brief As one of the heavy weight class of OOPSE, SimInfo |
255 |
|
|
256 |
|
/** Returns the center of the mass of the whole system.*/ |
257 |
|
Vector3d getCom(); |
258 |
– |
|
259 |
– |
/** Returns the seed (used for random number generator) */ |
260 |
– |
int getSeed() { |
261 |
– |
return seed_; |
262 |
– |
} |
258 |
|
|
264 |
– |
/** Sets the seed*/ |
265 |
– |
void setSeed(int seed) { |
266 |
– |
seed_ = seed; |
267 |
– |
} |
268 |
– |
|
259 |
|
/** main driver function to interact with fortran during the initialization and molecule migration */ |
260 |
|
void update(); |
261 |
|
|
403 |
|
SelectionManager* getSelectionManager() { |
404 |
|
return selectMan_; |
405 |
|
} |
406 |
+ |
|
407 |
+ |
/** Returns the unique atom types of local processor in an array */ |
408 |
+ |
std::set<AtomType*> getUniqueAtomTypes(); |
409 |
|
|
410 |
|
friend std::ostream& operator <<(std::ostream& o, SimInfo& info); |
418 |
– |
|
419 |
– |
private: |
411 |
|
|
412 |
+ |
void getCutoff(double& rcut, double& rsw); |
413 |
|
|
414 |
< |
/** Returns the unique atom types of local processor in an array */ |
423 |
< |
std::set<AtomType*> getUniqueAtomTypes(); |
414 |
> |
private: |
415 |
|
|
416 |
|
/** fill up the simtype struct*/ |
417 |
|
void setupSimType(); |
486 |
|
PropertyMap properties_; /**< Generic Property */ |
487 |
|
SnapshotManager* sman_; /**< SnapshotManager */ |
488 |
|
|
498 |
– |
int seed_; /**< seed for random number generator */ |
499 |
– |
|
489 |
|
/** |
490 |
|
* The reason to have a local index manager is that when molecule is migrating to other processors, |
491 |
|
* the atoms and the rigid-bodies will release their local indices to LocalIndexManager. Combining the |