Created
March 29, 2017 15:00
-
-
Save tkphd/a6b170696251d7b9b58bc5c272a93535 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ Database file written 1900- 1-** | |
$ From database: USER | |
ELEMENT /- ELECTRON_GAS 0.0000E+00 0.0000E+00 0.0000E+00! | |
ELEMENT VA VACUUM 0.0000E+00 0.0000E+00 0.0000E+00! | |
ELEMENT CR BCC_A2 5.1996E+01 4.0500E+03 2.3560E+01! | |
ELEMENT NB BCC_A2 9.2906E+01 5.2200E+03 3.6270E+01! | |
ELEMENT NI FCC_A1 5.8690E+01 4.7870E+03 2.9796E+01! | |
FUNCTION GLIQCR 298.15 +24339.955-11.420225*T+2.37615E-21*T**7+GHSERCR#; | |
2180 N ! | |
$ -16459.984+335.616316*T-50*T*LN(T); 6000 N ! | |
FUNCTION GLIQNB 298.15 +29781.555-10.816417*T-3.06098E-23*T**7+GHSERNB#; | |
2750 N ! | |
$ -7499.398+260.756148*T-41.77*T*LN(T); 6000 N ! | |
FUNCTION GLIQNI 298.15 +16414.686-9.397*T-3.82318E-21*T**7+GHSERNI#; | |
1728 N ! | |
$ +18290.88-10.537*T-1.12754E+31*T**(-9)+GHSERNI#; 6000 N ! | |
FUNCTION GFCCCR 298.15 +7284+.163*T+GHSERCR#; 6000 N ! | |
FUNCTION GFCCNB 298.15 +13500+1.7*T+GHSERNB#; 6000 N ! | |
FUNCTION GHSERNI 298.15 -5179.159+117.854*T-22.096*T*LN(T)-.0048407*T**2; | |
1728 N ! | |
$ -27840.655+279.135*T-43.1*T*LN(T)+1.12754E+31*T**(-9); 3000 N ! | |
FUNCTION GHSERCR 298.15 -8856.94+157.48*T-26.908*T*LN(T)+.00189435*T**2 | |
-1.47721E-06*T**3+139250*T**(-1); 2180 N ! | |
$ -34869.344+344.18*T-50*T*LN(T)-2.88526E+32*T**(-9); 6000 N ! | |
FUNCTION GHSERNB 298.15 -8519.353+142.045475*T-26.4711*T*LN(T) | |
+2.03475E-04*T**2-3.5012E-07*T**3+93399*T**(-1); 2750 N ! | |
$ -37669.3+271.720843*T-41.77*T*LN(T)+1.528238E+32*T**(-9); 6000 N ! | |
FUNCTION GBCCNI 298.15 +8715.084-3.556*T+GHSERNI#; 6000 N ! | |
FUNCTION UN_ASS 298.15 +0; 300 N ! | |
TYPE_DEFINITION % SEQ *! | |
DEFINE_SYSTEM_DEFAULT ELEMENT 2 ! | |
DEFAULT_COMMAND DEF_SYS_ELEMENT VA /- ! | |
PHASE LIQUID:L % 1 1.0 ! | |
CONSTITUENT LIQUID:L :CR,NB,NI : ! | |
PARAMETER G(LIQUID,CR;0) 298.15 +GLIQCR#; 6000 N REF4 ! | |
PARAMETER G(LIQUID,NB;0) 298.15 +GLIQNB#; 6000 N REF4 ! | |
PARAMETER G(LIQUID,NI;0) 298.15 +GLIQNI#; 6000 N REF1 ! | |
PARAMETER G(LIQUID,CR,NI;0) 298.15 +318-7.3318*T; 6000 N | |
REF110 ! | |
PARAMETER G(LIQUID,CR,NI;1) 298.15 +16941-6.3696*T; 6000 N | |
REF110 ! | |
PARAMETER G(LIQUID,CR,NB;0) 298.15 -10304.91+.60618*T; 6000 N | |
REF116 ! | |
PARAMETER G(LIQUID,CR,NB;1) 298.15 -8513.45+.5008*T; 6000 N | |
REF116 ! | |
PARAMETER G(LIQUID,NB,NI;0) 298.15 -80037.3-6.31498*T; 6000 N | |
REF177 ! | |
PARAMETER G(LIQUID,NB,NI;1) 298.15 +97884.9-19.01069*T; 6000 N | |
REF177 ! | |
PARAMETER G(LIQUID,NB,NI;2) 298.15 +10000; 6000 N REF177 ! | |
PARAMETER G(LIQUID,CR,NB,NI;0) 298.15 -59943; 6000 N 05Du ! | |
PARAMETER G(LIQUID,CR,NB,NI;1) 298.15 -220439; 6000 N 05Du ! | |
PARAMETER G(LIQUID,CR,NB,NI;2) 298.15 -14828; 6000 N 05Du ! | |
TYPE_DEFINITION & GES A_P_D BCC_A2 MAGNETIC -1.0 4.00000E-01 ! | |
PHASE BCC_A2 %& 1 1 ! | |
CONSTITUENT BCC_A2 :CR%,NB,NI% : ! | |
PARAMETER G(BCC_A2,CR;0) 298.15 +GHSERCR#; 6000 N REF1 ! | |
PARAMETER TC(BCC_A2,CR;0) 298.15 -311.5; 6000 N REF1 ! | |
PARAMETER BMAGN(BCC_A2,CR;0) 298.15 -.008; 6000 N REF4 ! | |
PARAMETER G(BCC_A2,NB;0) 298.15 +GHSERNB#; 6000 N REF1 ! | |
PARAMETER G(BCC_A2,NI;0) 298.15 +GBCCNI#; 6000 N REF1 ! | |
PARAMETER TC(BCC_A2,NI;0) 298.15 +575; 3000 N REF4 ! | |
PARAMETER BMAGN(BCC_A2,NI;0) 298.15 +.85; 3000 N REF4 ! | |
PARAMETER G(BCC_A2,CR,NB;0) 298.15 +43426.45-13.0153*T; 6000 N | |
REF116 ! | |
PARAMETER G(BCC_A2,CR,NB;1) 298.15 +13201.2-6.66604*T; 6000 N | |
REF116 ! | |
PARAMETER G(BCC_A2,CR,NI;0) 298.15 +17170-11.8199*T; 6000 N | |
REF110 ! | |
PARAMETER G(BCC_A2,CR,NI;1) 298.15 +34418-11.8577*T; 6000 N | |
REF110 ! | |
PARAMETER TC(BCC_A2,CR,NI;0) 298.15 +2373; 6000 N REF110 ! | |
PARAMETER TC(BCC_A2,CR,NI;1) 298.15 +617; 6000 N REF110 ! | |
PARAMETER BMAGN(BCC_A2,CR,NI;0) 298.15 +4; 6000 N REF110 ! | |
PARAMETER G(BCC_A2,NB,NI;0) 298.15 -18724.3+5.02405*T; 6000 N | |
REF177 ! | |
$ TYPE_DEFINITION & GES A_P_D BCC_A2 MAGNETIC -1.0 4.00000E-01 ! | |
$ PHASE BCC_A2 %& 2 1 3 ! | |
$ CONSTITUENT BCC_A2 :CR%,NB,NI% : VA : ! | |
$ | |
$ PARAMETER G(BCC_A2,CR:VA;0) 298.15 +GHSERCR#; 6000 N REF1 ! | |
$ PARAMETER TC(BCC_A2,CR:VA;0) 298.15 -311.5; 6000 N REF1 ! | |
$ PARAMETER BMAGN(BCC_A2,CR:VA;0) 298.15 -.008; 6000 N REF4 ! | |
$ PARAMETER G(BCC_A2,NB:VA;0) 298.15 +GHSERNB#; 6000 N REF1 ! | |
$ PARAMETER G(BCC_A2,NI:VA;0) 298.15 +GBCCNI#; 6000 N REF1 ! | |
$ PARAMETER TC(BCC_A2,NI:VA;0) 298.15 +575; 3000 N REF4 ! | |
$ PARAMETER BMAGN(BCC_A2,NI:VA;0) 298.15 +.85; 3000 N REF4 ! | |
$ PARAMETER G(BCC_A2,CR,NB:VA;0) 298.15 +43426.45-13.0153*T; 6000 N | |
$ REF116 ! | |
$ PARAMETER G(BCC_A2,CR,NB:VA;1) 298.15 +13201.2-6.66604*T; 6000 N | |
$ REF116 ! | |
$ PARAMETER G(BCC_A2,CR,NI:VA;0) 298.15 +17170-11.8199*T; 6000 N | |
$ REF110 ! | |
$ PARAMETER G(BCC_A2,CR,NI:VA;1) 298.15 +34418-11.8577*T; 6000 N | |
$ REF110 ! | |
$ PARAMETER TC(BCC_A2,CR,NI:VA;0) 298.15 +2373; 6000 N REF110 ! | |
$ PARAMETER TC(BCC_A2,CR,NI:VA;1) 298.15 +617; 6000 N REF110 ! | |
$ PARAMETER BMAGN(BCC_A2,CR,NI:VA;0) 298.15 +4; 6000 N REF110 ! | |
$ PARAMETER G(BCC_A2,NB,NI:VA;0) 298.15 -18724.3+5.02405*T; 6000 N | |
$ REF177 ! | |
$ High temperature phase in Cr-Nb | |
PHASE C14_LAVES % 2 2 1 ! | |
$ CONSTITUENT C14_LAVES :CR%,NB,NI : CR,NB% : ! | |
CONSTITUENT C14_LAVES :CR%,NI : CR,NB% : ! | |
PARAMETER G(C14_LAVES,CR:CR;0) 298.15 +15000+3*GHSERCR#; 6000 N | |
REF129 ! | |
$ PARAMETER G(C14_LAVES,NB:CR;0) 298.15 +42667.55-31.01111*T | |
$ +5*T*LN(T)+2*GHSERNB#+GHSERCR#; 6000 N REF116 ! | |
PARAMETER G(C14_LAVES,CR:NB;0) 298.15 -12667+31.01111*T-5*T*LN(T) | |
+2*GHSERCR#+GHSERNB#; 6000 N REF116 ! | |
$ PARAMETER G(C14_LAVES,NB:NB;0) 298.15 +15000+3*GHSERNB#; 6000 N | |
$ REF116 ! | |
PARAMETER G(C14_LAVES,NI:CR;0) 298.15 +300000 | |
+2*GHSERNI#+GHSERCR#; 6000 N 05Du ! | |
PARAMETER G(C14_LAVES,NI:NB;0) 298.15 -73605+18.05262*T | |
+2*GHSERNI#+GHSERNB#; 6000 N 05Du ! | |
$ PARAMETER G(C14_LAVES,CR,NB:CR;0) 298.15 +90673.45; 6000 N REF116 ! | |
PARAMETER G(C14_LAVES,CR:CR,NB;0) 298.15 +18511.36; 6000 N REF116 ! | |
$ PARAMETER G(C14_LAVES,NB:CR,NB;0) 298.15 +18511.36; 6000 N REF116 ! | |
$ PARAMETER G(C14_LAVES,CR,NB:NB;0) 298.15 +90673.45; 6000 N REF116 ! | |
PARAMETER G(C14_LAVES,NI:CR,NB;0) 298.15 -549267+72.00585*T; 6000 N 05Du ! | |
PARAMETER G(C14_LAVES,CR,NI:NB;0) 298.15 -128907+22.67436*T; 6000 N 05Du ! | |
$ Low temperature phase in Cr-Nb | |
PHASE C15_LAVES % 2 2 1 ! | |
$ CONSTITUENT C15_LAVES :CR%,NB,NI : CR,NB% : ! | |
CONSTITUENT C15_LAVES :CR%,NI : CR,NB% : ! | |
PARAMETER G(C15_LAVES,CR:CR;0) 298.15 +15000+3*GHSERCR#; 6000 N | |
REF1 ! | |
$ PARAMETER G(C15_LAVES,NB:CR;0) 298.15 +48087.03-34.01111*T | |
$ +5*T*LN(T)+GHSERCR#+2*GHSERNB#; 6000 N REF116 ! | |
PARAMETER G(C15_LAVES,CR:NB;0) 298.15 -18087.03+34.01111*T | |
-5*T*LN(T)+2*GHSERCR#+GHSERNB#; 6000 N REF116 ! | |
$ PARAMETER G(C15_LAVES,NB:NB;0) 298.15 +15000+3*GHSERNB#; 6000 N | |
$ REF116 ! | |
PARAMETER G(C15_LAVES,NI:CR;0) 298.15 +300000 | |
+2*GHSERNI#+GHSERCR#; 6000 N 05Du ! | |
PARAMETER G(C15_LAVES,NI:NB;0) 298.15 -60000 | |
+2*GHSERNI#+GHSERNB#; 6000 N 05Du ! | |
$ PARAMETER G(C15_LAVES,CR,NB:CR;0) 298.15 +83366.02; 6000 N REF116 ! | |
PARAMETER G(C15_LAVES,CR:CR,NB;0) 298.15 +17565.57; 6000 N REF116 ! | |
$ PARAMETER G(C15_LAVES,NB:CR,NB;0) 298.15 +17565.57; 6000 N REF116 ! | |
$ PARAMETER G(C15_LAVES,CR,NB:NB;0) 298.15 +83366.02; 6000 N REF116 ! | |
PARAMETER G(C15_LAVES,CR,NI:NB;0) 298.15 -60000; 6000 N 05Du ! | |
$ Also known as delta phase | |
PHASE D0A_NBNI3 % 2 1 3 ! | |
$ CONSTITUENT D0A_NBNI3 :NB%,NI : CR,NB,NI% : ! | |
CONSTITUENT D0A_NBNI3 :NB%,NI : CR,NI% : ! | |
$ PARAMETER G(D0A_NBNI3,NB:NB;0) 298.15 +20000+4*GHSERNB#; 6000 N | |
$ REF177 ! | |
$ PARAMETER G(D0A_NBNI3,NI:NB;0) 298.15 +181202.3-19.33288*T | |
$ +GHSERNI#+3*GHSERNB#; 6000 N REF177 ! | |
PARAMETER G(D0A_NBNI3,NB:NI;0) 298.15 -141202.4+19.33288*T | |
+GHSERNB#+3*GHSERNI#; 6000 N REF177 ! | |
PARAMETER G(D0A_NBNI3,NI:NI;0) 298.15 +20000+4*GHSERNI#; 6000 N | |
REF177 ! | |
PARAMETER G(D0A_NBNI3,NB:CR;0) 298.15 +32000+GHSERNB#+3*GHSERCR#; | |
6000 N 05Du ! | |
PARAMETER G(D0A_NBNI3,NI:CR;0) 298.15 +32000+GHSERNI#+3*GHSERCR#; | |
6000 N 05Du ! | |
$ PARAMETER G(D0A_NBNI3,NB,NI:NB;0) 298.15 -12318.5; 6000 N REF177 ! | |
$ PARAMETER G(D0A_NBNI3,NB:NB,NI;0) 298.15 +54022.5; 6000 N REF177 ! | |
$ PARAMETER G(D0A_NBNI3,NI:NB,NI;0) 298.15 +54022.5; 6000 N REF177 ! | |
PARAMETER G(D0A_NBNI3,NB,NI:NI;0) 298.15 -12318.5; 6000 N REF177 ! | |
$ Also known as mu phase | |
PHASE D85_NI7NB6 % 2 6 7 ! | |
CONSTITUENT D85_NI7NB6 :NB : CR,NB,NI% : ! | |
PARAMETER G(D85_NI7NB6,NB:NB;0) 298.15 +65000+13*GHSERNB#; 6000 N | |
REF177 ! | |
PARAMETER G(D85_NI7NB6,NB:NI;0) 298.15 -312097.5+7.3203*T | |
+6*GHSERNB#+7*GHSERNI#; 6000 N REF177 ! | |
PARAMETER G(D85_NI7NB6,NB:CR;0) 298.15 -32500 | |
+6*GHSERNB#+7*GHSERCR#; 6000 N 05Du ! | |
PARAMETER G(D85_NI7NB6,NB:NB,NI;0) 298.15 +273734.55; 6000 N REF177 ! | |
PARAMETER G(D85_NI7NB6,NB:NB,NI;1) 298.15 +451218.3; 6000 N REF177 ! | |
PARAMETER G(D85_NI7NB6,NB:CR,NI;0) 298.15 -71006; 6000 N 05Du ! | |
TYPE_DEFINITION ' GES A_P_D FCC_A1 MAGNETIC -3.0 2.80000E-01 ! | |
PHASE FCC_A1 %' 1 1 ! | |
CONSTITUENT FCC_A1 :CR,NB,NI% : ! | |
PARAMETER G(FCC_A1,CR;0) 298.15 +GFCCCR#; 6000 N REF1 ! | |
PARAMETER TC(FCC_A1,CR;0) 298.15 -1109; 6000 N REF1 ! | |
PARAMETER BMAGN(FCC_A1,CR;0) 298.15 -2.46; 6000 N REF1 ! | |
PARAMETER G(FCC_A1,NB;0) 298.15 +GFCCNB#; 6000 N REF1 ! | |
PARAMETER G(FCC_A1,NI;0) 298.15 +GHSERNI#; 6000 N REF1 ! | |
PARAMETER TC(FCC_A1,NI;0) 298.15 +633; 3000 N REF4 ! | |
PARAMETER BMAGN(FCC_A1,NI;0) 298.15 +.52; 3000 N REF4 ! | |
PARAMETER G(FCC_A1,CR,NI;0) 298.15 +8030-12.8801*T; 6000 N | |
REF110 ! | |
PARAMETER G(FCC_A1,CR,NI;1) 298.15 +33080-16.0362*T; 6000 N | |
REF110 ! | |
PARAMETER TC(FCC_A1,CR,NI;0) 298.15 -3605; 6000 N REF110 ! | |
PARAMETER BMAGN(FCC_A1,CR,NI;0) 298.15 -1.91; 6000 N REF110 ! | |
PARAMETER G(FCC_A1,NB,NI;0) 298.15 -70007.4-7.39665*T; 6000 N | |
REF177 ! | |
PARAMETER G(FCC_A1,NB,NI;1) 298.15 +96115-23.07497*T; 6000 N | |
REF177 ! | |
PARAMETER G(FCC_A1,CR,NB,NI;0) 298.15 -21111; 6000 N 05Du ! | |
$ TYPE_DEFINITION ' GES A_P_D FCC_A1 MAGNETIC -3.0 2.80000E-01 ! | |
$ PHASE FCC_A1 %' 2 1 1 ! | |
$ CONSTITUENT FCC_A1 :CR,NB,NI% : VA : ! | |
$ | |
$ PARAMETER G(FCC_A1,CR:VA;0) 298.15 +GFCCCR#; 6000 N REF1 ! | |
$ PARAMETER TC(FCC_A1,CR:VA;0) 298.15 -1109; 6000 N REF1 ! | |
$ PARAMETER BMAGN(FCC_A1,CR:VA;0) 298.15 -2.46; 6000 N REF1 ! | |
$ PARAMETER G(FCC_A1,NB:VA;0) 298.15 +GFCCNB#; 6000 N REF1 ! | |
$ PARAMETER G(FCC_A1,NI:VA;0) 298.15 +GHSERNI#; 6000 N REF1 ! | |
$ PARAMETER TC(FCC_A1,NI:VA;0) 298.15 +633; 3000 N REF4 ! | |
$ PARAMETER BMAGN(FCC_A1,NI:VA;0) 298.15 +.52; 3000 N REF4 ! | |
$ PARAMETER G(FCC_A1,CR,NI:VA;0) 298.15 +8030-12.8801*T; 6000 N | |
$ REF110 ! | |
$ PARAMETER G(FCC_A1,CR,NI:VA;1) 298.15 +33080-16.0362*T; 6000 N | |
$ REF110 ! | |
$ PARAMETER TC(FCC_A1,CR,NI:VA;0) 298.15 -3605; 6000 N REF110 ! | |
$ PARAMETER BMAGN(FCC_A1,CR,NI:VA;0) 298.15 -1.91; 6000 N REF110 ! | |
$ PARAMETER G(FCC_A1,NB,NI:VA;0) 298.15 -70007.4-7.39665*T; 6000 N | |
$ REF177 ! | |
$ PARAMETER G(FCC_A1,NB,NI:VA;1) 298.15 +96115-23.07497*T; 6000 N | |
$ REF177 ! | |
$ PARAMETER G(FCC_A1,CR,NB,NI:VA;0) 298.15 -21111; 6000 N 05Du ! | |
LIST_OF_REFERENCES | |
NUMBER SOURCE | |
REF4 'A T Dinsdale, SGTE Data for Pure Elements, update 2001' | |
REF1 'A T Dinsdale, SGTE Data for Pure Elements, Calphad 15(1991)4 p | |
317-425; ' | |
REF110 'B J Lee, Calphad 16(1992)2 p 121-149; TRITA-MAC 473 (1991); Cr | |
-Ni' | |
REF116 'J G Costa Neto, S G Fries, H L Lukas, Calphad 17(1993) p 219 | |
-228; Cr-Nb' | |
REF177 'A Bolcavage and U.R. Kattner, Journal of phase Equilibria, vol | |
17 No.2 1996; Nb-Ni' | |
REF129 'K Zeng, M Hamalainen, I Ansara, Z Metallkde 84(1993)1 p 23-28, | |
Cr-Zr' | |
05Du 'Y. Du, S. Liu, Y.A. Chang, Y. Yang, Calphad 29 (2005) | |
140-148; Cr-Nb-Ni' | |
! | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
# -*- coding: utf-8 -*- | |
##################################################################################### | |
# This software was developed at the National Institute of Standards and Technology # | |
# by employees of the Federal Government in the course of their official duties. # | |
# Pursuant to title 17 section 105 of the United States Code this software is not # | |
# subject to copyright protection and is in the public domain. NIST assumes no # | |
# responsibility whatsoever for the use of this code by other parties, and makes no # | |
# guarantees, expressed or implied, about its quality, reliability, or any other # | |
# characteristic. We would appreciate acknowledgement if the software is used. # | |
# # | |
# This software can be redistributed and/or modified freely provided that any # | |
# derivative works bear some notice that they are derived from it, and any modified # | |
# versions bear some notice that they have been modified. # | |
##################################################################################### | |
# Gibbs free energy expressions for IN625 from ternary CALPHAD Database | |
# Numerical libraries | |
import numpy as np | |
from sympy.utilities.lambdify import lambdify | |
from sympy.parsing.sympy_parser import parse_expr | |
# Visualization libraries | |
import matplotlib.pylab as plt | |
# Thermodynamics and computer-algebra libraries | |
from pycalphad import Database, calculate, equilibrium, Model | |
from pycalphad import variables as v | |
from sympy.utilities.codegen import codegen | |
from sympy.parsing.sympy_parser import parse_expr | |
from sympy import And, Ge, Gt, Le, Lt, Or, Piecewise, true | |
from sympy import Abs, cse, diff, logcombine, powsimp, simplify, symbols, sympify | |
from sympy import exp | |
# Constants | |
epsilon = 1e-10 # tolerance for comparing floating-point numbers to zero | |
temp = 870.0 + 273.15 # 1143 Kelvin | |
RT = 8.3144598*temp # J/mol/K | |
Vm = 1.0e-5 # m^3/mol | |
inVm = 1.0 / Vm # mol/m^3 | |
# Let's avoid integer arithmetic in fractions. | |
fr13by7 = 13.0/7 | |
fr13by3 = 13.0/3 | |
fr13by4 = 13.0/4 | |
fr6by7 = 6.0/7 | |
fr6by13 = 6.0/13 | |
fr7by13 = 7.0/13 | |
fr3by4 = 3.0/4 | |
fr3by2 = 3.0/2 | |
fr4by3 = 4.0/3 | |
fr2by3 = 2.0/3 | |
fr1by3 = 1.0/3 | |
fr1by2 = 1.0/2 | |
rt3by2 = np.sqrt(3.0)/2 | |
# Set composition of interest | |
xcr = 0.20 | |
xnb = 0.02 | |
xni = xcr - xnb | |
tdb = Database('Du_Cr-Nb-Ni_simple.tdb') | |
elements = ['CR', 'NB', 'NI'] | |
species = list(set([i for c in tdb.phases['FCC_A1'].constituents for i in c])) | |
model = Model(tdb, species, 'FCC_A1') | |
g_gamma = parse_expr(str(model.ast)) | |
# Declare sublattice variables used in Pycalphad expressions | |
# Gamma | |
FCC_A10CR, FCC_A10NB, FCC_A10NI, FCC_A11VA = symbols('FCC_A10CR FCC_A10NB FCC_A10NI FCC_A11VA') | |
GAMMA_XCR, GAMMA_XNB, GAMMA_XNI = symbols('GAMMA_XCR GAMMA_XNB GAMMA_XNI') | |
T = symbols('T') | |
# Make sublattice -> system substitutions | |
g_gamma = inVm * g_gamma.subs({FCC_A10CR: GAMMA_XCR, | |
FCC_A10NB: GAMMA_XNB, | |
FCC_A10NI: GAMMA_XNI, | |
FCC_A11VA: 1.0, | |
T: temp}) | |
# Generate numerically efficient system-composition expressions | |
GG = lambdify([GAMMA_XCR, GAMMA_XNB], g_gamma.subs({GAMMA_XNI: 1-GAMMA_XCR-GAMMA_XNB}), modules='sympy') | |
# Evaluate expression from pycalphad's model | |
extractedG = GG(xcr,xnb) | |
print "Extracted: free energy at ({0}, {1}) is {2}".format(xcr, xnb, extractedG) | |
# Calculate value with pycalphad | |
pycalphadG = calculate(tdb, elements, 'FCC_A1', {T:temp, v.X('CR'):xcr, v.X('NB'):xnb, v.X('NI'):xni}, output='GM') | |
print "Calculated: free energy at ({0}, {1}) is {2}".format(xcr, xnb, pycalphadG) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment