23 throw std::runtime_error(
"ERROR: Ewald truncation method 0 "
24 "(Jackson) requires precision < 1.0");
26 if ( params.
eta <= 0.0 )
27 throw std::runtime_error(
"ERROR: Ewald screening parameter eta is "
28 "not positive, is the unit cell volume "
45 return 1.0 / sqrt(2.0 * M_PI) * pow(
volume, 1.0 / 3.0);
49 double const prec)
const
51 return sqrt(-2.0 * log(prec)) * eta;
55 double const prec)
const
57 return sqrt(-2.0 * log(prec)) / eta;
double calculateEta() const
bool newCutoffsWerePublished
void calculateParameters(EwaldGlobalSettings const &settings, EwaldStructureData const &sData, EwaldParameters ¶ms) override
double calculateRCut(double const eta, double const prec) const
double calculateKCut(double const eta, double const prec) const
bool publishedNewCutoffs() override
double rCut
Cutoff in real space.
double eta
Width of the gaussian screening charges.
double kCut
Cutoff in reciprocal space.