Go to the source code of this file.
Functions | |
constexpr double | calculateATPotential (const std::array< double, 3 > &posI, const std::array< double, 3 > &posJ, const std::array< double, 3 > &posK, double cutoff, double nu) |
Calculates the potential energy between particles i, j and k using the Axilrod Teller potential. | |
constexpr std::array< std::array< double, 3 >, 3 > | calculateATForce (const std::array< double, 3 > &posI, const std::array< double, 3 > &posJ, const std::array< double, 3 > &posK, double cutoff, double nu) |
Calculates the forces exerted on three particles using the Axilrod-Teller potential. | |
constexpr std::array< std::array< double, 3 >, 3 > | calculateATVirials (const std::array< double, 3 > &posI, const std::array< double, 3 > &posJ, const std::array< double, 3 > &posK, double cutoff, double nu) |
Calculates the virial between three particles i,j,k from the Axilrod-Teller potential. | |
constexpr double | calculateATVirialTotal (const std::array< double, 3 > &posI, const std::array< double, 3 > &posJ, const std::array< double, 3 > &posK, double cutoff, double nu) |
Calculates the sum of all components of the virial between particle i, j, k using the Axilrod-Teller potential. | |
constexpr std::array< double, 3 > | calculateATVirialTotalPerParticle (const std::array< double, 3 > &posI, const std::array< double, 3 > &posJ, const std::array< double, 3 > &posK, double cutoff, double nu) |
Returns the sum of all components of the virial for each particle i, j, k individually using the Axilrod-Teller potential. | |
A simple reference implementation of the axilrod teller potential to calculate expected forces
|
constexpr |
Calculates the forces exerted on three particles using the Axilrod-Teller potential.
posI | coordinate of the first particle |
posJ | coordinate of the second particle |
posK | coordinate of the third particle |
cutoff | the cutoff distance in which we consider interactions |
nu | Axilrod-Teller Factor |
|
constexpr |
Calculates the potential energy between particles i, j and k using the Axilrod Teller potential.
Here we use the original formula with trigonometric functions.
posI | coordinate of the first particle |
posJ | coordinate of the second particle |
posK | coordinate of the third particle |
cutoff | the cutoff distance in which we consider interactions |
nu | nu value for particles |
|
constexpr |
Calculates the virial between three particles i,j,k from the Axilrod-Teller potential.
posI | coordinate of the first particle |
posJ | coordinate of the second particle |
posK | coordinate of the third particle |
cutoff | the cutoff distance in which we consider interactions |
nu | Axilrod-Teller Factor |
|
constexpr |
Calculates the sum of all components of the virial between particle i, j, k using the Axilrod-Teller potential.
posI | coordinate of the first particle |
posJ | coordinate of the second particle |
posK | coordinate of the third particle |
cutoff | the cutoff distance in which we consider interactions |
nu | Axilrod-Teller Factor |
|
constexpr |
Returns the sum of all components of the virial for each particle i, j, k individually using the Axilrod-Teller potential.
posI | coordinate of the first particle |
posJ | coordinate of the second particle |
posK | coordinate of the third particle |
cutoff | the cutoff distance in which we consider interactions |
nu | Axilrod-Teller Factor |