以梦为马,不负韶华

搜索
查看: 1723|回复: 4
收起左侧

为什么Aspen Plus中的Reconcile这么强?——浅谈收敛过程

[复制链接]
 楼主| 发表于 1970-1-1 08:00:00 显示全部楼层 |阅读模式
很多人在模拟过程中,尤其是在进行流程循环收敛的过程中,经常会有一个困扰:好不容易辛辛苦苦调了好久参数,流程最终运行收敛,文件也保存了,但是重新打开.bkp运行为什么还是会不收敛?这个问题我们需要理解Aspen软件的计算和收敛过程。这篇文章小编仅根据自己的理解来给大家解释,如果有错误还请多多指正!**
序贯模块法**
首先,我们需要知道Aspen在运行流程模拟时的计算方法,有三种:序贯模块法、联立方程法和联立模块法,默认的方法是序贯模块法,也是最为基础的,简单的方法。序贯模块法就是从进料开始,按照流程顺序一个模块一个模块进行求解。照着下面这张图进行说明应该会更好理解,已知进料数据和各模块参数后,运行模拟时,Aspen首先根据最初的进料a和模块1的参数对模块1进行求解,得到两股出料b和f数据;这两股出料数据又作为模块2和5的进料,然后对模块2和5进行求解,接下来是模块3和6,最后是模块4,并得到两股最终出料的结果。**

                               
登录/注册后可看大图
所以说大家模拟的时候,就应当按照流程顺序一个一个进行模拟,上一个模块没有模拟优化完毕就不要去模拟下一个模块,因为下一个模块的计算是需要用到上一个模块的出料数据的,上一个模块没有模拟优化好,那么出料数据是不对的,这样下一个模块的计算肯定也是不对的。**
撕裂流股与迭代收敛**
简单的流程,从前往后一直计算是不会有太大的难度的。但是一旦出现循环了,那么问题就变得复杂起来了。还是上个流程,如果说模块4会有一个出料需要通过模块7循环回模块2,那么模块2的计算就需要b和j两股进料数据,但是j的数据又需要2→3→4→7这个循环计算得到,那就出现了很尴尬的情况,进料需要出料计算得到,出料又需要通过进料计算得到。**

                               
登录/注册后可看大图
为此,Aspen解决办法就是撕裂流股和迭代收敛。在软件默认情况下,出现循环,Aspen会自动在循环流股中选择一条流股(例如c)并给它一个初值(比如c0),然后在运行计算时,Aspen会同时从进料流股a和撕裂流股c开始序贯模块计算(a开始依次计算1,5,6,并得到b和h的数据;c开始依次计算3,4,7,并得到j和e的数据)。这样,当计算到模块2时,流股b和流股j均有数据,可以进行计算。**

                               
登录/注册后可看大图
计算后会产生一个新的c的值(比如c1),这时候软件会比较c0和c1,如果相差很大,那么软件就自动将c1作为新的c的值重新进行一次计算(同样是依次计算3,4,7,2模块),然后得到c2,这个就是迭代过程。迭代过程会一直进行下去,直到得到的某一次cn与cn-1数据一致(或达到收敛容差),流程收敛并输出结果;或者说在循环迭代次数内,无法达到收敛容差,流程收敛失败。**
收敛的关键**
很多情况,Aspen自动进行迭代计算无法实现收敛,除了流程本身有问题(在打循环之前请务必要自行判断循环中是否有无法出循环的物质,这很重要,如果有的话,那么循环你打上一万年也不会收敛的),迭代的初值很关键!初值越接近最终数值,越容易收敛。前面说到默认Aspen会自动给初值进行计算,这个初值很有可能离你的收敛结果太远,导致迭代无法收敛。但是当你对循环流股当中的某一个流股进行赋值的话,那么这个流股就会成为撕裂流股,其初值就会成为迭代计算的初值。**
收敛与Reconcile**
最后我们就要提到最开始的那个问题了,为什么调了很久的参数最终收敛了,但是重新打开文件进行迭代计算还是会不收敛呢?因为Aspen的收敛计算是在上一步计算结果的基础上继续进行计算的,而我们在进行参数调整的时候,上一步的计算结果是没有被清除的,因此有可能上一步的结果已经比较接近收敛结果了,再进行一次迭代计算就成功收敛了。但是当你保存文件重新打开后(或者你reset后),这些中间的结果全部都被清除掉了,初值就变了,所以迭代就可能无法收敛了。**


                               
登录/注册后可看大图
因此,我们需要在流程得到收敛后,将流股结果(至少对撕裂流股)进行赋值(也就是把流股的results数据复制到input当中),我们可以手动进行赋值,当然也可以通过Reconcile(见上图),点击run运行模拟成功后,Reconcile按钮就会被激活。点进去我们也可以看到这个按钮的作用:copy results to input specifications,就是赋值的意思。有一些可以进行的选项,比如需要赋值哪些流股?赋值哪些参数?默认的其实就可以。**

                               
登录/注册后可看大图
为什么赋值完成之后,流程就会很快收敛呢?因为赋值完成后,赋值的流股input就有数据了,而且是不会被清除的,在重新运行模拟的时候,这些值就作为收敛运算的初值,而这些初值本来就是最终的收敛结果,因此只需要迭代几次就可以收敛了,收敛当然快了!**

                               
登录/注册后可看大图
当然Reconcile的效果不止这些,当我们在模拟过程中,显示模拟结果可用(results available),但是点击控制面板发现还有几个警告的时候,就可以使用Reconcile进行警告的消除,而且效果极佳。我个人的理解是,这些警告或者错误可能是在迭代收敛计算的过程中出现的,如果我们进行Reconcile之后,那么整个收敛的过程就变了,并且变得更迅速了,因此这些警告或者错误就可以消除了。**
注:文章首发公众号“化工研学社”,知乎号“叶上初阳”,欢迎关注!**

评分

参与人数 1韶华币 +10 收起 理由
banknation + 10 深入讨论

查看全部评分

发表于 1970-1-1 08:00:00 显示全部楼层
谢谢楼主的分享!!!!
[发帖际遇]: 常青1958 在端午节继续加班,获得加班工资 2 个 韶华币. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

发表于 1970-1-1 08:00:00 显示全部楼层
谢谢楼主分享!
回复 支持 反对

使用道具 举报

发表于 1970-1-1 08:00:00 显示全部楼层
菜鸟学习了,谢谢讲解
[发帖际遇]: 皆大欢喜 乐于助人,帮助不愿意过马路的老奶奶过马路,奖励 2 个 韶华币. 幸运榜 / 衰神榜
回复 支持 反对

使用道具 举报

不想打字就选择快捷回复吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|以梦为马,不负韶华

GMT+8, 2025-2-13 15:36

Powered by 以梦为马,不负韶华

© 2024-2099 Meng.Horse

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