请选择 进入手机版 | 继续访问电脑版

因斯福论坛

搜索
查看: 9483|回复: 1

气体化学反应动力学和表面化学反应动力学软件包 CHEMKIN III

[复制链接]
发表于 2011-10-22 23:22:15 | 显示全部楼层 |阅读模式
CHEMKIN III 是一个Fortran写的气体化学反应动力学和表面化学反应动力学软件包,由美国Sandia实验室的Kee R.J. 等人编写,经过多年的不断发展日趋完善。1997年被Reaction Design公司收购。此前,CHEMKIN II可以在网上自由下载,CHEMKIN III通过付费可以得到源代码。现在的CHEMKIN 4.1好像不再提供源代码了。在中国该软件由中流汉泰公司代理。

如果研究明白了CHEMKIN的基本思路,自己完全可以写一个类似的程序库完成其部分功能。全部功能重新写一遍是很累的,也没有必要。

CHEMKIN软件包含以下几个组成部分:前处理器,子程序库,应用反应器,物性库。

• 前处理器:前处理器包括CHEMKIN转换器,表面化学转换器,传输参数拟合程序。前处理器获取用户直接提供的信息,包括物质的热物理性质参数,反应物质和元素,化学反应,然后对它们进行解析和编译。这些信息存贮在连接文件里,随后应用程序调用CHEMKIN子程序库读取这些信息。

将源程序 CKINTERP.F 和 CKLIB.F 编译可得到前处理器。CKINTERP 主要就是把反应体系的信息以一定的格式存储到一个文件中,这个文件被称为连接文件。用 Fortran 语言搞前处理是很累的,佩服80年代初期的程序员。如果用.Net语言来写,效率会高很多,用XML格式存储反应体系的信息可能更方便。

• 子程序库:子程序库包括气相反应库,表面化学反应库,物质传输库。每一个库都从连接文件读取信息,将这些信息存储在矩阵里,随后在调用子程序时将矩阵信息返回到应用程序。气相反应库提供元素,物质,反应方程,物质物理常数值,状态方程计算,单位转换,热力学性质参数,计算化学反应速率,反应平衡常数等系列参数。表面反应库包含表面反应方程以及参加表面反应的物质热物理参数。物质传输库包括气相物质、气体混合物传输参数,包括扩散系数,热扩散系数,导热系数和粘性等参数。传输属性可以能够通过平均混合物和多组分方程求解。

CKLIB.F 为气相反应动力学子程序库。用户可以直接将源程序作为项目文件一起编译,也可以编译为静态库或动态链接库使用。其基本原理是将连接文件中的反应体系信息读入3个1维数组:RWORK、IWORK、CWORK。其中每个数组都是“组装”的数组,目的是为了减少函数参数的数量。需要使用的时候,通过位置索引在组装的数组中找到相关信息。如果用面向对象的编程思路,这些数据完全可以以数据成员的方式封装在类中。这样,物理量无须组装到3个数组,程序的可读性会更好。

• 应用反应器:CHEMKIN反应器模块可以实现复杂系统的化学反应模拟,它拥有多达24种不同的反应器,每一个反应器模块可以实现特定的功能。



回复

使用道具 举报

发表于 2011-10-27 01:27:26 | 显示全部楼层
学习了,谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|因斯福论坛  

GMT+8, 2020-8-4 05:10

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表