phoenix Namespace Reference

All functionality of the molecular graph is in namespace phoenix. There are Chains, Residues, Atoms and Bonds. Chains have Residues, Residues have Atoms and Atoms are connected by Bonds. Atoms and Bonds form a graph, while Chains, Residues and Atoms are organized in a tree structure. The objects itself are stored in hidden structures and manipulation is possible by functions. Access to the members of the objects is provided through pointer. They are called ChainKey, ResidueKey, AtomKey and BondKey. More...


Classes

class  ELE
 Element Class This class has a nested enum for all elements. More...
class  GEO
 Geometry Class This class has a nested enum for geometries. Supported geometries are:
GEO::none - atoms with no or one bond eg. H, Fl, Cl
GEO::lin - linear geometry for atoms with 2 bonds eg. sp carbon
GEO::tri - trigonal planar geometry eg. sp2 carbon/nitrogen, carboxylate oxygen(lonepairs also count)
GEO::tet - tetrahedral geometry eg. sp3 carbon but also hydroxy oxygen
GEO::bip - trigonal bipyramidal
GEO::oct - octahedral
GEO::UNK - unknown geometry. More...
class  Atom
 Atom Class Class Atom represents the nodes in the molecular graph and the last layer in the hirachical tree. An Atom has an parent Residue, an Element (class ELE), a Geometry (class GEO), 3d coordinates (Vec3_t) and a list of bonds. It can also have a name, a forcefield type, a charge and a formal charge. More...
class  BT
 Bond Type Class This class has a nested enum for different bondtypes. Supported bondtypes are:
BT::s - single bond
BT::re - bond involved in resonance stabilized system eg. carboxylate, peptide but not aromatic
BT::ar - aromatic bond
BT::d - double bond
BT::t - triple bond
BT::UNK - unknown. More...
class  Bond
 Bond Class Class Bond represents the edges in a molecular graph. A Bond has two AtomKeys for the atoms, which are connected by the bond, and a bondtype (class BT). The atoms are named Atom1 and Atom2. Its also possible to store a forcefield type (unsigned int) in the bond. More...
class  Chain
 Chain Class This class is the top level in the molecular tree structure. It has a name, a ResidueList with all residues and a tag. More...
class  MOL
 MOL Class Class MOL can be used to copy molecules. More...
class  PhoenixError
 errors class for phoenix

All errors thrown in namespace phoenix are of this type. More...

class  Residue
 Residue Class This is a container to group atoms in small organising units. It has a parent Chain, a residue type (class RT) and a AtomList with all atoms of the residue. It can also have a name and a id. More...
class  RT
 Residue Type Class This class has a nested enum for different residues types. Supported residues types are:
standard as
ALA, ARG, ASN, ASP, CYS, GLN, GLU, GLY, HIS, ILE, LEU, LYS, MET, PHE,
PRO, SER, THR, TRP, TYR, VAL
modified standard as
ASZ, ASH - neutral ASP
GLZ, GLH - neutral GLU
HID - neutral HIS, H at ND1, converted to HIS
HIE - neutral HIS, H at NE2
HIP - positive HIS
LYZ, LYN - neutral LYS
CYM - negative CYS
CYX - half cystine, CYS in disulfide bridges
TYM - negative TYR
N and C terminus
AMN - N-terminus ammonium
AMI - N-terminus amin
CXL - C-terminus carboxylate
CXC - C-terminus carbon acid
UNK - unspecified type. More...

Typedefs

typedef float Float_t
 floating point number type.
typedef Vec3f Vec3_t
 general purpose 3d vector (osg::Vec3d Class).
typedef Quat Quat_t
 general purpose quaternion (osg::Quat Class).
typedef Matrixf Matrix_t
 general purpose 4x4 matrix (osg::Matrixd Class).
typedef vector< ChainKey > ChainList
 container to store "ChainKey"s. Some functions expect this container for in/output.
typedef vector< ResidueKey > ResidueList
 container to store "ResidueKey"s. Some functions expect this container for in/output.
typedef vector< AtomKey > AtomList
 container to store "AtomKey"s. Some functions expect this container for in/output.
typedef vector< BondKey > BondList
 container to store "BondKey"s. Some functions expect this container for in/output.

Functions

ostream & operator<< (ostream &os, const ELE &e)
 operator << for class ELE
ostream & operator<< (ostream &os, const GEO &g)
 operator << for class GEO
ostream & operator<< (ostream &os, const BT &bt)
 operator << for class BT
ChainKey cCreate (string n)
 Create a new chain.
void cDelete (ChainKey c)
 Delete a chain.
void clDelete (const ChainList &cl)
 Delete several chains.
ResidueKey rCreate (ChainKey p, RT rt)
 Create a new residue.
void rDelete (ResidueKey r)
 Delete a residue.
