Uses of Package
ffx.numerics

Packages that use ffx.numerics
Package
Description
The Algorithms package has support for local and global optimization, molecular dynamics simulations, and calculation of free energy differences.
The Algorithms CLI package defines options for PicoCLI command line scripts.
The Dynamics package implements molecular and stochastic dynamics using a pure Java code path and via OpenMM.
The Integrators package implements integrators for molecular dynamics simulations.
The Thermostats package implements thermostats for molecular dynamics simulations.
The MC package implements a variety of Monte Carlo moves for optimization and simulation algorithms.
The Misc package contains a few miscellaneous algorithms.
The Optimize package contains local and global optimization algorithms using pure Java and OpenMM code paths.
The anneal package implements simulated annealing-based optimization, including an interface for annealing schedules and several concrete schedule implementations (linear, exponential, and flat-end) used to control temperature during optimization runs.
The manybody package implements many-body rotamer optimization infrastructure, including distance matrices, an energy expansion (self, two-body, three-body, and four-body), Dead-end elimination criteria, Goldstein elimination criteria, and supporting data structures for efficient optimization.
The Thermodynamics package computes free energy differences using Orthogonal Space Tempering (OST) sampling via pure Java or OpenMM (via Monte Carlo OST).
The Crystal package implements space group symmetry and periodic boundary condition support.
The Numerics package has support for atomic double arrays, FFTs (1D and 3D), numerical integration (1D), complex numbers, vector operations, multipole tensors, multi-dimensional optimization, special functions, splines and switching functions.
The Estimator package implements free energy estimators (e.g., Zwanzig, BAR/MBAR) and related bootstrapping and reporting utilities.
The Optimization package implements the limited-memory Broyden-Fletcher-Goldfarb-Shanno (L-BFGS) algorithm for large-scale multidimensional unconstrained optimization problems.
The Potential package implements molecular mechanics force fields with shared memory Parallel Java and via OpenMM.
The Bonded package implements bonded molecular mechanics terms such as bonds, angles, torsions, etc.
The Potential CLI package defines reusable options for PicoCLI command line scripts.
The constraint package implements holonomic constraint algorithms used during molecular dynamics and minimization, including CCMA, SETTLE, and SHAKE-style constraints (as well as charge constraints).
The Extended package is progress toward support for constant pH molecular dynamics using extended system variables (i.e. lambda dynamics on protonation).
The openmm package contains utilities to construct and run Force Field X potentials on the OpenMM platform, including system builders, custom forces, alchemical fixed-charge forces, and integrators tailored to FFX simulations.
The terms package contains analytical potential energy terms and their gradients for bonded interactions (bond, angle, stretch-bend, torsions, impropers, Urey-Bradley) and restraint terms used by Force Field X.
The Utils package implements core functionality needed for using the Potential package, such as opening and closing structure files, basic force field energy evaluations, etc.
The Real Space package implements real space structure refinement.
The UI package provides views and controllers for manipulating molecular systems.
The X-ray package implements support for X-ray and Neutron refinement.