Fork me on GitHub


The Numerics module includes support for:

  • FFTs
  • Limited memory BFGS optimization
  • b-Splines
  • Erf and Erfc
  • Tensor recursions

Fast Fourier Transformation

The FFT classes implement:

  • 1D Real to Complex
  • 1D Complex to Complex
  • 3D Real to Complex
  • 3D Complex to Complex
  • 3D Real to Complex Convolutions
  • 3D Complex to Complex Convolutions

The 1D methods compute the FFT of real or complex, double precision data of arbitrary length n using a mixed radix method that has special methods to handle factors of [2, 3, 4, 5, 6, 7] and a general method for larger prime factors.

The 3D methods are serial or SMP parallel. The convolutions are designed for the reciprocal space portion of Particle Mesh Ewald summation.

L-BFGS Optimization

The limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) algorithm is appropriate for large-scale multidimensional unconstrained optimization problems. It is derived from Robert Dodier's Java translation of orignal FORTRAN code by Jorge Nocedal.