Equation of State¶
Fits energy-volume data to an equation of state (EOS) to extract equilibrium volume, equilibrium energy, and bulk modulus.
from ase.build import bulk
from materialsframework.analysis import EOSAnalyzer
from materialsframework.calculators import CHGNetCalculator
struct = bulk("Cu", "fcc", a=3.6, cubic=True)
calc = CHGNetCalculator()
eos = EOSAnalyzer(calculator=calc)
res = eos.calculate(struct)
print(res["e0"]) # equilibrium energy (eV)
print(res["v0"]) # equilibrium volume (ų)
print(res["b0"]) # bulk modulus (eV/ų)
print(res["b0_GPa"]) # bulk modulus (GPa)
print(res["b1"]) # pressure derivative of bulk modulus
See Theory for the derivation, or the API Reference for the full parameter list.