Class VerletIntegrator

java.lang.Object
org.episteme.core.mathematics.analysis.ode.VerletIntegrator

public class VerletIntegrator extends Object
Verlet integration for molecular dynamics and N-body simulations.

Symplectic integrator: conserves energy over long simulations. Better for Hamiltonian systems than Runge-Kutta.

*

Reference:
Verlet, L. (1967). Computer 'experiments' on classical fluids. I. Thermodynamical properties of Lennard-Jones molecules. Physical Review, 159(1), 98.

Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Constructor Details

    • VerletIntegrator

      public VerletIntegrator()
  • Method Details

    • integrate

      public static Real[][] integrate(Real[] x0, Real[] v0, Function<Real[],Real[]> acceleration, Real dt, int steps)
      Integrate using arbitrary precision Real numbers over multiple steps.
      Parameters:
      x0 - Initial positions
      v0 - Initial velocities
      acceleration - Acceleration function
      dt - Time step
      steps - Number of steps
      Returns:
      Final [positions, velocities]
    • step

      public static Real[][] step(Real[] positions, Real[] velocities, Function<Real[],Real[]> acceleration, Real dt)
      Velocity Verlet integration step using arbitrary precision Real numbers.
      Parameters:
      positions - Current positions x[n]
      velocities - Current velocities v[n]
      acceleration - Function computing acceleration from positions
      dt - Time step
      Returns:
      Updated [positions, velocities] after one step