ObjCryst++  1.5CVS
Public Member Functions | Public Attributes
ObjCryst::StretchModeBondLength Struct Reference

Group of atoms for random moves changing a bond length. More...

Inheritance diagram for ObjCryst::StretchModeBondLength:
ObjCryst::StretchMode

List of all members.

Public Member Functions

 StretchModeBondLength (MolAtom &at0, MolAtom &at1, const MolBond *pBond)
 Constructor If pBond!=0, the bond length restraint is respected.
virtual void CalcDeriv (const bool derivllk=true) const
 Calculate the derivative of the Molecule's Log(likelihood) and atomic positions versus a change of the bond length.
virtual void Print (ostream &os, bool full=true) const
 Print one-line list of atoms moved.
virtual void Stretch (const REAL change)
 Move the atoms according to this mode.
virtual void RandomStretch (const REAL amplitude)
 Move the atoms according to this mode, randomly.

Public Attributes

MolAtommpAtom0
 The first atom (fixed).
MolAtommpAtom1
 The second atom (first atom moved)
const MolBondmpBond
 The (optional) bond length which this stretch mode should respect.
set< MolAtom * > mvTranslatedAtomList
 The set of atoms that are to be translated, including at1.
- Public Attributes inherited from ObjCryst::StretchMode
std::map< const MolBond *, REAL > mvpBrokenBond
 List of bond restraints affected by this mode The key is the restraint, the value is the derivative of the LLK associated.
std::map< const MolBondAngle
*, REAL > 
mvpBrokenBondAngle
 List of bond angle restraints modified by this mode The key is the restraint, the value is the derivative of the LLK associated.
std::map< const
MolDihedralAngle *, REAL > 
mvpBrokenDihedralAngle
 List of dihedral angle restraints modified by this mode The key is the restraint, the value is the derivative of the LLK associated.
REAL mLLKDeriv
 Derivative of the Molecule's Log(likelihood) versus a change of the bond length.
std::map< const MolAtom *, XYZmDerivXYZ
 Derivative of the atomic positions versus a change of the bond length.
MoleculempMol
 The Molecule corresponding to this stretch mode.
REAL mBaseAmplitude
 The recommended change amplitude, for a base global optimization displacement, to obtain an average 0.1 Angstroem displacement.

Detailed Description

Group of atoms for random moves changing a bond length.

This should be merged (or have an inheritance relation) with MolBond.


Member Function Documentation

virtual void ObjCryst::StretchModeBondLength::CalcDeriv ( const bool  derivllk = true) const
virtual

Calculate the derivative of the Molecule's Log(likelihood) and atomic positions versus a change of the bond length.

The result is stored in mLLKDeriv and mLLKDerivXYZ, as well as in the various lists of restraints broken by this mode.

Parameters:
derivllk,:if false, the derivative of the overall llk will not be computed, only the derivative of the atomic positions.

Implements ObjCryst::StretchMode.


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