30#include "system/System.hpp"
53static std::pair<double, unsigned>
59#ifdef ESPRESSO_LENNARD_JONES
72#ifdef ESPRESSO_LENNARD_JONES_GENERIC
77#ifdef ESPRESSO_SMOOTH_STEP
82#ifdef ESPRESSO_HERTZIAN
87#ifdef ESPRESSO_GAUSSIAN
92#ifdef ESPRESSO_BMHTF_NACL
102#ifdef ESPRESSO_BUCKINGHAM
107#ifdef ESPRESSO_SOFT_SPHERE
121#ifdef ESPRESSO_LJCOS2
126#ifdef ESPRESSO_GAY_BERNE
131#ifdef ESPRESSO_TABULATED
150 for (
auto &data : m_nonbonded_ia_params) {
153 data->active_pair_mask = mask;
157 (data->thole.scaling_coeff != 0.
and data->thole.q1q2 != 0.);
168 for (
auto &data : m_nonbonded_ia_params) {
void recalc_maximal_cutoffs()
Recalculate cutoff of each interaction struct.
void on_non_bonded_ia_change() const
Notify system that non-bonded interactions changed.
double maximal_cutoff() const
Get maximal cutoff.
auto any_thole_configured() const
Whether any type pair has Thole damping configured.
cudaStream_t stream[1]
CUDA streams for parallel computing on CPU and GPU.
constexpr double inactive_cutoff
Special cutoff value for an inactive interaction.
static void consider(double &max_cut_current, unsigned &mask, PairPotential p, double sub_cutoff)
static std::pair< double, unsigned > recalc_maximal_cutoff(IA_parameters const &data, System::System const &system)
Various procedures concerning interactions between particles.
PairPotential
Bit positions in IA_parameters::active_pair_mask.
DEVICE_QUALIFIER constexpr unsigned pair_potential_bit(PairPotential p)
Bitmask for a pair potential.
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
Parameters for non-bonded interactions.
Gaussian_Parameters gaussian
GayBerne_Parameters gay_berne
SoftSphere_Parameters soft_sphere
SmoothStep_Parameters smooth_step
Hertzian_Parameters hertzian
Buckingham_Parameters buckingham
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const
double max_cutoff() const