吾生有涯 学海无涯
析模有界 知识无界

风雷|03 图形界面

内容纲要

PHengLEI的参数设置虽说不是太复杂,不过对于日常使用来说,频繁的改写文本文件还是效率太低。如果能有一个GUI操作界面,无疑会极大地提高使用效率。官方提供的GUI我编译的时候总是报错,而且从网上找到的截图来看,编译出来也是极为简陋的界面,无奈只好放弃了。不过后面发现了HyFLOW,发现其求解器使用的是风雷。于是有了个想法。

本文描述将HyFLOW用作PHengLEI前处理界面的操作流程。

1 安装HyFLOW

上次提到了在PHengLEI开源仓库中有一个名为HyFLOW的软件包(https://www.osredm.com/PHengLEI/PHengLEI/releases),如下图所示,将三个压缩包下载下来,然后解压并安装。

安装过程比较简单,双击一路下一步即可,这里就不详述了。

2 HyFLOW应用

软件启动后的界面是这样式儿的。真心的和我的审美观不匹配,丑到yue~

  • 点击按钮 新建工程 ,选择工程目录,例如D:NNWHyFlow
  • 然后再弹出的对话框中选择计算类型及网格信息等。如本案例为低速流动,网格为2D网格,求解器采用结构求解器。点击 确定 按钮新建工程。

这个地方的路径似乎还能改,不知GUI设计是怎么考虑的,如果这里能改,前面有必要选择文件路径么。还有就是工作路径不让有其他文件,必须是空文件,不清楚有啥必要非要这么搞。

工作界面如图所示。

  • 进入软件后,可以在工具选项卡中点击按钮 换肤 转换为暗黑皮肤。这样看起来要稍微舒服一点。
  • 在工作文件夹下创建子文件夹grid,再将网格文件30p30n.cgns拷贝到该文件夹下

这样做的目的是为了和风雷的文件夹组织结构保持一致。

  • 点击源网格后的浏览按钮,选择网格文件30p30s.cgns

软件会自动调用PHengLEI进行网格转换。网格转换完毕后会给出提示信息。

程序会自动将网格显示在图形窗口中。

  • 选择 解算器设置 下的 控制参数 按钮,如下图所示设置参数

解算器设置下方包括6个按钮:控制参数、边界条件、空间离散、时间离散、后置处理、计算结果。

  • 点击 边界条件 按钮,如下图所示设置边界参数
  • 点击 空间离散 按钮,如下图所示指定空间离散算法
  • 点击 时间离散 按钮,如下图所示设置时间离散参数
  • 点击 后置处理 按钮,如下图所示设置后处理参数
  • 点击 计算结果 按钮,指定计算文件输出参数
  • 点击按钮 开始计算 ,程序会调用风雷求解器进行计算

此时软件开始计算,右侧自动显示残差曲线。

也可有通过点击 视图 选项卡中的按钮来观察不同的监测曲线。

  • 气动力监测
  • 部件积分曲线图

这里算了3000步将其终止。

点击按钮 流场视图 ,可以以云图形式查看流场分布

  • 密度分布
  • 马赫数等值线分布

3 移植

  • 将风雷程序PHengLEI.exe拷贝到工作路径下
  • 此时在文件夹下运行风雷,使用命令mpiexec -n 4 ./PHengLEI.exe,然而运行出错

从出错信息上看,说是找不到nAxisRotateTimes,然而此参数是用于网格转换的。还得从参数文件入手进行查看。打开bin文件夹。

  1. 查看bin文件夹中的key.hypara文件
string title  =  "PHengLEIMainParameterControlFile";
string defaultParaFile = "./bin/default_cfd_para.hypara";
int ndim = 2;
int nparafile = 1;
int nsimutask = 0;
string parafilename = "./bin/cfd_para.hypara";
int numberOfGridProcessor = 0;
string parafilename1 = """";
string parafilename2 = "";

可以看到参数配置文件为cfd_para.hypara

  1. 查看bin文件夹中的cfd_para.hypara文件

这个文件里面的内容极其混乱。感觉开发者使用的是文本替换法,文件中出现了大量与案例无关的网格文件路径。而且里面的内容压根没法看,太混乱了。

  • 找到PHengLEI示例文件中的grid_para.hypara文件,拷贝其内容替换当前文件default_cfd_para.hypara

再次运行,出现如下所示的错误提示。

从提示信息来看,应该是文件boundary_condition.hypara,打开此文件,看不到有什么问题。

抱着试一试的想法,将第一行改成int nBoundaryConditions = INTEGER;,如下图所示。

再次运行后,似乎问题解决了。能够正常往下算了。

4 总结

使用HyFLOW作为PHengLEI的前处理GUI工具,从方法上是行得通的。虽说效果不咋地,但聊胜于无!


(完)

本篇文章来源于微信公众号: CFD之道

赞(0) 打赏
版权声明:未经允许,请勿随意用于商业用途。
文章名称:《风雷|03 图形界面》
文章链接:https://www.topcfd.cn/38772/
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
分享到

说两句 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者吧

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册