MTK++ Latest version: 0.2.0

Public Types | Public Member Functions | Public Attributes | Protected Attributes
MTKpp::atom Class Reference

Container for atom info. More...

#include <mtkpp/src/Molecule/atom.h>

Collaboration diagram for MTKpp::atom:
Collaboration graph
[legend]

List of all members.

Public Types

typedef std::map< std::string,
double >::iterator 
PropertyMapIterator
 property map iterator
typedef std::map< std::string,
int >::iterator 
intPropertyMapIterator
 property map iterator

Public Member Functions

 atom (atom *pAt, submolecule *parent=0)
 copy Constructor
 atom (submolecule *parent=0)
 atom Constructor
virtual ~atom ()
 atom Destructor.
void setElement (element *ele)
 Set element of atom.
void setName (const std::string name)
 Set name of atom.
void setCoords (const double &x, const double &y, const double &z)
 Set coordinates of atom.
void setIndex (const int &n)
 Set index of atom.
void setColIndex (const int &n)
 Set collection index of atom.
void setFileID (const int &n)
 Set file id of atom.
void setAtomicNum (const int &n)
 Set atomic number of atom.
void setZcharge (const double &n)
 Set nuclear charge of atom.
void setFormalCharge (const int &n)
 Set formal charge of atom.
void setValence (const int &n)
 Set valene of atom.
void setHybridization (const int &i)
 Set hybridization of atom.
void setType (const int &n)
 Set type of atom.
void setMengType (const std::string &n)
 Set Meng type.
void setOccupancy (const double &o)
 Set occupancy.
void setTempFactor (const double &b)
 Set temperature factor.
void setHydrophilicity (const int &h)
 Set setHydrophilicity.
std::string getMengType ()
 Get Meng type.
void addProperty (const std::string &name, double value)
 Add atom property.
void addProperty (const std::string &name, int value)
 Add atom property.
elementgetElement ()
 Get element of atom.
std::string getElementSymbol ()
 Get element symbol of atom.
std::string getName ()
 Get name of atom.
vector3dgetCoords ()
 Get coordinates of atom.
int getIndex ()
 Get index of atom.
int getColIndex ()
 Get collection index of atom.
int getFileID ()
 Get file id of atom.
double getX ()
 Get x coordinate of atom.
double getY ()
 Get y coordinate of atom.
double getZ ()
 Get z coordinate of atom.
submoleculegetParent ()
 Get parent of atom.
int getAtomicNum ()
 Get atomic number of atom.
double getAtomicMass ()
 Get atomic number of atom.
double getZcharge ()
 Get nuclear charge of atom.
int getFormalCharge ()
 Get formal charge of atom.
int getValence ()
 Get valene of atom.
int getHybridization ()
 Get hybridization of atom.
int getType ()
 Get type of atom.
int numBondedOxygens ()
 Get number of bonded oxygen atoms.
double getProperty (const std::string &name)
 get atom property
std::map< std::string, double > getPropertyMap ()
 get atom properties
int getIntProperty (const std::string &name)
 get atom property
std::map< std::string, int > getIntPropertyMap ()
 get atom properties
bool hasProperty (const std::string &name)
 has atom a certain property
double getOccupancy ()
 Get occupancy.
double getTempFactor ()
 Get occupancy.
int getHydrophilicity ()
 Get setHydrophilicity.
void setStdAtom (stdAtom *a)
 Set standard atom.
stdAtomgetStdAtom ()
 Set standard atom.
void addBondedAtom (atom *a)
 Add bonded atom.
bool addBonded13Atom (atom *a)
 Add 1-3 bonded atom.
void addBonded14Atom (atom *a)
 Add 1-4 bonded atom.
std::vector< atom * > getBondedAtoms ()
 Get Bonded Atoms.
std::vector< atom * > getBondedHeavyAtoms ()
 Get Bonded Heavy Atoms.
int getNumBonds ()
 Get number of Bonds.
