Sums over infinite lattices have difficult convergence properties. This is usually handled by breaking the sum into a short-ranged and long-ranged part and transforming them differently into rapidly converging sums.
- ewald_sum.py - a simple implementation of Ewald sums
- PolynomialFit - Fitting to a polynomial, as part of the optimized long-ranged breakup.