Source code for burnman.minerals.SLB_2024

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

"""
SLB_2024
^^^^^^^^

Minerals from Stixrude and Lithgow-Bertelloni (2024), and references therein.

Contains the following solutions:
* c2c_pyroxene (c2c)
* calcium_ferrite_structured_phase (cf)
* clinopyroxene (cpx)
* garnet (gt)
* ilmenite (il)
* ferropericlase (mw)
* new_aluminous_phase (nal)
* olivine (ol)
* orthopyroxene (opx)
* plagioclase (plg)
* post_perovskite (ppv)
* bridgmanite (pv)
* ringwoodite (ri)
* mg_fe_aluminous_spinel (sp)
* wadsleyite (wa)

Relaxed solutions (which account for softening through the spin transition):

* ferropericlase_relaxed
* bridgmanite_relaxed

Endmember phases:
* albite (ab)
* acmite (acm)
* almandine (al)
* al_perovskite (alpv)
* anorthite (an)
* alpha_nao2_phase (anao)
* grossular (andr)
* alpha_pbo_2_sio_2 (apbo)
* al_post_perovskite (appv)
* ca_perovskite (capv)
* lime_tschermak (cats)
* clinoenstatite (cen)
* corundum (co)
* coesite (coes)
* cr_post_perovskite (cppv)
* cr_ca_ferrite (crcf)
* cr_perovskite (crpv)
* diopside (di)
* enstatite (en)
* eskolaite (esk)
* fayalite (fa)
* fealo3_perovskite_hs (fapv)
* alpha_(bcc)_iron (fea)
* hp_clinoferrosilite (fec2)
* fe_ca_ferrite (fecf)
* epsilon_(hcp)_iron (fee)
* gamma_(fcc)_iron (feg)
* fe_akimotoite (feil)
* fe_perovskite (fepv)
* fe_ringwoodite (feri)
* fe_wadsleyite (fewa)
* fe_nal_phase (fnal)
* forsterite (fo)
* fe_postperovskite (fppv)
* ferrosilite (fs)
* grossular (gr)
* hercynite (hc)
* hedenbergite (he)
* hematite (hem)
* fe2o3_perovskite_hs (hepv)
* fe2o3_perovskite_ls (hlpv)
* high_pressure_magnetit (hmag)
* hs_fe2o3_post_perovski (hppv)
* jadeite (jd)
* knorringite (knor)
* kyanite (ky)
* ls_fe2o3_post_perovski (lppv)
* magnetite (mag)
* hp_clinoenstatite (mgc2)
* mg_ca_ferrite (mgcf)
* mg_akimotoite (mgil)
* mg_majorite (mgmj)
* mg_perovskite (mgpv)
* mg_ringwoodite (mgri)
* mg_tschermaks (mgts)
* mg_wadsleyite (mgwa)
* mg_nal_phase (mnal)
* mg_postperovskite (mppv)
* na_ca_ferrite (nacf)
* na_majorite (namj)
* nepheline (neph)
* na_nal_phase (nnal)
* ortho_diopside (odi)
* periclase (pe)
* pircochromite (picr)
* pseudo_wollastonite (pwo)
* pyrope (py)
* quartz (qtz)
* magnetite (smag)
* spinel (sp)
* stishovite (st)
* wollastonite (wo)
* wustite (wu)
* wustite_low_spin (wuls)

File autogenerated using HeFESTO_2024_to_burnman.py and HeFESTo_parameters_010123.
"""


import numpy as np
from ..eos.slb import SLB3
from ..eos import debye
from ..eos import birch_murnaghan as bm
from ..classes.mineral import Mineral
from ..classes.solution import Solution, RelaxedSolution
from ..classes.solutionmodel import (
    IdealSolution,
    SymmetricRegularSolution,
    AsymmetricRegularSolution,
)


"""
ENDMEMBERS
"""


[docs] class ab(Mineral): def __init__(self): self.params = { "name": "Albite", "formula": {"Na": 1.0, "Al": 1.0, "Si": 3.0, "O": 8.0}, "equation_of_state": "slb3", "F_0": -3717909.79, "V_0": 0.000100452, "K_0": 59752590000.0, "Kprime_0": 2.77846, "Debye_0": 719.0831, "grueneisen_0": 0.57877, "q_0": 1.0, "G_0": 36000000000.0, "Gprime_0": 1.38571, "eta_s_0": 1.02954, "n": 13.0, "Z": 4.0, "molar_mass": 0.262223, } Mineral.__init__(self)
[docs] class acm(Mineral): def __init__(self): self.params = { "name": "Acmite", "formula": {"Na": 1.0, "Fe": 1.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -2419124.39, "V_0": 6.4606e-05, "K_0": 116100000000.0, "Kprime_0": 4.4, "Debye_0": 726.94116, "grueneisen_0": 0.77467, "q_0": 0.60142, "G_0": 72454000000.0, "Gprime_0": 1.71384, "eta_s_0": 1.7391, "n": 10.0, "Z": 1.0, "molar_mass": 0.231, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 4.0, "S_D": 14.89723, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class al(Mineral): def __init__(self): self.params = { "name": "Almandine", "formula": {"Fe": 3.0, "Al": 2.0, "Si": 3.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -4930861.659999999, "V_0": 0.00011543, "K_0": 173896370000.0, "Kprime_0": 4.91341, "Debye_0": 741.38227, "grueneisen_0": 1.06493, "q_0": 1.42169, "G_0": 96000000000.0, "Gprime_0": 1.40927, "eta_s_0": 2.09289, "n": 20.0, "Z": 4.0, "molar_mass": 0.49776, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 7.5, "S_D": 40.14405, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class alpv(Mineral): def __init__(self): self.params = { "name": "Al-Perovskite", "formula": {"Al": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1517031.0, "V_0": 2.4944e-05, "K_0": 242400000000.0, "Kprime_0": 4.1, "Debye_0": 856.18212, "grueneisen_0": 1.54466, "q_0": 0.83352, "G_0": 169199620000.0, "Gprime_0": 1.55703, "eta_s_0": 2.27978, "n": 5.0, "Z": 4.0, "molar_mass": 0.101961, } Mineral.__init__(self)
[docs] class an(Mineral): def __init__(self): self.params = { "name": "Anorthite", "formula": {"Ca": 1.0, "Al": 2.0, "Si": 2.0, "O": 8.0}, "equation_of_state": "slb3", "F_0": -4012381.1300000004, "V_0": 0.00010061, "K_0": 84093390000.0, "Kprime_0": 6.73397, "Debye_0": 754.46887, "grueneisen_0": 0.38512, "q_0": 1.0, "G_0": 39900000000.0, "Gprime_0": 1.09129, "eta_s_0": 1.63405, "n": 13.0, "Z": 2.0, "molar_mass": 0.278211, } Mineral.__init__(self)
[docs] class anao(Mineral): def __init__(self): self.params = { "name": "alpha-NaO2_phase", "formula": {"Na": 2.0, "Al": 2.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -2124562.13, "V_0": 4.542e-05, "K_0": 161143930000.0, "Kprime_0": 3.90838, "Debye_0": 744.51451, "grueneisen_0": 1.45033, "q_0": 1.5487, "G_0": 108465250000.0, "Gprime_0": 2.14668, "eta_s_0": 0.77305, "n": 8.0, "Z": 1.0, "molar_mass": 0.16394023, } Mineral.__init__(self)
[docs] class andr(Mineral): def __init__(self): self.params = { "name": "Grossular", "formula": {"Ca": 3.0, "Fe": 2.0, "Si": 3.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -5414950.41, "V_0": 0.00013199, "K_0": 153580040000.0, "Kprime_0": 4.78447, "Debye_0": 750.98472, "grueneisen_0": 1.04336, "q_0": 1.42169, "G_0": 89700000000.0, "Gprime_0": 0.97013, "eta_s_0": 2.84503, "n": 20.0, "Z": 4.0, "molar_mass": 0.50817, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 11.7, "S_D": 29.79445, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class apbo(Mineral): def __init__(self): self.params = { "name": "alpha-PbO_2-SiO_2", "formula": {"Si": 1.0, "O": 2.0}, "equation_of_state": "slb3", "F_0": -792997.39, "V_0": 1.367e-05, "K_0": 327162360000.0, "Kprime_0": 4.0166, "Debye_0": 1132.97205, "grueneisen_0": 1.55723, "q_0": 2.21141, "G_0": 227412210000.0, "Gprime_0": 1.77076, "eta_s_0": 4.56617, "n": 3.0, "Z": 4.0, "molar_mass": 0.060085, } Mineral.__init__(self)
[docs] class appv(Mineral): def __init__(self): self.params = { "name": "Al-Post-Perovskite", "formula": {"Al": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1434367.18, "V_0": 2.45e-05, "K_0": 247740000000.0, "Kprime_0": 4.0, "Debye_0": 752.02929, "grueneisen_0": 1.86524, "q_0": 1.76454, "G_0": 91897150000.0, "Gprime_0": 1.81823, "eta_s_0": 2.70624, "n": 5.0, "Z": 4.0, "molar_mass": 0.101961, } Mineral.__init__(self)
[docs] class capv(Mineral): def __init__(self): self.params = { "name": "Ca-Perovskite", "formula": {"Ca": 1.0, "Si": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1461201.28, "V_0": 2.745e-05, "K_0": 236000000000.0, "Kprime_0": 3.9, "Debye_0": 800.29043, "grueneisen_0": 1.88997, "q_0": 0.89608, "G_0": 126000000000.0, "Gprime_0": 1.6, "eta_s_0": 1.35422, "n": 5.0, "Z": 1.0, "molar_mass": 0.116164, } Mineral.__init__(self)
[docs] class cats(Mineral): def __init__(self): self.params = { "name": "Lime_Tschermak'", "formula": {"Ca": 1.0, "Al": 2.0, "Si": 1.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -3119890.8000000003, "V_0": 6.3574e-05, "K_0": 113759900000.0, "Kprime_0": 4.8061, "Debye_0": 804.36068, "grueneisen_0": 0.82288, "q_0": 0.60142, "G_0": 75337410000.0, "Gprime_0": 1.71384, "eta_s_0": 1.77238, "n": 10.0, "Z": 1.0, "molar_mass": 0.218123, } Mineral.__init__(self)
[docs] class cen(Mineral): def __init__(self): self.params = { "name": "Clinoenstatite", "formula": {"Mg": 2.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -2904584.98, "V_0": 6.25e-05, "K_0": 113759900000.0, "Kprime_0": 4.8061, "Debye_0": 805.59286, "grueneisen_0": 1.00921, "q_0": 0.60142, "G_0": 76810310000.0, "Gprime_0": 1.71384, "eta_s_0": 1.42387, "n": 10.0, "Z": 1.0, "molar_mass": 0.2007774, } Mineral.__init__(self)
[docs] class co(Mineral): def __init__(self): self.params = { "name": "Corundum", "formula": {"Al": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1582443.1400000001, "V_0": 2.5577e-05, "K_0": 252585720000.0, "Kprime_0": 3.88671, "Debye_0": 932.21586, "grueneisen_0": 1.3081, "q_0": 1.71245, "G_0": 163200000000.0, "Gprime_0": 1.64704, "eta_s_0": 2.84761, "n": 5.0, "Z": 2.0, "molar_mass": 0.101961, } Mineral.__init__(self)
[docs] class coes(Mineral): def __init__(self): self.params = { "name": "Coesite", "formula": {"Si": 1.0, "O": 2.0}, "equation_of_state": "slb3", "F_0": -853834.92, "V_0": 2.0657e-05, "K_0": 103537990000.0, "Kprime_0": 2.9007, "Debye_0": 875.22323, "grueneisen_0": 0.29043, "q_0": 1.0, "G_0": 61600000000.0, "Gprime_0": 0.49686, "eta_s_0": 2.75631, "n": 3.0, "Z": 16.0, "molar_mass": 0.060085, } Mineral.__init__(self)
[docs] class cppv(Mineral): def __init__(self): self.params = { "name": "Cr-Post-Perovskite", "formula": {"Cr": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1110023.23, "V_0": 2.6949e-05, "K_0": 247740000000.0, "Kprime_0": 4.0, "Debye_0": 755.01863, "grueneisen_0": 1.64015, "q_0": 1.76454, "G_0": 187873500000.0, "Gprime_0": 1.98845, "eta_s_0": 3.16235, "n": 5.0, "Z": 2.0, "molar_mass": 0.15199, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 23.05213, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class crcf(Mineral): def __init__(self): self.params = { "name": "Cr_Ca-Ferrite", "formula": {"Mg": 1.0, "Cr": 2.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1736682.29, "V_0": 3.9421e-05, "K_0": 185400000000.0, "Kprime_0": 4.0, "Debye_0": 684.9543, "grueneisen_0": 1.56656, "q_0": 1.0, "G_0": 141453800000.0, "Gprime_0": 1.93591, "eta_s_0": 1.93943, "n": 7.0, "Z": 8.0, "molar_mass": 0.19229, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 23.05213, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class crpv(Mineral): def __init__(self): self.params = { "name": "Cr-Perovskite", "formula": {"Cr": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1186685.95, "V_0": 2.8189e-05, "K_0": 250565350000.0, "Kprime_0": 4.13438, "Debye_0": 758.1187, "grueneisen_0": 1.54466, "q_0": 0.83352, "G_0": 152053560000.0, "Gprime_0": 1.73254, "eta_s_0": 2.83537, "n": 5.0, "Z": 2.0, "molar_mass": 0.15199, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 23.05213, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class di(Mineral): def __init__(self): self.params = { "name": "Diopside", "formula": {"Ca": 1.0, "Mg": 1.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -3029614.78, "V_0": 6.6039e-05, "K_0": 113759900000.0, "Kprime_0": 4.8061, "Debye_0": 782.57306, "grueneisen_0": 1.00921, "q_0": 0.60142, "G_0": 72700000000.0, "Gprime_0": 1.71384, "eta_s_0": 1.06175, "n": 10.0, "Z": 1.0, "molar_mass": 0.2165504, } Mineral.__init__(self)
[docs] class en(Mineral): def __init__(self): self.params = { "name": "Enstatite", "formula": {"Mg": 2.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -2912202.5, "V_0": 6.2676e-05, "K_0": 107076810000.0, "Kprime_0": 7.02751, "Debye_0": 812.21227, "grueneisen_0": 0.78477, "q_0": 3.43847, "G_0": 76800000000.0, "Gprime_0": 1.54596, "eta_s_0": 2.5045, "n": 10.0, "Z": 4.0, "molar_mass": 0.2007774, } Mineral.__init__(self)
[docs] class esk(Mineral): def __init__(self): self.params = { "name": "Eskolaite", "formula": {"Cr": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1206914.71, "V_0": 2.8904e-05, "K_0": 233340360000.0, "Kprime_0": 4.01705, "Debye_0": 766.73627, "grueneisen_0": 1.15191, "q_0": 2.22481, "G_0": 123200000000.0, "Gprime_0": 1.81492, "eta_s_0": 2.55521, "n": 5.0, "Z": 2.0, "molar_mass": 0.15199, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 305.5, "S_D": 23.05213, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fa(Mineral): def __init__(self): self.params = { "name": "Fayalite", "formula": {"Fe": 2.0, "Si": 1.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1371708.3399999999, "V_0": 4.629e-05, "K_0": 136485580000.0, "Kprime_0": 4.88157, "Debye_0": 618.96116, "grueneisen_0": 1.08388, "q_0": 2.88055, "G_0": 51220000000.0, "Gprime_0": 0.85893, "eta_s_0": 1.65937, "n": 7.0, "Z": 4.0, "molar_mass": 0.203777, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 65.0, "S_D": 26.7627, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fapv(Mineral): def __init__(self): self.params = { "name": "FeAlO3-Perovskite_HS", "formula": {"Fe": 1.0, "Al": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1131674.78, "V_0": 2.709e-05, "K_0": 223325500000.0, "Kprime_0": 4.1, "Debye_0": 755.62079, "grueneisen_0": 1.54466, "q_0": 0.83352, "G_0": 159881770000.0, "Gprime_0": 1.73254, "eta_s_0": 2.8548, "n": 5.0, "Z": 4.0, "molar_mass": 0.1308249, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 14.89723, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fea(Mineral): def __init__(self): self.params = { "name": "alpha_(bcc)_Iron", "formula": {"Fe": 1.0}, "equation_of_state": "slb3-conductive", "F_0": 11.82, "V_0": 7.093e-06, "K_0": 163421140000.0, "Kprime_0": 6.01732, "Debye_0": 398.00486, "grueneisen_0": 1.66729, "q_0": 0.90658, "G_0": 81470000000.0, "Gprime_0": 1.9223, "eta_s_0": 5.96207, "n": 1.0, "Z": 2.0, "molar_mass": 0.05584515, "bel_0": 0.00388, "gel": 1.4796, } self.property_modifiers = [ [ "magnetic_chs", { "structural_parameter": 0.4, "curie_temperature": [1043.01, 0.0], "magnetic_moment": [np.float64(2.1199287186179743), 0.0], }, ], [ "linear", {"delta_E": 8932.739871162863, "delta_S": 9.46028, "delta_V": 0.0}, ], ] Mineral.__init__(self)
[docs] class fec2(Mineral): def __init__(self): self.params = { "name": "HP-Clinoferrosilite", "formula": {"Fe": 2.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -2219723.5300000003, "V_0": 6.38541e-05, "K_0": 116025560000.0, "Kprime_0": 6.23685, "Debye_0": 691.84626, "grueneisen_0": 1.12478, "q_0": 0.20409, "G_0": 79289860000.0, "Gprime_0": 1.84119, "eta_s_0": 1.14272, "n": 10.0, "Z": 1.0, "molar_mass": 0.2638614, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 26.7627, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fecf(Mineral): def __init__(self): self.params = { "name": "Fe-Ca-Ferrite", "formula": {"Fe": 1.0, "Al": 2.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1768312.12, "V_0": 3.7216e-05, "K_0": 213000000000.0, "Kprime_0": 4.1, "Debye_0": 715.88779, "grueneisen_0": 1.56656, "q_0": 1.0, "G_0": 164115350000.0, "Gprime_0": 1.93591, "eta_s_0": 2.46745, "n": 7.0, "Z": 4.0, "molar_mass": 0.173806, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 13.38135, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fee(Mineral): def __init__(self): self.params = { "name": "epsilon_(hcp)_Iron", "formula": {"Fe": 1.0}, "equation_of_state": "slb3-conductive", "F_0": 3428.48, "V_0": 6.7651e-06, "K_0": 165000000000.0, "Kprime_0": 4.97, "Debye_0": 379.74281, "grueneisen_0": 2.13092, "q_0": 1.02253, "G_0": 91000000000.0, "Gprime_0": 2.24804, "eta_s_0": 5.20603, "n": 1.0, "Z": 2.0, "molar_mass": 0.05584515, "bel_0": 0.00411, "gel": 1.6927, } Mineral.__init__(self)
[docs] class feg(Mineral): def __init__(self): self.params = { "name": "gamma_(fcc)_Iron", "formula": {"Fe": 1.0}, "equation_of_state": "slb3-conductive", "F_0": 4675.83, "V_0": 6.9883e-06, "K_0": 165000000000.0, "Kprime_0": 5.97, "Debye_0": 285.19315, "grueneisen_0": 1.84924, "q_0": 1.02176, "G_0": 91000000000.0, "Gprime_0": 2.33869, "eta_s_0": 6.50014, "n": 1.0, "Z": 2.0, "molar_mass": 0.05584515, "bel_0": 0.00375, "gel": 1.4796, } Mineral.__init__(self)
[docs] class feil(Mineral): def __init__(self): self.params = { "name": "Fe-Akimotoite", "formula": {"Fe": 1.0, "Si": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1044260.0800000001, "V_0": 2.6854e-05, "K_0": 210692630000.0, "Kprime_0": 5.2154, "Debye_0": 760.91558, "grueneisen_0": 1.19328, "q_0": 2.22481, "G_0": 167069220000.0, "Gprime_0": 1.81492, "eta_s_0": 3.6318, "n": 5.0, "Z": 2.0, "molar_mass": 0.131931, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 13.38135, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fepv(Mineral): def __init__(self): self.params = { "name": "Fe-Perovskite", "formula": {"Fe": 1.0, "Si": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1002026.07, "V_0": 2.5321e-05, "K_0": 270582550000.00003, "Kprime_0": 4.01, "Debye_0": 740.39231, "grueneisen_0": 1.54466, "q_0": 0.83352, "G_0": 130058789999.99998, "Gprime_0": 1.37279, "eta_s_0": 2.08541, "n": 5.0, "Z": 4.0, "molar_mass": 0.131931, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 13.38135, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class feri(Mineral): def __init__(self): self.params = { "name": "Fe-Ringwoodite", "formula": {"Fe": 2.0, "Si": 1.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1356599.78, "V_0": 4.186e-05, "K_0": 213409100000.0, "Kprime_0": 4.22035, "Debye_0": 651.49411, "grueneisen_0": 1.26156, "q_0": 2.39214, "G_0": 92000000000.0, "Gprime_0": 1.35412, "eta_s_0": 1.76941, "n": 7.0, "Z": 2.0, "molar_mass": 0.203777, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 11.8, "S_D": 26.7627, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fewa(Mineral): def __init__(self): self.params = { "name": "Fe-Wadsleyite", "formula": {"Fe": 2.0, "Si": 1.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1356211.64, "V_0": 4.28e-05, "K_0": 168566850000.0, "Kprime_0": 4.12302, "Debye_0": 636.8306, "grueneisen_0": 1.20498, "q_0": 2.20831, "G_0": 72000000000.0, "Gprime_0": 1.50973, "eta_s_0": 0.94487, "n": 7.0, "Z": 8.0, "molar_mass": 0.203777, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 26.7627, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fnal(Mineral): def __init__(self): self.params = { "name": "Fe-NAL_Phase", "formula": {"Na": 1.0, "Fe": 2.0, "Al": 5.0, "Si": 1.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -5465247.03, "V_0": 0.000112045, "K_0": 204006720000.0, "Kprime_0": 4.31789, "Debye_0": 788.03574, "grueneisen_0": 1.43147, "q_0": 1.0, "G_0": 152250130000.0, "Gprime_0": 1.74226, "eta_s_0": 2.73801, "n": 21.0, "Z": 1.0, "molar_mass": 0.48966601, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 26.7627, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fo(Mineral): def __init__(self): self.params = { "name": "Forsterite", "formula": {"Mg": 2.0, "Si": 1.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -2055345.33, "V_0": 4.3603e-05, "K_0": 127955500000.0, "Kprime_0": 4.21796, "Debye_0": 809.1977, "grueneisen_0": 0.9928, "q_0": 2.10671, "G_0": 81600000000.0, "Gprime_0": 1.46257, "eta_s_0": 2.29968, "n": 7.0, "Z": 4.0, "molar_mass": 0.140695, } Mineral.__init__(self)
[docs] class fppv(Mineral): def __init__(self): self.params = { "name": "Fe-PostPerovskite", "formula": {"Fe": 1.0, "Si": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -988569.5, "V_0": 2.52963e-05, "K_0": 247740000000.0, "Kprime_0": 4.0, "Debye_0": 769.31113, "grueneisen_0": 1.64015, "q_0": 1.76454, "G_0": 129500000000.0, "Gprime_0": 1.40076, "eta_s_0": 1.8495, "n": 5.0, "Z": 4.0, "molar_mass": 0.131931, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 13.38135, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class fs(Mineral): def __init__(self): self.params = { "name": "Ferrosilite", "formula": {"Fe": 2.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -2224559.86, "V_0": 6.5941e-05, "K_0": 100545440000.0, "Kprime_0": 7.87556, "Debye_0": 677.91886, "grueneisen_0": 0.7144, "q_0": 3.43847, "G_0": 52000000000.0, "Gprime_0": 1.54596, "eta_s_0": 1.08228, "n": 10.0, "Z": 4.0, "molar_mass": 0.2638614, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 26.7627, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class gr(Mineral): def __init__(self): self.params = { "name": "Grossular", "formula": {"Ca": 3.0, "Al": 2.0, "Si": 3.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -6276906.68, "V_0": 0.00012512, "K_0": 167062260000.0, "Kprime_0": 3.91544, "Debye_0": 822.77062, "grueneisen_0": 1.05402, "q_0": 1.88886, "G_0": 109000000000.0, "Gprime_0": 1.16274, "eta_s_0": 2.38415, "n": 20.0, "Z": 4.0, "molar_mass": 0.450449, } Mineral.__init__(self)
[docs] class hc(Mineral): def __init__(self): self.params = { "name": "Hercynite", "formula": {"Fe": 1.0, "Al": 2.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1841813.73, "V_0": 4.0843e-05, "K_0": 208947270000.0, "Kprime_0": 4.62702, "Debye_0": 747.13664, "grueneisen_0": 1.18794, "q_0": 3.97087, "G_0": 84500000000.0, "Gprime_0": 0.62795, "eta_s_0": 2.46339, "n": 7.0, "Z": 8.0, "molar_mass": 0.17381, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 13.0, "S_D": 13.38134, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class he(Mineral): def __init__(self): self.params = { "name": "Hedenbergite", "formula": {"Ca": 1.0, "Fe": 1.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -2675636.34, "V_0": 6.7867e-05, "K_0": 119204720000.0, "Kprime_0": 4.81927, "Debye_0": 702.08234, "grueneisen_0": 0.96665, "q_0": 0.60142, "G_0": 61000000000.0, "Gprime_0": 1.71384, "eta_s_0": 1.01745, "n": 10.0, "Z": 1.0, "molar_mass": 0.2480924, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 34.5, "S_D": 13.38135, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class hem(Mineral): def __init__(self): self.params = { "name": "Hematite", "formula": {"Fe": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -744045.2000000001, "V_0": 3.0287e-05, "K_0": 204245370000.0, "Kprime_0": 4.0997, "Debye_0": 653.80747, "grueneisen_0": 1.58944, "q_0": 2.22481, "G_0": 91000000000.0, "Gprime_0": 1.81492, "eta_s_0": 0.5241, "n": 5.0, "Z": 1.0, "molar_mass": 0.15968852, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 950.01, "S_D": 29.79445, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class hepv(Mineral): def __init__(self): self.params = { "name": "Fe2O3-Perovskite_HS", "formula": {"Fe": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -706527.0299999999, "V_0": 2.95768e-05, "K_0": 204251000000.0, "Kprime_0": 4.1, "Debye_0": 646.79863, "grueneisen_0": 1.54466, "q_0": 0.83352, "G_0": 123483250000.0, "Gprime_0": 1.73254, "eta_s_0": 1.88876, "n": 5.0, "Z": 4.0, "molar_mass": 0.15968852, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 29.79445, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class hlpv(Mineral): def __init__(self): self.params = { "name": "Fe2O3-Perovskite_LS", "formula": {"Fe": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -597158.86, "V_0": 2.75209e-05, "K_0": 204251000000.0, "Kprime_0": 4.1, "Debye_0": 759.63863, "grueneisen_0": 1.54466, "q_0": 0.83352, "G_0": 177577950000.0, "Gprime_0": 1.73254, "eta_s_0": 3.54218, "n": 5.0, "Z": 4.0, "molar_mass": 0.15968852, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 20.66026, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class hmag(Mineral): def __init__(self): self.params = { "name": "High-Pressure_Magnetit", "formula": {"Fe": 3.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -993123.89, "V_0": 4.1702e-05, "K_0": 172000000000.0, "Kprime_0": 4.0, "Debye_0": 542.9312, "grueneisen_0": 1.56656, "q_0": 0.41872, "G_0": 120889150000.0, "Gprime_0": 1.93591, "eta_s_0": 1.37608, "n": 7.0, "Z": 1.0, "molar_mass": 0.23153307, } self.property_modifiers = [ [ "magnetic_chs", { "structural_parameter": 0.4, "curie_temperature": [845.5, 0.0], "magnetic_moment": [np.float64(178.98169420433626), 0.0], }, ], [ "linear", {"delta_E": 33048.07971316818, "delta_S": 43.1758, "delta_V": 0.0}, ], ] Mineral.__init__(self)
[docs] class hppv(Mineral): def __init__(self): self.params = { "name": "HS_Fe2O3-Post-Perovski", "formula": {"Fe": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -620839.7200000001, "V_0": 2.76884e-05, "K_0": 176500000000.0, "Kprime_0": 4.0, "Debye_0": 680.92363, "grueneisen_0": 1.64015, "q_0": 1.76454, "G_0": 172363480000.0, "Gprime_0": 1.98845, "eta_s_0": 2.56327, "n": 5.0, "Z": 4.0, "molar_mass": 0.15968852, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.0, "S_D": 29.79445, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class jd(Mineral): def __init__(self): self.params = { "name": "Jadeite", "formula": {"Na": 1.0, "Al": 1.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -2855160.68, "V_0": 6.0508e-05, "K_0": 137357290000.0, "Kprime_0": 3.6305, "Debye_0": 820.2985, "grueneisen_0": 0.85734, "q_0": 2.05453, "G_0": 84000000000.0, "Gprime_0": 1.71384, "eta_s_0": 1.91023, "n": 10.0, "Z": 1.0, "molar_mass": 0.2021387, } Mineral.__init__(self)
[docs] class knor(Mineral): def __init__(self): self.params = { "name": "Knorringite", "formula": {"Mg": 3.0, "Cr": 2.0, "Si": 3.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -5523022.38, "V_0": 0.000118716, "K_0": 157000000000.0, "Kprime_0": 4.5, "Debye_0": 776.39637, "grueneisen_0": 1.24672, "q_0": 1.42169, "G_0": 99527660000.0, "Gprime_0": 1.35756, "eta_s_0": 2.11433, "n": 20.0, "Z": 4.0, "molar_mass": 0.45316, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 5.1, "S_D": 23.05213, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class ky(Mineral): def __init__(self): self.params = { "name": "Kyanite", "formula": {"Al": 2.0, "Si": 1.0, "O": 5.0}, "equation_of_state": "slb3", "F_0": -2443738.48, "V_0": 4.4227e-05, "K_0": 160000000000.0, "Kprime_0": 4.0, "Debye_0": 943.19593, "grueneisen_0": 0.92549, "q_0": 1.0, "G_0": 117646620000.0, "Gprime_0": 1.69117, "eta_s_0": 2.89863, "n": 8.0, "Z": 4.0, "molar_mass": 0.1620456, } Mineral.__init__(self)
[docs] class lppv(Mineral): def __init__(self): self.params = { "name": "LS_Fe2O3-Post-Perovski", "formula": {"Fe": 2.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -405645.45, "V_0": 2.62534e-05, "K_0": 176500000000.0, "Kprime_0": 4.0, "Debye_0": 713.13099, "grueneisen_0": 1.64029, "q_0": 1.76443, "G_0": 220101260000.0, "Gprime_0": 1.98843, "eta_s_0": 3.79074, "n": 5.0, "Z": 4.0, "molar_mass": 0.15968852, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 10.0, "S_D": 20.66026, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class mag(Mineral): def __init__(self): self.params = { "name": "Magnetite", "formula": {"Fe": 3.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1016009.99, "V_0": 4.4528e-05, "K_0": 183876640000.0, "Kprime_0": 5.22819, "Debye_0": 529.46966, "grueneisen_0": 1.35821, "q_0": 0.41872, "G_0": 60300000000.0, "Gprime_0": 0.04657, "eta_s_0": 1.12258, "n": 7.0, "Z": 1.0, "molar_mass": 0.23153307, } self.property_modifiers = [ [ "magnetic_chs", { "structural_parameter": 0.4, "curie_temperature": [845.5, 0.0], "magnetic_moment": [np.float64(178.98169420433626), 0.0], }, ], [ "linear", {"delta_E": 33048.07971316818, "delta_S": 43.1758, "delta_V": 0.0}, ], ] Mineral.__init__(self)
[docs] class mgc2(Mineral): def __init__(self): self.params = { "name": "HP-Clinoenstatite", "formula": {"Mg": 2.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -2904465.49, "V_0": 6.076e-05, "K_0": 116025560000.0, "Kprime_0": 6.23685, "Debye_0": 824.44051, "grueneisen_0": 1.12478, "q_0": 0.20409, "G_0": 87927170000.0, "Gprime_0": 1.84119, "eta_s_0": 2.14193, "n": 10.0, "Z": 1.0, "molar_mass": 0.2007774, } Mineral.__init__(self)
[docs] class mgcf(Mineral): def __init__(self): self.params = { "name": "Mg-Ca-Ferrite", "formula": {"Mg": 1.0, "Al": 2.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -2122885.3600000003, "V_0": 3.6135e-05, "K_0": 213000000000.0, "Kprime_0": 4.1, "Debye_0": 830.714, "grueneisen_0": 1.56656, "q_0": 1.0, "G_0": 129699999999.99998, "Gprime_0": 1.93591, "eta_s_0": 1.30292, "n": 7.0, "Z": 4.0, "molar_mass": 0.142266, } Mineral.__init__(self)
[docs] class mgil(Mineral): def __init__(self): self.params = { "name": "Mg-Akimotoite", "formula": {"Mg": 1.0, "Si": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1409229.53, "V_0": 2.6354e-05, "K_0": 210692630000.0, "Kprime_0": 5.2154, "Debye_0": 928.95623, "grueneisen_0": 1.19328, "q_0": 2.22481, "G_0": 132000000000.0, "Gprime_0": 1.81492, "eta_s_0": 3.3993, "n": 5.0, "Z": 2.0, "molar_mass": 0.100389, } Mineral.__init__(self)
[docs] class mgmj(Mineral): def __init__(self): self.params = { "name": "Mg-Majorite", "formula": {"Mg": 4.0, "Si": 4.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -5690008.32, "V_0": 0.000114324, "K_0": 165118370000.0, "Kprime_0": 4.21183, "Debye_0": 822.48562, "grueneisen_0": 0.97681, "q_0": 1.53581, "G_0": 85000000000.0, "Gprime_0": 1.42969, "eta_s_0": 1.01779, "n": 20.0, "Z": 4.0, "molar_mass": 0.40156, } Mineral.__init__(self)
[docs] class mgpv(Mineral): def __init__(self): self.params = { "name": "Mg-Perovskite", "formula": {"Mg": 1.0, "Si": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1365338.1199999999, "V_0": 2.4445e-05, "K_0": 250565350000.0, "Kprime_0": 4.13438, "Debye_0": 892.95164, "grueneisen_0": 1.54466, "q_0": 0.83352, "G_0": 172900000000.0, "Gprime_0": 1.73254, "eta_s_0": 1.65233, "n": 5.0, "Z": 4.0, "molar_mass": 0.100389, } Mineral.__init__(self)
[docs] class mgri(Mineral): def __init__(self): self.params = { "name": "Mg-Ringwoodite", "formula": {"Mg": 2.0, "Si": 1.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -2018381.1, "V_0": 3.9493e-05, "K_0": 184901750000.0, "Kprime_0": 4.22035, "Debye_0": 879.84656, "grueneisen_0": 1.10843, "q_0": 2.39214, "G_0": 123000000000.0, "Gprime_0": 1.35412, "eta_s_0": 2.30588, "n": 7.0, "Z": 2.0, "molar_mass": 0.140693, } Mineral.__init__(self)
[docs] class mgts(Mineral): def __init__(self): self.params = { "name": "Mg-Tschermak's", "formula": {"Mg": 1.0, "Al": 2.0, "Si": 1.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -3000959.4699999997, "V_0": 5.914e-05, "K_0": 107076810000.0, "Kprime_0": 7.02751, "Debye_0": 788.01368, "grueneisen_0": 0.78477, "q_0": 3.43847, "G_0": 93345240000.0, "Gprime_0": 1.54596, "eta_s_0": 2.39272, "n": 10.0, "Z": 4.0, "molar_mass": 0.20235, } Mineral.__init__(self)
[docs] class mgwa(Mineral): def __init__(self): self.params = { "name": "Mg-Wadsleyite", "formula": {"Mg": 2.0, "Si": 1.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -2029078.6, "V_0": 4.0515e-05, "K_0": 168702760000.0, "Kprime_0": 4.12302, "Debye_0": 849.12535, "grueneisen_0": 1.20498, "q_0": 2.20831, "G_0": 112000000000.0, "Gprime_0": 1.50973, "eta_s_0": 2.56411, "n": 7.0, "Z": 8.0, "molar_mass": 0.140695, } Mineral.__init__(self)
[docs] class mnal(Mineral): def __init__(self): self.params = { "name": "Mg-NAL_Phase", "formula": {"Na": 1.0, "Mg": 2.0, "Al": 5.0, "Si": 1.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -6172514.21, "V_0": 0.000109883, "K_0": 204006720000.0, "Kprime_0": 4.31789, "Debye_0": 868.59088, "grueneisen_0": 1.43147, "q_0": 1.0, "G_0": 129000000000.0, "Gprime_0": 1.74226, "eta_s_0": 1.9384, "n": 21.0, "Z": 1.0, "molar_mass": 0.42658581, } Mineral.__init__(self)
[docs] class mppv(Mineral): def __init__(self): self.params = { "name": "Mg-PostPerovskite", "formula": {"Mg": 1.0, "Si": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1332544.16, "V_0": 2.41108e-05, "K_0": 247740000000.0, "Kprime_0": 4.0, "Debye_0": 931.02549, "grueneisen_0": 1.64015, "q_0": 1.76454, "G_0": 166644930000.0, "Gprime_0": 1.98845, "eta_s_0": 1.43815, "n": 5.0, "Z": 4.0, "molar_mass": 0.100389, } Mineral.__init__(self)
[docs] class nacf(Mineral): def __init__(self): self.params = { "name": "Na-Ca-Ferrite", "formula": {"Na": 1.0, "Al": 1.0, "Si": 1.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1848182.13, "V_0": 3.627e-05, "K_0": 220000000000.0, "Kprime_0": 4.1, "Debye_0": 709.33152, "grueneisen_0": 1.56656, "q_0": 1.0, "G_0": 135023869999.99998, "Gprime_0": 1.74135, "eta_s_0": 1.67725, "n": 7.0, "Z": 4.0, "molar_mass": 0.142054, } Mineral.__init__(self)
[docs] class namj(Mineral): def __init__(self): self.params = { "name": "Na-Majorite", "formula": {"Na": 2.0, "Mg": 1.0, "Si": 5.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -5309561.23, "V_0": 0.000110842, "K_0": 172035520000.0, "Kprime_0": 5.20045, "Debye_0": 845.23671, "grueneisen_0": 1.25087, "q_0": 0.10909, "G_0": 114700000000.0, "Gprime_0": 1.35756, "eta_s_0": 2.48526, "n": 20.0, "Z": 4.0, "molar_mass": 0.40270437, } Mineral.__init__(self)
[docs] class neph(Mineral): def __init__(self): self.params = { "name": "Nepheline", "formula": {"Na": 1.0, "Al": 1.0, "Si": 1.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1996488.39, "V_0": 5.38684e-05, "K_0": 53055500000.0, "Kprime_0": 4.0, "Debye_0": 743.57985, "grueneisen_0": 0.6969, "q_0": 1.0, "G_0": 30700000000.0, "Gprime_0": 1.33087, "eta_s_0": 0.6241, "n": 7.0, "Z": 2.0, "molar_mass": 0.14205431, } self.property_modifiers = [ [ "landau_slb_2022", {"Tc_0": 467.0, "S_D": 10.0, "V_D": 8.000000000000001e-07}, ] ] Mineral.__init__(self)
[docs] class nnal(Mineral): def __init__(self): self.params = { "name": "Na-NAL_Phase", "formula": {"Na": 3.0, "Al": 3.0, "Si": 3.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -5570853.449999999, "V_0": 0.000109401, "K_0": 204006720000.0, "Kprime_0": 4.31789, "Debye_0": 846.08425, "grueneisen_0": 1.43147, "q_0": 1.0, "G_0": 144164270000.0, "Gprime_0": 1.74226, "eta_s_0": 2.40665, "n": 21.0, "Z": 1.0, "molar_mass": 0.42616294, } Mineral.__init__(self)
[docs] class odi(Mineral): def __init__(self): self.params = { "name": "Ortho-Diopside", "formula": {"Ca": 1.0, "Mg": 1.0, "Si": 2.0, "O": 6.0}, "equation_of_state": "slb3", "F_0": -3015701.23, "V_0": 6.8054e-05, "K_0": 107076810000.0, "Kprime_0": 7.02751, "Debye_0": 744.48915, "grueneisen_0": 0.78477, "q_0": 3.43847, "G_0": 58247330000.0, "Gprime_0": 1.54596, "eta_s_0": 1.35202, "n": 10.0, "Z": 1.0, "molar_mass": 0.2165504, } Mineral.__init__(self)
[docs] class pe(Mineral): def __init__(self): self.params = { "name": "Periclase", "formula": {"Mg": 4.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -2278119.6300000004, "V_0": 4.4976e-05, "K_0": 161143930000.0, "Kprime_0": 3.90838, "Debye_0": 770.90151, "grueneisen_0": 1.45033, "q_0": 1.5487, "G_0": 130900000000.0, "Gprime_0": 2.14668, "eta_s_0": 2.56123, "n": 8.0, "Z": 1.0, "molar_mass": 0.16121782, } Mineral.__init__(self)
[docs] class picr(Mineral): def __init__(self): self.params = { "name": "Pircochromite", "formula": {"Mg": 1.0, "Cr": 2.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1808028.0, "V_0": 4.3564e-05, "K_0": 184400000000.0, "Kprime_0": 5.7, "Debye_0": 750.72523, "grueneisen_0": 0.99168, "q_0": 3.97087, "G_0": 90290490000.0, "Gprime_0": 0.62795, "eta_s_0": 3.07014, "n": 7.0, "Z": 8.0, "molar_mass": 0.19229, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 12.55, "S_D": 23.05213, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class pwo(Mineral): def __init__(self): self.params = { "name": "Pseudo-Wollastonite", "formula": {"Ca": 1.0, "Si": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1547095.09, "V_0": 4.0272e-05, "K_0": 86000000000.0, "Kprime_0": 3.8, "Debye_0": 703.00475, "grueneisen_0": 0.95232, "q_0": 1.0, "G_0": 28991610000.0, "Gprime_0": 0.77536, "eta_s_0": 0.76187, "n": 5.0, "Z": 1.0, "molar_mass": 0.116164, } Mineral.__init__(self)
[docs] class py(Mineral): def __init__(self): self.params = { "name": "Pyrope", "formula": {"Mg": 3.0, "Al": 2.0, "Si": 3.0, "O": 12.0}, "equation_of_state": "slb3", "F_0": -5932095.930000001, "V_0": 0.00011308, "K_0": 170239640000.0, "Kprime_0": 4.11067, "Debye_0": 823.23783, "grueneisen_0": 1.01422, "q_0": 1.42169, "G_0": 93700000000.0, "Gprime_0": 1.35756, "eta_s_0": 0.98186, "n": 20.0, "Z": 4.0, "molar_mass": 0.40313, } Mineral.__init__(self)
[docs] class qtz(Mineral): def __init__(self): self.params = { "name": "Quartz", "formula": {"Si": 1.0, "O": 2.0}, "equation_of_state": "slb3", "F_0": -858043.33, "V_0": 2.24211e-05, "K_0": 61425960000.0, "Kprime_0": 19.78014, "Debye_0": 883.46813, "grueneisen_0": -0.03957, "q_0": 1.0, "G_0": 44857750000.0, "Gprime_0": -0.04277, "eta_s_0": 2.40464, "n": 3.0, "Z": 16.0, "molar_mass": 0.060085, } self.property_modifiers = [ [ "landau_slb_2022", {"Tc_0": 847.0, "S_D": 5.76, "V_D": 1.3593599999999998e-06}, ] ] Mineral.__init__(self)
[docs] class smag(Mineral): def __init__(self): self.params = { "name": "Magnetite", "formula": {"Fe": 3.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -1016009.99, "V_0": 4.4528e-05, "K_0": 183876640000.0, "Kprime_0": 5.22819, "Debye_0": 529.46966, "grueneisen_0": 1.35821, "q_0": 0.41872, "G_0": 60300000000.0, "Gprime_0": 0.04657, "eta_s_0": 1.12258, "n": 7.0, "Z": 1.0, "molar_mass": 0.23153307, } self.property_modifiers = [ [ "magnetic_chs", { "structural_parameter": 0.4, "curie_temperature": [845.5, 0.0], "magnetic_moment": [np.float64(178.98169420433626), 0.0], }, ], [ "linear", {"delta_E": 33048.07971316818, "delta_S": 43.1758, "delta_V": 0.0}, ], ] Mineral.__init__(self)
[docs] class sp(Mineral): def __init__(self): self.params = { "name": "Spinel", "formula": {"Mg": 1.0, "Al": 2.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -2171789.32, "V_0": 3.9762e-05, "K_0": 195103490000.0, "Kprime_0": 4.62702, "Debye_0": 801.86054, "grueneisen_0": 0.97405, "q_0": 3.97087, "G_0": 109000000000.0, "Gprime_0": 0.62795, "eta_s_0": 2.4035, "n": 7.0, "Z": 8.0, "molar_mass": 0.142278, } Mineral.__init__(self)
[docs] class SLB3Stishovite(SLB3):
[docs] def shear_modulus(self, pressure, temperature, volume, params): """ Returns the shear modulus. :math:`[Pa]` SLB2024 first calculate the shear modulus at T_0 using the third order Birch-Murnaghan equation of state, then apply the softening relevant to the temperature and pressure of interest, and then apply the usual thermal term. """ G_bare = bm.shear_modulus_third_order(volume, params) Pc = 51.6e9 + 11.1 * (temperature - 300.0) * 1.0e6 # Eq B4 PcQ = ( Pc + 50.7e9 ) # From the HeFESTo code in stishtran.f. PcQ is T-independent in paper. Cs0 = 128.0e9 * PcQ / Pc Delta = 0.0 # 100.e9 in the HeFESTo code in stishtran.f, 0. in paper. PminusPc = pressure - Pc if PminusPc < 0.0: Cs = Cs0 * PminusPc / (pressure - PcQ) # Eq B2 else: Ast = (Cs0 - Delta) * (PcQ - Pc) Cs = Cs0 - Ast / (PcQ - pressure + 3.0 * PminusPc) # Eq B3 # VRH-like average of the bare shear modulus with softened (C11-C12)/2. G = 0.5 * (13.0 / 15.0 * G_bare + 2.0 / 15.0 * Cs) + 0.5 / ( 13.0 / 15.0 / G_bare + 2.0 / 15.0 / Cs ) # Eq B5 debye_T = self._debye_temperature(params["V_0"] / volume, params) eta_s = self._isotropic_eta_s(params["V_0"] / volume, params) E_th = debye.thermal_energy(temperature, debye_T, params["n"]) E_th_ref = debye.thermal_energy(params["T_0"], debye_T, params["n"]) return G - eta_s * (E_th - E_th_ref) / volume
[docs] class st(Mineral): def __init__(self): self.params = { "name": "Stishovite", "formula": {"Si": 1.0, "O": 2.0}, "equation_of_state": SLB3Stishovite(), "F_0": -817124.2, "V_0": 1.4017e-05, "K_0": 305839630000.0, "Kprime_0": 4.02918, "Debye_0": 1096.06023, "grueneisen_0": 1.55723, "q_0": 2.21141, "G_0": 250293920000.0, "Gprime_0": 2.2962, "eta_s_0": 5.39736, "n": 3.0, "Z": 2.0, "molar_mass": 0.060085, } Mineral.__init__(self)
[docs] class wo(Mineral): def __init__(self): self.params = { "name": "Wollastonite", "formula": {"Ca": 1.0, "Si": 1.0, "O": 3.0}, "equation_of_state": "slb3", "F_0": -1548541.46, "V_0": 3.9901e-05, "K_0": 93900000000.0, "Kprime_0": 4.0, "Debye_0": 713.58788, "grueneisen_0": 1.05734, "q_0": 1.0, "G_0": 50300000000.0, "Gprime_0": 1.23206, "eta_s_0": 1.2711, "n": 5.0, "Z": 1.0, "molar_mass": 0.116164, } Mineral.__init__(self)
[docs] class wu(Mineral): def __init__(self): self.params = { "name": 'W\\"ustite', "formula": {"Fe": 4.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -962050.35, "V_0": 4.9024e-05, "K_0": 160700000000.0, "Kprime_0": 4.0, "Debye_0": 427.00102, "grueneisen_0": 1.45033, "q_0": 1.5487, "G_0": 59000000000.0, "Gprime_0": 1.44764, "eta_s_0": 0.0596, "n": 8.0, "Z": 1.0, "molar_mass": 0.28737822, } self.property_modifiers = [ ["landau_slb_2022", {"Tc_0": 191.0, "S_D": 53.5254, "V_D": 0.0}] ] Mineral.__init__(self)
[docs] class wuls(Mineral): def __init__(self): self.params = { "name": 'W\\"ustite_Low_Spin', "formula": {"Fe": 4.0, "O": 4.0}, "equation_of_state": "slb3", "F_0": -609335.18, "V_0": 4.33997e-05, "K_0": 199700000000.0, "Kprime_0": 4.0, "Debye_0": 492.99392, "grueneisen_0": 1.45033, "q_0": 1.5487, "G_0": 59000000000.0, "Gprime_0": 1.44073, "eta_s_0": -0.14773, "n": 8.0, "Z": 1.0, "molar_mass": 0.28737822, } Mineral.__init__(self)
""" SOLUTIONS """
[docs] class c2c_pyroxene(Solution): def __init__(self, molar_fractions=None): """IdealSolution model for c2c_pyroxene (c2c). Endmembers (and site species distributions) are given in the order: - mgc2 ([Mg]2) - fec2 ([Fe]2) """ self.name = "c2c_pyroxene" self.solution_model = IdealSolution( endmembers=[ [mgc2(), "[Mg]2"], [fec2(), "[Fe]2"], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class calcium_ferrite_structured_phase(Solution): def __init__(self, molar_fractions=None): """AsymmetricRegularSolution model for calcium_ferrite_structured_phase (cf). Endmembers (and site species distributions) are given in the order: - mgcf ([Mg][Al][Al]) - fecf ([Fe][Al][Al]) - nacf ([Na][Al][Si]) - hmag ([Fe][Fef][Fef]) - crcf ([Mg][Cr][Cr]) """ self.name = "calcium_ferrite_structured_phase" self.solution_model = AsymmetricRegularSolution( endmembers=[ [mgcf(), "[Mg][Al][Al]"], [fecf(), "[Fe][Al][Al]"], [nacf(), "[Na][Al][Si]"], [hmag(), "[Fe][Fef][Fef]"], [crcf(), "[Mg][Cr][Cr]"], ], alphas=[1.0, 1.0, 3.97647, 1.0, 1.0], energy_interaction=[ [ np.float64(0.0), np.float64(67194.52), np.float64(0.0), np.float64(0.0), ], [np.float64(67194.52), np.float64(0.0), np.float64(0.0)], [np.float64(0.0), np.float64(67194.52)], [np.float64(0.0)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class clinopyroxene(Solution): def __init__(self, molar_fractions=None): """AsymmetricRegularSolution model for clinopyroxene (cpx). Endmembers (and site species distributions) are given in the order: - di ([Ca][Mg][Si]2) - he ([Ca][Fe][Si]2) - cen ([Mg][Mg][Si]2) - cats ([Ca][Al][Si1/2Al1/2]2) - jd ([Na][Al][Si]2) - acm ([Na][Fef][Si]2) """ self.name = "clinopyroxene" self.solution_model = AsymmetricRegularSolution( endmembers=[ [di(), "[Ca][Mg][Si]2"], [he(), "[Ca][Fe][Si]2"], [cen(), "[Mg][Mg][Si]2"], [cats(), "[Ca][Al][Si1/2Al1/2]2"], [jd(), "[Na][Al][Si]2"], [acm(), "[Na][Fef][Si]2"], ], alphas=[1.0, 1.0, 1.0, 3.5, 1.0, 1.0], energy_interaction=[ [ np.float64(0.0), np.float64(24740.0), np.float64(26000.0), np.float64(24300.0), np.float64(24300.0), ], [ np.float64(24740.0), np.float64(26000.0), np.float64(24300.0), np.float64(24300.0), ], [np.float64(63718.12), np.float64(46037.09), np.float64(46037.09)], [np.float64(10000.0), np.float64(10000.0)], [np.float64(0.0)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class garnet(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for garnet (gt). Endmembers (and site species distributions) are given in the order: - py ([Mg]3[Al][Al]) - al ([Fe]3[Al][Al]) - gr ([Ca]3[Al][Al]) - mgmj ([Mg]3[Mg][Si]) - namj ([Na2/3Mg1/3]3[Si][Si]) - andr ([Ca]3[Fef][Fef]) - knor ([Mg]3[Cr][Cr]) """ self.name = "garnet" self.solution_model = SymmetricRegularSolution( endmembers=[ [py(), "[Mg]3[Al][Al]"], [al(), "[Fe]3[Al][Al]"], [gr(), "[Ca]3[Al][Al]"], [mgmj(), "[Mg]3[Mg][Si]"], [namj(), "[Na2/3Mg1/3]3[Si][Si]"], [andr(), "[Ca]3[Fef][Fef]"], [knor(), "[Mg]3[Cr][Cr]"], ], energy_interaction=[ [ np.float64(0.0), np.float64(19088.57), np.float64(23164.32), np.float64(23164.32), np.float64(53000.0), np.float64(0.0), ], [ np.float64(0.0), np.float64(23164.32), np.float64(23164.32), np.float64(44000.0), np.float64(10000.0), ], [ np.float64(64682.45), np.float64(64682.45), np.float64(0.0), np.float64(-20000.0), ], [np.float64(71172.45), np.float64(64682.45), np.float64(25879.13)], [np.float64(64682.45), np.float64(25879.13)], [np.float64(75000.0)], ], volume_interaction=[ [ np.float64(0.0), np.float64(1.03e-06), np.float64(0.0), np.float64(0.0), np.float64(0.0), np.float64(0.0), ], [ np.float64(0.0), np.float64(0.0), np.float64(0.0), np.float64(0.0), np.float64(0.0), ], [ np.float64(1.03e-06), np.float64(0.0), np.float64(0.0), np.float64(0.0), ], [np.float64(0.0), np.float64(0.0), np.float64(0.0)], [np.float64(0.0), np.float64(0.0)], [np.float64(0.0)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class ilmenite(Solution): def __init__(self, molar_fractions=None): """AsymmetricRegularSolution model for ilmenite (il). Endmembers (and site species distributions) are given in the order: - mgil ([Mg][Si]) - feil ([Fe][Si]) - co ([Al][Al]) - hem ([Fef][Fef]) - esk ([Cr][Cr]) """ self.name = "ilmenite" self.solution_model = AsymmetricRegularSolution( endmembers=[ [mgil(), "[Mg][Si]"], [feil(), "[Fe][Si]"], [co(), "[Al][Al]"], [hem(), "[Fef][Fef]"], [esk(), "[Cr][Cr]"], ], alphas=[1.0, 1.0, 1.0, 1.3, 1.0], energy_interaction=[ [ np.float64(0.0), np.float64(62487.4), np.float64(65000.0), np.float64(93184.02), ], [np.float64(62487.4), np.float64(65000.0), np.float64(93184.02)], [np.float64(65000.0), np.float64(40000.0)], [np.float64(40000.0)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class ferropericlase(Solution): def __init__(self, molar_fractions=None): """AsymmetricRegularSolution model for ferropericlase (mw). Endmembers (and site species distributions) are given in the order: - pe ([Mg]2[Mg]2) - wu ([Fe]2[Fe]2) - wuls ([Fels]2[Fels]2) - anao ([Na]2[Al]2) - mag ([Fef]0[Fef]2) The entropy from the first site in magnetite is not counted. """ self.name = "ferropericlase" self.solution_model = AsymmetricRegularSolution( endmembers=[ [pe(), "[Mg]2[Mg]2"], [wu(), "[Fe]2[Fe]2"], [wuls(), "[Fels]2[Fels]2"], [anao(), "[Na]2[Al]2"], [mag(), "[Fef]0[Fef]2"], ], alphas=[1.0, 1.0, 1.0, 1.0, 0.08293], energy_interaction=[ [ np.float64(44000.0), np.float64(-87120.47), np.float64(120000.0), np.float64(302745.2), ], [np.float64(-60219.09), np.float64(120000.0), np.float64(106151.49)], [np.float64(120000.0), np.float64(106151.49)], [np.float64(120000.0)], ], volume_interaction=[ [ np.float64(4.4e-07), np.float64(0.0), np.float64(0.0), np.float64(0.0), ], [np.float64(0.0), np.float64(0.0), np.float64(0.0)], [np.float64(0.0), np.float64(0.0)], [np.float64(0.0)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class ferropericlase_relaxed(RelaxedSolution): def __init__(self): """RelaxedSolution model for ferropericlase (mw). Endmembers (and site species distributions) are given in the order: - pe ([Mg]2[Mg]2) - wu and wuls ([Fe,Fels]2[Fe,Fels]2) - anao ([Na]2[Al]2) - mag ([Fe]0[Fef]2) The entropy from the first site in magnetite is not counted. The equilibrium spin state is calculated automatically. """ solution = ferropericlase() vrel = [[0.0, 0.5, -0.5, 0.0, 0.0]] vunrel = [ [1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.5, 0.5, 0.0, 0.0], [0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 1.0], ] RelaxedSolution.__init__(self, solution, vrel, vunrel)
[docs] class new_aluminous_phase(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for new_aluminous_phase (nal). Endmembers (and site species distributions) are given in the order: - mnal ([Mg]2[Al5/6Si1/6]6) - fnal ([Fe]2[Al5/6Si1/6]6) - nnal ([Na]2[Al3/6Si3/6]6) """ self.name = "new_aluminous_phase" self.solution_model = SymmetricRegularSolution( endmembers=[ [mnal(), "[Mg]2[Al5/6Si1/6]6"], [fnal(), "[Fe]2[Al5/6Si1/6]6"], [nnal(), "[Na]2[Al3/6Si3/6]6"], ], energy_interaction=[ [np.float64(0.0), np.float64(-62082.92)], [np.float64(-62082.92)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class olivine(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for olivine (ol). Endmembers (and site species distributions) are given in the order: - fo ([Mg]2) - fa ([Fe]2) """ self.name = "olivine" self.solution_model = SymmetricRegularSolution( endmembers=[ [fo(), "[Mg]2"], [fa(), "[Fe]2"], ], energy_interaction=[[np.float64(2474.06)]], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class orthopyroxene(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for orthopyroxene (opx). Endmembers (and site species distributions) are given in the order: - en ([Mg][Mg]) - fs ([Fe][Fe]) - mgts ([Mg][Al]) - odi ([Ca][Mg]) """ self.name = "orthopyroxene" self.solution_model = SymmetricRegularSolution( endmembers=[ [en(), "[Mg][Mg]"], [fs(), "[Fe][Fe]"], [mgts(), "[Mg][Al]"], [odi(), "[Ca][Mg]"], ], energy_interaction=[ [np.float64(0.0), np.float64(0.0), np.float64(32213.03)], [np.float64(0.0), np.float64(32213.03)], [np.float64(46640.38)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class plagioclase(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for plagioclase (plg). Endmembers (and site species distributions) are given in the order: - an ([Ca]) - ab ([Na]) """ self.name = "plagioclase" self.solution_model = SymmetricRegularSolution( endmembers=[ [an(), "[Ca]"], [ab(), "[Na]"], ], energy_interaction=[[np.float64(13000.0)]], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class post_perovskite(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for post_perovskite (ppv). Endmembers (and site species distributions) are given in the order: - mppv ([Mg][Si]) - fppv ([Fe][Si]) - appv ([Al][Al]) - hppv ([Fef][Fef]) - cppv ([Cr][Cr]) """ self.name = "post_perovskite" self.solution_model = SymmetricRegularSolution( endmembers=[ [mppv(), "[Mg][Si]"], [fppv(), "[Fe][Si]"], [appv(), "[Al][Al]"], [hppv(), "[Fef][Fef]"], [cppv(), "[Cr][Cr]"], ], energy_interaction=[ [ np.float64(-39831.77), np.float64(31662.95), np.float64(93867.53), np.float64(93184.02), ], [np.float64(31662.95), np.float64(93867.53), np.float64(93184.02)], [np.float64(65000.0), np.float64(40000.0)], [np.float64(40000.0)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class bridgmanite(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for bridgmanite (pv). Endmembers (and site species distributions) are given in the order: - mgpv ([Mg][Si]) - fepv ([Fe][Si]) - alpv ([Al][Al]) - hepv ([Fef][Fef]) - hlpv ([Fef][Fefls]) - fapv ([Fef][Al]) - crpv ([Cr][Cr]) """ self.name = "bridgmanite" self.solution_model = SymmetricRegularSolution( endmembers=[ [mgpv(), "[Mg][Si]"], [fepv(), "[Fe][Si]"], [alpv(), "[Al][Al]"], [hepv(), "[Fef][Fef]"], [hlpv(), "[Fef][Fefls]"], [fapv(), "[Fef][Al]"], [crpv(), "[Cr][Cr]"], ], energy_interaction=[ [ np.float64(-12467.39), np.float64(31662.95), np.float64(93867.53), np.float64(49859.96), np.float64(0.0), np.float64(93184.02), ], [ np.float64(0.0), np.float64(93867.53), np.float64(49859.96), np.float64(0.0), np.float64(93184.02), ], [ np.float64(65000.0), np.float64(65000.0), np.float64(65000.0), np.float64(40000.0), ], [np.float64(-5875.1), np.float64(65000.0), np.float64(40000.0)], [np.float64(65000.0), np.float64(40000.0)], [np.float64(40000.0)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class bridgmanite_relaxed(RelaxedSolution): def __init__(self): """RelaxedSolution model for bridgmanite (pv). Only the spin transition is relaxed. Endmembers (and site species distributions) are given in the order: - mgpv ([Mg][Si]) - fepv ([Fe][Si]) - alpv ([Al][Al]) - hepv + hlpv ([Fef][Fef,Fefls]) - fapv ([Fef][Al]) - crpv ([Cr][Cr]) The equilibrium spin state is calculated automatically. """ solution = bridgmanite() vrel = [[0.0, 0.0, 0.0, 0.5, -0.5, 0.0, 0.0]] vunrel = [ [1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.5, 0.5, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0], ] RelaxedSolution.__init__(self, solution, vrel, vunrel)
[docs] class ringwoodite(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for ringwoodite (ri). Endmembers (and site species distributions) are given in the order: - mgri ([Mg]2) - feri ([Fe]2) """ self.name = "ringwoodite" self.solution_model = SymmetricRegularSolution( endmembers=[ [mgri(), "[Mg]2"], [feri(), "[Fe]2"], ], energy_interaction=[[np.float64(6229.27)]], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class mg_fe_aluminous_spinel(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for mg_fe_aluminous_spinel (sp). Endmembers (and site species distributions) are given in the order: - sp ([Mg][Al][Al]) - hc ([Fe][Al][Al]) - smag ([Fe][Fef][Fef]) - picr ([Mg][Cr][Cr]) """ self.name = "mg_fe_aluminous_spinel" self.solution_model = SymmetricRegularSolution( endmembers=[ [sp(), "[Mg][Al][Al]"], [hc(), "[Fe][Al][Al]"], [smag(), "[Fe][Fef][Fef]"], [picr(), "[Mg][Cr][Cr]"], ], energy_interaction=[ [np.float64(-1310.9), np.float64(63000.0), np.float64(20993.94)], [np.float64(55000.0), np.float64(21000.0)], [np.float64(42000.0)], ], ) Solution.__init__(self, molar_fractions=molar_fractions)
[docs] class wadsleyite(Solution): def __init__(self, molar_fractions=None): """SymmetricRegularSolution model for wadsleyite (wa). Endmembers (and site species distributions) are given in the order: - mgwa ([Mg]2) - fewa ([Fe]2) """ self.name = "wadsleyite" self.solution_model = SymmetricRegularSolution( endmembers=[ [mgwa(), "[Mg]2"], [fewa(), "[Fe]2"], ], energy_interaction=[[np.float64(12868.75)]], ) Solution.__init__(self, molar_fractions=molar_fractions)
""" ENDMEMBER ALIASES """ albite = ab acmite = acm almandine = al al_perovskite = alpv anorthite = an alpha_nao2_phase = anao grossular = andr alpha_pbo_2_sio_2 = apbo al_post_perovskite = appv ca_perovskite = capv lime_tschermak = cats clinoenstatite = cen corundum = co coesite = coes cr_post_perovskite = cppv cr_ca_ferrite = crcf cr_perovskite = crpv diopside = di enstatite = en eskolaite = esk fayalite = fa fealo3_perovskite_hs = fapv alpha_bcc_iron = fea hp_clinoferrosilite = fec2 fe_ca_ferrite = fecf epsilon_hcp_iron = fee gamma_fcc_iron = feg fe_akimotoite = feil fe_perovskite = fepv fe_ringwoodite = feri fe_wadsleyite = fewa fe_nal_phase = fnal forsterite = fo fe_postperovskite = fppv ferrosilite = fs grossular = gr hercynite = hc hedenbergite = he hematite = hem fe2o3_perovskite_hs = hepv fe2o3_perovskite_ls = hlpv high_pressure_magnetit = hmag hs_fe2o3_post_perovski = hppv jadeite = jd knorringite = knor kyanite = ky ls_fe2o3_post_perovski = lppv magnetite = mag hp_clinoenstatite = mgc2 mg_ca_ferrite = mgcf mg_akimotoite = mgil mg_majorite = mgmj mg_perovskite = mgpv mg_ringwoodite = mgri mg_tschermaks = mgts mg_wadsleyite = mgwa mg_nal_phase = mnal mg_postperovskite = mppv na_ca_ferrite = nacf na_majorite = namj nepheline = neph na_nal_phase = nnal ortho_diopside = odi periclase = pe pircochromite = picr pseudo_wollastonite = pwo pyrope = py quartz = qtz magnetite = smag spinel = sp stishovite = st wollastonite = wo wustite = wu wustite_low_spin = wuls """ SOLUTION ALIASES """ c2c = c2c_pyroxene cf = calcium_ferrite_structured_phase cpx = clinopyroxene gt = garnet il = ilmenite mw = ferropericlase nal = new_aluminous_phase ol = olivine opx = orthopyroxene plg = plagioclase ppv = post_perovskite pv = bridgmanite ri = ringwoodite wa = wadsleyite