想要弄明白Aspen Plus里头的Design Spec要怎么配置,还有Design Spec设的目标值不收敛了该怎么整,这种事常常会在要反推操作参数的时候碰到,比如想要达到某个产品纯度、回收率、出口温度,或者某股物料的流量,这些场景里,思路倒不算太复杂,就是先定一个需要满足的目标,再叫Aspen Plus自己去调一个操作变量,但是Design Spec能不能算得稳稳当当的,很大程度上要看目标设得合不合理,操纵的那个变量挑没挑对,还有它们俩之间是不是有一个明明白白的变化关系。
一、Aspen Plus Design Spec怎么配置
在把Design Spec加进去之前,建议先把这项功能关掉,让基础的流程单独跑上一遍,要是换热器、反应器、精馏塔,还有那些循环回来的物料自己都还没有收敛,又把Design Spec叠上去,报错的信息就会全搅在一块儿了。
1、把目标的表达式建起来
进到【Model Analysis Tools】→【Design Specs】这个路径下面,去新建设计规定,然后在变量的页面里,把要读的那些流程数据给定义好,目标可以是一股物流的温度、组分的摩尔分数、产品的流量,也可以用好几个变量凑成一个表达式,比方说要把产品的纯度控制在0.95,可以直接拿产品组分的含量当目标变量,也可以搭一个“实际的纯度减掉0.95”这样的表达式,让算出来的结果往零去靠,在引变量的时候,物流、模块还有组分,这些名字都得对上,要是名字选岔了,Design Spec就算跑起来了,也可能管到别的数据上去了。
2、把操纵变量设好
在【Vary】这个地方,挑一个让Aspen Plus去动的变量,比如进料量、回流比、塔顶采出来的量、加热的负荷,或者是反应的温度,同时把一开始的值、下限和上限都填上,这个操纵变量得是能实实在在影响到目标值的东西,想着去控制塔顶的纯度,却选了一个差不多跟精馏塔没啥关系的支路流量,那求解器再怎么来回迭,也很难找出个结果来,上下限也别随手就填得特别宽,最好是照着设备的能力和正常跑的范围来。
3、让设计规定跑起来
参数设好以后,把Design Spec给启用了,再去跑整个流程,在算的过程中,Aspen Plus会不停地去改那个Vary变量,拿当前的结果和目标的差值去比,一直到误差掉进容差的那个范围里头,或者碰到了迭代次数的上限,跑完了不能光看状态是不是蹦出来一个收敛的提示,还得去瞅一眼,最终的操纵变量有没有顶到上下限上,产品的指标是不是真的做到了,还有跟它相关的那些设备,有没有出现不对劲的负荷。
二、Aspen Plus Design Spec目标值不收敛怎么办
目标值不收敛的时候,最常见的原因倒不是迭代的次数少了,而是这个目标根本到不了,或者说那个操纵变量在现在这个范围里面,没本事把结果推到目标的边上去,一直往上加迭代次数,有的时候也就是让计算多绕几个圈罢了。
1、先确定一下目标有没有可能达到
可以先把Design Spec停掉,换成Sensitivity分析这个工具,让操纵变量从下限一点一点变到上限,去瞧一瞧目标变量会跟着在哪个范围里动,要是产品的纯度顶天了也只能到0.92,可Design Spec里头要求的是0.95,那这就不是收敛参数的事了,是工艺条件自己撑不住,Sensitivity跑出来的结果,还能看出来这俩东西是不是单调地变,要是目标值跟着操纵变量一会儿高一会儿低,或者中间冒出来好几个交点,那Design Spec就更容易晃来晃去,或者落到一个不太合适的解里头。
2、再调一调上下限和一开始的值
要是目标落进了能实现的那个范围,那就要看一看Vary变量的上下限,是不是真的把解给包住了,范围给窄了,会找不着目标,范围给得太宽呢,又有可能把模型推到根本没法跑的工况里去,搞得塔板干了、物料流量变成了零,或者设备计算直接崩掉,一开始填的那个初值也得留点神,可以先靠手动试上几次,找到一个比较靠近目标的操作点,再把那个数当成起点,这样做,一般会比直接拿默认的值更容易收敛。
3、查一查目标的表达式和容差
组分的基准搞混了,质量分率和摩尔分率给用串了,这是让Design Spec结果变得奇怪的常见源头,表达式里面还得注意单位的换算和正负号,免得实际上的目标早就满足了,可残差就是怎么也归不了零,容差设得太紧,也会整出那种“看着明明已经很近了,可它就是不收敛”的情况,工程上的计算,不用去死磕很多位小数,得结合产品的指标和模型本身的精度,去设一个合理的容差。
三、Aspen Plus复杂流程怎么提高收敛稳定性
流程里头要是同时有循环的物料、精馏塔,还有好几个Design Spec,那各层的迭代就会你影响我、我影响你,往往是一个变量刚被Design Spec调好,循环物流下一轮算完又把结果给推走了,界面上的表现就是残差在那里来回地晃。
1、把问题拆开,一个一个去启用
先让基础的流程收敛了,再把循环的物流启用了,然后把Design Spec一个一个地打开,不要一下子就把好几个还没验过的控制目标全扔进去,哪一项启用以后开始报错,问题的范围就清楚很多。
2、别对着同一个自由度重复规定
一个操作的变量,不要同时被模块自己的规格、Design Spec,还有Calculator这些东西翻来覆去地改,比方说精馏塔已经定死了回流比,就不该再让另外一个设计规定随随便便去动同一个参数,规格的个数要是超过了流程本身的自由度,模型就可能会被规定得太死,或者在几套互相打架的约束之间来回拉扯。
3、检查一下流程的计算顺序
Design Spec要依赖的那些模块,得先跑出有效的值来,操纵变量改过之后,相关下游的模块也得跟着重算,在复杂的流程里面,可以去检查一下收敛块、被撕裂的物流,还有计算的先后顺序,实在不行了,就先把循环的结构弄简单一点,然后再一点一点把完整的模型恢复回来。
总结
想要搞懂Aspen Plus Design Spec怎么配置,还有目标值不收敛了该怎么办,重点不是在多去试几套迭代的参数,而是要把目标变量、操纵变量,还有那个可行的范围给它对上,配置的时候,先把基础的模型跑起来,再去定义目标的表达式和Vary变量;不收敛的时候,可以借助Sensitivity分析,去确认目标到底有没有可能达到,同时检查上下限、初值、单位、容差,还有规格之间有没有冲突,碰到复杂的流程,就应该把设计规定一项一项地启用,先找到是在哪一层开始不稳的,再来对付具体的问题。