MMS(制造解法)的概述和步骤

分类:分析 | 统合版 2026-04-06
CAE visualization for mms overview theory - technical simulation diagram
MMS(制造解法)的概述和步骤

MMS(制造解法)的概述和步骤的理论基础

概述

🧑‍🎓

老师!今天是MMS(制造解法)的概述和步骤的讲解,对吗?这是什么东西呢?


🎓

Method of Manufactured Solutions。假设任意解,代入支配方程式导出源项。验证离散化误差的收敛阶数。



🧑‍🎓

我明白了…假设任意解看似简单,但实际上内涵很深呢。


支配方程式




$$ \mathcal{L}(u_{mms}) = f_{mms} $$
$$ E = \|u_h - u_{mms}\|_{L^2} = Ch^p + \text{H.O.T.} $$



🧑‍🎓

嗯,单看公式还是不太明白…这些代表什么意思呢?


离散化手法

🧑‍🎓

这个方程式在计算机上具体怎么求解呢?


🎓

用有限元法(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 NastranSiemens 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 Software进行商用化,后来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 Parametric Design Language)。

现在的所属:Ansys Inc.


🧑‍🎓

哇,结构分析的讲解真的很有意思!请继续讲。


文件格式和互操作性

🧑‍🎓

不同软件间相互转换数据的时候需要注意什么吗?


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

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


🧑‍🎓

我明白了…格式看似简单,但实际内涵很深呢。


实务上的注意事项

🧑‍🎓

教科书里没有的「实战知识」有吗?


🎓

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


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



  • 🎓

    嗯,做得不错!切身体验是最好的学习方法。有不懂的随时问哦。


    验证数据的可视化

    理论值和计算值的定量比对。误差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)| $$

    基础方程式的离散形式


    🎓

    用公式表示的话就是这样。


    $$ \mathcal{L}(u_{mms}) = f_{mms} $$
    $$ E = \|u_h - u_{mms}\|_{L^2} = Ch^p + \text{H.O.T.} $$

    🧑‍🎓

    嗯,单看公式还是不太明白…这些代表什么意思呢?


    🎓

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



    $$ [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) or 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. 预处理 (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. 分布荷载的选择

          • 🧑‍🎓

            啊,这样啊!过约束注意就是这样的原理。


            按商用工具的实现步骤

            🧑‍🎓

            有那么多软件呢?各个的特点给我讲讲!


            工具名称开发商/现在主要文件格式
            MSC Nastran / NX NastranMSC Nastran(Hexagon)、NX NastranSiemens 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 Software进行商用化,后来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


            🧑‍🎓

            老师的讲解很容易理解!对各个软件的混淆终于清晰了。


            常见失败和对策

            🧑‍🎓

            初学者容易犯什么错误?想事先知道!


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

            质量保证检查清单

            🧑‍🎓

            教科书里没有的「实战知识」有吗?


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



            • 🎓

              嗯,做得不错!切身体验是最好的学习方法。有不懂的随时问哦。


              验证数据的可视化

              理论值和计算值的定量比对。误差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 NastranSiemens 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 Software进行商用化,后来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)