[cig-commits] [commit] add_thermodynamic_potentials: Initial working copy (non-functional) adding solid solutions (7ba368b)

cig_noreply at geodynamics.org cig_noreply at geodynamics.org
Tue Dec 9 09:53:33 PST 2014


Repository : https://github.com/geodynamics/burnman

On branch  : add_thermodynamic_potentials
Link       : https://github.com/geodynamics/burnman/compare/2e5646d93cedbbf8eae54cc37cffc14e0aa85180...d5ddad03ff9f30f5a4efaddb4e3ec585ea1a7c51

>---------------------------------------------------------------

commit 7ba368bf0fa95cc51b6e4f272349f41763457128
Author: Bob Myhill <myhill.bob at gmail.com>
Date:   Tue Jul 29 00:05:40 2014 -0700

    Initial working copy (non-functional) adding solid solutions


>---------------------------------------------------------------

7ba368bf0fa95cc51b6e4f272349f41763457128
 burnman/minerals/SLB_2011.py | 37 +++++++++++++++++++++++++------------
 1 file changed, 25 insertions(+), 12 deletions(-)

diff --git a/burnman/minerals/SLB_2011.py b/burnman/minerals/SLB_2011.py
index c5896b8..b4ebebf 100644
--- a/burnman/minerals/SLB_2011.py
+++ b/burnman/minerals/SLB_2011.py
@@ -13,9 +13,12 @@ Minerals from Stixrude & Lithgow-Bertelloni 2011 and references therein
 
 import burnman.mineral_helpers as bmb
 from burnman.mineral import Mineral
-
+from burnman.solidsolution import SolidSolution
 
 class stishovite (Mineral):
+    """
+    Stixrude & Lithgow-Bertelloni 2011 and references therein
+    """
     def __init__(self):
         self.params = {
             'equation_of_state': 'slb3',
@@ -44,6 +47,9 @@ class stishovite (Mineral):
 
 
 class periclase (Mineral):
+    """
+    Stixrude & Lithgow-Bertelloni 2011 and references therein
+    """
     def __init__(self):
         self.params = {
             'equation_of_state':'slb3',
@@ -69,8 +75,10 @@ class periclase (Mineral):
         'err_q_0':.2,
         'err_eta_s_0':.2 }
 
-
 class wuestite (Mineral):
+    """
+    Stixrude & Lithgow-Bertelloni 2011 and references therein
+    """
     def __init__(self):
         self.params = {
             'equation_of_state':'slb3',
@@ -97,12 +105,15 @@ class wuestite (Mineral):
             'err_eta_s_0':1.0}
 
 
-class ferropericlase(bmb.HelperSolidSolution):
-    def __init__(self, fe_num):
-        base_materials = [periclase(), wuestite()]
-        molar_fraction = [1. - fe_num, 0.0 + fe_num] # keep the 0.0 +, otherwise it is an array sometimes
-        bmb.HelperSolidSolution.__init__(self, base_materials, molar_fraction)
-
+class ferropericlase(SolidSolution):
+    def __init__(self, x):
+        model_type='asymmetric'
+        base_material = [periclase(), wuestite()]
+        molar_fraction = [1. - x, 0. + x] # keep the 0.0 +, otherwise it is an array sometimes
+        site_occupancy = [['x(Mg)',1. - x],['x(Fe)',0. + x]]
+        interaction_parameter = [[4.e3,0.0,0.0]] # Wh + T*Ws + P*Wv, J/mol
+        van_laar_parameter=[1.0,1.0]
+        SolidSolution.__init__(self, base_material, molar_fraction, site_occupancy, interaction_parameter, van_laar_parameter)
 
 class mg_fe_perovskite(bmb.HelperSolidSolution):
     def __init__(self, fe_num):
@@ -110,8 +121,10 @@ class mg_fe_perovskite(bmb.HelperSolidSolution):
         molar_fraction = [1. - fe_num, 0.0 + fe_num] # keep the 0.0 +, otherwise it is an array sometimes
         bmb.HelperSolidSolution.__init__(self, base_materials, molar_fraction)
 
-
 class mg_perovskite(Mineral):
+    """
+    Stixrude & Lithgow-Bertelloni 2011 and references therein
+    """
     def __init__(self):
         self.params = {
             'equation_of_state':'slb3',
@@ -139,6 +152,9 @@ class mg_perovskite(Mineral):
 
 
 class fe_perovskite(Mineral):
+    """
+    Stixrude & Lithgow-Bertelloni 2011 and references therein
+    """
     def __init__(self):
         self.params = {
             'equation_of_state':'slb3',
@@ -164,7 +180,6 @@ class fe_perovskite(Mineral):
             'err_q_0':1.0,
             'err_eta_s_0':1.0}
 
-
 class mg_fe_perovskite_pt_dependent(bmb.HelperFeDependent):
     def __init__(self, iron_number_with_pt, idx):
         bmb.HelperFeDependent.__init__(self, iron_number_with_pt, idx)
@@ -172,7 +187,6 @@ class mg_fe_perovskite_pt_dependent(bmb.HelperFeDependent):
     def create_inner_material(self, iron_number):
         return mg_fe_perovskite(iron_number)
 
-
 class ferropericlase_pt_dependent(bmb.HelperFeDependent):
     def __init__(self, iron_number_with_pt, idx):
         bmb.HelperFeDependent.__init__(self, iron_number_with_pt, idx)
@@ -180,7 +194,6 @@ class ferropericlase_pt_dependent(bmb.HelperFeDependent):
     def create_inner_material(self, iron_number):
         return ferropericlase(iron_number)
 
-
 mg_bridgmanite = mg_perovskite
 fe_bridgmanite = fe_perovskite
 mg_fe_bridgmanite = mg_fe_perovskite



More information about the CIG-COMMITS mailing list