MTK++ Latest version: 0.2.0

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

Container for submolecules, bonds, angles, torsions, and impropers. More...

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

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

List of all members.

Public Member Functions

 molecule (collection *parent=0)
 Molecule Constructor.
virtual ~molecule ()
 Molecule Destructor.
collectiongetParent ()
 Get collection which molecule is apart of.
void setName (const std::string &name)
 Set name of molecule.
std::string getName ()
 Get name of molecule.
void setChain (const std::string &chain)
 Set chain of molecule.
std::string getChain ()
 Get chain of molecule.
void setKind (const int &n)
 Set kind of molecule.
int getKind ()
 Get kind of molecule.
void setMolId (const int &id)
 Set id of molecule.
int getMolId ()
 Get id of molecule.
void setNumAtoms (const int &natoms)
 Set number of atoms in molecule.
int getNumAtoms ()
 Get number of atoms in molecule.
int getNumHeavyAtoms ()
 Get number of atoms in molecule.
void setNumBonds (const int &nbonds)
 Set number of bonds in molecule.
int getNumBonds ()
 Get number of bonds in molecule.
void setAtomIndex (const int &n)
 Set atom index.
int getAtomIndex ()
 Get atom index.
void setMaxFileID (const int &n)
 Set maximum file id.
int getMaxFileID ()
 Get maximum file id.
int getNumElectrons ()
 Get number of electrons in molecule.
void moveCenterOfMass (vector3d *center)
 Move the center of mass.
void centerOfMass (vector3d *center)
 Calculate the center of mass.
void centerOfMass (double center[3])
 Calculate the center of mass.
void setCoordinates (std::vector< vector3d > &coords)
 Set atomic coordinates.
void getCoordinates (double coords[][3])
 Get all atomic coordinates.
int getCoordinates (double coords[])
 Get all atomic coordinates.
void getCoordinates (std::vector< vector3d > &coords)
 Get vector of atomic coordinates.
int * getHeavyAtomIndices ()
 Get heavy atom indices.
char * getAtomSymbols ()
 Get all atomic symbols.
void getRes1LSymbols (char codes1L[])
 Get residue 1-Letter Symbols.
void getRes3LSymbols (char codes3L[])
 Get residue 3-Letter Symbols.
char * getHeavyAtomSymbols ()
 Get all atomic symbols.
char * getAtomTypes ()
 Get all atom types.
char * getHeavyAtomTypes ()
 Get heavy atom types.
int * getAtomKinds ()
 Get atom kinds.
void getAtomCharges (double charges[])
 Get all atomic charges.
int getFormalCharge ()
 Get total formal charge.
double getStdCharge ()
 Get total charge from stdFragments.
void setTotalCharge (int c)
 Set Total charge.
int getTotalCharge ()
 Get Total charge.
double getMolecularWeight ()
 Get Molecular Weight.
virtual submoleculeaddSubMolecule ()
 Add submolecule to molecule.
submoleculegetSubMolecule (int id)
 Get submolecule from list of submolecules based on id.
submoleculegetSubMolecule (int id, bool smolIndex, bool fileId)
 Get submolecule from list of submolecules based on id.
submoleculegetSubMolecule (std::string name)
 Get submolecule from list of submolecules based on name.
virtual std::vector
< submolecule * > 
getSubMoleculeList ()
 Get list of submolecules.
std::vector< submolecule * > getSubMoleculeList (std::string name)
 Get list of submolecules by name.
std::vector< submolecule * > getSubMoleculeList (std::string name, int resId)
 Get list of submolecules by name and num.
std::vector< submolecule * > getSubMoleculeList (int resId)
 Get list of submolecules by name.
int getNumSubMolecules ()
 Get number of submolecules.
std::vector< atom * > getAtomList ()
 Get list of atoms.
std::vector< atom * > getHeavyAtomList ()
 Get list of atoms.
atomgetAtom (int number, bool atomIndex=true, bool fileId=false, bool atomColIndex=false)
 Get atom.
atomgetAtom (stdAtom *pStdAtom)
 Get atom.
atomgetAtom (std::string name)
 Get atom.
void delAtom (atom *a)
 Delete atom.
virtual BondaddBond (atom *at1, atom *at2, const int &type=0, const int &stereo=0, const int &topology=0, const double &size=0.0)
 Add Bond to molecule.
BondgetBond (atom *at1, atom *at2)
 Get Bond.
int getBonds (int bonds[])
 Get bond list.
int getBondParams (double bondParams[])
 Get bond parameters.
bool hasBond (atom *at1, atom *at2)
 Does molecule contain a certain bond.
int numBonds ()
 Get number of bonds.
void delBond (atom *at1, atom *at2)
 Deletes bond from the molecules' list of bonds.
void add13Bond (atom *at1, atom *at2)
 Add 1-3 Bond to molecule.
bool has13Bond (atom *at1, atom *at2)
 Does molecule contain a certain 13 bond.
void add14Bond (atom *at1, atom *at2)
 Add 1-4 Bond to molecule.
bool has14Bond (atom *at1, atom *at2)
 Does molecule contain a certain 14 bond.
std::map< int, Bond * > getBondMap ()
 Get Bond map.
AngleaddAngle (atom *at1, atom *at2, atom *at3, const double &ang)
 Add Angle to molecule.
bool hasAngle (atom *at1, atom *at2, atom *at3)
 Does molecule contain a certain angle.
AnglegetAngle (atom *at1, atom *at2, atom *at3)
 Get angle.
void delAngle (atom *at1, atom *at2, atom *at3)
 Deletes angle from the molecules' list of angles.
std::map< ULONG_KIND, Angle * > getAngleMap ()
 Get Angle map.
int numAngles ()
 Get number of angles.
int getAngles (int angles[])
 Get angle list.
int getAngleParams (double angleParams[])
 Get angle parameter list.
TorsionaddTorsion (atom *at1, atom *at2, atom *at3, atom *at4, const double &tor)
 Add Torsion to molecule.
void delTorsion (atom *at1, atom *at2, atom *at3, atom *at4)
 Deletes torsion from the molecules' list of torsions.
bool hasTorsion (atom *at1, atom *at2, atom *at3, atom *at4)
 Does molecule contain a certain torsion.
TorsiongetTorsion (atom *at1, atom *at2, atom *at3, atom *at4)
 Get torsion.
void setTorsion (atom *at1, atom *at2, atom *at3, atom *at4, double t)
 Get torsion.
std::map< ULONG_KIND, Torsion * > getTorsionMap ()
 Get Torsion map.
int numTorsions ()
 Get number of torsions.
int getTorsions (int torsions[])
 Get torsion list.
int getNumMMTorsions ()
 Get number of torsion parameters.
int getMMTorsions (int torsions[], double torsionParams[])
 Get torsion parameters.
ImproperaddImproper (atom *at1, atom *at2, atom *at3, atom *at4, const double &imp)
 Add Improper to molecule.
void delImproper (atom *at1, atom *at2, atom *at3, atom *at4)
 Deletes improper from the molecules' list of impropers.
bool hasImproper (atom *at1, atom *at2, atom *at3, atom *at4)
 Does molecule contain a certain improper.
std::map< int, Improper * > getImproperMap ()
 Get Improper map.
int numImpropers ()
 Get number of impropers.
int getImpropers (int impropers[])
 Get improper list.
int getNumMMImpropers ()
 Get number of improper parameters.
