我懂了。 这里的diffusivity= nu()/Pr 对吧
chpjz0391
帖子
-
关于passive scalar受湍流作用的疑问? -
关于passive scalar受湍流作用的疑问?最近在把passive scalar项写进simpleFoam来算一个标量场。但是对于湍流对这个标量场的影响有一点疑问。
首先是标量场的方程,参考scalarTransportFoam方程如下:
fvm::ddt(T) + fvm::div(phi, T) - fvm::laplacian(DTt, T) == fvOptions(T)
然后在creatFields.H 里面定义湍流对其影响。公式参考如下
D = D_{molecular} + \frac{\nu_t}{Sc_t}代码如下:
Info<< "Reading diffusivity DT\n" << endl; dimensionedScalar DT ( transportProperties.lookup("DT") ); Info<< "Reading turbulent Schmidt number\n" << endl; dimensionedScalar Sct ( transportProperties.lookup("Sct") ); volScalarField DTt ( IOobject ( "DTt", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE ), nut/Sct + DT, nut.boundaryField().types() );
这里面Sct是Schmidt number, DT是 标量场的diffusivity
这也是目前我正在用的solver
但是网络还有另一种改法,不需要知道标量场的diffusivity,取而代之的是需要知道Prt 和Pr
标量方程改成如下:volScalarField kappaEff ( "kappaEff", turbulence->nu()/Pr + turbulence->nut()/Prt ); fvScalarMatrix DTEqn ( //fvm::ddt(DT) fvm::div(phi, DT) - fvm::laplacian(kappaEff, DT) == fvOptions(TS) );
DTEqn.relax();
DTEqn.solve();请问这两种有什么区别?为什么一个需要标量场的diffusivity 另一个不需要?
-
snappyhexmesh可玩性高吗?高,但不可控。很容易出现比较差的网格。
-
有遇见过simpleFoam达不到稳态的情况吗?@东岳 好的谢谢东岳,我先用一阶迎风格式试试
-
DPMFoam 设置nParticle 以后发散的问题这个我验证过。这个diameter是单个particle的粒径。。不是parcel的
-
OF 中 颗粒的 sizedistribution models 问题?@alvin 两点前的帖子了,我现在没有再做这个了。但是之前没查到。我后来的解决办法是同一位置设置多个injector,每个injector都喷不同的粒子。我是这么解决的。
-
有遇见过simpleFoam达不到稳态的情况吗?最近再用snappyHexMesh画网格,网格画完了checkMesh也通过了,但是simpleFoam达不到稳态。用了几个probe来检查,发现速度一直在震荡。 同样的system下面的设置,之前跑其他的算例都没问题的。
我贴一下我的fvSchemes/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.1 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default steadyState; } gradSchemes { default cellLimited leastSquares 1; //Gauss linear; } divSchemes { default none; div(phi,U) bounded Gauss linearUpwindV cellLimited leastSquares 1; div(phi,k) bounded Gauss linearUpwind celllimited leastSquares 1; div(phi,epsilon) bounded Gauss linearUpwind celllimited leastSquares 1; div(phi,R) bounded Gauss linear corrected; div(R) Gauss linear; div(phi,nuTilda) bounded Gauss upwind; div((nuEff*dev2(T(grad(U))))) Gauss linear; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } fluxRequired { default no; p ; } // ************************************************************************* //
-
求助dam_break模型,我用fluent和OpenFOAM算出来差异有点大你试试用ICEM画一个简单的网格,然后分别用fluent和OF计算看看结果相同么。网格不一样还有算法不一样的话没有可比性。
-
multiphaseEulerFoam疑问……@zwl multiphaseeulerfoam 只能模拟气液好像。气固的话好像不行。 twophaseeulerFoam可以模拟气固
-
如果用DPMFoam求解稀相流会怎么样?误差大么@Alvin 你好,请问一下你之前用欧拉方法用的是哪个求解器可以说一下么?就是把稀相流当做是气体考虑的。你用的是twophaseeulerfoam?
-
如果用DPMFoam求解稀相流会怎么样?误差大么@Alvin 你也可以考虑,reactingparcelFoam 这个是求解稀相流的。我之前用过这个,效果也可以。
-
如果用DPMFoam求解稀相流会怎么样?误差大么@Alvin 我的颗粒粒径很小的,80 nm的粒径,考虑了重力和曳力,也没考虑碰撞,由于颗粒相本身过小,颗粒速度随流体速度的,分布也跟流体的分布特征相符合,颗粒速度和流体速度相同。你的颗粒速度60m/s确实有点夸张了。你把重力加上试试。重力对拉格朗日影响很大的。你不考虑的话 感觉误差确实会很大。并且你的粒径也不算很小,重力影响挺大的。
-
如果用DPMFoam求解稀相流会怎么样?误差大么@Alvin 你是跟什么结果对比的得出的颗粒速度偏差大?碰撞考虑了么? 能不能详细点说一下你的模型。我用这个模拟稀相 结果还好。
-
DPMFoam 设置nParticle 以后发散的问题https://cpp.openfoam.org/v4/a01114.html 这个网站,injectionmodel 然后你点开各个injection就行了
-
DPMFoam 设置nParticle 以后发散的问题@hurricane007 你确定这里的sizedistribution 指的是 particle的直径而不是parcel的等效直径么? 我看injection代码的解释说这个sizedistribution 里面指的是parcel的等效直径啊? 求解惑
-
OF 对 parcel (包含多个拉格朗日partilces) 有相关修正么?在拉格朗日那部分,当nParticle=1的时候为DEM, 但是为了节省计算时间,很多时候用parcel 也就是说nParticle>1, 看了很多文章介绍, 当颗粒没那么密集,系统中碰撞较少的时候, 使用parcel得到的结果是比较reasonable的,但是碰撞多的情况下就需要 对 parcel的相关参数进行修正 来得到一个精确地结果。 请问当使用parcel的时候,OF对parcel的碰撞参数有相关的修正么?
-
lagrangian两相流中粒子质量负载的计算。@OF九月九 nParticel 是每个parcel里面包含的颗粒数。。 主要还是你的颗粒总数。关键看你要模拟什么了,这个数字要符合实际不是说瞎改的。。比如你实际系统中就5w个颗粒 。你怎么改体积分数和质量分数都很小。。
-
lagrangian两相流中粒子质量负载的计算。@OF九月九 你的颗粒数太少了。所以导致质量分数很小。你想一下35米乘以35米再乘5的空间。才5万个 1.25毫米的颗粒。 肯定不会大。 这样的话 体积分数更小了。在实际计算中可以忽略了体积分数了。并且这种情况下碰撞可以不用考虑。。 这篇文章可否共享下。
-
lagrangian两相流中粒子质量负载的计算。你是想计算颗粒质量所占气体质量的百分比么? 那你应该计算颗粒的体积而不是面积吧。 你这里计算的 π*(d/2)^2是面积不是体积。。看你的算例是不考虑颗粒之间的碰撞吧。。
-
关于simpleFoam中kEpsilon中k和epsilon的设定@vivian 特征长度有公式,圆形的特征长度就是其直径,长方形的好像是4倍的面积除以周长什么的我记不太清楚了。你自己搜一下。松弛因子是控制变量在每次迭代中的变化,可控制收敛速度,越接近1 收敛越快,但是收敛性相对较差。这个看你模拟了一般0.7左右就可以具体情况具体分析。举个例子如果p一直发散可以适当调低。等计算一段时间后再慢慢调高 加快收敛速度。