MTK++ Latest version: 0.2.0

Public Member Functions | Protected Attributes | Friends
MTKpp::amber Class Reference

AMBER MM potentials. More...

#include <mtkpp/src/MM/amber.h>

Inheritance diagram for MTKpp::amber:
Inheritance graph
[legend]
Collaboration diagram for MTKpp::amber:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 amber ()
 amber Constructor
virtual ~amber ()
 amber Destructor
void amberInitialize ()
 Initialize amber.
virtual double calcBondEnergy ()
 Calculate bond energy.
virtual double calcAngleEnergy ()
 Calculate angle energy.
virtual double calcTorsionEnergy ()
 Calculate torsion energy.
virtual double calcImproperEnergy ()
 Calculate improper energy.
virtual double calcNonBondedEnergy ()
 Calculate Non bonded energy.
virtual double calcHBondEnergy ()
 Calculate H-Bond Energy.
void setR6 (double)
 Set R^6 L-J energy.
void setR12 (double)
 Set R^12 L-J energy.
void setVDW14 (double)
 Set 1-4 van der Waals energy.
void setVDW (double)
 Set van der Waals energy.
void setEle14 (double)
 Set 1-4 Electrostatic energy.
void setEle (double)
 Set Electrostatic energy.
virtual void printPWD (int i, int j, double r6, double r12, double vdw_energy, double electrostatic, double r)
void initialize ()
 mmPotential initializer
int setNumAtoms (int nAtoms)
 START ALLOCATION ///.
int setNumTypes (int n)
 Set number of distinct atom type.
int setNumResidues (int n)
 Set number of residues.
int setExcludedSize (int n, int n2)
 Set number of excluded atoms.
int getNumAtoms ()
 END ALLOCATION ///.
char * getResidueNames ()
 Get residue names.
int * getResiduePointers ()
 Get residue pointers.
int setNumAtomsBigRes (int n)
 Set number of atoms in the largest residue.
double * getCoords ()
 Get coordinate array.
double * getCharges ()
 Get atomic charge array pointer.
char * getSymbols ()
 Get atomic symbols array pointer.
char * getAtomNames ()
 Get atomic symbols array pointer.
int getNumTypes ()
 Get number of unique types.
int * getIntTypes ()
 Get atom integer types.
char * getCharTypes ()
 Get atom character types.
int * getNumExcluded ()
 Get number of excluded atoms array pointer.
int * getExcluded ()
 Get excluded atoms array pointer.
int * getNumExcluded14 ()
 Get number of excluded 1-4 atoms array pointer.
int * getExcluded14 ()
 Get excluded 1-4 atoms array pointer.
int * getAtomFlags ()
 Get atom flags array pointer.
double * getGradients ()
 Get gradient array pointer.
int setNumBonds (int nBonds)
 Set number of bonds.
int getNumBonds ()
 Get number of bonds.
int setNumBondsWithH (int n)
 Set number of bonds containing Hydrogen.
int setNumBondsWithOutH (int n)
 Set number of bonds not containing Hydrogen.
int * getBonds ()
 Get bond array pointer.
double * getBondParams ()
 Get bond parameter array pointer.
int setNumUniqueBonds (int n)
 Set number of unique bonds.
int setNumAngles (int nAngles)
 Set number of angles.
int getNumAngles ()
 Get number of angles.
int setNumAnglesWithH (int n)
 Set number of angles containing Hydrogen.
int setNumAnglesWithOutH (int n)
 Set number of angles not containing Hydrogen.
int * getAngles ()
 Get angle array pointer.
double * getAngleParams ()
 Get angle parameter array pointer.
int setNumUniqueAngles (int n)
 Set number of unique angles.
int setNumTorsions (int nTorsions)
 Set number of torsions.
int getNumTorsions ()
 Get number of torsions.
int * getTorsions ()
 Get torsion array pointer.
double * getTorsionParams ()
 Get torsion parameter array pointer.
int setNumImpropers (int nImpropers)
 Set number of impropers.
int getNumImpropers ()
 Get number of impropers.
int * getImpropers ()
 Get improper array pointer.
double * getImproperParams ()
 Get improper parameter array pointer.
int setNumDihedralsWithH (int n)
 Set number of dihedrals containing Hydrogen.
int setNumDihedralsWithOutH (int n)
 Set number of dihedrals not containing Hydrogen.
int setNumUniqueDihedrals (int n)
 Set number of unique dihedrals.
int setNumNonBonded (int nNonBonded)
 Set number of non-bonded interactions.
int getNumNonBonded ()
 Set number of non-bonded interactions.
int * getNonBonded ()
 Get nonbonded array pointer.
double * getNonBondedParams ()
 Get nonbonded parameter array pointer.
int * getNonBondedPtrs ()
 Get nonbonded indexing array pointer.
int * getNonBonded14Ptrs ()
 Get 1-4 nonbonded indexing array pointer.
double * getR6Params ()
 Get L-J R6 Parameters.
double * getR12Params ()
 Get L-J R12 Parameters.
int * getNonBondedParameterIndex ()
 Get nonbonded indexing array pointer.
void setPotential (bool bBond, bool bAngle, bool bTorsion, bool bImproper, bool bNonBonded, bool bHBond)
 Set the potential to be used.
void getPotential (bool &bBond, bool &bAngle, bool &bTorsion, bool &bImproper, bool &bNonBonded, bool &bHBond)
 Get the potential to be used.
void calcForces (int i)
 Turn on gradient calculation.
void calcEnergy ()
 Calculate energy and/or gradient.
void decomposeEnergy (bool bBond, bool bAngle, bool bTorsion, bool bImproper, bool bNonBonded, bool bHBond, std::string f)
 Decompose energy.
int * getOutputFlags ()
 Get output flags array for energy decomposition.
void printEnergy ()
 Print energy to screen (verbose)
void printEnergy (std::ostream &os)
 Print energy (verbose)
void printEnergy2 ()
 Print energy terms in single line to the screen.
void printEnergy2 (std::ostream &os)
 Print energy terms in single line to the screen.
void printEnergy2 (std::string s)
 Print energy terms in single line to the screen.
void printEnergy2 (std::string s, std::string s2)
 Print energy terms in single line to the screen.
void printEnergy2 (std::ostream &os, std::string s, std::string s2)
 Print energy terms in single line to the screen.
void printCoords ()
 Print coords.
double getTotalEnergy ()
 Get the total energy.
double getBondEnergy ()
 Get the bond energy.
double getTotalVDWEnergy ()
 Get the total van der Waals energy.
double getTotalEleEnergy ()
 Get the total electrostatic energy.
void resetGMatrix ()
 Set gradient matrix to zero.
void setNonHGradsToZero ()
 Set non-hydrogen atom gradients zero.
void getGradNorm (double &gMax, int &gMaxAtom, double &gNorm)
 Get the gMax value, gMaxAtom, and gNorm.

Protected Attributes

amberBondpAmberBond
 amberBond pointer
amberAnglepAmberAngle
 amberAngle pointer
amberTorsionpAmberTorsion
 amberTorsion pointer
amberNonBondedpAmberNonBonded
 amberNonBonded pointer
int nAtoms
 Number of atoms.
int nDistinctTypes
 Number of distinct atom types.
int nBondsWithH
 Number of bonds containing Hydrogen.
int nBondsWithOutH
 Number of bonds not containing hydrogen.
int nAnglesWithH
 Number of angles containing hydrogen.
int nAnglesWithOutH
 Number of angles not containing hydrogen.
int nDihedralsWithH
 Number of dihedrals containing hydrogen.
int nDihedralsWithOutH
 Number of dihedrals not containing hydrogen.
int nExcluded
 Number of excluded atoms This is a sum over all atoms excluded atoms.
int nExcluded14
 Number of excluded 1-4 atoms This is a sum over all atoms excluded atoms.
int nResidues
 Number of residues.
int nUniqueBonds
 Number of unique bond types.
int nUniqueAngles
 Number of unique angle types.
int nUniqueDihedrals
 Number of unique angle types.
int nAtomsBigRes
 Number of unique angle types.
double * xyz
 Array of atom coordinates.
char * symbols
 Atom symbols.
char * names
 Atom names.
int * iTypes
 Array of atom integer types.
char * cTypes
 Array of atom integer types.
double * charges
 Array of atom charges.
double * masses
 Array of atom charges.
double * gradients
 Array of atom coordinates.
int * numExcluded
 Array of number of excluded atoms per atom.
int * numExcluded14
 Array of number of excluded 1-4 atoms per atom.
int * atomFlags
 Array of atom flags.
int * outFlags
 Array of atom flags for energy decomposition.
int * excluded
 Array of number of excluded atoms per atom.
int * excluded14
 Array of number of excluded 1-4 atoms per atom.
double * r12Params
 L-J A Coefficient.
double * r6Params
 L-J B Coefficient.
char * resNames
 Residue names.
int * resPointers
 Residue pointers.
int * nonBondedParameterIndex
 Non-Bonded index.
int nBonds
 Number of bonds.
int * bonds
 Array of bonds (A-B, atom indices)
double * bondParams
 Bond parameters array.
int nAngles
 Number of angles.
int * angles
 Array of angles (A-B-C, atom indices)
double * angleParams
 Angle parameters array.
int nTorsions
 Number of torsions.
int * torsions
 Array of torsions (A-B-C-D, atom indices)
double * torsionParams
 Torsion parameters array.
int nImpropers
 Number of Impropers.
int * impropers
double * improperParams
 Improper parameter array.
int nNonBonded
 Total number of non bonded interactions.
int * nonBonded
 non-bonded atom indices array
double * nonBondedParams
 non-bonded array
int * nonBondedPtrs
 non-bonded pointers
int nNonBonded14
 Total number of non bonded 1-4 interactions.
int * nonBonded14
 non-bonded 1-4 atom indices array
double * nonBonded14Params
 non-bonded 1-4 array
int * nonBonded14Ptrs
 non-bonded 1-4 pointers
bool bEnergy
 Calculate only E.
bool bGradient
 Calculate both E and G.
bool bBond
 Switch for bond part of the energy function.
bool bAngle
 Switch for angle part of the energy function.
bool bTorsion
 Switch for torsion part of the energy function.
bool bImproper
 Switch for improper part of the energy function.
bool bNonBonded
 Switch for nonbonded part of the energy function.
bool bHBond
 Switch for H-bond part of the energy function.
bool bBondDecompose
 Decompose bond energy.
bool bAngleDecompose
 Decompose angle energy.
bool bTorsionDecompose
 Decompose torsion energy.
bool bImproperDecompose
 Decompose improper energy.
bool bNonBondedDecompose
 Decompose non-bonded energy.
bool bHBondDecompose
 Decompose H-Bonding energy.
std::string pwdFile
 Decomposed energy output file.
std::ofstream pwdFileStream
 Output File Stream.
std::string pwdGZFile
 Decomposed energy output file.
double totalEnergy
 Total energy:
double bondEnergy
 bond energy
double angleEnergy
 angle energy
double torsionEnergy
 torsion energy
double improperEnergy
 improper energy
double vdWEnergy
 van der Waals energy
double vdW14Energy
 1-4 part of the vdW energy
double R6
 R6 component of the vdW energy.
double R12
 R12 component of the vdW energy.
double eleEnergy
 electrostatic energy
double ele14Energy
 1-4 part of the ele energy
double nonBondedEnergy
 non bonded energy
double hBondEnergy
 H-Bond energy.

Friends

class amberNonBonded

Detailed Description

AMBER MM potentials.

Author:
Martin Peters
Version:
0.1
Date:
2005

AMBER Energy Function

\begin{eqnarray*} E_{\rm total} & = & \sum_{\rm bonds} K_r \left(r - r_{eq}\right)^2 + \sum_{\rm angles} K_\theta \left(\theta - \theta_{eq}\right)^2 + \nonumber \\ & & \sum_{\rm dihedrals} {V_n \over 2} \left[1 + \cos\left(n\phi - \gamma\right)\right] + \sum_{i<j} \left[{A_{ij} \over r_{ij}^{12}} - {B_{ij} \over r_{ij}^6} + {q_iq_j \over \varepsilon r_{ij}} \right] \nonumber \label{AMBER:FF} \end{eqnarray*}

The AMBER energy function contains bond, angle, dihedral, and non-bonded terms. The bond and angle terms are represented by diagonal harmonic expressions. The van der Waals term is a 6-12 potential, and the electrostatic is expressed as a Coulombic interaction with atom centered point charges. $K_r (kcal/mol \AA^2)$, $K_\theta (kcal/(mol radian^{2}))$, $V_n$ is the magnitude of the torsion, $n$ is the periodicity, $\gamma$ is the phase difference, $A_{ij} = \varepsilon r_{ij}^{*12}$ and $B_{ij} = 2\varepsilon r_{ij}^{*6}$, $r_{ij} = r_{i}^{*} + r_{j}^{*}$ in $\AA$, $r$ is the van der Waals radius for atom $i$, and $\varepsilon_{ij} = \sqrt{\varepsilon_i * \varepsilon_j}$

The uncompressed energy function:

\begin{eqnarray*} E_{\rm total} & = & \sum_{\rm bonds} K_r (r_{ij} - r_{eq})^2 + \sum_{\rm angles} K_\theta (\theta_{ijk} - \theta_{eq})^2 + \sum_{\rm dihedrals} \sum_{\rm n} V_n[1 + {\rm cos}(n\phi_{ijkl} - \gamma)] + \nonumber \\ & & \sum_{i<j} \varepsilon_{ij} \left[ \left({r_{ij}^{*} \over r_{ij}}\right)^{12} - 2\left({r_{ij}^{*} \over r_{ij}}\right)^6 \right] + {1 \over VDW } \sum_{i<j}^{1-4} \varepsilon_{ij} \left[ \left({r_{ij}^{*} \over r_{ij}} \right)^{12} - 2\left({r_{ij}^{*} \over r_{ij}}\right)^6 \right] + \nonumber \\ & & \sum_{i<j} {q_iq_j \over \varepsilon r_{ij}} + {1 \over ELE} \sum_{i<j}^{1-4} {q_iq_j \over \varepsilon r_{ij}} \nonumber \label{AMBER:FF2} \end{eqnarray*}

where $VDW == ELE == 1.2$.


Constructor & Destructor Documentation

MTKpp::amber::amber ( )

amber Constructor

References amberInitialize(), pAmberAngle, pAmberBond, pAmberNonBonded, and pAmberTorsion.

MTKpp::amber::~amber ( ) [virtual]

amber Destructor

References pAmberAngle, pAmberBond, pAmberNonBonded, and pAmberTorsion.


Member Function Documentation

void MTKpp::amber::amberInitialize ( )

Initialize amber.

References amberNonBonded, pAmberAngle, pAmberBond, pAmberNonBonded, and pAmberTorsion.

Referenced by amber().

double MTKpp::amber::calcBondEnergy ( ) [virtual]
double MTKpp::amber::calcAngleEnergy ( ) [virtual]
double MTKpp::amber::calcTorsionEnergy ( ) [virtual]
double MTKpp::amber::calcImproperEnergy ( ) [virtual]
double MTKpp::amber::calcNonBondedEnergy ( ) [virtual]
double MTKpp::amber::calcHBondEnergy ( ) [virtual]

Calculate H-Bond Energy.

Reimplemented from MTKpp::mmPotential.

References MTKpp::mmPotential::hBondEnergy.

void MTKpp::amber::setR6 ( double  d)
void MTKpp::amber::setR12 ( double  d)
void MTKpp::amber::setVDW14 ( double  d)
void MTKpp::amber::setVDW ( double  d)
void MTKpp::amber::setEle14 ( double  d)
void MTKpp::amber::setEle ( double  d)
void MTKpp::amber::printPWD ( int  i,
int  j,
double  r6,
double  r12,
double  vdw_energy,
double  electrostatic,
double  r 
) [virtual]
void MTKpp::mmPotential::initialize ( ) [inherited]
int MTKpp::mmPotential::setNumAtoms ( int  nAtoms) [inherited]
int MTKpp::mmPotential::setNumTypes ( int  n) [inherited]

Set number of distinct atom type.

Parameters:
nnumber of distinct atom type
Returns:
success

References MTKpp::mmPotential::nDistinctTypes, MTKpp::mmPotential::nonBondedParameterIndex, MTKpp::mmPotential::r12Params, and MTKpp::mmPotential::r6Params.

Referenced by main().

int MTKpp::mmPotential::setNumResidues ( int  n) [inherited]

Set number of residues.

Parameters:
nnumber of residues
Returns:
success

References MTKpp::mmPotential::nResidues, MTKpp::mmPotential::resNames, and MTKpp::mmPotential::resPointers.

Referenced by main().

int MTKpp::mmPotential::setExcludedSize ( int  n,
int  n2 
) [inherited]

Set number of excluded atoms.

Parameters:
nnumber of excluded atoms
n2number of excluded 1-4 atoms
Returns:
success

References MTKpp::mmPotential::excluded, MTKpp::mmPotential::excluded14, MTKpp::mmPotential::nExcluded, and MTKpp::mmPotential::nExcluded14.

Referenced by main().

int MTKpp::mmPotential::getNumAtoms ( ) [inherited]

END ALLOCATION ///.

Get number of atoms

Returns:
number of atoms

References MTKpp::mmPotential::nAtoms.

Referenced by MTKpp::amberNonBonded::calculateE(), and MTKpp::amberNonBonded::decompose().

char * MTKpp::mmPotential::getResidueNames ( ) [inherited]

Get residue names.

Returns:
residue names

References MTKpp::mmPotential::resNames.

int * MTKpp::mmPotential::getResiduePointers ( ) [inherited]

Get residue pointers.

Returns:
residue pointers

References MTKpp::mmPotential::resPointers.

int MTKpp::mmPotential::setNumAtomsBigRes ( int  n) [inherited]

Set number of atoms in the largest residue.

Parameters:
nnumber of atoms in the largest residue
Returns:
success

References MTKpp::mmPotential::nAtomsBigRes.

double * MTKpp::mmPotential::getCoords ( ) [inherited]
double * MTKpp::mmPotential::getCharges ( ) [inherited]

Get atomic charge array pointer.

Returns:
charges array pointer

References MTKpp::mmPotential::charges.

Referenced by MTKpp::amberNonBonded::calculateE(), MTKpp::amberNonBonded::decompose(), and main().

char * MTKpp::mmPotential::getSymbols ( ) [inherited]

Get atomic symbols array pointer.

Returns:
symbols array pointer

References MTKpp::mmPotential::symbols.

Referenced by main().

char * MTKpp::mmPotential::getAtomNames ( ) [inherited]

Get atomic symbols array pointer.

Returns:
symbols array pointer

References MTKpp::mmPotential::names.

int MTKpp::mmPotential::getNumTypes ( ) [inherited]

Get number of unique types.

Returns:
number of unique types

References MTKpp::mmPotential::nDistinctTypes.

Referenced by MTKpp::amberNonBonded::calculateE(), and MTKpp::amberNonBonded::decompose().

int * MTKpp::mmPotential::getIntTypes ( ) [inherited]

Get atom integer types.

Returns:
integer types array pointer

References MTKpp::mmPotential::iTypes.

Referenced by MTKpp::amberNonBonded::calculateE(), MTKpp::amberNonBonded::decompose(), and main().

char * MTKpp::mmPotential::getCharTypes ( ) [inherited]

Get atom character types.

Returns:
character types array pointer

References MTKpp::mmPotential::cTypes.

Referenced by main().

int * MTKpp::mmPotential::getNumExcluded ( ) [inherited]

Get number of excluded atoms array pointer.

Returns:
number of excluded atoms array pointer

References MTKpp::mmPotential::numExcluded.

Referenced by MTKpp::amberNonBonded::calculateE(), MTKpp::amberNonBonded::decompose(), and main().

int * MTKpp::mmPotential::getExcluded ( ) [inherited]

Get excluded atoms array pointer.

Returns:
excluded atoms array pointer

References MTKpp::mmPotential::excluded.

Referenced by MTKpp::amberNonBonded::calculateE(), MTKpp::amberNonBonded::decompose(), and main().

int * MTKpp::mmPotential::getNumExcluded14 ( ) [inherited]

Get number of excluded 1-4 atoms array pointer.

Returns:
number of excluded atoms array pointer

References MTKpp::mmPotential::numExcluded14.

Referenced by MTKpp::amberNonBonded::calculateE(), MTKpp::amberNonBonded::decompose(), and main().

int * MTKpp::mmPotential::getExcluded14 ( ) [inherited]

Get excluded 1-4 atoms array pointer.

Returns:
excluded atoms array pointer

References MTKpp::mmPotential::excluded14.

Referenced by MTKpp::amberNonBonded::calculateE(), MTKpp::amberNonBonded::decompose(), and main().

int * MTKpp::mmPotential::getAtomFlags ( ) [inherited]

Get atom flags array pointer.

Returns:
atom flags array pointer

References MTKpp::mmPotential::atomFlags.

Referenced by MTKpp::amberNonBonded::calculateE(), and MTKpp::amberNonBonded::decompose().

double * MTKpp::mmPotential::getGradients ( ) [inherited]

Get gradient array pointer.

Returns:
gradient array pointer

References MTKpp::mmPotential::gradients.

Referenced by MTKpp::amberTorsion::calculateG(), MTKpp::amberBond::calculateG(), MTKpp::amberAngle::calculateG(), and main().

int MTKpp::mmPotential::setNumBonds ( int  nBonds) [inherited]

Set number of bonds.

Parameters:
nBondsnumber of bonds
Returns:
success

References MTKpp::mmPotential::bondParams, MTKpp::mmPotential::bonds, and MTKpp::mmPotential::nBonds.

Referenced by main().

int MTKpp::mmPotential::getNumBonds ( ) [inherited]

Get number of bonds.

Returns:
number of bonds

References MTKpp::mmPotential::nBonds.

Referenced by MTKpp::amberBond::calculateE(), and MTKpp::amberBond::calculateG().

int MTKpp::mmPotential::setNumBondsWithH ( int  n) [inherited]

Set number of bonds containing Hydrogen.

Parameters:
nnumber of bonds containing Hydrogen
Returns:
success

References MTKpp::mmPotential::nBondsWithH.

int MTKpp::mmPotential::setNumBondsWithOutH ( int  n) [inherited]

Set number of bonds not containing Hydrogen.

Parameters:
nnumber of bonds not containing Hydrogen
Returns:
success

References MTKpp::mmPotential::nBondsWithOutH.

int * MTKpp::mmPotential::getBonds ( ) [inherited]

Get bond array pointer.

Returns:
bond array pointer

References MTKpp::mmPotential::bonds.

Referenced by MTKpp::amberBond::calculateE(), MTKpp::amberBond::calculateG(), and main().

double * MTKpp::mmPotential::getBondParams ( ) [inherited]

Get bond parameter array pointer.

Returns:
bond parameter array pointer

References MTKpp::mmPotential::bondParams.

Referenced by MTKpp::amberBond::calculateE(), MTKpp::amberBond::calculateG(), and main().

int MTKpp::mmPotential::setNumUniqueBonds ( int  n) [inherited]

Set number of unique bonds.

Parameters:
nnumber of unique bonds
Returns:
success

References MTKpp::mmPotential::nUniqueBonds.

int MTKpp::mmPotential::setNumAngles ( int  nAngles) [inherited]

Set number of angles.

Parameters:
nAnglesnumber of angles
Returns:
success

References MTKpp::mmPotential::angleParams, MTKpp::mmPotential::angles, and MTKpp::mmPotential::nAngles.

Referenced by main().

int MTKpp::mmPotential::getNumAngles ( ) [inherited]

Get number of angles.

Returns:
number of angles

References MTKpp::mmPotential::nAngles.

Referenced by MTKpp::amberAngle::calculateE(), and MTKpp::amberAngle::calculateG().

int MTKpp::mmPotential::setNumAnglesWithH ( int  n) [inherited]

Set number of angles containing Hydrogen.

Parameters:
nnumber of angles containing Hydrogen
Returns:
success

References MTKpp::mmPotential::nAnglesWithH.

int MTKpp::mmPotential::setNumAnglesWithOutH ( int  n) [inherited]

Set number of angles not containing Hydrogen.

Parameters:
nnumber of angles not containing Hydrogen
Returns:
success

References MTKpp::mmPotential::nAnglesWithOutH.

int * MTKpp::mmPotential::getAngles ( ) [inherited]

Get angle array pointer.

Returns:
angle array pointer

References MTKpp::mmPotential::angles.

Referenced by MTKpp::amberAngle::calculateE(), MTKpp::amberAngle::calculateG(), and main().

double * MTKpp::mmPotential::getAngleParams ( ) [inherited]

Get angle parameter array pointer.

Returns:
angle parameter array pointer

References MTKpp::mmPotential::angleParams.

Referenced by MTKpp::amberAngle::calculateE(), MTKpp::amberAngle::calculateG(), and main().

int MTKpp::mmPotential::setNumUniqueAngles ( int  n) [inherited]

Set number of unique angles.

Parameters:
nnumber of unique angles
Returns:
success

References MTKpp::mmPotential::nUniqueAngles.

int MTKpp::mmPotential::setNumTorsions ( int  nTorsions) [inherited]

Set number of torsions.

Parameters:
nTorsionsnumber of torsions
Returns:
success

References MTKpp::mmPotential::nTorsions, MTKpp::mmPotential::torsionParams, and MTKpp::mmPotential::torsions.

Referenced by main().

int MTKpp::mmPotential::getNumTorsions ( ) [inherited]

Get number of torsions.

Returns:
number of torsions

References MTKpp::mmPotential::nTorsions.

Referenced by MTKpp::amberTorsion::calculateE(), and MTKpp::amberTorsion::calculateG().

int * MTKpp::mmPotential::getTorsions ( ) [inherited]

Get torsion array pointer.

Returns:
torsion array pointer

References MTKpp::mmPotential::torsions.

Referenced by MTKpp::amberTorsion::calculateE(), MTKpp::amberTorsion::calculateG(), and main().

double * MTKpp::mmPotential::getTorsionParams ( ) [inherited]

Get torsion parameter array pointer.

Returns:
torsion parameter array pointer

References MTKpp::mmPotential::torsionParams.

Referenced by MTKpp::amberTorsion::calculateE(), MTKpp::amberTorsion::calculateG(), and main().

int MTKpp::mmPotential::setNumImpropers ( int  nImpropers) [inherited]

Set number of impropers.

Parameters:
nImpropersnumber of impropers
Returns:
success

References MTKpp::mmPotential::improperParams, MTKpp::mmPotential::impropers, and MTKpp::mmPotential::nImpropers.

Referenced by main().

int MTKpp::mmPotential::getNumImpropers ( ) [inherited]

Get number of impropers.

Returns:
number of impropers

References MTKpp::mmPotential::nImpropers.

Referenced by MTKpp::amberImproper::calculateE(), MTKpp::amberTorsion::calculateE(), and MTKpp::amberTorsion::calculateG().

int * MTKpp::mmPotential::getImpropers ( ) [inherited]

Get improper array pointer.

Returns:
improper array pointer

References MTKpp::mmPotential::impropers.

Referenced by MTKpp::amberImproper::calculateE(), MTKpp::amberTorsion::calculateE(), MTKpp::amberTorsion::calculateG(), and main().

double * MTKpp::mmPotential::getImproperParams ( ) [inherited]

Get improper parameter array pointer.

Returns:
improper parameter array pointer

References MTKpp::mmPotential::improperParams.

Referenced by MTKpp::amberImproper::calculateE(), MTKpp::amberTorsion::calculateE(), MTKpp::amberTorsion::calculateG(), and main().

int MTKpp::mmPotential::setNumDihedralsWithH ( int  n) [inherited]

Set number of dihedrals containing Hydrogen.

Parameters:
nnumber of dihedrals containing Hydrogen
Returns:
success

References MTKpp::mmPotential::nDihedralsWithH.

int MTKpp::mmPotential::setNumDihedralsWithOutH ( int  n) [inherited]

Set number of dihedrals not containing Hydrogen.

Parameters:
nnumber of dihedrals not containing Hydrogen
Returns:
success

References MTKpp::mmPotential::nDihedralsWithOutH.

int MTKpp::mmPotential::setNumUniqueDihedrals ( int  n) [inherited]

Set number of unique dihedrals.

Parameters:
nnumber of unique dihedrals
Returns:
success

References MTKpp::mmPotential::nUniqueDihedrals.

int MTKpp::mmPotential::setNumNonBonded ( int  nNonBonded) [inherited]

Set number of non-bonded interactions.

Parameters:
nNonBondednumber of non-bonded interactions
Returns:
success

References MTKpp::mmPotential::nAtoms, MTKpp::mmPotential::nNonBonded, MTKpp::mmPotential::nonBonded, MTKpp::mmPotential::nonBonded14Ptrs, MTKpp::mmPotential::nonBondedParams, and MTKpp::mmPotential::nonBondedPtrs.

int MTKpp::mmPotential::getNumNonBonded ( ) [inherited]

Set number of non-bonded interactions.

Returns:
number of non-bonded interactions

References MTKpp::mmPotential::nNonBonded.

int * MTKpp::mmPotential::getNonBonded ( ) [inherited]

Get nonbonded array pointer.

Returns:
nonbonded array pointer

References MTKpp::mmPotential::nonBonded.

double * MTKpp::mmPotential::getNonBondedParams ( ) [inherited]

Get nonbonded parameter array pointer.

Returns:
nonbonded parameter array pointer

References MTKpp::mmPotential::nonBondedParams.

int * MTKpp::mmPotential::getNonBondedPtrs ( ) [inherited]

Get nonbonded indexing array pointer.

Returns:
nonbonded indexing array pointer

References MTKpp::mmPotential::nonBondedPtrs.

int * MTKpp::mmPotential::getNonBonded14Ptrs ( ) [inherited]

Get 1-4 nonbonded indexing array pointer.

Returns:
1-4 nonbonded indexing array pointer

References MTKpp::mmPotential::nonBonded14Ptrs.

double * MTKpp::mmPotential::getR6Params ( ) [inherited]

Get L-J R6 Parameters.

Returns:
L-J R6 Parameters

References MTKpp::mmPotential::r6Params.

Referenced by MTKpp::amberNonBonded::calculateE(), MTKpp::amberNonBonded::decompose(), and main().

double * MTKpp::mmPotential::getR12Params ( ) [inherited]

Get L-J R12 Parameters.

Returns:
L-J R12 Parameters

References MTKpp::mmPotential::r12Params.

Referenced by MTKpp::amberNonBonded::calculateE(), MTKpp::amberNonBonded::decompose(), and main().

int * MTKpp::mmPotential::getNonBondedParameterIndex ( ) [inherited]

Get nonbonded indexing array pointer.

Returns:
nonbonded indexing array pointer

References MTKpp::mmPotential::nonBondedParameterIndex.

Referenced by MTKpp::amberNonBonded::calculateE(), and MTKpp::amberNonBonded::decompose().

void MTKpp::mmPotential::setPotential ( bool  bBond,
bool  bAngle,
bool  bTorsion,
bool  bImproper,
bool  bNonBonded,
bool  bHBond 
) [inherited]

Set the potential to be used.

Parameters:
bBondturn on bond calculation
bAngleturn on angle calculation
bTorsionturn on torsion calculation
bImproperturn on improper calculation
bNonBondedturn on non-bonded (Ele & L-J) calculation
bHBondturn on H-bond calculation

References MTKpp::mmPotential::bAngle, MTKpp::mmPotential::bBond, MTKpp::mmPotential::bHBond, MTKpp::mmPotential::bImproper, MTKpp::mmPotential::bNonBonded, and MTKpp::mmPotential::bTorsion.

Referenced by main().

void MTKpp::mmPotential::getPotential ( bool &  bBond,
bool &  bAngle,
bool &  bTorsion,
bool &  bImproper,
bool &  bNonBonded,
bool &  bHBond 
) [inherited]

Get the potential to be used.

Parameters:
bBondBond switch
bAngleAngle switch
bTorsionTorsion switch
bImproperImproper switch
bNonBondedNonbonded switch
bHBondH-Bond switch

References MTKpp::mmPotential::bAngle, MTKpp::mmPotential::bBond, MTKpp::mmPotential::bHBond, MTKpp::mmPotential::bImproper, MTKpp::mmPotential::bNonBonded, and MTKpp::mmPotential::bTorsion.

void MTKpp::mmPotential::calcForces ( int  i) [inherited]

Turn on gradient calculation.

Parameters:
ion/off

References MTKpp::mmPotential::bGradient.

Referenced by main().

void MTKpp::mmPotential::calcEnergy ( ) [inherited]
void MTKpp::mmPotential::decomposeEnergy ( bool  bBond,
bool  bAngle,
bool  bTorsion,
bool  bImproper,
bool  bNonBonded,
bool  bHBond,
std::string  f 
) [inherited]
int * MTKpp::mmPotential::getOutputFlags ( ) [inherited]

Get output flags array for energy decomposition.

Returns:
output flags array

References MTKpp::mmPotential::outFlags.

Referenced by MTKpp::amberNonBonded::decompose().

void MTKpp::mmPotential::printEnergy ( ) [inherited]
void MTKpp::mmPotential::printEnergy ( std::ostream &  os) [inherited]
void MTKpp::mmPotential::printEnergy2 ( ) [inherited]
void MTKpp::mmPotential::printEnergy2 ( std::ostream &  os) [inherited]
void MTKpp::mmPotential::printEnergy2 ( std::string  s) [inherited]
void MTKpp::mmPotential::printEnergy2 ( std::string  s,
std::string  s2 
) [inherited]

Print energy terms in single line to the screen.

Parameters:
sA string thats added to the begining of the line
s2A string thats added to the end of the line

References MTKpp::mmPotential::angleEnergy, MTKpp::mmPotential::bondEnergy, MTKpp::mmPotential::ele14Energy, MTKpp::mmPotential::eleEnergy, MTKpp::mmPotential::improperEnergy, MTKpp::mmPotential::torsionEnergy, MTKpp::mmPotential::totalEnergy, MTKpp::mmPotential::vdW14Energy, and MTKpp::mmPotential::vdWEnergy.

void MTKpp::mmPotential::printEnergy2 ( std::ostream &  os,
std::string  s,
std::string  s2 
) [inherited]

Print energy terms in single line to the screen.

Parameters:
osprint stream
sA string thats added to the begining of the line
s2A string thats added to the end of the line

References MTKpp::mmPotential::angleEnergy, MTKpp::mmPotential::bondEnergy, MTKpp::mmPotential::ele14Energy, MTKpp::mmPotential::eleEnergy, MTKpp::mmPotential::improperEnergy, MTKpp::mmPotential::torsionEnergy, MTKpp::mmPotential::totalEnergy, MTKpp::mmPotential::vdW14Energy, and MTKpp::mmPotential::vdWEnergy.

void MTKpp::mmPotential::printCoords ( ) [inherited]

Print coords.

References MTKpp::mmPotential::nAtoms, and MTKpp::mmPotential::xyz.

double MTKpp::mmPotential::getTotalEnergy ( ) [inherited]

Get the total energy.

Returns:
total energy

References MTKpp::mmPotential::totalEnergy.

Referenced by main().

double MTKpp::mmPotential::getBondEnergy ( ) [inherited]

Get the bond energy.

Returns:
bond energy
double MTKpp::mmPotential::getTotalVDWEnergy ( ) [inherited]

Get the total van der Waals energy.

Returns:
total vdW energy

References MTKpp::mmPotential::vdW14Energy, and MTKpp::mmPotential::vdWEnergy.

double MTKpp::mmPotential::getTotalEleEnergy ( ) [inherited]

Get the total electrostatic energy.

Returns:
ELE energy

References MTKpp::mmPotential::ele14Energy, and MTKpp::mmPotential::eleEnergy.

void MTKpp::mmPotential::resetGMatrix ( ) [inherited]

Set gradient matrix to zero.

References MTKpp::mmPotential::gradients, and MTKpp::mmPotential::nAtoms.

Referenced by main().

void MTKpp::mmPotential::setNonHGradsToZero ( ) [inherited]

Set non-hydrogen atom gradients zero.

References MTKpp::mmPotential::gradients, MTKpp::mmPotential::nAtoms, and MTKpp::mmPotential::symbols.

Referenced by main().

void MTKpp::mmPotential::getGradNorm ( double &  gMax,
int &  gMaxAtom,
double &  gNorm 
) [inherited]

Get the gMax value, gMaxAtom, and gNorm.

Parameters:
gMaxgMax value
gMaxAtomgMaxAtom index
gNormgNorm value

References MTKpp::mmPotential::gradients, and MTKpp::mmPotential::nAtoms.

Referenced by main().


Friends And Related Function Documentation

friend class amberNonBonded [friend]

Referenced by amberInitialize().


Member Data Documentation

int MTKpp::mmPotential::nAtoms [protected, inherited]
int MTKpp::mmPotential::nDistinctTypes [protected, inherited]
int MTKpp::mmPotential::nBondsWithH [protected, inherited]

Number of bonds containing Hydrogen.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumBondsWithH().

int MTKpp::mmPotential::nBondsWithOutH [protected, inherited]

Number of bonds not containing hydrogen.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumBondsWithOutH().

int MTKpp::mmPotential::nAnglesWithH [protected, inherited]

Number of angles containing hydrogen.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumAnglesWithH().

int MTKpp::mmPotential::nAnglesWithOutH [protected, inherited]

Number of angles not containing hydrogen.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumAnglesWithOutH().

int MTKpp::mmPotential::nDihedralsWithH [protected, inherited]

Number of dihedrals containing hydrogen.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumDihedralsWithH().

int MTKpp::mmPotential::nDihedralsWithOutH [protected, inherited]

Number of dihedrals not containing hydrogen.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumDihedralsWithOutH().

int MTKpp::mmPotential::nExcluded [protected, inherited]

Number of excluded atoms This is a sum over all atoms excluded atoms.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setExcludedSize().

int MTKpp::mmPotential::nExcluded14 [protected, inherited]

Number of excluded 1-4 atoms This is a sum over all atoms excluded atoms.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setExcludedSize().

int MTKpp::mmPotential::nResidues [protected, inherited]
int MTKpp::mmPotential::nUniqueBonds [protected, inherited]

Number of unique bond types.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumUniqueBonds().

int MTKpp::mmPotential::nUniqueAngles [protected, inherited]

Number of unique angle types.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumUniqueAngles().

int MTKpp::mmPotential::nUniqueDihedrals [protected, inherited]

Number of unique angle types.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumUniqueDihedrals().

int MTKpp::mmPotential::nAtomsBigRes [protected, inherited]

Number of unique angle types.

Referenced by MTKpp::mmPotential::mmPotential(), and MTKpp::mmPotential::setNumAtomsBigRes().

