当前位置: 首页 > news >正文

如何理解openfoam案例里面的blockMesh文件里面的simpleGrading

总结:

simpleGrading参数分为xyz三个方向。如果你想使得网格在某个方向上更密集,可以在simpleGrading中将该方向的渐变率设置为小于 1 .更稀疏则设置大于1.

一、案例

比如我这个爆炸案例:

对应的blockMeshDIct文件如下: 

// 定义划分的网络数目
u1 20;//100
u2 4;//20
u3 16; //80
v1 12;//60
v2 20;//100
w  16; //16;//160  // 3D d*32
//w 1;  // 2D// 定义划分的网络渐变率,分为xyz三个方向。如果你想使得网格在某个方向上更密集,可以在simpleGrading中将该方向的渐变率设置为小于 1 .
r1 0.25;  
r2 4;    //((0.5 0.5 $r1) (0.5 0.5 $r2)) 表示Z方向中间密集两遍稀疏,因为爆炸点在最中间//blocks中包含了五个长方体块,其中hex是一个构成长方体块的8个顶点,($u1 $v1 $w)代表xyz三个方向的网格,simpleGrading代表三个方向划分网格的渐变率。可以某个方向网格逐渐变密(值[0,1])或者变稀(值[1,无穷])
blocks
(hex  (0   1   5   4   12  13  17  16)($u1 $v1 $w)simpleGrading (0.4 3  ((0.5 0.5 $r1)(0.5 0.5 $r2))) hex  (2   3   7   6   14  15  19  18)($u3 $v1 $w)simpleGrading (4   3  ((0.5 0.5 $r1)(0.5 0.5 $r2)))hex  (4   5   9   8   16  17  21  20)($u1 $v2 $w)simpleGrading (0.4 3  ((0.5 0.5 $r1)(0.5 0.5 $r2)))hex  (5   6   10  9   17  18  22  21)($u2 $v2 $w)simpleGrading (1   3  ((0.5 0.5 $r1)(0.5 0.5 $r2)))hex  (6   7   11  10  18  19  23  22)($u3 $v2 $w)simpleGrading (4   3  ((0.5 0.5 $r1)(0.5 0.5 $r2)))
);

解析:

u,v,w:代表三个方向划分的网络数目

r1,r2:定义划分的网络渐变率。

blocks:中包含了五个长方体块,其中hex是一个构成长方体块的8个顶点,($u1 $v1 $w)代表xyz三个方向的网格,simpleGrading代表三个方向划分网格的渐变率。可以某个方向网格逐渐变密(值[0,1])或者变稀(值[1,无穷])

simpleGrading详解:

例子:simpleGrading (0.4 3 ((0.5 0.5 $r1)(0.5 0.5 $r2)))

simpleGrading参数分为xyz三个方向。如果你想使得网格在某个方向上更密集,可以在simpleGrading中将该方向的渐变率设置为小于 1 .更稀疏则设置大于1.

simpleGrading (0.4 3 ((0.5 0.5 $r1)(0.5 0.5 $r2))) 是 OpenFOAM 中定义网格渐变率的语法。它定义了每个方向上网格单元的变化比例。具体来说:

  • 0.4:沿 x 方向的网格渐变率。
  • 3:沿 y 方向的网格渐变率。
  • ((0.5 0.5 $r1)(0.5 0.5 $r2)):沿 z 方向的分段渐变率。

详细解析

  • 0.4沿 x 方向:网格单元从左到右逐渐变小,密度更高
  • 3沿 y 方向:网格单元从下到上逐渐变大,密度更低。
  • ((0.5 0.5 $r1)(0.5 0.5 $r2)))沿 z 方向:
    • 第一段占长度的一半,均匀分布,初始和末端的渐变率为 0.25(单个网格逐渐变小)。
    • 第二段占长度的一半,均匀分布,初始和末端的渐变率为 4(单个网格逐渐变大)。
    • 总结就是Z方向上两边网格稀疏,中间网格密集。(因为爆炸点在Z方向中间,需要希望格捕捉细小变化)

可以看出符合预期越靠近中间的弹性挡板和爆炸点,xyz三个方向的网格就越密

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • leetcode 3.无重复字符的最长子串
  • Oracle事务是怎么练成的
  • 词向量,位置嵌入;归一化;自注意力层;投影;残差连接:防止梯度消失;MLP;
  • Nodejs实现图片加水印 【使用jimp】
  • win7开机提示‘windows引导配置数据文件包含的os项目无效’解决方法
  • pnpm的使用
  • 课程设计/毕业设计Spring boot+vue仓库管理系统(文档、源码、数据库、远程部署、LW)
  • Python——爬虫
  • pve虚拟机使用
  • Vue的事件处理、事件修饰符、键盘事件
  • WordPress个性化站点
  • 学习日志8.10--防火墙ASPF
  • Java毕业设计 基于SSM和Vue的酒店管理系统小程序
  • [Java]面向对象-static继承
  • Java设计模式(命令模式)
  • css的样式优先级
  • HomeBrew常规使用教程
  • JavaScript 基本功--面试宝典
  • PAT A1092
  • RxJS: 简单入门
  • text-decoration与color属性
  • 半理解系列--Promise的进化史
  • 聚簇索引和非聚簇索引
  • 开发了一款写作软件(OSX,Windows),附带Electron开发指南
  • 类orAPI - 收藏集 - 掘金
  • 判断客户端类型,Android,iOS,PC
  • 前端学习笔记之观察者模式
  • 项目实战-Api的解决方案
  • elasticsearch-head插件安装
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (10)ATF MMU转换表
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (done) 两个矩阵 “相似” 是什么意思?
  • (HAL库版)freeRTOS移植STMF103
  • (Matlab)使用竞争神经网络实现数据聚类
  • (Redis使用系列) Springboot 使用Redis+Session实现Session共享 ,简单的单点登录 五
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (附源码)ssm基于jsp的在线点餐系统 毕业设计 111016
  • (六)软件测试分工
  • (十一)JAVA springboot ssm b2b2c多用户商城系统源码:服务网关Zuul高级篇
  • (转)如何上传第三方jar包至Maven私服让maven项目可以使用第三方jar包
  • .babyk勒索病毒解析:恶意更新如何威胁您的数据安全
  • .net core 使用js,.net core 使用javascript,在.net core项目中怎么使用javascript
  • .NET 读取 JSON格式的数据
  • .net 连接达梦数据库开发环境部署
  • .Net(C#)自定义WinForm控件之小结篇
  • .NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
  • .net中的Queue和Stack
  • /bin/rm: 参数列表过长"的解决办法
  • /etc/sudoers (root权限管理)
  • @Autowired注解的实现原理
  • [12] 使用 CUDA 进行图像处理
  • [AI]ChatGPT4 与 ChatGPT3.5 区别有多大
  • [BUUCTF]-Reverse:reverse3解析