宁坤奇
1 如何求解初始值不一致的瞬态模型?
使用COMSOL Multiphysics设置瞬态模型时,一个常见的错误是初始条件与载荷和边界条件不一致。在进行流体瞬态流动研究时最容易出现这种问题,在任意瞬态模型中也可能出现同类问题。在计算开始时,经常遇到求解器采用非常小的时间步长,或者求解器将报告类似错误消息:“找不到一致的初始值,最后一个时间步不收敛”。解决问题的办法有2种。
(1)使用稳态研究的结果作为瞬态研究的初始值。单个研究可以包含多个步骤,且默认情况下,每个步骤的结果都会作为初始值传递到下一步骤。因此,在瞬态研究步骤之前添加一个稳态步骤,可以先求解稳态假设下的流场,从而为瞬态步骤提供一致的初始值,即替代物理场接口初始特征值中指定的初始值。只要这2个步骤在同一研究中,就不需要更改其他设置,求解完成后将重新计算这2个步骤。这种方法也有一些缺点:首先,稳态解可能根本不存在,或者从数值上得到稳态解非常困难;其次,如果系统是从静止状态开始演化的,瞬态模型的目标可能是研究模型启动时的特性,那么本方法可能不适用。
(2)设置逐渐增加的边界条件。可以在初始值的基础上逐渐增加瞬态模型的载荷和边界条件。最常见的情况是处于平衡状态的系统,其各个位置的初始值均为0。可以使用具有平滑功能的内置阶跃函数,阶跃函数的参数设置和函数图见图1。其他一些内置函数也包含平滑处理选项,默认情况下,所有这些函数在平滑处理区域开始处的时间导数均为0。平滑后的阶跃函数可用于修改载荷和边界条件,进行平滑处理要选择时间跨度,需要注意的是:在层流流动情况下,不能为了引入超声速激波而过快地提高流场速度;对于电磁波问题,流场速度一般不超过光速。如果模型仍然存在收敛问题,可能是因为网格划分不够细。
2 如何提高瞬态模型的收敛性?
COMSOL Multiphysics求解瞬态模型时,需要考虑各物理量随时间的变化。为此,软件基于给定的初始条件,使用时间积分算法计算未知变量随时间的变化情况。在计算过程中,有时收敛较慢,有时不完全收敛。COMSOL Multiphysics提供3种方法求解微分代数方程:向后差分公式法、廣义α法和龙格 库塔法。向后差分公式法和广义α法是隐式方法,龙格 库塔法是显式方法。显式方法根据当前状态下的解直接计算其后状态下的解。隐式方法根据其后状态和当前状态下的解形成方程组并进行求解。隐式方法通常比显式方法更稳定、快速,但显式方法使用的内存更少。软件根据所用的物理场接口自动确定最合适的方法,一般不建议替代默认的求解器方法。如果要查看所使用的求解器,可以在求解器配置的瞬态求解器节点中查看时间步长设置。
调整瞬态求解器可以解决收敛问题。对于默认使用向后差分公式法和自由时间步长求解的扩散、对流和反应等问题,应注意以下3点。
(1)使用事件接口模拟步长变化。如果模型中的载荷或边界条件随时间发生瞬时变化,那么应通过引入事件接口求解。
(2)网格必须足够细化才能模拟流场的变化。特别是对于涉及扩散、对流和反应的问题,不能提前知道场中具有显著空间变化的具体位置,如果网格过于粗化,求解器可能需要采用非常小的时间步减小误差。但是,细化网格会导致求解器采用较大的时间步,代价是模型更大。
(3)初始时间步长。求解器启动时根据总计算时间估计要采用的初始时间步长,因此若对同一模型求解2次,其总时间不同,则初始时间步可能不同。如果要指定初始时间步长,可转到瞬态求解器设置,在时间步长栏中启用初始步长,并输入固定的初始步长值。软件可以自由选择小于该值的步长,但不会使用超过该值的步长。瞬态求解器的初始步长设置窗口见图2。
在处理非收敛模型时,如果瞬态求解器无法收敛,要么在整个仿真过程的某个时间点失败,要么在初始条件下立即求解失败。
如果是在仿真过程中的某个时间点失败,可以使用上述方法提高收敛性。如果网格不够细化或者存在一些正在传播的累积误差,那么绘制结果会特别突出显示。
如果求解器在初始条件下立即求解失败,要仔细检查每个物理场接口中指定的初始条件,以及模型中各物理场的所有边界条件、载荷和约束。如果这些因素不一致,会导致求解器失效。在默认情况下,求解器会试图通过找到与所有边界条件都一致的初始条件更正这一问题,但这可能与预想的结果有很大不同。
3 如何利用对称性简化模型可能产生的问题?
在结构力学中,有些情况下,虽然初始问题看起来是对称的,结果却不一定是完全对称的。
(1)对称结构的特征频率是对称或反对称的,需要取1/2对称几何结构考察2点:第一,针对每一组边界条件,获得所有的特征频率;第二,如果仍存在多次对称,取1/4几何结构进行建模,且必须考虑可能的所有边界条件情况。
(2)在线性化屈曲分析中,对称结构的最低屈曲模态是对称或反对称的。
(3)轴对称只能用于特征值分析,包括特征频率或屈曲,只在计算轴对称特征模态时使用。
(4)反对称边界条件通常与固体的几何非线性分析不兼容,因为在一些反对称截面处,这种约束会让限制有限旋转的应变项消失。
4 如何减小COMSOL Multiphysics模型文件的大小?
COMSOL Multiphysics可以以压缩或未压缩2种状态保存文件,点击File→Preferences→Files可以在这两者之间切换,并在COMSOL Application Files保存栏中改为“优化文件大小”,后续所有操作均保存为压缩文件。
如果不需要将结果保存在模型中,而只想保存未解决的模型,可以右键单击模型构建器中的Mesh节点并选择Clear Mesh,从而删除网格数据,但保留关于如何创建网格的信息。同样,右键单击研究分支并清除解决方案,将删除解决方案数据,但保留有关如何计算解决方案的求解程序信息。重新求解模型将重新创建网格和解决方案数据。
如果可以,只在模型中保留一些解决方案数据,而非全部的求解数据,可以使模型文件减小。
(摘自同济大学郑百林教授《CAE操作技能与实践》课堂讲义)