论文部分内容阅读
多相平衡算法通常可以分为Gibbs自有能最小化法和解方程法,其中求解状态方程的算法一般包括相稳定性判断和平衡计算两个步骤,计算过程比较复杂。本文采用一种多相平衡的状态方程一步算法,即一种通过修正各相总摩尔分数的解方程法——??因子法。该法只需要求解一次最小化问题,就可以同时给出多相平衡时存在的相数、各相的量及组成。Han和Rangaiah(1997)利用罚函数的思路构造目标函数并使用连续的线性规划法求解上述最小化问题。该算法包括大小两个循环,小循环利用线性规划法求解变量的迭代方向时,引入了人工变量,这样不可避免地涉及线性规划法中用到的基和基向量的确定、基的转换和运算,算法相对比较复杂。本文采用Marquardt法求解该最小化问题,构造如下形式的目标函数:f(w)= ()+∑hj 2(w)其中,为权重因子,τV、τI和τII分别是汽液液三相平衡中汽相、液相I和液相II的特征参数,相平衡中的等式约束条件记作h(w) = 0,并将每一条件记作hj(w)。通过合理的选取阻尼因子λ,Marquardt法既可以保证目标函数不断地下降,又可以确保一定的收敛速度,而且变量迭代方向的确定也非常简便。本文对正十六烷-水-氢气、甲苯-水-氢气、二氧化碳-二甲醚和二甲醚-水等四个体系应用不同的立方型状态方程和不同的混合规则进行了多相平衡的计算:前两个体系逸度系数采用Peng-Robinson方程计算,后两个体系采用Soave-Redlich-Kwong方程计算;前三个体系采用van der Waals单流体混合规则,最后一个体系采用GE形式混合规则。对计算结果分别绘制了多组分相图,结果表明改进的??因子法对多相平衡计算是一种比较成功和可靠的算法。