motorbike中SA模型相关设置?
-
新人,今天刚注册完,第一次发帖;最近在学习OpenFOAM和湍流相关知识,还比较辣鸡,可能有些问题显得比较低级但也请大家多多包涵。
关于如何设置湍流模型很多参数的初值,还是不太清楚。
最开始看了József Nagy的教学视频,学到了很多他设置初值的方法,但是:
最主要的问题是当我试着用学到的方法来解释tutorial里一些参数值的设置时,有些地方怎么也解释不出来
在cfd-online上也看了很多篇帖子,始终没有解决我的疑问,我的问题和这位hulli很相似,他发的帖子也一直没有人回复...首先来看下motorbike的文件
从blockMesh中得出模型y方向的尺寸 $L=8m$ , turbulence length scale可以取:
$$
l=0.07L=0.56m
\tag{1-1}$$
查看0/U
得出Freestream velocity: $U_{\infty}=20m/s$.
假设Medium-turbulence case, Turbulence intensity $I=2%$
查看constant/transportProperties
, $\nu=1.5e-5m^{2}/s$ ,是空气的典型值。
然后,先估算Turbulence kinetic energy $k$ :$$
k=\frac{3}{2}\left(UI\right)^{2}=1.5\times\left(20*0.02\right)^{2}=0.24
\tag{1-2}$$
好的,这个和它的设置一模一样,没啥问题(虽然k在这里好像并没啥用)
Turbulence dissipation :
$$
\epsilon=C_{\mu}^{\frac{3}{4}}\cdot \frac{k^{\frac{3}{2}}}{l}=0.09^{0.75}\times0.24^{1.5}/0.56\approx 0.0345
\tag{1-3}$$Specific turbulence dissipation:
$$
\omega=\frac{\epsilon}{C_{\mu}k}\approx 1.60
\tag{1-4}$$
和0/U
文件中的turbulentOmega 1.78;
也差不了多少。
问题在于nut和nuTilda的设置:
首先给出计算公式:$$
\nu_{t}=C_{u}\frac{k^{2}}{\epsilon}
\tag{1-5}$$$$
\nu_{t}=\tilde{\nu}\cdot f_{v_1} , 其中 f_{v_1}=\frac{X^{3}}{X^{3}+c_{v_{1}}^{3}}
\tag{1-6}$$
且 $X=\frac{\tilde{\nu}}{\nu}$ , $c_{v_1}=7.1$最让我不解的是motorbike里将nut设为0,而将nuTilda设为0.05
如果按照这篇帖子里所说的,计算出 $\nu_{t}$,其初始值应该为:
$$
\nu_{t}=C_{u}\frac{k^{2}}{\epsilon}=0.09\times \frac{0.24^{2}}{0.0345}\approx 0.15
\tag{1-7}$$
此时,带入(1-6)可以求出正实根为 $\tilde{\nu}\approx0.15$
如果是我,肯定会将nut和nuTilda都设成0.15。
帖子里给出的意见是:按照东岳老师所说nuTilda为带求变量设成0也行,或者根据NASA The Spalart-Allmaras Turbulence Model设置。
另一篇帖子中random_ran也谈到类似的设置。但无论哪种好像都不能解释为什么motorbike里的设置,以及我和hulli的疑问。
其他类似的问题
tutorials/incompressible/simpleFoam/airFoil2D
的设置我也有点没搞明白,其中nut和nuTilda设置成相等倒是很容易理解,但是值为0.14我怎么算都和它相差很大,不知道是怎么的出来的。并且我试着改变这两者的值进行计算发现计算结果也差别很大,有点不知道怎么办了- -附:https://www.cfd-online.com/Tools/turbulence.php这个网页小工具可以参考一下,感觉还蛮有用的。
-
有很多模形来简化 NS 方程。 比如 RANS 和 LES。
楼主 Eq 1.7 计算 nut 是基于 k–ε (RANS 中的一个)。
问题是楼主对 nuTilda 的计算依赖了 k–ε 中对 nut 的定义。 而 RANS 问题的核心是寻找 nut 的方程,让时均 NS 方程组封闭。
SA 模形中有自己对 nut 的猜想。
楼主怎样解释这样混用的合理性呢?
-
-
结论:
- nut根据计算得来,所以设置成
type calculated;
然后随便给个值都行。 - 不同模型间的公式尽量不混着瞎用,老老实实参考NASA里给的建议和https://turbmodels.larc.nasa.gov/ChangesToOpenFOAM.pdf的说明
- Try not to follow the tutorial values as some (maybe most) of them are not validated per se but more for case file reference only(来自reddit yourstru1y的建议)
不知是否还有需要纠正的地方,感谢~
- nut根据计算得来,所以设置成
-
楼主回答了 nut 能不能进一步再讨论一下 nuTilda 的设置呢?
为什么摩托车算例里的 nuTilda 在 inlet, outlet, 以及 internalField 的初
始条件设置是 0.05?这样的设置是来源于:nuTilda < nut/10 么 (参考资料1)?那么 nut 的估计既然是 0, 为何 nuTilda 的估计却是, 0.05, 这样一个非零的
估计? 如果 nuTilda 的取值是为了保持数值计算的稳定,为什么不取 0.04 或
者其他的很小的数? 0.05 只是单纯的一个比较小的数么?另外 nuTilda 初值在 outlet 的设置也稍有不一样: 为什么用 inletOutlet
这个条件?而不是 fixedValue,calculated, 或者是 zeroGradient?参考资料
术语来源:
- eddy viscosity (nut): 参考资料: Page 7
- turbulence viscosity (nut)