Chemical Data Processing Library C++ API - Version 1.4.0
MolProp/AtomFunctions.hpp
Go to the documentation of this file.
1 /*
2  * AtomFunctions.hpp
3  *
4  * This file is part of the Chemical Data Processing Toolkit
5  *
6  * Copyright (C) 2003 Thomas Seidel <thomas.seidel@univie.ac.at>
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public License
19  * along with this library; see the file COPYING. If not, write to
20  * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21  * Boston, MA 02111-1307, USA.
22  */
23 
29 #ifndef CDPL_MOLPROP_ATOMFUNCTIONS_HPP
30 #define CDPL_MOLPROP_ATOMFUNCTIONS_HPP
31 
32 #include <cstddef>
33 #include <string>
34 
37 
38 
39 namespace CDPL
40 {
41 
42  namespace Chem
43  {
44 
45  class Atom;
46  class MolecularGraph;
47  } // namespace Chem
48 
49  namespace MolProp
50  {
51 
58 
65 
71 
78 
79 
86 
92  CDPL_MOLPROP_API void setPEOESigmaCharge(Chem::Atom& atom, double charge);
93 
99 
106 
107 
114 
121 
127 
134 
135 
142 
148  CDPL_MOLPROP_API void setMHMOPiCharge(Chem::Atom& atom, double charge);
149 
155 
162 
163 
169  CDPL_MOLPROP_API unsigned int getHBondDonorType(const Chem::Atom& atom);
170 
176  CDPL_MOLPROP_API void setHBondDonorType(Chem::Atom& atom, unsigned int type);
177 
183 
190 
191 
198 
204  CDPL_MOLPROP_API void setHBondAcceptorType(Chem::Atom& atom, unsigned int type);
205 
211 
218 
219 
226  CDPL_MOLPROP_API bool isInRing(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
227 
235  CDPL_MOLPROP_API bool isInRingOfSize(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, std::size_t size);
236 
244 
245 
252 
258  CDPL_MOLPROP_API std::size_t getIUPACGroup(const Chem::Atom& atom);
259 
265  CDPL_MOLPROP_API std::size_t getPeriod(const Chem::Atom& atom);
266 
273 
280  CDPL_MOLPROP_API double getCovalentRadius(const Chem::Atom& atom, std::size_t order);
281 
288 
294  CDPL_MOLPROP_API const std::string& getElementName(const Chem::Atom& atom);
295 
302 
309 
316 
323 
330 
337 
344 
351 
358 
359 
375  unsigned int flags = Chem::AtomPropertyFlag::DEFAULT);
376 
383 
390  CDPL_MOLPROP_API bool isUnsaturated(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
391 
399 
406  CDPL_MOLPROP_API bool isHBondDonor(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
407 
417  CDPL_MOLPROP_API bool isCarbonylLike(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, bool c_only = false, bool db_o_only = false);
418 
428  CDPL_MOLPROP_API bool isAmideCenter(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, bool c_only = false, bool db_o_only = false);
429 
438  CDPL_MOLPROP_API bool isAmideNitrogen(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, bool c_only = false, bool db_o_only = false);
439 
447 
455 
464  CDPL_MOLPROP_API bool isBridgehead(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, bool bridged_only);
465 
473  CDPL_MOLPROP_API bool isSpiroCenter(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
474 
475 
485  unsigned int flags = Chem::AtomPropertyFlag::DEFAULT);
486 
495  CDPL_MOLPROP_API std::size_t getExplicitAtomCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, unsigned int type, bool strict = true);
496 
505  CDPL_MOLPROP_API std::size_t getAtomCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, unsigned int type, bool strict = true);
506 
514 
521  CDPL_MOLPROP_API std::size_t getChainAtomCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
522 
529  CDPL_MOLPROP_API std::size_t getRingAtomCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
530 
537  CDPL_MOLPROP_API std::size_t getAromaticAtomCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
538 
545  CDPL_MOLPROP_API std::size_t getHeavyAtomCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
546 
547 
554  CDPL_MOLPROP_API std::size_t getExplicitBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
555 
563  CDPL_MOLPROP_API std::size_t getExplicitBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, std::size_t order);
564 
574  CDPL_MOLPROP_API std::size_t getExplicitBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, std::size_t order, unsigned int type, bool strict = true);
575 
582  CDPL_MOLPROP_API std::size_t getBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
583 
591  CDPL_MOLPROP_API std::size_t getBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, std::size_t order);
592 
602  CDPL_MOLPROP_API std::size_t getBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, std::size_t order, unsigned int type, bool strict = true);
603 
611 
618  CDPL_MOLPROP_API std::size_t getChainBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
619 
626  CDPL_MOLPROP_API std::size_t getRingBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
627 
634  CDPL_MOLPROP_API std::size_t getAromaticBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
635 
642  CDPL_MOLPROP_API std::size_t getHeavyBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
643 
653  CDPL_MOLPROP_API std::size_t getRotatableBondCount(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, bool h_rotors = false, bool ring_bonds = false, bool amide_bonds = false);
654 
655 
662  CDPL_MOLPROP_API std::size_t calcExplicitValence(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
663 
670  CDPL_MOLPROP_API std::size_t calcValence(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
671 
672 
680 
687 
688 
695  CDPL_MOLPROP_API std::size_t calcStericNumber(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph);
696 
704  CDPL_MOLPROP_API unsigned int getVSEPRCoordinationGeometry(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, std::size_t steric_num);
705 
713 
714 
722 
731  CDPL_MOLPROP_API double calcEffectivePolarizability(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, double damping = 0.75);
732 
742 
750 
758 
766  CDPL_MOLPROP_API double calcInductiveEffect(const Chem::Atom& atom, const Chem::MolecularGraph& molgraph, std::size_t num_bonds = 10);
767  } // namespace MolProp
768 } // namespace CDPL
769 
770 #endif // CDPL_MOLPROP_ATOMFUNCTIONS_HPP
Definition of constants in namespace CDPL::Chem::AtomPropertyFlag.
Definition of the preprocessor macro CDPL_MOLPROP_API.
#define CDPL_MOLPROP_API
Tells the compiler/linker which classes, functions and variables are part of the library API.
Abstract base class representing a chemical atom and its bonded neighborhood.
Definition: Atom.hpp:57
Abstract base class for representations of a chemical structure as a graph of bonded atoms.
Definition: MolecularGraph.hpp:57
constexpr unsigned int DEFAULT
Represents the default set of atom properties.
Definition: Chem/AtomPropertyFlag.hpp:53
CDPL_MOLPROP_API std::size_t getElementValenceElectronCount(const Chem::Atom &atom)
Returns the number of valence electrons of the chemical element associated with the atom atom.
CDPL_MOLPROP_API std::size_t getAromaticAtomCount(const Chem::AtomContainer &cntnr)
Returns the number of aromatic atoms in cntnr.
CDPL_MOLPROP_API std::size_t getExplicitChainBondCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the number of explicit chain (non-ring) bonds incident to the atom atom in the molecular grap...
CDPL_MOLPROP_API bool isHeavy(const Chem::Atom &atom)
Tells whether the atom atom is a heavy (non-hydrogen) atom.
CDPL_MOLPROP_API void setPEOESigmaCharge(Chem::Atom &atom, double charge)
Sets the value of the MolProp::AtomProperty::PEOE_SIGMA_CHARGE property of the atom atom to charge.
CDPL_MOLPROP_API std::size_t getHeavyBondCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the number of heavy bonds incident to the atom atom in the molecular graph molgraph.
CDPL_MOLPROP_API void clearHBondAcceptorType(Chem::Atom &atom)
Clears the value of the MolProp::AtomProperty::H_BOND_ACCEPTOR_TYPE property of the atom atom.
CDPL_MOLPROP_API double calcInductiveEffect(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, std::size_t num_bonds=10)
Calculates the inductive effect parameter of the atom atom in the molecular graph molgraph.
CDPL_MOLPROP_API void setHBondAcceptorType(Chem::Atom &atom, unsigned int type)
Sets the value of the MolProp::AtomProperty::H_BOND_ACCEPTOR_TYPE property of the atom atom to type.
CDPL_MOLPROP_API double calcPiElectronegativity(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Calculates the π-electronegativity of the atom atom in the molecular graph molgraph.
CDPL_MOLPROP_API void clearMHMOPiCharge(Chem::Atom &atom)
Clears the value of the MolProp::AtomProperty::MHMO_PI_CHARGE property of the atom atom.
CDPL_MOLPROP_API std::size_t calcStericNumber(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Calculates the steric number of the atom atom in the molecular graph molgraph (used by VSEPR theory).
CDPL_MOLPROP_API std::size_t calcExplicitValence(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Calculates the explicit valence of the atom atom in the molecular graph molgraph (sum of explicit bon...
CDPL_MOLPROP_API bool isSemiMetal(const Chem::Atom &atom)
Tells whether the chemical element associated with the atom atom is a semi-metal.
CDPL_MOLPROP_API void setHydrophobicity(Chem::Atom &atom, double hyd)
Sets the value of the MolProp::AtomProperty::HYDROPHOBICITY property of the atom atom to hyd.
CDPL_MOLPROP_API std::size_t getChainAtomCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the number of chain (non-ring) neighbors of the atom atom in the molecular graph molgraph (in...
CDPL_MOLPROP_API double getAllredRochowElectronegativity(const Chem::Atom &atom)
Returns the Allred-Rochow electronegativity of the chemical element associated with the atom atom.
CDPL_MOLPROP_API std::size_t getHeavyAtomCount(const Chem::AtomContainer &cntnr)
Returns the number of heavy (non-hydrogen) atoms in cntnr.
CDPL_MOLPROP_API std::size_t getExplicitChainAtomCount(const Chem::AtomContainer &cntnr)
Returns the number of explicit chain (non-ring) atoms in cntnr.
CDPL_MOLPROP_API bool isMainGroupElement(const Chem::Atom &atom)
Tells whether the chemical element associated with the atom atom is a main-group element.
CDPL_MOLPROP_API void setPEOESigmaElectronegativity(Chem::Atom &atom, double e_neg)
Sets the value of the MolProp::AtomProperty::PEOE_SIGMA_ELECTRONEGATIVITY property of the atom atom t...
CDPL_MOLPROP_API bool isOrdinaryHydrogen(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, unsigned int flags=Chem::AtomPropertyFlag::DEFAULT)
Tells whether the atom atom is an ordinary hydrogen.
CDPL_MOLPROP_API double getCovalentRadius(const Chem::Atom &atom, std::size_t order)
Returns the covalent radius of the chemical element associated with the atom atom for the given bond ...
CDPL_MOLPROP_API bool hasHBondAcceptorType(const Chem::Atom &atom)
Tells whether the MolProp::AtomProperty::H_BOND_ACCEPTOR_TYPE property of the atom atom is set.
CDPL_MOLPROP_API void clearHBondDonorType(Chem::Atom &atom)
Clears the value of the MolProp::AtomProperty::H_BOND_DONOR_TYPE property of the atom atom.
CDPL_MOLPROP_API bool hasMHMOPiCharge(const Chem::Atom &atom)
Tells whether the MolProp::AtomProperty::MHMO_PI_CHARGE property of the atom atom is set.
CDPL_MOLPROP_API std::size_t getChainBondCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the number of chain (non-ring) bonds incident to the atom atom in the molecular graph molgrap...
CDPL_MOLPROP_API bool isNobleGas(const Chem::Atom &atom)
Tells whether the chemical element associated with the atom atom is a noble gas.
CDPL_MOLPROP_API bool hasPEOESigmaElectronegativity(const Chem::Atom &atom)
Tells whether the MolProp::AtomProperty::PEOE_SIGMA_ELECTRONEGATIVITY property of the atom atom is se...
CDPL_MOLPROP_API void clearPEOESigmaElectronegativity(Chem::Atom &atom)
Clears the value of the MolProp::AtomProperty::PEOE_SIGMA_ELECTRONEGATIVITY property of the atom atom...
CDPL_MOLPROP_API bool isUnsaturated(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Tells whether the atom atom is unsaturated (involved in at least one multiple bond) in the molecular ...
CDPL_MOLPROP_API unsigned int getVSEPRCoordinationGeometry(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, std::size_t steric_num)
Returns the VSEPR coordination geometry of the atom atom in the molecular graph molgraph.
CDPL_MOLPROP_API bool isChemicalElement(const Chem::Atom &atom)
Tells whether the atom atom represents a chemical element.
CDPL_MOLPROP_API std::size_t calcValenceElectronCount(const Chem::Atom &atom)
Calculates the number of valence electrons of the chemical element associated with the atom atom (cor...
CDPL_MOLPROP_API std::size_t getOrdinaryHydrogenCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, unsigned int flags=Chem::AtomPropertyFlag::DEFAULT)
Returns the number of ordinary hydrogen neighbors of the atom atom in the molecular graph molgraph.
CDPL_MOLPROP_API bool isCarbonylLike(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, bool c_only=false, bool db_o_only=false)
Tells whether the atom atom is a carbonyl-like center in the molecular graph molgraph.
CDPL_MOLPROP_API std::size_t getExplicitBondCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the number of explicit bonds incident to the atom atom in the molecular graph molgraph.
CDPL_MOLPROP_API std::size_t calcFreeValenceElectronCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Calculates the number of valence electrons of the atom atom in the molecular graph molgraph that are ...
CDPL_MOLPROP_API bool isBridgehead(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, bool bridged_only)
Tells whether the atom atom is a ring system bridgehead atom in the molecular graph molgraph.
CDPL_MOLPROP_API double calcEffectivePolarizability(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, double damping=0.75)
Calculates the effective atomic polarizability of the atom atom in the molecular graph molgraph .
CDPL_MOLPROP_API void setHBondDonorType(Chem::Atom &atom, unsigned int type)
Sets the value of the MolProp::AtomProperty::H_BOND_DONOR_TYPE property of the atom atom to type.
CDPL_MOLPROP_API bool hasHydrophobicity(const Chem::Atom &atom)
Tells whether the MolProp::AtomProperty::HYDROPHOBICITY property of the atom atom is set.
CDPL_MOLPROP_API double calcTotalPartialCharge(const Chem::Atom &atom)
Calculates the total partial charge of the atom atom.
CDPL_MOLPROP_API bool isAmideCenter(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, bool c_only=false, bool db_o_only=false)
Tells whether the atom atom is the center of an amide group in the molecular graph molgraph.
CDPL_MOLPROP_API bool isHBondAcceptor(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Tells whether the atom atom acts as an H-bond acceptor in the molecular graph molgraph.
CDPL_MOLPROP_API std::size_t getAromaticBondCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the number of aromatic bonds incident to the atom atom in the molecular graph molgraph.
CDPL_MOLPROP_API std::size_t getIUPACGroup(const Chem::Atom &atom)
Returns the IUPAC group number of the chemical element associated with the atom atom.
CDPL_MOLPROP_API std::size_t calcValence(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Calculates the total valence of the atom atom in the molecular graph molgraph (explicit valence plus ...
CDPL_MOLPROP_API std::size_t getPeriod(const Chem::Atom &atom)
Returns the period of the chemical element associated with the atom atom.
CDPL_MOLPROP_API double getPEOESigmaCharge(const Chem::Atom &atom)
Returns the value of the MolProp::AtomProperty::PEOE_SIGMA_CHARGE property of the atom atom.
CDPL_MOLPROP_API double getVdWRadius(const Chem::Atom &atom)
Returns the Van der Waals radius of the chemical element associated with the atom atom.
CDPL_MOLPROP_API bool isPlanarNitrogen(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Tells whether the atom atom is a planar nitrogen in the molecular graph molgraph.
CDPL_MOLPROP_API bool isInvertibleNitrogen(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Tells whether the atom atom is an invertible (pyramidal, non-aromatic, non-amide) nitrogen in the mol...
CDPL_MOLPROP_API std::size_t getAtomCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, unsigned int type, bool strict=true)
Returns the number of neighbors of the atom atom in the molecular graph molgraph (including implicit ...
CDPL_MOLPROP_API void clearHydrophobicity(Chem::Atom &atom)
Clears the value of the MolProp::AtomProperty::HYDROPHOBICITY property of the atom atom.
CDPL_MOLPROP_API unsigned int getHBondAcceptorType(const Chem::Atom &atom)
Returns the value of the MolProp::AtomProperty::H_BOND_ACCEPTOR_TYPE property of the atom atom.
CDPL_MOLPROP_API void setMHMOPiCharge(Chem::Atom &atom, double charge)
Sets the value of the MolProp::AtomProperty::MHMO_PI_CHARGE property of the atom atom to charge.
CDPL_MOLPROP_API bool isInRingOfSize(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, std::size_t size)
Tells whether the atom atom is a member of a ring of size size in the molecular graph molgraph.
CDPL_MOLPROP_API bool isMetal(const Chem::Atom &atom)
Tells whether the chemical element associated with the atom atom is a metal.
CDPL_MOLPROP_API double calcLonePairElectronegativity(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Calculates the lone-pair electronegativity of the atom atom in the molecular graph molgraph.
CDPL_MOLPROP_API std::size_t getBondCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the total number of bonds incident to the atom atom in the molecular graph molgraph (includin...
CDPL_MOLPROP_API double getHydrophobicity(const Chem::Atom &atom)
Returns the value of the MolProp::AtomProperty::HYDROPHOBICITY property of the atom atom.
CDPL_MOLPROP_API std::size_t getExplicitAtomCount(const Chem::AtomContainer &cntnr)
Returns the total number of explicit atoms in cntnr.
CDPL_MOLPROP_API bool hasPEOESigmaCharge(const Chem::Atom &atom)
Tells whether the MolProp::AtomProperty::PEOE_SIGMA_CHARGE property of the atom atom is set.
CDPL_MOLPROP_API std::size_t getRotatableBondCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, bool h_rotors=false, bool ring_bonds=false, bool amide_bonds=false)
Returns the number of rotatable bonds incident to the atom atom in the molecular graph molgraph.
CDPL_MOLPROP_API unsigned int getHBondDonorType(const Chem::Atom &atom)
Returns the value of the MolProp::AtomProperty::H_BOND_DONOR_TYPE property of the atom atom.
CDPL_MOLPROP_API bool isNonMetal(const Chem::Atom &atom)
Tells whether the chemical element associated with the atom atom is a non-metal.
CDPL_MOLPROP_API bool isHBondDonor(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Tells whether the atom atom acts as an H-bond donor in the molecular graph molgraph.
CDPL_MOLPROP_API std::size_t getRingAtomCount(const Chem::AtomContainer &cntnr)
Returns the number of ring atoms in cntnr.
CDPL_MOLPROP_API void clearPEOESigmaCharge(Chem::Atom &atom)
Clears the value of the MolProp::AtomProperty::PEOE_SIGMA_CHARGE property of the atom atom.
CDPL_MOLPROP_API bool isSpiroCenter(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Tells whether the atom atom is a spiro center in the molecular graph molgraph.
CDPL_MOLPROP_API bool isAmideNitrogen(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph, bool c_only=false, bool db_o_only=false)
Tells whether the atom atom is the nitrogen of an amide group in the molecular graph molgraph.
CDPL_MOLPROP_API bool isInRing(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Tells whether the atom atom is a member of any ring in the molecular graph molgraph.
CDPL_MOLPROP_API std::size_t getNumContainingSSSRRings(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the number of SSSR rings of the molecular graph molgraph that contain the atom atom.
CDPL_MOLPROP_API double getAtomicWeight(const Chem::Atom &atom)
Returns the standard atomic weight of the chemical element associated with the atom atom.
CDPL_MOLPROP_API double getMHMOPiCharge(const Chem::Atom &atom)
Returns the value of the MolProp::AtomProperty::MHMO_PI_CHARGE property of the atom atom.
CDPL_MOLPROP_API bool isHalogen(const Chem::Atom &atom)
Tells whether the chemical element associated with the atom atom is a halogen.
CDPL_MOLPROP_API bool hasHBondDonorType(const Chem::Atom &atom)
Tells whether the MolProp::AtomProperty::H_BOND_DONOR_TYPE property of the atom atom is set.
CDPL_MOLPROP_API double getPEOESigmaElectronegativity(const Chem::Atom &atom)
Returns the value of the MolProp::AtomProperty::PEOE_SIGMA_ELECTRONEGATIVITY property of the atom ato...
CDPL_MOLPROP_API bool isTransitionMetal(const Chem::Atom &atom)
Tells whether the chemical element associated with the atom atom is a transition metal.
CDPL_MOLPROP_API const std::string & getElementName(const Chem::Atom &atom)
Returns the element name of the chemical element associated with the atom atom.
CDPL_MOLPROP_API double getHybridPolarizability(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the hybridization state-dependent atomic polarizability of the atom atom in the molecular gra...
CDPL_MOLPROP_API std::size_t getRingBondCount(const Chem::Atom &atom, const Chem::MolecularGraph &molgraph)
Returns the number of ring bonds incident to the atom atom in the molecular graph molgraph.
The namespace of the Chemical Data Processing Library.