atomistics.calculators.lammps.filecalculator.optimize_positions_with_lammpsfile

atomistics.calculators.lammps.filecalculator.optimize_positions_with_lammpsfile#

atomistics.calculators.lammps.filecalculator.optimize_positions_with_lammpsfile(structure: Atoms, potential_dataframe: DataFrame, working_directory: str, executable_function: Callable[[str], Any], min_style: str = 'cg', etol: float = 0.0, ftol: float = 0.0001, maxiter: int = 100000, maxeval: int = 10000000, thermo: int = 10) Atoms[source]#

Relax atomic positions with LAMMPS using file-based I/O (cell fixed).

Parameters:
  • structure (Atoms) – The input structure.

  • potential_dataframe (pandas.DataFrame) – DataFrame with "Species" and "Config" columns.

  • working_directory (str) – Directory for LAMMPS input/output files.

  • executable_function (Callable[[str], Any]) – Callable that runs LAMMPS in the given directory.

  • min_style (str) – LAMMPS minimisation style. Defaults to "cg".

  • etol (float) – Energy tolerance for minimisation. Defaults to 0.0.

  • ftol (float) – Force tolerance for minimisation 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.

Returns:

A copy of the input structure with relaxed atomic positions.

Return type:

Atoms