求解器收敛性确认与诊断

分类:解析 | 集成版 2026-04-06
CAE visualization for solver convergence theory - technical simulation diagram
求解器收敛性确认与诊断

求解器收敛性确认与诊断的理论基础

概要

🧑‍🎓

老师!今天是关于求解器收敛性确认与诊断的讲座吧?这是什么东西?


🎓

非线性解析的收敛判定基准。残差范数与增量范数的监视。收敛困难时的调试手法。




支配方程




$$ \|\mathbf{R}_n\| < \varepsilon_{abs} + \varepsilon_{rel}\|\mathbf{R}_0\| $$
$$ \frac{\|\delta u_n\|}{\|\Delta u_n\|} < \text{tol} $$




离散化手法

🧑‍🎓

这个方程式在计算机上究竟怎么实际求解?


🎓

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


🎓

采用弱形式(变分形式)的转换,使用试函数与形状函数通过Galerkin法进行表述。单元类型的选择(低阶单元 vs. 高阶单元完全积分 vs. 降低积分)直接关系到解的精度与计算成本的权衡。




矩阵求解算法

🧑‍🎓

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


🎓

通过直接法(LU分解Cholesky分解)或迭代法(CG法GMRES法)求解联立方程组。对于大规模问题,前处理迭代法效果显著。



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

也就是说,在有限元法的地方偷工减料的话,之后会吃亏。这我得铭记于心!


商用工具中的实现

🧑‍🎓

那么,做求解器收敛性确认与诊断的话,有什么软件可以用?


工具名开发商/现在主要文件格式
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 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%: 需检讨

    求解器收敛性确认与诊断的数值计算手法

    数值手法详细说明

    🧑‍🎓

    具体用什么算法来求解求解器收敛性确认与诊断?



    🧑‍🎓

    老师的说明易于理解!关于求解器收敛性确认与诊断的困惑已经消散。


    离散化的数学表述



    🎓

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

    基础方程式的离散形式


    🎓

    用数式表示就是这样。


    $$ \|\mathbf{R}_n\| < \varepsilon_{abs} + \varepsilon_{rel}\|\mathbf{R}_0\| $$
    $$ \frac{\|\delta u_n\|}{\|\Delta u_n\|} < \text{tol} $$

    🧑‍🎓

    嗯,光看式子还是有点懵…这代表什么啊?


    🎓

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



    $$ [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尽可能

        低阶单元

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

        高阶单元

        在相同网格上实现更高精度。计算成本增加,但所需单元数常可减少。

        牛顿·拉夫逊法

        非线性问题的标准手法。在收敛半径内二次收敛。$||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%: 需检讨

        求解器收敛性确认与诊断的实务应用

        实践指南

        🧑‍🎓

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


        🎓

        解说求解器收敛性确认与诊断的实务性解析流程与注意事项。


        🧑‍🎓

        老师的说明易于理解!关于求解器收敛性确认与诊断的困惑已经消散。


        解析流程

        🧑‍🎓

        从第一步开始教我!应该从什么开始?


        🎓

        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 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 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%: 需检讨

              求解器收敛性确认与诊断的软件比较

              商用工具比较

              🧑‍🎓

              有各种各样的软件吧?分别给我讲讲特色!


              🎓

              对求解器收敛性确认与诊断响应的主要商用CAE工具的功能比较与各产品的历史背景进行详细解说。


              🧑‍🎓

              老师的说明易于理解!关于求解器收敛性确认与诊断的困惑已经消散。


              对应工具一览

              🧑‍🎓

              那么,做求解器收敛性确认与诊断的话,有什么软件可以用?


              工具名开发商/现在主要文件格式
              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 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.



              Ansys Fluent

              🧑‍🎓

              接下来是Ansys Fluent的话题吧。内容是什么?


              🎓

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

              目前所属:Ansys Inc.


              🧑‍🎓

              哇~结构解析的话题超级有意思!请多给我讲讲。


              功能比较矩阵

              🧑‍🎓

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


              功能Nastran