MPMorphMDMaker¶
- class atomate2.common.flows.mpmorph.MPMorphMDMaker(production_md_maker, name='Base MPMorph MD', equilibrium_volume_maker=None, quench_maker=None)[source]¶
Bases:
Maker
Base MPMorph flow for amorphous solid equilibration.
This flow uses NVT molecular dynamics to: (1 - optional) Determine the equilibrium volume of an amorphous
structure via EOS fit.
- (2 - optional) Quench the equilibrium volume structure from a higher
temperature down to a lower desired “production” temperature.
Run a production, longer-time MD run in NVT. The production run can be broken up into smaller steps to ensure the simulation does not hit wall time limits.
Check atomate2.vasp.flows.mpmorph for MPMorphVaspMDMaker
- Parameters:
name (str) – Name of the flows produced by this maker.
equilibrium_volume_maker (EquilibriumVolumeMaker) – MDMaker to generate the equilibrium volumer searcher
production_md_maker (Maker) – MDMaker to generate the production run(s)
quench_maker (SlowQuenchMaker or FastQuenchMaker or None) –
- SlowQuenchMaker - MDMaker that quenches structure from
high to low temperature
- FastQuenchMaker - DoubleRelaxMaker + Static that
”quenches” structure at 0K
- make(structure, prev_dir=None)[source]¶
Create an MPMorph equilibration workflow.
Converegence and quench steps are optional, and may be used to equilibrate the cell volume (useful for high temperature production runs of structures extracted from Materials Project) and to quench the structure from high to low temperature (e.g. amorphous structures), respectively.
- Parameters:
structure (.Structure) – A pymatgen structure object.
prev_dir (str or Path or None) – A previous VASP calculation directory to copy output files from.
- Returns:
A flow containing series of molecular dynamics run (and relax+static).
- Return type:
Flow
- abstract classmethod from_temperature_and_steps(temperature, n_steps_convergence=5000, n_steps_production=10000, end_temp=None, md_maker=None, quench_maker=None)[source]¶
Create an MPMorph flow from a temperature and number of steps.
This is a convenience class constructor. The user need only input the desired temperature and steps for convergence / production MD runs.
- Parameters:
temperature (float) – The (starting) temperature
n_steps_convergence (int = 5000) – The number of steps used in MD runs for equilibrating structures.
n_steps_production (int = 10000) – The number of steps used in MD production runs.
end_temp (float or None) – If a float, the temperature to ramp down to in the production run. If None (default), set to temperature.
base_md_maker (Maker) – The Maker used to start MD runs.
quench_maker (SlowQuenchMaker or FastQuenchMaker or None) –
- SlowQuenchMaker - MDMaker that quenches structure from
high to low temperature
- FastQuenchMaker - DoubleRelaxMaker + Static that
”quenches” structure at 0K
md_maker (Maker)
- Return type:
Self