STAR-CCM+案例救生艇 | 应用重叠网格技术模拟救生艇落水
本文主要利用重叠网格技术模拟救生船落水过程。 首先看模拟的效果:
问题描述
问题示意图如下图所示。救生艇以如下形态落入水中,请问如何利用CFD模拟该过程?其实,H.J.Morch等人在2008年的时候就对这个问题进行过实验研究,这里我们利用CFD技术模拟这个过程。
几何模型
这个问题涉及的几何模型包含两个几何实体,分别是背景流体区域和重叠网格区域,具体如下图所示。
STAR-CCM+设置
创建计算域并设置边界类型
-
新建一个仿真文件;
-
选择File > Import > Import Surface Mesh...,然后在弹出的窗口中选择几何模型文件lifeBoatOverset.x_b,将几何文件加载进来,模型如下图所示;
-
同时选中Geometry>Parts节点下的Background和Overset两个零部件;
-
右击其中任一个,然后在弹出的菜单中选择Assign Parts to Regions...;
-
在Assign Parts to Regions对话框中设置如下图所示;
-
展开Regions>Background>Boundaries节点,设置背景流域各个边界的类型如下表所示;
节点 边界类型 Back Symmetry Plane Bottom Velocity Inlet Inlet Velocity Inlet Outlet Pressure Outlet Symmetry Symmetry Plane Top Velocity Inlet -
展开Regions>Overset>Boundaries节点,设置重叠网格区域各个边界类型如下表所示。
节点 边界类型 Boundaries Overset Mesh Lifeboat_Wall Wall Symmetry Symmetry Plane
设置物理模型
-
新建一个物理模型连续体;
-
展开Continua>Physics 1节点,双击Models,然后在弹出的窗口中选择物理模型,具体如下图所示。
两个区域的耦合设置
现在Background和Overset这两个区域还是独立的,它们之间并不会产生数据交互,要触发数据交互,就要进行耦合设置,具体步骤如下:
-
同时选中 Background和 Overset这两个区域; -
右击其中一个区域,然后在弹出的菜单中选择 Create Interface> Overset Mesh,这样一个新的 Interface节点就会出现在模型树中,也就耦合了 Background和 Overset这两个区域。
划分体网格
-
右击Geometry>Operations节点,然后选择New>Mesh>Automated Mesh;
-
在Create Automated Mesh Operation对话框中,从零部件列表中选择Background;
-
选择网格划分器:Surface Remesher和Trimmed Cell Mesher,并点击OK;
-
重命名Automated Mesh节点为Background;
-
同理创建另一个自动网格划分方法,重命名为Overset,设置输入零部件为Overset,其他参数同上;
-
右击Geometry>Parts节点,然后选择New Shape Part>Block;
-
设置两个角点坐标如下表所示;
角点1 角点2 X -28.0m 50.0 m Y 0.0 m 12.0 m Z -45.0 m 0.0 m -
点击Create,然后点击Close;
-
重命名Geometry > Parts > Block节点为Overlap;
-
同样的方式,创建另一个加密框,命名为Water Surface,设置角点坐标如下表所示;
角点1 角点2 X -125.0 m 125.0 m Y 0.0 m 50.0 m Z -34.0 m -24.0 m -
再创建一个名为Boat的加密框,设置角点坐标如下表所示;
角点1 角点2 X -18.0 m 4.0 m Y 0.0 m 5.0 m Z -4.0 m 8.0 m -
选择Operations > Background > Default Controls > Base Size节点,设置基准尺寸为5.0 m;
-
右击Operations > Background > Custom Controls节点,然后选择New>Volumetric Control;
-
重命名Volumetric Control为Overlap,选择Custom Controls>Overlap节点,设置零部件Parts为Overlap;
-
选择Custom Controls > Overlap > Controls > Surface Remesher节点,激活Customize Size;
-
选择Overlap > Values > Custom Size,设置Relative to base为25.0,即网格尺寸为基准值的25%;
-
选择Custom Controls > Overlap > Controls > Trimmer节点,然后激活Customize Isotropic Size;
-
在Operations > Background > Custom Controls节点再下新建一个Volumetric Control,重命名为Water Surface;
-
选择Custom Controls > Water Surface节点,设置Parts为Water Surface;
-
在Water Surface>Controls>Surface Remesher节点下激活Custom Size选项,并设置表面重构的相对尺寸为100%;
-
选择Water Surface > Controls > Trimmer节点,并激活Customize Anisotropic Size;
-
选择Water Surface > Values > Trimmer Anisotropic Size节点,并激活Custom X Size, Custom Y Size 和 Custom Z Size;
-
选择Trimmer Anisotropic Size > Relative Z Size节点,并设置Percentage of Base为50.0;
-
选择Background > Meshers > Trimmed Cell Mesher节点,激活Perform Mesh Alignment;
-
选择Background > Default Controls > Mesh Alignment Location节点,并设置Location为[-125.0, 0.0, 0.0] m;
-
选择Background > Default Controls > Volume Growth Rate节点,并设置Default Growth Rate为Slow;
-
设置Surface Growth Rate为Slow;
-
选择Operations > Overset > Default Controls > Base Size节点,设置基准尺寸为1.0 m;
-
在Overset自动网格节点下,新建一个体积控制,将其重命名为Boat;
-
选择Custom Controls > Boat ,设置Parts零部件为Boat;
-
选择Custom Controls > Boat > Controls > Surface Remesher节点,激活Customize Size;
-
选择Boat > Values > Custom Size节点,设置Relative to base为50.0;
-
在软件上部快捷工具栏中点击Generate Volume Mesh,生成体网格,划分好的网格如下图所示。
移动重叠区域
-
右击Regions > Overset选择Transform > Translate...;
-
然后在Translate Regions窗口中输入参数如下图所示:
-
右击 Tools > Coordinate Systems > Laboratory > Local Coordinate Systems节点,然后选择 New > Cartesian,然后在 Create Cartesian Coordinate System面板中输入如下图所示的参数:
-
点击Create,并点击Close关闭局部坐标系创建面板,重命名局部坐标系为Boat Rotation;
-
右击Regions > Overset,然后在弹出的菜单中选择Transform > Rotate...;
-
在弹出的Rotate Regions窗口中输入如下图所示参数:
旋转后的网格如下图所示:
创建欧拉相
-
右击Continua > Physics 1 > Models > Multiphase > Eulerian Phases节点,然后选择New;
-
重命名Phase 1为Water;
-
双击Water>Models节点,然后在Water Model Selection窗口中激活如下图所示的模型:
-
重复上述步骤创建空气相,激活如下图所示的模型:
设置DFBI运动和六自由度体
-
打开Tools > Motions节点;
-
右击Motions节点,然后选择New > DFBI Rotation and Translation,这样就创建了一个新的DFBI Rotation and Translation节点;
-
选择Regions > Overset > Physics Values > Motion Specification节点,设置运动为DFBI Rotation and Translation;
-
右击DFBI > 6-DOF Bodies,选择New Body > 3D > Continuum Body;
-
重命名Body 1为Boat;
-
选择DFBI > 6-DOF Bodies > Boat节点,点击右边更多按钮,选择Lifeboat_wall边界作为Body Surface;
-
设置自由体的质量为10000.0 kg;
-
选择DFBI > 6-DOF Bodies > Boat > Initial Values > Moment of Inertia节点,设置如下图所示;
-
选择Initial Values > Center of Mass节点,设置位置为[-8.22, 0.0, -24.329] m;
-
选择Initial Values > Velocity节点,设置数值为[0.0, 0.0, -22.0] m/s;
-
选择DFBI > 6-DOF Bodies > Boat > Free Motion节点,设置如下图所示。
定义VOF波
-
右击Continua > Physics 1 > Models > VOF Waves > Waves节点,然后选择New > Flat;
-
重命名Flat Vof Wave 1为Flat Wave;
-
选择Flat Wave节点,设置Point on Water Level为[0.0, 0.0, -30] m,具体如下图所示。
设置初始条件
编辑Continua>Physics 1>Initial Conditions节点,设置属性如下表所示:
节点 | 属性 | 设置 |
---|---|---|
Volume Fraction | Method | Composite |
Composite > Water | Method | Field Function |
Scalar Function | Volume Fraction of Heavy Fluid of Flat Wave | |
Composite > Air | Method | Field Function |
Scalar Function | Volume Fraction of Light Fluid of Flat Wave | |
Velocity | Method | Field Function |
Vector Function | Velocity of Flat Wave | |
Pressure | Method | Field Function |
Scalar Function | Hydrostatic Pressure of Flat Wave |
设置边界条件
-
编辑Regions>Background>Boundaries>Inlet节点,设置属性如下表所示:
节点 属性 设置 Physics Conditions Velocity Specification Method Components Physics Values Velocity Method Field Function Vector Function Velocity of Flat Wave Volume Fraction Method Composite Composite > Water Method Field Function Scalar Function Volume Fraction of Heavy Fluid of Flat Wave Composite > Air Method Field Function Scalar Function Volume Fraction of Light Fluid of Flat Wave -
编辑Regions>Background>Boundaries>Outlet节点,设置属性如下表所示:
节点 属性 设置 Physics Values Pressure Method Field Function Scalar Function Hydrostatic Pressure of Flat Wave Volume Fraction Method Composite Composite > Water Method Field Function Scalar Function Volume Fraction of Heavy Fluid of Flat Wave Composite > Air Method Field Function Scalar Function Volume Fraction of Light Fluid of Flat Wave -
编辑Regions>Background>Boundaries>Bottom节点,设置属性如下表所示:
节点 属性 设置 Physics Conditions Velocity Specification Method Components Physics Values Velocity Method Field Function Vector Function Velocity of Flat Wave Volume Fraction Value [1.0, 0.0] -
编辑Regions>Background>Boundaries>Top节点,设置属性如下表所示:
节点 属性 设置 Physics Conditions Velocity Specification Method Components Physics Values Velocity Method Field Function Vector Function Velocity of Flat Wave Volume Fraction Value [0.0, 1.0]
求解器设置
-
选择 Solvers> Implicit Unsteady节点,设置时间步长为0.0025 s,并设置时间离散为2阶; -
选择 Stopping Criteria> Maximum Inner Iterations节点,确认最大内迭代步数为5; -
选择 Stopping Criteria> Maximum Physical Time节点,设置 Max Physical Time为0.5 s; -
选择 Stopping Criteria> Maximum Steps节点,取消激活 Enable。
设置场景
-
新建一个标量场;
-
重命名Scalar Scene 1节点为Volume Fraction of Water;
-
选择Scenes>Volume Fraction of Water>Scalar 1>Parts节点,点击Parts属性右侧的“更多”按钮;
-
然后在弹出的Parts对话框中选择边界如下图所示;
-
展开 Scenes> Volume Fraction of Water> Scalar 1,选择 Scalar Field,然后设置函数为 Volume Fraction> Volume Fraction of Water。
计算结果
-
点击工具栏中的初始化,可以看到初始流场结果如下图所示;、
-
计算结束后形成的动画结果如文章开头所示。 完。
文章来源:CFD日记