一、目的

       最开始本来打算仿真阻尼器的流固耦合,用自己设计的模型导进去后发现整体比较复杂,秉着仿真从简到繁的原则,最后把模型简化为图1所示。

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_滑块

图1  简化模型

       目的是为了让其中滑块能够在封闭腔内进行给定信号的运动(我这只仿真了正弦运动),但是这么简单的仿真模型也因为个人能力的不足卡了很久,在此仅记录个人的问题所在及一些简单的解决方案。

二、过程遇到的问题解解决办法

变形域,图3为层流中边界条件的设置,图4为固体力学中边界条件的设置,即指定滑块的运动信号,到此,物理场得得基本设置已经完成。

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_边界条件_02

图2 变形域

 

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_迭代_03

图3 层流边界条件设置

 

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_迭代_04

图4 固体力学边界条件设置

压力点约束条件,具体原理不进行叙述。在固体力学的“指定运动”条件中,an2和step1的信号分别为下图。

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_滑块_05

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_滑块_06

图5 信号

问题1  找不到初值

      下面说明为什么要给定一个阶跃信号,此部分内容包含个人理解,有问题欢迎各位纠正讨论。

找不到初值的情况,这个问题也是卡了我最多时间的一点(最新仿真发现阶跃信号这部分是非必需的,不加也能跑),再次强调这部分内容结合了自己的理解,不敢保证完全无误。-_-!

问题2  不收敛

自动重新划分网格打开,如图6,并且在流固耦合仿真中,建议把求解的步长设小一点,具体就得看网格质量以及模型的运动(还有个人经验),此处,为了偷懒,学着网上资料的设置,步长为0.005s,仿真2秒时间。

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_滑块_07

图6 步长及自动重新划分网格

       然后,是对求解器以下部分进行设置,按理说下面的内容尽量是不用去动的,可惜我这模型好像不改下面的设置同样跑不出来,因此后续设置内容也仅为个人的经验及理解,有问题及建议欢迎批评讨论。

分离式求解器和自动重新划分网格的内容。对于分离式求解器,由于某次仿真过程中,出现达到最大迭代次数的错误,因此我将最大迭代次数进行了适当的增加,如图7所示。

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_迭代_08

图7 迭代次数设置 

速度u2,压力p”、“位移场”、“空间网格位移”、“流-固耦合”、这几个部分的雅克比矩阵更新设为了在每次迭代中,默认是最小,设完之后有时候会报速度u2,压力p出现...问题,不妨再把非线性方法改成自动(牛顿),反正我是这么干的,嘿嘿!

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_迭代_09

图7 分离式求解器设置 

自动重新划分网格进行设置了,不知为何,我这个模型自动重新划分网格中的条件类型如果选网格质量就会报如下错误,自己检查网格质量感觉没问题看,别人的教学视频后,是将其改成失真条件,其他不动就好了。 

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_学习_10

图8 自动重新划分网格错误 

三、仿真效果

        以下是最后模型的仿真效果,再次强调,本篇仅为个人学习记录,有问题的话欢迎大家指正讨论,非常感谢!

基于深度学习的非线性流固耦合系统降阶建模方法 流固耦合设置固体域_学习_11