Chemical Data Processing Library C++ API - Version 1.4.0
Namespaces | Functions
MolProp/MolecularGraphFunctions.hpp File Reference

Declaration of functions that operate on Chem::MolecularGraph instances. More...

#include <string>
#include <cstddef>
#include "CDPL/MolProp/APIPrefix.hpp"
#include "CDPL/MolProp/MassComposition.hpp"
#include "CDPL/MolProp/ElementHistogram.hpp"
#include "CDPL/Chem/FragmentList.hpp"
#include "CDPL/Chem/AtomPropertyFlag.hpp"

Go to the source code of this file.

Namespaces

 CDPL
 The namespace of the Chemical Data Processing Library.
 
 CDPL::Chem
 Contains classes and functions related to chemistry.
 
 CDPL::MolProp
 Contains classes and functions related to the calculation/preciction of physicochemical molecular properties.
 

Functions

CDPL_MOLPROP_API double CDPL::MolProp::calcMass (const Chem::MolecularGraph &molgraph)
 Calculates the total molecular mass of molgraph (sum of atom standard atomic weights including implicit hydrogens). More...
 
CDPL_MOLPROP_API void CDPL::MolProp::calcMassComposition (const Chem::MolecularGraph &molgraph, MassComposition &comp)
 Calculates the per-element mass composition of molgraph. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::generateMassCompositionString (const Chem::MolecularGraph &molgraph, std::string &comp)
 Generates a string representation of the per-element mass composition of molgraph. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::generateMolecularFormula (const Chem::MolecularGraph &molgraph, std::string &formula, const std::string &sep=std::string())
 Generates the molecular formula of the molecular graph molgraph. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::generateElementHistogram (const Chem::MolecularGraph &molgraph, ElementHistogram &hist, bool append=false)
 Generates the element histogram of molgraph. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::calcCyclomaticNumber (const Chem::MolecularGraph &molgraph)
 Calculates the cyclomatic number of molgraph (number of independent cycles). More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getAtomCount (const Chem::MolecularGraph &molgraph)
 Returns the total number of atoms in molgraph (including implicit hydrogens). More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getAtomCount (const Chem::MolecularGraph &molgraph, unsigned int type, bool strict=true)
 Returns the number of atoms in molgraph whose Chem::AtomType matches type. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getImplicitHydrogenCount (const Chem::MolecularGraph &molgraph)
 Returns the total number of implicit hydrogens in molgraph. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getOrdinaryHydrogenCount (const Chem::MolecularGraph &molgraph, unsigned int flags=Chem::AtomPropertyFlag::DEFAULT)
 Returns the number of ordinary hydrogens in molgraph (see MolProp::isOrdinaryHydrogen() for the definition of "ordinary"). More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getExplicitOrdinaryHydrogenCount (const Chem::MolecularGraph &molgraph, unsigned int flags=Chem::AtomPropertyFlag::DEFAULT)
 Returns the number of explicit ordinary hydrogens in molgraph (see MolProp::isOrdinaryHydrogen() for the definition of "ordinary"). More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getChainAtomCount (const Chem::MolecularGraph &molgraph)
 Returns the number of chain (non-ring) atoms in molgraph. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getHBondAcceptorAtomCount (const Chem::MolecularGraph &molgraph)
 Returns the number of H-bond acceptor atoms in molgraph. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getHBondDonorAtomCount (const Chem::MolecularGraph &molgraph)
 Returns the number of H-bond donor atoms in molgraph. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getBondCount (const Chem::MolecularGraph &molgraph)
 Returns the total number of bonds in molgraph (including bonds to implicit hydrogens). More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getBondCount (const Chem::MolecularGraph &molgraph, std::size_t order, bool inc_aro=true)
 Returns the number of bonds in molgraph with the given order, optionally including aromatic bonds. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getHydrogenBondCount (const Chem::MolecularGraph &molgraph)
 Returns the number of bonds in molgraph that involve at least one hydrogen atom. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getChainBondCount (const Chem::MolecularGraph &molgraph)
 Returns the number of chain (non-ring) bonds in molgraph. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getRotatableBondCount (const Chem::MolecularGraph &molgraph, bool h_rotors=false, bool ring_bonds=false, bool amide_bonds=false)
 Returns the number of rotatable bonds in molgraph. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getComponentCount (const Chem::MolecularGraph &molgraph)
 Returns the number of connected components in molgraph. More...
 
CDPL_MOLPROP_API double CDPL::MolProp::calcXLogP (const Chem::MolecularGraph &molgraph)
 Calculates the XLogP value of molgraph using MolProp::XLogPCalculator. More...
 
CDPL_MOLPROP_API double CDPL::MolProp::calcLogS (const Chem::MolecularGraph &molgraph)
 Calculates the \( \log S \) (aqueous solubility) of molgraph using MolProp::LogSCalculator. More...
 
CDPL_MOLPROP_API double CDPL::MolProp::calcTPSA (const Chem::MolecularGraph &molgraph)
 Calculates the topological polar surface area (TPSA) of molgraph using MolProp::TPSACalculator. More...
 
CDPL_MOLPROP_API std::size_t CDPL::MolProp::getRuleOfFiveScore (const Chem::MolecularGraph &molgraph)
 Returns the Lipinski rule-of-five score of molgraph, defined as the number of satisfied criteria (0-4). More...
 
CDPL_MOLPROP_API double CDPL::MolProp::calcMeanPolarizability (const Chem::MolecularGraph &molgraph)
 Calculates the mean atomic polarizability of molgraph. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::calcPEOEProperties (Chem::MolecularGraph &molgraph, bool overwrite, std::size_t num_iter=20, double damping=0.48)
 Calculates PEOE sigma charges and electronegativities for the atoms of molgraph and stores them as atom properties. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::calcMHMOProperties (Chem::MolecularGraph &molgraph, bool overwrite)
 Calculates MHMO pi charges and pi-bond orders for molgraph and stores them as atom/bond properties. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::calcAtomHydrophobicities (Chem::MolecularGraph &molgraph, bool overwrite, bool from_logp=false)
 Calculates per-atom hydrophobicities for molgraph and stores them as atom properties. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::perceiveHBondDonorAtomTypes (Chem::MolecularGraph &molgraph, bool overwrite)
 Perceives the H-bond donor types of the atoms in molgraph and stores them as atom properties. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::perceiveHBondAcceptorAtomTypes (Chem::MolecularGraph &molgraph, bool overwrite)
 Perceives the H-bond acceptor types of the atoms in molgraph and stores them as atom properties. More...
 
CDPL_MOLPROP_API const Chem::FragmentList::SharedPointer & CDPL::MolProp::getFunctionalGroups (const Chem::MolecularGraph &molgraph)
 Returns the value of the MolProp::MolecularGraphProperty::FUNCTIONAL_GROUPS property of molgraph. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::setFunctionalGroups (Chem::MolecularGraph &molgraph, const Chem::FragmentList::SharedPointer &fg_list)
 Sets the value of the MolProp::MolecularGraphProperty::FUNCTIONAL_GROUPS property of molgraph. More...
 
CDPL_MOLPROP_API void CDPL::MolProp::clearFunctionalGroups (Chem::MolecularGraph &molgraph)
 Removes the MolProp::MolecularGraphProperty::FUNCTIONAL_GROUPS property from molgraph. More...
 
CDPL_MOLPROP_API bool CDPL::MolProp::hasFunctionalGroups (const Chem::MolecularGraph &molgraph)
 Tells whether molgraph carries an explicit MolProp::MolecularGraphProperty::FUNCTIONAL_GROUPS property. More...
 
CDPL_MOLPROP_API Chem::FragmentList::SharedPointer CDPL::MolProp::perceiveFunctionalGroups (const Chem::MolecularGraph &molgraph)
 Perceives the functional groups of molgraph using MolProp::FunctionalGroupList. More...
 
CDPL_MOLPROP_API Chem::FragmentList::SharedPointer CDPL::MolProp::perceiveFunctionalGroups (Chem::MolecularGraph &molgraph, bool overwrite)
 Perceives the functional groups of molgraph and stores them as a property. More...
 

Detailed Description

Declaration of functions that operate on Chem::MolecularGraph instances.