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

Comparing trunk/src/brains/MoleculeCreator.hpp (file contents):
Revision 246 by gezelter, Wed Jan 12 22:41:40 2005 UTC vs.
Revision 1879 by gezelter, Sun Jun 16 15:15:42 2013 UTC

# Line 1 | Line 1
1 < /*
1 > /*
2   * Copyright (c) 2005 The University of Notre Dame. All Rights Reserved.
3   *
4   * The University of Notre Dame grants you ("Licensee") a
# Line 6 | Line 6
6   * redistribute this software in source and binary code form, provided
7   * that the following conditions are met:
8   *
9 < * 1. Acknowledgement of the program authors must be made in any
10 < *    publication of scientific results based in part on use of the
11 < *    program.  An acceptable form of acknowledgement is citation of
12 < *    the article in which the program was described (Matthew
13 < *    A. Meineke, Charles F. Vardeman II, Teng Lin, Christopher
14 < *    J. Fennell and J. Daniel Gezelter, "OOPSE: An Object-Oriented
15 < *    Parallel Simulation Engine for Molecular Dynamics,"
16 < *    J. Comput. Chem. 26, pp. 252-271 (2005))
17 < *
18 < * 2. Redistributions of source code must retain the above copyright
9 > * 1. Redistributions of source code must retain the above copyright
10   *    notice, this list of conditions and the following disclaimer.
11   *
12 < * 3. Redistributions in binary form must reproduce the above copyright
12 > * 2. Redistributions in binary form must reproduce the above copyright
13   *    notice, this list of conditions and the following disclaimer in the
14   *    documentation and/or other materials provided with the
15   *    distribution.
# Line 37 | Line 28
28   * arising out of the use of or inability to use software, even if the
29   * University of Notre Dame has been advised of the possibility of
30   * such damages.
31 + *
32 + * SUPPORT OPEN SCIENCE!  If you use OpenMD or its source code in your
33 + * research, please cite the appropriate papers when you publish your
34 + * work.  Good starting points are:
35 + *                                                                      
36 + * [1]  Meineke, et al., J. Comp. Chem. 26, 252-271 (2005).            
37 + * [2]  Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006).          
38 + * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008).          
39 + * [4]  Kuang & Gezelter,  J. Chem. Phys. 133, 164101 (2010).
40 + * [5]  Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011).
41   */
42  
43 < /**
44 <  * @file MoleculeCreator.hpp
45 <  * @author tlin
46 <  * @date 11/04/2004
47 <  * @time 13:51am
48 <  * @version 1.0
48 <  */
43 > /**
44 > * @file MoleculeCreator.hpp
45 > * @author tlin
46 > * @date 11/04/2004
47 > * @version 1.0
48 > */
49  
50   #ifndef BRAINS_MOLECULECREATOR_HPP
51   #define BRAINS_MOLECULECREATOR_HPP
# Line 57 | Line 57
57   #include "types/CutoffGroupStamp.hpp"
58   #include "types/RigidBodyStamp.hpp"
59   #include "types/TorsionStamp.hpp"
60 + #include "types/InversionStamp.hpp"
61   #include "primitives/Molecule.hpp"
62 < namespace oopse {
62 > namespace OpenMD {
63  
64 < /**
65 < * @class MoleculeCreator MoleculeCreator.hpp "brains/MoleculeCreator.hpp"
66 < * @brief
67 < */
68 < class MoleculeCreator {
69 <    public:
70 <        virtual Molecule* createMolecule(ForceField* ff, MoleculeStamp *molStamp,
71 <            int stampId, int globalIndex,  LocalIndexManager* localIndexMan);
64 >  /**
65 >   * @class MoleculeCreator MoleculeCreator.hpp "brains/MoleculeCreator.hpp"
66 >   * @brief
67 >   */
68 >  class MoleculeCreator {
69 >  public:
70 >    virtual Molecule* createMolecule(ForceField* ff, MoleculeStamp *molStamp,
71 >                                     int stampId, int globalIndex,  
72 >                                     LocalIndexManager* localIndexMan);
73  
74 <    protected:
74 >  protected:
75          
76 <        /** Create an atom by its stamp */
77 <        virtual Atom* createAtom(ForceField* ff, Molecule* mol, AtomStamp* stamp,
78 <            LocalIndexManager* localIndexMan);
76 >    /** Create an atom by its stamp */
77 >    virtual Atom* createAtom(ForceField* ff, Molecule* mol, AtomStamp* stamp,
78 >                             LocalIndexManager* localIndexMan);
79 >    virtual RigidBody* createRigidBody(MoleculeStamp *molStamp, Molecule* mol,
80 >                                       RigidBodyStamp* rbStamp,  
81 >                                       LocalIndexManager* localIndexMan);
82 >    virtual Bond* createBond(ForceField* ff, Molecule* mol, BondStamp* stamp);
83 >    virtual Bend* createBend(ForceField* ff, Molecule* mol, BendStamp* stamp);
84 >    virtual Torsion* createTorsion(ForceField* ff, Molecule* mol,
85 >                                   TorsionStamp* stamp);
86 >    virtual Inversion* createInversion(ForceField* ff, Molecule* mol,
87 >                                       InversionStamp* stamp);
88 >    virtual CutoffGroup* createCutoffGroup(Molecule* mol,
89 >                                           CutoffGroupStamp* stamp,
90 >                                           LocalIndexManager* localIndexMan);
91 >    virtual CutoffGroup* createCutoffGroup(Molecule * mol, Atom* atom,
92 >                                           LocalIndexManager* localIndexMan);
93 >    virtual void createConstraintPair(Molecule* mol);    
94 >    virtual void createConstraintElem(Molecule* mol);
95 >  };
96  
78        virtual RigidBody* createRigidBody(MoleculeStamp *molStamp, Molecule* mol,
79            RigidBodyStamp* rbStamp,  LocalIndexManager* localIndexMan);
97  
81        virtual Bond* createBond(ForceField* ff, Molecule* mol, BondStamp* stamp);
82        virtual Bend* createBend(ForceField* ff, Molecule* mol, BendStamp* stamp);
83        virtual Torsion* createTorsion(ForceField* ff, Molecule* mol, TorsionStamp* stamp);
84        virtual CutoffGroup* createCutoffGroup(Molecule* mol, CutoffGroupStamp* stamp);
85        virtual CutoffGroup* createCutoffGroup(Molecule * mol, Atom* atom);
86        virtual void createConstraintPair(Molecule* mol);    
87        virtual void createConstraintElem(Molecule* mol);
88 };
89
90
98   }
99   #endif //BRAINS_MOLECULECREATOR_HPP

Comparing trunk/src/brains/MoleculeCreator.hpp (property svn:keywords):
Revision 246 by gezelter, Wed Jan 12 22:41:40 2005 UTC vs.
Revision 1879 by gezelter, Sun Jun 16 15:15:42 2013 UTC

# Line 0 | Line 1
1 + Author Id Revision Date

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines