查看: 16204|回复: 37

有朋友帮忙测试自编 EXCEL 物性计算程序否?

  [复制链接]
zjmche 发表于 2008-9-18 09:54 | 显示全部楼层 |阅读模式
缘起:

http://bbs.hgbbs.net/viewthread.php?tid=27963&highlight=%BA%CE%C1%BC%D6%AA

http://bbs.hgbbs.net/viewthread.php?tid=40126&highlight=%BA%CE%C1%BC%D6%AA



1)俺有全权决定是否email您此测试软件
2)测试完成,未经俺同意前,切勿上传到任何论坛。
3)VBA源代码对您完全公开,但您发现问题不可自行修改,请将问题反馈给俺一并处理
4)你至少会使用一种主流模拟软件。
5)杀鸡用牛刀不一定很方便,特提供菜刀一把!(牛刀通常还是管制刀具。。。:)但用菜刀杀牛有风险,用来杀虎您拈量着办。
6)H|C|B|B|S上的活跃用户不在朋友之列。

      如同意以上条件,请短消息给俺您的邮箱,及您最常使用的主流模拟软件名称。

                                                                      菜刀门下, ZJMCHE谨上        

      菜刀门入门须知
      男女比例不限,大砖文化即可
      提倡替天行房,鄙视道貌岸然
      行善不依法律,作恶不背道德
      出门靠右行走,回家反道而行
      菜刀门掌门主页见:http://blog.sina.com.cn/dushifangniu



简要说明如下


含两个程序:

纯物性计算,>1000种纯物质物性,见附图


混合物计算程序,全部VBA源代码透明,实现Peng Robinson EOS 及Lee Kesler。
可在SHEET中,象调用EXCEL内部函数一样,调用实现:
1)自动进行严格的闪蒸计算
2)计算汽化分率,汽液相组成,泡点,露点温度
3)汽液相热容,焓值
4)汽液相密度
5)汽液相粘度
6)汽液相导热系数
7)液相表面张力
结合EXCEL中GOAL SEEK及SOLVER的功能,基本可实现大部分烃类混合物热力学计算功能。

