29 #ifndef CDPL_FORCEFIELD_MMFF94STRETCHBENDINTERACTION_HPP
30 #define CDPL_FORCEFIELD_MMFF94STRETCHBENDINTERACTION_HPP
62 unsigned int sb_type_idx,
double ref_angle,
double ref_length1,
double ref_length2,
63 double ijk_force_const,
double kji_force_const):
64 termAtom1Idx(term_atom1_idx),
65 ctrAtomIdx(ctr_atom_idx), termAtom2Idx(term_atom2_idx),
66 sbTypeIdx(sb_type_idx), refAngle(ref_angle), refLength1(ref_length1), refLength2(ref_length2),
67 ijkForceConst(ijk_force_const), kjiForceConst(kji_force_const) {}
138 return ijkForceConst;
147 return kjiForceConst;
205 std::size_t termAtom1Idx;
206 std::size_t ctrAtomIdx;
207 std::size_t termAtom2Idx;
208 unsigned int sbTypeIdx;
212 double ijkForceConst;
213 double kjiForceConst;
Stores paramters for a single MMFF94 stretch-bend coupling interaction.
Definition: MMFF94StretchBendInteraction.hpp:46
std::size_t getTerminalAtom2Index() const
Returns the zero-based index of the second terminal atom k.
Definition: MMFF94StretchBendInteraction.hpp:91
MMFF94StretchBendInteraction(std::size_t term_atom1_idx, std::size_t ctr_atom_idx, std::size_t term_atom2_idx, unsigned int sb_type_idx, double ref_angle, double ref_length1, double ref_length2, double ijk_force_const, double kji_force_const)
Constructs the stretch-bend interaction parameter set.
Definition: MMFF94StretchBendInteraction.hpp:61
double getKJIForceConstant() const
Returns the force constant coupling j-k bond stretching with the central angle.
Definition: MMFF94StretchBendInteraction.hpp:145
std::size_t getCenterAtomIndex() const
Returns the zero-based index of the central atom j.
Definition: MMFF94StretchBendInteraction.hpp:82
double getReferenceLength1() const
Returns the reference length of bond i-j.
Definition: MMFF94StretchBendInteraction.hpp:172
std::size_t getTerminalAtom1Index() const
Returns the zero-based index of the first terminal atom i.
Definition: MMFF94StretchBendInteraction.hpp:73
double getReferenceAngle() const
Returns the reference angle.
Definition: MMFF94StretchBendInteraction.hpp:154
std::size_t getAtom1Index() const
Returns the zero-based index of the first terminal atom (alias for getTerminalAtom1Index()).
Definition: MMFF94StretchBendInteraction.hpp:100
std::size_t getAtom2Index() const
Returns the zero-based index of the central atom (alias for getCenterAtomIndex()).
Definition: MMFF94StretchBendInteraction.hpp:109
double getReferenceLength2() const
Returns the reference length of bond j-k.
Definition: MMFF94StretchBendInteraction.hpp:190
void setReferenceAngle(double angle)
Sets the reference angle.
Definition: MMFF94StretchBendInteraction.hpp:163
unsigned int getStretchBendTypeIndex() const
Returns the MMFF94 stretch-bend type index.
Definition: MMFF94StretchBendInteraction.hpp:127
void setReferenceLength1(double length)
Sets the reference length of bond i-j.
Definition: MMFF94StretchBendInteraction.hpp:181
std::size_t getAtom3Index() const
Returns the zero-based index of the second terminal atom (alias for getTerminalAtom2Index()).
Definition: MMFF94StretchBendInteraction.hpp:118
void setReferenceLength2(double length)
Sets the reference length of bond j-k.
Definition: MMFF94StretchBendInteraction.hpp:199
double getIJKForceConstant() const
Returns the force constant coupling i-j bond stretching with the central angle.
Definition: MMFF94StretchBendInteraction.hpp:136
VectorNorm2< E >::ResultType length(const VectorExpression< E > &e)
Returns the length (L2 norm) of the vector expression e (alias of norm2()).
Definition: VectorExpression.hpp:1129
The namespace of the Chemical Data Processing Library.