溃坝流体-结构耦合

分类: 解析 | 综合版 2026-04-06
Dam break FSI simulation: VOF free-surface water column collapsing and impacting a deformable elastic obstacle, with Navier-Stokes, VOF transport, and structural dynamics governing equations
ダムブレイクFSIシミュレーション:VOF自由表面を持つ水柱が弾性障害物に衝突する様子と支配方程式

概述

🧑‍🎓

先生、ダムブレイクのFSI解析ってどんな場面で使うんですか?


理论与物理

🎓

用于评估溃坝洪水波冲击下游建筑物或结构时的载荷、预测海啸对防波堤或建筑物的冲击力、评估液体储罐破损时的晃荡冲击力等。其特点是同时处理包含自由表面的非定常流体与结构的大变形。


🧑‍🎓

与常规FSI的不同之处在于存在自由表面呢。


🎓

没错。因为是气液两相自由表面流动与结构的耦合,所以计算比常规的单相FSI更复杂。碎波(破碎)以及夹带空气(被困空气)的效应也很重要,会显著影响冲击压力。


控制方程

🧑‍🎓

请告诉我流体侧的方程。


🎓

结合自由表面追踪的非定常不可压缩Navier-Stokes方程。VOF(流体体积)法是最常用的。


$$ \frac{\partial \mathbf{v}}{\partial t} + (\mathbf{v} \cdot \nabla)\mathbf{v} = -\frac{1}{\rho}\nabla p + \nu \nabla^2 \mathbf{v} + \mathbf{g} $$
$$ \nabla \cdot \mathbf{v} = 0 $$
$$ \frac{\partial \alpha}{\partial t} + \nabla \cdot (\alpha \mathbf{v}) = 0 $$

$\alpha$ 是VOF函数,$\alpha = 1$ 为液体,$\alpha = 0$ 为气体。物性值按 $\rho = \alpha \rho_l + (1-\alpha)\rho_g$ 混合。


🧑‍🎓

结构侧是如何处理的呢?


🎓

结构为弹性体时采用常规FEM。坝体混凝土采用弹塑性模型,若下游建筑物会破坏,有时也会与SPH(光滑粒子流体动力学)或DEM(离散元法)耦合。


结构的运动方程是标准形式。


$$ [M]\{\ddot{d}\} + [C]\{\dot{d}\} + [K]\{d\} = \{F_{fluid}\} $$

$\{F_{fluid}\}$ 是流体作用在结构上的压力载荷和粘性力,通过在耦合界面进行积分求得。


🧑‍🎓

因为是冲击载荷,所以需要显式解法吗?


🎓

洪水波的冲击发生在数十毫秒量级,因此结构侧适合采用显式解法(LS-DYNAAbaqus/Explicit)。流体侧也通常使用VOF的显式解法(OpenFOAM的interFoam、Fluent VOF)。

Coffee Break 闲谈

溃坝问题成为“FSI教科书”的原因

溃坝问题作为计算流体力学的验证基准在全球范围内被广泛使用。水突然释放时的波前传播速度存在解析解(Ritter解),便于与数值计算进行比较。再加上存在结构物时的冲击力,它就一举成为了FSI的验证问题。2005年蒙特-泰斯塔乔大坝溃决事件获得了实测数据,被用于SPH和MPS法的验证。理论简单且验证明确——因此成为全球研究者喜爱的基准问题。

