Methods to determine local shapes of atoms based on graph information. More...
Data Structures | |
struct | BindingSite |
Type used to represent minimal binding site information. More... | |
Functions | |
int | formalCharge (const Graph &graph, AtomIndex index) |
Calculates the formal charge on a main group-element atom. More... | |
boost::optional< Shapes::Shape > | vsepr (Utils::ElementType centerAtomType, const std::vector< BindingSite > &sites, int formalCharge) |
Applies very basic VSEPR theory to derive a shape based on graph information. More... | |
Shapes::Shape | firstOfSize (unsigned size) |
Yields the first shape of required size. More... | |
std::vector< BindingSite > | reduceToSiteInformation (const Graph &molGraph, AtomIndex index, const RankingInformation &ranking) |
Reduces a ranking to binding site information. | |
boost::optional< Shapes::Shape > | inferShape (const Graph &graph, AtomIndex index, const RankingInformation &ranking) |
Forwards inference to appropriate model depending on environment. More... | |
Variables | |
const std::map< BondType, double > | bondWeights |
Mapping of bond type to a floating-point weight. More... | |
Methods to determine local shapes of atoms based on graph information.
Shapes::Shape Scine::Molassembler::ShapeInference::firstOfSize | ( | unsigned | size | ) |
Yields the first shape of required size.
Complexity \(\Theta(1)\)
std::runtime_error | If no shapes of size exist |
int Scine::Molassembler::ShapeInference::formalCharge | ( | const Graph & | graph, |
AtomIndex | index | ||
) |
Calculates the formal charge on a main group-element atom.
Complexity \(\Theta(1)\)
graph | The graph to which the atom index belongs |
index | The atom index for which to calculate the formal charge |
boost::optional<Shapes::Shape> Scine::Molassembler::ShapeInference::inferShape | ( | const Graph & | graph, |
AtomIndex | index, | ||
const RankingInformation & | ranking | ||
) |
Forwards inference to appropriate model depending on environment.
Currently just a stub forwarding to VSEPR
boost::optional<Shapes::Shape> Scine::Molassembler::ShapeInference::vsepr | ( | Utils::ElementType | centerAtomType, |
const std::vector< BindingSite > & | sites, | ||
int | formalCharge | ||
) |
Applies very basic VSEPR theory to derive a shape based on graph information.
Complexity \(\Theta(1)\)
const std::map<BondType, double> Scine::Molassembler::ShapeInference::bondWeights |
Mapping of bond type to a floating-point weight.