Input of Null Blocks

概述

油藏数值模拟中的无效网格(也称为死网格或非活跃网格)通常指的是那些在模拟过程中不直接参与流体流动计算的网格块。这些网格可能由于以下原因而被视为无效:

地质原因:在油藏的某些区域,可能由于缺乏储集层或储集层质量差,导致这些网格块不具备流体流动的能力。

开发策略:在油藏的开发过程中,某些区域可能暂时不会被开发,因此对应的网格块在模拟中被标记为无效。

模拟精度:在模拟过程中,为了提高计算效率,可能会有意排除一些对整体油藏性能影响不大的网格块。

边界条件:在油藏模型的边界区域,可能会存在一些不具备物理流动意义的网格块,它们在模拟中通常被处理为无效网格。

无效网格在油藏数值模拟中的作用包括:

提高计算效率:通过排除无效网格,可以减少模拟所需的计算量,从而提高模拟的效率。

简化模型:无效网格的使用有助于简化模型的复杂性,使得模拟过程更加集中于活跃的储集层区域。

避免计算误差:在某些情况下,无效网格可以防止由于模型不精确或数据缺失导致的计算误差。

灵活性:在油藏开发的不同阶段,可以通过将某些网格块标记为无效或重新激活,来模拟不同的开发策略。

在实际应用中,识别和管理无效网格是油藏数值模拟前处理的一个重要环节,它对模拟结果的准确性和计算效率都有重要影响。

在给定的网格系统中,有两种方法可以表示无效网格(null blocks)的存在:

a. *NULL 和 b. *POR

两者都必须出现在油藏描述部分。*NULL 是可选的,而 *POR 必须出现在你的dat文件中。*POR 是用于指定孔隙度的关键字。

*NULL 的使用

使用 *NULL 时,无效网格通过数字 0 表示;有效网格通过数字 1 表示。

以下是一个示例,除了 I 方向的网格 1 到 4,J 方向的网格 1 到 3,以及 K 方向的网格 1 到 3,所有网格都是活动的。

可以使用 *IJK 数组读取选项来表示这个示例:

示例:

  *NULL *IJK
  1:10 1:10 1:3 1
  1:4  1:3  1:3 0

请注意,第二行覆盖了第一行。

*NULL 是可选的,如果该关键字不存在,则假定所有网格都是有效的。

*NULL 的指定始终会覆盖 *POR 中的指定。如果给已经通过 *NULL 指定为无效的网格分配了一个非零孔隙度,那么 *POR 的分配将被忽略。

*POR 的使用

使用 *POR 时,无效网格通过零孔隙度表示,而有效网格被赋予非零值。

上述示例也可以用 *POR 表示:

示例:

  *POR *IJK
  1:10 1:10 1:3 0.3
  1:4  1:3  1:3 0.0

双重孔隙度/双重渗透性情况

在双重孔隙度/双重渗透性模型的情况下,孔隙度值的输入需要分别输入基质(matrix)和裂缝(fracture)的数据。首先输入基质的数据,然后是裂缝的数据。其他数据的输入也应遵循相同的程序。

示例:

  *POR *MATRIX *IJK
  1:10 1:10 1:3 0.3
  1:4  1:3  1:3 0.0
  *POR *FRACTURE *IJK
  1:10 1:10 1:3 0.0
  8    7:9  1:2 0.4
  *MOD
  8    7:8  1 = 0.45

示例还展示了 *MOD 的使用,它修改了一些网格的属性,将孔隙度从 0.40 修改为新的孔隙度 0.45。

在双重孔隙度模型中,无效网格意味着基质和裂缝的孔隙度都为零。一般来说,可以设置基质孔隙度或裂缝孔隙度为零,而另一个为非零值。

 

发表评论