VOF 波准则

本节介绍适用于流体体积 (VOF) 波模拟的设置和分析过程。

有关 VOF 模拟的常规建议,请参见 VOF 准则。

网格化注意事项

使用以下网格化准则(如果适用):

  • 靠近自由表面的网格必须能够解析幅值(波高)和波长。此目标需要一个适合相关波的网格单元尺寸。
  • 可以通过与自由表面之间的距离来增加网格尺寸,因为波的效果会随深度而呈指数级衰减。
  • 由于船舶与类似的体会生成多种波,因此无法解析最小的波长。选择需要解析的最小波长。
  • 如果使用的是不规则或叠加的波,一定希望使用一种精细网格来解析小型波。
  • 如果使用的是平波,对网格进行设置,以捕捉在尾流中生成的波。此外,调整网格,以使平整的自由表面与网格表面重合(即避免在未受干扰的自由表面上出现部分填充的单元)。
  • 使用适用于给定波陡度和水深的波模型。有关可用的类型波,请参见 VOF 波建模。
  • 在大多数情况下,最佳时间步大小取决于波的传播速度。但是,如果要断开波或者网格在垂直方向上比较精细,则可能需要比较小的时间步。此时,自由表面的垂直运动比波速更为重要。
    注如果自由表面在每个时间步中移动半个网格单元或更长的距离,则使用二阶离散化的模拟会出现发散的情况。
  • 船舶和海洋结构的最佳时间步长取决于波的属性以及是否需要解析更多详细的流体特征。例如,在创建波对海洋平台的影响力模型时,可能需要使用较小的时间步进行模拟,以捕捉最大压力或力。
  • 如果知道幅值和波长或 VOF 波周期,则使用以下步骤:
    1. 在网格操作中,选择切割体网格单元生成器模型。
    2. 在切割体网格单元生成器节点模型属性中,激活执行网格定位。
    3. 选择默认控制 > 网格定位位置。
    4. 将位置属性设为此模拟中体前部的水位线。
    5. 选择几何 > 部件 > 新形状部件 > 方块并创建一个沿 X 和 Y 方向涵盖整个域的方块。同时,将此方块沿 Z 方向尽量延伸,以封闭所有波,并留出 10% 额外空间。
    6. 为方块创建体积控制。
    7. 在网格操作中的自定义控制 > 体控制下,依次设置以下属性:
      节点 属性 值
      控制 > 切割体网格生成器 自定义各向同性尺寸 停用
      自定义各向异性尺寸 已激活
      值 > 切割体网格生成器各向异性尺寸 相对值/绝对值 绝对值
      自定义尺寸 (X) 激活
      自定义尺寸 (Y) 激活
      自定义尺寸 (Z) 激活
      绝对尺寸 (X) 值 波长的 1/80 到 1/100
      绝对尺寸 (Y) 值 波长的 1/80 到 1/100
      绝对尺寸 (Z) 值 大约波高的 1/20

      X 和 Y 轴位于自由表面,而 Z 轴与其垂直。

      沿波方向的网格分辨率不必与波传播方向的网格分辨率一样高(短峰波除外)。

    8. 根据以下方程设置隐式非稳态求解器的时间步:

      时间步 = P 2.4 n

      其中, P 为波周期, n 是为获取绝对尺寸 (X) 而用于划分波长的段数。例如,如果使用 VOF 波长的 1/80,则 n = 80。

    上述步骤最适合第一阶和第五阶波。

湍流阻尼

在某些情况下,两方程湍流模型在 VOF 波下生成的湍流粘度过大,导致快速产生湍动能和涡流粘度。这会影响波的动力学,导致波幅经过多个波长后逐渐减小。为了在这些模拟中控制湍流粘度过大,建议为正在使用的两方程湍流模型(K-Omega 或 K-Epsilon)将可实现性选项设为涡旋限制器。有关详细信息,请参见自由表面波 (K-Omega) 的湍流阻尼和自由表面波 (K-Epsilon) 的湍流阻尼。

边界条件

使用以下准则(如果适用):

  • 尽量使用流入边界条件。确保流速和风速矢量均从入口指向出口。
  • 一般情况下,在侧边界上使用无滑移条件。
  • 对于开放水域或侧边界,适合使用滑移壁或对称条件作为侧边界。
  • 对于底边界,适合使用入口、无滑移或滑移壁边界,但切勿使用对称条件。
  • 避免虚假的波反射。此类反射最常见于边界和网格急剧过渡处。
    • 为了避免发生内部反射,切勿在波区内更改垂直方向的网格分辨率。
    • 要避免在边界处发生波反射,最初使用较大的阻尼区,然后在经过 5–10 个时间步之后将其减少至大约一半体积。请参见 VOF 波力和波阻尼。
  • 对于每个波,在“物理连续体”中的初始条件下,设置以下值:
    节点 属性 值
    压力 方法 场函数
    标量函数 Hydrostatic Pressure of [wave]([波] 的静水压力)
    速度 方法 场函数
    矢量函数 Velocity of [wave]([波] 的速度)
    体积分数 方法 复合
    复合 > H2O(水)(或其他重流体) 方法 场函数
    标量函数 Volume Fraction of Heavy Fluid of [wave]([波] 的重流体体积分数)
    复合 > 空气(或其他轻流体) 方法 场函数
    标量函数 Volume Fraction of Light Fluid of [wave]([波] 的轻流体体积分数)
  • 对于区域 > [区域] > 边界下的所有入口边界,设置以下值:
    节点 属性 值
    [任何速度入口] > 物理条件 > 速度指定 方法 幅值 + 方向
    [任何速度入口] > 物理值 > 速度幅值 方法 场函数
    标量函数 Velocity of [wave]([波] 的速度)
    [任何入口] > 物理值 > 体积分数 方法 复合
    复合 > H2O(水)(或其他重流体) 方法 场函数
    标量函数 Volume Fraction of Heavy Fluid of [wave]([波] 的重流体体积分数)
    复合 > 空气(或其他轻流体) 方法 场函数
    标量函数 Volume Fraction of Light Fluid of [wave]([波] 的轻流体体积分数)
    [任何出口] > 物理值 > 体积分数 方法 复合

    在出口处,指定压力边界。将压力和体积分数设为平波的静水压力和体积分数。

    复合 > H2O(水)(或其他重流体) 方法 场函数
    标量函数 Volume Fraction of Heavy Fluid of [wave]([波] 的重流体体积分数)
    复合 > 空气(或其他轻流体) 方法 场函数
    标量函数 Volume Fraction of Light Fluid of [wave]([波] 的轻流体体积分数)
    [任何压力出口] > 物理值 > 压力 方法 场函数
    标量函数 Hydrostatic Pressure of [wave]([波] 的静水压力)
    注对于具有多个 VOF 波的模拟,可以使用链接的 VOF 波场函数而不是 VOF 波场函数来定义初始条件和/或边界条件。这样便可通过简化 VOF 波之间的切换来减少模拟预处理所必需的时间。

尾流的物理特性

使用 VOF 波设置模拟时,注意波的以下物理特性:

  • 波的能量与波幅值成比例。如果可能,获取船舶的幅值频谱。此信息可将波 A ( θ ) 的幅值与船舶路径和波路径之间的角度 θ 关联起来。使用此信息可确定哪些波必须解析,哪些波可以忽略。

    幅值频谱示例:



  • 同样,尾流波的波长也会与 θ 关联起来。

    对于稳态前行的船舶:

    λ = 2 π U 2 g cos 2 θ

    其中, U 为船舶速度。

  • 在模型 > VOF 波 > 波下的各个波节点属性中,将轻流体密度和重流体密度设为正确的值。切勿假定默认值为适合您的模拟的正确值。
  • 在持续多个波周期的模拟中,要获得最佳波传播结果,将流体体积 (VOF) 模型的角系数属性从默认值 0.05 增加到 0.15。

设置第一波前位置

激活第一波前设置时,水位上的点位于波峰前的四分之一波长距离处。对于一阶波,该点位于自由表面上。但是,对于高阶波,情况并非如此,如下图所示:



在上述示例中,垂直方向由 z 轴给出,前进方向由 x 轴给出。平均水位在 z = 1 m 处。波长为 50 m,波峰位于 x = 10 m 处,水位上的点 = [22.5/0/1] m。此图显示水位上的点在一阶波(而不是五阶波)的自由表面上。

如果在整个域中生成波,并且想要波峰位于 x = 10 m 处,则可以将水位上的点在前进方向的 x 轴坐标指定为波长的整数倍加上四分之一波长(在本例中为 50/4 = 12.5)。例如,[72.5/0/1]、[122.5/0/1]、[172.5/0/1] 等。