Skip to content

Optimization

Geometry optimization with the native L-BFGS minimizer.

Quick reference

Symbol Summary Preferred for
Lbfgs Limited-memory BFGS over the Potentials compiled for a frame Geometry relaxation of small/medium structures
OptimizationReport Outcome record: converged, final_energy, final_fmax, n_steps Inspecting why a run stopped

Both live in mp.optimize, the mirror of molrs.optimize (mp.optimize.Lbfgs is molrs.optimize.Lbfgs); see the user guide for the composition (typify → PotentialCompiler(ff).compile(frame) → minimize).

  • Potential -- energy/force implementations the optimizer drives

Full API

Lbfgs

L-BFGS geometry optimizer over a force-field Potential — the mirror of molrs::optimize::Lbfgs.

Knobs live on __new__ (defaults: Rust LbfgsSettings::DEFAULT). Every door relaxes its input in place and returns the report(s).

minimize

minimize(frame)

Relax frame's atoms in place; a bool atoms.free column marks the movable atoms (fixed ones still enter every evaluation).

minimize_batch

minimize_batch(coords)

Relax a C-contiguous float64 (B, N, 3) stack in place, each structure independently; one report per structure.

minimize_coords

minimize_coords(coords)

Relax a C-contiguous float64 (N, 3) array in place, every atom free.

OptimizationReport

Outcome of a minimization (geometry optimization).