# This file is part of BurnMan - a thermoelastic and thermodynamic toolkit
# for the Earth and Planetary Sciences
# Copyright (C) 2012 - 2023 by the BurnMan team,
# released under the GNU GPL v2 or later.
"""
SLB_2022
Minerals from Stixrude & Lithgow-Bertelloni 2022 and references therein
File autogenerated using HeFESTO_to_burnman.py and HeFESTo_parameters_010121
"""
from __future__ import absolute_import
from ..classes.mineral import Mineral
from ..classes.solution import Solution
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": -3720147.5999999996,
"V_0": 0.000100452,
"K_0": 59752680000.0,
"Kprime_0": 2.77841,
"Debye_0": 720.00359,
"grueneisen_0": 0.57885,
"q_0": 1.0,
"G_0": 36000000000.0,
"Gprime_0": 1.38571,
"eta_s_0": 1.02978,
"n": 13.0,
"Z": 4.0,
"molar_mass": 0.262223,
}
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": -4933027.97,
"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": -1517728.6300000001,
"V_0": 2.4944e-05,
"K_0": 242400000000.0,
"Kprime_0": 4.1,
"Debye_0": 858.26509,
"grueneisen_0": 1.54222,
"q_0": 0.84088,
"G_0": 169199620000.0,
"Gprime_0": 1.55703,
"eta_s_0": 2.2751,
"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": -4013369.04,
"V_0": 0.00010061,
"K_0": 84093310000.0,
"Kprime_0": 6.73404,
"Debye_0": 752.34537,
"grueneisen_0": 0.38497,
"q_0": 1.0,
"G_0": 39900000000.0,
"Gprime_0": 1.09129,
"eta_s_0": 1.63323,
"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": -2114835.79,
"V_0": 4.542e-05,
"K_0": 161143930000.0,
"Kprime_0": 3.90838,
"Debye_0": 753.49641,
"grueneisen_0": 1.45033,
"q_0": 1.5487,
"G_0": 108455900000.0,
"Gprime_0": 2.14668,
"eta_s_0": 0.78047,
"n": 8.0,
"Z": 1.0,
"molar_mass": 0.16394023,
}
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": -793366.84,
"V_0": 1.367e-05,
"K_0": 327156010000.0,
"Kprime_0": 4.01662,
"Debye_0": 1128.9459,
"grueneisen_0": 1.55674,
"q_0": 2.2096,
"G_0": 227411590000.0,
"Gprime_0": 1.77078,
"eta_s_0": 4.55828,
"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": -1336464.73,
"V_0": 2.3847e-05,
"K_0": 249000000000.0,
"Kprime_0": 4.0,
"Debye_0": 722.93835,
"grueneisen_0": 1.88758,
"q_0": 2.04631,
"G_0": 91965260000.0,
"Gprime_0": 1.81603,
"eta_s_0": 2.52605,
"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": -1459910.1800000002,
"V_0": 2.745e-05,
"K_0": 236000000000.0,
"Kprime_0": 3.9,
"Debye_0": 798.78581,
"grueneisen_0": 1.88943,
"q_0": 0.89662,
"G_0": 155205240000.0,
"Gprime_0": 2.22637,
"eta_s_0": 1.23493,
"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": -3119447.41,
"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": 74424990000.0,
"Gprime_0": 1.71384,
"eta_s_0": 1.73383,
"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": -2906835.53,
"V_0": 6.25e-05,
"K_0": 113759900000.0,
"Kprime_0": 4.8061,
"Debye_0": 806.64315,
"grueneisen_0": 1.00921,
"q_0": 0.60142,
"G_0": 76970360000.0,
"Gprime_0": 1.71384,
"eta_s_0": 1.43121,
"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": -1582440.3199999998,
"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.81492,
"eta_s_0": 2.63052,
"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": -856110.36,
"V_0": 2.0657e-05,
"K_0": 103538150000.0,
"Kprime_0": 2.9007,
"Debye_0": 880.23946,
"grueneisen_0": 0.29064,
"q_0": 1.0,
"G_0": 61600000000.0,
"Gprime_0": 0.49686,
"eta_s_0": 2.75988,
"n": 3.0,
"Z": 16.0,
"molar_mass": 0.060085,
}
Mineral.__init__(self)
[docs]
class crst(Mineral):
def __init__(self):
self.params = {
"name": "Cristobalite",
"formula": {"Si": 1.0, "O": 2.0},
"equation_of_state": "slb3",
"F_0": -852539.43,
"V_0": 2.72397e-05,
"K_0": 11500000000.0,
"Kprime_0": 9.0,
"Debye_0": 794.74452,
"grueneisen_0": 0.01515,
"q_0": 1.0,
"G_0": 20327540000.0,
"Gprime_0": 4.06551,
"eta_s_0": 1.17003,
"n": 3.0,
"Z": 16.0,
"molar_mass": 0.060085,
}
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": -3029608.3800000004,
"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": -2914163.5999999996,
"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 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": -1371695.6600000001,
"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": -848315.02,
"V_0": 2.72604e-05,
"K_0": 223325500000.0,
"Kprime_0": 4.1,
"Debye_0": 755.38117,
"grueneisen_0": 1.54222,
"q_0": 0.84088,
"G_0": 150042090000.0,
"Gprime_0": 1.73259,
"eta_s_0": 2.55505,
"n": 5.0,
"Z": 4.0,
"molar_mass": 0.1308249,
}
self.property_modifiers = [
["landau_slb_2022", {"Tc_0": 10.0, "S_D": 14.89723, "V_D": 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": -2224211.0,
"V_0": 6.38541e-05,
"K_0": 116024900000.0,
"Kprime_0": 6.23682,
"Debye_0": 698.72086,
"grueneisen_0": 1.12442,
"q_0": 0.20362,
"G_0": 75147210000.0,
"Gprime_0": 1.8412,
"eta_s_0": 0.98031,
"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": -1774197.05,
"V_0": 3.7216e-05,
"K_0": 213000000000.0,
"Kprime_0": 4.1,
"Debye_0": 734.07527,
"grueneisen_0": 1.56672,
"q_0": 1.0,
"G_0": 159709650000.0,
"Gprime_0": 1.93591,
"eta_s_0": 2.34163,
"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 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": -1047531.34,
"V_0": 2.6854e-05,
"K_0": 210693870000.0,
"Kprime_0": 5.2154,
"Debye_0": 781.36175,
"grueneisen_0": 1.19458,
"q_0": 2.2246,
"G_0": 160833570000.0,
"Gprime_0": 1.81492,
"eta_s_0": 3.43813,
"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": -1002662.5299999999,
"V_0": 2.5321e-05,
"K_0": 270582550000.00003,
"Kprime_0": 4.01,
"Debye_0": 746.56455,
"grueneisen_0": 1.54222,
"q_0": 0.84088,
"G_0": 130020980000.00002,
"Gprime_0": 1.37254,
"eta_s_0": 2.0941,
"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": -1359229.67,
"V_0": 4.186e-05,
"K_0": 213410280000.0,
"Kprime_0": 4.22034,
"Debye_0": 662.84304,
"grueneisen_0": 1.26584,
"q_0": 2.39042,
"G_0": 92000000000.0,
"Gprime_0": 1.35412,
"eta_s_0": 1.77066,
"n": 7.0,
"Z": 2.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 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": -1358363.34,
"V_0": 4.28e-05,
"K_0": 168579210000.0,
"Kprime_0": 4.12303,
"Debye_0": 647.34559,
"grueneisen_0": 1.20388,
"q_0": 2.21007,
"G_0": 72000000000.0,
"Gprime_0": 1.50973,
"eta_s_0": 0.95246,
"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 flpv(Mineral):
def __init__(self):
self.params = {
"name": "Fe-Perovskite_Low_Spin",
"formula": {"Fe": 1.0, "Si": 1.0, "O": 3.0},
"equation_of_state": "slb3",
"F_0": -879526.2000000001,
"V_0": 2.497e-05,
"K_0": 270582550000.00003,
"Kprime_0": 4.01,
"Debye_0": 692.38659,
"grueneisen_0": 1.54222,
"q_0": 0.84088,
"G_0": 130337050000.0,
"Gprime_0": 1.37411,
"eta_s_0": 1.99344,
"n": 5.0,
"Z": 4.0,
"molar_mass": 0.131931,
}
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": -5475295.42,
"V_0": 0.000112045,
"K_0": 203995010000.0,
"Kprime_0": 4.31884,
"Debye_0": 795.29328,
"grueneisen_0": 1.42971,
"q_0": 1.0,
"G_0": 149593770000.0,
"Gprime_0": 1.7423,
"eta_s_0": 2.65939,
"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": -2055371.19,
"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": -982035.5,
"V_0": 2.46519e-05,
"K_0": 292000000000.0,
"Kprime_0": 3.74,
"Debye_0": 794.15823,
"grueneisen_0": 1.76958,
"q_0": 2.04631,
"G_0": 129500000000.0,
"Gprime_0": 1.31526,
"eta_s_0": 1.72601,
"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": -2228327.6999999997,
"V_0": 6.5941e-05,
"K_0": 100545910000.0,
"Kprime_0": 7.87534,
"Debye_0": 682.67865,
"grueneisen_0": 0.71519,
"q_0": 3.43847,
"G_0": 52000000000.0,
"Gprime_0": 1.54596,
"eta_s_0": 1.08309,
"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": -6275179.81,
"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": 4.0, "Al": 8.0, "O": 16.0},
"equation_of_state": "slb3",
"F_0": -7356185.029999999,
"V_0": 0.000163372,
"K_0": 208982310000.0,
"Kprime_0": 4.62659,
"Debye_0": 794.21184,
"grueneisen_0": 1.19332,
"q_0": 4.05077,
"G_0": 84500000000.0,
"Gprime_0": 0.62792,
"eta_s_0": 2.49369,
"n": 28.0,
"Z": 8.0,
"molar_mass": 0.69524,
}
self.property_modifiers = [
["landau_slb_2022", {"Tc_0": 5.0, "S_D": 53.5254, "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": -2676991.78,
"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": 5.0, "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": -744041.62,
"V_0": 3.0287e-05,
"K_0": 204245330000.0,
"Kprime_0": 4.0997,
"Debye_0": 653.80768,
"grueneisen_0": 1.58945,
"q_0": 2.2246,
"G_0": 91000000000.0,
"Gprime_0": 1.81492,
"eta_s_0": 0.52408,
"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": -721269.05,
"V_0": 3.08668e-05,
"K_0": 135000000000.0,
"Kprime_0": 4.0,
"Debye_0": 613.90405,
"grueneisen_0": 1.54222,
"q_0": 0.84088,
"G_0": 88766580000.0,
"Gprime_0": 1.73259,
"eta_s_0": 0.66524,
"n": 5.0,
"Z": 4.0,
"molar_mass": 0.15968852,
}
self.property_modifiers = [
["landau_slb_2022", {"Tc_0": 10.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": -617631.95,
"V_0": 2.75209e-05,
"K_0": 204251000000.0,
"Kprime_0": 4.1,
"Debye_0": 725.62214,
"grueneisen_0": 1.54222,
"q_0": 0.84088,
"G_0": 163996000000.0,
"Gprime_0": 1.73259,
"eta_s_0": 3.0318,
"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 hmag(Mineral):
def __init__(self):
self.params = {
"name": "High-Pressure_Magnetit",
"formula": {"Fe": 3.0, "O": 4.0},
"equation_of_state": "slb3",
"F_0": -964475.2200000001,
"V_0": 4.1702e-05,
"K_0": 172000000000.0,
"Kprime_0": 4.0,
"Debye_0": 533.17958,
"grueneisen_0": 1.56672,
"q_0": 1.0,
"G_0": 108730730000.0,
"Gprime_0": 1.93591,
"eta_s_0": 0.90477,
"n": 7.0,
"Z": 1.0,
"molar_mass": 0.23153307,
}
self.property_modifiers = [
["landau_slb_2022", {"Tc_0": 845.5, "S_D": 43.1758, "V_D": 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": -622376.42,
"V_0": 2.76884e-05,
"K_0": 176500000000.0,
"Kprime_0": 4.0,
"Debye_0": 688.0644,
"grueneisen_0": 1.76958,
"q_0": 2.04631,
"G_0": 159009520000.0,
"Gprime_0": 1.85188,
"eta_s_0": 2.00124,
"n": 5.0,
"Z": 4.0,
"molar_mass": 0.15968852,
}
self.property_modifiers = [
["landau_slb_2022", {"Tc_0": 10.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": -2855195.56,
"V_0": 6.0508e-05,
"K_0": 142292260000.0,
"Kprime_0": 4.8061,
"Debye_0": 820.78389,
"grueneisen_0": 0.89983,
"q_0": 0.78628,
"G_0": 85000000000.0,
"Gprime_0": 1.71384,
"eta_s_0": 1.88167,
"n": 10.0,
"Z": 1.0,
"molar_mass": 0.2021387,
}
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": -2446081.74,
"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": 117854530000.0,
"Gprime_0": 1.69416,
"eta_s_0": 2.90375,
"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": -407182.57,
"V_0": 2.62534e-05,
"K_0": 176500000000.0,
"Kprime_0": 4.0,
"Debye_0": 720.85819,
"grueneisen_0": 1.76958,
"q_0": 2.04631,
"G_0": 207396350000.0,
"Gprime_0": 1.85188,
"eta_s_0": 3.23888,
"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": -987192.39,
"V_0": 4.4528e-05,
"K_0": 183965710000.0,
"Kprime_0": 5.24573,
"Debye_0": 520.10184,
"grueneisen_0": 1.32115,
"q_0": 1.5487,
"G_0": 60300000000.0,
"Gprime_0": -0.05466,
"eta_s_0": 2.43429,
"n": 7.0,
"Z": 1.0,
"molar_mass": 0.23153307,
}
self.property_modifiers = [
["landau_slb_2022", {"Tc_0": 845.5, "S_D": 43.1758, "V_D": 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": -2905475.75,
"V_0": 6.076e-05,
"K_0": 116024900000.0,
"Kprime_0": 6.23682,
"Debye_0": 822.89602,
"grueneisen_0": 1.12442,
"q_0": 0.20362,
"G_0": 87927160000.0,
"Gprime_0": 1.8412,
"eta_s_0": 2.14112,
"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": -2122873.69,
"V_0": 3.6135e-05,
"K_0": 213000000000.0,
"Kprime_0": 4.1,
"Debye_0": 831.14221,
"grueneisen_0": 1.56672,
"q_0": 1.0,
"G_0": 129699999999.99998,
"Gprime_0": 1.93591,
"eta_s_0": 1.30302,
"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": -1409831.95,
"V_0": 2.6354e-05,
"K_0": 210693870000.0,
"Kprime_0": 5.2154,
"Debye_0": 932.602,
"grueneisen_0": 1.19458,
"q_0": 2.2246,
"G_0": 132000000000.0,
"Gprime_0": 1.81492,
"eta_s_0": 3.40174,
"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": -5693291.79,
"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": -1362442.75,
"V_0": 2.4445e-05,
"K_0": 250546900000.0,
"Kprime_0": 4.13499,
"Debye_0": 880.01895,
"grueneisen_0": 1.54222,
"q_0": 0.84088,
"G_0": 172900000000.0,
"Gprime_0": 1.73259,
"eta_s_0": 1.65573,
"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": -2017223.98,
"V_0": 3.9493e-05,
"K_0": 184899930000.0,
"Kprime_0": 4.22034,
"Debye_0": 875.13511,
"grueneisen_0": 1.1072,
"q_0": 2.39042,
"G_0": 123000000000.0,
"Gprime_0": 1.35412,
"eta_s_0": 2.30288,
"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": -3002410.17,
"V_0": 5.914e-05,
"K_0": 107076810000.0,
"Kprime_0": 7.02751,
"Debye_0": 783.94073,
"grueneisen_0": 0.78477,
"q_0": 3.43847,
"G_0": 93471460000.0,
"Gprime_0": 1.54596,
"eta_s_0": 2.39416,
"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": -2028172.68,
"V_0": 4.0515e-05,
"K_0": 168701060000.0,
"Kprime_0": 4.12303,
"Debye_0": 845.20132,
"grueneisen_0": 1.20388,
"q_0": 2.21007,
"G_0": 112000000000.0,
"Gprime_0": 1.50973,
"eta_s_0": 2.56133,
"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": -6167391.6,
"V_0": 0.000109883,
"K_0": 203995010000.0,
"Kprime_0": 4.31884,
"Debye_0": 858.38264,
"grueneisen_0": 1.42971,
"q_0": 1.0,
"G_0": 129000000000.0,
"Gprime_0": 1.7423,
"eta_s_0": 1.93069,
"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": -1313625.76,
"V_0": 2.35252e-05,
"K_0": 292000000000.0,
"Kprime_0": 3.74,
"Debye_0": 941.49795,
"grueneisen_0": 1.76958,
"q_0": 2.04631,
"G_0": 171135870000.0,
"Gprime_0": 1.85188,
"eta_s_0": 1.2881,
"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": -1835429.51,
"V_0": 3.627e-05,
"K_0": 220000000000.0,
"Kprime_0": 4.1,
"Debye_0": 683.31827,
"grueneisen_0": 1.56672,
"q_0": 1.0,
"G_0": 135326619999.99998,
"Gprime_0": 1.93591,
"eta_s_0": 1.36827,
"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": -5303066.24,
"V_0": 0.000110842,
"K_0": 172035150000.0,
"Kprime_0": 5.2005,
"Debye_0": 844.73722,
"grueneisen_0": 1.25078,
"q_0": 0.10916,
"G_0": 114700000000.0,
"Gprime_0": 1.35756,
"eta_s_0": 2.4849,
"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": -1994469.57,
"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": 0.8}]
]
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": -5567127.9,
"V_0": 0.000109401,
"K_0": 203995010000.0,
"Kprime_0": 4.31884,
"Debye_0": 850.32833,
"grueneisen_0": 1.42971,
"q_0": 1.0,
"G_0": 144451020000.0,
"Gprime_0": 1.7423,
"eta_s_0": 2.42502,
"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": -3015734.13,
"V_0": 6.8054e-05,
"K_0": 107076810000.0,
"Kprime_0": 7.02751,
"Debye_0": 744.54893,
"grueneisen_0": 0.78477,
"q_0": 3.43847,
"G_0": 57508750000.0,
"Gprime_0": 1.54596,
"eta_s_0": 1.31909,
"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": -2278109.88,
"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 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": -5937137.35,
"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": -860118.03,
"V_0": 2.24211e-05,
"K_0": 61425370000.0,
"Kprime_0": 19.78011,
"Debye_0": 884.20481,
"grueneisen_0": -0.03958,
"q_0": 1.0,
"G_0": 44857760000.0,
"Gprime_0": -0.04277,
"eta_s_0": 2.40509,
"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.35936}]
]
Mineral.__init__(self)
[docs]
class sp(Mineral):
def __init__(self):
self.params = {
"name": "Spinel",
"formula": {"Mg": 4.0, "Al": 8.0, "O": 16.0},
"equation_of_state": "slb3",
"F_0": -8680043.36,
"V_0": 0.000159048,
"K_0": 195139330000.0,
"Kprime_0": 4.62659,
"Debye_0": 856.3695,
"grueneisen_0": 0.97518,
"q_0": 4.05077,
"G_0": 109000000000.0,
"Gprime_0": 0.62792,
"eta_s_0": 2.44263,
"n": 28.0,
"Z": 8.0,
"molar_mass": 0.569068,
}
Mineral.__init__(self)
[docs]
class st(Mineral):
def __init__(self):
self.params = {
"name": "Stishovite",
"formula": {"Si": 1.0, "O": 2.0},
"equation_of_state": "slb3",
"F_0": -817491.62,
"V_0": 1.4017e-05,
"K_0": 305833020000.0,
"Kprime_0": 4.0292,
"Debye_0": 1092.17047,
"grueneisen_0": 1.55674,
"q_0": 2.2096,
"G_0": 228000000000.0,
"Gprime_0": 1.94045,
"eta_s_0": 4.40394,
"n": 3.0,
"Z": 2.0,
"molar_mass": 0.060085,
}
self.property_modifiers = [
["landau_slb_2022", {"Tc_0": -4250.0, "S_D": 4e-05, "V_D": 0.0}]
]
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": -974607.49,
"V_0": 4.9024e-05,
"K_0": 160700000000.0,
"Kprime_0": 4.0,
"Debye_0": 454.1752,
"grueneisen_0": 1.45033,
"q_0": 1.5487,
"G_0": 59000000000.0,
"Gprime_0": 1.44764,
"eta_s_0": 0.06776,
"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": -621968.16,
"V_0": 4.33997e-05,
"K_0": 199700000000.0,
"Kprime_0": 4.0,
"Debye_0": 524.57881,
"grueneisen_0": 1.45033,
"q_0": 1.5487,
"G_0": 59000000000.0,
"Gprime_0": 1.44073,
"eta_s_0": -0.13801,
"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])
- fecf ([Fe][Al])
- nacf ([Na][Si])
"""
self.name = "calcium_ferrite_structured_phase"
self.solution_model = AsymmetricRegularSolution(
endmembers=[
[mgcf(), "[Mg][Al]"],
[fecf(), "[Fe][Al]"],
[nacf(), "[Na][Si]"],
],
alphas=[1.0, 1.0, 4.4532],
energy_interaction=[[0.0, 60825.08], [60825.08]],
)
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)
"""
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"],
],
alphas=[1.0, 1.0, 1.0, 3.5, 1.0],
energy_interaction=[
[0.0, 24740.0, 26000.0, 24300.0],
[24740.0, 26000.0, 24300.0],
[60132.81, 46046.07],
[10000.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])
"""
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]"],
],
energy_interaction=[
[0.0, 21117.58, 22672.42, 22672.42],
[21117.58, 22672.42, 22672.42],
[60718.2, 60718.2],
[70879.14],
],
volume_interaction=[
[0.0, 1.03e-06, 0.0, 0.0],
[0.0, 0.0, 0.0],
[1.03e-06, 0.0],
[0.0],
],
)
Solution.__init__(self, molar_fractions=molar_fractions)
[docs]
class ilmenite(Solution):
def __init__(self, molar_fractions=None):
"""SymmetricRegularSolution model for ilmenite (il).
Endmembers (and site species distributions) are given in the order:
- mgil ([Mg][Si])
- feil ([Fe][Si])
- co ([Al][Al])
"""
self.name = "ilmenite"
self.solution_model = SymmetricRegularSolution(
endmembers=[
[mgil(), "[Mg][Si]"],
[feil(), "[Fe][Si]"],
[co(), "[Al][Al]"],
],
energy_interaction=[[0.0, 59348.69], [59348.69]],
)
Solution.__init__(self, molar_fractions=molar_fractions)
[docs]
class ferropericlase(Solution):
def __init__(self, molar_fractions=None):
"""SymmetricRegularSolution model for ferropericlase (mw).
Endmembers (and site species distributions) are given in the order:
- pe ([Mg]2[Mg]2)
- wu ([Fe]2[Fe]2)
- anao ([Na]2[Al]2)
The entropy from the first site in magnetite is not counted.
"""
self.name = "ferropericlase"
self.solution_model = SymmetricRegularSolution(
endmembers=[
[pe(), "[Mg]2[Mg]2"],
[wu(), "[Fe]2[Fe]2"],
[anao(), "[Na]2[Al]2"],
],
energy_interaction=[[44000.0, 120000.0], [120000.0]],
volume_interaction=[[4.4e-07, 0.0], [0.0]],
)
Solution.__init__(self, molar_fractions=molar_fractions)
[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=[[0.0, -60781.47], [-60781.47]],
)
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=[[4694.66]],
)
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=[[0.0, 0.0, 32217.44], [0.0, 32217.44], [48370.41]],
)
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=[[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])
"""
self.name = "post_perovskite"
self.solution_model = SymmetricRegularSolution(
endmembers=[
[mppv(), "[Mg][Si]"],
[fppv(), "[Fe][Si]"],
[appv(), "[Al][Al]"],
],
energy_interaction=[[-10955.49, 34979.87], [34979.87]],
)
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])
"""
self.name = "bridgmanite"
self.solution_model = SymmetricRegularSolution(
endmembers=[
[mgpv(), "[Mg][Si]"],
[fepv(), "[Fe][Si]"],
[alpv(), "[Al][Al]"],
],
energy_interaction=[[-11396.17, 34979.87], [0.0]],
)
Solution.__init__(self, molar_fractions=molar_fractions)
[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=[[7600.74]],
)
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 ([Mg3/4Al1/4]4[Al7/8Mg1/8]8)
- hc ([Fe3/4Al1/4]4[Al7/8Fe1/8]8)
"""
self.name = "mg_fe_aluminous_spinel"
self.solution_model = SymmetricRegularSolution(
endmembers=[
[sp(), "[Mg3/4Al1/4]4[Al7/8Mg1/8]8"],
[hc(), "[Fe3/4Al1/4]4[Al7/8Fe1/8]8"],
],
energy_interaction=[[-533.21]],
)
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=[[13202.38]],
)
Solution.__init__(self, molar_fractions=molar_fractions)
"""
ENDMEMBER ALIASES
"""
albite = ab
almandine = al
al_perovskite = alpv
anorthite = an
alpha_nao2_phase = anao
alpha_pbo_2_sio_2 = apbo
al_post_perovskite = appv
ca_perovskite = capv
lime_tschermak = cats
clinoenstatite = cen
corundum = co
coesite = coes
cristobalite = crst
diopside = di
enstatite = en
fayalite = fa
fealo3_perovskite_hs = fapv
hp_clinoferrosilite = fec2
fe_ca_ferrite = fecf
fe_akimotoite = feil
fe_perovskite = fepv
fe_ringwoodite = feri
fe_wadsleyite = fewa
fe_perovskite_low_spin = flpv
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
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
pyrope = py
quartz = qtz
spinel = sp
stishovite = st
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