Melt-and-quench pipeline
The melt-and-quench pipeline is a 7-stage molecular dynamics workflow that transforms a crystalline input into a realistic amorphous structure.
Overview
┌───────────┐ ┌───────────┐ ┌───────┐ ┌──────────┐ ┌─────────┐ ┌──────────┐ ┌───────────┐
│ 1. Opt │───▶│ 2. Pre-eq │───▶│ 3.Melt│───▶│ 4. Hi-eq │───▶│ 5.Quench│───▶│ 6. Lo-eq │───▶│ 7. Opt │
│ 300 K │ │ 300 K │ │ →3000K│ │ 3000 K │ │ →300 K │ │ 300 K │ │ final │
└───────────┘ └───────────┘ └───────┘ └──────────┘ └─────────┘ └──────────┘ └───────────┘
Stage descriptions
Stage 1: Structure optimisation
Relaxes the input structure (cell + atomic positions) to remove any initial stress. Uses LBFGS with UnitCellFilter by default.
Stage 2: Pre-melt equilibration
Short NVT equilibration at 300 K. Thermalises the system before the rapid heating stage, improving trajectory stability.
Stage 3: Melt (heat ramp)
Linear temperature ramp from 300 K to the target melt temperature (default 3000 K). Uses NPT with the Berendsen weak-coupling barostat by default — the cell expands physically as the system heats.
Stage 4: High-temperature equilibration
Holds the system at the melt temperature to ensure thorough melting and loss of crystalline memory. Uses NPT with the Martyna-Tobias-Klein (MTK) Nose-Hoover-chain integrator by default, giving true canonical fluctuations around the equilibrium melt volume. Users who want the legacy constant-volume behaviour can set eq_high.ensemble: NVT.
Stage 5: Quench (cooling ramp)
Linear cooling from the melt temperature back to 300 K. The quench rate controls the degree of structural disorder. Uses NVT by default.
Stage 6: Low-temperature equilibration
Equilibrates the quenched structure at 300 K to relax any residual thermal stress.
Stage 7: Final optimisation
Final cell + position relaxation of the amorphous structure. Produces the output file.
NPT integrators
AmorphGen exposes three NPT integrators via the per-stage npt_method YAML key:
|
ASE class |
Use case |
|---|---|---|
|
|
Robust during the 300 K → 3000 K melt ramp; does not produce true canonical fluctuations (averages are correct, fluctuation-derived quantities like heat capacity are not). |
|
|
Martyna-Tobias-Klein Nose-Hoover-chain NPT. True canonical fluctuations. Recommended for equilibration plateaux; may become unstable during rapid temperature ramps. |
|
|
Nose-Hoover + Parrinello-Rahman flexible-cell NPT. Allows the cell shape (not just volume) to change; useful for anisotropic glasses. Requires upper-triangular cell. |
Stability knobs
Two parameters tune the Berendsen barostat for stiffer/slower volume control during the heating ramp:
Key |
Default |
What it does |
|---|---|---|
|
10.0 |
Ratio of barostat coupling time to thermostat coupling time ( |
|
100.0 |
Reference compressibility for the Berendsen barostat. The default (100 GPa) is liquid-like; oxides with bulk modulus 150–300 GPa benefit from 200 GPa for less aggressive volume control. |
Example: tighten the melt ramp for a-In₂O₃ / a-Ga₂O₃ / a-HfO₂
melt:
ensemble: NPT
npt_method: berendsen
taup_factor: 30.0 # slower barostat (3× default)
compressibility_GPa: 200.0 # stiffer, oxide-realistic
On a Cu/EMT benchmark at 1500 K over 300 fs, these settings reduce the maximum volume excursion from 6.7 % (defaults) to 1.8 % — a 74 % reduction.
Example: true canonical fluctuations at the equilibration plateau
eq_high:
ensemble: NPT
npt_method: mtk
This is the new default for eq_high; the legacy NVT behaviour is restored by setting ensemble: NVT.
Running specific stages
You can run a subset of stages using the --stages flag:
# Only quench and post-process (e.g. after restarting from a snapshot)
amorphgen POSCAR --model mace-mpa-0 --stages 5 6 7
Customising parameters
See the Configuration page for all available configuration keys.