@Calf-Z-DNS 你好,看到你提的这个问题,请问你解决了吗?
我也想计算整个流动区域近壁面好几层网格的yPlus,而不是仅仅贴壁面的一层网格的yPlus,暂时我看到的wallShearStress和yPlus的计算都是贴壁面一层的值;
或者像东岳老师的示例代码那样直接给定了不变的uTau,而其实2维流动中,沿着流线方向uTau是变化的,所以我觉得比较复杂的是,怎么用某一壁面网格上的wallShearStress(或uTau)确定 对应法线方向上的多层网格yPlus,这个对应关系不知道如何寻找。
希望我表达清楚了,非常感谢!
shiyu
帖子
-
yPlus在openfoam代码里面的实现 -
chtMultiRegionSimpleFoam前处理未能生constant下finalAgglom文件@小火人 帖子看起来比较老了,我想请教下 对于您这个case,周围空气的进出口边界条件如何设置呢?特别关心的是压力边界条件,totalPressure吗?因为我使用totalPressure设置后结果不准确也不稳定,谢谢
-
动态库的链接@疏影横斜水清浅
谢谢回复,是的,预计和你问题一样的,我正在重新检查代码,编译器不报错的话,只能一行行自己排查吗? -
动态库的链接@疏影横斜水清浅
请问最后找到具体问题了吗?是代码还存在问题吗?我也遇到了一样的问题,wmake libso成功,但无法load,谢谢 -
BoundaryFoam求解近壁面流动(倾斜壁面)@李东岳 谢谢老师回复。
那我如果想要坐标转换边界条件,比如,已知local坐标系下的值,想转换成global坐标系下,方便给定openfoam的边界值,openfoam里有可以直接利用的tools吗? -
BoundaryFoam求解近壁面流动(倾斜壁面)@李东岳
李老师,因为近壁面区域的控制方程如下:
where the coordinate y is understood to be the direction normal to the wall (local coordinates)也就是说,这个控制方程是建立于local坐标系下,所以下一步是该怎么转换成global坐标系下的求解?控制方程形如boundaryFoam,但boundaryFoam的应用,找到的都是global坐标与local坐标系一致的情况。
-
BoundaryFoam求解近壁面流动(倾斜壁面)@李东岳 感谢回复
不考虑重力的,只考虑坐标变换 -
BoundaryFoam求解近壁面流动(倾斜壁面)OpenFOAM中边界条件以及solvers求解 默认是全局坐标,即 cartesian coordinates。如果是这样,那么作为1-D solver的boundaryFoam求解倾斜壁面流动时,应该依然采用global坐标系,而不是 local坐标系(水平于wall 的x1 和 垂直于wall的y1)。
但从物理上分析,应采用local坐标系下简化的边界层方程求解这种近似1-D的流动,所以问题是:怎么转换boundaryFoam的求解坐标呢?以及给定倾斜流动的边界条件时应该按照global指定?或许我思路错了,烦请解答。 -
multiRegion case中采用coupled interface边界上信息来计算turbulent viscosity@李东岳 感谢李老师的快速回复。
不过我还是不太确定,尝试了以下语句:label patchID = this->mesh_.boundaryMesh().findPatchID("A_to_B"); fvPatch& patch = this->mesh_.boundaryMesh()[patchID];
编译报错如下:
error: type 'Foam::fvPatch' does not provide a call operator refCast<const mappedPatchBase>(patch().patch());
该如何解决呢?网上查了半天没有类似的问题。
-
multiRegion case中采用coupled interface边界上信息来计算turbulent viscosity如题,请问如何在multiRegion case中,获取coupled interface边界上信息,比如速度的梯度snGrad,来计算湍流模型中的turbulent viscosity?
已知在一些coupled的边界条件中,如turbulentTemperatureCoupledBaffleMixedFvPatchScalarField.C,
我们可以采用// Get the coupling information from the mappedPatchBase const mappedPatchBase& mpp = refCast<const mappedPatchBase>(patch().patch()); const polyMesh& nbrMesh = mpp.sampleMesh();
但问题是 在湍流模型中计算turbulent viscosity的correctNut( ),也需要调用nbrMesh来获取隔壁信息,该怎么定义patch( )呢?(边界条件中不需要额外定义patch() ),谢谢!
-
如何在边界条件中获取solver里定义的某一个参数?再次感谢回复。
这样确实可以取得pressure field并进一步可求grad(p),对于simpleFoam or pimpleFoam是没问题的。
但,对于boundaryFoam,pressure不是通过pEqn求解,i.e. 没有在mesh上定义pressure field,仅如下这样定义还可以获取gradP的值吗?dimensionedVector gradP ( "gradP", dimensionSet(0, 1, -2, 0, 0), Zero );
-
如何在边界条件中获取solver里定义的某一个参数?谢谢李老师的回复 @李东岳 。
边界类型没问题,但我不知道-- 怎么通过语句获取这个已经定义在solver里的gradP?
比如:想要在边界条件中,获得速度U,可以通过以下语句来获得:volVectorField& U = const_cast<volVectorField&>(mesh.lookupObject<volVectorField>("U"));
但这是因为U定义在mesh上,对于gradP这种变量的获取,我有些迷茫。
-
如何在边界条件中获取solver里定义的某一个参数?问题:如何在自定义边界条件中获取solver里定义的某一个参数?
举例:boundaryFoam中定义了pressure gradient : gradP如下,dimensionedVector gradP ( "gradP", dimensionSet(0, 1, -2, 0, 0), Zero );
因为这个gradP每步更新,如下
gradP += (Ubar - UbarStar)/(1.0/UEqn.A())().weightedAverage(mesh.V());
我需要在自定义边界条件中获取gradP进行计算,不知具体如何操作?
谢谢大家!
-
OF对物理场求梯度时,在两个cellZone交界面最近网格层梯度突变@cfd_上弦月 谢谢回复,有道理,但因为是非均匀网格,即越靠近壁面越密集,我其实想要获取上图中绿色区域内每个网格的高度,(假设长度都是一致的),用于高度方向的积分运算。
-
turbulence->divdDevReff(U)@xpqiu 您好,请问可以发我一份完整版吗?邮箱 lyushiyu@163.com,谢谢
-
OF对物理场求梯度时,在两个cellZone交界面最近网格层梯度突变谢谢回复,我进一步解释一下,拿你的图来举例,当我设置橘黄色interface边界(介于zone 1 和zone 2)时,我想获取绿色方框内的网格中心处的物理信息,比如速度,他们的特点是这一系列网格垂直于我想要设置interface面,不知该怎么写程序。
-
OF对物理场求梯度时,在两个cellZone交界面最近网格层梯度突变你好,我暂时不清楚你的问题,不好意思,不过想提一个类似的问题,我的case也有两个cellZone,想问在设置边界的时候可以提取出某一个cellZone里normal方向的所有网格信息吗?谢谢
-
openfoam后处理按照网格信息提取数据请问可以在运行过程中,即 边界运算里面提取y方向上一条线的网格中心信息(速度之类的),谢谢
-
分区网格的一小段代码Hi,东岳大佬,请教下openfoam里可以实现分区网格计算,比如两个分区,并设置interface boundary condition来coupling这两个区域吗?如果可以,麻烦给点思路,谢谢。
我暂时想到的只有fluid-solid interaction,即FSI toolbox in Foam-extend,改写solid domain为fluid-fluid interaction,来实现,不过有些繁琐了。BR,
Shiyu