ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
TabulatedAngleBond Struct Reference

Parameters for 3-body tabulated potential. More...

#include <bonded_tab.hpp>

+ Inheritance diagram for TabulatedAngleBond:
+ Collaboration diagram for TabulatedAngleBond:

Public Member Functions

double cutoff () const
 
 TabulatedAngleBond (double min, double max, std::vector< double > const &energy, std::vector< double > const &force)
 
std::tuple< Utils::Vector3d, Utils::Vector3d, Utils::Vector3dforces (Utils::Vector3d const &vec1, Utils::Vector3d const &vec2) const
 Compute the three-body angle interaction force.
 
double energy (Utils::Vector3d const &vec1, Utils::Vector3d const &vec2) const
 Compute the three-body angle interaction energy.
 
- Public Member Functions inherited from TabulatedBond
 TabulatedBond (double min, double max, std::vector< double > const &energy, std::vector< double > const &force)
 Set the parameters of a bonded tabulated potential.
 

Static Public Attributes

static constexpr int num = 2
 

Additional Inherited Members

- Public Attributes inherited from TabulatedBond
std::shared_ptr< TabulatedPotentialpot
 

Detailed Description

Parameters for 3-body tabulated potential.

Definition at line 92 of file bonded_tab.hpp.

Constructor & Destructor Documentation

◆ TabulatedAngleBond()

TabulatedAngleBond::TabulatedAngleBond ( double  min,
double  max,
std::vector< double > const &  energy,
std::vector< double > const &  force 
)
inline

Definition at line 97 of file bonded_tab.hpp.

References Utils::pi(), TabulatedBond::pot, and ROUND_ERROR_PREC.

Member Function Documentation

◆ cutoff()

double TabulatedAngleBond::cutoff ( ) const
inline

Definition at line 93 of file bonded_tab.hpp.

◆ energy()

double TabulatedAngleBond::energy ( Utils::Vector3d const &  vec1,
Utils::Vector3d const &  vec2 
) const
inline

Compute the three-body angle interaction energy.

It is assumed that the potential is tabulated for all angles between 0 and Pi.

Parameters
[in]vec1Vector from central particle to left particle.
[in]vec2Vector from central particle to right particle.

Definition at line 200 of file bonded_tab.hpp.

References calc_cosine(), and TabulatedBond::pot.

◆ forces()

std::tuple< Utils::Vector3d, Utils::Vector3d, Utils::Vector3d > TabulatedAngleBond::forces ( Utils::Vector3d const &  vec1,
Utils::Vector3d const &  vec2 
) const
inline

Compute the three-body angle interaction force.

Parameters
[in]vec1Vector from central particle to left particle.
[in]vec2Vector from central particle to right particle.
Returns
Forces on the second, first and third particles, in that order.

Definition at line 175 of file bonded_tab.hpp.

References angle_generic_force(), TabulatedBond::pot, and Utils::sqr().

Member Data Documentation

◆ num

constexpr int TabulatedAngleBond::num = 2
staticconstexpr

Definition at line 95 of file bonded_tab.hpp.


The documentation for this struct was generated from the following file: