并请教:槽道流LES计算的入口inflow速度场影响大吗?
我的计算域没有入口出口之分,沿流动方向的两个边界都是周期性的边界条件,展向也是周期性的边界条件。所以无法回答你的问题。
看起来你是采用了一种生成脉动速度的入口条件吗?
是的,用的就是EugeneDeVilliers在他博士论文中提到的初始化槽道流流场的方法。
并请教:槽道流LES计算的入口inflow速度场影响大吗?
我的计算域没有入口出口之分,沿流动方向的两个边界都是周期性的边界条件,展向也是周期性的边界条件。所以无法回答你的问题。
看起来你是采用了一种生成脉动速度的入口条件吗?
是的,用的就是EugeneDeVilliers在他博士论文中提到的初始化槽道流流场的方法。
之前的帖子基本解决了单相流槽道的问题,见
https://www.cfd-china.com/topic/6248/les直流槽道边界层模拟-如何得到正则化速度u-以及正则化坐标y
现在的目标是把气泡群加入到槽道中,有周期性边界,让它们一直输运,我想要考察壁面上的脉动压力。
打算使用的求解器:
compressibleInterFoam
compressibleInterDyMFoam
当前是这样考虑的:
思路最简单的便是暴力计算,要算好湍流边界层的同时算好气泡,那么壁面附近的网格尺寸必须足够小,网格应该是立方体,便于VOF计算,尺寸应该在$\Delta^+=2\sim5$。整个槽道都由这样的立方体网格组成,这样的话网格量就会非常大,不适合批量化的计算。
一种减小网格量的考虑是:举例来说,靠近壁面附近的槽道采用$\Delta^+=2$,距离壁面一定高度后,增大网格$\Delta^+=2.5\ or\ 3$,这样一层一层地画网格。但这种网格是否好用还有待验证,两层网格之间的节点不匹配也可能对OpenFOAM的程序产生影响,可能会崩。
气泡大概能飘到槽道的哪个部分,由无量纲参数例如We,Eo等参数控制,我还得再调研调研。
另外一种想法是使用较粗的背景网格计算槽道,采用自适应加密,可以较好地捕捉到气泡界面。但这种方法的问题同样是较粗的背景网格算不好边界层。除非在边界层附近也进行加密,但这样的话加密的依据不太好设置。
请各位大佬指点指点,有什么好的方法可以以较低的成本算这样一个气泡槽道流。
有两个具体的问题:
有指路链接也可以。
我自己也找找,有进展了会更新在这里。
做的真好,谢谢你的探索和分享
所以EugeneDeVilliers结果也不是那么好,只是他没给出参考线😂
槽道湍流是无法一直流动下去的,它里面总会有耗散,所以需要施加驱动。
施加驱动的两种方式本质上都是给一个压力梯度,稳定之后,压力梯度就平衡了壁面摩擦力。
其实是这么来的:
也不是不能大、不能小,设置得大了,槽道流速增加,会达到新的平衡的。
不能大、不能小。
我算槽道流,是有一个专门的postChannel后处理程序的,可能你得自己编程做了。
可以参考一下这个后处理程序。
https://develop.openfoam.com/Development/openfoam/-/tree/OpenFOAM-v2012/applications/utilities/postProcessing/miscellaneous/postChannel
那不会的,我最开始就是用vectorSemiImplicitSource的,另外一个算例的正则化的结果和
方法二(方法三和四也是这样子的图)摩擦速度归一化结果是
类似。您说的流速持续增加很可能是压力梯度的具体数值没设置好,设置得大了。我之前设置的小了,发现平均速度、以及采样的某个点的速度总是在下降。就是驱动力不够,有耗散,速度就降下来了。
槽道的平均速度是会趋于稳定的。
$h=0.005m$,$U=4.0m/s$
@hongjiewang
槽道的雷诺数公式都是用两倍半高来,不管实际模拟了多少的。
摩擦雷诺数是用的一倍半高。
其中h为槽道半高,uτ为摩擦速度,ν为运动粘度。根据Pope在Turbulent Flows一书中提到的公式
这个公式里面的Re是用的两倍半高,Re_tau是一倍半高。
那EugeneDeVilliers博士论文的结果也是很好的,你看我方法一算出来的$u_{\tau}$,也相当于DNS的结果吧,画出来之后粘性底层完全对不上。
而且就算真的有DNS结果,我画出来的曲线的形状,也无法和理论解对上。就关键是形状它就对不上。
@hongjiewang
Um是通过在动量方程中直接添加源项实现的,在v2012版本中是:
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: v2012 |
| \\ / A nd | Website: www.openfoam.com |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object fvOptions;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
momentumSource
{
type meanVelocityForce;
selectionMode all;
fields (U);
Ubar (0.4 0 0);
}
// ************************************************************************* //
程序会自动调整压力梯度以达到Ubar的预设值。
之后我是打算用给定的动量方程源项,相当于给定$\partial p / \partial x$,通过vectorSemiImplicitSource实现。也是在fvOptions中调用。4800是随便给的,和上面0.4m/s的平均速度没有联系哈。$\partial p / \partial x$和$\tau_w$的关系见方法四。
有一些参考:
http://xiaopingqiu.github.io/2016/03/20/fvOptions2/
https://caefn.com/openfoam/fvoptions-semiimplicitsource
momentumSource
{
type vectorSemiImplicitSource;
active on;
vectorSemiImplicitSourceCoeffs
{
selectionMode all;
volumeMode specific; //absolute
injectionRateSuSp
{
U ( (4800 0 0) 0); //partial p / partial x
}
}
}
@coolhhh @李东岳
昨天仔细读了一下下面的这个文章,作者对OpenFOAM计算LES槽道进行了比较系统的分析。我发现他的图也是,只有最细的那套网格才算出了非常好的速度剖面,比较粗的两套网格都没算好,形状也和我的问题一样。
这篇文章还是在https://www.cfd-china.com/topic/2121/q-dns计算槽道流遇到了一些问题-求大神们指点看到的。之前读过,但是没仔细读😂。然后就浪费了好多好多时间。
确实是网格不够细的问题。
https://www.sciencedirect.com/science/article/pii/S0021999117304059?via%3Dihub