算例精选STAR-CCM+模拟船航行|DFBI:顶头波中的船
目 录
内容:
导入网格,命名模拟
设置模型
设置材料特性
选择 6 自由度运动模型
设置体初始坐标系
创建 6 自由度体
定义 VOF 波
设置初始条件
设置边界条件
设置求解器参数和停止条件
创建自由表面等值面
创建自定义颜色映射
可视化自由表面
创建 DFBI 显示器
导出场景动画的图像
报告、监视和绘图
初始化并运行模拟
可视化结果
总结
1.摘要
本教程演示如何使用具有自由表面流体的六自由度求解器对面临顶头波的船体运动建模。STAR-CCM+中的相应功能提供初始条件和波生成。
2.导入网格,命名模拟
启动 Simcenter STAR-CCM+,导入提供的网格,然后保存模拟。
要导入网格:
1. 以适用于您工作环境的方式启动Simcenter STAR-CCM+,然后从菜单栏中选择“新建模拟”选项。
2. 从已下载教程文件的motion文件夹导入三维六面体单元网格 boat.ccm。
3. 将该新模拟另存为boat.sim。
3.设置模型
激活数个物理模型以模拟作用于船体上的力。本模拟通过使用“流体域体积”模型,对同一连续体内的两种流体(空气和水)的行为建模。
由于存在处于不同相的两种流体,所以激活欧拉多相模型,并使用重力模型将两种流体受到的重力作用纳入考虑之中。使用默认的 K-Epsilon 湍流模型来模拟湍流对流体的影响。默认的物理连续体是在导入网格时创建的。所有必要的模型均使用此连续体定义。
1. 对于物理连续体连续体 > 物理 1,按顺序选择下列模型:
2. 单击关闭。
3. 保存模拟 。
4. 设置材料特性
设置欧拉相的材料特性。
在船窗口中,打开连续体节点。物理1节点的颜色已经从灰色变为蓝色,这表明已经激活该连续体的模型。
1. 打开物理 1 > 模型节点。
该节点内显示选定模型。
2. 打开多相节点。
在欧拉相节点下定义混合相中各个相所对应的材料。
3. 右键单击欧拉相节点,选择新建以创建名称为相1的相节点
4. 将相1节点重命名为水。
此时需要设置模型以确定水相的行为。
5. 右键单击欧拉相 > 水 > 模型节点,然后选择选择模型...
6. 从材料组合框中选择液体。
7. 从状态方程组合框中选择恒密度。
8. 为第二个相重复以上步骤,这一次选择气体而不选择液体,然后指定恒密度。
9. 将该相重命名为空气。
在两种情况下,均使用适合各相的默认材料(以水作为液相而以空气作为气相),因此无需对材料特性做进一步的更改。要查看材料选择,可展开欧拉相父节点内的水和空气节点。
5.选择6自由度运动模型
要激活6自由度运动求解器,可创建相关的DFBI运动对象,然后将该对象指定给流体区域。在本例中,需要DFBI旋转和平移运动。要选择6自由度运动模型:
1. 打开工具 > 运动节点。
默认的固定运动随即显示出来。
2. 右键单击运动节点,然后选择新建 > DFBI 旋转和平移,如下图所示。
3. 一个名称为 DFBI 旋转和平移的新节点被添加到运动管理器。
为流体区域选择运动指定节点内的这个新建的运动。
4. 选择区域 > 区域 1 > 物理值 > 运动指定节点,然后将运动设置为 DFBI 旋转和平移。
在区域上设置DFBI运动这一操作会让对象树上的DFBI管理器节点显示出来,并将 6 自由度求解器和6自由度运动节点添加到求解器管理器。
6.设置体初始坐标系
6 自由度求解器必须知道体相对于基准坐标系的初始方向。因此,定义局部坐标系,其中的 X 轴与体的前向对齐,Z 轴与竖直方向对齐。
要设置体初始坐标系:
1. 确保几何场景 1 已打开。
2. 打开工具 > 坐标系节点,然后右键单击基准 > 局部坐标系节点。从弹出菜单中选择新建 > 笛卡尔。
创建笛卡尔坐标系窗口显示在资源管理器窗格中。
3. 将 i 方向 的 X 值设置为 -1,将 j 方向的 Y 值设置为 -1,如下图所示。
4. 单击创建,然后单击关闭。
此节点在对象树中显示为笛卡尔1。
5. 将笛卡尔1节点重命名为船初始方向。
注: 坐标系的位置和方向可在几何场景1中查看。选择对象树中的船初始方向节点,然后视需要旋转场景中的模型。
7.创建6自由度体
下一步骤是定义浮动体的表面及其属性。
要定义表面及其属性,首先创建一个 6 自由度体并将表示船体的边界指定给该体:
1. 右键单击 DFBI > 6 自由度体节点,然后从弹出菜单中选择新建体 > 3D > 连续体。
2. 将体 1 节点重命名为船
3. 选择船节点,单击体表面属性右侧的自定义编辑器按钮 。选择对象对话框随之显示出来。
4. 展开区域和 Region_1 节点,然后勾选船体节点的复选框。单击确定以关闭对话。
5. 将体质量设置为400.0 kg。
6. 为在启动体运动之前展开流体求解,请将释放时间属性设置为0.5 s。
在本模拟中,仅允许体围绕Y轴旋转,藉此模拟顶头波中的运动。这意味着必须定义围绕Y轴的惯性矩。
7. 选择船 > 初始值 > 惯性矩节点:
a) 将对角分量设置为 [1000.0, 1000.0, 1000.0] kg-m^2。
b) 将坐标系设置为基准->船初始方向。
c) 激活使用质心。
先前创建的坐标系定义体的初始方向。
8. 选择船 > 初始值 > 方向节点,然后将坐标系设置为基准->船初始方向。
为保持一致,还需要在同一坐标系中指定质心。由于位置在原点,因此只需定义坐标系。
9. 要指定质心的坐标系,选择船 > 初始值 > 质心节点,然后将坐标系设为基准->船初始方向。虽然创建6自由度体时已配有自由运动选项,但仍需要为体指定可以使用的移动方式。在本例中,该体必须可以沿 Z 轴方向平移(升降),沿 Y 轴方向转动(俯仰)。
10.选择 DFBI > 6 自由度体 > 船 > 自由运动节点,然后勾选Z轴向运动和Y 轴向旋转属性。
8.定义VOF波
使用 Simcenter STAR-CCM+ 中的VOF波物理模型可定义瞬态边界条件以模拟自由表面上的波。
VOF波模型依据用户定义的波参数生成许多场函数。可在对象树的适当节点中将这些场函数用作边界和初始条件。
1. 要创建VOF波,右键单击连续体 > 物理 1 > 模型 > VOF 波 > 波节点,然后选择新建 > 五阶。
2. 将五阶 Vof波1节点重命名为顶头波。
3. 编辑顶头波节点,然后设置下列属性:
4. 选择顶头波 > 波长指定节点,并将波长设置为 6.0 m。
9.设置初始条件
使用与先前定义的 VOF 波关联的场函数设置初始条件。
设置的初始条件是自由表面波分布、相内的速度分布以及流体静压。
要设置初始条件:
1. 编辑连续体 > 物理 1 > 初始条件节点,然后设置下列属性:
10.设置边界条件
此几何有四个边界:
1. 船体上的非滑移壁面边界
2. Y = 0.0处的 Z-X 平面上的对称边界
3. 下游面上的压力出口
4. 其余所有边界上的速度入口
在最初的网格导入过程中已正确设置边界类型,因此只需设置与各类型相对应的条件。默认条件适合对称平面和船体上的非滑移壁面边界。将波条件应用于压力出口和速度入口。
入口边界
顶头波通过入口边界进入模拟。使用场函数来定义此迎头波。
要设置入口边界:
1. 编辑区域 > Region_1 > 边界 > 入口节点,然后设置下列属性:
压力边界
顶头波通过压力边界离开域。使用场函数定义边界波。
要设置压力边界:
1. 编辑区域 > Region_1 > 边界 > 压力节点,然后设置下列属性:
11.设置求解器参数和停止条件
由于本模拟是瞬态模拟,所以设置时间步、各时间步内允许的最大内部迭代次数以及获得求解所用的总体物理时间。
1. 选择求解器 > 隐式非稳态节点,然后将时间步设为0.01 s
2. 选择停止条件 > 最大内部迭代节点,确保将最大内部迭代设置为5
3. 选择停止条件 > 最大物理时间节点,将最大物理时间设置为2.0 s
12.创建自由表面等值面
对船体随着时间的推移在迎头波中的运动进行可视化是十分有益的。
要可视化此运动,可创建显示具有自由表面的船体的标量场景,并在模拟的每个时间步将此场景作为图形文件写出。最终的文件集可用于生成自由表面和船体运动的动画。要在标量场景中绘制水的表面绘图,首先依据网格单元中水的体积分数来创建等值面:
1. 右键单击衍生零部件节点,然后选择新建零部件 > 等值面...。
2. 在创建等值面对话框中,将标量设为体积分数 > 水的体积分数。
3. 让提取模式保持单值设置。
4. 将等值设置为0.5。
5. 选择显示面板中的现有显示器 > 表面 1。
6. 单击创建,然后单击关闭
7. 将等值面节点重命名为水表面
13.创建自定义颜色映射
为使水表面呈现蓝色以便于可视化,可创建自定义颜色映射。
将自由表面的颜色手动设置成统一的蓝色。首先,在工具节点内创建一个自定义颜色映射:
1. 右键单击工具 > 颜色映射节点,然后选择新建。
2. 在创建颜色映射对话框中,单击确定。
3. 将用户1节点重命名为水。
4. 选择工具 > 颜色映射 > 水节点,然后单击编辑器图标打开拟编辑的颜色映射属性。
5. 单击并拖动蓝色控制点一直向右,以便颜色条完全呈蓝色。
6. 将颜色间距设置为 RGB。
完成的对话框如下所示。
14.可视化自由表面
现在使用水表面零部件创建标量场景。
1. 右键单击场景节点,然后选择新建场景 > 标量。
2. 选择场景 > 标量场景 1 > 轮廓1节点,然后停用轮廓。
3. 选择标量 1 > 零部件节点,然后将零部件设置为衍生零部件 > 水表面。
4. 选择标量场节点,然后将函数设置为体积分数 > 水体积分数。
a) 将剪切设置为关闭。
b) 将自动范围设置为关闭。
c) 将最小值设为 0.5。
d) 将最大值设为 0.5。
此时可返回场景 > 标量场景 1 节点以完成对其属性的设置。
5. 选择场景 > 标量场景 1 > 标量 1 > 颜色条节点,然后将色图设为水。
6. 禁用阴影。
7. 将层数设置为 2(因为水颜色图中只有两个点)。
8. 禁用可见,这是因为要将自由表面显示为统一的颜色:不需要颜色条。
要提供船体的完整表示,需要做一些额外更改。
9. 选择场景 > 标量场景 1 > 标量 1 节点,然后将轮廓样式设为平滑填充。
10.打开专家属性,将转换设置为对称 1。
为改进显示效果,需要对标量场景照明做一些调整。
11.右键单击场景 > 标量场景 1 > 属性 > 照明节点,然后选择选项顶部照明。仅第一个照明保持激活。
12.打开照明节点,选择照明2节点。
13.激活照明2节点的启用。
15.创建DFBI显示器
将两个显示器添加到场景以显示船的质心以及作用于船上的力和力矩。
1. 右键单击场景 > 标量场景 1,然后选择新显示器 > DFBI
2. 选择 DFBI 1 > 零部件节点,然后将零部件设置为6自由度体 > 船。
3. 选择 DFBI 1节点,然后将不透明度设置为0.5
4. 将转换设置为对称 1。
船和显示质心位置的图标随即出现。
5. 右键单击场景 > 标量场景1,然后选择新显示器 > DFBI
6. 选择 DFBI 2 > 零部件节点,然后将零部件设置为6自由度体 > 船 > 外力与力矩 > 流体力与力矩。
7. 选择 DFBI 2 > 相对尺寸节点,然后将矢量图形长度(%)设置为50
8. 选择 DFBI2节点,然后将矢量长度设置为矢量幅值。
力和力矩是在运行过程中计算的。
16.导出场景动画的图像
准备自由表面动画的最后一步是让 Simcenter STAR-CCM+ 创建标量场景 1 每个时间步的硬拷贝。
1. 选择场景 > 标量场景 1 > 属性 > 更新节点,然后将触发器设置为时间步。
2. 将输出目录设置为指向文件系统中可以保存多个图像的适当文件夹。
3. 输入水表面作为基本文件名属性的值。从此场景中创建的图像文件的文件名中均包含水表面。
4. 激活保存至文件。
此时,一个红色星号出现在对象树中的标量场景1节点的旁边。
5. 选择更新 > 硬拷贝节点,并设置以下属性:
17.报告、监视和绘图
在本模拟中使用报告监视器绘制船体随着时间推移在入射波中的运动的动态响应图。
1. 右键单击报告节点,然后选择新报告 > DFBI > 6 自由度体平移。
一个名称为 6 自由度体平移 1 的节点出现在报告节点内。
2. 将 6 自由度体平移 1 节点重命名为 Z 轴向平移
3. 选择 Z 轴向平移节点,然后将方向设置为 [0.0, 0.0, 1.0]。
创建第二个报告以监视围绕 Y 轴的旋转角度。
4. 右键单击对象树中的报告节点,然后选择新报告 > DFBI > 6 自由度体方向。
5. 将 6 自由度体平移1节点重命名为Y轴向旋转
6. 选择 Y 轴向旋转节点,然后将角度报告选项设置为旋转Y轴。
依据这些报告创建监视器和绘图。
7. 首先选择报告 > Y 轴旋转节点,然后在按下 Ctrl 键的同时,选择Z轴平移节点。
8. 右键单击节点并选择选项根据报告创建监视器和绘图
根据报告创建绘图对话框随即出现。
9. 选择多绘图(每一个报告一个绘图)选项。
名称分别为 Z 轴向平移监视器绘图和 Y 轴向旋转监视器绘图的两个新节点出现在绘图节点下方。
打开与这些节点对应的绘图进行预览。
为这些绘图提供数据的监视器的默认更新频率是每个迭代更新一次。由于本模拟是非稳态模拟,因此最好每个
时间步(而非每个迭代)更新监视器一次。
10.打开模拟树中的监视器节点,使用 Ctrl + 单击方法同时选择 Y 轴向旋转监视器和 Z 轴向平移监视器节点。
11.在属性窗口中,将触发器设置为时间步。
18.初始化并运行模拟
为确认应用于边界的初始条件正确,Simcenter STAR-CCM+ 允许先单纯执行求解器初始化,然后使用适当的场景查看结果。
1. 要初始化,单击工具栏中的 (初始化求解)按钮或使用求解 > 初始化求解菜单项。
2. 选择标量场景1窗口以查看初始化结果。使用鼠标键按下图所示调整模型方向和尺寸。
在运行过程中,作用于半个船体的力(红色)和力矩(蓝色)矢量会被显示出来。要显示作用于另一半船体的矢量,启用对称转换:
3. 选择 DFBI2节点,然后将转换设置为对称1。
力矢量(极矢量)镜像到对称平面上。力矩矢量(轴矢量)保持其幅值,但因反射而改变方向。要清除作用于体的力或力矩,取消选择 DFBI2节点属性中的适当框。为减少场景混乱,本次运行中仅查看作用于一半船体的力和力矩。
4. 选择DFBI2节点:
将转换设置为标识。激活力和力矩。
5. 单击工具栏中的 (运行)按钮。
模拟结束时的 Y 轴向旋转监视器绘图如下所示。
19.可视化结果
2.0s后船体上的压力分布被绘制在标量场景中。
1. 右键单击场景节点,然后从弹出菜单中选择新建场景 > 标量。
2. 将标量场景2节点重命名为 Hull Pressure(船体压力)
3. 选择场景 > Hull Pressure(船体压力) > 轮廓 1 节点,然后停用轮廓。
所有可见的轮廓均从船体压力屏幕中删除。
4. 选择 Hull Pressure(船体压力) > 标量 1 > 零部件节点,然后单击零部件属性的右侧。
5. 在出现的对话框中,展开区域和Region_1 节点。选择船体节点,然后单击确定。
6. 选择 Hull Pressure(船体压力) > 标量 1 > 标量场节点,然后将函数设为压力。
7. 选择 Hull Pressure(船体压力) > 标量 1 节点,然后将轮廓样式设为平滑填充。
8. 展开专家属性,然后将转换设置为对称 1。
使用鼠标控制钮按需要缩放场景和调整方向。船头的细节图如下所示。
20.总结
本教程演示如何使用具有自由表面流体的六自由度求解器对面临顶头波的船体运动建模。
本教程介绍了下列 Simcenter STAR-CCM+ 功能:
• 激活6自由度模型。
• 创建VOF波并将其用于初始和边界条件。
• 使用衍生零部件获取自由表面流体的可视化。
• 将瞬态模拟期间的标量场景的连续图像写入磁盘。
文章来源:CFD入门到精通