各项的物理含义
  • 结构-热耦合项:温度变化引起的热膨胀诱发结构变形,变形又影响温度场。$\sigma = D(\varepsilon - \alpha \Delta T)$。【日常示例】夏天铁轨伸长导致缝隙变窄——温度升高→热膨胀→产生应力的典型例子。电子基板在焊接后翘曲也是由于不同材料的热膨胀系数差异所致。发动机的汽缸体因高温部分与低温部分的温差产生热应力,最坏情况下会导致裂纹。
  • 流体-结构耦合(FSI)项:流体压力·剪切力使结构变形,结构变形又改变流体区域,是双向的相互作用。【日常示例】强风下悬索桥的缆索振动(涡激振动)——风力使结构摇晃,摇晃的结构改变风流,进而放大振动。心脏的血流与血管壁的弹性变形、飞机机翼的颤振(气动弹性不稳定性)也是典型的FSI问题。有时单向耦合即可满足要求,但变形较大时双向耦合是必须的。
  • 电磁-热耦合项:焦耳发热 $Q = J^2/\sigma$ 引起温度上升,温度变化又改变电阻,形成反馈回路。【日常示例】电炉的镍铬丝通电后发热(焦耳热)变红——温度升高电阻改变,电流分布也发生变化。IH电磁炉的涡流发热、输电线路因温度升高导致的垂度增加也是这种耦合的例子。
  • 数据传递项:通过插值解决不同物理场间网格不匹配的问题。【日常示例】天气预报中结合“气温数据”和“风力数据”计算体感温度时,如果各自的观测地点不同就需要插值——在CAE的耦合分析中,结构网格和CFD网格通常也不一致,因此界面处的数据传递(插值)精度直接关系到结果的可信度。
假设条件与适用范围
  • 弱耦合假设(单向耦合):当一方物理场影响另一方而反向影响可忽略时有效
  • 需要强耦合的情况:FSI中的大变形、电磁-热耦合中温度依赖性较强的情况
  • 时间尺度的分离:各物理场的特征时间差异较大时,可通过子循环提高效率
  • 界面条件的协调性:需确认耦合界面处的能量·动量守恒在数值上得到满足
  • 不适用的情形:三个以上物理场同时强耦合时,有时可能需要整体式方法
量纲分析与单位制
变量SI单位注意事项·换算备忘
热膨胀系数 $\alpha$1/K钢:约12×10⁻⁶、铝:约23×10⁻⁶
耦合界面力N/m²(压力)或N(集中力)确认流体侧与结构侧的力平衡
数据传递误差无量纲(%)插值精度依赖于网格密度比。5%以下为目标

数值解法与实现

🎓
方法特点适用场景
VOF在欧拉网格上追踪体积分数通用、大规模计算
Level Set用距离函数追踪界面界面平滑
SPH无网格粒子法碎波、飞溅
MPS (粒子法)SPH改良版、不可压缩日本开发、核反应堆安全
ALE网格跟随界面移动界面变形较小的情况

对于溃坝这样剧烈的自由表面流动,VOF或SPH是主流。


🧑‍🎓

SPH如何与结构耦合呢?


🎓

使用SPH-FEM耦合。流体用SPH粒子、结构用FEM单元表示,通过接触算法传递载荷。LS-DYNA的DEFINE_SPH_TO_SPH_COUPLING或CONSTRAINED_LAGRANGE_IN_SOLID是典型的实现。


基于OpenFOAM的溃坝FSI

🧑‍🎓

用开源软件实现的话呢?


🎓

有将OpenFOAM的interDyMFoam(VOF+动态网格)与solids4foam(结构求解器)组合的方法。也有通过preCICE将OpenFOAM(流体)与CalculiX(结构)耦合的流行方法。


interFoam的基本方程是带VOF的Navier-Stokes方程,使用MULES算法保持界面清晰。


冲击压力评估

🧑‍🎓

要确保冲击压力的精度该怎么做?


🎓

冲击压力强烈依赖于夹带空气(entrapped air)的可压缩性。基于不可压缩假设的VOF有时会高估冲击压力的峰值。


作为对策,会使用可压缩VOF(compressibleInterFoam)或人工引入气垫效应的模型。与实验比较时,需要认识到压力峰值存在较大波动(变异系数30~50%)。


现象冲击压力特征
直接冲击(flip-through)极高的短时峰值(10ms以下)
气垫冲击峰值稍低但持续时间较长
爬升载荷准静态、对结构响应起主导作用
🧑‍🎓

