腐蚀仿真

分类:解析 | 综合版 2026-04-06

腐蚀的理论基础

🎓

异种金属接触腐蚀。电位分布和腐蚀速度的FEM分析。




支配方程




$$ i=i_0\exp(\frac{E-E_{corr}}{\beta}) $$
$$ \text{Galvanic corrosion potential} $$



🧑‍🎓

哇,腐蚀仿真的话题太有意思了!请再讲讲。


离散化手法

🧑‍🎓

这些方程在计算机上怎么实际求解呢?


🎓

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


🎓

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




矩阵求解算法

🧑‍🎓

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


🎓

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



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

也就是说,在有限元法这个阶段手牵手会后来吃苦头,对吧!铭记心间!


商业工具中的实现

🧑‍🎓

那么做腐蚀仿真有什么软件可以用呢?


工具名称开发商/现在所属主要文件格式
COMSOL MultiphysicsCOMSOL AB.mph
Ansys FluentANSYS Inc..cas, .dat, .msh, .jou
Simcenter STAR-CCM+Siemens Digital Industries Software.sim, .java, .csv
ANSYS Mechanical (原ANSYS Structural)ANSYS Inc..cdb, .rst, .db, .ans, .mac

供应商谱系和产品整合历史

🧑‍🎓

各个软件的成长经历好像挺有戏剧性的。是吗?



COMSOL Multiphysics

🧑‍🎓

请给我讲讲"COMSOL Multiphysics"!


🎓

1986年在瑞典成立。以MATLAB联动的FEMLAB开始,后改为COMSOL。在多物理场方面有强项。

现属公司:COMSOL AB



ANSYS Fluent

🧑‍🎓

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


🎓

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

现属公司:ANSYS Inc.




Simcenter STAR-CCM+

🧑‍🎓

接下来讲Simcenter STAR吧。内容是什么?


🎓

由CD-adapco开发。2016年被西门子收购,并入Simcenter品牌。多面体网格是特点。

现属公司:Siemens Digital Industries Software


🧑‍🎓

哦,这样啊!在瑞典成立是那样的机制呀。


文件格式和互操作性

🧑‍🎓

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


格式扩展名类别概要
STEP.stp/.step中立CAD符合ISO 10303的3D CAD数据交换格式。支持形状+PMI。
IGES.igs/.iges中立CAD早期的CAD数据交换规范。曲面数据兼容性存在问题。正在向STEP过渡。
🎓

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


🧑‍🎓

原来格式看似简单,实际上非常深奥呢。


实务注意事项

🧑‍🎓

教科书里没有的"现场智慧"有吗?


🎓

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


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


  • 🧑‍🎓

    腐蚀仿真的整体框架我已经掌握了!从明天开始就在实务中意识到这些。


    🎓

    好的,进展不错!实际动手操作是最好的学习。有不懂的地方随时问我。


    Coffee Break 闲聊

    腐蚀的"幕后黑手"——Butler-Volmer方程揭示的电极反应本质

    腐蚀仿真理论的核心是Butler-Volmer方程。这个方程描述当电极电位偏离平衡多少(过电压)时,阳极(氧化)和阴极(还原)反应速度如何变化。以铁腐蚀为例,铁溶解成Fe²⁺的阳极反应和溶解氧还原的阴极反应同时进行,两者电流平衡的电位被观测为"混成电位"即腐蚀电位。不正确理解这一概念,就无法直观解释仿真中的"提高电位会加速腐蚀""通电防护能停止腐蚀"等现象。腐蚀理论是电化学魅力的浓缩体现。

    腐蚀的数值计算手法


    🧑‍🎓

    腐蚀仿真看似简单,其实非常深奥呀。


    离散化的表述



    🎓

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

    基本方程的离散形式


    🎓

    用公式表示就是这样的。


    $$ i=i_0\exp(\frac{E-E_{corr}}{\beta}) $$
    $$ \text{Galvanic corrosion potential} $$

    🧑‍🎓

    只看公式有点想不通……这是什么意思呀?


    🎓

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



    $$ [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不收敛时需调整设置
        内存模式在核尽可能使用

        单片法

        用单一联立方程组同时求解全部物理场。对强耦合稳定,但实现复杂、内存消耗大。

        分区法(分离迭代法

        独立求解各物理场,在界面交换数据。实现简单,能活用已有求解器。适于弱耦合。

        界面数据传递

        最近邻法(最简单但精度低)、投影法(守恒)、RBF插值(对非一致网格有优势)。守恒性和精度的平衡很重要。

        子迭代

        在各耦合步内进行充分迭代,确保界面条件的一致性。残差准则应按各物理场的典型值缩放。

        Aitken松弛

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

        稳定性条件

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

        腐蚀的实务应用

        🎓

        讲解腐蚀仿真的实务分析流程和注意点。


        🧑‍🎓

        腐蚀仿真看似简单,其实非常深奥呀。


        分析流程

        🧑‍🎓

        从第一步开始怎么做?


        🎓

        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. 分布荷载的选择

          • 🧑‍🎓

            哦,是那样的!过约束要注意,就是这样的机制。


            各商业工具的实现步骤

            🧑‍🎓

            有很多软件吧?各自的特点告诉我!


            工具名称开发商/现在所属主要文件格式
            COMSOL MultiphysicsCOMSOL AB.mph
            ANSYS FluentANSYS Inc..cas, .dat, .msh, .jou
            Simcenter STAR-CCM+Siemens Digital Industries Software.sim, .java, .csv
            ANSYS Mechanical (原ANSYS Structural)ANSYS Inc..cdb, .rst, .db, .ans, .mac

            COMSOL Multiphysics

            🧑‍🎓

            请讲讲"COMSOL Multiphysics"!


            🎓

            1986年在瑞典成立。以MATLAB联动的FEMLAB开始,后改为COMSOL。在多物理场方面有强项。

            现属公司:COMSOL AB



            ANSYS Fluent

            🧑‍🎓

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


            🎓

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

            现属公司:ANSYS Inc.


            🧑‍🎓

            老师的说明很清楚!工具名的疑惑消散了。


            常见失败和对策

            🧑‍🎓

            初学者常见的失败模式有吗?提前知道很有用!


            现象原因对策
            计算不收敛网格品质差、边界条件不当改善网格、检查约束条件
            应力异常大应力奇异点、网格相关回避奇异点、局部细分网格
            位移非现实材料常数错误、单位系混乱确认输入数据
            计算时间过长不必要的细分、低效率求解优化网格、并列计算

            质量保证检查清单

            🧑‍🎓

            教科书里没有的"现场智慧"有吗?


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


            • 🧑‍🎓

              腐蚀仿真的整体框架我已经掌握了!从明天开始就在实务中意识到这些。


              🎓

              好的,进展不错!实际动手操作是最好的学习。有不懂的地方随时问我。


              Coffee Break 闲聊

              海底管道防腐设计——年均数千亿日元的仿真保护

              腐蚀仿真最实际的应用是海底油气管道的阴极保护(CP)设计。海底管道通常埋设在几百米到几千米深处,全长可达数百公里。为防止腐蚀,按一定间隔安装牺牲阳极(锌或铝合金)。"用什么大小的阳极、间隔多少米"的设计依赖仿真。按ISO 15589标准,通过仿真电解质(海水)中的电位分布,确保管道全表面均在防护电位范围(−0.80~−1.10 V vs Ag/AgCl)内。设计失误直接导致年度数亿日元的维修成本。

              腐蚀的腐蚀的软件比较

              🎓

              详细介绍支持腐蚀仿真的主要商业CAE工具的功能比较和各产品的历史背景。


              🧑‍🎓

              腐蚀仿真看似简单,其实非常深奥呀。


              对应工具一览

              🧑‍🎓

              那么做腐蚀仿真有什么软件可以用呢?


              工具名称开发商/现在所属主要文件格式
              COMSOL MultiphysicsCOMSOL AB.mph
              ANSYS FluentANSYS Inc..cas, .dat, .msh, .jou
              Simcenter STAR-CCM+Siemens Digital Industries Software.sim, .java, .csv
              ANSYS Mechanical (原ANSYS Structural)ANSYS Inc..cdb, .rst, .db, .ans, .mac

              COMSOL Multiphysics

              🧑‍🎓

              请讲讲"COMSOL Multiphysics"!


              🎓

              1986年在瑞典成立。以MATLAB联动的FEMLAB开始,后改为COMSOL。在多物理场方面有强项。

              现属公司:COMSOL AB



              ANSYS Fluent

              🧑‍🎓

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


              🎓

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

              现属公司:ANSYS Inc.




              Simcenter STAR-CCM+

              🧑‍🎓

              接下来讲Simcenter STAR吧。内容是什么?


              🎓

              由CD-adapco开发。2016年被西门子收购,并入Simcenter品牌。多面体网格是特点。

              现属公司:Siemens Digital Industries Software



              ANSYS Mechanical (原ANSYS Structural)

              🧑‍🎓

              请讲讲"ANSYS Mechanical"!


              🎓

              1970年由Swanson Analysis Systems Inc. (SASI) 开发。基于APDL(Ansys Parametric Design Language)。

              现属公司:Ansys Inc.


              🧑‍🎓

              原来在瑞典成立的看似简单,实际上非常深奥呢。


              功能比较矩阵

              🧑‍🎓

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


              功能COMSOLFluentStar-CCM+ANSYS Mechanical
              基本功能
              高级功能
              自动化/脚本
              并列计算
              GPU对应

              转换时的风险

              🧑‍🎓

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


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

              • 🧑‍🎓

                哦,是那样的!不同工具间交换数据那样的机制。


                许可证形式

                🧑‍🎓

                "许可证形式"听说过,但可能没真正理解……


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

                选择指南

                🧑‍🎓

                最后怎么选,判断标准告诉我!


                🎓

                在腐蚀仿真工具选择中,要考虑以下因素:


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


                • 🧑‍🎓

                  腐蚀仿真的整体框架我已经掌握了!从明天开始就在实务中意识到这些。


                  🎓

                  好的,进展不错!实际动手操作是最好的学习。有不懂的地方随时问我。


                  Coffee Break 闲聊

                  腐蚀专用软件Beasy诞生——BEM传向世界的英国工具

                  作为世界著名的腐蚀仿真商业工具,Beasy由英国巴斯大学发展的衍生企业于1990年代开发,是基于BEM(边界元法)的软件。在海洋、石油、天然气产业的阴极防护设计中得到广泛应用。长期被英国劳斯莱斯、BP、Shell等工程部门使用。与通用的FEM软件COMSOL和ANSYS相比,Beasy强项在于"只能进行腐蚀分析,但因此具有易用性和精度保证"。在选工具时,"该公司的分析对象(结构物规模、形状、环境)是否与该工具的验证事例相符"是最重要的检查点。

                  腐蚀的先端研究

                  🎓

                  观看腐蚀仿真的最新研究动向和先进手法。


                  🧑‍🎓

                  腐蚀仿真看似简单,其实非常深奥呀。


                  最新的数值手法

                  🧑‍🎓

                  接下来讲最新的数值手法吧。内容是什么?



                  🧑‍🎓

                  只看公式有点想不通……这是什么意思呀?


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


                  • 高性能计算 (HPC) 应对


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

                    腐蚀的故障处理


                    🧑‍🎓

                    腐蚀仿真看似简单,其实非常深奥呀。


                    常见错误和对策

                    🧑‍🎓

                    老师也为腐蚀仿真通宵调试过吗?(笑)



                    1. 收敛失败

                    🧑‍🎓

                    收敛失败,具体是什么意思呢?


                    🎓

                    现象:求解器在指定迭代次数内不收敛,异常结束


                    🎓

                    可能的原因

                    • 网格品质不足(过度扭曲的单元)
                    • 材料参数设置不当
                    • 不当的初始条件
                    • 非线性太强(荷载步不足)

                    🎓

                    对策

                    • 实施网格品质检查(宽高比、雅可比)
                    • 确认材料参数的单位系
                    • 将荷载分为多个步(增加子步数)
                    • 放宽收敛判定准则(但注意精度)

                    🧑‍🎓

                    也就是说,有限元法这个阶段手牵手会后来吃苦头,对吧!铭记心间!



                    2. 非物理结果

                    🧑‍🎓

                    接下来讲非物理结果吧。内容是什么?


                    🎓

                    现象应力/位移/温度等非现实值


                    🎓

                    可能的原因

                    • 边界条件设置错误
                    • 单位系混乱(SI单位与工程单位混合)
                    • 不当的单元类型选择
                    • 应力奇异点存在

                    🎓

                    对策

                    • 确认反力合计(力的平衡)
                    • 检查单位系一致性
                    • 重新检讨单元类型的适当性
                    • 去除或进行子建模处理奇异点

                    🧑‍🎓

                    前辈说"收敛失败一定要好好做"的意思我现在明白了。




                    3. 计算时间超过

                    🧑‍🎓

                    计算时间超过,具体是什么意思呢?


                    🎓

                    现象:计算花费的时间远超预期


                    🎓

                    对策

                    • 优化网格的粗密分布
                    • 活用对称性(1/2、1/4模型)
                    • 优化求解器设置(迭代法、预处理的选择)
                    • 活用并列计算



                    4. 内存不足

                    🧑‍🎓

                    请讲讲"内存不足"!


                    🎓

                    现象:Out of Memory 错误


                    🧑‍🎓

                    前辈说"收敛失败一定要好好做"的意思我现在明白了。


                    🎓

                    对策

                    • 使用核外求解法
                    • 减少网格规模
                    • 确认使用64位版求解器
                    • 增加内存配置

                    🧑‍🎓

                    哇,收敛失败的话题太有意思了!请再讲讲。


                    Nastran代表性错误

                    🧑‍🎓

                    代表性错误,具体是什么意思呢?


                    🎓
                    • FATAL 2012:奇异刚度矩阵 → 检查约束条件
                    • USER WARNING 5291:单元品质差 → 修正网格
                    • SYSTEM FATAL 3008:内存不足 → 调整MEM设置


                    • Abaqus代表性错误

                      🧑‍🎓

                      请讲讲"代表性错误"!


                      🎓
                      • Excessive distortion:单元过度变形 → 确认NLGEOM、改善网格
                      • Zero pivot:约束不足 → 追加边界条件