FOX/ObjCryst++  1.10.X (development)
ObjCryst::StretchModeBondAngle Struct Reference

Atoms moved when changing a bond angle. More...

+ Inheritance diagram for ObjCryst::StretchModeBondAngle:
+ Collaboration diagram for ObjCryst::StretchModeBondAngle:

Public Member Functions

 StretchModeBondAngle (MolAtom &at0, MolAtom &at1, MolAtom &at2, const MolBondAngle *pBondAngle)
 Constructor If pBondAngle!=0, the bond angle 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. More...
 
virtual void Print (ostream &os, bool full=true) const
 Print one-line list of atoms moved.
 
virtual void Stretch (const REAL change, const bool keepCenter=true)
 Move the atoms according to this mode.
 
virtual void RandomStretch (const REAL amplitude, const bool keepCenter=true)
 Move the atoms according to this mode, randomly.
 

Public Attributes

MolAtommpAtom0
 The first atom.
 
MolAtommpAtom1
 The second atom.
 
MolAtommpAtom2
 The third atom.
 
const MolBondAnglempBondAngle
 The (optional) bond angle restraint which this stretch mode should respect.
 
set< MolAtom * > mvRotatedAtomList
 The set of atoms that are to be rotated around the direction going through at1 and perpendicular to the at0-at1-at2 plane. More...
 
- 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. More...
 

Detailed Description

Atoms moved when changing a bond angle.

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

Definition at line 595 of file Molecule.h.

Member Function Documentation

void ObjCryst::StretchModeBondAngle::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
derivllkif false, the derivative of the overall llk will not be computed, only the derivative of the atomic positions.

Implements ObjCryst::StretchMode.

Definition at line 1593 of file Molecule.cpp.

Member Data Documentation

set<MolAtom *> ObjCryst::StretchModeBondAngle::mvRotatedAtomList

The set of atoms that are to be rotated around the direction going through at1 and perpendicular to the at0-at1-at2 plane.

Definition at line 620 of file Molecule.h.


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