![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Calculator that uses the Partial Equalization of Orbital Electronegativities (PEOE) method of Gasteiger and Marsili to compute sigma atomic charges and electronegativities of a molecular graph. More...
#include <PEOESigmaChargeCalculator.hpp>
Public Types | |
| typedef std::shared_ptr< PEOESigmaChargeCalculator > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated PEOESigmaChargeCalculator instances. More... | |
Public Member Functions | |
| PEOESigmaChargeCalculator () | |
Constructs the PEOESigmaChargeCalculator instance. More... | |
| PEOESigmaChargeCalculator (const PEOESigmaChargeCalculator &)=delete | |
| PEOESigmaChargeCalculator (const Chem::MolecularGraph &molgraph) | |
Constructs the PEOESigmaChargeCalculator instance and calculates the sigma charges and electronegativities of the atoms in the molecular graph molgraph by the PEOE method. More... | |
| PEOESigmaChargeCalculator & | operator= (const PEOESigmaChargeCalculator &)=delete |
| void | setNumIterations (std::size_t num_iter) |
| Allows to specify the number of charge shifting iterations that have to be performed. More... | |
| std::size_t | getNumIterations () const |
| Returns the number of performed charge shifting iterations. More... | |
| void | setDampingFactor (double factor) |
| Allows to specify the applied damping factor. More... | |
| double | getDampingFactor () const |
| Returns the applied damping factor. More... | |
| void | calculate (const Chem::MolecularGraph &molgraph) |
| Calculates the sigma charges and electronegativities of the atoms in the molecular graph molgraph by the PEOE method. More... | |
| double | getCharge (std::size_t idx) const |
| Returns the calculated sigma charge of the atom with index idx. More... | |
| double | getElectronegativity (std::size_t idx) const |
| Returns the calculated sigma electronegativity of the atom with index idx. More... | |
Static Public Attributes | |
| static constexpr std::size_t | DEF_NUM_ITERATIONS = 20 |
| Default number of charge-shifting iterations. More... | |
| static constexpr double | DEF_DAMPING_FACTOR = 0.48 |
| Default per-iteration damping factor. More... | |
Friends | |
| class | MHMOPiChargeCalculator |
Calculator that uses the Partial Equalization of Orbital Electronegativities (PEOE) method of Gasteiger and Marsili to compute sigma atomic charges and electronegativities of a molecular graph.
The calculation iteratively shifts partial charges between bonded atoms until the orbital electronegativities are (approximately) equalized. The number of iterations and the damping factor that controls the shift attenuation per iteration can be configured.
| typedef std::shared_ptr<PEOESigmaChargeCalculator> CDPL::MolProp::PEOESigmaChargeCalculator::SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated PEOESigmaChargeCalculator instances.
| CDPL::MolProp::PEOESigmaChargeCalculator::PEOESigmaChargeCalculator | ( | ) |
Constructs the PEOESigmaChargeCalculator instance.
|
delete |
| CDPL::MolProp::PEOESigmaChargeCalculator::PEOESigmaChargeCalculator | ( | const Chem::MolecularGraph & | molgraph | ) |
Constructs the PEOESigmaChargeCalculator instance and calculates the sigma charges and electronegativities of the atoms in the molecular graph molgraph by the PEOE method.
| molgraph | The molecular graph for which to perform the calculations. |
|
delete |
| void CDPL::MolProp::PEOESigmaChargeCalculator::setNumIterations | ( | std::size_t | num_iter | ) |
Allows to specify the number of charge shifting iterations that have to be performed.
| num_iter | The number of iterations to perform. |
| std::size_t CDPL::MolProp::PEOESigmaChargeCalculator::getNumIterations | ( | ) | const |
Returns the number of performed charge shifting iterations.
| void CDPL::MolProp::PEOESigmaChargeCalculator::setDampingFactor | ( | double | factor | ) |
Allows to specify the applied damping factor.
| factor | The damping factor to apply. |
| double CDPL::MolProp::PEOESigmaChargeCalculator::getDampingFactor | ( | ) | const |
Returns the applied damping factor.
| void CDPL::MolProp::PEOESigmaChargeCalculator::calculate | ( | const Chem::MolecularGraph & | molgraph | ) |
Calculates the sigma charges and electronegativities of the atoms in the molecular graph molgraph by the PEOE method.
| molgraph | The molecular graph for which to perform the calculations. |
| double CDPL::MolProp::PEOESigmaChargeCalculator::getCharge | ( | std::size_t | idx | ) | const |
Returns the calculated sigma charge of the atom with index idx.
| idx | The index of the atom for which to return the charge. |
| Base::IndexError | If idx is not in the range [0, NA - 1] where NA is the number of atoms of the molecular graph for which the calculations have been performed. |
| double CDPL::MolProp::PEOESigmaChargeCalculator::getElectronegativity | ( | std::size_t | idx | ) | const |
Returns the calculated sigma electronegativity of the atom with index idx.
| idx | The index of the atom for which to return the electronegativity. |
| Base::IndexError | If idx is not in the range [0, NA - 1] where NA is the number of atoms of the molecular graph for which the calculations have been performed. |
|
friend |
|
staticconstexpr |
Default number of charge-shifting iterations.
|
staticconstexpr |
Default per-iteration damping factor.