ConvergenceMaker¶
- class atomate2.aims.jobs.convergence.ConvergenceMaker(convergence_field, convergence_steps, name='convergence', maker=<factory>, criterion_name='energy_per_atom', epsilon=0.001)[source]¶
Bases:
Maker
Defines a convergence workflow with a maximum number of steps.
A job that performs convergence run for a given number of steps. Stops either when all steps are done, or when the convergence criterion is reached, that is when the absolute difference between the subsequent values of the convergence field is less than a given epsilon.
- Parameters:
convergence_field (str) – An input parameter that changes to achieve convergence
convergence_steps (Iterable) – An iterable of the possible values for the convergence field. If the iterable is depleted and the convergence is not reached, then the job is failed
name (str) – A name for the job
maker (.BaseAimsMaker) – A maker for the run
criterion_name (str) – A name for the convergence criterion. Must be in the run results
epsilon (float) – A difference in criterion value for subsequent runs
- make(structure, prev_dir=None, convergence_data=None, prev_output_value=None)[source]¶
Create a top-level flow controlling convergence iteration.
- Parameters:
structure (Structure or Molecule) – a structure to run a job
prev_dir (str or Path or None) – An FHI-aims calculation directory in which previous run contents are stored
convergence_data (dict or None) – The convergence information to date.
prev_output_value (float or None) – The output value being converged from the previous aims calculation.
- Return type: