41 using CoulombScafacos::CoulombScafacos;
42 using ScafacosContext::ScafacosContext;
49 run(charges, positions, fields, potentials);
50 return 0.5 *
prefactor * boost::inner_product(charges, potentials, 0.);
55 run(charges, positions, fields, potentials);
60 return ScafacosContext::pair_force(dist);
64 return ScafacosContext::pair_energy(dist);
68 return ScafacosContext::set_near_field_delegation(delegate);
72 return ScafacosContext::get_near_field_delegation();
75 double get_r_cut()
const override {
return ScafacosContext::r_cut(); }
79 std::vector<double> positions, charges;
81 std::vector<double> fields, potentials;
84 double time_r_cut(
double r_cut);
89 void set_r_cut_and_tune(
double r_cut) {
92 ScafacosContext::tune(charges, positions);
ScafacosContext implements the interface of the ScaFaCoS bridge.