计算实例结果(国中液相组成忘在EXCEL中打Ctrl-Shift-Enter, 正确结果是
Liquid0.0002199650.3326125670.667167461



计算实例的公式输入


[ 本帖最后由 zjmche 于 2008-9-18 10:40 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?[加入论坛]

x

评分

参与人数 3经验 +156 化工币 +156 魅力 +3 收起 理由
tent80 + 30 + 30 牛人牛贴
zjx1973 + 36 + 36 原创作品, 加大鼓励!^_^
robinhan + 90 + 90 + 3 看来大工程已经完成了,赫赫。

查看全部评分

robinhan 发表于 2008-9-18 10:01 | 显示全部楼层
老兄,我有空,而且特别想学学,在excel2007框架下做的,看起来很不错啊,回家再找你。常用PRO/II,A+最近也在学习,Hysys基本没摸过。

[ 本帖最后由 robinhan 于 2008-9-18 10:04 编辑 ]
回复 支持 反对

使用道具 举报

rhdhuo 发表于 2008-9-18 11:20 | 显示全部楼层
在下愿意为老兄做测试,常用PRO/Ⅱ、ASPEN。
回复 支持 反对

使用道具 举报

dafugege 发表于 2008-9-18 11:22 | 显示全部楼层
终于看到大作初成,恭喜。
回复 支持 反对

使用道具 举报

weilongwu 发表于 2008-9-18 20:11 | 显示全部楼层
我也想试试,会用A+,平时自己也用Excel编点小程序,如塔径和管道水力学的计算等,但物性的计算还没有试过,呵呵。。。
回复 支持 反对

使用道具 举报

weilongwu 发表于 2008-9-18 20:13 | 显示全部楼层
活度系数方程是否会编进去?谢谢。。。
回复 支持 反对

使用道具 举报

frankrain 发表于 2008-9-18 20:57 | 显示全部楼层
下载并学习过您以前编制的excell程序,受益匪浅。恭喜老兄大作初成!
回复 支持 反对

使用道具 举报

dayooo 发表于 2008-9-18 23:01 | 显示全部楼层
皇皇乎高手
回复 支持 反对

使用道具 举报

zjx1973 发表于 2008-9-19 09:49 | 显示全部楼层
我可以来测试一下吗,本人熟练使用PROII工具!
回复 支持 反对

使用道具 举报

 楼主| zjmche 发表于 2008-9-19 10:53 | 显示全部楼层
短信留邮箱的朋友,已发送,请查收。

测试完成前,请勿上传到论坛。
回复 支持 反对

使用道具 举报

csldg 发表于 2008-11-11 01:12 | 显示全部楼层
z兄,我发现我们的工作重复了很多。实际上我已经完成了eos(5个方程,RK, SRK, SRK-BM, PR, SPR-BM)和活度系数(Wilson,nrtl)求解任意混合物的程序汽液平衡问题。程序在你发表的那个号召开发开源代码软件的帖子里。不过当时我没有把源代码公开,如果你需要,我打算公开。

最近由于工作需要,编了可压缩和不可压缩单相流体管道压降计算表,不过这个没有程序,只是在excel中的计算而已,本来打算做一个空冷器的计算表,后来发现你已经完成了,呵呵,先研究一下你的表吧。

不知你的下一步计划是什么,如果可能的话,不如大家分工一下,避免重复劳动。

评分

参与人数 2经验 +60 化工币 +60 收起 理由
tent80 + 30 + 15 热心助人,加分鼓励!^_^
robinhan + 30 + 45 技术交流, 加分鼓励!^_^

查看全部评分

回复 支持 反对

使用道具 举报

weilongwu 发表于 2008-11-11 18:55 | 显示全部楼层
欢迎分享源代码,谢谢。。。
回复 支持 反对

使用道具 举报

 楼主| zjmche 发表于 2008-11-12 09:03 | 显示全部楼层
原帖由 csldg 于 2008-11-11 01:12 发表
z兄,我发现我们的工作重复了很多。实际上我已经完成了eos(5个方程,RK, SRK, SRK-BM, PR, SPR-BM)和活度系数(Wilson,nrtl)求解任意混合物的程序汽液平衡问题。程序在你发表的那个号召开发开源代码软件的帖子里。 ...


兄弟还在hz? 我看过你发表的文件,但通过函数接口的方式,更有通用性,也更容易被其它功能调用。

俺从工厂管理回来做具体工程技术两年多,工作需要加之手痒将以前一些东西写在了EXCEL中,现在洗手不干啦,不再编程了,毕竟努力向上,多赚钱才是正道,何况自己是奔四了。
回复 支持 反对

使用道具 举报

lty 发表于 2008-11-12 09:46 | 显示全部楼层
对于楼主前辈说一点自己的看法:
看了以前发的几个物性及气液计算表格(其他的还没有来的及下载研究),感觉工作具有一定重复性。
1 物性参数以及组分的相互作用参数取自一些手册和软件(乍一看上去是这样认为的),计算过程中一些参数还做了简化,比如状态方程交互作用参数默认0,这些组分参数以及相互作用参数一些模拟软件都有,而且要更全一些,一个个输入表格里是不折不扣的重复性劳动,假如是小弟帮您的那就另说了。虽然一些计算公式我们一些新手并不是很熟悉,关于表格计算的方法也不是很了解,但是感觉前辈做这样的工作并不是很合算,从本质上就是有些重复性,而不是人和人之间的重复,确实不如多挣钱些钱,我觉得把计算公式总结出来,让我们了解熟悉,至于通过怎样的计算方法来实现让大家自己去发挥。仁者见仁智者见智,也许其他人测试过前辈软件的人会有更高的需求和所得。
2对前辈的期待:是不是可以做一些其它软件没有的算法,比如目前研究前沿的一些模型,做到比模拟软件更先进,更准确,我觉得这是发挥您优势的地方,而不是重复别人的东西。
3注明:我是“hc”的活跃用户,一个刚接触化工行业的低年级同学。
每每浏览众前辈的帖子都不禁心潮澎湃,只是最近这里有些冷,更多时间只能回味了。

[ 本帖最后由 lty 于 2008-11-12 09:48 编辑 ]

评分

参与人数 2经验 +45 化工币 +60 收起 理由
tent80 + 15 + 15 技术无国界
robinhan + 30 + 45 技术交流, 加分鼓励!^_^

查看全部评分

回复 支持 反对

使用道具 举报

csldg 发表于 2008-11-12 16:38 | 显示全部楼层
代码已公开,顺便发了一点感想,拷贝如下:

上一版两年前发表在
hgbbs上,一晃居然2年多过去了,但我也把此事撩下了两年,没有对程序做任何实质上的升级。

因此虽然版本叫
1.1,只是因为应Wu兄的要求想公开源代码,顺便调整了一下界面,加了许多注释,帮助读者使用。另外加了一些对输入条件的判断,分子式可输入小写,程序自动转换为大写。

所有的用户计算界面都在Vm&Z中,Pressure,Critical, NRTL是数据库,用户不必做任何输入和改动,已保护。

程序都加了详细的注释,有兴趣的可以阅读一下。

关于界面的程序,都在Sheet 4(Vm&Z-pure)中(为什么叫这个名字?因为最开始我就只想做这几个简单计算,后来再想改已经非常麻烦了。)



活度系数方程在Activity模块中,状态方程在EOS中,汽液平衡在VLE中,数学方程在Mathematics中。

所有的EOS和活度系数方程都是取自AspenProperty 10.0版,闪蒸计算来自化工热力学教材,一元三次方程,二分法解一元方程来自于网上。

两年前的工作现在再捡起来,也是一件费脑筋的事情,其实我很想开始焓的计算编程,还想把界面做一个彻底的调整,但修改一个很久之前的程序恐怕比重新开始编程更麻烦,一不小心就会漏掉某个地方,在去调试查找,花费的时间也不会少。

最近由于工作需要,自己在业余时间做一些单元操作模型的计算表,想把它整合到此程序中,觉得实在有些麻烦,又想干脆重起炉灶在matlab中编程,放弃此程序,可用一种新的编程环境,又不知道是否有时间去学习了。

顺便谈一下模拟程序开发推广的感想。

实际上很早以前,z兄就曾在hgbbs上呼吁过大家共同协作,开发出一款开源模拟软件来,响应者众众,但3年过去了,事情没有什么进展,我能看到的结果,也仅仅只是z兄仍在业余时间开发相互独立的程序,还有这个Mixture Calcualtion

为什么?

可以找出很多理由:1. 缺乏有效的管理和沟通,论坛毕竟是一个相对宽松和自由的地方,大家的联系实际并不紧密,这对一个需要严格控制的工程项目来说是不可接受的。

2. 真正肯在编程上花时间和精力的人不多,能够持续下来的人更少。我自认为对化工计算还是比较有兴趣的,可一放,也竟然放了两年的时间。

这是我两年前就能预料到的结果,并且认为这两条就是根本原因。但我现在认为上面两条只是表面因素,还有更根本的原因。

那就是,我们编出来的东西有用吗?

这里面有两个问题:

1. 用户信任我们的计算结果吗?当然作为编程人员,我很清楚我的公式来自哪里,数据来自哪里,局限在什么地方,如何选取保险系数。但用户知道吗?你如何才能把这些信息完整无误地传达给用户,让用户了解你的计算?

近而,用户知道计算的结果是否可靠,是否可以用于他的设计中,如何用在他的设计中?

这就存在一个矛盾,要么用户不信任你的结果,要么他要花大量的时间去了解你的编程,但与其学习你的程序他不如去自己编程解决- 所花的时间也许要长一些,但结果他是有信心的。

我自己就是这么干的,通常从网上下载一个计算模板(当然也有例外,比如steamtab这个软件,我通常就认为其计算结果是正确的),尤其是个人开发的计算模板,都要花时间去学习他的用法,了解他的计算机理,但我发现,这个时间不少于我从新学习一编计算原理的过程。所以通常我更喜欢用自己编的模板来计算,更符合我的个人习惯。

2. 我们编的程序真的是正确的吗?

有这个疑问是因为我曾下载过一个爱好者根据SH3009-2001做的火炬高度计算表,拿回来仔细一看,好几个地方都是错误的。这些错误有的是因为作者的疏忽,有的也是他的到数据源的局限,比如算火焰长度时用的参数根据API521是有个图表查的,但作者不知为何没有将此表放如,令用户已为该参数为常数。

这样的计算表岂不误导用户?

以前没有意识到问题的严重性,时间长了,逐渐觉得这就是爱好者开发程序最致命的缺陷。

你无法将自己的程序推广开来,因为你不能让用户信任计算的结果,甚至你本人也不能保证结果一定是正确的。

所以我比较悲观的认为,推广自己的程序只有两个意义:

1. 方便自己的工作,理清计算的细节。
2. 爱好者之间相互交流,相互学习。

权做一点序吧。

[ 本帖最后由 csldg 于 2008-11-12 16:51 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?[加入论坛]

x

评分

参与人数 1经验 +90 化工币 +90 魅力 +3 收起 理由
robinhan + 90 + 90 + 3 原创作品, 加大鼓励!^_^

查看全部评分

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | [加入论坛]

本版积分规则

化工技术网- 赠人玫瑰 手有余香 ( 苏ICP备14035884号 )

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