PROFASI  Version 1.5
Public Member Functions | List of all members
prf::TetrahedralGroup Class Reference

The Tetrahedral group. More...

#include <TetrahedralGroup.hh>

Inheritance diagram for prf::TetrahedralGroup:
Inheritance graph

Public Member Functions

void Initialize ()
 Initialize the node, possibly pre-calculate anything that can be.
void SetBranchAngle (double x)
 Set the Root-Junction-Outgoing angle.
void SetRootAngle (double x)
 Set the Base-Root-Junction angle.
void SetBondLengths (double x0, double x1, double x2)
 Set bondlengths Base-Root, Root-Junction, Junction-Branch.
void SetBranchLength (int i, double x)
 Set bondlength for Junction-Branch, the integer is irrelevant here.
void Create ()
 Assign coordinates to atoms attached to outgoing bonds.
- Public Member Functions inherited from prf::Node
void ReCreate ()
 Recursive Create. Self followed by subnodes.
virtual void AssignPhi (double)
 assign to the dof of the Node.
double Phi ()
 retrieve the torsional angle
void LockPhi (double xx)
 Lock the torsional dof of the Node to value xx.
int Locked () const
 if it is really a dof
AtomATOM (int i)
 Reference to i'th atom.
Atomatom (int i)
 Reference to i'th atom.
void AddSubnode (Node *nd)
 Make another node a subnode.
void AtomOffset (int i)
void RevertPhi (double)
 Revert the torsional angle to a given value.
virtual void ExportConnections (ConnectionsMatrix &aa)
 Export connection information to an external ConnectionsMatrix.
virtual void LocPairs (std::deque< std::pair< int, int > > &lcp)
 List pairs of member atoms which are connected by 3 covalent bonds.
virtual void BuildConnections ()
 Assign proper Bases to subnodes and call BuildConnections on them.
virtual void SetBase (Atom &ap)
 Set a new atom as one Base.
void SetBase (Atom &, Atom &, Atom &)
 be careful: This actually means set Base, Root and Junction
void set_bases (Atom &b1, Atom &b2, Atom &b3)
 And this means set all bases.
void MobileAtoms (int &r1, int &r2)
 Atoms that move when the node turns.
void SetMobileAtoms (int i, int j)
 Set what range should be returned as the mobile atoms.
virtual void AssignAtoms (Atom &a0, Atom &a1, Atom &a2, std::vector< Atom > &att, int st)
virtual void AssignAtoms (Atom &a0, Atom &a1, Atom &a2, Atom &a3)
virtual void AssignAtoms (Atom &a0, Atom &a1, Atom &a2, Atom &a3, Atom &a4)
virtual void AssignAtoms (Atom &a0, Atom &a1, Atom &a2, Atom &a3, Atom &a4, Atom &a5)
virtual void SetRelPhi (double, double)
- Public Member Functions inherited from prf::Named
 Named ()
 Create an object with name "unnamed".
 Named (const char *st)
 Create an object with name st given as a C string.
 Named (std::string st)
 Create an object with a name given as a string.
std::string Name () const
 Retrive the name of an object.
void Name (std::string gnm)
 Assign a new name to an object.

Detailed Description

A representation of groups such as the -CH_3. Suppose the group is attached to a certain atom "Root". If Base is just a hydrogen, all bonds of the carbon atom are identical, and the angle Root-C-H is arccos(-1/3). But if Root is a larger atom, this angle could be greater. It will be kept as an adjustible parameter, "BranchAngle". The three other atoms attached to the carbon are assumed to be identical. For the case where they are different, different classes will be used, like the ATetGroup class. Another angle "RootAngle" is required to define a coordinate system with the Root and Axis: the Base-Root-C angle.

Member Function Documentation

void TetrahedralGroup::Create ( )

*Using the position of Base, Root and Junction, and the state of the degree of freedom associated with the node, find the coordinates of all other atoms in the node.

Reimplemented from prf::Node.

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

PROFASI: Protein Folding and Aggregation Simulator, Version 1.5
© (2005-2016) Anders Irbäck and Sandipan Mohanty
Documentation generated on Mon Jul 18 2016 using Doxygen version 1.8.2