DuMMForceFieldSubsystem Class Reference

#include <DuMMForceFieldSubsystem.h>

Inheritance diagram for DuMMForceFieldSubsystem:

ForceSubsystem Subsystem Amber99ForceSubsystem

List of all members.


Detailed Description

This is a concrete subsystem that provides basic molecular mechanics functionality FOR DEMO AND PROOF OF CONCEPT only!!! It is not likely to perform well on anything.

UNITS: This subsystem requires that the system be modeled in "MD units" of nanometers, daltons (g/mol), and picoseconds, yielding consistent energy units of kJ/mol==(Da-nm^2/ps^2), and force in kJ/mol-nm. Charge is in proton charge units e, and angles are in radians. For convenience, we allow the force field to be defined in "KA" units, that is, angstroms instead of nanometers, and energy in kcal rather than kJ, and we also allow angles to be supplied in degrees. However, these are immediately converted to the MD units described above.

Public Types

enum  VdwMixingRule {
  WaldmanHagler = 1, HalgrenHHG = 2, Jorgensen = 3, LorentzBerthelot = 4,
  Kong = 5
}

Public Member Functions

const char * getVdwMixingRuleName (VdwMixingRule) const
 DuMMForceFieldSubsystem ()
 DuMMForceFieldSubsystem (MolecularMechanicsSystem &)
DuMM::AtomIndex addAtom (DuMM::ChargedAtomTypeIndex chargedAtomTypeIx)
DuMM::BondIndex addBond (DuMM::AtomIndex atom1Ix, DuMM::AtomIndex atom2Ix)
int getNAtoms () const
Real getAtomMass (DuMM::AtomIndex atomIx) const
int getAtomElement (DuMM::AtomIndex atomIx) const
Real getAtomRadius (DuMM::AtomIndex atomIx) const
Vec3 getAtomStationOnBody (DuMM::AtomIndex atomIx) const
Vec3 getAtomStationInCluster (DuMM::AtomIndex atomIx, DuMM::ClusterIndex clusterIx) const
MobilizedBodyIndex getAtomBody (DuMM::AtomIndex atomIx) const
Vec3 getElementDefaultColor (int atomicNumber) const
Vec3 getAtomDefaultColor (DuMM::AtomIndex atomIx) const
int getNBonds () const
DuMM::AtomIndex getBondAtom (DuMM::BondIndex bond, int which) const
DuMM::ClusterIndex createCluster (const char *clusterName)
void placeAtomInCluster (DuMM::AtomIndex atomIx, DuMM::ClusterIndex clusterIx, const Vec3 &station)
void placeClusterInCluster (DuMM::ClusterIndex childClusterIndex, DuMM::ClusterIndex parentClusterIndex, const Transform &placement)
MassProperties calcClusterMassProperties (DuMM::ClusterIndex clusterIx, const Transform &=Transform()) const
MobilizedBodyIndex getClusterBody (DuMM::ClusterIndex clusterIx) const
Transform getClusterPlacementOnBody (DuMM::ClusterIndex clusterIx) const
Transform getClusterPlacementInCluster (DuMM::ClusterIndex childClusterIndex, DuMM::ClusterIndex parentClusterIndex) const
void attachClusterToBody (DuMM::ClusterIndex clusterIx, MobilizedBodyIndex body, const Transform &=Transform())
void attachAtomToBody (DuMM::AtomIndex atomIx, MobilizedBodyIndex body, const Vec3 &station=Vec3(0))
void dumpCForceFieldParameters (std::ostream &os, const String &methodName="loadParameters") const
void defineAtomClass (DuMM::AtomClassIndex atomClassIx, const char *atomClassName, int elementNumber, int expectedValence, Real vdwRadiusInNm, Real vdwWellDepthInKJ)
void defineAtomClass_KA (DuMM::AtomClassIndex atomClassIx, const char *atomClassName, int element, int valence, Real vdwRadiusInAng, Real vdwWellDepthInKcal)
void defineAtomClass_KA (int atomClassIx, const char *atomClassName, int element, int valence, Real vdwRadiusInAng, Real vdwWellDepthInKcal)
bool hasAtomClass (DuMM::AtomClassIndex) const
bool hasAtomClass (const String &atomClassName) const
DuMM::AtomClassIndex getAtomClassIndex (const String &atomClassName) const
DuMM::AtomClassIndex getNextUnusedAtomClassIndex () const
DuMM::AtomClassIndex getAtomClassIndex (DuMM::AtomIndex atomIx) const
Real getVdwRadius (DuMM::AtomClassIndex atomClassIx) const
Real getVdwWellDepth (DuMM::AtomClassIndex atomClassIx) const
void defineChargedAtomType (DuMM::ChargedAtomTypeIndex atomTypeIx, const char *atomTypeName, DuMM::AtomClassIndex atomClassIx, Real partialChargeInE)
void defineChargedAtomType_KA (DuMM::ChargedAtomTypeIndex atomTypeIx, const char *atomTypeName, DuMM::AtomClassIndex atomClassIx, Real partialChargeInE)
void defineChargedAtomType_KA (int atomTypeIx, const char *atomTypeName, int atomClassIx, Real partialChargeInE)
bool hasChargedAtomType (DuMM::ChargedAtomTypeIndex) const
bool hasChargedAtomType (const String &chargedTypeName) const
DuMM::ChargedAtomTypeIndex getChargedAtomTypeIndex (const String &chargedTypeName) const
DuMM::ChargedAtomTypeIndex getNextUnusedChargedAtomTypeIndex () const
void defineBondStretch (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, Real stiffnessInKJperNmSq, Real nominalLengthInNm)
void defineBondStretch_KA (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, Real stiffnessInKcalPerAngSq, Real nominalLengthInAng)
void defineBondStretch_KA (int class1, int class2, Real stiffnessInKcalPerAngSq, Real nominalLengthInAng)
void defineBondBend (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, Real stiffnessInKJPerRadSq, Real nominalAngleInDeg)
void defineBondBend_KA (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, Real stiffnessInKcalPerRadSq, Real nominalAngleInDeg)
void defineBondBend_KA (int class1, int class2, int class3, Real stiffnessInKcalPerRadSq, Real nominalAngleInDeg)
void defineBondTorsion (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKJ, Real phase1InDegrees)
void defineBondTorsion (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKJ, Real phase1InDegrees, int periodicity2, Real amp2InKJ, Real phase2InDegrees)
void defineBondTorsion (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKJ, Real phase1InDegrees, int periodicity2, Real amp2InKJ, Real phase2InDegrees, int periodicity3, Real amp3InKJ, Real phase3InDegrees)
void defineBondTorsion_KA (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKcal, Real phase1InDegrees)
void defineBondTorsion_KA (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKcal, Real phase1InDegrees, int periodicity2, Real amp2InKcal, Real phase2InDegrees)
void defineBondTorsion_KA (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKcal, Real phase1InDegrees, int periodicity2, Real amp2InKcal, Real phase2InDegrees, int periodicity3, Real amp3InKcal, Real phase3InDegrees)
void defineBondTorsion_KA (int class1, int class2, int class3, int class4, int periodicity1, Real amp1InKcal, Real phase1InDegrees)
void defineBondTorsion_KA (int class1, int class2, int class3, int class4, int periodicity1, Real amp1InKcal, Real phase1InDegrees, int periodicity2, Real amp2InKcal, Real phase2InDegrees)
void defineBondTorsion_KA (int class1, int class2, int class3, int class4, int periodicity1, Real amp1InKcal, Real phase1InDegrees, int periodicity2, Real amp2InKcal, Real phase2InDegrees, int periodicity3, Real amp3InKcal, Real phase3InDegrees)
void defineAmberImproperTorsion (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKJ, Real phase1InDegrees)
void defineAmberImproperTorsion (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKJ, Real phase1InDegrees, int periodicity2, Real amp2InKJ, Real phase2InDegrees)
void defineAmberImproperTorsion (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKJ, Real phase1InDegrees, int periodicity2, Real amp2InKJ, Real phase2InDegrees, int periodicity3, Real amp3InKJ, Real phase3InDegrees)
void defineAmberImproperTorsion_KA (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKcal, Real phase1InDegrees)
void defineAmberImproperTorsion_KA (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKcal, Real phase1InDegrees, int periodicity2, Real amp2InKcal, Real phase2InDegrees)
void defineAmberImproperTorsion_KA (DuMM::AtomClassIndex class1, DuMM::AtomClassIndex class2, DuMM::AtomClassIndex class3, DuMM::AtomClassIndex class4, int periodicity1, Real amp1InKcal, Real phase1InDegrees, int periodicity2, Real amp2InKcal, Real phase2InDegrees, int periodicity3, Real amp3InKcal, Real phase3InDegrees)
void setVdwMixingRule (VdwMixingRule)
VdwMixingRule getVdwMixingRule () const
void setVdw12ScaleFactor (Real)
void setVdw13ScaleFactor (Real)
void setVdw14ScaleFactor (Real)
void setVdw15ScaleFactor (Real)
void setCoulomb12ScaleFactor (Real)
void setCoulomb13ScaleFactor (Real)
void setCoulomb14ScaleFactor (Real)
void setCoulomb15ScaleFactor (Real)
void setVdwGlobalScaleFactor (Real)
void setCoulombGlobalScaleFactor (Real)
void setBondStretchGlobalScaleFactor (Real)
void setBondBendGlobalScaleFactor (Real)
void setBondTorsionGlobalScaleFactor (Real)
void setAmberImproperTorsionGlobalScaleFactor (Real)
void setGbsaGlobalScaleFactor (Real)
void setGbsaIncludeAceApproximation (bool)
void setGbsaIncludeAceApproximationOn ()
void setGbsaIncludeAceApproximationOff ()
Real getVdwGlobalScaleFactor () const
void setAllGlobalScaleFactors (Real s)
bool getUseMultithreadedComputation ()
void setUseMultithreadedComputation (bool)
long int getForceEvaluationCount () const
void dump () const
void loadAmber99Parameters ()
 Use Amber99 force field parameters.
void populateFromTinkerParameterFile (std::istream &)
 Load force field paramters from a TINKER format force field parameter file.
void setBiotypeChargedAtomType (DuMM::ChargedAtomTypeIndex chargedAtomTypeIndex, BiotypeIndex biotypeIx)
 Associate a biotype with a ChargedAtomType in this subsystem.
DuMM::ChargedAtomTypeIndex getBiotypeChargedAtomType (BiotypeIndex biotypeIx) const
 get charged atom type index in this force field associated with a particular Biotype
std::ostream & generateBiotypeChargedAtomTypeSelfCode (std::ostream &os) const
void loadTestMoleculeParameters ()

Protected Member Functions

void defineIncompleteAtomClass (DuMM::AtomClassIndex classIx, const char *name, int elementNumber, int valence)
void defineIncompleteAtomClass_KA (DuMM::AtomClassIndex classIx, const char *name, int elementNumber, int valence)
void setAtomClassVdwParameters (DuMM::AtomClassIndex atomClassIx, Real vdwRadiusInNm, Real vdwWellDepthInKJPerMol)
void setAtomClassVdwParameters_KA (DuMM::AtomClassIndex atomClassIx, Real radiusInAng, Real wellDepthInKcal)
bool isValidAtomClass (DuMM::AtomClassIndex) const
void defineIncompleteChargedAtomType (DuMM::ChargedAtomTypeIndex typeIx, const char *name, DuMM::AtomClassIndex classIx)
void defineIncompleteChargedAtomType_KA (DuMM::ChargedAtomTypeIndex typeIx, const char *name, DuMM::AtomClassIndex classIx)
void setChargedAtomTypeCharge (DuMM::ChargedAtomTypeIndex, Real charge)
void setChargedAtomTypeCharge_KA (DuMM::ChargedAtomTypeIndex chargedAtomTypeIx, Real charge)

Protected Attributes

 DuMMForceFieldSubsystem
 ForceSubsystem
 Subsystem

Friends

class MolecularMechanicsSystem


Member Enumeration Documentation

Enumerator:
WaldmanHagler 
HalgrenHHG 
Jorgensen 
LorentzBerthelot 
Kong 


Constructor & Destructor Documentation


Member Function Documentation

const char* getVdwMixingRuleName ( VdwMixingRule   )  const

DuMM::AtomIndex addAtom ( DuMM::ChargedAtomTypeIndex  chargedAtomTypeIx  ) 

DuMM::BondIndex addBond ( DuMM::AtomIndex  atom1Ix,
DuMM::AtomIndex  atom2Ix 
)

int getNAtoms (  )  const

Real getAtomMass ( DuMM::AtomIndex  atomIx  )  const

int getAtomElement ( DuMM::AtomIndex  atomIx  )  const

Real getAtomRadius ( DuMM::AtomIndex  atomIx  )  const

Vec3 getAtomStationOnBody ( DuMM::AtomIndex  atomIx  )  const

Vec3 getAtomStationInCluster ( DuMM::AtomIndex  atomIx,
DuMM::ClusterIndex  clusterIx 
) const

MobilizedBodyIndex getAtomBody ( DuMM::AtomIndex  atomIx  )  const

Vec3 getElementDefaultColor ( int  atomicNumber  )  const

Vec3 getAtomDefaultColor ( DuMM::AtomIndex  atomIx  )  const

int getNBonds (  )  const

DuMM::AtomIndex getBondAtom ( DuMM::BondIndex  bond,
int  which 
) const

DuMM::ClusterIndex createCluster ( const char *  clusterName  ) 

void placeAtomInCluster ( DuMM::AtomIndex  atomIx,
DuMM::ClusterIndex  clusterIx,
const Vec3 station 
)

void placeClusterInCluster ( DuMM::ClusterIndex  childClusterIndex,
DuMM::ClusterIndex  parentClusterIndex,
const Transform placement 
)

MassProperties calcClusterMassProperties ( DuMM::ClusterIndex  clusterIx,
const Transform = Transform() 
) const

MobilizedBodyIndex getClusterBody ( DuMM::ClusterIndex  clusterIx  )  const

Transform getClusterPlacementOnBody ( DuMM::ClusterIndex  clusterIx  )  const

Transform getClusterPlacementInCluster ( DuMM::ClusterIndex  childClusterIndex,
DuMM::ClusterIndex  parentClusterIndex 
) const

void attachClusterToBody ( DuMM::ClusterIndex  clusterIx,
MobilizedBodyIndex  body,
const Transform = Transform() 
)

void attachAtomToBody ( DuMM::AtomIndex  atomIx,
MobilizedBodyIndex  body,
const Vec3 station = Vec3(0) 
)

void dumpCForceFieldParameters ( std::ostream &  os,
const String methodName = "loadParameters" 
) const

void defineAtomClass ( DuMM::AtomClassIndex  atomClassIx,
const char *  atomClassName,
int  elementNumber,
int  expectedValence,
Real  vdwRadiusInNm,
Real  vdwWellDepthInKJ 
) [inline]

void defineAtomClass_KA ( DuMM::AtomClassIndex  atomClassIx,
const char *  atomClassName,
int  element,
int  valence,
Real  vdwRadiusInAng,
Real  vdwWellDepthInKcal 
) [inline]

void defineAtomClass_KA ( int  atomClassIx,
const char *  atomClassName,
int  element,
int  valence,
Real  vdwRadiusInAng,
Real  vdwWellDepthInKcal 
) [inline]

bool hasAtomClass ( DuMM::AtomClassIndex   )  const

bool hasAtomClass ( const String atomClassName  )  const

DuMM::AtomClassIndex getAtomClassIndex ( const String atomClassName  )  const

DuMM::AtomClassIndex getNextUnusedAtomClassIndex (  )  const

DuMM::AtomClassIndex getAtomClassIndex ( DuMM::AtomIndex  atomIx  )  const

Real getVdwRadius ( DuMM::AtomClassIndex  atomClassIx  )  const

Real getVdwWellDepth ( DuMM::AtomClassIndex  atomClassIx  )  const

void defineChargedAtomType ( DuMM::ChargedAtomTypeIndex  atomTypeIx,
const char *  atomTypeName,
DuMM::AtomClassIndex  atomClassIx,
Real  partialChargeInE 
) [inline]

void defineChargedAtomType_KA ( DuMM::ChargedAtomTypeIndex  atomTypeIx,
const char *  atomTypeName,
DuMM::AtomClassIndex  atomClassIx,
Real  partialChargeInE 
) [inline]

void defineChargedAtomType_KA ( int  atomTypeIx,
const char *  atomTypeName,
int  atomClassIx,
Real  partialChargeInE 
) [inline]

bool hasChargedAtomType ( DuMM::ChargedAtomTypeIndex   )  const

bool hasChargedAtomType ( const String chargedTypeName  )  const

DuMM::ChargedAtomTypeIndex getChargedAtomTypeIndex ( const String chargedTypeName  )  const

DuMM::ChargedAtomTypeIndex getNextUnusedChargedAtomTypeIndex (  )  const

