Source code for burnman.calibrants.Holmes_1989

# This file is part of BurnMan - a thermoelastic and thermodynamic toolkit for
# the Earth and Planetary Sciences
# Copyright (C) 2012 - 2024 by the BurnMan team, released under the GNU
# GPL v2 or later.

"""
Holmes_1989
^^^^^^^^^^^
"""

from burnman.classes.calibrant import Calibrant
import numpy as np
from burnman.utils.unitcell import molar_volume_from_unit_cell_volume


[docs] class Pt(Calibrant): """ The Pt pressure standard reported by Holmes et al. (1989; https://doi.org/10.1063/1.344177). """ def __init__(self): def _pressure(volume, temperature, params): X = np.power(volume / params["V_0"], 1.0 / 3.0) P_300 = ( 3.0 * params["beta_T"] * (1.0 - X) / (X * X) * np.exp(params["eta"] * (1.0 - X)) ) return P_300 + params["alpha_T"] * params["beta_T"] * (temperature - 300.0) Z = 4.0 _params = { "V_0": molar_volume_from_unit_cell_volume(60.38, Z), "beta_T": 798.31e9 / 3.0, "eta": 7.2119, "beta_prime_T": (7.2119 / 1.5) + 1.0, "alpha_T": 2.61e-5, "Z": Z, } Calibrant.__init__(self, _pressure, "pressure", _params)