ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
Parameters for four-body angular potential (dihedral-angle potentials). More...
#include <dihedral.hpp>
Public Member Functions | |
double | cutoff () const |
DihedralBond (int mult, double bend, double phase) | |
std::optional< std::tuple< Utils::Vector3d, Utils::Vector3d, Utils::Vector3d, Utils::Vector3d > > | forces (Utils::Vector3d const &v12, Utils::Vector3d const &v23, Utils::Vector3d const &v34) const |
Compute the four-body dihedral interaction force. | |
std::optional< double > | energy (Utils::Vector3d const &v12, Utils::Vector3d const &v23, Utils::Vector3d const &v34) const |
Compute the four-body dihedral interaction energy. | |
Public Attributes | |
double | mult |
double | bend |
double | phase |
Static Public Attributes | |
static constexpr int | num = 3 |
Parameters for four-body angular potential (dihedral-angle potentials).
Definition at line 41 of file dihedral.hpp.
|
inline |
Definition at line 50 of file dihedral.hpp.
|
inline |
Definition at line 46 of file dihedral.hpp.
|
inline |
Compute the four-body dihedral interaction energy.
The energy doesn't have any singularity if the angle phi is well-defined.
[in] | v12 | Vector from p1 to p2 |
[in] | v23 | Vector from p2 to p3 |
[in] | v34 | Vector from p3 to p4 |
Definition at line 187 of file dihedral.hpp.
References bend, calc_dihedral_angle(), mult, and phase.
|
inline |
Compute the four-body dihedral interaction force.
The forces have a singularity at \( \phi = 0 \) and \( \phi = \pi \) (see [40] page 592).
[in] | v12 | Vector from p1 to p2 |
[in] | v23 | Vector from p2 to p3 |
[in] | v34 | Vector from p3 to p4 |
p2
, p1
, p3
Definition at line 134 of file dihedral.hpp.
References bend, calc_dihedral_angle(), mult, phase, TINY_SIN_VALUE, and vector_product().
double DihedralBond::bend |
Definition at line 43 of file dihedral.hpp.
Referenced by DihedralBond(), energy(), and forces().
double DihedralBond::mult |
Definition at line 42 of file dihedral.hpp.
Referenced by DihedralBond(), energy(), and forces().
|
staticconstexpr |
Definition at line 48 of file dihedral.hpp.
double DihedralBond::phase |
Definition at line 44 of file dihedral.hpp.
Referenced by DihedralBond(), energy(), and forces().