int getNum13Bonds ()
 Get number of 1-3 Bonds.
int getNum14Bonds ()
 Get number of 1-4 Bonds.
bool hasBondedAtom (atom *a)
 Check if a bond exist with anyother atom.
bool has13BondedAtom (atom *a)
 Check if a 1-3 bond exist with anyother atom.
std::vector< atom * > get13BondedAtoms ()
 Get 1-3 Bonded Atoms.
bool has14BondedAtom (atom *a)
 Check if a 1-4 bond exist with anyother atom.
std::vector< atom * > get14BondedAtoms ()
 Get 1-4 Bonded Atoms.

Public Attributes

std::map< std::string, double > itsPropertiesMap
 Atom properties map.
std::map< std::string, int > itsIntPropertiesMap
 Atom properties map.
std::vector< atom * > bondedAtoms
 Vector of bonded atoms.
std::vector< atom * > bonded13Atoms
 Vector of 1-3 bonded atoms.
std::vector< atom * > bonded14Atoms

Protected Attributes

submoleculepParent
 atoms' submolecule
elementpElement
 atoms' element
std::string itsElement
 element string
std::string itsName
 name
vector3dpCoords
 coordinates
int itsCollectionIndex
 collection index
int itsIndex
 index
int itsFileId
 file id
int itsAtomicNum
 atomic number
double itsZcharge
 nuclear charge
int itsFormalCharge
 formal charge
int itsValence
 valence
int itsHybridization
int itsType
std::string itsMengType
int itsHydrophilicity
double itsOccupancy
double itsTempFactor
stdAtompStdAtom
 standard atom pointer

Detailed Description

Container for atom info.

Author:
Martin Peters

Atom Type (Internal) Definitions

Atom Hybridization Definitions

Atom Hydrophilic Definitions


Member Typedef Documentation

typedef std::map<std::string, double>::iterator MTKpp::atom::PropertyMapIterator

property map iterator

typedef std::map<std::string, int>::iterator MTKpp::atom::intPropertyMapIterator

property map iterator


Constructor & Destructor Documentation

MTKpp::atom::atom ( atom pAt,
submolecule parent = 0 
)
MTKpp::atom::atom ( submolecule parent = 0)
MTKpp::atom::~atom ( ) [virtual]

atom Destructor.

References pCoords.


Member Function Documentation

void MTKpp::atom::setElement ( element ele)
void MTKpp::atom::setName ( const std::string  name)
void MTKpp::atom::setCoords ( const double &  x,
const double &  y,
const double &  z 
)
void MTKpp::atom::setIndex ( const int &  n)

Set index of atom.

Parameters:
nindex

References itsIndex.

Referenced by MTKpp::submolecule::addAtom().

void MTKpp::atom::setColIndex ( const int &  n)

Set collection index of atom.

Parameters:
nindex

References itsCollectionIndex.

Referenced by MTKpp::submolecule::addAtom().

void MTKpp::atom::setFileID ( const int &  n)
void MTKpp::atom::setAtomicNum ( const int &  n)

Set atomic number of atom.

Parameters:
natomic number

References itsAtomicNum.

void MTKpp::atom::setZcharge ( const double &  n)

Set nuclear charge of atom.

Parameters:
nnuclear charge

References itsZcharge.

void MTKpp::atom::setFormalCharge ( const int &  n)
void MTKpp::atom::setValence ( const int &  n)
void MTKpp::atom::setHybridization ( const int &  i)
void MTKpp::atom::setType ( const int &  n)
void MTKpp::atom::setMengType ( const std::string &  n)

Set Meng type.

Parameters:
nMeng atom type

References itsMengType.

Referenced by MTKpp::hybridize::runMeng().

void MTKpp::atom::setOccupancy ( const double &  o)

Set occupancy.

Parameters:
ooccupancy

References itsOccupancy.

Referenced by MTKpp::pdbParser::Read().

void MTKpp::atom::setTempFactor ( const double &  b)

Set temperature factor.