void rlDelete (const ResidueList &rl)
 Delete several residues.
AtomKey aCreate (ResidueKey p, ELE e, Vec3_t c, GEO g)
 Create a new atom.
void aDelete (AtomKey a)
 Delete an atom.
void alDelete (const AtomList &al)
 Delete several atoms.
BondKey bCreate (AtomKey a1, AtomKey a2, BT bt)
 Create a new bond.
void bDelete (BondKey b)
 Delete a bond.
void blDelete (const BondList &bl)
 Delete several bonds.
ChainList Chains ()
 Return all chains.
ResidueList cResidues (ChainKey c)
 Return the residues of a chain.
ResidueList clResidues (const ChainList &cl)
 Return the residues of several chains.
AtomList cAtoms (ChainKey c)
 Return the atoms of a chain.
AtomList clAtoms (const ChainList &cl)
 Return the atoms of several chains.
ResidueList Residues ()
 Return all residues.
ChainKey rChain (ResidueKey r)
ChainList rlChain (const ResidueList &rl)
 Return the parent chain of several residues.
AtomList rAtoms (ResidueKey r)
 Return the atoms of a residue.
AtomList rlAtoms (ResidueList rl)
 Return the atoms of several residues.
AtomList Atoms ()
 Return all atoms.
ChainKey aChain (AtomKey a)
ChainList alChains (const AtomList &al)
 Return the parent chain of several atoms.
ResidueKey aResidue (AtomKey a)
ResidueList alResidues (const AtomList &al)
 Return the parent residues of several atoms.
BondList aBonds (AtomKey a)
 Return the bonds of an atom.
BondList alBonds (const AtomList &al)
 Return the bonds of several atoms.
AtomList aAdjAtoms (AtomKey a)
 Return the adjacent atoms of a.
BondList aaFormBond (AtomKey a1, AtomKey a2)
 Return the bond between a1 and a2.
AtomList abAdjAtom (AtomKey a1, BondKey b)
 Return the adjacent atom of a connected by b.
BondList Bonds ()
AtomList bAtoms (BondKey b)
AtomList blAtoms (const BondList &bl)
 Return the atoms of several bonds.
bool isRingBond (BondKey b)
 Return true if bond b is in a ring.
bool isXRingBond (BondKey b, unsigned int x)
 Return true if bond b is in a ring with x atoms.
bool isRingAtom (AtomKey a)
 Return true if atom a is in a ring.
bool isXRingAtom (AtomKey a, unsigned int x)
 Return true if atom a is in a ring with x atoms.
AtomList aExtendConnected (AtomKey a)
AtomList alExtendConnected (AtomList al)
unsigned int aHeavyCount (AtomKey a)
unsigned int aHCount (AtomKey a)
unsigned int aLPCount (AtomKey a)
 Return the number of lonepairs(explicit).
bool aPolar (AtomKey a)
 Return true if not all adjacent atoms C or H.
bool aMetall (AtomKey a)
 Return true if a is a metall atom.
void CorrectGraphByTopology (ChainList cl)
 Fix small problems in the graph, so that type perception works well.
ChainList ReadMOL2 (string file)
int GraphDistance (AtomKey a1, AtomKey a2)
AtomKey aAdjacentAtom (AtomKey a1, BondKey b)
 search for subgraphs matching query
ostream & operator<< (ostream &os, const Vec3_t &v)
 operator<< for Vec3_t
ostream & operator<< (ostream &os, const Quat_t &v)
 operator<< for Quat_t
void normalize (Quat_t &r)
 normalize Quat_t
ostream & operator<< (ostream &os, const RT &rt)
 operator << for class RT


Detailed Description

All functionality of the molecular graph is in namespace phoenix. There are Chains, Residues, Atoms and Bonds. Chains have Residues, Residues have Atoms and Atoms are connected by Bonds. Atoms and Bonds form a graph, while Chains, Residues and Atoms are organized in a tree structure. The objects itself are stored in hidden structures and manipulation is possible by functions. Access to the members of the objects is provided through pointer. They are called ChainKey, ResidueKey, AtomKey and BondKey.


Function Documentation

AtomList phoenix::alExtendConnected ( AtomList  al  ) 

Return all atoms which are connected to any atom in al.

ChainList phoenix::ReadMOL2 ( string  file  ) 

read a Tripos mol2 file

int phoenix::GraphDistance ( AtomKey  a1,
AtomKey  a2 
)

return the distance in bonds between atom a1 and a2

AtomKey phoenix::aAdjacentAtom ( AtomKey  a1,
BondKey  b 
)

search for subgraphs matching query

return the atom adjacent to a1, connected by b


Generated on Mon Nov 23 08:31:45 2009 for ParaDockS by  doxygen 1.5.8