ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/src/brains/SimInfo.hpp
(Generate patch)

Comparing trunk/src/brains/SimInfo.hpp (file contents):
Revision 963 by tim, Wed May 17 21:51:42 2006 UTC vs.
Revision 1103 by chuckv, Fri Dec 29 20:21:53 2006 UTC

# Line 73 | Line 73 | namespace oopse{
73    class SnapshotManager;
74    class Molecule;
75    class SelectionManager;
76 +  class StuntDouble;
77    /**
78     * @class SimInfo SimInfo.hpp "brains/SimInfo.hpp"
79     * @brief One of the heavy weight classes of OOPSE, SimInfo maintains a list of molecules.
# Line 271 | Line 272 | namespace oopse{
272      /** Returns system angular momentum */
273      Vector3d getAngularMomentum();
274  
275 +    /** Returns volume of system as estimated by an ellipsoid defined by the radii of gyration*/
276 +    void getGyrationalVolume(RealType &vol);
277 +    /** Overloaded version of gyrational volume that also returns det(I) so dV/dr can be calculated*/
278 +    void getGyrationalVolume(RealType &vol, RealType &detI);
279      /** main driver function to interact with fortran during the initialization and molecule migration */
280      void update();
281  
# Line 320 | Line 325 | namespace oopse{
325      std::string getFinalConfigFileName() {
326        return finalConfigFileName_;
327      }
328 <        
328 >
329      void setFinalConfigFileName(const std::string& fileName) {
330        finalConfigFileName_ = fileName;
331      }
332  
333 +    std::string getRawMetaData() {
334 +      return rawMetaData_;
335 +    }
336 +    void setRawMetaData(const std::string& rawMetaData) {
337 +      rawMetaData_ = rawMetaData;
338 +    }
339 +        
340      std::string getDumpFileName() {
341        return dumpFileName_;
342      }
# Line 372 | Line 384 | namespace oopse{
384        return fortranInitialized_;
385      }
386          
387 +    bool getCalcBoxDipole() {
388 +      return calcBoxDipole_;
389 +    }
390 +
391      //below functions are just forward functions
392      //To compose or to inherit is always a hot debate. In general, is-a relation need subclassing, in the
393      //the other hand, has-a relation need composing.
# Line 451 | Line 467 | namespace oopse{
467      /** Figure out which polynomial type to use for the switching function */
468      void setupSwitchingFunction();
469  
470 +    /** Determine if we need to accumulate the simulation box dipole */
471 +    void setupAccumulateBoxDipole();
472 +
473      /** Calculates the number of degress of freedom in the whole system */
474      void calcNdf();
475      void calcNdfRaw();
# Line 522 | Line 541 | namespace oopse{
541       */        
542      LocalIndexManager localIndexMan_;
543  
544 +    // unparsed MetaData block for storing in Dump and EOR files:
545 +    std::string rawMetaData_;
546 +
547      //file names
548      std::string finalConfigFileName_;
549      std::string dumpFileName_;
# Line 534 | Line 556 | namespace oopse{
556  
557      bool fortranInitialized_; /**< flag indicate whether fortran side is initialized */
558  
559 +    bool calcBoxDipole_; /**< flag to indicate whether or not we calculate the simulation box dipole moment */
560 +
561 +    public:
562 +     /**
563 +      * return an integral objects by its global index. In MPI version, if the StuntDouble with specified
564 +      * global index does not belong to local processor, a NULL will be return.
565 +      */
566 +      StuntDouble* getIOIndexToIntegrableObject(int index);
567 +      void setIOIndexToIntegrableObject(const std::vector<StuntDouble*>& v);
568 +    private:
569 +      std::vector<StuntDouble*> IOIndexToIntegrableObject;
570 +  //public:
571 +    //void setStuntDoubleFromGlobalIndex(std::vector<StuntDouble*> v);
572 +    /**
573 +     * return a StuntDouble by its global index. In MPI version, if the StuntDouble with specified
574 +     * global index does not belong to local processor, a NULL will be return.
575 +     */
576 +    //StuntDouble* getStuntDoubleFromGlobalIndex(int index);
577 +  //private:
578 +    //std::vector<StuntDouble*> sdByGlobalIndex_;
579 +    
580   #ifdef IS_MPI
581      //in Parallel version, we need MolToProc
582    public:
# Line 555 | Line 598 | namespace oopse{
598      void setMolToProcMap(const std::vector<int>& molToProcMap) {
599        molToProcMap_ = molToProcMap;
600      }
601 +
602 +    
603          
604    private:
605  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines