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

Comparing branches/development/src/nonbonded/EAM.hpp (file contents):
Revision 1502 by gezelter, Sat Oct 2 19:53:32 2010 UTC vs.
Revision 1725 by gezelter, Sat May 26 18:13:43 2012 UTC

# Line 36 | Line 36
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).                        
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   #ifndef NONBONDED_EAM_HPP
44   #define NONBONDED_EAM_HPP
45  
46   #include "nonbonded/NonBondedInteraction.hpp"
47 < #include "types/AtomType.hpp"
48 < #include "UseTheForce/ForceField.hpp"
47 > #include "types/EAMAdapter.hpp"
48 > #include "brains/ForceField.hpp"
49   #include "math/Vector3.hpp"
50   #include "math/CubicSpline.hpp"
51  
# Line 75 | Line 76 | namespace OpenMD {
76      void setForceField(ForceField *ff) {forceField_ = ff;};
77      void addType(AtomType* atomType);
78      void addExplicitInteraction(AtomType* atype1, AtomType* atype2, RealType dr, int nr, std::vector<RealType> phiAB);
79 <    void calcDensity(DensityData ddat);
80 <    void calcFunctional(FunctionalData fdat);
81 <    void calcForce(InteractionData idat);
79 >    void calcDensity(InteractionData &idat);
80 >    void calcFunctional(SelfData &sdat);
81 >    void calcForce(InteractionData &idat);
82      virtual string getName() { return name_; }
83 +    virtual RealType getSuggestedCutoffRadius(pair<AtomType*,AtomType*> atypes);
84 +    void setCutoffRadius( RealType rCut );
85  
86 +
87    private:
88      void initialize();  
85    EAMParam getEAMParam(AtomType* atomType);
86    CubicSpline* getZ(AtomType* atomType);
87    CubicSpline* getRho(AtomType* atomType);
88    CubicSpline* getF(AtomType* atomType);
89    RealType getRcut(AtomType* atomType);
89      CubicSpline* getPhi(AtomType* atomType1, AtomType* atomType2);
90      
91      bool initialized_;
92 +    bool haveCutoffRadius_;
93      std::map<int, AtomType*> EAMlist;
94      std::map<AtomType*, EAMAtomData> EAMMap;
95      std::map<std::pair<AtomType*, AtomType*>, EAMInteractionData> MixingMap;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines