43 throw std::runtime_error(
"EwaldParameters: unhandled EwaldShape");
46EwaldShape ShapeFromString(
const std::string& name) {
53 throw std::runtime_error(
"EwaldParameters: unknown shape '" + name +
65 w(ShapeToString(
shape),
"shape");
76 std::string shape_name;
77 r(shape_name,
"shape");
78 shape = ShapeFromString(shape_name);
81 if (!(
alpha > 0.0) || !(
k_max > 0.0) || !(
box.determinant() > 0.0)) {
82 throw std::runtime_error(
83 "EwaldParameters: checkpoint holds implausible Ewald parameters "
84 "(alpha, k_max and the box volume must all be positive). The "
85 "checkpoint is either from an incompatible version or corrupt.");
Charge transport classes.
Provides a means for comparing floating point numbers.
void ReadFromCpt(CheckpointReader &r)
void WriteToCpt(CheckpointWriter &w) const