DebyeHuckel
-
class DebyeHuckel : public feasst::ModelTwoBody
Compute energy between two point charges, \(q_i\) and \(q_j\) with a Debye-Huckel potential.
\(U = q_i q_j \chi \exp(-\kappa r) / \epsilon r\)
where \(r\) is the separation distance, \(\kappa\) is the inverse of the Debye screening length, \(\epsilon\) is the dilectric constant (dimensionless), and \(\chi\) is the charge conversion factor assuming the following units:
length: Angstroms
energy: kJ/mol
charge: elementary
An optional smoothing_distance linearly interpolates the energy to zero at the cutoff starting at a distance of cutoff - smoothing_distance.
Avoid singularity by returning a large, positive number when \(r\) is near zero.
Arguments
kappa: as described above.
dielectric: as described above.
smoothing_distance: as described above. Disabled when negative (default: -1).
Public Functions
-
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.