int getMMImpropers (int impropers[], double improperParams[])
 Get impropers and parameters.
int getNumMMnonBondedPairs (double cutoff)
 Get number of MM non bonded pairs.
int getMMnonBondedPairs (int nonBonded[], int nonBondedPtrs[], double nonBondedParams[], int nonBonded14Ptrs[], double cutoff)
 Get MM non bonded pairs.
int getMMCharges (double charges[])
 Get charges list.
int getMMResidues (int residues[])
 Get residue list.
void determineRings ()
 Determine rings.
void kekulizeRings ()
 Determines if rings is aromatic or not.
std::string getRingInfo ()
 Determines if rings is aromatic or not.
void addRing (std::vector< atom * > r)
 Add a new ring.
std::vector< ring * > getRings ()
 Get rings.
ringgetLastAddedRing ()
 Get last added ring.
std::vector< Bond * > getRotatableBonds ()
 Get rotatable bonds.
void setRotatableTorsions (std::vector< Torsion * > tors)
 Get rotatable dihedrals.
std::vector< Torsion * > getRotatableTorsions ()
 Get rotatable dihedrals.
std::vector< Torsion * > setupConformers ()
 Set up conformers.
std::vector< Torsion * > setupConformers (std::vector< atom * > frozenAtoms)
 Set up conformers.
std::vector< Torsion * > setupConformers (std::vector< Bond * > rotBonds)
 Set up conformers.
std::vector< Torsion * > setupConformers (std::vector< Torsion * > rotTorsions)
 Set up conformers.
void addConformer (std::string name, std::vector< double > t)
 Add conformer to the list of conformers.
void updateConformer (std::string name, std::vector< double > t)
 Updates the conformers torsional angles.
void delConformer (std::string name)
 Delete conformer from the list of conformers.
conformergetConformer (std::string name)
 Get conformer based on its name.
conformersgetConformers ()
 Get conformers pointer.
std::vector< std::string > getConformerNames ()
 Get conformer names.
void generateSimpleFP ()
 generate simple fingerprint
std::vector< unsigned int > getSimpleFP ()
 get simple fingerprint
std::string getFragmentFP ()
 Get fragment fingerprint.
int determineHydrophobicGroups ()
 Determine hydrophobic groups in the molecule.
int addHydrophobicGroup (std::vector< atom * > ats)
 Add hydrophobic groups to the molecule.
std::vector< hydrophobe * > getHydrophobicGroups ()
 Get hydrophobic groups.
int determineFunctionalGroups (stdLibrary *pStdLib)
 Determine functional groups in the molecule.
void addFunctionalGroup (funcGroup *fg)
 Add functional group to the molecule.
void addFunctionalGroup (int fragAtoms, stdFrag *pStdFrag, int molAtoms, std::vector< int > subGraph)
 Add functional group to the molecule.
void delFunctionalGroup (funcGroup *fG, int i)
 Delete functional group from the molecule.
std::vector< funcGroup * > getFunctionalGroups ()
 Get functional groups.
funcGroupgetFunctionalGroup (atom *pAt)
 Get functional group to which the atom is apart of.
int generateAdjMatrix ()
 Determine adjacency matrix.
int generateHeavyAdjMatrix ()
 Determine heavy atom adjacency matrix.
int * getAdjMatrix ()
 Get adjacency matrix.
int * getHeavyAdjMatrix ()
 Get heavy atom adjacency matrix.
int getAdjMatrixSize ()
 Get adjacency matrix Size.
int getHeavyAdjMatrixSize ()
 Get heavy adjacency matrix Size.
int generateFeatureDistMatrix ()
 Determine molecular feature distance matrix.
int generateFeatureDistMatrix (std::vector< vector3d > coords)
 Determine molecular feature distance matrix.
double * getFeatureDistMatrix ()
 Determine molecular feature distance matrix.
std::vector< std::string > getFeatureGroups ()
 Get feature groups.
std::vector< std::string > getFeatureLabels ()
 Get feature labels.
std::vector< vector3dgetFeatureCoordinates ()
 Get feature coordinates.
int findPharmacophore (molecule *pMol, std::vector< std::vector< unsigned int > > &mcp, std::vector< vector3d > &mcpCoords, double distMax=0.5)
 Determine the Maximum Common Pharmacophore (MCP) between two molecules.
int findPharmacophore (molecule *pMol, std::vector< clique * > &cliqueList, double distMax=0.5)
 Determine all Pharmacophores between two molecules.
void addProperty (const std::string &name, const std::string &value)
 Add molecular property.
std::string getProperty (const std::string &name)
 Get molecular property.
void delProperty (const std::string &name)
 Delete molecular property.
std::map< std::string,
std::string > 
getProperties ()
 get molecular properties
bool hasProperty (const std::string &name)
 has molecule a certain property
void setInSolution ()
void addHydrogens ()
 Add hydrogens.
void removeHydrogens ()
 Remove Hydrogens.
void determineValences ()
 Determine atom valences.
void determineHybridizations (int method, const std::string f)
 Determine atom hybridizations.

Public Attributes

std::string inFileType
 Input file type, mol, mol2, pdb, etc.
bool bBondsAssigned
 Are the bonds assigned?
bool bDisulfideBondsAssigned
 Are the disulfide bonds assigned?
bool bAnglesAssigned
 Are the angles assigned?
bool bTorsionsAssigned
 Are the torsions assigned?
bool bImpropersAssigned
 Are the impropers assigned?
bool bBondTypes1Assigned
 Are the bond types: Single, double, triple, assigned?
bool bBondTypes2Assigned
 Are the Aromatic bonds assigned?
bool bMMAtomTypesAssigned
 Are the MM atom types assigned.
bool bAtomValencesAssigned
 Are the atomic valences assigned?
bool bAtomHybridizationsAssigned
 Are the atomic hybridizations assigned?
bool bRingsAssigned
 Were the rings assigned?
bool bRingsKekulized
 Were the rings kekulized?
bool bInSolution
 Is the molecule considered in solution?
bool bHydrogensAdded
 Were hydrogens added?
bool bError
 Error Flag.

Protected Types

typedef std::vector
< torsionParam * >::iterator 
torsionParamIterator
 Torsion parameter iterator.
typedef std::vector
< improperParam * >::iterator 
improperParamIterator
 Improper parameter iterator.
typedef std::vector
< submolecule * >::iterator 
sMolIterator
 submolecule iterator
typedef std::vector< atom * >
::iterator 
AtomIterator
 atom iterator
typedef std::vector< Bond * >
::iterator 
BondIterator
 Bond iterator.
typedef std::vector< conformer * >
::iterator 
ConformerIterator
 conformer iterator
typedef std::vector< ring * >
::iterator 
RingIterator
 ring iterator
typedef std::vector< funcGroup * >
::iterator 
FuncGroupIterator
 funcGroup iterator
typedef std::vector
< hydrophobe * >::iterator 
HydrophobeIterator
 hydrophobe iterator
typedef std::map< int, Bond * >
::iterator 
BondMapIterator
 Bond map iterator.
typedef std::map< ULONG_KIND,
Angle * >::iterator 
AngleMapIterator
 Angle map iterator.
typedef std::map< ULONG_KIND,
Torsion * >::iterator 
TorsionMapIterator
 Torsion map iterator.
typedef std::map< int,
Improper * >::iterator 
ImproperMapIterator
 Improper map iterator.
typedef std::map< std::string,
std::string >::iterator 
PropertyMapIterator
 property map iterator

