ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-2.0/src/brains/SimInfo.hpp
(Generate patch)

Comparing trunk/OOPSE-2.0/src/brains/SimInfo.hpp (file contents):
Revision 2204 by gezelter, Fri Apr 15 22:04:00 2005 UTC vs.
Revision 2469 by tim, Fri Dec 2 15:38:03 2005 UTC

# Line 57 | Line 57
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"
# Line 94 | Line 95 | namespace oopse{
95       * @param simParams
96       * @note
97       */
98 <    SimInfo(MakeStamps* stamps, std::vector<std::pair<MoleculeStamp*, int> >& molStampPairs, ForceField* ff, Globals* simParams);
98 >    SimInfo(ForceField* ff, Globals* simParams);
99      virtual ~SimInfo();
100  
101      /**
# Line 255 | Line 256 | namespace oopse{
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();
# Line 290 | Line 299 | namespace oopse{
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      }
305  
306      double getRsw() {
307        return rsw_;
308 +    }
309 +
310 +    double getList() {
311 +      return rlist_;
312      }
313          
314      std::string getFinalConfigFileName() {
# Line 429 | Line 439 | namespace oopse{
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();
451      void calcNdfTrans();
452  
453 +    ForceField* forceField_;      
454 +    Globals* simParams_;
455 +
456 +    std::map<int, Molecule*>  molecules_; /**< Molecule array */
457 +
458      /**
459       * Adds molecule stamp and the total number of the molecule with same molecule stamp in the whole
460       * system.
461       */
462      void addMoleculeStamp(MoleculeStamp* molStamp, int nmol);
442
443    MakeStamps* stamps_;
444    ForceField* forceField_;      
445    Globals* simParams_;
446
447    std::map<int, Molecule*>  molecules_; /**< Molecule array */
463          
464      //degress of freedom
465      int ndf_;           /**< number of degress of freedom (excludes constraints),  ndf_ is local */
# Line 507 | Line 522 | namespace oopse{
522          
523      double rcut_;       /**< cutoff radius*/
524      double rsw_;        /**< radius of switching function*/
525 +    double rlist_;      /**< neighbor list radius */
526  
527      bool fortranInitialized_; /**< flag indicate whether fortran side is initialized */
528  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines