ChargeScreened¶
-
class
ChargeScreened
: public feasst::ModelTwoBody¶ Compute energy between two point charges, \(q_i\) and \(q_j\) with a Gaussian screening cloud as utilized by the Ewald summation.
\(U = q_i q_j \chi erfc(\alpha r)/r\)
where \(erfc\) is the complimentary error function, \(r\) is the separation distance, and \(\chi\) is the charge conversion factor assuming the following units:
length: Angstroms
energy: kJ/mol
charge: elementary
Avoid Coulomb explosion by returning a large number when \(r\) is near zero.
Public Functions
-
ChargeScreened
(const argtype &args = argtype())¶ args:
disable_table: if true, do not use a tabular erfc (default: false).
hard_sphere_threshold: return NEAR_INFINITY when distance is less than this threshold (default: 0.1).
-
void
precompute
(const ModelParams &existing)¶ Precompute model parameters based on existing model parameters.
-
void
serialize
(std::ostream &ostr) const¶ Output a serialized version of the existing model.