Y+的一些讨论
一、关于 fluent计算时壁面函数法和网格的关系,还有一个小问题
1:各位用 fluent的同仁和高手们,我想要比较好的使用 fluent软件,最重要的就是要学好理 论,在这里我想请教各位一个问题,在使用标准 k-eplison和一些其他的封闭模型时,对于近壁区的流动要使用壁面函数法求解。那么在划分网格时,是不是一定要把把第一个内节点布置在湍流充分发展的区域内呢?我们如果自动生成网格时,如果说第一个节点在壁面的粘性底层内,是不是对计算有一定的影响呢?还有一个问题就是在 gambit中设置的 wall 壁面,怎么到 fluent设置为内部表面interior,好像在边界条件设置时没有这个边界呀。
2:为什么要用壁面函数??就是因为,k-epsilon模型中,k的 boundary condition已知,在壁面上为零,而 epsilon的 boundary condition在壁面上为一未知的非零量,如此如何来解 两方程模型???所以,我们就需要壁面函数来确定至少第一内节点上的值,当然也包括壁面上的值。实际上就是把epsilon方程的 boundary condition放到了流体内部。至于壁面函数的应用范围,要看它是如何获得的,简单说,他们都是由于,靠近壁面,雷诺应力在粘性底层内基本消失,所以,navier-stokes变为可解,而求得。所以,凡是应用壁面函数求得的节点,都应设置在粘性底层(y+=5-8)或者至少为线性底层(y+>30?具体数值忘记了),当然你放得越低,精度越高,但是网格越小。我在 matlab内自己写的 code,在 y+=5-8内放 10层,fluent应该可以更高。放在 fully developed region是完全错误的。
4:二楼的兄弟,谢谢!我的意思是壁面函数法和 k-epsilon混合使用,是不是它只计算壁面到第一个节点线之间的区域?如果是这样的话,划分网格是不是要计算这个距离呢?Y+这个值是我们控制,还是 fluent在求解时自动计算呢?y+的临界值好像是 11.63,不过这个值 不是绝对的。
为什么要使用壁面函数呢?首先,在 CFD中应用湍流模型并不一定需要使用壁面函数,在粘性支层中可以对 N-S方程直接求解。在粘性支层中,速度梯度很大,vorticity不为零,所以要直接求解,就必须在粘性支层中布置较多节点,一般要 10层以上,这就是一般的低 Re数湍流模型。当然这样将占用较多的计算资源。而在边界层中,是存在解析解的,如果
在粘性支层内不求解三维 N-S方程,而用一维数学模型代替,将大大降低计算资源的使用,这就是壁面函数。一般高 Re数湍流模型都使用壁面函数。第一层网格节点布置在粘性支层之外。那么你如何判断你的边界层网格节点布置是否合适呢?这就要检查你的 y+,y+就是第一层网格质心到壁面的无量纲距离,与速度、粘度、剪应力等等都有关系。对于 y+的值, 各个学者推荐的范围是不一样的,但一般在 30-60之内肯定是没有问题的。也有推荐 10-110甚至 200的。y+的值合理,意味着你的第一层边界网格布置比较合理,如果 y+不合理,就要调整你的边界层网格。
二、关于 Y+的几点笔记
y+普遍存在于湍流问题中,Y+是由 solver解出來的結果,网格划分时,底层网格一般布置到对数分布律成立的范围内,即 11.5~30<=y+<=200~400。在计算开始时,y+并不知道,这些值需要在计算过程中加以调整。数值计算实践表明,y+对传热特性的影响比较大,往往存在一个合适的取值范围,在该范围内数值计算结果与实验数据的符合较好。算每个模型都要先大概算一下,然后得到y+,然后再算第一层高度,重新画网格,貌似像是一个迭代的过程。
估算可以采取以下的方法:
1,专门计算器
最好是使用 NASA Viscous Grid Space Calculator计算,网址为:
http://geolab.larc.nasa.gov/APPS/YPlus/
2,
3,一些经验之谈
Laminar sublayer (y+ < 5)
Buffer region (5 < y+ < 30)
Turbulent region (y+ > 30)
增强的壁面函数(Enhanced Wall Treatment)对于 y plus大于 30的有很好的作用,对于 5到 30的也能求解,但对于 laminar底层,对求解非常敏感,特别是在高雷诺数的情况下。所以对于高雷诺数的湍流流动,可以先选择增强的壁面函数设置,然后计算完以后,通过 计算的 y plus对网格进行修改。
湍流边界层分为内区和外区,而内区有分成:
粘性子层,粘性作用主导
过渡层,湍流作用和粘性作用相当
对数律层,湍流作用主导
外区:惯性力主导
距离壁面最近节点定义了 y+的值,在他们之间应用壁面函数,一般应该使该节点位于粘性子层之外,即 y+>=11.06好像,同时在湍流边界层内应该布置一定数量的网格节点,而 y+的上限由雷诺数判定,我觉得和湍流边界层的厚度有关,因为从经验上,对数律层只能到总的边界层厚度的20%。
问题是:具体在生成网格时,如何来控制网格满足一定的 y+要求呢?
对大空间的钝体绕流计算,合理的 y+应该在什么范围内?而据我所知,y+是结果算出来之后查看的,如果不是很关心剪切力,湍流边界层需要准确计算吗?一刚开始,壁面网格生成凭经验确定。计算后,根据流场查看 y+值是否满足事前的假定,不满足则需要修改网格,再计算、查看y+,如此继续下去。因而我感觉事先是无法准确确定网格
y+是与速度相关的量,不仅仅取决于第一层网格的尺寸,因此必须进行实际运算才能知道。不过如果做的活多了,就会知道第一层网格该怎么取了!
主要是计算后检验,需要反复几次。
一般有 y+在 30至 100左右,太密了,壁函数就作用不大了;过大,壁面处精度不够。对于
粗糙壁面,yp一般为 4倍的粗糙度。30—100是壁面函数的敏感区,大于 100时必须要采用壁面函数修正,但是精度有较大影响,
在小于 30时,可以不用壁面函数,目前一般的求解,尽量不要用壁面函数,为了求解精度的需要,取值小于 30,就可以了。
可以使用公式进行估计
近壁 y+估计值(经验公式) 4 2 2
近壁 y+实际值(计算结果) 3~8 1~6 1~5
如果使用标准壁面函数,真如上面所说,过大和过小,都不好,一般为 30左右最好!
如果使用低雷诺数模型,及 enhance wall function,y+需要是 1的量界!
至于划分网格的过程,需要多次的反复
ANSYS 14 FLUENT用户教程中二维翼型的例子
The values of Y+ are dependent on the resolution of the mesh and the Reynolds number of the flow, and are defined only in wall-adjacent cells. The value of Y+in the wall-adjacent cells dictates how wall shear stress is calculated.When you use the Spalart-Allmaras model, you should check that Y+ of the wall-adjacent cells is either very small (on the order of Y+), or approximately 30 or greater. Otherwise, you shouldmodify your mesh.
The equation for Y+ is
Where Y is the distance from the wall to the cell center, μ is the molecular viscosity,ρis the density of the air, and τWis the wall shear stress.
Figure 5.11 (p. 254) indicates that, except for a few small regions (notably at the shock and the trailing edge), Y+ >30and for much of these regions it does not drop significantly below 30. Therefore, you can conclude that the near-wall mesh resolution is acceptable.
Figure 5.11 XY Plot of y+ Distribution
二维管流教程
3
喜欢
Y+的一些讨论的更多相关文章
- C++:补齐函数编写递归函数计算x的y次幂(hhhh函数 !头疼!)
编写递归函数计算x的y次幂,在主程序中输入非零整数x和整数y,输出求幂的结果(保留两位小数).考虑y为负数和0的情况. #include<iostream> #include<iom ...
- poj1399 hoj1037 Direct Visibility 题解 (宽搜)
http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...
- AtCoder Grand Contest 008 A
Problem Statement Snuke has a calculator. It has a display and two buttons. Initially, the display s ...
- noi题库(noi.openjudge.cn) 1.8编程基础之多维数组T01——T10
T01 矩阵交换行 描述 给定一个5*5的矩阵(数学上,一个r×c的矩阵是一个由r行c列元素排列成的矩形阵列),将第n行和第m行交换,输出交换后的结果. 输入 输入共6行,前5行为矩阵的每一行元素,元 ...
- Matlab绘图详解
Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...
- Matlab绘图(一二三维)
Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...
- 改造二叉树 (长乐一中模拟赛day2T1)
1.改造二叉树 [题目描述] 小Y在学树论时看到了有关二叉树的介绍:在计算机科学中,二叉树是每个结点最多有两个子结点的有序树.通常子结点被称作“左孩子”和“右孩子”.二叉树被用作二叉搜索树和二叉堆.随 ...
- 全国信息学奥林匹克联赛(NOIP2014)复赛 模拟题Day2 长乐一中
题目名称 改造二叉树 数字对 交换 英文名称 binary pair swap 输入文件名 binary.in pair.in swap.in 输出文件名 binary.out pair.out sw ...
- Matlab画图-非常具体,非常全面
Matlab画图 强大的画图功能是Matlab的特点之中的一个,Matlab提供了一系列的画图函数,用户不须要过多的考虑画图的细节,仅仅须要给出一些基本參数就能得到所需图形,这类函数称为高层画图函数. ...
随机推荐
- ANdroid URL
1 Android开源项目和工具分类 http://blog.csdn.net/shimiso/article/details/40889361 2 分享45个android实例源码 http://w ...
- gulp与webpack-stream集成配置
webpack非常强大,但是也有不足的地方,批量式处理依然是gulp更胜一筹.我们是否可以将两者的优点结合起来呢? 这篇文章就是讲述如何集成gulp和webpack 1.安装webpack-strea ...
- sqlservr (708) 打开日志文件 C:\Windows\system32\LogFiles\Sum\Api.log 时出现错误 -1032 (0xfffffbf8)
在windows server 2012 standard上新安装好的SQL Server 2014,查看错误日志,发现此报错 sqlservr (708) 打开日志文件 C:\Windows\sys ...
- SQL Server Replication issues-the row was not found at the subscriber end
Issue type: 1.find out the number 0x0006F18F00006082002300000000 from publication end. 2.use below s ...
- 在Spring里进行单元测试Junit
搭建Spring环境(自行搭建): @RunWith注解指定使用springJunit的测试运行器 @ContextConfiguration注解指定测试用的spring配置文件的位置 import ...
- spring 声明式事务管理
简单理解事务: 比如你去ATM机取5000块钱,大体有两个步骤:首先输入密码金额,银行卡扣掉5000元钱:然后ATM出5000元钱.这两个步骤必须是要么都执行要么都不执行.如果银行卡扣除了5000块但 ...
- 不在折腾----zookeeper-3.4.5
上传zk安装包 解压 配置(先在一台节点上配置) * 添加一个zoo.cfg配置文件 $ZOOKEEPER/conf mv zoo_sample.cfg zoo.cfg * 修改配置文件(zoo.cf ...
- 005_kafka_Java_API
1.生产者Producer 1)添加依赖 <dependency> <groupId>org.apache.kafka</groupId> <artifact ...
- java selenium针对多种情况的多窗口切换
一.通过按钮点击打开的新页面,不涉及到打开多窗口,只要在已有打开的窗口实现切换操作即可 Set<String> winHandels = driver.getWindowHandles() ...
- include包含头文件的语句中,双引号和尖括号的区别是什么?
include包含头文件的语句中,双引号和尖括号的区别是什么? #include <> 格式:引用标准库头文件,编译器从标准库目录开始搜索 尖括号表示只在系统默认目录或者括号内的路径查找 ...