Molassembler  3.0.1
Molecule graph and conformer library
BondDistance.h
Go to the documentation of this file.
1 
8 #ifndef INCLUDE_MOLASSEMBLER_BOND_DISTANCE_H
9 #define INCLUDE_MOLASSEMBLER_BOND_DISTANCE_H
10 
12 #include "Molassembler/Types.h"
13 
14 namespace Scine {
15 namespace Molassembler {
16 namespace Bond {
17 
19 static constexpr std::array<double, 7> bondOrderMap {{
20  1, 2, 3, 4, 5, 6, 0.5
21 }};
22 
24 constexpr double bondOrderCorrectionLambda = 0.1332;
25 
31  Utils::ElementType a,
32  Utils::ElementType b,
33  BondType bondType
34 );
35 
41  Utils::ElementType a,
42  Utils::ElementType b,
43  double distance
44 );
45 
46 } // namespace Bond
47 } // namespace Molassembler
48 } // namespace Scine
49 
50 #endif
Element type information classes.
double calculateBondDistance(Utils::ElementType a, Utils::ElementType b, BondType bondType)
Calculates bond distance as modeled by UFF.
constexpr double bondOrderCorrectionLambda
UFF bond distance correction constant lambda.
Definition: BondDistance.h:24
double calculateBondOrder(Utils::ElementType a, Utils::ElementType b, double distance)
Calculates bond order as modeled by UFF.
Defines basic types widely shared across the project.
BondType
Discrete bond type numeration.
Definition: Types.h:26
std::vector< unsigned > distance(AtomIndex source, const Graph &graph)
Calculates the graph distance from a single atom index to all others.