MMS: 压缩欧拉方程

类别: 分析 | 综合版 2026-04-06
CAE visualization for mms euler theory - technical simulation diagram
MMS: 压缩欧拉方程

MMS的理论基础

概要

🧑‍🎓

老师!今天是MMS: 压缩欧拉方程的讲解吧? 这是什么呢?


🎓

压缩欧拉方程的MMS。从密度、速度、压力的人工解导出质量、动量、能量的源项。



🧑‍🎓

等等,等等,压缩欧拉方程,也可以用在这样的情况吗?


支配方程



$$ \rho_{mms} = \rho_0 + \rho_1\sin(\pi x) $$
$$ f_\rho = \frac{\partial \rho_{mms}}{\partial t} + \nabla\cdot(\rho_{mms}\mathbf{u}_{mms}) $$



🧑‍🎓

听到这里,我终于理解了为什么压缩欧拉方程这么重要!


离散化方法

🧑‍🎓

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


🎓

使用有限元法(FEM)进行空间离散化。组装单元刚度矩阵,构建整体刚度方程。


🎓

进行弱形式(变分形式)变换,使用试验函数和形状函数进行Galerkin法定式化。单元类型的选择(低阶单元 vs. 高阶单元完全积分 vs. 低阶积分)与解的精度和计算成本的权衡有关。




矩阵求解算法

🧑‍🎓

矩阵求解算法具体是什么意思?


🎓

通过直接法(LU分解、Cholesky分解)或迭代法(CG法、GMRES法)求解联立方程。对于大规模问题,预处理迭代法很有效。



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

也就是说,有限元法的步骤中如果草率了,后面就会吃苦头。我记住了!


商业工具中的实现

🧑‍🎓

那么,做MMS: 压缩欧拉方程需要用什么软件呢?


工具名称开发商/现在主要文件格式
MSC Nastran / NX NastranMSC Nastran(Hexagon)、NX Nastran(Siemens Digital Industries Software).bdf, .dat, .f06, .op2, .pch
Abaqus FEA (SIMULIA)Dassault Systèmes SIMULIA.inp, .odb, .cae, .sta, .msg
ANSYS Mechanical (旧ANSYS Structural)ANSYS Inc..cdb, .rst, .db, .ans, .MAC
ANSYS FluentANSYS Inc..cas, .dat, .msh, .jou
Simcenter STAR-CCM+Siemens Digital Industries Software.sim, .java, .csv
COMSOL MultiphysicsCOMSOL AB.mph
OpenFOAM开源(OpenCFD/ESI、OpenFOAM Foundation)字典文件(blockMeshDict等)、.foam

供应商系统和产品整合历程

🧑‍🎓

各个软件的发展历程,感觉挺有故事的呢?



MSC Nastran / NX Nastran

🧑‍🎓

接下来是MSC Nastran的讲解吧。是什么内容呢?


🎓

NASA结构分析(NASTRAN)在1960年代开发。MSC软件进行商业化,后来UGS(现Siemens)派生出NX Nastran。MSC在2017年被Hexagon AB收购。

目前所属: MSC Nastran(Hexagon)、NX Nastran(Siemens Digital Industries Software)



Abaqus FEA (SIMULIA)

🧑‍🎓

Abaqus FEA,具体是怎样的呢?


🎓

1978年由HKS(Hibbitt、Karlsson & Sorensen)开发。2005年被Dassault Systèmes收购,并整合到SIMULIA品牌中。

目前所属: Dassault Systèmes SIMULIA


🧑‍🎓

等等,等等,结构分析,也可以用在这样的情况吗?



ANSYS Mechanical (旧ANSYS Structural)

🧑‍🎓

请讲讲"ANSYS Mechanical"!


🎓

1970年由Swanson Analysis Systems Inc.(SASI)开发。基于APDL(ANSYS参数化设计语言)。

目前所属: ANSYS Inc.


🧑‍🎓

哦~结构分析的讲解,特别有意思! 请继续讲!


文件格式和互操作性

🧑‍🎓

在不同软件之间传递数据时有什么需要注意的吗?


格式扩展名种类概述
STEP.stp/.step中立CAD符合ISO 10303的3D CAD数据交换格式。支持形状+PMI。
IGES.igs/.iges中立CAD早期CAD数据交换规范。曲面数据兼容性有问题。逐渐向STEP迁移。
VTK.vtk/.vtu可视化Visualization Toolkit格式。ParaView等使用。
🎓

