atomistics.calculators.lammps.libcalculator.optimize_positions_and_volume_with_lammpslib#
- atomistics.calculators.lammps.libcalculator.optimize_positions_and_volume_with_lammpslib(structure: Atoms, potential_dataframe: DataFrame, min_style: str = 'cg', etol: float = 0.0, ftol: float = 0.0001, maxiter: int = 100000, maxeval: int = 10000000, thermo: int = 10, pressure: float | Iterable[float | None] = 0.0, vmax: float | None = None, lmp=None, **kwargs) Atoms[source]#
Relax atomic positions and cell using the LAMMPS library interface.
- Parameters:
structure (Atoms) – The input structure.
potential_dataframe (DataFrame) – DataFrame with
"Species"and"Config"columns.min_style (str) – LAMMPS minimisation style. Defaults to
"cg".etol (float) – Energy tolerance for minimisation. Defaults to
0.0.ftol (float) – Force tolerance in eV/Å. Defaults to
0.0001.maxiter (int) – Maximum number of minimisation iterations. Defaults to
100000.maxeval (int) – Maximum number of force evaluations. Defaults to
10000000.thermo (int) – Thermo output frequency. Defaults to
10.pressure (float | Iterable[float | None]) – Target pressure for
box/relaxin bar.vmax (float | None) – Maximum fractional volume change per step for
box/relax.lmp – Existing LAMMPS library instance to reuse. A new instance is created if
None.**kwargs – Additional keyword arguments forwarded to
lammps_run.
- Returns:
A copy of the input structure with relaxed positions and cell.
- Return type:
Atoms