Parameters:
btemperature factor

References itsTempFactor.

Referenced by MTKpp::pdbParser::Read().

void MTKpp::atom::setHydrophilicity ( const int &  h)

Set setHydrophilicity.

Parameters:
hhydrophilicity

References itsHydrophilicity.

Referenced by MTKpp::hydrophobize::run().

std::string MTKpp::atom::getMengType ( )

Get Meng type.

Returns:
Meng atom type

References itsMengType.

Referenced by MTKpp::hybridize::runMeng().

void MTKpp::atom::addProperty ( const std::string &  name,
double  value 
)

Add atom property.

Parameters:
namename of property
valuevalue of property

References itsPropertiesMap.

Referenced by MTKpp::dcParser::readNMR().

void MTKpp::atom::addProperty ( const std::string &  name,
int  value 
)

Add atom property.

Parameters:
namename of property
valuevalue of property

References itsIntPropertiesMap.

element * MTKpp::atom::getElement ( )
std::string MTKpp::atom::getElementSymbol ( )
std::string MTKpp::atom::getName ( )
vector3d * MTKpp::atom::getCoords ( )
int MTKpp::atom::getIndex ( )

Get index of atom.

Returns:
atom index

References itsIndex.

Referenced by MTKpp::molecule::add13Bond(), MTKpp::molecule::add14Bond(), MTKpp::molecule::addAngle(), MTKpp::molecule::addBond(), MTKpp::molecule::addFunctionalGroup(), MTKpp::ligProtonate::addHydrogens(), MTKpp::molecule::addImproper(), MTKpp::metalCenter::addTorsion(), MTKpp::molecule::addTorsion(), MTKpp::connections::assignDisulfideBonds(), MTKpp::molecule::delAngle(), MTKpp::molecule::delBond(), MTKpp::molecule::delImproper(), MTKpp::molecule::delTorsion(), MTKpp::conformers::determineAtomList(), MTKpp::molecule::generateFeatureDistMatrix(), MTKpp::zmatParser::genZmatrix(), MTKpp::molecule::getAngle(), MTKpp::molecule::getAngles(), MTKpp::collection::getAtom(), MTKpp::submolecule::getAtom(), MTKpp::molecule::getAtom(), MTKpp::molecule::getBond(), MTKpp::molecule::getBonds(), MTKpp::ligProtonate::getHBDonorTorsions(), MTKpp::molecule::getImpropers(), MTKpp::collection::getMMImpropers(), MTKpp::molecule::getMMImpropers(), MTKpp::molecule::getMMTorsions(), MTKpp::rings::getPlaneNormal(), MTKpp::molecule::getTorsion(), MTKpp::molecule::getTorsions(), MTKpp::molecule::has13Bond(), MTKpp::molecule::has14Bond(), MTKpp::molecule::hasAngle(), MTKpp::molecule::hasBond(), MTKpp::molecule::hasImproper(), MTKpp::metalCenter::hasTorsion(), MTKpp::molecule::hasTorsion(), MTKpp::hydrophobize::run(), MTKpp::hybridize::runLabute(), MTKpp::complex::setCoreFragment(), MTKpp::molecule::setTorsion(), MTKpp::acParser::Write(), MTKpp::mol2Parser::Write(), and MTKpp::molParser::Write().

int MTKpp::atom::getColIndex ( )
int MTKpp::atom::getFileID ( )
double MTKpp::atom::getX ( )
double MTKpp::atom::getY ( )
double MTKpp::atom::getZ ( )
submolecule * MTKpp::atom::getParent ( )
int MTKpp::atom::getAtomicNum ( )
double MTKpp::atom::getAtomicMass ( )

Get atomic number of atom.

Returns:
atom atomic number

References MTKpp::element::mass, and pElement.

Referenced by MTKpp::submolecule::getMolecularWeight().

double MTKpp::atom::getZcharge ( )

Get nuclear charge of atom.

Returns:
atom nuclear charge

References itsZcharge.