评估结构响应时,冲击压力的峰值和持续时间都很重要呢。


🎓

没错。结构的固有周期与载荷持续时间的比值决定了动力放大系数。短时冲击下结构来不及响应,因此很多时候用冲量(力×时间)来评估更合适。

Coffee Break 闲谈

SPH与MPS——粒子法在溃坝分析中大放异彩的原因

对于溃坝这样的大变形自由表面流动,网格剧烈变形会导致欧拉/ALE方法失效。此时粒子法(SPH和MPS)就大显身手了。粒子法将流体视为粒子的集合,因此无需网格,能应对大变形和飞溅。但粒子法计算成本高,精度通常也低于网格法。在实际应用中,也有研究自动切换的混合方法:“飞溅剧烈的初始冲击阶段用粒子法,之后的稳态流动用网格法”。

整体式方法

将所有物理场作为一个联立方程组同时求解。对强耦合问题稳定,但实现复杂,内存消耗大。

分区法(分离迭代法

各物理场独立求解,在界面交换数据。易于实现,可利用现有求解器。适用于弱耦合。

界面数据传递

最近邻法(最简单但精度低)、投影法(守恒性好)、RBF插值(对网格不一致鲁棒性强)。需要在守恒性和精度之间取得平衡。

子迭代

在每个耦合步内进行充分迭代,确保界面条件的协调性。残差基准基于各物理场的典型值进行缩放。

Aitken松弛

自动调整耦合迭代的松弛系数。防止因过度松弛导致发散,是加速收敛的自适应方法。

稳定性条件

注意附加质量效应(流体-结构耦合中结构密度≈流体密度时)。不稳定时可应用Robin型界面条件或IQN-ILS法。

Aitken松弛的比喻

Aitken松弛类似于“平衡跷跷板”。一方推得太用力,另一方就会弹起,反弹又导致推得更用力——为了抑制这种振荡,自动调整推力大小的就是Aitken松弛。当耦合迭代振荡不收敛时,它会根据前一次的修正量自动调整下一次的修正量,是一种自适应方法。

实践指南

🎓

1. 初始条件设定: 水位(水头差)、溃坝方式(瞬时、分阶段)

2. 计算区域设计: 包含下游结构物的足够范围。水平方向至少为坝高的30倍以上

3. 网格生成: 冲击部位细化。自由表面分辨率至少10个单元/水深

4. 边界条件: 底面·壁面无滑移,顶面为大气压开放

5. 时间步长: CFL < 0.5(确保VOF精度),推荐使用自适应时间步长

6. 计算执行: 用VOF追踪自由表面的同时与结构耦合

7. 后处理: 冲击压力的时间历程、结构的位移·应力、水位随时间变化


🧑‍🎓

有用于验证的基准问题吗?


🎓

著名的有以下三个。


基准内容实验数据
Kleefsman (2005)溃坝→障碍物冲击压力·水位时间历程
Lobovsky (2014)溃坝→壁面冲击压力高精度压力测量
Idelsohn (2008)弹性壁上的溃坝FSI壁面位移时间历程

网格收敛性确认

🧑‍🎓

网格的精细度该如何确定?


🎓

冲击压力对网格依赖性非常强。至少用三个等级(粗、中、细)确认收敛性。不过冲击压力的峰值有网格越细越高的趋势,很多时候严格来说并不收敛。


在实际工作中,确认压力的冲量(时间积分值)与网格无关更为稳妥。直接确认结构响应(位移、应力的最大值)的收敛性也是很好的方法。


常见问题

相关主题

関連シミュレーター

この分野のインタラクティブシミュレーターで理論を体感しよう

シミュレーター一覧

関連する分野

この記事の評価
ご回答ありがとうございます!
参考に
なった
もっと
詳しく
誤りを
報告
参考になった
0
もっと詳しく
0
誤りを報告
0
Written by NovaSolver Contributors
Anonymous Engineers & AI — サイトマップ
问题