FreeEnergy
Calculation class
- class FreeEnergy(model: str | Path | IOBase | DataModelDict | None = None, name: str | None = None, database=None, params: str | Path | IOBase | dict = None, **kwargs: any)
Bases:
Calculation
Class for managing dynamic relaxations
- calc_inputs() dict
Builds calculation inputs from the class’s attributes
- property equilsteps: int
The number of ignored equilibration steps at the beginning of simulations
- Type:
- property helmholtz_reference: float
The Helmholtz free energy/atom for the reference Einstein solid.
- Type:
- load_model(model: str | DataModelDict, name: str | None = None)
Loads record contents from a given model.
- load_parameters(params: dict | str | IOBase, key: str | None = None)
Reads in and sets calculation parameters.
- master_prepare_inputs(branch: str = 'main', **kwargs: any) dict
Utility method that build input parameters for prepare according to the workflows used by the NIST Interatomic Potentials Repository. In other words, transforms inputs from master_prepare into inputs for prepare.
- Parameters:
branch (str, optional) – Indicates the workflow branch to prepare calculations for. Default value is ‘main’.
**kwargs (any) – Any parameter modifications to make to the standard workflow prepare scripts.
- Returns:
params – The full set of prepare parameters based on the workflow branch
- Return type:
- metadata() dict
Generates a dict of simple metadata values associated with the record. Useful for quickly comparing records and for building pandas.DataFrames for multiple records of the same style.
- property multikeys: list
Calculation key sets that can have multiple values during prepare.
- Type:
- process_results(results_dict: dict)
Processes calculation results and saves them to the object’s results attributes.
- Parameters:
results_dict (dict) – The dictionary returned by the calc() method.
- set_values(name: str | None = None, **kwargs: any)
Set calculation values directly. Any terms not given will be set or reset to the calculation’s default values.
- Parameters:
name (str, optional) – The name to assign to the calculation. By default, this is set as the calculation’s key.
temperature (float, optional) – The temperature to run at.
spring_constants (float, array-like object or None, optional) – The Einstein solid spring constants to assign to each atom type. If None (default), then a separate simulation will estimate them using mean squared displacements.
equilsteps (int, optional) – The number of equilibration timesteps at the beginning of simulations to ignore before evaluations. This is used at the beginning of both the spring constant estimate and before each thermo switch run.
switchsteps (int, optional) – The number of integration steps to perform during the two switch runs.
springsteps (int, optional) – The number of integration steps to perform for the spring constants estimation, which is only done if spring_constants is None.
pressure (float, optional) – A value of pressure to use for computing the Gibbs free energy from the Helmholtz free energy. NOTE: this is not used to equilibrate the system during this calculation!
randomseed (int, optional) – Random number seed used by LAMMPS.
**kwargs (any, optional) – Any keyword parameters supported by the set_values() methods of the parent Calculation class and the subset classes.
- property spring_constants: ndarray | None
The Einstein spring constants for each temperature
- Type:
numpy.ndarray or None
- property springsteps: int
The number of steps to perform to evaluate the spring constants.
- Type: