晃荡(液面动摇)

分类: 流体分析(CFD) | 综合版 2026-04-06
CAE visualization for sloshing theory - technical simulation diagram
晃荡(液面动摇)

晃荡(液面动摇)的理论基础

概要

🧑🎓

老师! 今天是晃荡(液面动摇)的话题,对吧? 这是什么呢?


🎓

LNG船罐内的液面动摇。冲击压力的评估。




支配方程式




$$ \omega_{mn}^2=g\sqrt{k_{mn}^2}\tanh(k_{mn}h) $$
$$ F_{impact}=\rho C v^2 A $$



🧑🎓

听到这里,我终于明白晃荡为什么如此重要了!


离散化方法

🧑🎓

这个方程怎样在计算机上实际求解呢?


🎓

有限元法(FEM)的空间离散化。组装要素刚性矩阵,构建全体刚性方程。


🎓

进行弱形式(变分形式)的转换,使用试验函数和形状函数,运用Galerkin法进行定式化。要素类型的选择(低阶要素 vs. 高阶要素完全积分 vs. 减少积分)直接影响解的精度和计算成本的权衡。




矩阵求解算法

🧑🎓

矩阵求解算法具体是怎样的?


🎓

直接法(LU分解Cholesky分解)或迭代法(CG法GMRES法)来求解联立方程组。对于大规模问题,带预处理的迭代法更有效。



求解法分类内存使用量适用规模
LU分解直接法O(n²)小~中规模
Cholesky分解直接法(对称正定)O(n²)小~中规模
PCG法迭代法O(n)大规模
GMRES法迭代法O(n·m)大规模非对称
AMG预处理预处理O(n)超大规模
🧑🎓

也就是说,在有限元法阶段偷工减料,后来会吃苦头,对吧。我铭记于心!


商用工具中的实现

🧑🎓

那么,晃荡(液面动摇)需要用什么软件?


工具名开发者/现在主要文件格式
Simcenter STAR-CCM+Siemens Digital Industries Software.sim, .java, .csv
Ansys FluentAnsys Inc..cas, .dat, .msh, .jou
OpenFOAM开源(OpenCFD/ESI、OpenFOAM Foundation)字典文件(blockMeshDict等), .foam
Ansys CFXAnsys Inc..cfx, .def, .res, .ccl

供应商的系统和产品整合的经过

🧑🎓

各个软件的背景故事挺有趣的吧?



Simcenter STAR-CCM+

🧑🎓

接下来是Simcenter STAR的介绍吧。内容是什么呢?


🎓

由CD-adapco开发。2016年被Siemens收购,整合到Simcenter品牌。多面体网格是特征。

现在所属: Siemens Digital Industries Software



Ansys Fluent

🧑🎓

接下来是Ansys Fluent的介绍吧。内容是什么呢?


🎓

由Fluent Inc.开发。2006年被Ansys收购。基于非结构网格的通用CFD求解器。

现在所属: Ansys Inc.


🧑🎓

听到这里,我终于明白为什么开发这么重要了!



OpenFOAM

🧑🎓

OpenFOAM具体是什么呢?


🎓

源自Imperial College London的开源CFD。OpenCFD Ltd(ESI Group旗下)和The OpenFOAM Foundation并行开发。

现在所属: 开源(OpenCFD/ESI、OpenFOAM Foundation)


🧑🎓

哇,开发的故事真有趣! 能再讲讲吗。


文件格式和互操作性

🧑🎓

不同软件之间交换数据时有什么要注意的?


格式扩展名类型概要
CGNS.cgnsCFD数据CFD通用记号系统。CFD结果的标准交换格式。
VTK.vtk/.vtu可视化Visualization Toolkit格式。用于ParaView等。
🎓

在不同求解器之间转换模型时,要注意要素类型的对应关系、材料模型的兼容性、荷载边界条件的表示差异。特别是高阶要素或特殊要素(内聚要素、用户定义要素等)往往无法在求解器间直接转换。


🧑🎓

看起来格式很简单,但实际上很深奥呢。


实务中的注意事项

🧑🎓

有教科书上没有的「现场智慧」吗?


🎓