Protected Attributes

std::string itsName
 molecule name
std::string itsChain
 molecule chain
int itsKind
int itsMolId
 molecule id
int itsNumAtoms
 number of atoms
int itsNumBonds
 number of bonds
int itsSMolIndex
 submolecule index
int itsAtomIndex
 atom index
int itsMaxFileID
 maximum atom file id
int totalCharge
 Total Charge.
vector3dpCenterMass
 center of mass
collectionpParent
 molecules' collection
submoleculepSubMolecule
 submolecule pointer
atompAtom
 atom pointer
BondpBond
 Bond pointer.
parameterspParameters
 parameters pointer
bondParampBondParam
 Bond parameter pointer.
angleParampAngleParam
 Angle parameter pointer.
torsionParampTorsionParam
 Torsion parameter pointer.
hBondParampHBondParam
 H Bond Param.
LJ612Param * pLJ612Param
 LJ 6-12 Param.
LJ612SEpLJ612SE
 LJ 6-12 Sigma and Epsilon.
std::vector< torsionParam * > torsionParamList
 Torsion parameter list.
std::vector< improperParam * > improperParamList
 Improper parameter list.
improperParampImproperParam
 Improper parameter pointer.
AnglepAngle
 Angle pointer.
TorsionpTorsion
 Torsion pointer.
ImproperpImproper
 Improper pointer.
ringspRings
 rings pointer
ringpRing
 ring pointer
conformerspConformers
 conformers pointer
conformerpConformer
 conformer pointer
protonatepProtonate
 protonate pointer
fingerPrintpFingerPrint
 fingerPrint pointer
functionalizepFunctionalize
 functionalize pointer
hydrophobizepHydrophobize
 hydrophobize pointer
hydrophobepHydrophobe
 hydrophobe pointer
pharmacophorepPharmacophore
 pharmacophore pointer
std::vector< submolecule * > itsSubMoleculeList
 submolecule vector
std::vector< atom * > itsAtomList
 atom vector
std::vector< atom * > itsHeavyAtomList
 heavy atom vector
std::vector< int > itsBond13List
 13 Bond vector
std::vector< int > itsBond14List
 14 Bond vector
std::vector< Bond * > itsRotatableBonds
 rotatable bonds
std::vector< Torsion * > itsRotatableTorsions
 rotatable torsions
std::vector< ring * > itsRings
 Ring vector.
std::vector< funcGroup * > itsFuncGroups
 funcGroup list
std::vector< hydrophobe * > itsHydrophobes
 hydrophobe list
std::vector< conformer * > itsConformers
 Conformer vector.
std::vector< unsigned int > itsSimpleFP
 Simple fingerprint.
std::string itsFragmentFP
 Fragment fingerprint.
int * heavyAtomIndices
 1D fingerprint
int * adjMatrix
 Adjacency Matrix.
int * heavyAdjMatrix
 Heavy Atom Adjacency Matrix.
int adjMatrixSize
 Adjacency Matrix Size.
int heavyAdjMatrixSize
 Heavy Adjacency Matrix Size.
double * featureDistMatrix
 Feature Distance Matrix.
int featureDistMatrixSize
 Adjacency Matrix Size.
std::vector< std::string > featureGroups
 Feature Groups.
std::vector< std::string > featureLabels
 Feature Labels.
std::vector< vector3dfeatureCoordinates
 Feature coordinates.
char * atomSymbols
 Atom symbols.
char * heavyAtomSymbols
 Atom symbols.
char * atomTypes
 Atom types.
char * heavyAtomTypes
 Heavy atom types.
int * atomKinds
 Atom kinds.
std::map< int, Bond * > itsBondMap
 Bond map.
std::map< ULONG_KIND, Angle * > itsAngleMap
 Angle map.
std::map< ULONG_KIND, Torsion * > itsTorsionMap
 Torsion map.
std::map< int, Improper * > itsImproperMap
 Improper map.
std::map< std::string,
std::string > 
itsPropertiesMap
 Molecule properties map.

Detailed Description

Container for submolecules, bonds, angles, torsions, and impropers.


Member Typedef Documentation

typedef std::vector<torsionParam*>::iterator MTKpp::molecule::torsionParamIterator [protected]

Torsion parameter iterator.

typedef std::vector<improperParam*>::iterator MTKpp::molecule::improperParamIterator [protected]

Improper parameter iterator.

typedef std::vector<submolecule*>::iterator MTKpp::molecule::sMolIterator [protected]

submolecule iterator

typedef std::vector<atom*>::iterator MTKpp::molecule::AtomIterator [protected]

atom iterator

typedef std::vector<Bond*>::iterator MTKpp::molecule::BondIterator [protected]

Bond iterator.

typedef std::vector<conformer*>::iterator MTKpp::molecule::ConformerIterator [protected]

conformer iterator

typedef std::vector<ring*>::iterator MTKpp::molecule::RingIterator [protected]

ring iterator

typedef std::vector<funcGroup*>::iterator MTKpp::molecule::FuncGroupIterator [protected]

funcGroup iterator

typedef std::vector<hydrophobe*>::iterator MTKpp::molecule::HydrophobeIterator [protected]

hydrophobe iterator

typedef std::map<int, Bond*>::iterator MTKpp::molecule::BondMapIterator [protected]

Bond map iterator.

typedef std::map<ULONG_KIND, Angle*>::iterator MTKpp::molecule::AngleMapIterator [protected]

Angle map iterator.

typedef std::map<ULONG_KIND, Torsion*>::iterator MTKpp::molecule::TorsionMapIterator [protected]

Torsion map iterator.

typedef std::map<int, Improper*>::iterator MTKpp::molecule::ImproperMapIterator [protected]

Improper map iterator.

typedef std::map<std::string, std::string>::iterator MTKpp::molecule::PropertyMapIterator [protected]

property map iterator


Constructor & Destructor Documentation

MTKpp::molecule::molecule ( collection parent = 0)
MTKpp::molecule::~molecule ( ) [virtual]

Member Function Documentation

collection * MTKpp::molecule::getParent ( )
void MTKpp::molecule::setName ( const std::string &  name)
std::string MTKpp::molecule::getName ( )
void MTKpp::molecule::setChain ( const std::string &  chain)

Set chain of molecule.

Parameters:
chainmolecule chain

References itsChain.

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

std::string MTKpp::molecule::getChain ( )

Get chain of molecule.

Returns:
chain molecule chain

References itsChain.

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

void MTKpp::molecule::setKind ( const int &  n)

Set kind of molecule.

Parameters:
nmolecule kind

References itsKind.

Referenced by MTKpp::mol2Parser::Read(), MTKpp::molParser::Read(), and MTKpp::pdbParser::Read().

int MTKpp::molecule::getKind ( )

Get kind of molecule.

Returns:
molecule kind

References itsKind.

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

void MTKpp::molecule::setMolId ( const int &  id)
int MTKpp::molecule::getMolId ( )
void MTKpp::molecule::setNumAtoms ( const int &  natoms)

Set number of atoms in molecule.

Parameters:
natomsnumber of atoms

References itsNumAtoms.

int MTKpp::molecule::getNumAtoms ( )
int MTKpp::molecule::getNumHeavyAtoms ( )
void MTKpp::molecule::setNumBonds ( const int &  nbonds)

Set number of bonds in molecule.

Parameters:
nbondsnumber of bonds

References itsNumBonds.

int MTKpp::molecule::getNumBonds ( )

Get number of bonds in molecule.

Returns:
number of bonds in molecule

References itsBondMap.

Referenced by MTKpp::connections::assignBonds(), MTKpp::collection::assignMetalParameters(), and MTKpp::sdfParser::Write().

void MTKpp::molecule::setAtomIndex ( const int &  n)

Set atom index.

Parameters:
natom index

References itsAtomIndex.

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

int MTKpp::molecule::getAtomIndex ( )

Get atom index.

Returns:
atom index

References itsAtomIndex.

Referenced by MTKpp::submolecule::addAtom(), and main().

void MTKpp::molecule::setMaxFileID ( const int &  n)
int MTKpp::molecule::getMaxFileID ( )
int MTKpp::molecule::getNumElectrons ( )

Get number of electrons in molecule.

Returns:
number of electrons in molecule

References MTKpp::submolecule::getAtomList(), MTKpp::atom::getElement(), itsSubMoleculeList, MTKpp::element::number, pAtom, and pSubMolecule.

void MTKpp::molecule::moveCenterOfMass ( vector3d center)

Move the center of mass.

Parameters:
centerNew center of mass

References getAtomList(), MTKpp::atom::getCoords(), MTKpp::vector3d::getX(), MTKpp::vector3d::getY(), MTKpp::vector3d::getZ(), pAtom, and MTKpp::atom::setCoords().

Referenced by main().

void MTKpp::molecule::centerOfMass ( vector3d center)

Calculate the center of mass.

Parameters:
centerCenter of mass

References getAtomList(), MTKpp::atom::getCoords(), and pAtom.

void MTKpp::molecule::centerOfMass ( double  center[3])

Calculate the center of mass.

Parameters:
centerCenter of mass

References getAtomList(), MTKpp::atom::getCoords(), and pAtom.

void MTKpp::molecule::setCoordinates ( std::vector< vector3d > &  coords)

Set atomic coordinates.

Parameters:
coordsvector of vector3d's

References getAtomList(), pAtom, and MTKpp::atom::setCoords().

void MTKpp::molecule::getCoordinates ( double  coords[][3])
int MTKpp::molecule::getCoordinates ( double  coords[])

Get all atomic coordinates.

Parameters:
coordsarray of coordinates [x1, y1, z1, x2, y2, z2, ..., xN, yN, zN]

References MTKpp::errorLogger, MTKpp::submolecule::getAtomList(), itsSubMoleculeList, MTKpp::MTK_ERROR, pSubMolecule, and MTKpp::errorHandler::throwError().

void MTKpp::molecule::getCoordinates ( std::vector< vector3d > &  coords)

Get vector of atomic coordinates.

Parameters:
coordsvector of vector3d's

References MTKpp::submolecule::getAtomList(), itsSubMoleculeList, and pSubMolecule.

int * MTKpp::molecule::getHeavyAtomIndices ( )
char * MTKpp::molecule::getAtomSymbols ( )
void MTKpp::molecule::getRes1LSymbols ( char  codes1L[])

Get residue 1-Letter Symbols.

Parameters:
codes1Lchar array of 1-L symbols

References MTKpp::submolecule::get1LName(), itsSubMoleculeList, and pSubMolecule.

Referenced by MTKpp::seqAlign::setQuery(), and MTKpp::seqAlign::setTemplate().

void MTKpp::molecule::getRes3LSymbols ( char  codes3L[])

Get residue 3-Letter Symbols.

Parameters:
codes3Lchar array of 3-L symbols

References MTKpp::submolecule::getName(), itsSubMoleculeList, and pSubMolecule.

char * MTKpp::molecule::getHeavyAtomSymbols ( )
char * MTKpp::molecule::getAtomTypes ( )
char * MTKpp::molecule::getHeavyAtomTypes ( )
int * MTKpp::molecule::getAtomKinds ( )
void MTKpp::molecule::getAtomCharges ( double  charges[])

Get all atomic charges.

Parameters:
chargesdouble array of charges

References MTKpp::submolecule::getAtomList(), itsSubMoleculeList, and pSubMolecule.

int MTKpp::molecule::getFormalCharge ( )
double MTKpp::molecule::getStdCharge ( )

Get total charge from stdFragments.

Returns:
total charge

References MTKpp::stdFrag::getCharge(), MTKpp::submolecule::getStdFrag(), MTKpp::submolecule::hasStdFrag(), itsSubMoleculeList, and pSubMolecule.

void MTKpp::molecule::setTotalCharge ( int  c)

Set Total charge.

Parameters:
cmolecule charge

References totalCharge.

Referenced by MTKpp::DivConInterface::Minimize(), MTKpp::sdfParser::Read(), and MTKpp::dcParser::Read().

int MTKpp::molecule::getTotalCharge ( )

Get Total charge.

Returns:
molecule charge

References totalCharge.

Referenced by getFormalCharge().

double MTKpp::molecule::getMolecularWeight ( )

Get Molecular Weight.

Returns:
molecular weight

References MTKpp::submolecule::getMolecularWeight(), itsSubMoleculeList, and pSubMolecule.

submolecule * MTKpp::molecule::addSubMolecule ( ) [virtual]
submolecule * MTKpp::molecule::getSubMolecule ( int  id)

Get submolecule from list of submolecules based on id.

Parameters:
idsubmolecule id
Returns:
submolecule pointer
See also:
getSubMoleculeList()

References MTKpp::submolecule::getSubMolId(), itsSubMoleculeList, and pSubMolecule.

Referenced by main(), and MTKpp::selection::parse().

submolecule * MTKpp::molecule::getSubMolecule ( int  id,
bool  smolIndex,
bool  fileId 
)

Get submolecule from list of submolecules based on id.

Parameters:
idsubmolecule id
smolIndexreturn submolecule based on index (default)
fileIdreturn submolecule based on file id
Returns:
submolecule pointer

References MTKpp::submolecule::getIndex(), MTKpp::submolecule::getSubMolId(), itsSubMoleculeList, and pSubMolecule.

submolecule * MTKpp::molecule::getSubMolecule ( std::string  name)

Get submolecule from list of submolecules based on name.

Parameters:
namesubmolecule name
Returns:
submolecule pointer

References MTKpp::submolecule::getName(), itsSubMoleculeList, and pSubMolecule.

std::vector< submolecule * > MTKpp::molecule::getSubMoleculeList ( ) [virtual]
std::vector< submolecule * > MTKpp::molecule::getSubMoleculeList ( std::string  name)

Get list of submolecules by name.

Parameters:
namesubmolecule name
Returns:
vector of submolecule pointers

References MTKpp::submolecule::getName(), itsSubMoleculeList, and pSubMolecule.

std::vector< submolecule * > MTKpp::molecule::getSubMoleculeList ( std::string  name,
int  resId 
)

Get list of submolecules by name and num.

Parameters:
namesubmolecule name
resIdsubmolecule number
Returns:
vector of submolecule pointers

References MTKpp::submolecule::getName(), MTKpp::submolecule::getSubMolId(), itsSubMoleculeList, and pSubMolecule.

std::vector< submolecule * > MTKpp::molecule::getSubMoleculeList ( int  resId)

Get list of submolecules by name.

Returns:
vector of submolecule pointers

References MTKpp::submolecule::getSubMolId(), itsSubMoleculeList, and pSubMolecule.