int MTKpp::atom::getFormalCharge ( )

Get formal charge of atom.

Returns:
atom formal charge

References itsFormalCharge.

Referenced by MTKpp::molecule::determineValences(), MTKpp::molParser::Write(), and MTKpp::sdfParser::Write().

int MTKpp::atom::getValence ( )
int MTKpp::atom::getHybridization ( )
int MTKpp::atom::getType ( )
int MTKpp::atom::numBondedOxygens ( )

Get number of bonded oxygen atoms.

Returns:
number of bonded oxygen atoms

References bondedAtoms, and getElementSymbol().

Referenced by MTKpp::hybridize::runMeng().

double MTKpp::atom::getProperty ( const std::string &  name)

get atom property

Parameters:
namename of property
Returns:
value of property

References itsPropertiesMap.

std::map< std::string, double > MTKpp::atom::getPropertyMap ( )

get atom properties

Returns:
map of properties

References itsPropertiesMap.

int MTKpp::atom::getIntProperty ( const std::string &  name)

get atom property

Parameters:
namename of property
Returns:
value of property

References itsIntPropertiesMap.

std::map< std::string, int > MTKpp::atom::getIntPropertyMap ( )

get atom properties

Returns:
map of properties

References itsIntPropertiesMap.

bool MTKpp::atom::hasProperty ( const std::string &  name)

has atom a certain property

Parameters:
namename of property
Returns:
got it or not

References itsIntPropertiesMap, and itsPropertiesMap.

double MTKpp::atom::getOccupancy ( )

Get occupancy.

Returns:
occupancy

References itsOccupancy.

double MTKpp::atom::getTempFactor ( )

Get occupancy.

Returns:
occupancy

References itsTempFactor.

int MTKpp::atom::getHydrophilicity ( )

Get setHydrophilicity.

Returns:
hydrophilicity

References itsHydrophilicity.

Referenced by atom().

void MTKpp::atom::setStdAtom ( stdAtom a)
stdAtom * MTKpp::atom::getStdAtom ( )
void MTKpp::atom::addBondedAtom ( atom a)
bool MTKpp::atom::addBonded13Atom ( atom a)

Add 1-3 bonded atom.

Parameters:
a1-3 bonded atom

References bonded13Atoms.

Referenced by MTKpp::connections::assignAngles().

void MTKpp::atom::addBonded14Atom ( atom a)

Add 1-4 bonded atom.

Parameters:
a1-4 bonded atom

References bonded14Atoms.

Referenced by MTKpp::connections::assignTorsions().

std::vector< atom * > MTKpp::atom::getBondedAtoms ( )
std::vector< atom * > MTKpp::atom::getBondedHeavyAtoms ( )

Get Bonded Heavy Atoms.

Returns:
vector of bonded atom

References bondedAtoms, and getElementSymbol().

Referenced by MTKpp::hybridize::runMeng().

int MTKpp::atom::getNumBonds ( )

Get number of Bonds.

Returns:
number of bonded atom

References bondedAtoms.

Referenced by MTKpp::molecule::setInSolution().

int MTKpp::atom::getNum13Bonds ( )

Get number of 1-3 Bonds.

Returns:
number of bonded atom

References bonded13Atoms.

int MTKpp::atom::getNum14Bonds ( )

Get number of 1-4 Bonds.

Returns:
number of bonded atom

References bonded14Atoms.

bool MTKpp::atom::hasBondedAtom ( atom a)
bool MTKpp::atom::has13BondedAtom ( atom a)
std::vector< atom * > MTKpp::atom::get13BondedAtoms ( )

Get 1-3 Bonded Atoms.

Returns:
vector of bonded atom

References bonded13Atoms.

bool MTKpp::atom::has14BondedAtom ( atom a)
std::vector< atom * > MTKpp::atom::get14BondedAtoms ( )

Get 1-4 Bonded Atoms.

Returns:
vector of bonded atom

References bonded14Atoms.


