《Chemical Thermodynamics and Thermal Analysis》:Complete density-root enumeration of pressure-density isotherms via the find-and-hide strategy
ROSENDO MONROY-LOPERENA
ROMON,Paseo de los Pirules 124,04250,CDMX,墨西哥
**摘要**
本文提出了一种用于完全枚举由状态方程生成的压力-密度等温线的算法,这些状态方程提供了可评估的映射 p=p(T,ρ,x) 作为密度的函数(包括通过亥姆霍兹势的导数获得压力的亥姆霍兹能量混合模型)。该策略构建在 Find-and-Hide 框架内,且不依赖于求解器,仅需要对外部等温线进行黑盒评估,并在可能的情况下使用可选的导数信息来加速极值的定位。关键思想是利用等温线反演的一维结构:等温线极值在固定温度下确定,将允许的密度域分解为单调区间,并使用保持括号的程序搜索每个区间,以确保不会遗漏任何实数密度根。这种方法产生了一个可预测每个根评估次数的枚举工作流程,并消除了传统状态方程反演中常见的“最多三个根”的隐含假设。使用 PC-SAFT 作为具有挑战性的案例研究(最多五个实数密度根),并进一步使用 GERG-2008 类型的等摩尔氮+氩混合物示例进行了验证,该示例在固定 p=p(T,ρ,x) 时显示出七个实数密度根。针对 120 K 下的环己烷的数值实验,以及 n-烷烃和苯的额外等温线族和不对称三元混合物案例(n?C4/n?C8/n?C12;z=0.05/0.05/0.90),展示了化合物、混合物和温度依赖的根的多重性,包括在高压力下的再进入三根窗口。这些结果支持将状态方程反演视为一个枚举问题,尤其是在相平衡或稳定性计算可能对缺失的密度解敏感的情况下。
**1. 引言**
在状态方程的发展方面已经取得了相当大的进展。对于简单流体,存在许多非常成功的经验状态方程,但对于大型、复杂或高度非球形的分子,则需要更复杂的方法。因此,现代状态方程越来越多地基于改进的理论基础开发,并在准确计算液相平衡中发挥着核心作用。状态方程的发展得益于对分子间相互作用的更好理解以及系统地使用分子模拟数据;然而,持续改进混合物预测仍然是一个活跃的挑战(参见 Wei 和 Sadus [1])。
这种进展的一个实际影响是,许多现代模型会导致高度非线性的压力-密度关系,因此在固定温度和压力下计算密度成为一个非平凡的根查找问题。由于 v=1/ρ,每个允许的密度根唯一对应一个摩尔体积根;除非另有明确说明,否则“密度根”一词用于表示这两种表示。正如 Koak 等人 [2]、Lucia 和 Luo [3] 以及 Xu 等人 [4] 所指出的,高度非线性的可压缩性关系可能会产生多个实数根。Polishuk [5] 进一步报告说,当状态方程重新表述为体积多项式时,其阶数可以从五阶到二十四阶不等。因此,给定温度和压力下的实数根的确切数量通常事先是未知的,需要一种可靠的策略来计算所有允许的根而不遗漏任何根。
这个问题对于 SAFT 系列状态方程尤其相关——特别是对于 PC-SAFT [6],因为在同一热力学状态下可能存在多个密度根。Privat 等人 [7] 明确展示了,对于纯流体,PC-SAFT 可能表现出四个或五个密度根,而传统的立方方程最多只能产生三个(参见 Monroy-Loperena [8])。这些额外的根不仅仅是一个数学上的好奇对象:它们可以影响相平衡计算、稳定性分析以及物理上不一致预测的检测/拒绝。实际上,Privat 等人强调,“传统”求解器通常最多只搜索三个根,因此当存在超过三个根时可能效率低下或不安全,他们推荐能够检测超过三个简化密度根的算法。
从数值角度来看,核心难点不是一次性解决一个非线性方程,而是以最小的函数评估次数可靠地枚举每个实数根,同时确保即使在等温线的狭窄根域或接近拐点处也不会遗漏任何根。区分稳健的单根求解器和枚举策略非常重要:一旦提供了包含根的括号,保护性的括号方法(例如,保持括号的二分法/割线法/牛顿法混合 [9])就非常可靠,但它们本身并不能生成在根的数量事先未知时保证枚举所需的一组不相交的括号。已经提出了几类更广泛的策略来寻找非线性方程的所有实数根:(1) 本地牛顿类型策略(参见 Powell [10] 和 Kelley [11]),这些策略需要许多初始猜测,并可能发散或循环;多启动包装器通常用于减轻初始化的敏感性并恢复额外的解(例如,Varadhan 和 Gilbert [12]);(2) 区间分析方法(参见 Alefeld 和 Mayer [13]),这些方法可以很严格,但对于复杂的热力学模型往往难以高效实现;以及 (3) 同伦/连续方法(参见 Chen 和 Li [14]),这些方法可能很强大,但在参数变化时嵌入重复的热力学计算中可能会变得昂贵和复杂。
目前的工作解决了许多工作流程中隐含的“缺失步骤”——通过在固定 (T,p) 下的高效评估生成一维等温线的所有包含根的括号——通过将 Find-and-Hide 策略 [15] 专门化到压力-密度等温线上。这种专门化通过在固定温度下枚举等温线的极值,将允许的密度域分解为单调区间,并测试这些区间以产生一组不相交的包含根的括号来实现。一旦构建了这些括号,任何标准的保护性括号求解器都可以应用于每个区间,从而实现每个根的可预测评估次数,并且不需要密集采样或多启动策略。
PC-SAFT 最初由 Gross 和 Sadowski 开发,作为一种基于扰动的链分子 SAFT 状态方程,被选为具有挑战性的案例研究有三个原因。首先,PC-SAFT 已广泛应用于非缔合和弱极性化合物的纯组分和混合物,并且有广泛的参数集,使得数值研究可重复。其次,在某些条件下,PC-SAFT 的压力-密度反演可以产生多个实数密度解,包括最多五个密度根的情况,因此它为任何根枚举程序提供了严格的压力测试。第三,已经报道了 PC-SAFT 应用中的安全等温线公式和导数信息,使得极值定位和透明的评估计数成为可能。尽管使用 PC-SAFT 来演示工作流程,但所提出的策略仅需要对外部压力显式映射 p=p(T,ρ)(以及可选的导数)进行黑盒评估,因此可以不受限制地应用于任何压力显式的状态方程。
本文的其余部分组织如下。第 2 节总结了 Find-and-Hide 策略。第 3 节介绍了所提出的一维 Find 引擎及其关于根完整性和低评估次数的设计标准。第 4 节回顾了用于密度计算的 PC-SAFT 状态方程和等温线公式。第 5 节详细介绍了通过将 Find-and-Hide 专门化到 PC-SAFT 等温线而获得的完整密度根枚举算法。第 6 节报告了环己烷和不对称三元混合物(n?C4/n?C8/n?C12;z=0.05/0.05/0.90)的数值实验。第 7 节提出了一个外部多参数亥姆霍兹能量混合物示例(GERG-2008,等摩尔 N2+Ar),该示例展示了七个密度根,证明了该方法在超出 PC-SAFT 范围内的通用性,同时保持正文紧凑。第 8 节总结了当存在多个密度根时对稳健状态方程计算的影响。
**2. Find & Hide 策略**
本节正式介绍了 Find & Hide (F&H) 策略。首先将根查找问题表述为一个受约束的全局优化问题,并定义了整个过程中使用的优点函数和符号。然后描述了交替的查找和隐藏阶段,以及累积障碍的方式。
**2.1. 问题陈述**
考虑一个由 n 个非线性代数方程组成的系统
(1)f(x)=0,x∈Ω,
其中搜索区域是一个有界超矩形 Ω=∏i=1n[li,ui]?Rn。由于 Ω 内的不同实根可以对应于不同的稳态或分支,因此目标是枚举该盒子内的所有实数解。
一个方便的重新表述是最小化平方残差优点函数
(2)G(x)=∥f(x)∥22=∑i=1nfi(x)2
f 的每个根都是 G 的全局最小化器,且 G=0,任何全局最小化器且 G=0 都是一个根。
黑盒模型接口。F&H 不限制残差映射 f(x) 的构造方式(缩放、无量纲化、消除平凡解等)。它仅假设一旦 f 被定义,就可以作为黑盒在用户指定的范围内进行评估;算法仅通过 f(x) 或 G(x) 的评估与模型交互,而不需要导数或内部模拟器的访问。
关于根附近的平坦性的注释。基于范数的优点函数在 f 的零点处的梯度消失,因此目标在根附近趋于平坦。在当前框架中,这不会导致过早终止,因为只有当 ΘG(Θk)≤ε 时才接受候选解,且查找引擎可以不需要导数。如果需要更高的局部精度,可以在找到小残差区域后使用牛顿/拟牛顿步骤对原始残差系统进行“改进”。
**2.2. 算法概述**
F&H 交替两个阶段:
•查找阶段:使用选定的受约束的全局优化器在当前优点函数 Gk(x) 上运行,以定位一个候选最小化器 ΘΘk,使得 ΘGk(Θk)<ε。
•隐藏阶段:一旦接受一个根,就在 θθk 处叠加一个平滑的局部障碍,以防止搜索返回到相同的解,同时其他根基本不受影响。
在找到 k 个不同的根后,累积的优点具有以下形式
(3)θgk(x)=∥f(x)∥2+λ∑j=1khj(x,θj)
其中 λ?1 控制障碍的强度,hj 是以先前找到的根为中心的平滑“钟形”函数。
障碍无关的接受。一个关键的保护措施是在原始(无障碍)优点 g0(x)=∥f(x)∥2 上评估接受。这可以防止在一个根处放置的障碍在附近的根处产生假阴性:如果候选解确实满足残差方程,当 θg0(θ)≤ε 时它仍然会被接受。
**2.3. 解析器无关能力和替代“查找”引擎**
f&h 的一个独特特点是查找引擎和隐藏机制之间的解耦:任何受约束的全局优化器都可以插入查找阶段,而不改变障碍逻辑(例如,确定性分区方法如 direct [16]、区间/分支定界框架 [17] 或随机/元启发式方法如差分进化 [18];粒子群优化 [19];协方差矩阵适应 [20])。
任何理论保证(如果需要)都来自所选择的全局优化器:经过认证的确定性求解器原则上可以提供直到数值容忍度的保证,而随机引擎则提供穷尽性的经验证据。
与任何盒子中的全局搜索一样,效率会随着维度的增加而降低(维度的诅咒)。f&h 没有消除这一限制;它提供了一个通用的、轻量级的屏蔽机制,这样一旦达到一个根,就不会重复发现它。
**2.4. 隐藏阶段 - 钟形障碍**
障碍 θh(x,θ) 应满足以下要求:
(i) 在检测到的根处等于 1,
(ii) 从根处向远处平滑衰减到 0,
(iii) 保持可微分(因此可以选择性局部细化仍是可行的)。这些要求由一个 n 维高斯钟形函数满足:
(4)θθθh(x,θ)=exp(?(x?θ)tc(x?θ))
其中对称矩阵 c 控制钟形的宽度。
•各向同性障碍:所有方向上的半径 r 相同,c=ci,其中 c=(χ0.99/r)2(使用 χ0.99=2.576 将大部分质量放在半径 r 内)。
•各向异性障碍:每个坐标上的半径 ri 不同,c=diag((χ0.99/r1)2,…,(χ0.99/r1)2),当变量具有不同规模时很有用(例如,压力与组成)。
自动来自界限的各向异性。一个简单的实用规则是选择与变量范围成比例的半径,
(5)ri=α(ui?li),i=1,…,n
其中 α 是一个固定比例(例如,0.05)。这仅使用界限,不需要特定的物理知识;或者,可以将变量重新缩放到 [0,1] 并在缩放后的空间中使用各向同性半径。
接近性和重叠。如果两个根之间的距离小于选定的半径,第一个障碍可能会提高第二个根的邻域。两种缓解方法是:(i) 选择相对于变量范围的较小半径,以及 (ii) 当扫描没有找到新根时适应性地缩小 ri←ηri,然后再继续。
紧凑支持选项。可以使用紧凑支持的凸起来消除远场“边缘”,同时保持平滑的局部凸起(如果担心重叠的话)。
**2.5. 计算成本和实际缓解措施**
字面实现会在每个发现的根处累积一个障碍,使得每次 gk 的评估次数与根的数量线性增长。实际上,几个简单的措施可以将开销保持几乎恒定:仅评估最近的活跃障碍集,跳过超出距离阈值的障碍(距离裁剪),修剪可以忽略的障碍,并向量化/批处理障碍评估。 •隐藏阶段:一旦接受一个根,就在 θθk 处叠加一个平滑的局部障碍,以防止搜索返回到相同的解,同时其他根基本不受影响。 在找到 k 个不同的根后,累积的优点具有以下形式 (3)θgk(x)=∥f(x)∥2+λ∑j=1kHj(x,Θj) 其中 λ?1 控制障碍的强度,hj 是以先前找到的根为中心的平滑“钟形”函数。 障碍无关的接受。一个关键的保护措施是在原始(无障碍)优点 g0(x)=∥f(x)∥2 上评估接受。这可以防止在一个根处放置的障碍在附近的根处产生假阴性:如果候选解确实满足残差方程,当 θg0(θ)≤ε 时它仍然会被接受。 **2.3. 解析器无关能力和替代“查找”引擎** f&h 的一个独特特点是查找引擎和隐藏机制之间的解耦:任何受约束的全局优化器都可以插入查找阶段,而不改变障碍逻辑(例如,确定性分区方法如 direct [16]、区间 分支定界框架 [17] 或随机 元启发式方法如差分进化 [18];粒子群优化 [19];协方差矩阵适应 [20])。 任何理论保证(如果需要)都来自所选择的全局优化器:经过认证的确定性求解器原则上可以提供直到数值容忍度的保证,而随机引擎则提供穷尽性的经验证据。 与任何盒子中的全局搜索一样,效率会随着维度的增加而降低(维度的诅咒)。f&h 没有消除这一限制;它提供了一个通用的、轻量级的屏蔽机制,这样一旦达到一个根,就不会重复发现它。 **2.4. 隐藏阶段 - 钟形障碍** 障碍 θh(x,θ) 应满足以下要求: (i) 在检测到的根处等于 1, (ii) 从根处向远处平滑衰减到 0, (iii) 保持可微分(因此可以选择性局部细化仍是可行的)。这些要求由一个 n 维高斯钟形函数满足: (4)θθθh(x,θ)=exp(?(x?Θ)TC(x?Θ)) 其中对称矩阵 c 控制钟形的宽度。 •各向同性障碍:所有方向上的半径 r 相同,c=cI,其中 c=(χ0.99/r)2(使用 χ0.99=2.576 将大部分质量放在半径 r 内)。 •各向异性障碍:每个坐标上的半径 ri 不同,c=diag((χ0.99/r1)2,…,(χ0.99/r1)2),当变量具有不同规模时很有用(例如,压力与组成)。 自动来自界限的各向异性。一个简单的实用规则是选择与变量范围成比例的半径, (5)ri=α(ui?li),i=1,…,n 其中 α 是一个固定比例(例如,0.05)。这仅使用界限,不需要特定的物理知识;或者,可以将变量重新缩放到 [0,1] 并在缩放后的空间中使用各向同性半径。 接近性和重叠。如果两个根之间的距离小于选定的半径,第一个障碍可能会提高第二个根的邻域。两种缓解方法是:(i) 选择相对于变量范围的较小半径,以及 (ii) 当扫描没有找到新根时适应性地缩小 ri←ηri,然后再继续。 紧凑支持选项。可以使用紧凑支持的凸起来消除远场“边缘”,同时保持平滑的局部凸起(如果担心重叠的话)。 **2.5. 计算成本和实际缓解措施** 字面实现会在每个发现的根处累积一个障碍,使得每次 gk 的评估次数与根的数量线性增长。实际上,几个简单的措施可以将开销保持几乎恒定:仅评估最近的活跃障碍集,跳过超出距离阈值的障碍(距离裁剪),修剪可以忽略的障碍,并向量化>ε。
•隐藏阶段:一旦接受一个根,就在 θθk 处叠加一个平滑的局部障碍,以防止搜索返回到相同的解,同时其他根基本不受影响。
在找到 k 个不同的根后,累积的优点具有以下形式
(3)θgk(x)=∥f(x)∥2+λ∑j=1khj(x,θj)
其中 λ?1 控制障碍的强度,hj 是以先前找到的根为中心的平滑“钟形”函数。
障碍无关的接受。一个关键的保护措施是在原始(无障碍)优点 g0(x)=∥f(x)∥2 上评估接受。这可以防止在一个根处放置的障碍在附近的根处产生假阴性:如果候选解确实满足残差方程,当 θg0(θ)≤ε 时它仍然会被接受。
**2.3. 解析器无关能力和替代“查找”引擎**
f&h 的一个独特特点是查找引擎和隐藏机制之间的解耦:任何受约束的全局优化器都可以插入查找阶段,而不改变障碍逻辑(例如,确定性分区方法如 direct [16]、区间/分支定界框架 [17] 或随机/元启发式方法如差分进化 [18];粒子群优化 [19];协方差矩阵适应 [20])。
任何理论保证(如果需要)都来自所选择的全局优化器:经过认证的确定性求解器原则上可以提供直到数值容忍度的保证,而随机引擎则提供穷尽性的经验证据。
与任何盒子中的全局搜索一样,效率会随着维度的增加而降低(维度的诅咒)。f&h 没有消除这一限制;它提供了一个通用的、轻量级的屏蔽机制,这样一旦达到一个根,就不会重复发现它。
**2.4. 隐藏阶段 - 钟形障碍**
障碍 θh(x,θ) 应满足以下要求:
(i) 在检测到的根处等于 1,
(ii) 从根处向远处平滑衰减到 0,
(iii) 保持可微分(因此可以选择性局部细化仍是可行的)。这些要求由一个 n 维高斯钟形函数满足:
(4)θθθh(x,θ)=exp(?(x?θ)tc(x?θ))
其中对称矩阵 c 控制钟形的宽度。
•各向同性障碍:所有方向上的半径 r 相同,c=ci,其中 c=(χ0.99/r)2(使用 χ0.99=2.576 将大部分质量放在半径 r 内)。
•各向异性障碍:每个坐标上的半径 ri 不同,c=diag((χ0.99/r1)2,…,(χ0.99/r1)2),当变量具有不同规模时很有用(例如,压力与组成)。
自动来自界限的各向异性。一个简单的实用规则是选择与变量范围成比例的半径,
(5)ri=α(ui?li),i=1,…,n
其中 α 是一个固定比例(例如,0.05)。这仅使用界限,不需要特定的物理知识;或者,可以将变量重新缩放到 [0,1] 并在缩放后的空间中使用各向同性半径。
接近性和重叠。如果两个根之间的距离小于选定的半径,第一个障碍可能会提高第二个根的邻域。两种缓解方法是:(i) 选择相对于变量范围的较小半径,以及 (ii) 当扫描没有找到新根时适应性地缩小 ri←ηri,然后再继续。
紧凑支持选项。可以使用紧凑支持的凸起来消除远场“边缘”,同时保持平滑的局部凸起(如果担心重叠的话)。
**2.5. 计算成本和实际缓解措施**
字面实现会在每个发现的根处累积一个障碍,使得每次 gk 的评估次数与根的数量线性增长。实际上,几个简单的措施可以将开销保持几乎恒定:仅评估最近的活跃障碍集,跳过超出距离阈值的障碍(距离裁剪),修剪可以忽略的障碍,并向量化/批处理障碍评估。>验证pass(可选)在多次扫描未发现新根后,可以在G0上运行无障碍的验证pass:在Ω中采样点,同时排除已经找到的根周围的球体,从这些点开始进行简短搜索,如果发现新根,则将其添加并继续(可选地减小半径)。这可以防止由于临时的半径重叠而导致的罕见遗漏。
2.7. 与同伦/延续的互补性F&H在固定参数值下枚举盒子内的离散平衡。相比之下,延续方法会随着参数的变化追踪连通的解分支,并提供稳定性/分支结构。实际的工作流程是:(i)使用F&H发现所有平衡(包括不连通的);(ii)从每个平衡开始延续以追踪分支并检测分岔;(iii)根据需要细化参数网格。
3. 查找引擎Find & Hide (F&H)框架将障碍逻辑与查找阶段使用的搜索引擎分离:任何具有约束边界的全局优化器都可以插入而不需要修改隐藏机制。在其一般形式中,查找阶段被定义为最小化平方残差 merit 函数,随后进行一个接受测试 ΘG0(Θ)≤ε。对于当前的应用——在固定 (T,p0) 下枚举压力显式状态方程的所有密度( Packing 分数)根——问题结构是一维的。这使得它成为一个专门的查找引擎,该引擎具有确定性,对“缺失”的根非常敏感,并且比通用的超矩形划分器(例如 DIRECT)具有显著更高的评估效率,同时完全符合 F&H 的求解器无关性原则。
3.1. 密度根枚举的设计目标在固定温度 T0 下,状态方程根据一个减少的密度变量( Packing 分数)η 提供了一个等温线 p(T0,η)。在 PC-SAFT 中,η 是一个减少的 segment 密度,并且受到紧密堆积考虑的限制;实际上,采用了数值搜索域 [ηmin,ηmax]?(0,1) 以避免端点的奇异行为。因此,查找引擎必须:1. 确保覆盖整个允许的 η 域,不遗漏 p(T0,η)=p0 的交点。2. 返回所有实根(而不仅仅是机械上稳定的根),因为稳定性过滤是一个后续决策。3. 在下游使用枚举的根。在固定 (T0,p0) 下,枚举的根集 {ηk} 代表了该等温线上状态方程预测的所有候选均匀状态。在实际的热力学工作流程中,这些候选状态会经过后处理,而不是盲目接受。首先,使用等温压缩性测试(例如,要求 (?p/?ρ)T>0 或等价地 (?p/?v)T<0)来拒绝机械上不满足条件的状态,这排除了处于 spinodal 段内的解。其次,剩余的稳定/亚稳态候选状态为相稳定性和相平衡计算(例如,切线平面稳定性分析和 Tp -flash)提供不同的初始密度(或摩尔体积),从而降低了由于初始化不当而遗漏物理相关分支的风险。完全枚举因此是安全稳定性过滤的先决条件,而不是替代它。
4. 减少函数评估次数,因为每次评估 PC-SAFT 压力可能计算成本较高。5. 对于包括多个极值和具有强非线性的等温线段在内的异常情况具有鲁棒性。这些目标促使基于极值定位和单调区间括号的查找引擎的诞生,这种机制改编自一旦知道极值,就可以通过区间检查确定给定压力下的根的确切数量的逻辑。
3.2. 确定性 1D 查找引擎:极值 → 单调区间核心观察是,在 p(T0,η) 单调的任何区间内,方程 p(T0,η)=p0 至多只有一个解。因此,如果将等温线分解为单调子区间 {Ij},那么根的枚举就简化为一组独立的、有保证的 1D 解决方案——每个符合条件的区间一个。
步骤1:定位等温线的极值。极值对应于满足 (?p/?η)T0=0 的静止点。一种实用且鲁棒的方法是:(i)在粗网格上采样 η 域(密集采样;参见 Press 等人 [21]);(ii)检测相邻点之间一阶导数的符号变化;(iii)通过二分法(或其他有保障的 1D 方法)将每个检测到的括号细化为极值。这种逻辑反映了先找到极值,然后再用它们来计数和括号化根的既定三步方法。如果需要基于导数的优化,可以在存在括号后应用牛顿型更新,但括号仍然是主要的保障。
数值极值检测的考虑。实际上,极值驱动的“无遗漏根”逻辑的可靠性取决于是否忽略了浅层极值或近似平坦的区间,当 p(T0,η) 在较宽的 η 范围内曲率较小时,或者当数值舍入污染了导数估计时可能会发生这种情况。因此采取了三个保障措施。首先,只有在括号被细化到规定的宽度(或者当使用导数时,达到规定的导数容忍度)后,才接受极值,确保候选静止点不是从单一的噪声评估中推断出来的。其次,当分析得到的 (?p/?η)T0 不可用或被认为不可靠时,使用粗扫描上的压力模式测试(例如,pi?1
pi+1 或 pi?1>pi
步骤2:构建单调区间并确定 nroot。一旦知道了极值 {ηiextr},就定义每个极值处有序的压力序列和相应的 η 坐标。在每个开区间 ij=(hj,hj+1) 中都存在一个根,其端点压力跨越 p0;通过检查连续的极值压力,可以得到根的确切数量 nroot,以及包含每个根的单调区间集合 {ij}。这种基于极值的括号化是 1d 中“无遗漏根”的关键:如果每个极值都被正确括号化和细化,那么每个单调段都会被明确构建并针对 p0 进行测试。
3.3. 在每个单调区间内求解根对于步骤2中识别的每个区间 ij,定义标量残差 f(η)=p(t0,η)?p0,或等价地定义平方残差 g0(η)=f(η)2,这与 f&h merit 函数的观点一致。因为 p(t0,η) 在 ij 上是单调的,所以有保证的括号化根求解是必要的,并且不需要多次启动。两阶段求解是高效且评估效果好的:1. 二分定位(粗略):应用二分法(或 regula falsi)直到 |f(η)|/p 达到一个宽松的容忍度(例如,1-5%),提供一个安全的初始估计。2. 精细化(严格):应用快速的局部方法(牛顿/开普勒或有保障的牛顿)在几次迭代内达到最终容忍度。这种阶段分离使得评估次数可以预测:二分法提供了保证的进展和固定的最坏情况迭代次数,而细化则在接近解时实现了快速收敛。
3.4. 与 find & hide 障碍的兼容性尽管单调区间分解已经防止了 1d 中的重复发现,但该机制仍与 hide 概念兼容,并且在两种情况下非常有用:•验证扫描和自适应细化:如果执行了额外的遍历(例如,在收紧 [ηmin,ηmax] 或细化极值网格之后),可以使用高斯或紧凑支持凸起来掩盖任何辅助最小化子步骤中已经接受的根。•跨维度的统一实现:保持相同的接受规则——独立于障碍在原始 merit g0 上评估根的接受性——确保障碍不能抑制附近的真实解。当评估障碍时,适用于 f&h 的相同低开销策略(活动集窗口化、距离筛选、修剪),因此即使找到的根的数量增加,每次评估的障碍成本也基本保持不变。
3.5. 评估计数和引擎参数由于第6节中的数值研究报告了每个根所需的评估次数,查找引擎会明确跟踪评估次数,区分:•np:调用等温线压力函数 p(t0,η) 的次数;•np′(可选):如果使用分析得到的 (?p/?η)t0 来检测/细化极值,则需要进行导数评估的次数;•next:用于构建单调区间的细化极值的次数;•nroot:在 p0 处找到的根的次数。1d 查找引擎的主要可调参数(稍后通过与环己烷案例研究一起优化和报告)包括:•域界限:ηmin(小的正截止值)和 ηmax(低于 1 的上截止值)。•极值扫描分辨率:用于在细化之前检测导数符号变化的粗略子区间数量 n。•极值细化容忍度:接受 ηiextr 的括号宽度或导数容忍度。•单调性验证/浅层极值保护:每个构建区间的内部检查次数 nver(较小,例如,1-3)和可选的“平坦度”触发器(例如,最小分辨斜率阈值),用于在检测到近似平坦行为时请求局部重采样;这个验证步骤仅在需要时激活,以避免不必要的评估。•根括号容忍度:在细化之前的宽松相对误差目标(例如,1-5%)。•最终根容忍度:报告 η 时的目标相对/绝对容忍度,以及派生的压缩因子 z。本节将查找引擎建立为一个确定性的、评估效率高的 1d 专有化方案:使用极值将等温线分解为单调段,每个允许的段通过有保证的括号化和细化产生一个候选根。 resulting 1d 工作流程在表1中总结,并在第5节中为 pc-saft 实例化。
表1. 用于从压力-密度等温线完全枚举密度根的专用 find-and-hide 算法的算法概述。
算法1. 在固定 (t0,p0) 下完整枚举密度根(极值 → 单调区间 → 括号化求解)。
输入:t0,p0;允许的域 [ηmin,ηmax];等温线评估函数 p(t0,η) 和 pη(t0,η)(可选);极值扫描分辨率 nscan;极值细化容忍度 tolext;粗略根容忍度 tolroot,c;最终根容忍度 tolroot;单调性检查预算 nver。
输出:枚举的根 {(ηk,zk,neval(k))}k=1nroot,以及每个根的评估次数。
1. 极值发现(等温线属性;每个 t0 计算一次)。
1.1 在 [ηmin,ηmax] 上生成一个粗略的网格 {ηi}i=0nscan 并评估 p(t0,ηi)(以及 pη(t0,ηi),如果可用)。
1.2 通过导数符号变化(如果使用 pη)或无导数的压力模式测试来检测候选极值括号。
1.3 使用保持括号的 1d 精细化方法(对 pη 的二分法,或无导数的括号细化)将每个极值括号细化到容忍度 tolext。
1.4 对精化的极值 {ηiextr} 进行排序并存储相应的压力 {piextr=p0(t0,ηiextr)}。
2. 单调区间构建和确定含根的括号(每个查询的 p0)。
2.1. 构建有序的节点序列 h={ηmin,η1extr,…,ηnextrextr,ηmax}。
2.2. 评估端点压力 pj=p(t0,hj)。
2.3. 对于每个区间 ij=(hj,hj+1),如果 (pj?p0)(pj+1?p0)≤0,则宣布它包含根。
2.4. 可选地使用最多 nver 次的内部检查来验证单调性;如果检测到违规或近似平坦的行为,则保守地局部细化扫描并更新极值/区间。
3. 在每个包含根的区间内进行括号化根求解。
对于步骤2中识别的每个区间 ij:
3.1 粗略定位:应用二分法(或等效的保持括号的方案),直到 |p(t0,η)?p0|/max(p0,1)≤tolroot,c。
3.2 精细化(仍有保障):如果 pη 可用,则应用有保障的牛顿/开普勒步骤;否则使用有保障的割线/regula falsi 更新;始终保持括号;当 |p(t0,η)?p0|/max(p0,1)≤tolroot 时停止。
3.3 记录收敛的根 ηk,计算 zk=z(t0,η),并记录用于该根的总等温线评估次数 neval(k)(包括重用缓存的端点值)。
4. 可选验证pass(罕见遗漏保护)。
执行一个无障碍的扫描 |ηmin,ηmax|,排除 {ηk} 的小邻域;如果检测到新的含根括号,则返回步骤3对那个括号进行操作。(算法1结束。)
4. pc-saft 状态方程(根枚举视图)
4.1. 范围、符号以及为什么 pc-saft 是一个要求苛刻的等温线
统计关联流体理论(saft)状态方程系列基于统计力学,其变体主要在于参考流体的选择以及引入吸引相互作用的方式作为扰动。最初的 saft 公式是由 chapman [22,23] 根据 wertheim 的一阶热力学扰动理论 [[24], [25], [26], [27]] 发展而来的,早期的 saft 实现采用了方形井型参考吸引力(例如,chen-kreglewski [28])。后续的发展产生了几个广泛使用的分支,包括 saft-vr [29,30]、soft-saft [31,32] 和 gross 与 sadowski 的扰动链 saft(pc-saft)模型 [6]。全面的综述总结了这一领域及其应用 [[33], [34], [35], [36]]。此外,pc-saft 适用于方法评估,因为它结合了平滑的压力显式等温线映射和在低温下存在多个转折点的可能性。这种组合使得遗漏根的异常情况既可观察又可重现:随着压力沿着固定的等温线变化,预测的允许根的数量可以在一根、三根和五根之间转换,因此可以对整个多重性谱进行压力测试。因此,本节旨在定义一个单一的黑盒映射 (6)η→(p(t,η),z(t,η),这是第3节中查找引擎所需的唯一热力学接口(并在第5节中进一步细化为完整的枚举算法)。
4.2. 或多步有限差分斜率)以无导数的方式检测候选极值;随后的细化仍然保持括号的完整性。第三,在细化极值后,通过对每个构建的区间进行少量的内部检查来验证其单调性;如果检测到单调性违规或近似平坦的行为,则适应性地细化局部扫描并更新极值集。这些措施是保守设计的:它们倾向于进行额外的局部细化,而不是冒险遗漏极值。 步骤2:构建单调区间并确定 nroot。一旦知道了极值 {ηiextr},就定义每个极值处有序的压力序列和相应的 η 坐标。在每个开区间 ij=(Hj,Hj+1) 中都存在一个根,其端点压力跨越 p0;通过检查连续的极值压力,可以得到根的确切数量 nroot,以及包含每个根的单调区间集合 {ij}。这种基于极值的括号化是 1d 中“无遗漏根”的关键:如果每个极值都被正确括号化和细化,那么每个单调段都会被明确构建并针对 p0 进行测试。 3.3. 在每个单调区间内求解根对于步骤2中识别的每个区间 ij,定义标量残差 f(η)=p(T0,η)?p0,或等价地定义平方残差 g0(η)=f(η)2,这与 f&h merit 函数的观点一致。因为 p(t0,η) 在 ij 上是单调的,所以有保证的括号化根求解是必要的,并且不需要多次启动。两阶段求解是高效且评估效果好的:1. 二分定位(粗略):应用二分法(或 regula falsi)直到 |f(η)| p 达到一个宽松的容忍度(例如,1-5%),提供一个安全的初始估计。2. 精细化(严格):应用快速的局部方法(牛顿 开普勒或有保障的牛顿)在几次迭代内达到最终容忍度。这种阶段分离使得评估次数可以预测:二分法提供了保证的进展和固定的最坏情况迭代次数,而细化则在接近解时实现了快速收敛。 3.4. 与 find & hide 障碍的兼容性尽管单调区间分解已经防止了 1d 中的重复发现,但该机制仍与 hide 概念兼容,并且在两种情况下非常有用:•验证扫描和自适应细化:如果执行了额外的遍历(例如,在收紧 [ηmin,ηmax] 或细化极值网格之后),可以使用高斯或紧凑支持凸起来掩盖任何辅助最小化子步骤中已经接受的根。•跨维度的统一实现:保持相同的接受规则——独立于障碍在原始 merit g0 上评估根的接受性——确保障碍不能抑制附近的真实解。当评估障碍时,适用于 f&h 的相同低开销策略(活动集窗口化、距离筛选、修剪),因此即使找到的根的数量增加,每次评估的障碍成本也基本保持不变。 3.5. 评估计数和引擎参数由于第6节中的数值研究报告了每个根所需的评估次数,查找引擎会明确跟踪评估次数,区分:•np:调用等温线压力函数 p(t0,η) 的次数;•np′(可选):如果使用分析得到的 (?p ?η)t0 来检测 细化极值,则需要进行导数评估的次数;•next:用于构建单调区间的细化极值的次数;•nroot:在 p0 处找到的根的次数。1d 查找引擎的主要可调参数(稍后通过与环己烷案例研究一起优化和报告)包括:•域界限:ηmin(小的正截止值)和 ηmax(低于 1 的上截止值)。•极值扫描分辨率:用于在细化之前检测导数符号变化的粗略子区间数量 n。•极值细化容忍度:接受 ηiextr 的括号宽度或导数容忍度。•单调性验证 浅层极值保护:每个构建区间的内部检查次数 nver(较小,例如,1-3)和可选的“平坦度”触发器(例如,最小分辨斜率阈值),用于在检测到近似平坦行为时请求局部重采样;这个验证步骤仅在需要时激活,以避免不必要的评估。•根括号容忍度:在细化之前的宽松相对误差目标(例如,1-5%)。•最终根容忍度:报告 η 时的目标相对 绝对容忍度,以及派生的压缩因子 z。本节将查找引擎建立为一个确定性的、评估效率高的 1d 专有化方案:使用极值将等温线分解为单调段,每个允许的段通过有保证的括号化和细化产生一个候选根。 resulting 1d 工作流程在表1中总结,并在第5节中为 pc-saft 实例化。 表1. 用于从压力-密度等温线完全枚举密度根的专用 find-and-hide 算法的算法概述。 算法1. 在固定 (t0,p0) 下完整枚举密度根(极值 → 单调区间 → 括号化求解)。 输入:t0,p0;允许的域 [ηmin,ηmax];等温线评估函数 p(t0,η) 和 pη(t0,η)(可选);极值扫描分辨率 nscan;极值细化容忍度 tolext;粗略根容忍度 tolroot,c;最终根容忍度 tolroot;单调性检查预算 nver。 输出:枚举的根 {(ηk,zk,neval(k))}k=1Nroot,以及每个根的评估次数。 1. 极值发现(等温线属性;每个 t0 计算一次)。 1.1 在 [ηmin,ηmax] 上生成一个粗略的网格 {ηi}i=0Nscan 并评估 p(t0,ηi)(以及 pη(t0,ηi),如果可用)。 1.2 通过导数符号变化(如果使用 pη)或无导数的压力模式测试来检测候选极值括号。 1.3 使用保持括号的 1d 精细化方法(对 pη 的二分法,或无导数的括号细化)将每个极值括号细化到容忍度 tolext。 1.4 对精化的极值 {ηiextr} 进行排序并存储相应的压力 {piextr=p0(T0,ηiextr)}。 2. 单调区间构建和确定含根的括号(每个查询的 p0)。 2.1. 构建有序的节点序列 h={ηmin,η1extr,…,ηNextrextr,ηmax}。 2.2. 评估端点压力 pj=p(T0,Hj)。 2.3. 对于每个区间 ij=(Hj,Hj+1),如果 (pj?p0)(pj+1?p0)≤0,则宣布它包含根。 2.4. 可选地使用最多 nver 次的内部检查来验证单调性;如果检测到违规或近似平坦的行为,则保守地局部细化扫描并更新极值 区间。 3. 在每个包含根的区间内进行括号化根求解。 对于步骤2中识别的每个区间 ij: 3.1 粗略定位:应用二分法(或等效的保持括号的方案),直到 |p(t0,η)?p0| max(p0,1)≤tolroot,c。 3.2 精细化(仍有保障):如果 pη 可用,则应用有保障的牛顿 开普勒步骤;否则使用有保障的割线 regula falsi 更新;始终保持括号;当 |p(t0,η)?p0| max(p0,1)≤tolroot 时停止。 3.3 记录收敛的根 ηk,计算 zk=Z(T0,η),并记录用于该根的总等温线评估次数 neval(k)(包括重用缓存的端点值)。 4. 可选验证pass(罕见遗漏保护)。 执行一个无障碍的扫描 |ηmin,ηmax|,排除 {ηk} 的小邻域;如果检测到新的含根括号,则返回步骤3对那个括号进行操作。(算法1结束。) 4. pc-saft 状态方程(根枚举视图) 4.1. 范围、符号以及为什么 pc-saft 是一个要求苛刻的等温线 统计关联流体理论(saft)状态方程系列基于统计力学,其变体主要在于参考流体的选择以及引入吸引相互作用的方式作为扰动。最初的 saft 公式是由 chapman [22,23] 根据 wertheim 的一阶热力学扰动理论 [[24], [25], [26], [27]] 发展而来的,早期的 saft 实现采用了方形井型参考吸引力(例如,chen-kreglewski [28])。后续的发展产生了几个广泛使用的分支,包括 saft-vr [29,30]、soft-saft [31,32] 和 gross 与 sadowski 的扰动链 saft(pc-saft)模型 [6]。全面的综述总结了这一领域及其应用 [[33], [34], [35], [36]]。此外,pc-saft 适用于方法评估,因为它结合了平滑的压力显式等温线映射和在低温下存在多个转折点的可能性。这种组合使得遗漏根的异常情况既可观察又可重现:随着压力沿着固定的等温线变化,预测的允许根的数量可以在一根、三根和五根之间转换,因此可以对整个多重性谱进行压力测试。因此,本节旨在定义一个单一的黑盒映射 (6)η→(p(t,η),z(t,η),这是第3节中查找引擎所需的唯一热力学接口(并在第5节中进一步细化为完整的枚举算法)。>步骤2:构建单调区间并确定 nroot。一旦知道了极值 {ηiextr},就定义每个极值处有序的压力序列和相应的 η 坐标。在每个开区间 ij=(hj,hj+1) 中都存在一个根,其端点压力跨越 p0;通过检查连续的极值压力,可以得到根的确切数量 nroot,以及包含每个根的单调区间集合 {ij}。这种基于极值的括号化是 1d 中“无遗漏根”的关键:如果每个极值都被正确括号化和细化,那么每个单调段都会被明确构建并针对 p0 进行测试。
3.3. 在每个单调区间内求解根对于步骤2中识别的每个区间 ij,定义标量残差 f(η)=p(t0,η)?p0,或等价地定义平方残差 g0(η)=f(η)2,这与 f&h merit 函数的观点一致。因为 p(t0,η) 在 ij 上是单调的,所以有保证的括号化根求解是必要的,并且不需要多次启动。两阶段求解是高效且评估效果好的:1. 二分定位(粗略):应用二分法(或 regula falsi)直到 |f(η)|/p 达到一个宽松的容忍度(例如,1-5%),提供一个安全的初始估计。2. 精细化(严格):应用快速的局部方法(牛顿/开普勒或有保障的牛顿)在几次迭代内达到最终容忍度。这种阶段分离使得评估次数可以预测:二分法提供了保证的进展和固定的最坏情况迭代次数,而细化则在接近解时实现了快速收敛。
3.4. 与 find & hide 障碍的兼容性尽管单调区间分解已经防止了 1d 中的重复发现,但该机制仍与 hide 概念兼容,并且在两种情况下非常有用:•验证扫描和自适应细化:如果执行了额外的遍历(例如,在收紧 [ηmin,ηmax] 或细化极值网格之后),可以使用高斯或紧凑支持凸起来掩盖任何辅助最小化子步骤中已经接受的根。•跨维度的统一实现:保持相同的接受规则——独立于障碍在原始 merit g0 上评估根的接受性——确保障碍不能抑制附近的真实解。当评估障碍时,适用于 f&h 的相同低开销策略(活动集窗口化、距离筛选、修剪),因此即使找到的根的数量增加,每次评估的障碍成本也基本保持不变。
3.5. 评估计数和引擎参数由于第6节中的数值研究报告了每个根所需的评估次数,查找引擎会明确跟踪评估次数,区分:•np:调用等温线压力函数 p(t0,η) 的次数;•np′(可选):如果使用分析得到的 (?p/?η)t0 来检测/细化极值,则需要进行导数评估的次数;•next:用于构建单调区间的细化极值的次数;•nroot:在 p0 处找到的根的次数。1d 查找引擎的主要可调参数(稍后通过与环己烷案例研究一起优化和报告)包括:•域界限:ηmin(小的正截止值)和 ηmax(低于 1 的上截止值)。•极值扫描分辨率:用于在细化之前检测导数符号变化的粗略子区间数量 n。•极值细化容忍度:接受 ηiextr 的括号宽度或导数容忍度。•单调性验证/浅层极值保护:每个构建区间的内部检查次数 nver(较小,例如,1-3)和可选的“平坦度”触发器(例如,最小分辨斜率阈值),用于在检测到近似平坦行为时请求局部重采样;这个验证步骤仅在需要时激活,以避免不必要的评估。•根括号容忍度:在细化之前的宽松相对误差目标(例如,1-5%)。•最终根容忍度:报告 η 时的目标相对/绝对容忍度,以及派生的压缩因子 z。本节将查找引擎建立为一个确定性的、评估效率高的 1d 专有化方案:使用极值将等温线分解为单调段,每个允许的段通过有保证的括号化和细化产生一个候选根。 resulting 1d 工作流程在表1中总结,并在第5节中为 pc-saft 实例化。
表1. 用于从压力-密度等温线完全枚举密度根的专用 find-and-hide 算法的算法概述。
算法1. 在固定 (t0,p0) 下完整枚举密度根(极值 → 单调区间 → 括号化求解)。
输入:t0,p0;允许的域 [ηmin,ηmax];等温线评估函数 p(t0,η) 和 pη(t0,η)(可选);极值扫描分辨率 nscan;极值细化容忍度 tolext;粗略根容忍度 tolroot,c;最终根容忍度 tolroot;单调性检查预算 nver。
输出:枚举的根 {(ηk,zk,neval(k))}k=1nroot,以及每个根的评估次数。
1. 极值发现(等温线属性;每个 t0 计算一次)。
1.1 在 [ηmin,ηmax] 上生成一个粗略的网格 {ηi}i=0nscan 并评估 p(t0,ηi)(以及 pη(t0,ηi),如果可用)。
1.2 通过导数符号变化(如果使用 pη)或无导数的压力模式测试来检测候选极值括号。
1.3 使用保持括号的 1d 精细化方法(对 pη 的二分法,或无导数的括号细化)将每个极值括号细化到容忍度 tolext。
1.4 对精化的极值 {ηiextr} 进行排序并存储相应的压力 {piextr=p0(t0,ηiextr)}。
2. 单调区间构建和确定含根的括号(每个查询的 p0)。
2.1. 构建有序的节点序列 h={ηmin,η1extr,…,ηnextrextr,ηmax}。
2.2. 评估端点压力 pj=p(t0,hj)。
2.3. 对于每个区间 ij=(hj,hj+1),如果 (pj?p0)(pj+1?p0)≤0,则宣布它包含根。
2.4. 可选地使用最多 nver 次的内部检查来验证单调性;如果检测到违规或近似平坦的行为,则保守地局部细化扫描并更新极值/区间。
3. 在每个包含根的区间内进行括号化根求解。
对于步骤2中识别的每个区间 ij:
3.1 粗略定位:应用二分法(或等效的保持括号的方案),直到 |p(t0,η)?p0|/max(p0,1)≤tolroot,c。
3.2 精细化(仍有保障):如果 pη 可用,则应用有保障的牛顿/开普勒步骤;否则使用有保障的割线/regula falsi 更新;始终保持括号;当 |p(t0,η)?p0|/max(p0,1)≤tolroot 时停止。
3.3 记录收敛的根 ηk,计算 zk=z(t0,η),并记录用于该根的总等温线评估次数 neval(k)(包括重用缓存的端点值)。
4. 可选验证pass(罕见遗漏保护)。
执行一个无障碍的扫描 |ηmin,ηmax|,排除 {ηk} 的小邻域;如果检测到新的含根括号,则返回步骤3对那个括号进行操作。(算法1结束。)
4. pc-saft 状态方程(根枚举视图)
4.1. 范围、符号以及为什么 pc-saft 是一个要求苛刻的等温线
统计关联流体理论(saft)状态方程系列基于统计力学,其变体主要在于参考流体的选择以及引入吸引相互作用的方式作为扰动。最初的 saft 公式是由 chapman [22,23] 根据 wertheim 的一阶热力学扰动理论 [[24], [25], [26], [27]] 发展而来的,早期的 saft 实现采用了方形井型参考吸引力(例如,chen-kreglewski [28])。后续的发展产生了几个广泛使用的分支,包括 saft-vr [29,30]、soft-saft [31,32] 和 gross 与 sadowski 的扰动链 saft(pc-saft)模型 [6]。全面的综述总结了这一领域及其应用 [[33], [34], [35], [36]]。此外,pc-saft 适用于方法评估,因为它结合了平滑的压力显式等温线映射和在低温下存在多个转折点的可能性。这种组合使得遗漏根的异常情况既可观察又可重现:随着压力沿着固定的等温线变化,预测的允许根的数量可以在一根、三根和五根之间转换,因此可以对整个多重性谱进行压力测试。因此,本节旨在定义一个单一的黑盒映射 (6)η→(p(t,η),z(t,η),这是第3节中查找引擎所需的唯一热力学接口(并在第5节中进一步细化为完整的枚举算法)。
4.2.>纯组分PC-SAFT模型及输入参数
原始的(非关联的)PC-SAFT公式将归一化残余亥姆霍兹能量表示为一个硬球项、一个链形成项(二者共同构成硬链参考项)以及一个色散项的和。对于纯流体,压缩因子通过以下公式计算:
$$Z(T,v) = \frac{pv}{RT} = 1 + Z_{ref}(T,v) + Z_{disp}(T,v)$$
其中 $Z_{ref} = mZ_{hs} + Z_{chain}$,这里的符号定义来自Privat等人。Gross和Sadowski在扰动链SAFT构建中提出了相同的分解方式,即 $Z = Z_{id} + Z_{hc} + Z_{disp}$,且 $Z_{id} = 1$。
一个纯组分由三个参数定义:段数 $m$、段直径 $\sigma$ 和色散能 $\epsilon/kB$。温度依赖的有效段直径计算公式为:
$$d(T) = \sigma \left[1 - 0.12e^{-3\epsilon kBT}\right]$$
该公式同样由Privat等人给出,并且在原始PC-SAFT的发展过程中已被推导出来。
4.3. 降低密度(填充分数)和可接受搜索域
根枚举是在降低密度变量(填充分数)下进行的,因为它提供了一个有界的、无量纲的域,并且是PC-SAFT级数表达式中使用的自然独立变量。Gross和Sadowski定义了填充分数类型的矩密度,并指出填充分数对应于n=3矩。Privat等人强调了使用 (p,η) 表示法的实际价值,并通过一个等价的基于v的关系定义了 η,将 η∈(0,1) 映射到 v∈(∞,vmin),理论上的紧密堆积极限接近0.74048。
对于纯组分计算,将 η 视为:
$$\eta = \frac{\pi}{6}NAv^m d(T)$$
这与PC-SAFT的填充分数构建是一致的,并且使得反演过程更加明确:
$$v(\eta) = \frac{\pi}{6}NAv^m d(T)\eta$$
$$\rho(\eta) = \frac{1}{v(\eta)}$$
这种映射是“密度根”和“η根”之间的桥梁:每个可接受的η根都对应于相同的 (T,p0) 处的一个密度根。
在数值工作中,搜索在区间 [ηmin,ηmax]?(0,1) 内进行,以避免端点奇异性和浮点数问题(这些界限的选择已在第6节中进行了优化和报告)。这与第3节中已经提到的Find引擎假设是一致的。
4.4. 沿等温线的压力评估以及每个根报告的量
给定 (T,η) 之后,等温线的评估按以下步骤进行:
1. 根据 (σ,ε) 计算 d(T)。
2. 将 η 转换为 v(或使用第4.3节中的纯组分映射将 η 转换为 ρ)。
3. 使用 Privat等人报告的有序实现策略,从PC-SAFT表达式(参考项+色散项)中评估 Z(T,η)。
4. 计算 p(T,η) 为 $p = \frac{ZRT}{v}$(同样可以通过Privat等人给出的数密度形式计算)。
这个等温线映射正好满足了根枚举工作流程的需求:
- 用于根求解的残差 $f(\eta) = p(T,η) - p_0$
- 每个枚举出的根所对应的压缩因子 $Z(T,η)$
- 可选地,用于检测鲁棒极值的压力的第一和第二导数;Privat等人明确提供了这些导数,并解释了它们对于更安全数值解的重要性。
5. 提出的根枚举策略
5.1. 目标:在固定 (T0,p0) 下枚举所有密度根
本节提出了一种专门针对由显式压力状态方程(EoS)引起的一维密度根枚举问题的Find-and-Hide(F&H)框架的优化。目标是枚举每个满足 $p(T0,η) = p_0$ 的可接受降低密度(填充分数)值 η∈[ηmin,ηmax],等价于 $f(η) \equiv p(T0,η) - p_0 = 0$,并报告每个根对应的压缩因子 Z 以及枚举过程所需的EoS评估次数。
在F&H视角下,标量根查找问题被构建为最小化原始平方残差成本 $G_0(η) = f(η)^2$,这保持了求解器无关的“黑盒”接口(模型仅通过 f 或 G0 的评估来访问)。
5.2. 搜索变量和PC-SAFT等温线映射
根据PC-SAFT公式,用于根枚举的状态变量是降低密度(填充分数)η,对于纯化合物来说,它与PC-SAFT矩 ζ?(通常称为填充分数)是一致的。对于纯流体,有:
$$\eta \equiv \frac{\pi}{6}\rho^\ast m d^3(T)$$
其中 $\rho^\ast$ 是分子数密度(以一致的PC-SAFT单位),m 是段数,d(T) 是温度依赖的段直径。
PC-SAFT等温线通过压缩因子 Z 和数密度来评估;在基于等温线的根求解中使用的方便表示法为:
$$p = ZkBT \rho^\ast \times 10^{-30}$$
其中 $Z = 1 + Z_{hc} + Z_{disp}$ 是针对非关联原始PC-SAFT变体的公式。(第4节提供了 Zhc、Zdisp 和 d(T) 的显式表达式,这些表达式与为在指定 (T,p) 下实现安全数值解而提出的PC-SAFT排序一致。)
5.3. 专用于一维的FIND阶段:极值驱动的单调分解
PC-SAFT的一个核心难题是,在固定 (T0,p0) 下,可能存在超过三个密度(或摩尔体积)解;Privat等人明确指出可能会出现四个或五个解,因此需要能够处理超过三个根的算法。
为了在一维中获得“不遗漏根”的行为,寻找阶段被专门化为极值驱动的单调等温线分解:
- 步骤1 - 在 T0 处枚举并细化所有等温线极值。确定集合 $\{ \eta_{iextr} \}_{i=1}^{Nextr} \subset (0,1)$,其中 $\frac{\partial p(T0,η)}{\partial \eta} = 0$。这可以通过分析导数(在组织好的PC-SAFT解决方案中可用)或通过鲁棒的无导数括号法/细化来完成。极值集是等温线的一个属性(取决于 T0 和组分参数),因此它只需计算一次即可在该温度下查询的所有压力 p0 中重复使用。
- 步骤2 - 构建 (pn) 和 (Hn) 序列并识别包含根的区间。使用极值,定义严格有序的降低密度序列及其对应的压力,包括端点哨兵:
$$\begin{align*}
(Hn) & = \{0, \eta_{1extr}, \eta_{2extr}, \ldots, \eta_{nextr}\}, \\
(pn) & = \{0, p(T0,\eta_{1extr}), \ldots, p(T0,\eta_{nextr}), +\infty\} \\
\end{align*}$$
并定义单调区间 Ij=(Hj,Hj+1)。如果压力 p0 位于相应的连续压力水平之间(等价地,连续评估端点后有 $f(Hj)f(Hj+1) \leq 0$),则 p0 在区间 Ij 中包含一个根。这给出了根的数量 Nroot 并产生了一组不相交的包含根的括号,由于单调性,每个括号最多只包含一个根。这一步是一维情况下“寻找”阶段的类比:不必依赖于通用的全局优化器(例如DIRECT),而是利用一维等温线的结构来确定性地暴露每个可能包含解的括号,同时最小化冗余的探索。
5.4. 每个括号内的根隔离和精处理
一旦知道了不相交的包含根的区间 {Ij},每个根都使用第3.3节中描述的相同严格括号的两阶段程序来计算(粗略的二分法/试错法到宽松的容忍度,然后是到最终容忍度 ptol 的安全局部精处理)。因为每个 Ij 都是单调的,所以不需要多起点策略。
对于每个接受的根 ηk,使用相同的PC-SAFT评估来报告压缩因子 Zk(该评估也用于获取 p(T0,ηk)(因此一旦定位到根,Zk 几乎“免费”获得)。
5.5. 一维中的HIDE阶段和对罕见遗漏的验证
在一维中,单调区间分解已经防止了重复发现(每个根都与一个独特的括号相关联)。为了与一般的Find-and-Hide框架保持一致,并进行可选的验证/细化扫描,保留了第3.4节中描述的隐藏逻辑,使用 (i) 对 G0 的无障碍接受和 (ii) 可选择的无障碍验证步骤。
5.6. 评估效率和可调参数
由于每个等温线只计算一次极值并且所有查询的压力都重复使用相同的评估结果,并且每个单调括号最多只产生一个根,因此每个根的评估成本是可预测的并且接近最小的。评估计算和参数类别在第3.5节中定义,用于等温线反演的完整一维优化在表1中总结。
6. 数值实验:纯组分和混合物等温线
6.1. 情况定义和PC-SAFT参数
环己烷被选为一个代表性的非关联流体,其PC-SAFT参数可以在原始模型参数表中找到。使用的纯组分PC-SAFT参数为:m=2.5303,σ=3.8499?,ε/kB=278.11K。数值任务是枚举所有满足 $p(T,η) = p_0$ 在 T=120K 时的实数降低密度根 η∈[ηmin,ηmax],对于压力集 p0∈{0.1,0.2,1,10,100,1000,4000}bar。第3节中描述的Find引擎在所有压力下保持不变:在 T=120K 时为等温线计算一次极值,从极值构建单调括号,并使用带保护的1D求解器(保留括号)解决每个括号。这种方法与已建立的PC-SAFT“极值 → Nroot → 括号求解”逻辑一致,用于处理具有超过三个实数根的情况。
6.2. p?η平面中的等温线结构
图1显示了环己烷在宽广 η 范围内的等温线 p(120K,η)。曲线显示出多个极值,包括在非常低的 η 处的一个小幅度特征(在插图中显示)以及在中间和较高 η 处的较大幅度极值。此外,图1明确标记了代表压力水平(此处 p0=0.2bar,产生五个根)的极值 ηiextr 和交点(根);这种注释可视化了单调区间分解和每个括号中只有一个根的结果。这种形态正是固定水平线 p=p0 可以与等温线相交超过三次的配置,在某些压力范围内产生四个或五个降低密度根(Privat等人已经记录了PC-SAFT的这种行为)。
6.3. 枚举的根和压缩因子
表2报告了在每个压力下找到的所有根的完整集合,以及相应的压缩因子 Z 和每个根求解所需的压力评估次数(“pevals root”)。主要观察结果是:
- 在非常低的压力下有五个根:在 p0=0.1 和 0.2bar 处,检测到五个 η-根。其中两个根位于非常低的 η 区域(与图1中的插图特征一致),另外三个根出现在较高的 η 值处。
- 在宽广的中间范围内有三个根:在 p0=1,10,100, 和 1000bar 处,检测到三个根,它们集中在中等至较高的 η 区域。
- 在较高压力下有一个根:在 p0=4000bar 处,只在一个可接受范围内留有一个根。
表2. 在 T=120K 和选定的压力下,环己烷的枚举的降低密度根 η、相应的压缩因子 Z 和每个根的压力评估次数。
p[bar] Rootindex η Z Root p_evals
0.1 10.0 0.485 0
0.9 30.1 0.940 0
1 12.3 0.080 39
0.5 0.056 74 4
4 0.089 0
0.1 0.050 89 6
3 0.140 0.712 5
6 0.000 64 3
9 0.150 0.820 87
0.2 10.0 0.001 47
10 14.3 0.220 89
0.2 0.007 47 0.122
4 0.230 0.508 9
11 0.001 17
9 0.240 0.712 5
5 0.001 128
13 0.250 0.820 87
11 0.001 11 39
10 0.508 94
10 0.008 96 3
12 0.712 124
8 0.006 40
3 0.391 10
13 0.820 87 10
10 0.005 55
6 391 10
10 0.926 80
0.089 56 9
3 10 10.207 69
3 10 10.512 26
20 0.064 40
4 239 10
3 0.820 88 40
0.055 55
6 839 10
0 10.512 49
8 0.890 0
4 639 10
0 20.711 40
20 0.641 11
9 391 10
0 0.302 10
6.4 977 30
3 0.822 25
5 547 20
3 940 0
0 10.825 77
22 0.095 42
0 394 0
10 0.825 77
22 0.095 42
3 0.942 0
10 0.555 93
3 0 10
报告的 Z 值表明根跨越了明显不同的压缩区域。例如,在 0.1bar 时,最小的 η 根的 Z 接近于 0.94(类似气体的行为),而较高 η 的根对应于非常小的 Z 值(在相同压力下 pv/RT 非常小),反映了等温线的非平凡的多分支反演。
注(稳定性过滤)。本节报告了数值 η 范围内的所有实数根。如果需要,可以在枚举后丢弃违反机械稳定性的根(?p/?v)T>0的根,这与“首先枚举,然后过滤”的建议一致,当存在超过三个根时。
6.4. 评估次数和鲁棒性
表2还表明,所提出的程序在各个压力下的每次根的评估成本几乎是恒定的:
- 大多数根在括号求解阶段需要39次压力评估。
- 在 0.1 和 0.2bar 处的最低 η 根需要33次评估,而第二个低 η 根需要40次评估,这反映了插图特征相对于宽范围的 high-η 交点的更紧密曲率/条件。
这种行为与第3节中陈述的设计意图一致:一旦识别出极值,每个符合条件的单调区间最多包含一个根,因此求解过程简化为可预测的括号收缩次数加上一个短暂的精处理阶段。
为了将这些计数放在上下文中,两种常用的替代方法是密集采样和多起点牛顿型反演。在密集采样中,M个填充分数点的网格需要在每个压力水平上对 p(T0,η) 进行 M 次评估,然后进行任何局部精处理,“不遗漏根”要求网格能够解决最狭窄的等温线特征。
对于具有局部低 η 结构的等温线(如图1所示),这一要求可能会强制在 [ηmin,ηmax] 上使用非常细的步此外,温度变化可以诱导出多根窗口,这进一步证明了即使在固定化学系统中,也不能假设密度反演最多只能产生三个根。6.6 对“无遗漏根”求解器的意义环己烷实验证实,即使在单组分情况下,PC-SAFT也能生成压力-密度等温线,在低压下这些等温线的反演会产生五个不同的降低密度根。这验证了需要采用不假设最多三个解的枚举策略,并激发了将等温线反演视为一个明确的根枚举问题,而不是单一解的非线性求解问题,这与之前关于PC-SAFT“不安全”区域的讨论以及Find-and-Hide的更广泛的求解器无关哲学是一致的。7. 在GERG型多参数EOS(等摩尔N2+Ar)中枚举密度根7.1. 简要介绍GERG-2008(压力在密度反演中是隐式的)GERG型混合物模型明确地用密度ρ、温度T和组成x表示亥姆霍兹自由能a(T,ρ,x)(通常通过无量纲形式αH=a/(RT))。压力是通过αH对减少变量的导数获得的,因此在固定(T,p,x)的情况下,必须通过求解隐式非线性方程p(T,p,x)?p0=0来计算密度。当等温线是非单调的时候,可能存在多个实数密度根。7.2. 具有七个密度根的测试案例(等摩尔N2+Ar)Bell和Alpert报告了一个具有挑战性的低压等温线,该等温线适用于T=100K时的等摩尔氮气+氩气混合物,在GERG-2008型亥姆霍兹公式中生成。在p0=100Pa时,等温线与p=p0线相交七次,即在相同的(T,ρ,x)状态下存在七个不同的密度解。这个案例提供了一个严格的便携性测试,因为该模型不是立方或其他SAFT压力形式;尽管如此,它仍然提供了一个可以作为黑盒评估的一维映射p=p(T,ρ,x),因此相同的极值→单调区间→区间求解逻辑可以不经修改地应用[37,38]。7.3. 用于N2?Ar对的减少参数N2?Ar对的减少函数参数为βijT=0.999442,γijT=0.989311,βijv=1.006697,γijv=1.001549。使用氮气的临界常数Tc=126.192K,ρc=11.1839moldm?3和氩气的临界常数Tc=150.687K,ρc=13.4074moldm?3,二次减少函数得出(对于xN2=xAr=0.5)Tr=137.43108976K和ρr=12202.514061molm?3。定义减少密度δ=ρ/ρr,其横坐标取图5中的δ1/3 [37]。7.4. 枚举的根表3报告了在T=100K和p0=100Pa时的七个密度根。对于质量-密度列,使用了ρmass=ρM=0.0339807kgmol?1(等摩尔平均)。图5展示了这七个交点。表3. 在T=100K和p0=100Pa时,等摩尔N2+Ar(GERG-2008)的计算密度根。kρ(mol·m?3)ρ(mol·dm?3)δ1/3δρ(kg·m?3)*10.12027482930.00012027480.024539.855·10-060.0040924454.8683744.4548680.715290.36588151.3636661.4174436.6614170.817660.54599226.33412673.9917712.673991.012481.03842430.76519152.9911119.152991.160261.56953650.71621405.7854221.405791.204781.75427727.52728434.0228828.434021.323872.33115965.878. 结论为状态方程生成的压力-密度等温线完整枚举密度根,开发了Find-and-Hide策略的一个专门化版本,包括纯液体和混合物。所提出的方法保留了Find-and-Hide的黑盒精神,同时利用了等温线的一维结构:在固定温度下确定极值,将可接受的η域分解为单调区间,并通过保持区间的程序解决每个区间。这提供了一种确定性的枚举工作流程,每个根的评估次数是可预测的,而且至关重要的是,避免了在低温区域对PC-SAFT不安全的“最多三个根”的隐含假设,在这些区域可能会出现四个或五个摩尔体积(密度)根。在T=120K的环己烷案例研究中,证实了枚举而不是单根反演的实际需求。等温线显示出多个极值,包括一个低η特征(图1),并且反演在足够低的压力下产生了五个不同的降低密度根,在一个宽广的中间压力范围内有三个根,在高压下一个根(表2)。这些结果表明,即使对于单组分、不缔合的液体,等温线结构也可以生成多个无法仅从压力水平预先推断出来的解。不同化合物的更广泛行为比简单的“高分子量意味着五个根”的说法更为复杂。在T=120K时(图2),正辛烷、正癸烷和正十二烷显示出预期的趋势:在低压下有五个根,在中间压力下有三个根,在高压下一个根。相比之下,正丁烷和正己烷显示出多根的重复模式:在低压下有三个根,在中间压力下一个根窗口,在稍高的压力下又有三个根,最终在非常高的压力下一个根。这种非单调序列强调了根的多重性不仅取决于分子大小,还取决于详细的等温线拓扑(极值的数量和位置),因此不能依靠基于压力范围或“典型”立方状态方程的启发式方法来保证完整性。下载:下载高分辨率图像(309KB)下载:下载全尺寸图像图2. 在T=120K时,选定n-烷烃(n?C4, n?C6, n?C8, n?C10, n?C12)的PC-SAFT p?η等温线,突出显示了密度根的数量和压力范围随分子量的变化(包括重复的多重性)。苯也表现出类似的对热力学条件的强依赖性(图3)。在低温(100和125K)下,低压下有五个根,中间压力下有三个根,在高压下一个根。150K的等温线再次显示出重复的多重性(在低压下有三个根,在中等压力下有一个根,在7000-8000巴的高压带有三个根,然后在更高压力下有一个根)。在175和200K时,行为简化为在低压下有三个根,在中等压力以上有一个根。图4将这些观察扩展到纯化合物之外。对于整体组成为(0.05,0.05,0.90)的高度不对称的三元混合物n?C4/n?C8/n?C12,PC-SAFT压力-密度等温线再次显示出多个极值,这意味着根据温度和压力,压力区域可能有五个、三个和一个实数密度根。这证实了多根结构不仅限于单组分等温线,而且当涉及混合物时,可靠的热力学工作流程应将状态方程反演视为一个完整的枚举任务,因为遗漏的根可能会影响平衡或稳定性决策。这些纯液体和混合物的模式加强了Privat等人强调的观点:当PC-SAFT(及相关SAFT类型模型)产生超过三个密度根时,除非它们明确检测到所有解,否则经典求解算法可能效率低下或不安全。下载:下载高分辨率图像(388KB)下载:下载全尺寸图像图3. 在T=100, 125, 150, 175, 和200K时,苯的PC-SAFT p?η等温线,显示了根的多重性随温度的变化以及在升高压力下的重复三个根窗口。下载:下载高分辨率图像(309KB)下载:下载全尺寸图像图4. 在T=100, 125, 150, 175, 和200K时,对于z=(0.05,0.05,0.90)的不对称三元混合物(n?C4/n?C8/n?C12),PC-SAFT p?η等温线显示了1-, 3-, 和5-根的多重性以及可能的重复多根窗口。下载:下载高分辨率图像(203KB)下载:下载全尺寸图像图5. 在T=100K时,等摩尔N2+Ar的GERG-2008密度反演。等温线相对于δ1/3绘制,其中δ=ρ/ρr。红色标记表示与目标压力线相交的七个实数密度根。插图在压力尺度上显示了相同的交点,以突出七个交叉点。第7节中的GERG-2008型等摩尔N2+Ar混合物案例展示了在固定(T,ρ,x)下有七个密度根,进一步证明了其超越SAFT类型压力模型的便携性,只需要可评估的p(T,ρ,x)调用。所提出的基于Find-and-Hide的枚举工作流程提供了一种实际的方法来首先获得所有密度根;然后可以通过(i)通过等温压缩性标准排除机械不稳定的候选者,(ii)使用剩余的候选者作为稳定性测试和Tp-flash计算的不同初始化,以及(iii)在预期为单相时通过吉布斯能量(或化学势)比较选择物理稳定的分支来直接将这些根整合到标准热力学工作流程中。CRediT作者贡献声明Rosendo Monroy-Loperena:撰写——审阅与编辑,撰写——原始草稿,验证,项目管理,方法论,调查,形式分析,概念化。