处理COMSOL求解时初始值不一致 jiahao5943 2022年4月18日 浏览:1987 收藏:1 我们在使用 COMSOL Multiphysics 设置瞬态模型,计算时经常会碰到软件报错:“初始条件与载荷和边界条件不一致”。 在进行流体瞬态流动研究时最容易出现这种问题,在任意瞬态模型中也可能出现同类问题。 在计算开始时,经常遇到求解器采用非常小的时间步长,或者求解器将报告类似错误消息: “找不到一致的初始值,最后一个时间步不收敛”。 碰到这类问题我们该怎么办呢,解决该问题的办法有2种,下面我们一起来看一下。 注意:在使用下列方法的前提下是先检查边界条件、参数设置是否准确,这些都是正确的前提下还是报错“初始条件与载荷和边界条件不一致”。可以下面方法去处理。 解决办法: (1) 使用稳态研究的结果作为瞬态研究的初始值。 单个研究可以包含多个步骤,且默认情况下,每个步骤的结果都会作为初始值传递到下一步骤。 因此,在瞬态研究步骤之前添加一个稳态步骤, 可以先求解稳态假设下的流场,从而为瞬态步骤提供一致的初始值, 即替代物理场接口初始特征值中指定的初始值。只要这 2个步骤在同一研究中,就不需要更改其他设置,求解完成后将重新计算这 2个步骤。 这种方法也有一些缺点: 首先,稳态解可能根本不存在,或者从数值上得到稳态解非常困难; 其次,如果系统是从静止状态开始演化的,瞬态模型的目标可能是研究模型启动时的特性,那么本方法可能不适用。 (2) 设置逐渐增加的边界条件。 可以在初始值的基础上逐渐增加瞬态模型的载荷和边界条件。 最常见的情况是处于平衡状态的系统,其各个位置的初始值均为0。可以使用具有平滑功能的内置阶跃函数,阶跃函数的参数设置和函数图如下图。其他一些内置函数也包含平滑处理选项,默认情况下,所有这些函数在平滑处理区域开始处的时间导数均为0。 平滑后的阶跃函数可用于修改载荷和边界条件,进行平滑处理要选择时间跨度,需要注意的是: 在层流流动情况下,不能为了引入超声速激波而过快地提高流场速度; 对于电磁波问题,流场速度一般不超过光速。 如果模型仍然存在收敛问题,可能是因为网格划分不够细。平滑后的阶跃函数可用于修改载荷和边界条件,以达到我们需要的效果。