93    void setForceField(
ForceField* ff) { forceField_ = ff; };
 
   94    void setElectrostatic(
Electrostatic* el) { electrostatic_ = el; };
 
   95    void setSimulatedAtomTypes(AtomTypeSet& simtypes) {
 
  100    void addExplicitInteraction(
AtomType* atype1, 
AtomType* atype2, RealType dr,
 
  101                                int nr, std::vector<RealType> phiAB);
 
  103    void addExplicitInteraction(
AtomType* atype1, 
AtomType* atype2, RealType re,
 
  104                                RealType alpha, RealType beta, RealType A,
 
  105                                RealType B, RealType kappa, RealType lambda);
 
  107    void addExplicitInteraction(
AtomType* atype1, 
AtomType* atype2, RealType re,
 
  108                                RealType alpha, RealType A, RealType Ci,
 
  111    RealType fastPower(RealType x, 
int y);
 
  125    RealType PhiCoreCore(RealType r, RealType re, RealType A, RealType alpha,
 
  127    RealType PhiCoreValence(RealType r, RealType re, RealType B, RealType beta,
 
  130    RealType Phi(RealType r, RealType re, RealType A, RealType B,
 
  131                 RealType alpha, RealType beta, RealType kappa,
 
  134    RealType Rho(RealType r, RealType re, RealType fe, RealType beta,
 
  136    RealType gFunc(RealType q, RealType nV, RealType nM);
 
  137    RealType gPrime(RealType q, RealType nV, RealType nM);
 
  138    RealType Zhou2001Functional(RealType rho, RealType rhoe,
 
  139                                std::vector<RealType> Fn,
 
  140                                std::vector<RealType> F, RealType Fe,
 
  142    RealType Zhou2004Functional(RealType rho, RealType rhoe, RealType rhos,
 
  143                                std::vector<RealType> Fn,
 
  144                                std::vector<RealType> F, RealType Fe,
 
  145                                RealType eta, RealType rhol, RealType rhoh);
 
  146    RealType Zhou2005Functional(RealType rho, RealType rhoe, RealType rhos,
 
  147                                std::vector<RealType> Fn,
 
  148                                std::vector<RealType> F, RealType F3plus,
 
  149                                RealType F3minus, RealType Fe, RealType eta);
 
  150    RealType Zhou2005OxygenFunctional(RealType rho,
 
  151                                      std::vector<RealType> OrhoLimits,
 
  152                                      std::vector<RealType> OrhoE,
 
  153                                      std::vector<std::vector<RealType>> OF);
 
  154    RealType RoseFunctional(RealType rho, RealType rhoe, RealType F0);
 
  157    void calcFunctional(
SelfData& sdat);
 
  160    virtual string getName() { 
return name_; }
 
  161    virtual int getHash() { 
return EAM_INTERACTION; }
 
  162    virtual RealType getSuggestedCutoffRadius(
 
  163        pair<AtomType*, AtomType*> atypes);
 
  164    void setCutoffRadius(RealType rCut);
 
  171    bool haveCutoffRadius_;
 
  177    vector<vector<EAMInteractionData>>
 
  183    AtomTypeSet simTypes_;
 
  189    EAMMixingMethod mixMeth_;