OpenStructure
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions
Dihedral Class Reference

#include <dihedral.hh>

Inherited by TorsionImpl.

Public Member Functions

 Dihedral (const AtomImplPtr &atom1, const AtomImplPtr &atom2, const AtomImplPtr &atom3, const AtomImplPtr &atom4)
 
 Dihedral (const AtomImplList &atoms)
 
Real GetAngleXCS () const
 
Real GetAngleICS () const
 
void SetAngleICS (Real angle, bool update_other)
 
geom::Vec3 GetPos () const
 
geom::Vec3 GetOriginalPos () const
 
bool IsAtomInvolved (const AtomImplPtr &atom)
 
AtomImplPtr GetFirst () const
 
AtomImplPtr GetSecond () const
 
AtomImplPtr GetThird () const
 
AtomImplPtr GetFourth () const
 
bool Matches (const AtomImplPtr &a1, const AtomImplPtr &a2, const AtomImplPtr &a3, const AtomImplPtr &a4) const
 

Detailed Description

Low level dihedral implementation.

See Also
Roll Helix Example

Definition at line 31 of file dihedral.hh.

Constructor & Destructor Documentation

Dihedral ( const AtomImplPtr atom1,
const AtomImplPtr atom2,
const AtomImplPtr atom3,
const AtomImplPtr atom4 
)

construct new dihedral as defined by the four consecutive atoms atom1 to atom4

Dihedral ( const AtomImplList atoms)

construct new dihedral as defined by the four consecutive atoms stored in atoms

Member Function Documentation

Real GetAngleICS ( ) const

get dihedral angle based on internal coordinate system

Real GetAngleXCS ( ) const

get dihedral angle base on atom position

AtomImplPtr GetFirst ( ) const
AtomImplPtr GetFourth ( ) const
geom::Vec3 GetOriginalPos ( ) const
geom::Vec3 GetPos ( ) const
AtomImplPtr GetSecond ( ) const
AtomImplPtr GetThird ( ) const
bool IsAtomInvolved ( const AtomImplPtr atom)
bool Matches ( const AtomImplPtr a1,
const AtomImplPtr a2,
const AtomImplPtr a3,
const AtomImplPtr a4 
) const
void SetAngleICS ( Real  angle,
bool  update_other 
)

set dihedral angle. Requires an intact internal coordinate system.

Parameters
anglenew angle in radians
update_otherIf true, connectors of atom3 are updated accordingly, otherwise they will be left untouched

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