int MTKpp::molecule::getNumSubMolecules ( )
std::vector< atom * > MTKpp::molecule::getAtomList ( )
std::vector< atom * > MTKpp::molecule::getHeavyAtomList ( )
atom * MTKpp::molecule::getAtom ( int  number,
bool  atomIndex = true,
bool  fileId = false,
bool  atomColIndex = false 
)
atom * MTKpp::molecule::getAtom ( stdAtom pStdAtom)

Get atom.

Parameters:
pStdAtomstandard atom pointer
Returns:
atom pointer

References MTKpp::submolecule::getAtomList(), MTKpp::atom::getStdAtom(), itsSubMoleculeList, pAtom, and pSubMolecule.

atom * MTKpp::molecule::getAtom ( std::string  name)

Get atom.

Parameters:
nameatom name
Returns:
atom pointer

References MTKpp::submolecule::getAtomList(), MTKpp::atom::getName(), itsSubMoleculeList, pAtom, and pSubMolecule.

void MTKpp::molecule::delAtom ( atom a)
Bond * MTKpp::molecule::addBond ( atom at1,
atom at2,
const int &  type = 0,
const int &  stereo = 0,
const int &  topology = 0,
const double &  size = 0.0 
) [virtual]
Bond * MTKpp::molecule::getBond ( atom at1,
atom at2 
)
int MTKpp::molecule::getBonds ( int  bonds[])
int MTKpp::molecule::getBondParams ( double  bondParams[])
bool MTKpp::molecule::hasBond ( atom at1,
atom at2 
)
int MTKpp::molecule::numBonds ( )

Get number of bonds.

Returns:
number of bonds

References itsBondMap.

Referenced by MTKpp::collection::assignMetalParameters(), and MTKpp::collection::getNumBonds().

void MTKpp::molecule::delBond ( atom at1,
atom at2 
)

Deletes bond from the molecules' list of bonds.

Parameters:
at1atom pointer
at2atom pointer

References MTKpp::atom::getIndex(), MTKpp::indexAB(), itsBondMap, and MTKpp::MAXATOMS.

void MTKpp::molecule::add13Bond ( atom at1,
atom at2 
)

Add 1-3 Bond to molecule.

Parameters:
at1atom pointer
at2atom pointer

References MTKpp::atom::getIndex(), MTKpp::indexAB(), itsBond13List, and MTKpp::MAXATOMS.

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

bool MTKpp::molecule::has13Bond ( atom at1,
atom at2 
)

Does molecule contain a certain 13 bond.

Parameters:
at1atom pointer
at2atom pointer
Returns:
boolean

References MTKpp::atom::getIndex(), MTKpp::indexAB(), itsBond13List, and MTKpp::MAXATOMS.

void MTKpp::molecule::add14Bond ( atom at1,
atom at2 
)

Add 1-4 Bond to molecule.

Parameters:
at1atom pointer
at2atom pointer

References MTKpp::atom::getIndex(), MTKpp::indexAB(), itsBond14List, and MTKpp::MAXATOMS.

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

bool MTKpp::molecule::has14Bond ( atom at1,
atom at2 
)

Does molecule contain a certain 14 bond.

Parameters:
at1atom pointer
at2atom pointer
Returns:
boolean

References MTKpp::atom::getIndex(), MTKpp::indexAB(), itsBond14List, and MTKpp::MAXATOMS.

std::map< int, Bond * > MTKpp::molecule::getBondMap ( )
Angle * MTKpp::molecule::addAngle ( atom at1,
atom at2,
atom at3,
const double &  ang 
)

Add Angle to molecule.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer
angAngle between at1, at2, and at3
Returns:
Angle pointer

References MTKpp::Angle::atom1, MTKpp::Angle::atom2, MTKpp::Angle::atom3, MTKpp::atom::getIndex(), MTKpp::indexABC_ULL(), itsAngleMap, MTKpp::MAXATOMS, MTKpp::MTKException::message, pAngle, MTKpp::Angle::size, and ULONG_KIND.

Referenced by MTKpp::connections::assignAngles(), and MTKpp::zmatParser::Read().

bool MTKpp::molecule::hasAngle ( atom at1,
atom at2,
atom at3 
)

Does molecule contain a certain angle.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer
Returns:
boolean

References MTKpp::atom::getIndex(), MTKpp::indexABC_ULL(), itsAngleMap, MTKpp::MAXATOMS, MTKpp::MTKException::message, and ULONG_KIND.

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

Angle * MTKpp::molecule::getAngle ( atom at1,
atom at2,
atom at3 
)

Get angle.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer
Returns:
Angle pointer

References MTKpp::atom::getIndex(), MTKpp::indexABC_ULL(), itsAngleMap, MTKpp::MAXATOMS, MTKpp::MTKException::message, and ULONG_KIND.

Referenced by MTKpp::zmatParser::genZmatrix().

void MTKpp::molecule::delAngle ( atom at1,
atom at2,
atom at3 
)

Deletes angle from the molecules' list of angles.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer

References MTKpp::atom::getIndex(), MTKpp::indexABC_ULL(), itsAngleMap, MTKpp::MAXATOMS, MTKpp::MTKException::message, and ULONG_KIND.

std::map< ULONG_KIND, Angle * > MTKpp::molecule::getAngleMap ( )
int MTKpp::molecule::numAngles ( )

Get number of angles.

Returns:
number of angles

References itsAngleMap.

Referenced by MTKpp::collection::getNumAngles().

int MTKpp::molecule::getAngles ( int  angles[])
int MTKpp::molecule::getAngleParams ( double  angleParams[])
Torsion * MTKpp::molecule::addTorsion ( atom at1,
atom at2,
atom at3,
atom at4,
const double &  tor 
)
void MTKpp::molecule::delTorsion ( atom at1,
atom at2,
atom at3,
atom at4 
)

Deletes torsion from the molecules' list of torsions.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer
at4atom pointer

References MTKpp::atom::getIndex(), MTKpp::indexABCD_ULL(), itsTorsionMap, MTKpp::MAXATOMS, MTKpp::MTKException::message, and ULONG_KIND.

bool MTKpp::molecule::hasTorsion ( atom at1,
atom at2,
atom at3,
atom at4 
)

Does molecule contain a certain torsion.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer
at4atom pointer
Returns:
boolean

References MTKpp::atom::getIndex(), MTKpp::indexABCD_ULL(), itsTorsionMap, MTKpp::MAXATOMS, MTKpp::MTKException::message, and ULONG_KIND.

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

Torsion * MTKpp::molecule::getTorsion ( atom at1,
atom at2,
atom at3,
atom at4 
)

Get torsion.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer
at4atom pointer
Returns:
Torsion pointer

References MTKpp::atom::getIndex(), MTKpp::indexABCD_ULL(), itsTorsionMap, MTKpp::MAXATOMS, MTKpp::MTKException::message, and ULONG_KIND.

Referenced by MTKpp::zmatParser::genZmatrix().

void MTKpp::molecule::setTorsion ( atom at1,
atom at2,
atom at3,
atom at4,
double  t 
)
std::map< ULONG_KIND, Torsion * > MTKpp::molecule::getTorsionMap ( )
int MTKpp::molecule::numTorsions ( )

Get number of torsions.

Returns:
number of torsions

References itsTorsionMap.

Referenced by MTKpp::collection::getNumTorsions().

