27#ifdef ESPRESSO_BUCKINGHAM
33 double d,
double cutoff,
34 double discont,
double shift)
35 : A{a}, B{b}, C{c}, D{d}, cut{cutoff}, discont{discont}, shift{shift} {
37 throw std::domain_error(
"Buckingham parameter 'a' has to be >= 0");
40 throw std::domain_error(
"Buckingham parameter 'b' has to be >= 0");
43 throw std::domain_error(
"Buckingham parameter 'c' has to be >= 0");
46 throw std::domain_error(
"Buckingham parameter 'd' has to be >= 0");
49 throw std::domain_error(
"Buckingham parameter 'cutoff' has to be >= 0");
Routines to calculate the Buckingham potential between particle pairs.
double buck_energy_r(double A, double B, double C, double D, double shift, double r)
Potential Energy due to a Buckingham potential between two particles at interatomic separation r grea...
double buck_force_r(double A, double B, double C, double D, double r)
Resultant Force due to a Buckingham potential between two particles at interatomic separation r great...
cudaStream_t stream[1]
CUDA streams for parallel computing on CPU and GPU.
Various procedures concerning interactions between particles.
Buckingham_Parameters()=default