《用于大规模并行储层仿真的千兆单元的线性求解方法和装置.pdf》由会员分享,可在线阅读,更多相关《用于大规模并行储层仿真的千兆单元的线性求解方法和装置.pdf(29页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104136942 A (43)申请公布日 2014.11.05 CN 104136942 A (21)申请号 201380008956.X (22)申请日 2013.02.14 61/598,633 2012.02.14 US G01V 99/00(2006.01) (71)申请人 沙特阿拉伯石油公司 地址 沙特阿拉伯宰赫兰 (72)发明人 拉里S冯 (74)专利代理机构 北京天昊联合知识产权代理 有限公司 11112 代理人 陈源 顾丽波 (54) 发明名称 用于大规模并行储层仿真的千兆单元的线性 求解方法和装置 (57) 摘要 对储层数据应用线性求解方法, 以采。
2、用结构 化网格或非结构化网格以最低限度粗化的方式对 由巨型油田的高分辨率储层仿真得到的大方程组 进行求解。可以将精确仿真结果所需的分辨率下 的全地质结构复杂度和不连续性考虑在内。提供 了一种通用的非结构化方法, 使得可以对多分支 井附近的非常复杂的流动几何结构进行建模。 (30)优先权数据 (85)PCT国际申请进入国家阶段日 2014.08.11 (86)PCT国际申请的申请数据 PCT/US2013/026019 2013.02.14 (87)PCT国际申请的公布数据 WO2013/123108 EN 2013.08.22 (51)Int.Cl. 权利要求书 4 页 说明书 16 页 附图。
3、 8 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书4页 说明书16页 附图8页 (10)申请公布号 CN 104136942 A CN 104136942 A 1/4 页 2 1. 在计算机实施的利用储层仿真器对地下储层的流体特性的仿真中, 所述流体特性取 决于流体流动、 物料平衡和压力 - 体积 - 温度关系, 所述储层被划分为多个子域, 每个子域 代表了所述储层的包含多相多成分流体的有限体积并且被组织成一组具有流体相关数据 的网格单元, 所述储层仿真在由至少一个主节点和多个处理器节点形成的集群计算机中执 行, 其中对每个处理器节点分配所划分的储层的一个子域, 。
4、一种计算机实施方法通过牛顿 迭代对网格单元的关注流体特性参数进行仿真, 所述计算机实施方法包括步骤 : 将每个储层子域的数据排列成雅可比矩阵 A, 所述雅可比矩阵 A 由以下部分组成 : 矩阵 P, 其由所述子域的块对角线和与所述块对角线相邻的非零数据块组成 ; 矩阵 E, 其由未包 含在所述块对角矩阵 P 中的非零数据块组成, 所述矩阵 E 由所述子域内的内部网格块的矩 阵 E 和具有所述储层中的相邻子域的网格单元的边界网格单元块的矩阵 E组成 ; 针对每个子域的所述网格块在所分配的处理器节点中采用为所述子域选择的局部预 条件子来执行所述流体特性的并行近似求解 ; 基于求得的并行近似解来更新。
5、所述储层的所述雅可比矩阵的全系统残差 ; 根据全局约化空间矩阵将所述全系统残差限制在全局约化空间中 ; 采用全局约化空间预条件子来执行对所述全系统残差的并行近似求解 ; 在所分配的处理器节点中, 由每个子域的并行近似解和全系统残差的并行近似解来形 成组合近似解的更新, 以形成解向量 ; 采用所述解向量更新所述全系统残差 ; 对所述全系统应用迭代求解器以获得所述储层的所述网格单元的每个成分的流体物 料平衡的测量值 ; 对通过应用所述迭代求解器获得的每个成分的流体物料平衡的测量值进行检验, 以确 定是否实现收敛 ; 以及 如果未实现收敛, 则返回至执行并行近似求解的步骤 ; 或者 如果实现了收敛,。
6、 则返回至所述储层仿真器。 2. 如权利要求 1 所述的计算机实施方法, 其中执行并行近似求解的步骤得到子域边界 残差, 并且还包括步骤 : 将所述子域边界残差限制在全局约化空间中。 3. 如权利要求 1 所述的计算机实施方法, 其中对所述雅可比矩阵 A 中的数据执行并行 近似求解的步骤包括移除所述矩阵 E 的数据的步骤。 4. 如权利要求 1 所述的计算机实施方法, 其中更新所述全系统残差的步骤包括针对所 述子域执行所述雅可比矩阵 A 和所述局部解向量 v 的矩阵向量相乘的步骤。 5. 如权利要求 4 所述的计算机实施方法, 其中针对子域执行矩阵向量相乘的步骤产生 所述储层中的相邻子域的边界。
7、网格单元块的残差。 6. 如权利要求 5 所述的计算机实施方法, 还包括将边界网格单元块的残差从所述子域 的处理器传递至相邻子域的处理器的步骤。 7. 如权利要求 1 所述的计算机实施方法, 其中用于对全系统残差执行并行近似求解的 步骤的所述全局约化空间预条件子为全局约化空间矩阵所述全局约化空间矩阵由包 括对角块的矩阵和由矩阵的其他块组成的矩阵所组成。 权 利 要 求 书 CN 104136942 A 2 2/4 页 3 8. 在利用储层仿真器对地下储层的流体特性进行仿真的数据处理系统中, 所述数据处 理系统包括由至少一个主节点和多个处理器节点形成的集群计算机, 所述流体特性取决于 流体流动、。
8、 物料平衡和压力 - 体积 - 温度关系, 所述储层被划分为多个子域, 每个子域代表 了所述储层的包含多相多成分流体的有限体积并且被组织成一组具有流体相关数据的网 格单元, 对每个处理器节点分配所划分的储层的一个子域, 所述集群计算机通过牛顿迭代 对网格单元的关注流体特性参数进行仿真, 所述数据处理系统还包括 : 处理器, 其执行将每个储层子域的数据排列成牛顿矩阵A的步骤, 所述牛顿矩阵A由以 下部分组成 : 矩阵 P, 其由所述子域的块对角线和与所述块对角线相邻的非零数据块组成 ; 矩阵 E, 其由未包含在所述块对角线矩阵 P 中的非零数据块组成, 所述矩阵 E 由所述子域内 的内部网格块的。
9、矩阵 E 和具有所述储层中的相邻子域的网格单元的边界网格单元块的矩 阵 E组成 ; 所述处理器节点, 其包括执行以下步骤的处理器 : 针对每个子域的所述网格块在所分配的处理器节点中采用为所述子域选择的局部预 条件子来执行对所述流体特性的并行近似求解 ; 基于求得的并行近似解来更新所述储层的所述雅可比矩阵的全系统残差 ; 根据全局约化空间矩阵将所述全系统残差限制在全局约化空间中 ; 采用全局约化空间预条件子执行对所述全系统残差的并行近似求解 ; 在所述分配的处理器节点中, 由每个子域的并行近似解和全系统残差的并行近似解来 形成组合近似解的更新, 以形成解向量 ; 采用所述解向量来更新所述全系统残。
10、差 ; 对所述全系统应用迭代求解器以获得所述储层的所述网格单元的流体特性的测量 值 ; 对通过应用所述迭代求解器获得的流体特性的测量值进行检验, 以确定是否实现收 敛 ; 以及 如果未实现收敛成, 则返回至执行并行近似求解的步骤 ; 或 如果实现了收敛, 则返回至所述储层仿真器。 9. 如权利要求 8 所述的数据处理系统, 其中所述处理器节点中的处理器在执行并行近 似求解的步骤中得到子域边界残差, 并且还执行以下步骤 : 将所述子域边界残差限制在全局约化空间中。 10. 如权利要求 8 所述的数据处理系统, 其中所述处理器节点中的处理器在对所述牛 顿矩阵 A 中的数据执行并行近似求解的步骤中还。
11、执行移除所述矩阵 E 的数据的步骤。 11. 如权利要求 8 所述的数据处理系统, 其中所述处理器节点中的处理器在更新所述 全系统残差的步骤中对所述子域执行所述牛顿矩阵 A 的矩阵向量相乘的步骤。 12. 如权利要求 11 所述的数据处理系统, 其中所述处理器节点中的处理器在对所述子 域执行矩阵向量相乘的步骤中产生所述储层中的相邻子域的边界网格单元块的残差。 13. 如权利要求 12 所述的数据处理系统, 还包括所述处理器节点中的将边界网格单元 块的残差从所述子域的处理器节点传递至相邻子域的处理器节点的处理器。 14. 如权利要求 8 所述的数据处理系统, 其中用于所述处理器节点执行全系统残差。
12、的 并行近似求解的所述全局约化空间预条件子为全局约化空间矩阵所述全局约化空间矩 权 利 要 求 书 CN 104136942 A 3 3/4 页 4 阵由包括对角块的矩阵和由矩阵的其他块组成的矩阵 所组成。 15. 一种具有存储在非临时性计算机可读介质中的计算机可操作指令的数据存储装 置, 所述计算机可操作指令用于使数据处理系统利用储层仿真器对地下储层的流体特性进 行仿真, 所述流体特性取决于流体流动、 物料平衡和压力 - 体积 - 温度关系, 所述储层被划 分为多个子域, 每个子域代表了所述储层的包含多相多成分流体的有限体积并且被组织成 一组具有流体相关数据的网格单元, 所述数据处理系统包括。
13、集群计算机, 所述集群计算机 由至少一个主节点和多个处理器节点形成, 对每个处理器节点分配所划分的储层的一个子 域, 所述数据处理系统还通过牛顿迭代对网格单元的关注流体特性参数进行仿真, 所述数 据存储装置包括用于使所述数据处理系统执行以下步骤的指令 : 将每个储层子域的数据排列成牛顿矩阵A, 所述牛顿矩阵A由以下部分组成 : 矩阵P, 其 由所述子域的块对角线和与所述块对角线相邻的非零数据块组成 ; 矩阵 E, 其由未包含在 所述块对角矩阵 P 中的非零数据块组成, 所述矩阵 E 由所述子域内的内部网格块的矩阵 E 和具有所述储层中的相邻子域的网格单元的边界网格单元块的矩阵 E组成 ; 针对。
14、每个子域的所述网格块在所分配的处理器节点中采用为所述子域选择的局部预 条件子来执行所述流体特性的并行近似求解 ; 基于求得的并行近似解来更新所述储层的所述雅可比矩阵的全系统残差 ; 根据全局约化空间矩阵将所述全系统残差限制在全局约化空间中 ; 采用全局约化空间预条件子来执行对所述全系统残差的并行近似求解 ; 在所分配的处理器节点中, 由每个所述子域的并行近似解和全系统残差的并行近似解 来形成组合近似解的更新, 以形成解向量 ; 采用所述解向量更新所述全系统残差 ; 对所述全系统应用迭代求解器以获得所述储层的所述网格单元的所述流体特性的测 量值 ; 对通过应用所述迭代求解器获得的所述流体特性的测。
15、量值进行检验以确定是否实现 收敛 ; 以及 如果未实现收敛, 则返回至执行并行近似求解的步骤 ; 或者 如果实现了收敛, 则返回至所述储层仿真器。 16. 如权利要求 15 所述的数据存储装置, 其中所述用于执行并行近似求解的指令得到 子域边界残差, 并且还包括使数据处理系统执行以下步骤的指令 : 将所述子域边界残差限制在全局约化空间中。 17. 如权利要求 15 所述的数据存储装置, 其中所述用于对所述雅可比矩阵 A 中的数据 执行并行近似求解的指令包括使所述数据处理系统执行移除所述矩阵 E 的数据的步骤的 指令。 18. 如权利要求 15 所述的数据存储装置, 其中用于执行更新所述全系统残。
16、差的步骤的 指令包括使所述数据处理系统执行对所述子域的所述雅可比矩阵 A 的矩阵向量相乘的步 骤的指令。 19. 如权利要求 18 所述的数据存储装置, 其中所述用于执行对子域的矩阵向量相乘的 步骤的指令产生所述储层中相邻子域的边界网格单元块的残差。 20. 如权利要求 19 所述的数据存储装置, 还包括使所述数据处理系统执行将所述边界 权 利 要 求 书 CN 104136942 A 4 4/4 页 5 网格单元块的残差从所述子域的处理器传递至相邻子域的处理器的步骤的指令。 21. 如权利要求 15 所述的数据存储装置, 其中所述数据处理系统在用于执行对全系统 残差执行并行近似求解的步骤的指。
17、令下进行操作所使用的所述全局约化空间预条件子为 全局约化空间矩阵所述全局约化空间矩阵由包括块对角线的矩阵和由矩阵的其 他块组成的矩阵所组成。 权 利 要 求 书 CN 104136942 A 5 1/16 页 6 用于大规模并行储层仿真的千兆单元的线性求解方法和装 置 0001 0002 0003 0004 相关申请的交叉引用 0005 本申请要求于 2012 年 2 月 14 日提交的美国临时申请 No.61/598,633 的优先权。 为了美国专利实践的目的, 该临时申请的内容通过引用整体合并于本申请。 技术领域 0006 本发明涉及被称为巨型储层的计算机仿真。 背景技术 0007 在石油。
18、和天然气产业中, 大的地下油气储层的开发通常需要建立计算机仿真模 型。这些地下油气储层通常为复杂的岩层, 其包含以两种或多种流体相存在的石油流体混 合物和水的形式的流体。在生产过程中, 通过被钻入这些岩层并且在这些岩层中完成的井 来生产石油混合物。有时, 诸如水和 / 或气体之类的流体也被注入进这些岩层以提高石油 流体的采收率。 石油和天然气公司开始依靠储层仿真来作为提高它们开采石油储层的能力 的重要工具。 0008 储层仿真属于一般的多孔介质中的流体仿真的领域。但是, 储层仿真通常涉及处 于高压和高温下的地下地质构造中的多种油气成分和多个流体相。 这些仿真器必须将这些 油气流体和所包含的地下。
19、水的化学相行为考虑在内。 0009 仿真模型包含描述了岩层和井的具体几何结构的数据、 流体和 岩石性质数据、 以 及与所关注的油气田中的特定储层相关的生产和注入历史。通过仿真器 ( 被称为储层仿真 器 ) 形成仿真模型, 该仿真器为一系列在数据处理系统上运行的计算机程序。运行这些模 型的储层仿真器为计算机实施的数值方法、 或基础数学模型的编码算法和数据构建。反映 这些油气储层中流体运动的物理特性的数学模型为非线性偏微分方程组, 该非线性偏微分 方程组描述了 : 在这些储层中由流体生产和 / 或注入引起的瞬态多相、 多成分流体流动和 物料平衡行为, 以及储层流体的压力 - 体积 - 温度 (PV。
20、T) 关系。 0010 储层仿真器通过将体积细分为被称为网格块的连续单元以对地下储层以及所包 括的周围的多孔岩层内的多相多成分流体流动和物料平衡进行仿真。网格块是应用基础 数学模型的基本有限体积。基于仿真所需分辨率和所关注的储层的尺寸来改变网格块的 数量。 对于大储层, 例如在业内被称为巨型储层的类型, 其可以具有数十亿桶原始原油地质 储量 (original oil-in-place, OOIP), 因此其网格块的数量可以为数亿到超过十亿的数量 级, 从而具有足够的分辨率来反映储层内的流体动态、 地层岩石孔隙度和渗透率非均质性、 以及许多其它地质和沉积的复杂性。这种尺寸的储层的仿真可以被称为。
21、 “千兆单元储层仿 真” 。 说 明 书 CN 104136942 A 6 2/16 页 7 0011 根据储层分层的沉积历史和随后对其塑形的地质或侵蚀过程, 岩石分层 的几何结构和由此对网格单元的描述将会非常复杂。图 1 为典型的采用角点几何 (corner-point-geometry, CPG) 描述的结构化网格 G 的示意图。对网格单元的几何描述通 常包含诸如断层和裂缝、 尖灭 (pinch-out) 和页岩壁垒等不连续性。这些不连续性导致即 使对于采用结构化网格的储层仿真模型也需要非结构化单元连接, 例如如图 1 中所示。这 些不规则被称为非相邻连接。 0012 地质复杂性是使储层仿。
22、真采用可以更精确地表示流动几何特性的非结构化单元 连接的一个促进因素。图 2A 为具有多分支井 20( 分别在储层中的各自位置处被指出 ) 的 关注储层的被称为非结构化 PEBI 网格 U 的示例的一部分的显示。图 2B 为图 2A 中由参考 数字 22 指出的部分的放大视图。由图 2B 中可以看出, 非结构化网格 U 中的 多分支井 20 周围的网格单元的离散化遵循局部流动几何特性, 而不是如图 1 的结构化网格 G 的情况那 样结构化的和直线的。 0013 由于如今所钻的典型的井为战略性地布置为使储层接触面和油气采收率最大化 的水平井或多分支井, 因此这种复杂的井几何结构也是另一个促进因素。
23、。诸如图 2A 和 2B 中的网格之类的在井附近遵循局部流动方向的网格提供更好的数值精度。 现代储层仿真器 要求求解方法能够解决不规则的单元间连接。 从而导致对解决包含一般非结构化矩阵的稀 疏线性系统的需求。 0014 精确的井周边流动建模和交叉流动的建模是现代储层仿真的另一个重要方面。 所 采用的求解器必须包括储层系统的全隐全耦合 (fully-implicit fully-coupled) 井建模 以使得仿真是精确的和鲁棒的(robust)。 全耦合式求解在大量并行计算的环境下还必须是 快速和可扩展的。 0015 多相多成分方程组的瞬态解涉及从储层的初始状态开始按照时间步长序列进行 的质量。
24、和能量守恒的演变。对于每个时间步长, 每个有限体积的非线性离散方程组均采用 公知的广义牛顿法来进行线性化。成分 i 的一般组分守恒方程为 : 0016 0017 其中 0018 0019 如果忽略弥散、 化学反应和吸收, 该组分方程简单为 : 0020 0021 由于多孔介质的孔隙必定填充有流体, 因此孔体积必定等于总的流体体积。这可 以表达为 : 0022 0023 其中孔体积 V仅为压力的函数, 描述为 : 说 明 书 CN 104136942 A 7 3/16 页 8 0024 0025 压力和总摩尔数为主要变量。 为了方程组的封闭性(closure), 其他采用的方程如 下 : 002。
25、6 对每个相的摩尔分数的约束条件 : 0027 对每种成分的总摩尔数的约束条件 : 0028 对流体饱和度的约束条件 : 0029 其中 : 0030 0031 并且 0032 0033 通过达西定律 (Darcy s Law) 描述相速度 : 0034 0035 其中 K 为渗透率张量, 定义为 : 0036 上述方程中的符号的含义如下 : 0037 说 明 书 CN 104136942 A 8 4/16 页 9 0038 0039 0040 在业内, 这被称为牛顿迭代或非线性迭代。 在每次牛顿迭代中, 线性方程组被构造 为采用被称为雅可比矩阵的矩阵和被称为残差的右侧向量来对系统主要变量的变。
26、化进行 求解。 0041 现今用于求解线性方程组的行业惯例是通过预条件迭代 (preconditioned iterative) 方法。该迭代算法可以为以下三种形式中的一种 : 一种称为 ORTHOMIN ; 第二种称为 GMRES ; 或第三种称 为 BICGSTAB 方法。对于鲁棒性, 所使用的预条件子 (preconditioner)( 而不是迭代器的选择 ) 已更加重要。在储层仿真行业中采用的典型的 最新技术的预条件子可以为一级预条件子, 例如嵌套分解 (nested factorization, NF) 方 法、 或不完全 LU 分解 (ILU) 方法的变形。这些均广泛应用在现今的商。
27、用仿真器中。 说 明 书 CN 104136942 A 9 5/16 页 10 0042 较新的实践包括采用多级预条件处理 (multi-stage preconditioning)。储层仿 真中的控制方程的本质为抛物线和双曲面的混合。对于方程组的抛物线部分的处理, 如果 原始问题的压力成分首先通过被称为约束压力残差 (CPR) 的算法从整个方程组中解耦, 那 么多级代数多重网格 (AMG) 或几何多重网格 (GMG) 可以非常有效。近似压力问题可以有效 地通过多级方法 ( 例如 AMG 或 GMG) 来处理。残差的剩余双曲面成分可以采用合适并且成 本更低的一级预条件子来容易地处理。 这实际上。
28、是一种在本领域内公知的被称为 “分治” 预 条件处理策略。但是, 到目前所知, GMG 多级方法不能处理非相邻连接。因此, AMG 方法是通 常用于解决现实仿真问题的通用多级方法。 0043 在并行计算中计算处理算法的效率的度量为其可扩展性 (scalability)。如果一 种方法在具有单个 CPU 的计算机上解决一个计算问题需要一小时, 而如果将该工作准确地 划分并分配给两个 CPU, 解决同一问题的时间是 0.5 小时, 并且使用四个 CPU 解决同一问题 的时间是 0.25 小时, 并可以此类推, 那么该方法是完全可扩展的、 或是具有 100的并行效 率。即, 没有更好的并行化了。完全。
29、可扩展方法会是理想的情况。现实中, 许多原因可以导 致实际系统的求解时间远长于该理想的情况。 0044 以上描述的实践或策略很好地适用于利用单个 CPU 的单核进行串行计算、 以及采 用数十个 CPU 核进行小规模并行计算。但是, 当处理数量增加时, 它们会遭受并行可扩展性 的严重损失。这是因为上述嵌套分解 (NF) 或不完全 LU 分解 (ILU) 具有大量的不容易实现 并行化的递归成分。此外, 诸如代数多重网格 (AMG) 之类的多级方法会在粗化的网格级的 聚合和平滑中引发显著的通信开销, 从而降低并行可扩展性。 0045 储层和油 / 气田的仿真模型变得日益庞大和复杂。与此同时, 快速发。
30、展的计算机 硬件也变得便宜并且快速。现今硬件具有向大规模并行化发展的趋势 : 从过去的具有单核 CPU的高性能计算或HPC系统, 到现今采用的由数千个多核CPU组成的PC集群, 到最近出现 的异构性 CPU-GPU 系统。仿真实施者现在可以采用便宜的具有数万个计算机核心共同工作 以解决大规模仿真问题的硬件。 0046 就目前所知, 现有的求解方法由于较差的可扩展性问题和 / 或鲁棒性问题而不能 处理千兆的储层仿真。 当前可用的求解方法限至于约千万网格单元和数十个处理的并行可 扩展性。如果没有大规模并行可扩展性, 那么针对历史匹配仿真或预测仿真运行的仿真将 会变得很慢且难以实施。这限制了可以在流。
31、体仿真中采用的模型的大小。对于大储层, 这 意味着过度粗化。 0047 关于储层的一些其他因素还进一步提高了千兆级储层仿真的复杂度。 对于常见的 诸如断层、 裂缝、 尖灭和页岩壁垒之类的地质不连续性的处理对形成鲁棒的可扩展求解方 法带来了困难。采用结构化的网格难以对多分支井附近的复杂流体几何结构进行建模。非 结构化的网格需要专门的非结构化方法, 而且使得计算负荷难以在处理器之间平衡和难以 鲁棒并且有效地求解。 0048 而且, 全耦合全隐的井解决方案是精确的储层仿真所需要的方法。这是可以降低 可扩展性的另一个因素, 特别是当储层包含数千个复杂的分支井时。 此外, 许多石油储层岩 石具有多模式的。
32、多孔隙 - 渗透 (porosity-permeability) 和多尺度断层网络。 发明内容 说 明 书 CN 104136942 A 10 6/16 页 11 0049 简而言之, 本发明提供一种新的和改进的计算机实施方法以利用储层仿真器对地 下储层的流体特性进行仿真。流体特性取决于流体流动、 物料平衡和压力 - 体积 - 温度关 系。储层被划分为许多个子域, 每个子域代表了储层的包含多相多成分流体的有限体积并 且被组织成一组具有流体相关数据的网格单元。储层仿真在由至少一个主节点和多个处 理器节点形成的集群计算机中执行, 其中对每个处理器节点 分配给所划分的储层的一个 子域。 根据本发明的。
33、计算机实施方法通过牛顿迭代对网格单元的关注流体特性参数进行仿 真, 该计算机实施方法由一系列计算机实施步骤组成。每个储层子域的数据被排列成牛顿 矩阵 A, 该牛顿矩阵 A 由以下部分组成 : 矩阵 P, 其由子域的块对角线和与块对角线相邻的 非零数据块组成 ; 矩阵 E, 其由未包含在块对角矩阵 P 中的非零数据块组成。矩阵 E 由子域 内的内部网格块的矩阵 E 和具有储层中的相邻子域的网格单元的边界网格单元块的矩阵 E组成。针对每个子域的网格块在所分配的处理器节点中采用为子域选择的局部预条件 子来执行流体特性的并行近似求解。 基于求得的并行近似解来更新储层的牛顿矩阵的全系 统残差。根据全局约。
34、化空间矩阵将该全系统残差限制在全局约化空间中。采用全局约化空 间预条件子来执行对全系统残差的并行近似求解。 随后, 在分配的处理器节点中, 由每个子 域的并行近似解和全系统残差的并行近似解形成组合近似解的更新, 以形成解向量。采用 解向量更新全系统残差。 对全系统应用迭代求解器以获得储层的网格单元的流体特性的测 量值。 对通过应用迭代求解器获得的流体特性的测量值进行检查, 以确定是否实现收敛。 如 果未实现收敛, 则返回至执行并行近似求解的步骤。 如果实现了收敛, 则处理返回至储层仿 真器。 0050 本发明还提供一种新的和改进的数据处理系统, 用于利用储层仿真器对地下储层 的流体特性进行仿真。
35、。 该数据处理系统包括由至少一个主节点和多个处理器节点形成的集 群计算机。储层的流体特性取决于流体流动、 物料平衡和压力 - 体积 - 温度关系, 并且该储 层被划分为多个子域。 每个子域代表了储层的包含多相多成分流体的有限体积并且被组织 成一组具有流体相关数据的网格单元。 对数据集群计算机的每个处理器节点分配所划分的 储层的一个子域。集群计算机通过牛顿迭代对网格单元的关注流体特性参数进行仿真。数 据处理系统中的处理器通过以计算机实施步骤的处理序列进行操作。 每个储层子域的数据 被排列成牛顿矩阵A, 该牛顿矩阵A由以下部分组成 : 矩阵P, 其由子域的块对角线和与块对 角线相邻的非零数据块组成。
36、 ; 矩阵 E, 其由未包含在块对角矩阵 P 中的非零数据块组成。矩 阵 E 由子域内的 内部网格块的矩阵 E 和具有储层中的相邻子域的网格单元的边界网格单 元块的矩阵 E组成。针对每个子域的网格块在所分配的处理器节点中采用为子域选择的 局部预条件子来执行流体特性的并行近似求解。 基于求得的并行近似解来更新储层的牛顿 矩阵的全系统残差。根据全局约化空间矩阵将该全系统残差限制在全局约化空间中。采用 全局约化空间预条件子来执行全系统残差的并行近似求解。 随后, 在分配的处理器节点中, 由每个子域的并行近似解和全系统残差的并行近似解形成组合近似解的更新, 以形成解向 量。采用解向量更新全系统残差。对。
37、全系统应用迭代求解器以获得储层的网格单元的流体 特性的测量值。 对通过应用迭代求解器获得的流体特性的测量值进行检查以确定是否实现 收敛。如果未实现收敛, 则返回至执行并行近似求解的步骤。如果实现了收敛, 则返回至储 层仿真器。 0051 本发明还提供一种新的和改进的数据存储装置, 该数据存储装置具有存储在计算 说 明 书 CN 104136942 A 11 7/16 页 12 机可读介质中的计算机可操作指令, 该指令用于使储层仿真器对地下储层的流体特性进行 仿真。流体特性取决于流体流动、 物料平衡和压力 - 体积 - 温度关系。储层被划分为许多 个子域, 每个子域代表储层的包含多相多成分流体的。
38、有限体积并且被组织成一组具有流体 相关数据的网格单元。 该数据处理系统包括由至少一个主节点和多个处理器节点形成的集 群计算机, 对每个处理器节点分配所划分的储层的一个子域。该数据处理系统还通过牛顿 迭代对网格单元的关注流体特性参数进行仿真。 数据存储装置包括用于使数据处理系统按 以下处理序列进行操作的指令。 将每个储层子域的数据排列成牛顿矩阵A, 该牛顿矩阵A由 以下部分组成 : 矩阵 P, 其由子域的块对角线和与块对角线相邻的非零数据块组成 ; 矩阵 E, 其由未包含在块对角线矩阵 P 中的非零数据块组成。矩阵 E 由子域内的内部网格块的矩阵 E 和具有储层中的相邻子域的网格单元的边界网格单。
39、元块的矩阵 E组成。针对每个子域 的网格块在所分配的处理器节点中采用为子域选择的局部预条件子来执行流体特性的并 行近似求解。基于并行近似求解来更新储层的牛顿矩阵的全系统残差。根据全局约化空间 矩阵将该全系统残差限制在全局约化空间中。采用全局约化空间预条件 子来执行对全系 统残差的并行近似求解。 随后, 在所分配的处理器节点中, 由每个子域的并行近似解和全系 统残差的并行近似解形成组合近似解的更新, 以形成解向量。 采用解向量更新全系统残差。 对全系统应用迭代求解器以获得储层的网格单元的流体特性的测量值。 对通过应用迭代求 解器获得的流体特性的测量值进行检查以确定是否实现收敛。如果未实现收敛, 。
40、则返回至 执行并行近似求解的步骤。如果实现了收敛, 则返回至储层仿真器。 附图说明 0052 图 1 为地下储层的典型结构化网格模型的等距视图。 0053 图 2A 和图 2B 为地下储层的典型非结构化网格的示例的显示。 0054 图 3 为根据本发明的用于处理的矩阵数据的示例划分的示意图。 0055 图 4A、 图 4B 和图 4C 为根据本发明的矩阵数据域的划分和组织的示意图。 0056 图 5 为根据本发明的用于储层仿真的数据处理系统中执行的一组数据处理步骤 的功能框图。 0057 图 6 为根据本发明的用于储层仿真的数据处理系统的示意框图。 0058 图 7 为根据本发明的储层仿真的求。
41、解器可扩展性的曲线图。 0059 图 8 为根据本发明的作为对五种仿真模型运行的仿真的总运行时间的百分比的 仿真求解时间的示意图。 具体实施方式 0060 利用本发明, 提供了高度可扩展的大规模并行储层仿真中的多级预条件处理。通 过本发明的储层仿真而求解的控制非线性偏微分方程是针对互连的有限体积 ( 称为网格 单元 ) 的瞬态多相多成分流体流动而写出的离散质量、 动量和能量的平衡。对于被称为巨 型储层的储层, 网格单元的数量可以为数百万直至超过十亿。 此外, 一个仿真模型可以包括 数个储层。这些储层可以通过周围地质构造和地层中的连通的含水层和 / 或地下断层系统 以液压连接。 这些储层还可以通。
42、过钻入不同地层以进行多层合采或注入处理的多分支井来 连接。 说 明 书 CN 104136942 A 12 8/16 页 13 0061 尽管针对只具有数百万个网格单元的模型的处理方法是有竞争力的、 鲁棒的、 并 且提供出色的可扩展性, 但本发明特别以需要鲁棒并且高度可扩展的预条件子来有效地求 解问题的大型系统求解方法为目标。就目前所知, 现有技术并未充分解决并行可扩展性需 求的问题, 由此对于大规模应用而言遭受了并行性能的严重损失。 0062 一种被称为通用牛顿 - 拉普森 (Newton-Raphson) 方法的技术被用于产生形式为 Av R 的系统方程, 其中 A 代表系统雅可比矩阵, 。
43、v 代表更新的解向量并且 R 代表残差向量。本发明涉及在系统矩阵 A 和残差向量 R 产生之后的求解方法。具有数 年历史匹配和 / 或未来性能预测的单个仿真通常需要数百个至数千个时间步长, 每个时间 步长需要若干次牛顿 - 拉普森迭代, 并且每次牛顿 - 拉普森迭代将需要若干次求解迭代以 将系统收敛到可接受的容差范围之内。 0063 为了求解在由数百个计算节点 ( 每个计算节点都由多个 CPU 形成, 并且每个 CPU 由多个核构成 ) 组成的高性能计算 (HPC) 集群上的大规模仿真模型, 需要将这些模型细分 为被称为子域网格单元的组或块。每个子域都由解域的连续网格单元的子集组成, 并且每 。
44、个子域执行几乎等量的计算工作。对于较大的模型, 可能需要将域划分为数千个或数万个 子域。对子域数据的并行计算即是分治策略。 0064 并行处理中的问题在于被建模的物理现象具有全局影响, 而细分为子域的处理并 不将该储层现象考虑在内。就目前所知, 过去的细分会导致大量的计算或存储负担。因此, 致使分治策略不能有效地减少处理时间。 0065 成功的迭代求解器需要鲁棒的预条件子, 许多鲁棒的预条件子具有大量串行或递 归成分, 这些串行和递归成分不容易修正为并行实施。 另一方面, 已知的高度并行的预条件 子不会是非常鲁棒的。如果不能适当地解决模型的全局性质, 则由于将解空间并行划分为 子域, 导致计算。
45、开销显著增加, 从而使得并行计算不能有效地加速求解。 0066 如上文所述, 本发明提供了多级求解方法, 该方法具有串行方法的鲁棒性, 但同时 还达到了大规模并行效率。为了方便参考, 本发明提供的方法被称为全局约化空间预条件 方法。 该全局约化空间预条 件方法可以采用许多已知的鲁棒的串行方法作为局部成分, 以 构建可修正为用于在数千个处理节点上运行的实施方式的鲁棒的可扩展并行方法。 0067 为了实现可移植性, 本发明可以实施为采用诸如 FORTRAN、 C 或 C+ 之类的标准 高级计算语言的计算机代码以及采用用于分布式存储器的 MPI 标准、 用于共享存储器的 OpenMP标准或混合范式实。
46、施方法的并行化。 这允许实施的系统容易地在多种HPC硬件平台 上运行。既然本发明在存在数百万个困难的储层仿真要解决时展示出了高效率, 涉及数十 亿个困难方程的系统也会通过本发明而尤其受益。 0068 对于由大量有限体积(其中每个有限体积可能具有一大组控制方程)组成的仿真 系统, 需要将这些有限体积分配给HPC集群的多个计算节点, 从而拥有足够的资源(计算核 和存储器 ) 来有效地求解系统。如果意图采用 N 个进程 ( 采用索引 i 来确定进程的等级 ) 来求解全局问题, 那么有限体积的全局数量和相关方程组分布至 N 个进程并且每个进程 i 处理全局体积的子集和方程组 : 0069 Aii Ri。
47、 (1) 0070 i 1, 2, 3N 0071 这种划分为子集的方法被称为域划分 (domain partitioning)。通过划分得到的 说 明 书 CN 104136942 A 13 9/16 页 14 每个子域包含大致等量的计算工作, 使得工作负荷在每个进程之间大致平衡以得到好的并 行可扩展性。对超大仿真系统的划分同样需要每个子域的工作量大致相等, 并且同时最小 化与相邻的域相通和从相邻的域获得数据的要求。 对于涉及单个物理特性并针对每个有限 体积具有相同的守恒方程组的仿真模型, 域的划分需要每个子域包含相同数量的网格单元 并且最小化在子域边界处的网格单元的数量。 0072 由于储。
48、层仿真系统紧密耦合, 为了具有并行可扩展性, 需要全局解, 并且为了调和 解空间的全局性质, 有效解通常要求计算处理之间的大量数据通信。 但是, 对于大规模的并 行化, 先前认为有必要增加计算处理的数量以减少仿真时间。通信成本是并行化开销的组 成部分, 其最终由于子域尺寸的降低而导致可扩展性的损失。 0073 由此发生这样一种情况 : 计算处理的进一步增加并不会导致仿真时间的降低。一 些已知的用于储层仿真的鲁棒的预条件方法通过依赖于顺序的执行来递归, 这导致并行可 扩展性的范围受到限制。嵌套分解 (NF) 是属于该类别的一个示例。另一方面, 高度并行预 条件方法并不是鲁棒的并且需要过多的迭代才。
49、能收敛, 或者对于困难的问题甚至可能不能 收敛。多色块高斯 - 赛德尔 (multi-color block Gauss-Seidel, MCBGS) 或块雅可比预条 件子是属于该类别的示例。本发明的方法提供了能克服这些困难的多级方法。 0074 图 5 的流程图 F 结合图 6 所示的数据处理系统 P 示出了用于根据本发明的用于大 规模并行储层仿真的本发明的基本计算机处理序列。在步骤 50 期间, 针对储层仿真系统的 独立子域选择和构建局部预条件子。根据特定子域的仿真问题的本质, 针对一个子域构建 或选择的预条件子可能不同于其他子域的预条件子。 0075 接下来在步骤 52( 图 5) 期间构建或建立本发明的基础并行预条件子。如图 3 所示, 步骤 52 的预条件子涉及将储层的每个子域的网格单元矩阵子结构化 (matrix sub-structuring) 为核心子矩阵 P 和补充子矩阵。