Skip to main content

Crate ewald

Crate ewald 

Source
Expand description

For Smooth-Particle-Mesh Ewald; a standard approximation for Coulomb forces in MD. We use this to handle periodic boundary conditions (e.g. of the solvent) properly. See the Readme for details. The API is split into two main parts: A standalone function to calculate short-range force, and a struct with forces methods for long-range reciprical forces.

Re-exports§

pub use short_range::*;

Modules§

short_range
This module contains code for the short-range component of the Coulomb force.

Structs§

PmeRecip
Initialize this once for the application, or once per step. Note:

Functions§

fft3d_c2r
Complex-to-real inverse 3D FFT.
fft3d_r2c
Real-to-Complex forward 3D FFT. This approach uses less memory, and is probably faster, than using complex to complex transform (Factor of 2 for the memory).
force_correction
For flexible molecules, computes the correction term. May be useful for scaling corrections, e.g. bonded scaling and exlusions? todo: This may not be suitable for general use.
get_grid_n
A utility function to get the (nx, ny, nz) tuple of plan dimensions based on grid dimensions, and mesh spacing. A mesh spacing of 1Å is a good starting point. Pass this into the PmeRecip::new() constructor, or set these values up with some other approach.