Public interface to the ScaFaCoS context.
ScafacosContextBase()=default
static std::vector< std::string > available_methods()
virtual void add_long_range_forces()=0
Add long-range part of the forces to particles.
virtual ~ScafacosContextBase()=default
static void sanity_check_method(std::string const &method_name)
virtual double long_range_energy()=0
Calculate long-range part of the energy.
virtual void update_system_params()=0
Reinitialize number of particles, box shape and periodicity.
virtual void sanity_checks() const =0
virtual void update_particle_forces() const =0
Write forces back to particles.
virtual std::string get_parameters() const =0
virtual void update_particle_data()=0
Collect particle data in continuous arrays.
virtual std::string get_method() const =0