# | 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, 24107 (2008). |
39 | + | * [4] Vardeman & Gezelter, in progress (2009). |
40 | */ | |
41 | ||
42 | #include "brains/Register.hpp" | |
# | Line 51 | Line 51 | |
51 | #include "integrators/NPTxyz.hpp" | |
52 | #include "integrators/NPAT.hpp" | |
53 | #include "integrators/NPrT.hpp" | |
54 | + | #include "integrators/NgammaT.hpp" |
55 | #include "integrators/LangevinDynamics.hpp" | |
56 | + | #if defined(HAVE_QHULL) |
57 | + | #include "integrators/SMIPDynamics.hpp" |
58 | + | #endif |
59 | ||
60 | #include "minimizers/MinimizerFactory.hpp" | |
61 | #include "minimizers/MinimizerCreator.hpp" | |
# | Line 63 | Line 67 | |
67 | #include "UseTheForce/ForceFieldCreator.hpp" | |
68 | #include "UseTheForce/SHAPES_FF.hpp" | |
69 | #include "UseTheForce/SC_FF.hpp" | |
70 | + | #include "UseTheForce/MnM_FF.hpp" |
71 | #include "UseTheForce/CLAYFF.hpp" | |
72 | + | #include "UseTheForce/Amber_FF.hpp" |
73 | #include "lattice/LatticeFactory.hpp" | |
74 | #include "lattice/LatticeCreator.hpp" | |
75 | #include "lattice/FCCLattice.hpp" | |
76 | ||
77 | < | //#include "openbabel/amberformat.hpp" |
72 | < | //#include "openbabel/fingerprintformat.hpp" |
73 | < | //#include "openbabel/gromos96format.hpp" |
74 | < | #include "openbabel/oopseformat.hpp" |
75 | < | #include "openbabel/pdbformat.hpp" |
76 | < | //#include "openbabel/povrayformat.hpp" |
77 | < | //#include "openbabel/smilesformat.hpp" |
78 | < | #include "openbabel/tinkerformat.hpp" |
79 | < | #include "openbabel/xyzformat.hpp" |
77 | > | namespace OpenMD { |
78 | ||
79 | ||
82 | – | namespace oopse { |
83 | – | |
84 | – | |
80 | void registerForceFields() { | |
81 | /** @todo move to a seperate initialization module */ | |
82 | //DUFF, WATER and LJ are merged into one force field | |
# | Line 94 | Line 89 | namespace oopse { | |
89 | ForceFieldFactory::getInstance()->registerForceField(new ForceFieldBuilder<SHAPES_FF>("SHAPES")); | |
90 | //Well if EAM worked... then Sutton-Chen should work like a CHARMM(Hopefully not). | |
91 | ForceFieldFactory::getInstance()->registerForceField(new ForceFieldBuilder<SC_FF>("SC")); | |
92 | + | //Well if Sutton-Chen worked... then lets just mangle all of the forcefields together in MnM. |
93 | + | //That sounds like a good idea right...... |
94 | + | ForceFieldFactory::getInstance()->registerForceField(new ForceFieldBuilder<MnM_FF>("MnM")); |
95 | ForceFieldFactory::getInstance()->registerForceField(new ForceFieldBuilder<CLAYFF>("CLAY")); | |
96 | + | ForceFieldFactory::getInstance()->registerForceField(new ForceFieldBuilder<Amber_FF>("Amber")); |
97 | } | |
98 | < | |
98 | > | |
99 | void registerIntegrators() { | |
100 | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<NVE>("NVE")); | |
101 | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<NVT>("NVT")); | |
# | Line 106 | Line 105 | namespace oopse { | |
105 | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<NPAT>("NPAT")); | |
106 | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<NPrT>("NPRT")); | |
107 | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<NPrT>("NPGT")); | |
108 | + | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<NgammaT>("NGT")); |
109 | + | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<NgammaT>("NGAMMAT")); |
110 | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<LangevinDynamics>("LANGEVINDYNAMICS")); | |
111 | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<LangevinDynamics>("LD")); | |
112 | < | |
113 | < | |
112 | > | #if defined(HAVE_QHULL) |
113 | > | IntegratorFactory::getInstance()->registerIntegrator(new IntegratorBuilder<SMIPDynamics>("SMIPD")); |
114 | > | #endif |
115 | } | |
116 | ||
117 | void registerMinimizers() { | |
# | Line 121 | Line 123 | namespace oopse { | |
123 | LatticeFactory::getInstance()->registerLattice(new LatticeBuilder<FCCLattice>("FCC")); | |
124 | } | |
125 | ||
124 | – | void registerOBFormats(){ |
125 | – | //static OpenBabel::AmberPrepFormat amberFormatInstance; |
126 | – | //static OpenBabel::FingerprintFormat fingerprintFormatInstance; |
127 | – | static OpenBabel::OOPSEFormat oopseFormatInstance; |
128 | – | static OpenBabel::PDBFormat pdbFormatInstance; |
129 | – | //static OpenBabel::PovrayFormat povaryFormatInstance; |
130 | – | //static OpenBabel::SMIFormat smilesFormatInstance; |
131 | – | static OpenBabel::TinkerFormat tinkerFormatInstance; |
132 | – | static OpenBabel::XYZFormat xyzFormatInstance; |
133 | – | } |
134 | – | |
126 | void registerAll() { | |
127 | registerForceFields(); | |
128 | registerIntegrators(); |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |