30#include "system/System.hpp"
43[[maybe_unused]]
static void consider(
double &max_cut_current,
unsigned &mask,
45 if (sub_cutoff > 0.) {
47 if (sub_cutoff > max_cut_current) {
48 max_cut_current = sub_cutoff;
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
138 max_cut_current = std::max(max_cut_current, system.coulomb.cutoff());
141 return {max_cut_current, mask};
146 for (
auto &data : m_nonbonded_ia_params) {
149 data->active_pair_mask = mask;
155 for (
auto &data : m_nonbonded_ia_params) {
156 max_cut_nonbonded = std::max(max_cut_nonbonded, data->max_cut);
158 return max_cut_nonbonded;
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.
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.
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