Member Data Documentation

std::map<std::string, double> MTKpp::atom::itsPropertiesMap

Atom properties map.

Referenced by addProperty(), getProperty(), getPropertyMap(), and hasProperty().

std::map<std::string, int> MTKpp::atom::itsIntPropertiesMap

Atom properties map.

Referenced by addProperty(), getIntProperty(), getIntPropertyMap(), and hasProperty().

Vector of 1-3 bonded atoms.

Referenced by addBonded13Atom(), get13BondedAtoms(), getNum13Bonds(), and has13BondedAtom().

Vector of 1-4 bonded atoms

Referenced by addBonded14Atom(), get14BondedAtoms(), getNum14Bonds(), and has14BondedAtom().

atoms' submolecule

Referenced by getParent().

std::string MTKpp::atom::itsElement [protected]

element string

Referenced by atom().

std::string MTKpp::atom::itsName [protected]

name

Referenced by atom(), getName(), and setName().

coordinates

Referenced by atom(), getCoords(), getX(), getY(), getZ(), setCoords(), and ~atom().

collection index

Referenced by atom(), getColIndex(), and setColIndex().

int MTKpp::atom::itsIndex [protected]

index

Referenced by atom(), getIndex(), and setIndex().

int MTKpp::atom::itsFileId [protected]

file id

Referenced by atom(), getFileID(), and setFileID().

int MTKpp::atom::itsAtomicNum [protected]

atomic number

Referenced by atom(), and setAtomicNum().

double MTKpp::atom::itsZcharge [protected]

nuclear charge

Referenced by atom(), getZcharge(), and setZcharge().

formal charge

Referenced by atom(), getFormalCharge(), and setFormalCharge().

int MTKpp::atom::itsValence [protected]

valence

Referenced by atom(), getValence(), and setValence().

atom hybridization definitions

  • 0 = undefined
  • 1 = s
  • 2 = sp
  • 3 = sp2
  • 4 = sp3
  • 5 = sp3d
  • 6 = sp3d2
  • 7 = sp3d3
  • 8 = other

Referenced by atom(), getHybridization(), and setHybridization().

int MTKpp::atom::itsType [protected]

atom Type Definitions

  • 0 = Undefined
  • 1 = Hydrogen
  • 2 = Terminal Heavy Atom
  • 3 = Open Chain Heavy Atom
  • 4 = Closed Chain Heavy Atom
  • 5 = Ring Heavy Atom
  • 6 = Aromatic Ring Heavy Atom
  • 7 = Chain Atom (not terminal, Ring or Hydrogen)
  • 8 = Chain or terminal Atom

Referenced by atom(), getType(), and setType().

std::string MTKpp::atom::itsMengType [protected]

Referenced by getMengType(), and setMengType().

hydrophilic type Definitions

  • -1 Undefined
  • 0 Hydrophobic
  • 1 N,O
  • 2 S in SH
  • 3 S with double bond
  • 4 <= 1 bond away from charged atom
  • 5 <= 1 bond away from OH, NH, or NH2 with no delocalized electrons
  • 6 <= 1 bond away from SH with no delocalized electrons
  • 7 <= 1 bond away from O with double bond
  • 8 <= 1 bond away from S with valence > 2
  • 9 > one neighboring O or N with no delocalized electrons
    1. A two bond away from O with double bond
    2. B one bond away from S with valence > 2
  • 10 two or more instance of any of the previous two(A,B)

Referenced by atom(), getHydrophilicity(), and setHydrophilicity().

double MTKpp::atom::itsOccupancy [protected]

occupancy

Referenced by getOccupancy(), and setOccupancy().

double MTKpp::atom::itsTempFactor [protected]

hydrophilic type Definitions

Referenced by getTempFactor(), and setTempFactor().

standard atom pointer

Referenced by atom(), getStdAtom(), and setStdAtom().


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

Generated on Fri Dec 23 2011 09:28:56 for MTK++ by Doxygen 1.7.5.1