Class VerletIntegrator
java.lang.Object
org.episteme.core.mathematics.analysis.ode.VerletIntegrator
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 positionsv0- Initial velocitiesacceleration- Acceleration functiondt- Time stepsteps- 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 positionsdt- Time step- Returns:
- Updated [positions, velocities] after one step
-