int MTKpp::molecule::getTorsions ( int  torsions[])
int MTKpp::molecule::getNumMMTorsions ( )
int MTKpp::molecule::getMMTorsions ( int  torsions[],
double  torsionParams[] 
)
Improper * MTKpp::molecule::addImproper ( atom at1,
atom at2,
atom at3,
atom at4,
const double &  imp 
)

Add Improper to molecule.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer
at4atom pointer
impImproper between at1, at2, at3, and at4
Returns:
Improper pointer

References MTKpp::Improper::atom1, MTKpp::Improper::atom2, MTKpp::Improper::atom3, MTKpp::Improper::atom4, MTKpp::atom::getIndex(), MTKpp::indexABCDb(), itsImproperMap, MTKpp::MAXATOMS, MTKpp::Improper::parametersAssigned, pImproper, and MTKpp::Improper::size.

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

void MTKpp::molecule::delImproper ( atom at1,
atom at2,
atom at3,
atom at4 
)

Deletes improper from the molecules' list of impropers.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer
at4atom pointer

References MTKpp::atom::getIndex(), MTKpp::indexABCDb(), itsImproperMap, and MTKpp::MAXATOMS.

bool MTKpp::molecule::hasImproper ( atom at1,
atom at2,
atom at3,
atom at4 
)

Does molecule contain a certain improper.

Parameters:
at1atom pointer
at2atom pointer
at3atom pointer
at4atom pointer
Returns:
boolean

References MTKpp::atom::getIndex(), MTKpp::indexABCDb(), itsImproperMap, and MTKpp::MAXATOMS.

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

std::map< int, Improper * > MTKpp::molecule::getImproperMap ( )
int MTKpp::molecule::numImpropers ( )

Get number of impropers.

Returns:
number of impropers

References itsImproperMap.

Referenced by MTKpp::collection::getNumImpropers().

int MTKpp::molecule::getImpropers ( int  impropers[])
int MTKpp::molecule::getNumMMImpropers ( )
int MTKpp::molecule::getMMImpropers ( int  impropers[],
double  improperParams[] 
)
int MTKpp::molecule::getNumMMnonBondedPairs ( double  cutoff)

Get number of MM non bonded pairs.

References MTKpp::submolecule::centerOfMass(), itsSubMoleculeList, and pSubMolecule.

int MTKpp::molecule::getMMnonBondedPairs ( int  nonBonded[],
int  nonBondedPtrs[],
double  nonBondedParams[],
int  nonBonded14Ptrs[],
double  cutoff 
)
int MTKpp::molecule::getMMCharges ( double  charges[])

Get charges list.

Parameters:
chargesarray of atom charges

References MTKpp::stdAtom::atmCharge, MTKpp::E2KCAL, MTKpp::errorLogger, itsSubMoleculeList, MTKpp::MTK_ERROR, and MTKpp::errorHandler::throwError().

int MTKpp::molecule::getMMResidues ( int  residues[])

Get residue list.

Parameters:
residuesarray of residue indices

References MTKpp::errorLogger, itsSubMoleculeList, MTKpp::MTK_ERROR, and MTKpp::errorHandler::throwError().

void MTKpp::molecule::determineRings ( )

Determine rings.

References bRingsAssigned, MTKpp::rings::determine(), inFileType, kekulizeRings(), and pRings.

Referenced by kekulizeRings(), and main().

void MTKpp::molecule::kekulizeRings ( )
std::string MTKpp::molecule::getRingInfo ( )

Determines if rings is aromatic or not.

References MTKpp::i2s(), and itsRings.

Referenced by main().

void MTKpp::molecule::addRing ( std::vector< atom * >  r)
std::vector< ring * > MTKpp::molecule::getRings ( )

Get rings.

Returns:
vector of rings

References itsRings.

Referenced by MTKpp::ligProtonate::addHydrogens(), MTKpp::rings::determine(), MTKpp::fingerPrint::generateSimpleFP(), and main().

ring * MTKpp::molecule::getLastAddedRing ( )

Get last added ring.

Returns:
ring pointer

References itsRings.

Referenced by MTKpp::atomTyper::assignStdRings().

std::vector< Bond * > MTKpp::molecule::getRotatableBonds ( )

Get rotatable bonds.

Todo:
Definition of Rotatable Bonds A bond is considered as being rotatable, if:
  • it is not in a ring, or if it is in a ring larger than 8 --- done
  • it is a single or a triple bond --- only single bond
  • none of the two atoms is terminal --- done
  • it is not adjacent to a triple bond ----
  • it is not an amide, amidine, guanidine bond ---
Returns:
rotatable bond vector

References MTKpp::Bond::atom1, MTKpp::Bond::atom2, MTKpp::atom::bondedAtoms, MTKpp::errorLogger, getAtomList(), getName(), MTKpp::atom::getType(), MTKpp::INFO, itsBondMap, itsRotatableBonds, pBond, MTKpp::Bond::rotatable, MTKpp::errorHandler::throwError(), MTKpp::Bond::topology, and MTKpp::Bond::type.

Referenced by getRotatableTorsions().

void MTKpp::molecule::setRotatableTorsions ( std::vector< Torsion * >  tors)

Get rotatable dihedrals.

Parameters:
torsrotatable dihedrals vector

References itsRotatableTorsions.

std::vector< Torsion * > MTKpp::molecule::getRotatableTorsions ( )
std::vector< Torsion * > MTKpp::molecule::setupConformers ( )
std::vector< Torsion * > MTKpp::molecule::setupConformers ( std::vector< atom * >  frozenAtoms)

Set up conformers.

Parameters:
frozenAtomsAtoms which cannot move
Returns:
vector of torsions

References MTKpp::conformers::addRotatableTorsion(), MTKpp::conformers::determineAtomList(), getRotatableTorsions(), itsConformers, and pConformers.

std::vector< Torsion * > MTKpp::molecule::setupConformers ( std::vector< Bond * >  rotBonds)
std::vector< Torsion * > MTKpp::molecule::setupConformers ( std::vector< Torsion * >  rotTorsions)

Set up conformers.

Parameters:
rotTorsionsuser defined rotatable torsions
Returns:
vector of torsions

References MTKpp::conformers::addRotatableTorsion(), MTKpp::conformers::determineAtomList(), itsConformers, itsRotatableTorsions, and pConformers.

void MTKpp::molecule::addConformer ( std::string  name,
std::vector< double >  t 
)

Add conformer to the list of conformers.

Parameters:
namename of conformer
tvector of torsions in radians

References itsConformers, MTKpp::conformer::name, pConformers, setupConformers(), and MTKpp::conformer::torsions.

void MTKpp::molecule::updateConformer ( std::string  name,
std::vector< double >  t 
)

Updates the conformers torsional angles.

Parameters:
namename of conformer
tvector of torsions in radians

References itsConformers, and MTKpp::conformer::torsions.

void MTKpp::molecule::delConformer ( std::string  name)

Delete conformer from the list of conformers.

Parameters:
namename of conformer

References itsConformers.

conformer * MTKpp::molecule::getConformer ( std::string  name)

Get conformer based on its name.

Parameters:
nameconformer name
Returns:
conformer pointer

References itsConformers, and MTKpp::conformer::name.

conformers * MTKpp::molecule::getConformers ( )

Get conformers pointer.

Returns:
conformers pointer

References pConformers.

std::vector< std::string > MTKpp::molecule::getConformerNames ( )

Get conformer names.

Returns:
conformer names

References itsConformers.

void MTKpp::molecule::generateSimpleFP ( )

generate simple fingerprint

