Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Waldo Valderrama R.
Introducción
El cálculo se basa en determinar las curvas de energía libre de la fase sólida y la fase líquida, y determinar
aquellas composiciones para las cuales la pendiente de ambas curvas es la misma y los interceptos son también
los mismos. Estas composiciones varían con la temperatura, lo que permite obtener el diagrama respectivo.
Fase sólida
> restart;
> G_s:=x1*G0_s1+(1-x1)*G0_s2+R*T*(x1*ln(x1)+(1-x1)*ln(1-x1));
G_s := x1 G0_s1 + (1 - x1 ) G0_s2 + R T (x1 ln(x1 ) + (1 - x1 ) ln(1 - x1 ) )
Fase líquida
> G_l:=x1*G0_l1+(1-x1)*G0_l2+R*T*(x1*ln(x1)+(1-x1)*ln(1-x1));
G_l := x1 G0_l1 + (1 - x1 ) G0_l2 + R T (x1 ln(x1 ) + (1 - x1 ) ln(1 - x1 ) )
> G0_l2:=G0_s2+lambda_f2*(1-T/Tf2);
! T $
G0_l2 := G0_s2 + lambda_f2 " 1- %
# Tf2 &
> Tf1:=1960+273;Tf2:=2800+273;
Tf1 := 2233
Tf2 := 3073
> R:=1.987;
R := 1.987
> G_l;
! 12500 $ ! 18500 $
x1 " G0_s1 + 12500 - T % + (1 - x1 ) " G0_s2 + 18500 - T%
# 2233 & # 3073 &
+ 1.987 T (x1 ln(x1 ) + (1 - x1 ) ln(1 - x1 ) )
> G_s;
x1 G0_s1 + (1 - x1 ) G0_s2 + 1.987 T (x1 ln(x1 ) + (1 - x1 ) ln(1 - x1 ) )
Para poder graficar habría que conocer el valor de los términos G0_s, correspondientes a las energías libres
de los sólidos respectivos, que aparecen en ambas ecuaciones. Una manera de evitar este cálculo es graficar el
cambio de energía libre de formación de la solución en vez de la energía libre absoluta. La condición de
igualdad de pendientes no requiere de conocer el valor de los potenciales químicos de los sólidos puros, como
se verá más adelante.
> DeltaG_l:=G_l-x1*G0_s1-(1-x1)*G0_s2:simplify(%);
-6000.000 x1 + 0.4223 x1 T + 18500.000 - 6.020 T + 1.987 T x1 ln(x1 ) + 1.987 T ln(1.000 - 1.000 x1
- 1.987 T ln(1.000 - 1.000 x1 ) x1
> DeltaG_s:=G_s-x1*G0_s1-(1-x1)*G0_s2:simplify(%);
1.987 T (x1 ln(x1 ) + ln(1.000 - 1.000 x1 ) - 1.000 ln(1.000 - 1.000 x1 ) x1 )
Se grafica desde una temperatura bajo el punto de fusión del NiO, donde el sistema es sólido en todo el rango
de composiciones. En el punto de fusión del NiO, el líquido y sólido tienen la misma energía libre para el
NiO puro, las curvas coinciden en ese punto.
> for T from 2100 by 100 to 3100 do
plot([DeltaG_s,DeltaG_l],x1=0..1,axes=boxed,
color=[red,green],style=[point,line],title="Temperatura =
"||T||" Rojo punteado = fase_solida", labels=[x_NiO,G]);
od;
Dado que se han asignado valores numéricos a la temperatura T, se restaura como variable para los cálculos
que siguen
> T:='T';
T := T
> G_l:=y1*G0_l1+(1-y1)*G0_l2+R*T*(y1*ln(y1)+(1-y1)*ln(1-y1));
! 12500 $ ! 18500 $
G_l := y1 " G0_s1 + 12500 - T % + (1 - y1 ) " G0_s2 + 18500 - T%
# 2233 & # 3073 &
+ 1.987 T (y1 ln(y1 ) + (1 - y1 ) ln(1 - y1 ) )
> eq2:=simplify(%);
eq2 := -12500.000 + 5.598 T + 1.987 T ln(x1 ) - 1.987 T ln(y1 ) = 0
Como se dijo antes, ninguna de las dos ecuaciones depende de las energías libres de los sólidos puros. A
continuación se calculan los valores de composición de fase para cada temperatura
> x:=[]:y:=[]:Temp:=[]:
> for T from 2240 by 10 to 3070 do
fsolve({eq1,eq2},{x1,y1},x1=0..1,y1=0..1):assign(%):
x:=[op(x),x1]:y:=[op(y),y1]:Temp:=[op(Temp),T]:
x1:=evaln(x1):y1:=evaln(y1):
od:
x;y;Temp;
[0.9871, 0.9689, 0.9510, 0.9333, 0.9159, 0.8988, 0.8819, 0.8653, 0.8489, 0.8327, 0.8168, 0.8011, 0.7855
0.7702, 0.7551, 0.7402, 0.7255, 0.7110, 0.6966, 0.6825, 0.6685, 0.6546, 0.6410, 0.6274, 0.6141,
0.6009, 0.5878, 0.5749, 0.5621, 0.5495, 0.5370, 0.5246, 0.5124, 0.5002, 0.4882, 0.4764, 0.4646,
0.4529, 0.4414, 0.4299, 0.4186, 0.4074, 0.3962, 0.3852, 0.3742, 0.3634, 0.3526, 0.3420, 0.3314,
0.3209, 0.3104, 0.3001, 0.2898, 0.2797, 0.2696, 0.2595, 0.2496, 0.2397, 0.2298, 0.2201, 0.2104,
0.2008, 0.1912, 0.1817, 0.1722, 0.1629, 0.1535, 0.1443, 0.1350, 0.1259, 0.1168, 0.1077, 0.09869,
0.08972, 0.08081, 0.07194, 0.06312, 0.05434, 0.04560, 0.03691, 0.02826, 0.01965, 0.01108,
0.002552]
[0.9958, 0.9897, 0.9835, 0.9772, 0.9707, 0.9641, 0.9573, 0.9505, 0.9435, 0.9363, 0.9291, 0.9217, 0.9141
0.9065, 0.8987, 0.8907, 0.8826, 0.8744, 0.8661, 0.8576, 0.8489, 0.8402, 0.8312, 0.8222, 0.8130,
0.8037, 0.7942, 0.7846, 0.7748, 0.7649, 0.7548, 0.7446, 0.7343, 0.7238, 0.7132, 0.7024, 0.6915,
0.6804, 0.6692, 0.6578, 0.6463, 0.6346, 0.6228, 0.6108, 0.5987, 0.5864, 0.5740, 0.5615, 0.5487,
0.5359, 0.5229, 0.5097, 0.4963, 0.4829, 0.4692, 0.4554, 0.4415, 0.4274, 0.4131, 0.3987, 0.3842,
0.3694, 0.3546, 0.3395, 0.3243, 0.3090, 0.2935, 0.2778, 0.2620, 0.2460, 0.2299, 0.2136, 0.1971,
0.1805, 0.1637, 0.1468, 0.1297, 0.1124, 0.09502, 0.07744, 0.05970, 0.04180, 0.02373, 0.005500]
[2240, 2250, 2260, 2270, 2280, 2290, 2300, 2310, 2320, 2330, 2340, 2350, 2360, 2370, 2380, 2390, 2400
2410, 2420, 2430, 2440, 2450, 2460, 2470, 2480, 2490, 2500, 2510, 2520, 2530, 2540, 2550, 2560,
2570, 2580, 2590, 2600, 2610, 2620, 2630, 2640, 2650, 2660, 2670, 2680, 2690, 2700, 2710, 2720,
2730, 2740, 2750, 2760, 2770, 2780, 2790, 2800, 2810, 2820, 2830, 2840, 2850, 2860, 2870, 2880,
2890, 2900, 2910, 2920, 2930, 2940, 2950, 2960, 2970, 2980, 2990, 3000, 3010, 3020, 3030, 3040,
3050, 3060, 3070]
> solidus:=[[x[i],Temp[i]-273]
$i=1..nops(x)];liquidus:=[[y[i],Temp[i]-273] $i=1..nops(y)]:
>
solidus := [[0.9871, 1967], [0.9689, 1977], [0.9510, 1987], [0.9333, 1997], [0.9159, 2007],
[0.8988, 2017], [0.8819, 2027], [0.8653, 2037], [0.8489, 2047], [0.8327, 2057], [0.8168, 2067],
[0.8011, 2077], [0.7855, 2087], [0.7702, 2097], [0.7551, 2107], [0.7402, 2117], [0.7255, 2127],
[0.7110, 2137], [0.6966, 2147], [0.6825, 2157], [0.6685, 2167], [0.6546, 2177], [0.6410, 2187],
[0.6274, 2197], [0.6141, 2207], [0.6009, 2217], [0.5878, 2227], [0.5749, 2237], [0.5621, 2247],
[0.5495, 2257], [0.5370, 2267], [0.5246, 2277], [0.5124, 2287], [0.5002, 2297], [0.4882, 2307],
[0.4764, 2317], [0.4646, 2327], [0.4529, 2337], [0.4414, 2347], [0.4299, 2357], [0.4186, 2367],
[0.4074, 2377], [0.3962, 2387], [0.3852, 2397], [0.3742, 2407], [0.3634, 2417], [0.3526, 2427],
[0.3420, 2437], [0.3314, 2447], [0.3209, 2457], [0.3104, 2467], [0.3001, 2477], [0.2898, 2487],
[0.2797, 2497], [0.2696, 2507], [0.2595, 2517], [0.2496, 2527], [0.2397, 2537], [0.2298, 2547],
[0.2201, 2557], [0.2104, 2567], [0.2008, 2577], [0.1912, 2587], [0.1817, 2597], [0.1722, 2607],
[0.1629, 2617], [0.1535, 2627], [0.1443, 2637], [0.1350, 2647], [0.1259, 2657], [0.1168, 2667],
[0.1077, 2677], [0.09869, 2687], [0.08972, 2697], [0.08081, 2707], [0.07194, 2717], [0.06312, 2727
[0.05434, 2737], [0.04560, 2747], [0.03691, 2757], [0.02826, 2767], [0.01965, 2777],
[0.01108, 2787], [0.002552, 2797]]
> plot([solidus,liquidus],x1=0..1,axes=boxed,labels=['X_NiO','Temperatura
_C'],color=[red,green],view=[0..1,1500..3000] );
3000
2800
2600
2400
tura_C
2200
2000
1800
1600
>