首页 理论教育 Cmrflow软件模块详解

Cmrflow软件模块详解

时间:2023-06-27 理论教育 版权反馈
【摘要】:表3-1Cmrflow 软件的运行环境及相应模块下面主要介绍各子模块控制文件和输出文件的详细说明。sglflow 模块以m6 机翼为例, Cmrflow 模块以missile 文件名为例。表3-2sglflow_sel 的输出文件列表 m6.mesh。图3-5Cmrflow 模块计算流程1.控制文件Cmrflow 软件输入的控制文件与sglflow 的输入控制文件基本相同, 就是多了解算器控制文件6DOF.par 和后处理控制文件geometry.par。

Cmrflow软件模块详解

Cmrflow 软件包含用于求解飞行器气动力的sglflow 模块和用于模拟多体分离的Cmrflow 模块, 且提供了各功能模块在不同环境下的运行版本, 主要包括Windows 系列操作系统和Linux 操作系统的RedHat 系列。 Cmrflow 软件的运行环境及相应模块如表3 -1 所示。

表3-1 Cmrflow 软件的运行环境及相应模块

下面主要介绍各子模块控制文件和输出文件的详细说明。 sglflow 模块以m6 机翼为例, Cmrflow 模块以missile 文件名为例。

3.2.2.1 sglflow 模块介绍

sglflow 模块主要用于求解飞行器气动力, 其计算流程如图3 -1 所示。

1.控制文件

输入的控制文件, 对于软件来说是不可缺少的。 控制文件主要用于输出文件命名、 计算格式选择、 限制器选择等; 不同的计算外形和条件需要不同的输入控制文件; 一份合适的输入文件对更加精确地模拟流场起着重要作用。

(1) 前处理控制文件: sglflow_pre.par。 控制文件sglflow_pre.par 将ICEM CFD 生成的网格转化为sglflow 软件解算器需要的数据格式。

图3-1 sglflow 模块计算流程

(2) 求解控制文件: sglflow_slv.par 和geometry.par。 控制文件sglflow_slv.par主要用于输入计算条件、 选择计算使用的格式等。 控制文件geometry.par 主要用于输入网格的几何信息。

(3) 后处理控制文件: sglflow_post.par。 控制文件sglflow_post.par 主要指定需要输入的后处理显示文件名称及其所在目录, 并生成field_view 格式的流场显示文件名称及所在目录。

2.程序运行

记事本方式打开控制文件∗.par, 根据需要修改有关参数设置并保存。前、 后处理直接运行sglflow_pre_sel.exe 和sglflow_post_sel.exe 即可。

软件提供的解算器有串行方式和并行方式两种。 在串行方式下, 直接运行sglflow_slv_sel.exe 即可。 并行方式必须在本机安装有并行计算编译环境的前提下才能运行, 其启动方式是在命令行模式下输入“mpiexec-n 8 sglflow_slv_mpi.exe”, 其中, 8 是计算所指定的CPU 个数, 可以根据需要来自己确定。

3.输出文件

1) sglflow_sel 的输出文件列表及输出文件的详细描述

sglflow_sel 的输出文件列表如表3 -2 所示。

表3-2 sglflow_sel 的输出文件列表

(1) m6.mesh。 该文件是转化后的流场解算器网格输入文件, 为二进制文件。

(2) solsurf_num_m6.dat。 该文件用于记录物面各部分的编号, 便于对各物面气动力积分, 其标记方式如图3 -2 所示。

图3-2 solsurf_num_m6.dat 文件的标记方式

说明: m6 机翼上表面的编号为201, 下表面的编号为202。

(3) uforce.dat。 该文件用于记录轴向力系数cfx、 侧向力系数cfy、 法向力系数cfz、 滚转力矩系数cmgx、 俯仰力矩系数cmgy、 偏航力矩系数cmgz 的变化过程, 每5 步记录一次, 用于判断流场是否达到定常, 结果是否收敛,其数据格式如图3 -3 所示。

图3-3 uforce.dat 文件数据格式

其中, 第1 列为计算步数, 后面的列数相应为轴向力系数cfx、 侧向力系数cfy、 法向力系数cfz、 滚转力矩系数cmgx、 俯仰力矩系数cmgy、 偏航力矩系数cmgz, 最后一列为压心系数(压心位置坐标)。

(4) uresidual.dat。 该文件用于记录残差下降过程, 以及每5 步的密度最大变化值dro、 能量最大变化值de, 其数据格式如图3 -4 所示。

图3-4 uresidual.dat 文件数据格式

其中, 第1 列为计算步数, 第2 列为残差下降过程, 第3 列为dro 变化过程, 第4 列为de 变化过程。 对残差的定义: 先对每步5 个守恒量的变化值求平方和, 再对所有单元求平均值。

(5) tem.flw。 该文件为后处理的输入文件, 它包含每个单元体心的守恒量值和每个节点的原始变量值。

(6) tem.grdfv。 该文件为后处理的输出文件, 可作为网格文件, 输入“FIELD_VIEW” 即可显示网格。

(7) tem.flwfv。 该文件为后处理的输出文件, 与对应的网格文件输入“FIELD_VIEW” 即可显示流场。

2) sglflow_mpi 的输出文件列表及输出文件的详细描述

并行的执行程序sglflow_slv10_mpi 产生的与串行不同的输出文件如表3 -3所示。

表3-3 sglflow_slv10_mpi 输出文件列表

(1) split_info.dat。 该文件为并行后处理的输入文件。

(2) flow_domain_01.flw ~flow_domain_cpus.flw。 该系列文件为流场文件,用于后处理和断点续算。

(3) domain_01.mesh ~domain_cpus.mesh。 该系列文件为网格文件, 为每一并行的CPU 所计算的网格。

3.2.2.2 Cmrflow 模块介绍

Cmrflow 模块主要用于模拟多体分离, 其计算流程如图3 -5 所示。

图3-5 Cmrflow 模块计算流程

1.控制文件

Cmrflow 软件输入的控制文件与sglflow 的输入控制文件基本相同, 就是多了解算器控制文件6DOF.par 和后处理控制文件geometry.par。(www.xing528.com)

(1) 前处理控制文件: cmrflow_pre.par。 其功能与sglflow 中前处理的功能相同, 只是生成NGRD 个网格文件。

(2) 求解控制文件: cmrflow_slv.par、 geometry.par 和6DOF.par。 控制文件cmrflow_slv.par 的功能与sglflow 中sglflow_slv.par 的功能相同, 因为不同的物体具有不同的几何信息, 在geometry.par 控制文件中的geom 个数需与NGRD 对应。 控制文件6DOF.par 是计算多个物体分离的控制文件, 该控制文件中INITL 的个数与NGRD 对应。

(3) 后处理控制文件: cmrflow_post.par。 其功能与sglflow 中后处理的功能相同。 后处理控制文件geometry.par 与解算器的该文件相同。

2.程序运行

程序的运行方法与sglflow 相同。

3.输出文件

1) cmrflow_sel 的输出文件列表及输出文件的详细描述

cmrflow_sel 的输出文件列表如表3 -4 所示。

表3-4 cmrflow_sel 的输出文件列表

续表

说明:

在上面得到的文件中, 如missile_01.mesh、 missile_02.mesh, 01、 02 代表重叠网格的网格序号; 在uresidual_01_step_0001.dat、 uresidual_02_step_0001.dat等文件中, 0001 代表的是第一个计算时间步, 总的计算时间步为nstep_out。计算弹道时, 没有6Dof_recd_forc01.dat、 6Dof_recd_forc02.dat、 missile_01_dist.dat、missile_step_0001.dat、 missile_step_0001.mrk 文件。 由于计算弹道时采用的是同一套网格, 所以生成的文件都只有01 文件, 而没有02 文件。

(1) missile_01.mesh, missile_02.mesh。 这两个文件为转化后的流场解算器网格输入网格文件。

(2) solsurf_num_missile.dat。 该文件用于记录物面各部分的编号, 便于对各物面气动力积分。 典型的例子如图3 -6 所示。

图3-6 olsurf_num_missile.dat 文件的标记方式

说明:

missile 弹体1 编号为201, 弹翼1 编号为202, 弹体2 编号为203, 弹翼2编号为204。

(3) uforce_01_step_0001.dat, uforce_02_step_0001.dat。 这两个文件用于记录网格01、 02 在第一个时间步内的力和力矩的变化过程, 即记录轴向力系数cfx、 侧向力系数cfy、 法向力系数cfz、 滚转力矩系数cmgx、 俯仰力矩系数cmgy、 偏航力矩系数cmgz 的变化过程, 每5 步记录一次, 用于判断在一个计算时间步内流场是否达到定常。 典型的例子如图3 -7 所示。

图3-7 uforce_01_step.dat 文件数据格式

其中, 第1 列为计算步数, 后面的列数相应为轴向力系数cfx、 侧向力系数cfy、 法向力系数cfz、 滚转力矩系数cmgx、 俯仰力矩系数cmgy、 偏航力矩系数cmgz。

(4) uforce_dmsn_01_step_0001.dat, uforce_dmsn_02_step_0001.dat。 其作用与uforce_01_step_0001.dat、 uforce_02_step_0001.dat 相同, 但值是有量纲的。

(5) uresidual_01_step_0001.dat, uresidual_02_step_0001.dat。 这两个文件用于记录网格01、 网格02 在第一个时间计算步内的残差下降过程, 以及每5 步的密度最大变化值dro、 能量最大变化值de。 典型的例子如图3 -8 所示。

图3-8 uresidual_01_step.dat 数据格式

其中, 第1 列为计算步数, 第2 列为残差下降过程, 第3 列为dro 变化过程, 第4 列为de 变化过程。

(6) 6Dof_recd_01.dat, 6Dof_recd_02.dat。 这两个文件用于记录计算的两个物体各计算时间步的状态参数, 典型的例子如图3 -9 所示。

图3-9 6Dof_recd.dat 文件数据格式

其中, 第1 列为计算的时间步, 第2 ~4 列为计算坐标系下分离物体的质心速度, 第5 ~7 列为机体坐标系下分离物体的角速度, 第8 ~10 列为分离物体的姿态角——偏航角、 俯仰角、 滚转角, 第11 ~13 列为计算坐标系下分离物体的质心位移量。

(7) 6Dof_recd_forc01.dat, 6Dof_recd_forc02.dat。 这两个文件用于记录计算的分离物体各计算时间步的受力情况, 典型的例子如图3 -10 所示。

图3-10 6Dof_recd_forc.dat 文件数据格式

其中, 第1 列为计算的时间步, 第2 ~4 列为计算坐标系下分离物体所受的气动力, 第5 ~7 列为机体坐标系下分离物体所受的气动力矩, 第8 ~10 列为计算坐标系下分离物体所受的外力, 第11 ~13 列为机体坐标系下分离物体所受的外力矩。

(8) missile_01_dist.dat, missile_02_dist.dat。 这两个文件为网格距离文件, 在第1 步计算, 计算时间较长, 以二进制数保存。

(9) missile_step_0001.dat, missile_step_0001.fac, missile_step_0001.mesh, missile_step_0001.mrk。 这4 个文件用于记录网格信息。

(10) flow_step_0001.flw。 该文件用于保存第1 个计算时间步内的流场信息, 用于断点续算和后处理第1 个时间步的计算结果。

(11) outfv_0001.grdfv, outfv_0001.flwfv。 此为后处理的结果, 其中第1个文件为网格信息, 第2 个文件为流场信息, 都为FIELD_VIEW 流场显示软件的输入文件。

2) cmrflow_mpi 的输出文件列表及输出文件的详细描述

并行的执行程序cmrflow_slv10_mpi 产生的与串行不同的输出文件如表3 -5所示。

表3-5 cmrflow_slv10_mpi 产生的输出文件

说明: 在上面描述的文件中, flow_step_0001_domain_cpus.flw 中的cpus表示并行一共采用多少个CPU。

(1) split_info.dat。 该文件为并行的网格分区信息。

(2) domain_01.mesh ~domain_cpus.mesh, domain_01.mrk ~domain_cpus.mrk。 该系列文件为并行分区的每一块网格的信息。

(3) flow_step_0001_domain_01.flw ~flow_step_0001_domain_cpus.flw。 该系列文件为并行分区的每一块网格的流场信息, 用于断点续算和后处理。

(4) missile_step_0001_domain_01.fac ~missile_step_0001_domain_cpus.fac。 该系列文件为并行分区的每一块网格的信息。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