References MTKpp::fingerPrint::generateSimpleFP(), itsSimpleFP, and pFingerPrint.

Referenced by main().

std::vector< unsigned int > MTKpp::molecule::getSimpleFP ( )

get simple fingerprint

Returns:
simple fingerprint

References itsSimpleFP.

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

std::string MTKpp::molecule::getFragmentFP ( )

Get fragment fingerprint.

Returns:
fragment fingerprint

References itsFragmentFP.

Referenced by main().

int MTKpp::molecule::determineHydrophobicGroups ( )

Determine hydrophobic groups in the molecule.

Returns:
success

References pHydrophobize, and MTKpp::hydrophobize::run().

Referenced by main().

int MTKpp::molecule::addHydrophobicGroup ( std::vector< atom * >  ats)

Add hydrophobic groups to the molecule.

Parameters:
atsatom in hydrophobe
Returns:
success

References MTKpp::hydrophobe::atoms, itsHydrophobes, and pHydrophobe.

Referenced by MTKpp::atomTyper::assignStdHydrophobicGroups(), and MTKpp::hydrophobize::run().

std::vector< hydrophobe * > MTKpp::molecule::getHydrophobicGroups ( )

Get hydrophobic groups.

Returns:
vector of hydrophobes

References itsHydrophobes.

Referenced by main().

int MTKpp::molecule::determineFunctionalGroups ( stdLibrary pStdLib)

Determine functional groups in the molecule.

Parameters:
pStdLibstdLib pointer
Returns:
success

References pFunctionalize, and MTKpp::functionalize::run().

Referenced by main().

void MTKpp::molecule::addFunctionalGroup ( funcGroup fg)
void MTKpp::molecule::addFunctionalGroup ( int  fragAtoms,
stdFrag pStdFrag,
int  molAtoms,
std::vector< int >  subGraph 
)
void MTKpp::molecule::delFunctionalGroup ( funcGroup fG,
int  i 
)

Delete functional group from the molecule.

Parameters:
fGfunctional group pointer
inumber of fG

References delProperty(), MTKpp::errorLogger, MTKpp::stdFrag::getCode(), MTKpp::stdFrag::getSymbol(), MTKpp::INFO, itsFragmentFP, itsFuncGroups, MTKpp::funcGroup::pStdFrag, and MTKpp::errorHandler::throwError().

std::vector< funcGroup * > MTKpp::molecule::getFunctionalGroups ( )

Get functional groups.

Returns:
functional groups

References itsFuncGroups.

Referenced by main(), and MTKpp::complex::setCoreFragment().

funcGroup * MTKpp::molecule::getFunctionalGroup ( atom pAt)

Get functional group to which the atom is apart of.

Parameters:
pAtatom pointer
Returns:
functional group

References itsFuncGroups.

int MTKpp::molecule::generateAdjMatrix ( )

Determine adjacency matrix.

Returns:
success

References adjMatrix, adjMatrixSize, MTKpp::errorLogger, getAtomList(), getBond(), MTKpp::MTK_ERROR, pBond, MTKpp::errorHandler::throwError(), and MTKpp::Bond::type.

Referenced by main().

int MTKpp::molecule::generateHeavyAdjMatrix ( )
int * MTKpp::molecule::getAdjMatrix ( )

Get adjacency matrix.

Returns:
adjacency matrix

References adjMatrix.

Referenced by MTKpp::superimpose::initializeCorrespondences(), and MTKpp::functionalize::run().

int * MTKpp::molecule::getHeavyAdjMatrix ( )

Get heavy atom adjacency matrix.

Returns:
heavy atom adjacency matrix

References heavyAdjMatrix.

Referenced by MTKpp::superimpose::initializeCorrespondences().

int MTKpp::molecule::getAdjMatrixSize ( )

Get adjacency matrix Size.

Returns:
adjacency matrix size

References adjMatrixSize.

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

int MTKpp::molecule::getHeavyAdjMatrixSize ( )

Get heavy adjacency matrix Size.

Returns:
adjacency matrix size

References heavyAdjMatrixSize.

int MTKpp::molecule::generateFeatureDistMatrix ( )

Determine molecular feature distance matrix.

Returns:
success

References getCoordinates().

int MTKpp::molecule::generateFeatureDistMatrix ( std::vector< vector3d coords)
double * MTKpp::molecule::getFeatureDistMatrix ( )

Determine molecular feature distance matrix.

Returns:
success

References featureDistMatrix.

Referenced by MTKpp::pharmacophore::getCliques(), and MTKpp::pharmacophore::run().

std::vector< std::string > MTKpp::molecule::getFeatureGroups ( )

Get feature groups.

Returns:
feature groups

References featureGroups.

std::vector< std::string > MTKpp::molecule::getFeatureLabels ( )

Get feature labels.

Returns:
feature labels

References featureLabels.

Referenced by MTKpp::pharmacophore::getCliques(), and MTKpp::pharmacophore::run().

std::vector< vector3d > MTKpp::molecule::getFeatureCoordinates ( )

Get feature coordinates.

Returns:
feature coordinates

References featureCoordinates.

Referenced by MTKpp::pharmacophore::getCliques(), and MTKpp::pharmacophore::run().

int MTKpp::molecule::findPharmacophore ( molecule pMol,
std::vector< std::vector< unsigned int > > &  mcp,
std::vector< vector3d > &  mcpCoords,
double  distMax = 0.5 
)

Determine the Maximum Common Pharmacophore (MCP) between two molecules.

Parameters:
pMolmolecule pointer
mcpatom indices of the maximum common pharmacophore
mcpCoordsThe maximum common pharmacophore coordinates
distMaxFeature distance parameter
Returns:
success

References pPharmacophore, and MTKpp::pharmacophore::run().

int MTKpp::molecule::findPharmacophore ( molecule pMol,
std::vector< clique * > &  cliqueList,
double  distMax = 0.5 
)

Determine all Pharmacophores between two molecules.

Parameters:
pMolmolecule pointer
cliqueListList of cliques
distMaxFeature distance parameter
Returns:
success

References MTKpp::pharmacophore::getCliques(), and pPharmacophore.

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

Add molecular property.

Parameters:
namename of property
valuevalue of property

References itsPropertiesMap.

Referenced by addFunctionalGroup(), main(), MTKpp::sdfParser::Read(), MTKpp::dcParser::Read(), and MTKpp::sdfParser::ReadMolecule().

std::string MTKpp::molecule::getProperty ( const std::string &  name)

Get molecular property.

Parameters:
namename of property
Returns:
value of property

References itsPropertiesMap.

void MTKpp::molecule::delProperty ( const std::string &  name)

Delete molecular property.

Parameters:
namename of property

References itsPropertiesMap.

Referenced by delFunctionalGroup(), and main().

std::map< std::string, std::string > MTKpp::molecule::getProperties ( )

get molecular properties

Returns:
map of molecular properties

References itsPropertiesMap.

Referenced by main(), and MTKpp::sdfParser::Write().

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

has molecule a certain property

Parameters:
namename of property
Returns:
got it or not

References itsPropertiesMap.

void MTKpp::molecule::setInSolution ( )
void MTKpp::molecule::addHydrogens ( )
void MTKpp::molecule::removeHydrogens ( )
void MTKpp::molecule::determineValences ( )
void MTKpp::molecule::determineHybridizations ( int  method,
const std::string  f 
)

Determine atom hybridizations.

Parameters:
method1 - Meng, 2 - Labute
fparameter file name