在不同求解器间转换模型时,需要注意单元类型的对应关系、材料模型的兼容性、荷载和边界条件的表达方式的差异。特别是高阶单元或特殊单元(内聚单元、用户定义单元等)很多情况下无法在求解器间直接转换。


🧑‍🎓

原来…格式看起来很简单,但其实深度很大呢。


实务中的注意事项

🧑‍🎓

教科书里没有的"现场知识"有什么呢?


🎓

网格收敛性的确认、边界条件的合理性验证、材料参数的灵敏性分析特别重要。


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


  • 🧑‍🎓

    哎呀,MMS: 压缩欧拉方程,深度真的很大呢…… 但是有了老师的讲解,我理解得更清楚了!


    🎓

    好的,进展不错! 动手实践才是最好的学习。有不懂的地方随时来问。


    验证数据的可视化

    显示理论值与计算值的定量比较。合格基准为误差在5%以内。

    评估项目理论值/参考值计算值相对误差 [%]判定
    最大位移1.0000.998
    0.20
    PASS
    最大应力1.0001.015
    1.50
    PASS
    自然频率(1阶)1.0000.997
    0.30
    PASS
    反力总和1.0001.001
    0.10
    PASS
    能量守恒1.0000.999
    0.10
    PASS

    判定基准: 相对误差 < 1%: 优良、1~5%: 允许、> 5%: 需要检讨

    MMS的数值计算方法

    数值方法详解

    🧑‍🎓

    具体用什么算法来求解MMS: 压缩欧拉方程呢?



    🧑‍🎓

    等等,等等,压缩欧拉方程,也可以用在这样的情况吗?


    离散化的表述



    🎓

    形状函数 $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)| $$

    基础方程的离散形式


    🎓

    用公式表达就是这样。


    $$ \rho_{mms} = \rho_0 + \rho_1\sin(\pi x) $$
    $$ f_\rho = \frac{\partial \rho_{mms}}{\partial t} + \nabla\cdot(\rho_{mms}\mathbf{u}_{mms}) $$

    🧑‍🎓

    嗯……只有公式的话我理解不了……什么是啊?


    🎓

    连续体的控制方程离散化后,得到以下代数方程组:



    $$ [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)$ 的阶数减少(光滑解)


        🧑‍🎓

        原来……网格细化看起来很简单,但其实深度很大呢。


        求解器设置建议

        🧑‍🎓

        具体用什么算法来求解MMS: 压缩欧拉方程呢?


        参数建议值说明
        迭代法收敛判定$10^{-6}$残差范数基准
        预处理手法ILU(0) 或 AMG根据问题规模
        最大迭代次数1000不收敛时需要重新设置
        内存模式In-core尽可能

        低阶单元

        计算成本低,易于实现,但精度受限。粗网格时可能产生大误差。

        高阶单元

        同一网格下精度更高。计算成本增加,但需要的单元数量通常更少。

        牛顿-拉夫逊法

        非线性问题的标准方法。收敛半径内二次收敛。$||R|| < \epsilon$ 判定收敛。

        时间积分

        显式法: 条件稳定(CFL条件)。隐式法: 无条件稳定,但每步需求解联立方程。

        验证数据的可视化

        显示理论值与计算值的定量比较。合格基准为误差在5%以内。

        评估项目理论值/参考值计算值相对误差 [%]判定
        最大位移1.0000.998
        0.20
        PASS
        最大应力1.0001.015
        1.50
        PASS
        自然频率(1阶)1.0000.997
        0.30
        PASS
        反力总和1.0001.001
        0.10
        PASS
        能量守恒1.0000.999
        0.10
        PASS

        判定基准: 相对误差 < 1%: 优良、1~5%: 允许、> 5%: 需要检讨

        MMS的实务应用

        实践指南

        🧑‍🎓

        老师,请讲讲"实践指南"!


        🎓

        MMS: 压缩欧拉方程的实务分析流程和注意事项。


        🧑‍🎓

        等等,等等,压缩欧拉方程,也可以用在这样的情况吗?


        分析流程

        🧑‍🎓

        从最初的第一步开始讲! 应该从哪里开始?


        🎓

        1. 预处理 (前处理)

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

        🎓

        2. 求解 (求解)

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

        🎓

        3. 后处理 (后处理)

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


        网格生成最佳实践

        🧑‍🎓

        怎样判断网格的好坏呢?



        单元质量指标

        🧑‍🎓

        请讲讲"单元质量指标"!


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

        网格密度的决定

        🧑‍🎓

        网格密度的决定具体是什么意思?


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


        • 边界条件设置指南

          🧑‍🎓

          听说边界条件这里弄错的话全部白搭……


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

          • 🧑‍🎓

            啊!是这样! 过度约束注意这样的机制啊。


            按商业工具的实现步骤

            🧑‍🎓

            各种软件这么多,各有各的特点吧? 详细讲讲!


            工具名称开发商/现在主要文件格式
            MSC Nastran / NX NastranMSC Nastran(Hexagon)、NX Nastran(Siemens Digital Industries Software).bdf, .dat, .f06, .op2, .pch
            Abaqus FEA (SIMULIA)Dassault Systèmes SIMULIA.inp, .odb, .cae, .sta, .msg
            ANSYS Mechanical (旧ANSYS Structural)ANSYS Inc..cdb, .rst, .db, .ans, .MAC
            ANSYS FluentANSYS Inc..cas, .dat, .msh, .jou
            Simcenter STAR-CCM+Siemens Digital Industries Software.sim, .java, .csv
            COMSOL MultiphysicsCOMSOL AB.mph
            OpenFOAM开源(OpenCFD/ESI、OpenFOAM Foundation)字典文件(blockMeshDict等)、.foam

            MSC Nastran / NX Nastran

            🧑‍🎓

            接下来是MSC Nastran的讲解吧。是什么内容呢?


            🎓

            NASA结构分析(NASTRAN)在1960年代开发。MSC软件进行商业化,后来UGS(现Siemens)派生出NX Nastran。MSC在2017年被Hexagon AB收购。

            目前所属: MSC Nastran(Hexagon)、NX Nastran(Siemens Digital Industries Software)



            Abaqus FEA (SIMULIA)

            🧑‍🎓

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


            常见故障和对策

            🧑‍🎓

            初学者容易犯什么故障呢? 想事先知道!


            症状原因对策
            计算不收敛网格质量不良、边界条件不当改善网格、重新检查约束条件
            应力异常大应力特异点、网格相关回避特异点、局部网格细化
            位移非现实材料常数错误、单位系不一致确认输入数据
            计算时间过长不必要细化、求解器设置不当网格最优化、并行计算

            质量保证检查清单

            🧑‍🎓

            教科书里没有的"现场知识"有什么呢?


            🎓
            • 网格收敛性用3个以上密度级别确认了吗
            • 力的平衡(反力总和)验证了吗
            • 结果在物理上合理范围内了吗
            • 与已知理论解、基准问题比较了吗


            • 🧑‍🎓

              哎呀,MMS: 压缩欧拉方程,深度真的很大呢…… 但是有了老师的讲解,我理解得更清楚了!


              🎓

              好的,进展不错! 动手实践才是最好的学习。有不懂的地方随时来问。


              验证数据的可视化

              显示理论值与计算值的定量比较。合格基准为误差在5%以内。

              评估项目理论值/参考值计算值相对误差 [%]判定
              最大位移1.0000.998
              0.20
              PASS
              最大应力1.0001.015
              1.50
              PASS
              自然频率(1阶)1.0000.997
              0.30
              PASS
              反力总和1.0001.001
              0.10
              PASS
              能量守恒1.0000.999
              0.10
              PASS

              判定基准: 相对误差 < 1%: 优良、1~5%: 允许、> 5%: 需要检讨

              MMS的软件比较

              商业工具比较

              🧑‍🎓

              各种软件这么多,各有各的特点吧? 详细讲讲!


              🎓

              支持MMS: 压缩欧拉方程的主要商业CAE工具的功能比较与各产品的历史背景详述。


              🧑‍🎓

              等等,等等,压缩欧拉方程,也可以用在这样的情况吗?


              支持工具列表

              🧑‍🎓

              那么,做MMS: 压缩欧拉方程需要用什么软件呢?


              工具名称开发商/现在主要文件格式
              MSC Nastran / NX NastranMSC Nastran(Hexagon)、NX Nastran(Siemens Digital Industries Software).bdf, .dat, .f06, .op2, .pch
              Abaqus FEA (SIMULIA)Dassault Systèmes SIMULIA.inp, .odb, .cae, .sta, .msg
              ANSYS Mechanical (旧ANSYS Structural)ANSYS Inc..cdb, .rst, .db, .ans, .MAC
              ANSYS FluentANSYS Inc..cas, .dat, .msh, .jou
              Simcenter STAR-CCM+Siemens Digital Industries Software.sim, .java, .csv
              COMSOL MultiphysicsCOMSOL AB.mph
              OpenFOAM开源(OpenCFD/ESI、OpenFOAM Foundation)字典文件(blockMeshDict等)、.foam

              MSC Nastran / NX Nastran

              🧑‍🎓

              接下来是MSC Nastran的讲解吧。是什么内容呢?


              🎓

              NASA结构分析(NASTRAN)在1960年代开发。MSC软件进行商业化,后来UGS(现Siemens)派生出NX Nastran。MSC在2017年被Hexagon AB收购。

              目前所属: MSC Nastran(Hexagon)、NX Nastran(Siemens Digital Industries Software)



              Abaqus FEA (SIMULIA)

              🧑‍🎓

              Abaqus FEA,具体是怎样的呢?


              🎓

              1978年由HKS(Hibbitt、Karlsson & Sorensen)开发。2005年被Dassault Systèmes收购,并整合到SIMULIA品牌中。

              目前所属: Dassault Systèmes SIMULIA


              🧑‍🎓

              等等,等等,结构分析,也可以用在这样的情况吗?



              ANSYS Mechanical (旧ANSYS Structural)

              🧑‍🎓

              请讲讲"ANSYS Mechanical"!


              🎓

              1970年由Swanson Analysis Systems Inc.(SASI)开发。基于APDL(ANSYS参数化设计语言)。

              目前所属: ANSYS Inc.



              ANSYS Fluent

              🧑‍🎓

              接下来是ANSYS Fluent的讲解吧。是什么内容呢?


              🎓

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

              目前所属: ANSYS Inc.


              🧑‍🎓

              哦~结构分析的讲解,特别有意思! 请继续讲!


              功能比较矩阵

              🧑‍🎓

              预算和时间都有限,性价比最高的是哪个?


              功能NastranAbaqusANSYS MechanicalFluent
              基本功能
              高度功能
              自动化/脚本
              并行计算
              GPU支持

              转换时的风险

              🧑‍🎓

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


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

              • 🧑‍🎓

                啊!是这样! 不同工具间的转换这样的机制啊。


                许可形式

                🧑‍🎓

                "许可形式"听过,但可能理解得不完全……


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

                选择指南

                🧑‍🎓

                最后该选哪个,判断基准请教一下?


                🎓

                在MMS: 压缩欧拉方程的工具选择时需要考虑以下:


                🎓
                • 分析规模: 数万~数亿自由度的可扩展性
                • 物理模型: 必要的本构关系·单元类型的对应状况
                • 工作流: 与CAD的联动、自动化的容易度
                • 成本: 初期投资 + 年度维护 + 教育成本
                • 支持: 技术支持的质量和响应速度


                • 🧑‍🎓

                  哎呀,MMS: 压缩欧拉方程,深度真的很大呢…… 但是有了老师的讲解,我理解得更清楚了!


                  🎓

                  好的,进展不错! 动手实践才是最好的学习。有不懂的地方随时来问。


                  验证数据的可视化

                  显示理论值与计算值的定量比较。合格基准为误差在5%以内。

                  评估项目理论值/参考值计算值相对误差 [%]判定
                  最大位移1.0000.998
                  0.20
                  PASS
                  最大应力1.0001.015
                  1.50
                  PASS
                  自然频率(1阶)1.0000.997
                  0.30
                  PASS
                  反力总和1.0001.001
                  0.10
                  PASS
                  能量守恒1.0000.999
                  0.10
                  PASS

                  判定基准: 相对误差 < 1%: 优良、1~5%: 允许、> 5%: 需要检讨

                  MMS的前沿研究

                  前沿话题和研究趋势

                  🧑‍🎓

                  MMS: 压缩欧拉方程的领域,将来怎样进化呢?


                  🎓

                  观看MMS: 压缩欧拉方程领域的最新研究动向和先进方法。


                  🧑‍🎓