void defineBondStretch ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
Real  stiffnessInKJperNmSq,
Real  nominalLengthInNm 
)

void defineBondStretch_KA ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
Real  stiffnessInKcalPerAngSq,
Real  nominalLengthInAng 
) [inline]

References SimTK::square().

void defineBondStretch_KA ( int  class1,
int  class2,
Real  stiffnessInKcalPerAngSq,
Real  nominalLengthInAng 
) [inline]

void defineBondBend ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
Real  stiffnessInKJPerRadSq,
Real  nominalAngleInDeg 
)

void defineBondBend_KA ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
Real  stiffnessInKcalPerRadSq,
Real  nominalAngleInDeg 
) [inline]

void defineBondBend_KA ( int  class1,
int  class2,
int  class3,
Real  stiffnessInKcalPerRadSq,
Real  nominalAngleInDeg 
) [inline]

void defineBondTorsion ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKJ,
Real  phase1InDegrees 
)

void defineBondTorsion ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKJ,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKJ,
Real  phase2InDegrees 
)

void defineBondTorsion ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKJ,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKJ,
Real  phase2InDegrees,
int  periodicity3,
Real  amp3InKJ,
Real  phase3InDegrees 
)

void defineBondTorsion_KA ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKcal,
Real  phase1InDegrees 
) [inline]

void defineBondTorsion_KA ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKcal,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKcal,
Real  phase2InDegrees 
) [inline]

void defineBondTorsion_KA ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKcal,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKcal,
Real  phase2InDegrees,
int  periodicity3,
Real  amp3InKcal,
Real  phase3InDegrees 
) [inline]

void defineBondTorsion_KA ( int  class1,
int  class2,
int  class3,
int  class4,
int  periodicity1,
Real  amp1InKcal,
Real  phase1InDegrees 
) [inline]

void defineBondTorsion_KA ( int  class1,
int  class2,
int  class3,
int  class4,
int  periodicity1,
Real  amp1InKcal,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKcal,
Real  phase2InDegrees 
) [inline]

void defineBondTorsion_KA ( int  class1,
int  class2,
int  class3,
int  class4,
int  periodicity1,
Real  amp1InKcal,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKcal,
Real  phase2InDegrees,
int  periodicity3,
Real  amp3InKcal,
Real  phase3InDegrees 
) [inline]

void defineAmberImproperTorsion ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKJ,
Real  phase1InDegrees 
)

void defineAmberImproperTorsion ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKJ,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKJ,
Real  phase2InDegrees 
)

void defineAmberImproperTorsion ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKJ,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKJ,
Real  phase2InDegrees,
int  periodicity3,
Real  amp3InKJ,
Real  phase3InDegrees 
)

void defineAmberImproperTorsion_KA ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKcal,
Real  phase1InDegrees 
) [inline]

void defineAmberImproperTorsion_KA ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKcal,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKcal,
Real  phase2InDegrees 
) [inline]

void defineAmberImproperTorsion_KA ( DuMM::AtomClassIndex  class1,
DuMM::AtomClassIndex  class2,
DuMM::AtomClassIndex  class3,
DuMM::AtomClassIndex  class4,
int  periodicity1,
Real  amp1InKcal,
Real  phase1InDegrees,
int  periodicity2,
Real  amp2InKcal,
Real  phase2InDegrees,
int  periodicity3,
Real  amp3InKcal,
Real  phase3InDegrees 
) [inline]

void setVdwMixingRule ( VdwMixingRule   ) 

VdwMixingRule getVdwMixingRule (  )  const

void setVdw12ScaleFactor ( Real   ) 

void setVdw13ScaleFactor ( Real   ) 

void setVdw14ScaleFactor ( Real   ) 

void setVdw15ScaleFactor ( Real   ) 

void setCoulomb12ScaleFactor ( Real   ) 

void setCoulomb13ScaleFactor ( Real   ) 

void setCoulomb14ScaleFactor ( Real   ) 

void setCoulomb15ScaleFactor ( Real   ) 

void setVdwGlobalScaleFactor ( Real   ) 

Referenced by main().

void setCoulombGlobalScaleFactor ( Real   ) 

Referenced by main().

void setBondStretchGlobalScaleFactor ( Real   ) 

void setBondBendGlobalScaleFactor ( Real   ) 

void setBondTorsionGlobalScaleFactor ( Real   ) 

void setAmberImproperTorsionGlobalScaleFactor ( Real   ) 

void setGbsaGlobalScaleFactor ( Real   ) 

Referenced by main().

void setGbsaIncludeAceApproximation ( bool   ) 

void setGbsaIncludeAceApproximationOn (  )  [inline]

void setGbsaIncludeAceApproximationOff (  )  [inline]

Real getVdwGlobalScaleFactor (  )  const

void setAllGlobalScaleFactors ( Real  s  )  [inline]

bool getUseMultithreadedComputation (  ) 

Referenced by main().

void setUseMultithreadedComputation ( bool   ) 

Referenced by main().

long int getForceEvaluationCount (  )  const

Referenced by integrate().

void dump (  )  const

void loadAmber99Parameters (  ) 

Use Amber99 force field parameters.

This way you don't need to load the parameters from a file.

Referenced by Amber99ForceSubsystem::Amber99ForceSubsystem(), integrate(), and main().

void populateFromTinkerParameterFile ( std::istream &   ) 

Load force field paramters from a TINKER format force field parameter file.

Only the Amber99 force field is tested

Referenced by main().

void setBiotypeChargedAtomType ( DuMM::ChargedAtomTypeIndex  chargedAtomTypeIndex,
BiotypeIndex  biotypeIx 
)

Associate a biotype with a ChargedAtomType in this subsystem.

A Biotype association is required for every Biotype found on atoms in the current System

Parameters:
chargedAtomTypeIndex  Prexisting charged atom type index in this subsystem
biotypeIx  Preexisting BiotypeIndex defined in the Biotype class

Referenced by main(), P12::P12(), ChlorideIon::setAmberLikeParameters(), ZincIon::setAmberLikeParameters(), CalciumIon::setAmberLikeParameters(), MagnesiumIon::setAmberLikeParameters(), CesiumIon::setAmberLikeParameters(), RubidiumIon::setAmberLikeParameters(), PotassiumIon::setAmberLikeParameters(), SodiumIon::setAmberLikeParameters(), LithiumIon::setAmberLikeParameters(), Propane::setAmberLikeParameters(), and Water::Water().

DuMM::ChargedAtomTypeIndex getBiotypeChargedAtomType ( BiotypeIndex  biotypeIx  )  const

get charged atom type index in this force field associated with a particular Biotype

std::ostream& generateBiotypeChargedAtomTypeSelfCode ( std::ostream &  os  )  const

void loadTestMoleculeParameters (  ) 

void defineIncompleteAtomClass ( DuMM::AtomClassIndex  classIx,
const char *  name,
int  elementNumber,
int  valence 
) [protected]

void defineIncompleteAtomClass_KA ( DuMM::AtomClassIndex  classIx,
const char *  name,
int  elementNumber,
int  valence 
) [inline, protected]

void setAtomClassVdwParameters ( DuMM::AtomClassIndex  atomClassIx,
Real  vdwRadiusInNm,
Real  vdwWellDepthInKJPerMol 
) [protected]

void setAtomClassVdwParameters_KA ( DuMM::AtomClassIndex  atomClassIx,
Real  radiusInAng,
Real  wellDepthInKcal 
) [inline, protected]

bool isValidAtomClass ( DuMM::AtomClassIndex   )  const [protected]

void defineIncompleteChargedAtomType ( DuMM::ChargedAtomTypeIndex  typeIx,
const char *  name,
DuMM::AtomClassIndex  classIx 
) [protected]

void defineIncompleteChargedAtomType_KA ( DuMM::ChargedAtomTypeIndex  typeIx,
const char *  name,
DuMM::AtomClassIndex  classIx 
) [inline, protected]

void setChargedAtomTypeCharge ( DuMM::ChargedAtomTypeIndex  ,
Real  charge 
) [protected]

void setChargedAtomTypeCharge_KA ( DuMM::ChargedAtomTypeIndex  chargedAtomTypeIx,
Real  charge 
) [inline, protected]


Friends And Related Function Documentation

friend class MolecularMechanicsSystem [friend]


Member Data Documentation

ForceSubsystem [protected]

Reimplemented from ForceSubsystem.

Subsystem [protected]

Reimplemented from ForceSubsystem.


The documentation for this class was generated from the following file:

Generated on Fri Sep 26 07:44:33 2008 for SimTKcore by  doxygen 1.5.6