[cig-commits] [commit] update_examples: Bugfix allowing for creation of ideal solutions (5cf9ec9)
cig_noreply at geodynamics.org
cig_noreply at geodynamics.org
Wed Dec 31 13:36:55 PST 2014
Repository : https://github.com/geodynamics/burnman
On branch : update_examples
Link : https://github.com/geodynamics/burnman/compare/c7f47cd1cc4dc701d316527d9171bd0fae46e399...5cf9ec929c1478d029b5392fdcb1af28dc6beedc
>---------------------------------------------------------------
commit 5cf9ec929c1478d029b5392fdcb1af28dc6beedc
Author: Bob Myhill <myhill.bob at gmail.com>
Date: Wed Dec 31 21:36:36 2014 +0000
Bugfix allowing for creation of ideal solutions
>---------------------------------------------------------------
5cf9ec929c1478d029b5392fdcb1af28dc6beedc
burnman/solidsolution.py | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/burnman/solidsolution.py b/burnman/solidsolution.py
index 1b785c7..ff90993 100644
--- a/burnman/solidsolution.py
+++ b/burnman/solidsolution.py
@@ -81,9 +81,14 @@ class SolidSolution(Mineral):
self.partial_gibbs = np.array([self.base_material[i][0].gibbs for i in range(self.n_endmembers)]) + self.excess_partial_gibbs
self.gibbs= sum([ self.base_material[i][0].gibbs * self.molar_fraction[i] for i in range(self.n_endmembers) ]) + self.excess_gibbs
- self.excess_enthalpy = self.solution_model.excess_enthalpy( pressure, temperature, self.molar_fraction)
- self.excess_entropy = self.solution_model.excess_entropy( pressure, temperature, self.molar_fraction)
- self.excess_volume = self.solution_model.excess_volume( pressure, temperature, self.molar_fraction)
+ if self.solution_model.__class__.__name__ == 'IdealSolution':
+ self.excess_enthalpy = 0.
+ self.excess_entropy = 0.
+ self.excess_volume = 0.
+ else:
+ self.excess_enthalpy = self.solution_model.excess_enthalpy( pressure, temperature, self.molar_fraction)
+ self.excess_entropy = self.solution_model.excess_entropy( pressure, temperature, self.molar_fraction)
+ self.excess_volume = self.solution_model.excess_volume( pressure, temperature, self.molar_fraction)
self.H = sum([ self.base_material[i][0].H * self.molar_fraction[i] for i in range(self.n_endmembers) ]) + self.excess_enthalpy
self.S = sum([ self.base_material[i][0].S * self.molar_fraction[i] for i in range(self.n_endmembers) ]) + self.excess_entropy
More information about the CIG-COMMITS
mailing list