Equations of State for Minerals¶
To calculate the thermodynamic and thermoelastic properties of a material at a given pressure (\(P\)) and temperature (\(T\)), a formulation is required that describes how the Gibbs energy (or any of the other three thermodynamic potentials) varies with pressure and temperature. These formulations are known as equations of state (EoS). In BurnMan, each mineral is associated with an EoS, and the mineral knows which EoS to use via a key called “equation_of_state” in its parameter dictionary (this dictionary is passed as an argument when creating the mineral). The value of this key can either be the EoS class itself, an instance of the EoS class, or a string that identifies the EoS. The valid string keys are listed below.
Currently the following EoSs are supported in BurnMan:
These EoSes are described in more detail below.
Isothermal Equations of State¶
Isothermal equations of state describe the relationship between pressure and volume at a constant temperature. BurnMan includes several isothermal equations of state.
3rd-order Birch-Murnaghan EoS (Birch, 1947) (bm3)¶
- class burnman.eos.birch_murnaghan.BM3[source]
Bases:
BirchMurnaghanBaseThe third order Birch-Murnaghan isothermal equation of state. The negative finite-strain (or compression) is defined as
\[f=\frac{1}{2}\left[\left(\frac{V}{V_0}\right)^{-2/3}-1\right]\]where \(V\) is the volume at a given pressure and \(V_0\) is the volume at a reference state (\(P = 10^5\) Pa , \(T\) = 300 K). The pressure and elastic moduli are derived from a third-order Taylor expansion of Helmholtz free energy in \(f\) and evaluating the appropriate volume and strain derivatives (e.g., [Poi91]). For an isotropic material one obtains for the pressure, isothermal bulk modulus, and shear modulus:
\[P = 3 K_0 f \left(1+2f\right)^{5/2} \left[1+\frac{3}{2} \left(K_0^\prime -4\right) f\right],\]\[\begin{split}K_{T} = (1+2f)^{5/2} \biggl[ & K_0+(3K_0{K}^\prime_{0}-5K_0)f\\ &+ \frac{27}{2}(K_0{K}^\prime_{0}-4K_0)f^2 \biggr],\end{split}\]\[\begin{split}G = (1+& 2f)^{5/2} \biggl[G_0+(3K_0{G}^\prime_{0}-5G_0)f\\ & +(6K_0{G}^\prime_{0}-24K_0-14G_{0} + \frac{9}{2}K_{0}{K}^\prime_{0})f^2 \biggr].\end{split}\]Here \(K_0\) and \(G_0\) are the reference bulk modulus and shear modulus and \(K_0^\prime\) and \({G}^\prime_{0}\) are the derivative of the respective moduli with respect to pressure.
Parameter
Description
Units
F_0Reference Helmholtz free energy
J/mol
P_0Reference pressure
Pa
V_0Reference volume
\(\textrm{m}^3\)
K_0Reference isothermal bulk modulus
Pa
Kprime_0Pressure derivative of the isothermal bulk modulus at the reference state
Dimensionless
G_0Reference shear modulus
Pa
Gprime_0Pressure derivative of the shear modulus at the reference state
Dimensionless
3rd-order Birch-Murnaghan with 2nd order Shear Modulus expansion (Birch, 1947) (bm3shear2)¶
- class burnman.eos.birch_murnaghan.BM3Shear2[source]
Bases:
BirchMurnaghanBaseThe third order Birch-Murnaghan isothermal equation of state with second order expansion for the shear modulus. Do not use this unless you have a good reason to.
The negative finite-strain (or compression) is defined as
\[f=\frac{1}{2} \left[ \left(\frac{V}{V_0} \right)^{-2/3}-1 \right]\]where \(V\) is the volume at a given pressure and \(V_0\) is the volume at a reference state (\(P = 10^5\) Pa , \(T\) = 300 K).
For an isotropic material one obtains for the pressure, isothermal bulk modulus, and shear modulus:
\[P=3 K_0 f \left(1+2f\right)^{5/2} \left[1+\frac{3}{2} \left(K_0^\prime -4\right) f\right],\]\[\begin{split}K_{T}=(1+2f)^{5/2} \biggl[ & K_0+(3K_0{K}^\prime_{0}-5K_0)f\\ &+\frac{27}{2}(K_0{K}^\prime_{0}-4K_0)f^2 \biggr],\end{split}\]\[G = (1 + 2f)^{5/2} \biggl[ G_0+(3K_0{G}^\prime_{0}-5G_0)f \biggr].\]Here \(K_0\) and \(G_0\) are the reference bulk modulus and shear modulus and \(K_0^\prime\) and \({G}^\prime_{0}\) are the derivative of the respective moduli with respect to pressure.
Parameter
Description
Units
F_0Reference Helmholtz free energy
J/mol
P_0Reference pressure
Pa
V_0Reference volume
\(\textrm{m}^3\)
K_0Reference isothermal bulk modulus
Pa
Kprime_0Pressure derivative of the isothermal bulk modulus at the reference state
Dimensionless
G_0Reference shear modulus
Pa
Gprime_0Pressure derivative of the shear modulus at the reference state
Dimensionless
4th-order Birch-Murnaghan EoS (Birch, 1947) (bm4)¶
- class burnman.eos.birch_murnaghan.BM4[source]
Bases:
BirchMurnaghanBaseBase class for the isothermal Birch Murnaghan equation of state. This is fourth order in strain, and has no temperature dependence.
Note that unlike the third order Birch-Murnaghan equation of state, the shear modulus is not defined for this equation of state.
Parameter
Description
Units
F_0Reference Helmholtz free energy
J/mol
P_0Reference pressure
Pa
V_0Reference volume
\(\textrm{m}^3\)
K_0Reference isothermal bulk modulus
Pa
Kprime_0Pressure derivative of the isothermal bulk modulus at the reference state
Dimensionless
Kprime_prime_0Second pressure derivative of the isothermal bulk modulus at the reference state
Dimensionless
MACAW EoS (Lozano and Aslam, 2022) (macaw)¶
- class burnman.eos.macaw.MACAW[source]
Bases:
IsothermalEquationOfStateClass for the MACAW equation of state detailed in [LA22].
This equation of state has no temperature dependence.
Parameter
Description
Units
F_0Reference Helmholtz free energy.
\(\text{J/mol}\)
P_0Reference pressure.
\(\text{Pa}\)
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
Kprime_0Pressure derivative of the bulk modulus at reference pressure.
Dimensionless
Kprime_infInfinite pressure derivative of the bulk modulus.
Dimensionless
Modified Tait EoS (Huang and Chow, 1974) (mt)¶
- class burnman.eos.modified_tait.MT[source]
Bases:
IsothermalEquationOfStateThe Modified Tait equation of state was developed by [HuangChow74]. It has the considerable benefit of allowing volume to be expressed as a function of pressure. It performs very well to pressures and temperatures relevant to the deep Earth [HollandPowell11].
\[\begin{split}\frac{V_{P, T}}{V_{1 bar, 298 K}} &= 1 - a(1-(1 + bP)^{-c}), \\ a &= \frac{1 + K_0'}{1 + K_0' + K_0 K_0''}, \\ b &= \frac{K_0'}{K_0} - \frac{K_0''}{1 + K_0'}, \\ c &= \frac{1 + K_0' + K_0 K_0''}{K_0'^2 + K_0' - K_0 K_0''}\end{split}\]Parameter
Description
Units
F_0Reference Helmholtz free energy.
\(\text{J/mol}\)
P_0Reference pressure.
\(\text{Pa}\)
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
Kprime_0Pressure derivative of bulk modulus.
Dimensionless
Kdprime_0Second pressure derivative of bulk modulus.
\(\text{Pa}^{-1}\)
Morse Potential EoS (Morse, 1929) (morse)¶
- class burnman.eos.morse_potential.Morse[source]
Bases:
IsothermalEquationOfStateClass for the isothermal Morse Potential equation of state detailed in [StaceyBrennanIrvine81]. This equation of state has no temperature dependence.
Parameter
Description
Units
F_0Reference Helmholtz free energy.
\(\text{J/mol}\)
P_0Reference pressure.
\(\text{Pa}\)
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
Kprime_0Pressure derivative of bulk modulus at zero pressure.
Dimensionless
Murnaghan EoS (Murnaghan, 1944) (murnaghan)¶
- class burnman.eos.murnaghan.Murnaghan[source]
Bases:
IsothermalEquationOfStateThe isothermal Murnaghan equation of state, as described in [Mur44].
Parameter
Description
Units
F_0Reference Helmholtz free energy.
\(\text{J/mol}\)
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
Kprime_0Pressure derivative of bulk modulus.
Dimensionless
Reciprocal K’ EoS (Stacey and Davis, 2004) (rkprime)¶
- class burnman.eos.reciprocal_kprime.RKprime[source]
Bases:
IsothermalEquationOfStateClass for the isothermal reciprocal K-prime equation of state detailed in [SD04]. This equation of state is a development of work by [Kea54] and [SD00], making use of the fact that \(K'\) typically varies smoothly as a function of \(P/K\), and is thermodynamically required to exceed 5/3 at infinite pressure.
It is worth noting that this equation of state rapidly becomes unstable at negative pressures, so should not be trusted to provide a good HT-LP equation of state using a thermal pressure formulation. The negative root of \(dP/dK\) can be found at \(K/P = K'_{\infty} - K'_0\), which corresponds to a bulk modulus of \(K = K_0 ( 1 - K'_{\infty}/K'_0 )^{K'_0/K'_{\infty}}\) and a volume of \(V = V_0 ( K'_0 / (K'_0 - K'_{\infty}) )^{K'_0/{K'}^2_{\infty}} \exp{(-1/K'_{\infty})}\).
This equation of state has no temperature dependence.
Parameter
Description
Units
F_0Reference Helmholtz free energy.
\(\text{J/mol}\)
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
Kprime_0Pressure derivative of bulk modulus at reference conditions.
Dimensionless
Kprime_infPressure derivative of bulk modulus at infinite pressure.
Dimensionless
SPOCK EoS (Myhill, 2025) (spock)¶
- class burnman.eos.spock.SPOCK[source]
Bases:
IsothermalEquationOfStateClass for the Scaled Power Of Compression K-prime equation of state. This equation is derived from the assumption that
\[K' = b \left( \frac{V}{V_0} \right)^a\]This equation of state is described in [Myh25a], but was originally derived by [WMTZ15].
Parameter
Description
Units
F_0Reference Helmholtz free energy.
\(\text{J/mol}\)
P_0Reference pressure.
\(\text{Pa}\)
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
Kprime_0Pressure derivative of bulk modulus at zero pressure.
Dimensionless
Kdprime_0Second pressure derivative of bulk modulus at zero pressure.
\(\text{Pa}^{-1}\)
Kprime_infInfinite pressure limit of the pressure derivative of bulk modulus.
Dimensionless
Vinet EoS (Vinet et al., 1987) (vinet)¶
- class burnman.eos.vinet.Vinet[source]
Bases:
IsothermalEquationOfStateBase class for the isothermal Vinet equation of state. References for this equation of state are [VFSR86] and [VSFR87]. This equation of state actually predates Vinet by 55 years [Rydberg32], and was investigated further by [StaceyBrennanIrvine81].
Parameter
Description
Units
F_0Reference Helmholtz free energy.
\(\text{J/mol}\)
P_0Reference pressure.
\(\text{Pa}\)
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
Kprime_0Pressure derivative of bulk modulus.
Dimensionless
Thermal Equations of State¶
Thermal equations of state account for the effects of temperature on thermoelastic properties. BurnMan includes several thermal equations of state.
Liquid Metal EoS (Anderson and Ahrens, 1994) (aa)¶
- class burnman.eos.aa.AA[source]
Bases:
EquationOfStateClass for the liquid metal EOS detailed in [AndersonAhrens94].
This equation of state is complicated because there is not a single set of independent variables.
The equation of state is based on a reference isentrope passing through a defined volume and entropy point. Internal energy (\(E\)) at a given volume is calculated along this isentrope using a fourth order BM EoS (\(V_0\), \(KS\), \(KS'\), \(KS''\)).
The temperature along the isentrope is calculated via integration of the Grueneisen parameter:
\(\gamma = \partial (\ln T)/\partial (\ln \rho) |_S\)
which gives:
\(T_S/T_0 = \exp(\int( \gamma/\rho ) d \rho)\)
Finally, the internal energy away from the reference isentrope is calculated as a function of temperature, using an expression for the isochoric heat capacity as a function of volume and temperature.
In this BurnMan implementation, the Helmholtz energy is used as the natural potential, with volume and temperature as the natural variables.
We note that [AndersonAhrens94] also include a detailed description of the Gruneisen parameter as a function of volume and energy (Equation 15), and use this to determine the temperature along the principal isentrope (Equations B1-B10) and the thermal pressure away from that isentrope (Equation 23). However, the thermal pressure expression is inconsistent with the equation of state away from the principal isentrope.
Note: the expression for \(\Lambda\) (Appendix C) does not reproduce Figure 5. We assume that the figure is correct, and that the correct expression has the form: \(F(-325.23 + 302.07 (\rho/\rho_0) + 30.45 (\rho/\rho_0)^{0.4})\).
Parameter
Description
Units
E_0Reference internal energy.
\(\text{J/mol}\)
V_0Reference volume.
\(\text{m}^3\)
K_SReference isentropic bulk modulus.
\(\text{Pa}\)
Kprime_SFirst pressure derivative of the isentropic bulk modulus.
\(\text{unitless}\)
Kprime_prime_SSecond pressure derivative of the isentropic bulk modulus.
\(\text{Pa}^{-1}\)
T_0Reference temperature on the principal isentrope.
\(\text{K}\)
S_0Reference entropy on the principal isentrope.
\(\text{J/K/mol}\)
nNumber of atoms per formula unit.
\(\text{unitless}\)
grueneisen_0Reference Gruneisen parameter on the principal isentrope.
\(\text{unitless}\)
grueneisen_nVolume dependence of the Gruneisen parameter on the principal isentrope.
\(\text{unitless}\)
grueneisen_primeFirst pressure derivative of the Gruneisen parameter on the principal isentrope.
\(\text{Pa}^{-1}\)
thetaDebye temperature on the principal isentrope.
\(\text{K}\)
aElectronic heat capacity parameter A (length 2 array).
\(\text{unitless}\)
bElectronic heat capacity parameter B (length 2 array).
\(\text{unitless}\)
ThetaVolume dependence parameters for electronic heat capacity (length 2 array).
\(\text{unitless}\)
lmdaPotential heat capacity parameter lambda (length 3 array).
\(\text{unitless}\)
xi_0Reference xi parameter.
\(\text{unitless}\)
FReference F parameter (length 2 array).
\(\text{unitless}\)
Brosh CALPHAD EoS (Brosh, 2007) (brosh_calphad)¶
- class burnman.eos.brosh_calphad.BroshCalphad[source]
Bases:
EquationOfStateClass for the high pressure CALPHAD equation of state by [BMS07].
This equation of state includes contributions from cold compression, quasiharmonic lattice vibrations, and thermal excitation of electrons.
Parameter
Description
Units
gibbs_coefficientsCoefficients for the piecewise polynomial fit to the Gibbs free energy at 1 bar. Format is a list of lists, where each sublist contains the maximum temperature for that segment and the coefficients in the following order: [const, T, T*ln(T), T^(-1), T^(-2), T^(-3), T^(-9), T^2, T^3, T^4, T^7, T^(1/2), ln(T)]
varies
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
nNumber of atoms per formula unit.
Dimensionless
aParameter array for cold compression (length 4 array).
Dimensionless
bParameter array for thermal excitation (length 2 array).
Dimensionless
c[OPTIONAL] Parameter array for cold compression (length 4 array). If you do not know how to calculate it, do not add it to the parameters dictionary. It will be calculated from the other input parameters.
Dimensionless
deltaParameter array for thermal excitation (length 2 array).
Dimensionless
theta_0Reference Debye temperature.
\(\text{K}\)
grueneisen_0Reference Grüneisen parameter.
Dimensionless
CORK EoS (Holland and Powell, 1991) (cork)¶
- class burnman.eos.cork.CORK[source]
Bases:
EquationOfStateClass for the CoRK equation of state detailed in [HP91]. The CoRK EoS is a simple virial-type extension to the modified Redlich-Kwong (MRK) equation of state. It was designed to compensate for the tendency of the MRK equation of state to overestimate volumes at high pressures and accommodate the volume behaviour of coexisting gas and liquid phases along the saturation curve.
\[\begin{split}V &= \frac{RT}{P} + c_1 - \frac{c_0 R T^{0.5}}{(RT + c_1 P)(RT + 2 c_1 P)} + c_2 P^{0.5} + c_3 P, \\ c_0 &= c_{0,0} T_c^{2.5}/P_c + c_{0,1} T_c^{1.5}/P_c T, \\ c_1 &= c_{1,0} T_c/P_c, \\ c_2 &= c_{2,0} T_c/P_c^{1.5} + c_{2,1}/P_c^{1.5} T, \\ c_3 &= c_{3,0} T_c/P_c^2 + c_{3,1}/P_c^2 T\end{split}\]where \(c_{i,j}\) are the CoRK parameters, \(T_c\) is the critical temperature, and \(P_c\) is the critical pressure.
Parameter
Description
Units
H_0Reference enthalpy.
\(\text{J/mol}\)
S_0Reference entropy.
\(\text{J/(mol K)}\)
CpHeat capacity parameters (length 4 array).
\(\text{J/(mol K)}\)
T_0Reference temperature.
\(\text{K}\)
P_0Reference pressure.
\(\text{Pa}\)
cork_paramsCoRK parameters (length 4x2 array).
varies
cork_TCritical temperature.
\(\text{K}\)
cork_PCritical pressure.
\(\text{Pa}\)
De Koker and Stixrude Liquid EoS (de Koker and Stixrude, 2013) (dks_l)¶
- class burnman.eos.dks_liquid.DKS_L[source]
Bases:
EquationOfStateBase class for the finite strain liquid equation of state detailed in [deKokerKarkiStixrude13] (supplementary materials).
This equation of state includes contributions from ideal gas (translational and electronic), electronic, and excess (bonding) components to the thermodynamic properties.
The parameters required for this equation of state do not all correspond to natural variables; please refer to [deKokerKarkiStixrude13] for details.
Parameter
Description
Units
V_0Reference volume.
\(\text{m}^3\)
T_0Reference temperature.
\(\text{K}\)
O_thetaO_fmazeta_0Reference electronic strength parameter.
xiPower law exponent for the volume dependence on zeta.
Unitless
Tel_0Reference temperature for electronic contributions.
K
etaPower law exponent for the volume dependence on the electronic temperature.
Unitless
formulaChemical formula of the substance.
Dict[str, float]
el_V_0Reference volume for electronic contributions.
\(\text{m}^3\)
spin_aDescription of spin_a.
Length 2 list describing spin_a.
spin_bLength 4 list describing spin_b.
Units of spin_b.
De Koker and Stixrude Solid EoS (de Koker and Stixrude, 2013) (dks_s)¶
- class burnman.eos.dks_solid.DKS_S[source]
Bases:
EquationOfStateBase class for the finite strain solid equation of state detailed in [deKokerKarkiStixrude13] (supplementary materials).
This equation of state is a somewhat modified version of that described in [SLB05].
Parameter
Description
Units
P_0Reference pressure.
\(\text{Pa}\)
T_0Reference temperature.
\(\text{K}\)
E_0Reference internal energy.
\(\text{J/mol}\)
S_0Reference entropy.
\(\text{J/K/mol}\)
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
Kprime_0Pressure derivative of the reference bulk modulus.
\(\text{unitless}\)
grueneisen_0Reference Grüneisen parameter.
\(\text{unitless}\)
q_0Volume derivative of the Grüneisen parameter.
\(\text{unitless}\)
eta_s_0Isotropic shear strain derivative of the Grüneisen parameter.
\(\text{unitless}\)
CvConstant volume heat capacity.
\(\text{J/K/mol}\)
Holland and Powell 1998 EoS (Holland and Powell, 1998) (hp98)¶
- class burnman.eos.hp.HP98[source]
Bases:
EquationOfStateBase class for the thermal equation of state described in [HollandPowell98].
Parameter
Description
Units
P_0Reference pressure.
Pa
T_0Reference temperature.
K
H_0Enthalpy at the reference state.
J/mol
S_0Entropy at the reference state.
J/(mol K)
CpHeat capacity coefficients at the reference pressure (length 4 list).
Various
V_0Volume at the reference state.
m^3/mol
K_0Isothermal bulk modulus at the reference state.
Pa
Kprime_0Pressure derivative of bulk modulus at the reference state.
Dimensionless
a_0Thermal expansivity at reference state.
1/K
dKdT_0Temperature derivative of bulk modulus at reference state.
Pa/K
Holland and Powell Modified Tait Thermal EoS (Holland and Powell, 2011) (hp_tmt)¶
- class burnman.eos.hp.HP_TMT[source]
Bases:
EquationOfStateBase class for the thermal equation of state based on the isothermal modified Tait equation of state (class MT), as described in [HollandPowell11].
\[\begin{split}\mathcal{G}(P,T) &= \mathcal{H}_{\textrm{1 bar, T}} - T\mathcal{S}_{\textrm{1 bar, T}} + \int_{\textrm{1 bar}}^P V(P,T)~dP, \\ \mathcal{H}_{\textrm{1 bar, T}} &= \Delta_f\mathcal{H}_{\textrm{1 bar, 298 K}} + \int_{298}^T C_P~dT, \\ \mathcal{S}_{\textrm{1 bar, T}} &= \mathcal{S}_{\textrm{1 bar, 298 K}} + \int_{298}^T \frac{C_P}{T}~dT, \\ \int_{\textrm{1 bar}}^P V(P,T)~dP &= P V_0 \left( 1 - a + \left( a \frac{(1-b P_{th})^{1-c} - (1 + b(P-P_{th}))^{1-c}}{b (c-1) P} \right) \right)\end{split}\]The heat capacity at one bar is given by an empirical polynomial fit to experimental data:
\[C_p = a + bT + cT^{-2} + dT^{-0.5}\]The thermal pressure is calculated using a Mie-Grüneisen-like function:
\[\begin{split}P_{\textrm{th}} &= \frac{\alpha_0 K_0 E_{\textrm{th}} }{C_{V0}}, \\ E_{\textrm{th}} &= 3 n R \Theta \left(0.5 + \frac{1}{ \exp(\frac{\Theta}{T}) - 1 }\right), \\ C_{V} &= 3 n R \frac{(\frac{\Theta}{T})^2\exp(\frac{\Theta}{T})}{(\exp(\frac{\Theta}{T})-1)^2}\end{split}\]\(\Theta\) is the Einstein temperature of the crystal in Kelvin, approximated for a substance \(i\) with \(n_i\) atoms in the unit formula and a molar entropy \(S_i\) using the empirical formula:
\[\Theta_i=\frac{10636}{S_i/n_i + 6.44}\]Parameter
Description
Units
P_0Reference pressure.
Pa
T_0Reference temperature.
K
H_0Enthalpy at the reference state.
J/mol
S_0Entropy at the reference state.
J/(mol K)
CpHeat capacity coefficients at the reference pressure (length 4 list).
Various
V_0Volume at the reference state.
m^3/mol
K_0Isothermal bulk modulus at the reference state.
Pa
Kprime_0Pressure derivative of bulk modulus at the reference state.
Dimensionless
Kdprime_0Second pressure derivative of bulk modulus at the reference state.
Dimensionless
a_0Thermal expansivity at reference state.
1/K
T_einsteinEinstein temperature.
K
nNumber of atoms in the unit formula.
Dimensionless
Holland and Powell Modified Tait Thermal Liquid EoS (Holland and Powell, 2011) (hp_tmtL)¶
- class burnman.eos.hp.HP_TMTL[source]
Bases:
EquationOfStateBase class for the thermal equation of state described in [HollandPowell98], but with the Modified Tait as the static part, as described in [HollandPowell11].
Parameter
Description
Units
P_0Reference pressure.
Pa
T_0Reference temperature.
K
H_0Enthalpy at the reference state.
J/mol
S_0Entropy at the reference state.
J/(mol K)
CpHeat capacity coefficients at the reference pressure (length 4 list).
Various
V_0Volume at the reference state.
m^3/mol
K_0Isothermal bulk modulus at the reference state.
Pa
Kprime_0Pressure derivative of bulk modulus at the reference state.
Dimensionless
Kdprime_0Second pressure derivative of bulk modulus at the reference state.
Dimensionless
a_0Thermal expansivity at reference state.
1/K
dKdT_0Temperature derivative of bulk modulus at reference state.
Pa/K
Mie-Gruneisen-Debye 2nd-order EoS (Matas et al., 2007) (mgd2)¶
- class burnman.eos.mie_grueneisen_debye.MGD2[source]
Bases:
MGDBaseMGD equation of state with second order finite strain expansion for the shear modulus. In general, this should not be used, but sometimes shear modulus data is fit to a second order equation of state. In that case, you should use this. The moral is, be careful!
Mie-Gruneisen-Debye 3rd-order EoS (Matas et al., 2007) (mgd3)¶
- class burnman.eos.mie_grueneisen_debye.MGD3[source]
Bases:
MGDBaseMie-Grueneisen-Debye equation of state with third order finite strain expansion for the shear modulus.
The Debye model for the Helmholtz free energy can be written as follows [MBR+07]
\[\begin{split}\mathcal{F} &= \frac{9nRT}{V}\frac{1}{x^3} \int_{0}^{x} \xi^2 \ln (1-e^{-\xi}) d\xi, \\ x &= \theta / T, \\ \theta &= \theta_0 \exp \left( \frac{\gamma_0-\gamma}{q_0} \right), \\ \gamma &= \gamma_0 \left( \frac{V}{V_0} \right)^{q_0}\end{split}\]where \(\theta\) is the Debye temperature and \(\gamma\) is the Grüneisen parameter.
Using thermodynamic relations we can derive equations for the thermal pressure and bulk modulus
\[\begin{split}P_{th}(V,T) &= - \frac{\partial \mathcal{F(V, T)}}{\partial V}, \\ &= \frac{3 n \gamma R T}{V} D(x), \\ K_{th}(V,T) &= -V \frac{\partial P(V, T)}{\partial V}, \\ &= \frac{3 n \gamma R T}{V} \gamma \left[ (1-q_0 - 3 \gamma) D(x) + 3\gamma \frac{x}{e^x - 1} \right], \\ D(x) &= \frac{3}{x^3} \int_{0}^{x} \frac{\xi^3}{e^{\xi} - 1} d\xi\end{split}\]The thermal shear correction used in BurnMan was developed by [HamaSuito98]
\[G_{th}(V,T) = \frac{3}{5} \left[ K_{th} (V, T) - 2\frac{3nRT}{V}\gamma D(x) \right]\]The total pressure, bulk and shear moduli can be calculated from the following sums
\[\begin{split}P(V, T) &= P_{\textrm{ref}}(V, T_0) + P_{th}(V, T) - P_{th}(V, T_0), \\ K(V, T) &= K_{\textrm{ref}}(V, T_0) + K_{th}(V, T) - K_{th}(V, T_0), \\ G(V, T) &= G_{\textrm{ref}}(V, T_0) + G_{th}(V, T) - G_{th}(V, T_0)\end{split}\]This equation of state is substantially the same as that in [SLB05]. The primary differences are in the thermal correction to the shear modulus and in the volume dependences of the Debye temperature and the Gruneisen parameter.
Parameter
Description
Units
F_0Reference Helmholtz free energy.
\(\text{J/mol}\)
V_0Reference volume.
\(\text{m}^3\)
K_0Reference bulk modulus.
\(\text{Pa}\)
Kprime_0Pressure derivative of the bulk modulus at reference pressure.
Dimensionless
molar_massMolar mass of the mineral.
\(\text{kg/mol}\)
nNumber of atoms per formula unit.
Dimensionless
Debye_0Debye temperature at reference state.
\(\text{K}\)
grueneisen_0Grüneisen parameter at reference state.
Dimensionless
q_0Volume dependence of the Grüneisen parameter.
Dimensionless
Modular Mie-Gruneisen-Debye EoS (modular_mgd)¶
- class burnman.eos.modular_mie_grueneisen_debye.ModularMGD[source]
Bases:
EquationOfStateThis class implements a modular Mie-Grueneisen-Debye (MGD) equation of state (EoS) where the reference (isothermal) EoS and Debye temperature model can be chosen by the user.
The equation of state also supports electronic contributions to the Helmholtz energy and thermodynamic properties according to the model of [BK77].
Parameter
Description
Units
V_0Reference volume
\(\textrm{m}^3\)
T_0Reference temperature
K
bel_0Electronic contribution parameter
unitless
gelElectronic contribution exponent
unitless
nNumber of atoms per formula unit
atoms per formula unit
molar_massMolar mass
kg/mol
reference_eosReference isothermal equation of state. Must have methods for pressure, isothermal bulk modulus, and Gibbs energy.
debye_temperature_modelDebye temperature model. An object providing the Debye temperature as a function of relative volume via
value, and its first and second derivatives with respect to relative volume viadVrelanddVrel2.callable. Examples include
burnman.eos.debye_temperature_models.SLB,burnman.eos.debye_temperature_models.PowerLawGammaSimple, andburnman.eos.debye_temperature_models.PowerLawGamma.anharmonic_thermal_modelAnharmonic thermal model. An object providing the anharmonic contribution to the energy.
callable. Examples include
burnman.eos.anharmonic_thermal_models.Padeandburnman.eos.anharmonic_thermal_models.LogNormal.
Modular Mie-Gruneisen-Debye EoS with Anharmonicity (modular_mgd_with_anharmonicity)¶
- class burnman.eos.modular_mie_grueneisen_debye.ModularMGDWithAnharmonicity[source]
Bases:
ModularMGDThis class extends the ModularMGD class to include anharmonicity effects according to a simplification of the model proposed by Wu and Wentzcovitch, 2009.
The basis of the anharmonic model is the definition of a scaled volume, \(V'\): \(\ln (V'/V) = = - c \ln (V/V_0)\). In this expression, \(V\) is the target volume, \(V_0\) is a first order approximation to the volume at the same pressure and reference temperature \(T_0\), and \(c\) is an anharmonicity parameter provided in the params dictionary as c_anh.
The anharmonic Helmholtz energy \(F\) is related to the scaled volume by the equation:
\[F(V,T) = F_h(V',T) + F_h(V,T_0) - F_h(V',T_0)\]where \(F_h\) is the harmonic Helmholtz energy, potentially with electronic contributions.
Note: This model is not the same as that published in Wu and Wentzcovitch (2009). The results are expected to be similar, but the \(c\) parameter will in general need to be changed. This is because only a local approximation to the volume change between 0 K and the target temperature is used. This does not mean that the model is less able to capture the essential physics of the problem; indeed, the model of Wu and Wentzcovitch (2009) is only intended to be an effective ansatz.
Parameter
Description
Units
V_0Reference volume
\(\textrm{m}^3\)
T_0Reference temperature
K
bel_0Electronic contribution parameter
unitless
gelElectronic contribution exponent
unitless
nNumber of atoms per formula unit
atoms per formula unit
molar_massMolar mass
kg/mol
reference_eosReference isothermal equation of state. Must have methods for pressure, isothermal bulk modulus, and Gibbs energy.
debye_temperature_modelDebye temperature model. An object providing the Debye temperature as a function of relative volume via
value, and its first and second derivatives with respect to relative volume viadVrelanddVrel2.callable. Examples include
burnman.eos.debye_temperature_models.SLB,burnman.eos.debye_temperature_models.PowerLawGammaSimple, andburnman.eos.debye_temperature_models.PowerLawGamma.anharmonic_thermal_modelAnharmonic thermal model. An object providing the anharmonic contribution to the energy.
callable. Examples include
burnman.eos.anharmonic_thermal_models.Padeandburnman.eos.anharmonic_thermal_models.LogNormal.c_anhAnharmonicity parameter
unitless
Stixrude and Lithgow-Bertelloni 2nd-order EoS (Stixrude and Lithgow-Bertelloni, 2005) (slb2)¶
- class burnman.eos.slb.SLB2[source]
Bases:
SLBBaseSLB equation of state with second order finite strain expansion for the shear modulus. In general, this should not be used, but sometimes shear modulus data is fit to a second order equation of state. In that case, you should use this. The moral is, be careful!
Stixrude and Lithgow-Bertelloni 3rd-order EoS (Stixrude and Lithgow-Bertelloni, 2005) (slb3)¶
- class burnman.eos.slb.SLB3[source]
Bases:
SLBBaseThird-order finite strain-Mie-Grueneisen-Debye equation of state detailed in [SLB05].
This equation of state combines the third-order Birch-Murnaghan isothermal equation of state with thermal corrections derived from the Mie-Grüneisen-Debye equation of state with the quasi-harmonic approximation:
\[\begin{split}\mathcal{F}_{th}(T, \theta(V)) &= nRT \left(3 \ln( 1 - e^{-\frac{\theta}{T}}) - \int_{0}^{\frac{\theta}{T}}\frac{\tau^3}{(e^{\tau}-1)}d\tau \right), \\ P_{th}(V,T) &={\frac{\gamma \Delta \mathcal{U}}{V}}, \\ K_{th}(V,T) &=(\gamma +1-q)\frac{\gamma \Delta \mathcal{U}}{V} -\gamma ^{2} \frac{\Delta(C_{V}T)}{V} ,\\ G_{th}(V,T) &= -\frac{\eta_{S} \Delta \mathcal{U}}{V}.\end{split}\]The expression for the Debye temperature \(\theta(V)\) as a function of volume is given by:
\[\begin{split}\theta(V) &= \theta_{0} \sqrt{\frac{\nu^{2}}{\nu_{0}^{2}}}, \\ \frac{\nu^2}{\nu^2_0} &= 1+a_{ii}^{(1)}f+\frac{1}{2}a_{iikk}^{(2)}f^2, \\ f &= \frac{1}{2} \left[ \left( \frac{V_0}{V} \right)^{\frac{2}{3}} -1 \right].\end{split}\]The \(\Delta\) refers to the difference in the relevant quantity from the reference temperature (300 K). \(\gamma\) is the Grüneisen parameter, \(q\) is the logarithmic volume derivative of the Grüneisen parameter, \(\eta_{S}\) is the shear strain derivative of the Grüneisen parameter, \(C_V\) is the heat capacity at constant volume, and \(\mathcal{U}\) is the internal energy at temperature \(T\). \(C_V\) and \(\mathcal{U}\) are calculated using the Debye model for vibrational energy of a lattice. These quantities are calculated as follows:
\[\begin{split}C_V &= 9nR \left( \frac{T}{\theta} \right)^3 \int_{0}^{\frac{\theta}{T}} \frac{e^{\tau}\tau^{4}}{(e^{\tau}-1)^2} d\tau, \\ \mathcal{U} &= 9nRT \left( \frac{T}{\theta} \right)^3 \int_{0}^{\frac{\theta}{T}} \frac{\tau^3}{(e^{\tau}-1)} d\tau, \\ \gamma &= \frac{1}{6} \frac{\nu_{0}^2}{\nu^{2}}(2f+1) \left[ a_{ii}^{(1)} + a_{iikk}^{(2)}f \right], \\ q &= \frac{1}{9\gamma} \left[ 18\gamma^{2} - 6\gamma - \frac{1}{2} \frac{\nu^{2}_0}{\nu^2} (2f+1)^{2} a_{iikk}^{(2)} \right], \\ \eta_S &=-\gamma-\frac{1}{2}\frac{\nu_{0}^2}{\nu^2}(2f+1)^{2}a_{S}^{(2)}, \\ a_{ii}^{(1)} &= 6\gamma _0, \\ a_{iikk}^{(2)} &= -12\gamma _0+36\gamma_{0}^{2}-18q_{0}\gamma_0,\\ a_{S}^{(2)} &=-2\gamma _0-2\eta_{S0},\end{split}\]where \(\nu\) is the frequency of vibrational modes for the mineral, \(n\) is the number of atoms per formula unit (e.g. 2 for periclase, 5 for perovskite), and \(R\) is the gas constant. Under the approximation that the vibrational frequencies behave the same under strain, we may identify \(\nu/\nu_0 = \theta/\theta_0\). The quantities \(\gamma_0\), \(\eta_{S0}\) \(q_0\), and \(\theta_0\) are the experimentally determined values for those parameters at the reference state.
All together this makes an eleven parameter EoS model, which is summarized in the Table below. For more details on the EoS, we refer readers to [SLB05].
Parameter
Description
Units
V_0Volume at P = \(10^5\) Pa , T = 300 K
\(\textrm{m}^{3}/\textrm{mol}\)
K_0Isothermal bulk modulus at P = \(10^5\) Pa, T = 300 K
Pa
Kprime_0Pressure derivative of \(K_{0}\)
unitless
G_0Shear modulus at P = \(10^5\) Pa, T = 300 K
Pa
Gprime_0Pressure derivative of \(G_{0}\)
unitless
molar_massmass per mole formula unit
kg \(\mathrm{mol}^{-1}\)
nnumber of atoms per formula unit
atoms/formula unit
Debye_0Debye Temperature
K
grueneisen_0Grüneisen parameter at P = \(10^5\) Pa, T = 300 K
unitless
q_0Volume dependence of Grüneisen parameter at P = \(10^5\) Pa, T = 300 K
unitless
eta_s_0Shear strain dependence of Grüneisen parameter at P = \(10^5\) Pa, T = 300 K
unitless
This equation of state is substantially the same as Mie-Gruneisen-Debye. The primary differences are in the thermal correction to the shear modulus and in the volume dependences of the Debye temperature and the Gruneisen parameter.
Stixrude and Lithgow-Bertelloni 3rd-order Conductive EoS (Stixrude and Lithgow-Bertelloni, 2024) (slb3-conductive)¶
- class burnman.eos.slb.SLB3Conductive[source]
Bases:
SLBBaseSLB equation of state with third order finite strain expansion for the shear modulus and a contribution to the Helmholtz free energy that arises from the thermal excitation of electrons [BK77].
For more details on the underlying EoS, we refer readers to [SLB05] and the documentation for
burnman.eos.slb.SLB3. The electronic contribution to the Helmholtz free energy is given by:\[\mathcal{F}_{el}(V,T) = -\frac{1}{2} b^{el}_0 V \left( \frac{V}{V_0} \right)^{g^{el}} (T^2 - T_0^2)\]Parameter
Description
Units
V_0Volume at P = \(10^5\) Pa , T = 300 K
\(\textrm{m}^{3}/\textrm{mol}\)
K_0Isothermal bulk modulus at P = \(10^5\) Pa, T = 300 K
Pa
Kprime_0Pressure derivative of \(K_{0}\)
unitless
G_0Shear modulus at P = \(10^5\) Pa, T = 300 K
Pa
Gprime_0Pressure derivative of \(G_{0}\)
unitless
molar_massmass per mole formula unit
kg \(\mathrm{mol}^{-1}\)
nnumber of atoms per formula unit
atoms/formula unit
Debye_0Debye Temperature
K
grueneisen_0Grüneisen parameter at P = \(10^5\) Pa, T = 300 K
unitless
q_0Volume dependence of Grüneisen parameter at P = \(10^5\) Pa, T = 300 K
unitless
eta_s_0Shear strain dependence of Grüneisen parameter at P = \(10^5\) Pa, T = 300 K
unitless
bel_0Electronic bulk modulus coefficient
Pa
gelElectronic bulk modulus volume exponent
unitless