网格收敛性的确认、边界条件的适当性验证、材料参数的敏感性分析非常重要。


🎓
  • 网格依赖性的验证: 至少用3个网格密度级别确认收敛性
  • 边界条件的适当性: 设置有物理意义的约束条件
  • 结果的验证: 与理论解、实验数据、已知基准问题对比


  • 🧑🎓

    哇,晃荡(液面动摇)这么深! 谢谢老师的讲解,我理解了不少!


    🎓

    好,继续加油! 实际动手操作是最好的学习。有不懂的地方随时问我。


    Coffee Break 闲谈角

    晃荡理论的源点——Stokes波和线性晃荡(1847年)

    油罐晃荡的理论分析可以追溯到Stokes在1847年制定的有限振幅表面波理论(Stokes波)。矩形油罐的线性晃荡的固有振动频率为ωn = √(g×n×π/L×tanh(n×π×h/L))(L: 油罐长、h: 液深),能得到理论解,这被用作设计基准来定义危险的「共振」条件。重要的教训来自1986年墨西哥湾沿岸地震中液化气储存罐的共振破裂事故——确立了刚性周期与建筑油罐摇动周期不能一致的设计原则。现代CFD(VOF法)能精密预测非线性晃荡(砸波),但Stokes的线性分析至今仍作为设计初期的安全确认而有效。

    晃荡(液面动摇)的数值计算方法

    数值方法的详细

    🧑🎓

    具体用什么算法来求解晃荡(液面动摇)呢?



    🧑🎓

    等等,晃荡的话,也能用这种情况吗?


    离散化的定式化



    🎓

    形状函数 $N_i$ 来近似未知量:



    $$ u^h(\mathbf{x}) = \sum_{i=1}^{n} N_i(\mathbf{x}) \, u_i $$




    🎓

    用公式表示如下。


    $$ K_e = \int_{\Omega_e} B^T \, D \, B \, d\Omega \approx \sum_{g=1}^{n_g} w_g \, B^T(\xi_g) \, D \, B(\xi_g) \, |J(\xi_g)| $$

    基础方程式的离散形


    🎓

    用公式表示如下。


    $$ \omega_{mn}^2=g\sqrt{k_{mn}^2}\tanh(k_{mn}h) $$
    $$ F_{impact}=\rho C v^2 A $$

    🧑🎓

    嗯,只有公式我不太懂…表示什么呀?


    🎓

    连续体的支配方程离散化后,得到下面的代数方程组:



    $$ [K]\{u\} = \{F\} $$


    🎓

    这里 $[K]$ 是全体刚性矩阵(或等价的系统矩阵),$\{u\}$ 是未知节点变量向量,$\{F\}$ 是外力向量。


    🧑🎓

    哦,原来是这样! 连续体的支配方程就这样离散化的呀。


    要素技术

    🧑🎓

    「要素技术」听说过,但没有完全理解…


    要素类型节点数(3D)精度计算成本
    四面体1阶线性4低(剪切锁定)
    四面体2阶二阶10
    六面体1阶线性8
    六面体2阶二阶20非常高
    棱柱体线性/二阶6/15中~高

    积分方案

    🧑🎓

    积分方案具体是什么?


    🎓
    • 完全积分: 精确积分所有项。刚性过度评估的倾向(锁定
    • 减少积分: 削减积积分点数。提高计算效率但有沙漏模式发生风险
    • 选择性减少积分 (B-bar法): 将体积项和偏差项分离积分。避免锁定

    • 🧑🎓

      听到这里,我终于明白要素类型为什么重要了!


      收敛性和稳定性

      🧑🎓

      收敛不了的话,首先检查什么?


      🎓
      • h-细化: 细化网格(减小单元尺寸 h)提高精度
      • p-细化: 增加单元多项式阶数提高精度
      • hp-细化: 同时优化 h 和 p

      • 🎓

        收敛速度: 二阶单元为 $O(h^2)$ 的量级误差减少(光滑解的情况)


        🧑🎓

        所以网格细化看似简单,实际很深奥呢。


        求解器设置的推荐

        🧑🎓

        具体用什么算法来求解晃荡(液面动摇)呢?


        参数推荐值备注
        迭代法收敛判定$10^{-6}$残差范数基准
        预处理方法ILU(0) or AMG按问题规模
        最大迭代次数1000非收敛时需调整设置
        内存模式In-core尽可能

        风上差分(Upwind)

        1阶风上: 数值扩散大但稳定。2阶风上: 精度提高但有振动风险。高雷诺数流动不可缺少。

        中心差分(Central Differencing)

        2阶精度但Pe数 > 2时发生数值振动。适用于低雷诺数的扩散支配流。

        TVD方案(MUSCL、QUICK等)

        通过限制器函数抑制数值振动同时维持高精度。对激波或陡峭梯度的捕捉有效。

        有限体积法 vs 有限元法

        FVM: 自然满足保存律。CFD的主流。FEM: 复杂形状多物理场耦合优势。SPH等无网格法也在发展。

        CFL条件(库朗数)

        显式法: CFL ≤ 1为稳定条件。隐式法: CFL > 1也稳定但影响精度和迭代次数。LES: 推荐CFL ≈ 1。物理意义: 1时间步内信息传播不超过1个网格。

        残差监控

        连续方程动量能量各残差下降3~4个数量级判为收敛。质量保存残差特别重要。

        松弛系数

        压力: 0.2~0.3、速度: 0.5~0.7为一般初始值。发散时降低松弛系数。收敛后升高加速。

        非定常计算的内部迭代

        各时间步内迭代至定常解。内部迭代数: 5~20次为目标。残差在时间步间变化时需调整时间步长。

        晃荡(液面动摇)的实务应用

        实践指南

        🧑🎓

        老师,关于「实践指南」能讲讲吗!


        🎓

        晃荡(液面动摇)的实务分析流程和注意事项讲解。


        🧑🎓

        等等,晃荡的话,也能用这种情况吗?


        分析流程

        🧑🎓

        从第一步开始教我! 怎样着手?


        🎓

        1. 预处理 (Pre-processing)

        • CAD数据的导入和形状简化
        • 材料特性的定义
        • 网格生成(单元类型大小的确定)
        • 边界条件和荷载条件的设置

        🎓

        2. 求解 (Solving)

        • 求解器设置(解法、收敛基准、输出控制)
        • 任务投入和计算执行
        • 收敛监控

        🎓

        3. 后处理 (Post-processing)

        • 结果的可视化(位移、应力、其他物理量)
        • 结果的验证和适当性确认
        • 报告编写


        网格生成的最佳实践

        🧑🎓

        怎样判断网格的好坏?



        单元质量指标

        🧑🎓

        关于「单元质量指标」能讲讲吗!


        指标理想值允许范围影响
        纵横比1.0< 5.0精度下降
        雅可比比1.0> 0.3单元退化
        翘曲< 15°精度下降
        斜度< 45°收敛性恶化
        锥形比0< 0.5精度下降

        网格密度的确定

        🧑🎓

        网格密度的确定具体怎样?


        🎓
        • 应力集中部: 配置最少3层以上的单元
        • 应力梯度大的区域: 单元大小改为周围的1/3~1/5
        • 荷载施加点近处: 局部细化
        • 远方区域: 粗网格确保计算效率


        • 边界条件的设置指引

          🧑🎓

          边界条件要是错了,全都完蛋了,对吧…


          🎓
          • 过度约束的警惕: 刚体移动约束仅6个自由度
          • 对称条件的活用: 削减计算规模
          • 荷载的等价分配: 集中荷载 vs. 分布荷载的选择

          • 🧑🎓

            哦,是这样! 过度约束的警惕就是这么回事。


            按商用工具的实现步骤

            🧑🎓

            有各种各样的软件吧? 各自的特征讲讲!


            工具名开发者/现在主要文件格式
            Simcenter STAR-CCM+Siemens Digital Industries Software.sim, .java, .csv
            Ansys FluentAnsys Inc..cas, .dat, .msh, .jou
            OpenFOAM开源(OpenCFD/ESI、OpenFOAM Foundation)字典文件(blockMeshDict等), .foam
            Ansys CFXAnsys Inc..cfx, .def, .res, .ccl

            Simcenter STAR-CCM+

            🧑🎓

            接下来是Simcenter STAR的介绍吧。内容是什么呢?


            🎓

            由CD-adapco开发。2016年被Siemens收购,整合到Simcenter品牌。多面体网格是特征。

            现在所属: Siemens Digital Industries Software



            Ansys Fluent

            🧑🎓

            接下来是Ansys Fluent的介绍吧。内容是什么呢?


            🎓

            由Fluent Inc.开发。2006年被Ansys收购。基于非结构网格的通用CFD求解器。

            现在所属: Ansys Inc.


            🧑🎓

            老师的讲解清楚! 工具名的疑惑解开了。


            常见的失败和对策

            🧑🎓

            初心者容易犯什么错? 我想提前知道!


            症状原因对策
            计算不收敛网格质量不良、不适切的边界条件改善网格、重新检查约束条件
            应力异常大应力奇异点、网格依赖避免奇异点、局部网格细化
            位移不现实材料常数错误、单位系不一致确认输入数据
            计算时间过长不必要的细化、效率不高的解法网格优化、并行计算

            质量保证检查清单

            🧑🎓

            教科书上没有的「现场智慧」吗?


            🎓
            • 用3个网格密度水平以上确认网格收敛性
            • 验证力的平衡(反力合计)
            • 确认结果在物理合理范围
            • 与已知的理论解或基准问题对比


            • 🧑🎓

              哇,晃荡(液面动摇)这么深! 谢谢老师的讲解,我理解了不少!


              🎓

              好,继续加油! 实际动手操作是最好的学习。有不懂的地方随时问我。


              Coffee Break 闲谈角

              「充填率70%最危险」——LNG罐晃荡的实践知识

              LNG罐晃荡实务中流传的经验法则是「充填率50~80%危险」。接近满杯或接近空的状态液体运动会受到限制,但中等充填率时液体容易跳跃,对罐壁的冲击压力最大。特别是70%附近,晃荡固有周期常与船体摇摆周期接近,易产生共振,压力峰值常升高到平常的3~5倍。CFD实践需要必然运行多个充填率工况——「最危险的是什么工况」是最大的目标。

              晃荡(液面动摇)的软件比较

              商用工具比较

              🧑🎓

              有各种各样的软件吧? 各自的特征讲讲!


              🎓

              晃荡(液面动摇)对应的主要商用CAE工具的功能比较,和各产品的历史背景详细介绍。


              🧑🎓

              等等,晃荡的话,也能用这种情况吗?


              对应工具一览

              🧑🎓

              那么,晃荡(液面动摇)需要用什么软件?


              工具名开发者/现在主要文件格式
              Simcenter STAR-CCM+Siemens Digital Industries Software.sim, .java, .csv
              Ansys FluentAnsys Inc..cas, .dat, .msh, .jou
              OpenFOAM开源(OpenCFD/ESI、OpenFOAM Foundation)字典文件(blockMeshDict等), .foam
              Ansys CFXAnsys Inc..cfx, .def, .res, .ccl

              Simcenter STAR-CCM+

              🧑🎓

              接下来是Simcenter STAR的介绍吧。内容是什么呢?


              🎓

              由CD-adapco开发。2016年被Siemens收购,整合到Simcenter品牌。多面体网格是特征。

              现在所属: Siemens Digital Industries Software



              Ansys Fluent

              🧑🎓

              接下来是Ansys Fluent的介绍吧。内容是什么呢?


              🎓

              由Fluent Inc.开发。2006年被Ansys收购。基于非结构网格的通用CFD求解器。

              现在所属: Ansys Inc.


              🧑🎓

              听到这里,我终于明白为什么开发这么重要了!



              OpenFOAM

              🧑🎓

              OpenFOAM具体是什么呢?


              🎓

              源自Imperial College London的开源CFD。OpenCFD Ltd(ESI Group旗下)和The OpenFOAM Foundation并行开发。

              现在所属: 开源(OpenCFD/ESI、OpenFOAM Foundation)



              Ansys CFX

              🧑🎓

              关于「Ansys CFX」能讲讲吗!


              🎓

              由AEA Technology (UK) 开发的CFX。2003年被Ansys收购。耦合型求解器是特征。

              现在所属: Ansys Inc.


              🧑🎓

              哦,是这样! 开发就是这么回事。


              功能比较矩阵

              🧑🎓

              预算和时间都有限,最划算的是哪个?


              功能Star-CCM+FluentOpenFOAMCFX
              基本功能
              高级功能
              自动化/脚本
              并行计算
              GPU支持

              转换时的风险

              🧑🎓

              转换时的风险具体是什么?


              🎓
              • 单元类型的不兼容: 求解器固有单元无法用中立格式表现
              • 材料模型的差异: 同名但内部实现不同
              • 边界条件的重新定义: 多数情况需手动重新设置
              • 结果数据的对比: 输出变量的定义差异(节点值 vs. 单元值、积分点值)

              • 🧑🎓

                哦,是这样! 不同工具间的转换就是这么回事。


                许可证形式

                🧑🎓

                听说过「许可证形式」,但没有完全理解…


                工具许可证特征
                商用FEA节点锁定/浮动高价但有官方支持
                OpenFOAMGPL免费但支持有偿
                COMSOL节点锁定/浮动按模块购买
                Code_AsterGPLEDF开发的OSS求解器

                选择的指引

                🧑🎓

                最后应该选哪个,给我判断基准!


                🎓

                晃荡(液面动摇)工具选择时考虑下列方面:


                🎓
                • 分析规模: 数万~数亿自由度的可扩展性
                • 物理模型: 所需的本构关系单元类型的支持情况
                • 工作流: 与CAD的联系、自动化的易用性
                • 成本: 初期投资 + 年保养 + 教育成本
                • 支持: 技术支持的质量和应答速度


                • 🧑🎓

                  哇,晃荡(液面动摇)这么深! 谢谢老师的讲解,我理解了不少!


                  🎓

                  好,继续加油! 实际动手操作是最好的学习。有不懂的地方随时问我。


                  Coffee Break 闲谈角

                  晃荡分析工具——FLOW-3D和StarCCM+和ABAQUS/CEL的功能对比

                  专门用于油罐晃荡分析的功能对比来看,FLOW-3D(Flow Science公司)用自由表面追踪的TRuVOF法,对砸波飞溅的详细表现有优势,在LNG罐设计中有国际认证取得实绩。StarCCM+的VOF法实现精度和并行性能高,船舶浸水模拟(Flooding)与的耦合强。ABAQUS/CEL(耦合欧拉-拉格朗日)用于需要结构变形和流体冲击耦合的情况(罐壁弹性变形对晃荡压力有影响的情况)。OpenFOAM的interFoam在晃荡分析的研究用途中广为使用,但有认证要求的商业项目常选用有验证实绩的商用工具。

                  晃荡(液面动摇)的前沿研究

                  前沿主题和研究动向

                  🧑🎓

                  晃荡(液面动摇)领域从今以后怎样演变?


                  🎓

                  晃荡(液面动摇)领域的最新研究动向和先进方法讲解。


                  🧑🎓

                  等等,晃荡的话,也能用这种情况吗?


                  最新的数值方法

                  🧑🎓

                  接下来是最新数值方法的话题。内容是什么呢?



                  🧑🎓

                  嗯,只有公式我不太懂…表示什么呀?


                  🎓
                  • 等几何分析 (IGA): 直接用NURBS基函数,实现CAD-CAE无缝连接
                  • 粒子法 (SPH, MPM): 无网格方法进行大变形破坏追踪
                  • 位相场法 (Phase-Field): 通过界面隐式表示进行复杂界面追踪
                  • 机器学习支援: 代理模型、物理信息神经网络 (PINN)


                  • 对高性能计算 (HPC) 的应对


                    并行化方法概要适用求解器
                    MPI (领域分割)分布式内存型。大规模问题的标准全主要求解器
                    OpenMP共享内存型。节点内并行多数求解器
                    GPU (CUDA/OpenCL)GPGPU活用。特别对显式法有效LS-DYNA, Fluent等
                    混合 MPI+OpenMP节点间+节点内并行大规模HPC环境

                    晃荡(液面动摇)的故障排除

                    故障排除



                    🧑🎓