Molassembler  3.0.0
Molecule graph and conformer library
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
DistanceGeometry.h
Go to the documentation of this file.
1 
11 #ifndef INCLUDE_MOLASSEMBLER_DISTANCE_GEOMETRY_H
12 #define INCLUDE_MOLASSEMBLER_DISTANCE_GEOMETRY_H
13 
15 #include "Molassembler/Types.h"
16 
17 #include <vector>
18 #include <array>
19 
20 namespace Scine {
21 namespace Molassembler {
22 
24 namespace DistanceGeometry {
25 
33  using AtomListType = std::vector<AtomIndex>;
34  using SiteSequence = std::array<AtomListType, 4>;
35 
37  SiteSequence sites;
39  double lower;
41  double upper;
46  double weight = 1.0;
47 
48  ChiralConstraint(SiteSequence passSites, double passLower, double passUpper);
49 
50  bool targetVolumeIsZero() const {
51  return lower + upper < 1e-4;
52  }
53 };
54 
62  using AtomListType = std::vector<AtomIndex>;
63  using SiteSequence = std::array<AtomListType, 4>;
64 
66  SiteSequence sites;
68  double lower;
70  double upper;
71 
72  DihedralConstraint(SiteSequence passSites, double passLower, double passUpper);
73 };
74 
75 } // namespace DistanceGeometry
76 } // namespace Molassembler
77 } // namespace Scine
78 
79 #endif
double upper
Upper bound on signed volume.
Definition: DistanceGeometry.h:41
Defines basic types widely shared across the project.
Data struct representing a dihedral constraint.
Definition: DistanceGeometry.h:61
double lower
Lower bound on signed volume.
Definition: DistanceGeometry.h:39
double lower
Lower bound on dihedral angle.
Definition: DistanceGeometry.h:68
SiteSequence sites
Site definition sequence (odd permutations invert sign)
Definition: DistanceGeometry.h:66
Data struct for storing a numeric interval.
SiteSequence sites
Site definition sequence (odd permutations invert sign)
Definition: DistanceGeometry.h:37
Data struct representing a chiral constraint.
Definition: DistanceGeometry.h:32
double weight
Weight of the chiral constraint.
Definition: DistanceGeometry.h:46
double upper
Upper bound on dihedral angle.
Definition: DistanceGeometry.h:70