References inFileType, MTKpp::hybridize::run(), MTKpp::hybridize::runLabute(), and MTKpp::hybridize::runMeng().

Referenced by main().


Member Data Documentation

Are the disulfide bonds assigned?

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

Are the bond types: Single, double, triple, assigned?

Referenced by molecule().

Are the Aromatic bonds assigned?

Referenced by MTKpp::rings::kekulize(), and molecule().

Are the atomic valences assigned?

Referenced by determineValences(), and molecule().

Are the atomic hybridizations assigned?

Referenced by MTKpp::atomTyper::assignStdProperties(), MTKpp::atomTyper::atomTypeByLib(), and molecule().

Were the rings assigned?

Referenced by determineRings(), kekulizeRings(), and molecule().

Were the rings kekulized?

Referenced by kekulizeRings(), and molecule().

Is the molecule considered in solution?

Referenced by getFormalCharge(), molecule(), and setInSolution().

Were hydrogens added?

Referenced by addHydrogens(), molecule(), and MTKpp::protonate::runMol().

Error Flag.

Referenced by molecule(), and MTKpp::dcParser::Read().

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

molecule name

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

std::string MTKpp::molecule::itsChain [protected]

molecule chain

Referenced by getChain(), molecule(), and setChain().

int MTKpp::molecule::itsKind [protected]

molecule kind definitions

  • 0 = undefined
  • 1 = biomolecule, e.g protein, DNA, etc
  • 2 = small molecule, e.g. drug
  • 3 = other

Referenced by getKind(), molecule(), and setKind().

int MTKpp::molecule::itsMolId [protected]

molecule id

Referenced by getMolId(), molecule(), and setMolId().

number of atoms

Referenced by molecule(), and setNumAtoms().

number of bonds

Referenced by molecule(), and setNumBonds().

submolecule index

Referenced by addSubMolecule(), and molecule().

atom index

Referenced by getAtomIndex(), molecule(), and setAtomIndex().

maximum atom file id

Referenced by getMaxFileID(), molecule(), and setMaxFileID().

Total Charge.

Referenced by getTotalCharge(), molecule(), and setTotalCharge().

center of mass

Bond parameter pointer.

Referenced by getBondParams().

Angle parameter pointer.

Referenced by getAngleParams().

Torsion parameter pointer.

Referenced by getMMTorsions().

H Bond Param.

LJ612Param* MTKpp::molecule::pLJ612Param [protected]

LJ 6-12 Param.

LJ 6-12 Sigma and Epsilon.

Referenced by getMMnonBondedPairs().

Torsion parameter list.

Referenced by getMMTorsions(), and getNumMMTorsions().

Improper parameter list.

Referenced by getMMImpropers(), and getNumMMImpropers().

Improper parameter pointer.

Referenced by getMMImpropers().

ring pointer

Referenced by generateFeatureDistMatrix(), kekulizeRings(), and ~molecule().

conformers pointer

Referenced by addConformer(), getConformers(), molecule(), setupConformers(), and ~molecule().

conformer pointer

Referenced by ~molecule().

protonate pointer

Referenced by addHydrogens(), and molecule().

fingerPrint pointer

Referenced by generateSimpleFP(), and molecule().

functionalize pointer

Referenced by determineFunctionalGroups(), and molecule().

hydrophobize pointer

Referenced by determineHydrophobicGroups(), and molecule().

hydrophobe pointer

Referenced by addHydrophobicGroup(), generateFeatureDistMatrix(), and ~molecule().

pharmacophore pointer

Referenced by findPharmacophore(), and molecule().

std::vector<atom*> MTKpp::molecule::itsAtomList [protected]

atom vector

Referenced by getAtomList(), and ~molecule().

std::vector<atom*> MTKpp::molecule::itsHeavyAtomList [protected]

heavy atom vector

Referenced by getHeavyAtomList().

std::vector<int> MTKpp::molecule::itsBond13List [protected]

13 Bond vector

Referenced by add13Bond(), has13Bond(), and ~molecule().

std::vector<int> MTKpp::molecule::itsBond14List [protected]

14 Bond vector

Referenced by add14Bond(), has14Bond(), and ~molecule().

std::vector<Bond*> MTKpp::molecule::itsRotatableBonds [protected]

rotatable bonds

Referenced by getRotatableBonds().

rotatable torsions

Referenced by getRotatableTorsions(), setRotatableTorsions(), and setupConformers().

std::vector<ring*> MTKpp::molecule::itsRings [protected]
std::vector<funcGroup*> MTKpp::molecule::itsFuncGroups [protected]
std::vector<hydrophobe*> MTKpp::molecule::itsHydrophobes [protected]
std::vector<conformer*> MTKpp::molecule::itsConformers [protected]
std::vector<unsigned int> MTKpp::molecule::itsSimpleFP [protected]

Simple fingerprint.

Referenced by delAtom(), generateSimpleFP(), and getSimpleFP().

std::string MTKpp::molecule::itsFragmentFP [protected]

Fragment fingerprint.

Referenced by addFunctionalGroup(), delFunctionalGroup(), and getFragmentFP().

1D fingerprint

Heavy Atom indices

Referenced by getHeavyAtomIndices().

int* MTKpp::molecule::adjMatrix [protected]

Adjacency Matrix.

Referenced by generateAdjMatrix(), getAdjMatrix(), molecule(), and ~molecule().

Heavy Atom Adjacency Matrix.

Referenced by generateHeavyAdjMatrix(), and getHeavyAdjMatrix().

Adjacency Matrix Size.

Referenced by generateAdjMatrix(), getAdjMatrixSize(), and molecule().

Heavy Adjacency Matrix Size.

Referenced by generateHeavyAdjMatrix(), and getHeavyAdjMatrixSize().

Feature Distance Matrix.

Referenced by generateFeatureDistMatrix(), getFeatureDistMatrix(), molecule(), and ~molecule().

Adjacency Matrix Size.

Referenced by generateFeatureDistMatrix().

std::vector<std::string> MTKpp::molecule::featureGroups [protected]

Feature Groups.

Referenced by generateFeatureDistMatrix(), and getFeatureGroups().

std::vector<std::string> MTKpp::molecule::featureLabels [protected]

Feature Labels.

Referenced by generateFeatureDistMatrix(), and getFeatureLabels().

Feature coordinates.

Referenced by generateFeatureDistMatrix(), and getFeatureCoordinates().

char* MTKpp::molecule::atomSymbols [protected]

Atom symbols.

Referenced by getAtomSymbols().

Atom symbols.

Referenced by getHeavyAtomSymbols().

char* MTKpp::molecule::atomTypes [protected]

Atom types.

Referenced by getAtomTypes().

Heavy atom types.

Referenced by getHeavyAtomTypes().

int* MTKpp::molecule::atomKinds [protected]

Atom kinds.

Referenced by getAtomKinds().

std::map<int, Bond*> MTKpp::molecule::itsBondMap [protected]
std::map<ULONG_KIND, Angle*> MTKpp::molecule::itsAngleMap [protected]
std::map<ULONG_KIND, Torsion*> MTKpp::molecule::itsTorsionMap [protected]
std::map<int, Improper*> MTKpp::molecule::itsImproperMap [protected]
std::map<std::string, std::string> MTKpp::molecule::itsPropertiesMap [protected]

Molecule properties map.

Referenced by addProperty(), delProperty(), getProperties(), getProperty(), and hasProperty().


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