24#ifdef ESPRESSO_ELECTROSTATICS
46#error "The FFTW3 library shouldn't be visible in this translation unit"
52 std::variant<std::shared_ptr<DebyeHueckel>,
54 std::shared_ptr<CoulombP3M>,
55 std::shared_ptr<ElectrostaticLayerCorrection>,
58 std::shared_ptr<CoulombMMM1D>,
60#ifdef ESPRESSO_SCAFACOS
61 std::shared_ptr<CoulombScafacos>,
63 std::shared_ptr<ReactionField>>;
69 std::optional<ElectrostaticsActor>
solver;
83#ifdef ESPRESSO_SCAFACOS
Calculate the Debye-Hückel energy and force for a particle pair.
ELC algorithm for long-range Coulomb interactions.
ICC is a method that allows to take into account the influence of arbitrarily shaped dielectric inter...
MMM1D algorithm for long-range Coulomb interactions on the CPU.
std::variant< std::shared_ptr< ICCStar > > ElectrostaticsExtension
std::variant< std::shared_ptr< DebyeHueckel >, std::shared_ptr< CoulombP3M >, std::shared_ptr< ElectrostaticLayerCorrection >, std::shared_ptr< CoulombMMM1D >, std::shared_ptr< CoulombScafacos >, std::shared_ptr< ReactionField > > ElectrostaticsActor
P3M algorithm for long-range Coulomb interaction.
Calculate the Reaction Field energy and force for a particle pair , .
Parameters for the MMM1D electrostatic interaction.
std::optional< ElectrostaticsExtension > extension
Extension that modifies the solver behavior.
std::optional< ElectrostaticsActor > solver
Main electrostatics solver.
The electrostatic method supports pressure calculation.