double* MTKpp::mmPotential::xyz [protected, inherited]
char* MTKpp::mmPotential::symbols [protected, inherited]
char* MTKpp::mmPotential::names [protected, inherited]
int* MTKpp::mmPotential::iTypes [protected, inherited]
char* MTKpp::mmPotential::cTypes [protected, inherited]
double* MTKpp::mmPotential::charges [protected, inherited]
double* MTKpp::mmPotential::masses [protected, inherited]
double* MTKpp::mmPotential::gradients [protected, inherited]
int* MTKpp::mmPotential::numExcluded [protected, inherited]
int* MTKpp::mmPotential::numExcluded14 [protected, inherited]
int* MTKpp::mmPotential::atomFlags [protected, inherited]
int* MTKpp::mmPotential::outFlags [protected, inherited]
int* MTKpp::mmPotential::excluded [protected, inherited]
int* MTKpp::mmPotential::excluded14 [protected, inherited]
double* MTKpp::mmPotential::r12Params [protected, inherited]
double* MTKpp::mmPotential::r6Params [protected, inherited]
char* MTKpp::mmPotential::resNames [protected, inherited]
int* MTKpp::mmPotential::resPointers [protected, inherited]
int* MTKpp::mmPotential::nonBondedParameterIndex [protected, inherited]
int MTKpp::mmPotential::nBonds [protected, inherited]
int* MTKpp::mmPotential::bonds [protected, inherited]
double* MTKpp::mmPotential::bondParams [protected, inherited]
int MTKpp::mmPotential::nAngles [protected, inherited]
int* MTKpp::mmPotential::angles [protected, inherited]
double* MTKpp::mmPotential::angleParams [protected, inherited]
int MTKpp::mmPotential::nTorsions [protected, inherited]
int* MTKpp::mmPotential::torsions [protected, inherited]
double* MTKpp::mmPotential::torsionParams [protected, inherited]
int MTKpp::mmPotential::nImpropers [protected, inherited]
int* MTKpp::mmPotential::impropers [protected, inherited]
double* MTKpp::mmPotential::improperParams [protected, inherited]
int MTKpp::mmPotential::nNonBonded [protected, inherited]
int* MTKpp::mmPotential::nonBonded [protected, inherited]
double* MTKpp::mmPotential::nonBondedParams [protected, inherited]
int* MTKpp::mmPotential::nonBondedPtrs [protected, inherited]
int MTKpp::mmPotential::nNonBonded14 [protected, inherited]

Total number of non bonded 1-4 interactions.

int* MTKpp::mmPotential::nonBonded14 [protected, inherited]

non-bonded 1-4 atom indices array

double* MTKpp::mmPotential::nonBonded14Params [protected, inherited]

non-bonded 1-4 array

int* MTKpp::mmPotential::nonBonded14Ptrs [protected, inherited]
bool MTKpp::mmPotential::bEnergy [protected, inherited]

Calculate only E.

Referenced by MTKpp::mmPotential::initialize().

bool MTKpp::mmPotential::bGradient [protected, inherited]
bool MTKpp::mmPotential::bBond [protected, inherited]
bool MTKpp::mmPotential::bAngle [protected, inherited]
bool MTKpp::mmPotential::bTorsion [protected, inherited]
bool MTKpp::mmPotential::bImproper [protected, inherited]
bool MTKpp::mmPotential::bNonBonded [protected, inherited]
bool MTKpp::mmPotential::bHBond [protected, inherited]
bool MTKpp::mmPotential::bBondDecompose [protected, inherited]
bool MTKpp::mmPotential::bAngleDecompose [protected, inherited]
bool MTKpp::mmPotential::bTorsionDecompose [protected, inherited]
bool MTKpp::mmPotential::bImproperDecompose [protected, inherited]
bool MTKpp::mmPotential::bNonBondedDecompose [protected, inherited]
bool MTKpp::mmPotential::bHBondDecompose [protected, inherited]
std::string MTKpp::mmPotential::pwdFile [protected, inherited]

Decomposed energy output file.

Referenced by MTKpp::mmPotential::initialize().

std::ofstream MTKpp::mmPotential::pwdFileStream [protected, inherited]

Output File Stream.

Referenced by MTKpp::mmPotential::calcEnergy().

std::string MTKpp::mmPotential::pwdGZFile [protected, inherited]
double MTKpp::mmPotential::totalEnergy [protected, inherited]
double MTKpp::mmPotential::bondEnergy [protected, inherited]
double MTKpp::mmPotential::angleEnergy [protected, inherited]
double MTKpp::mmPotential::torsionEnergy [protected, inherited]
double MTKpp::mmPotential::improperEnergy [protected, inherited]
double MTKpp::mmPotential::vdWEnergy [protected, inherited]
double MTKpp::mmPotential::vdW14Energy [protected, inherited]
double MTKpp::mmPotential::R6 [protected, inherited]

R6 component of the vdW energy.

Referenced by MTKpp::mmPotential::initialize(), MTKpp::mmPotential::printEnergy(), and setR6().

double MTKpp::mmPotential::R12 [protected, inherited]

R12 component of the vdW energy.

Referenced by MTKpp::mmPotential::initialize(), MTKpp::mmPotential::printEnergy(), and setR12().

double MTKpp::mmPotential::eleEnergy [protected, inherited]
double MTKpp::mmPotential::ele14Energy [protected, inherited]
double MTKpp::mmPotential::nonBondedEnergy [protected, inherited]
double MTKpp::mmPotential::hBondEnergy [protected, inherited]

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

Generated on Fri Dec 23 2011 09:28:56 for MTK++ by Doxygen 1.7.5.1