理想溶液二元相图计算.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
理想溶液二元相图计算

实验四 理想溶液二元相图计算 一. 实验目的 1.了解相图在材料科学和工程中的意义及理想溶液二元匀晶相图的计算方法。 2.学会使用C语言或其它语言编程计算理想溶液的二元匀晶相图。 3.了解当前国内外相图计算软件的现状。 二.实验原理 1.理想溶液相图计算理论 理想液态混合物中任意一组分B的化学势为:=+RTln 对于1mol理想液态混合物来说,结合化学势的定义,上式可以写成: =+RTln(1) 设指定的温度、压力下,B物质有α、β两相存在,达到平衡时,则有: =(2) 在我们研究的系统中,有A、B两组分存在,对于组分A,将式(1)代入(2)式得: 多项整理得: (3) 同理可得: (4) 利用(3)和(4)式即可计算理想溶液平衡两相的组成。 2.相图计算软件简介 目前集成热化学数据库和相图计算软件的系统主要包括瑞典皇家工学院材料科学与工程系为主开发的 Thermo-Calc 系统和加拿大蒙特利尔多学科性工业大学计算热力学中心为主开发的 FACT(Facility for the Analysis of Chemical Thermodynamics)系统。这些软件的共同特点是集成了具有自洽性的热化学数据库和先进的计算软件。 Pandat合金相图软件与热力学计算软件是美国CompuThermLLC公司开发的用于计算多元合金相图和热力学性能的软件包。可用于计算多种合金的标准平衡相图和热力学性能,用户也可使用自己的热力学数据进行相图与热力学计算。 三.问题描述 NiO-MgO为液、固相连续互溶二元体系。已知 NiO和MgO的熔点分别为1960℃和800℃,熔化热分别为52.3kJ/mol和77.4kJ/mol,以纯液态NiO作为NiO的标准态,纯固态MgO作为MgO的标准态,用C语言或其它高级语言编程计算该二元体系相图。 四.问题分析 1.计算模型 在上述问题中分别以纯液态NiO作为NiO的标准态,纯固态MgO作为MgO的标准态,则和近似计算式为: 将(3)和(4)式用于NiO-MgO系,设液相(l)为β,固相(s)为α,则有: (5) 同理可得: (6) 又因为,,则(6)式可写成: (7) 联立(5)和式(7)得: (8) (9) 由(8)和式(9)即可计算得到NiO-MgO的完全固溶体相图。 五.实验内容 程序流程图 源程序代码 #includeprocess.h #includestdio.h #includestdlib.h #includeconio.h #includedos.h #includemath.h #includegraphics.h #define TN (1960+273) #define TM (2800+273) #define T_CH 2 #define NUM (int)((TM-TN)/T_CH)+5 float R=8.3145,H_chN=52300.0,H_chM=77400; int n,X1,X2,Y1,Y2; float e_x(float H_ch,int t,int t_fus) { if(TN=tt=TM)return exp(H_ch*(t_fus-t)/(t_fus*R*t)); else printf(The temperature is out of range\n); return 0; } float x_L(int t) { float exN,exM,x_L; exM=e_x(H_chM,t,TM); exN=e_x(H_chN,t,TN); x_L=(1-exN)/(exM-exN); return x_L; } float x_S(int t) { float x_S; x_S=x_L(t)*e_x(H_chM,t,TM); return x_S; } coord_sys() { int i,dx,dy; char y_interval[5],x_interval[5]; X1=getmaxx()/2-150;X2=getmaxx()/2+150; Y1=getmaxy()/2-200;Y2=getmaxy()/2+150; dx=(X2-X1)/10;dy=(Y2-Y1

文档评论(0)

shenlan118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档