@东岳 李老师,您好。我是想让计算域内充满静止的多相流,除了相分数,个人觉得可能还需要颗粒的位置信息。
张某人
帖子
-
DPMFoam中如何设定初始流场中的颗粒浓度? -
DPMFoam中如何设定初始流场中的颗粒浓度?各位老师同学好,我想用DPMFoam来模拟流场中颗粒的运动,需要设定一个特定颗粒浓度的初始流场,换而言之,将一定量的颗粒均匀分布在计算域内,我暂时只想到了用mannualInjection的注入模型人工设定颗粒位置,但这样很难保证均匀性且比较麻烦,不知道各位有没有什么好方法?谢谢各位了!
-
openFOAM中边界处数值格式@youv 好的,我会去看看书上的内容,谢谢您的指点!
-
openFOAM中边界处数值格式@dzw05 谢谢您的回复,我明白了。因为最近看FVM的网格的时候,书上有提到两种网格方式,一种是先确定网格,再讲节点布置在网格中心,这一种方式下,边界处没有节点;另一种是先布置节点,然后节点间距1/2处布置网格面,这种方式下离边界最近的那个界面需要插值,然后不知怎么的脑子就糊涂了,就问了上述问题。再次感谢您的回答!
-
openFOAM中边界处数值格式@东岳 谢谢李老师,怪我没有选好例子。我一时间想不到具体的例子,就比如说某物理边界上的物理量需要插值出来,但此时对流项选择的格式是需要界面两侧节点值的,如Gauss linear或QUICK格式这种,但显然,物理边界外是没有网格节点的,这种情况下,求解器会做何种操作呢?
-
openFOAM中边界处数值格式 -
openFOAM中边界处数值格式各位前辈们好,请问一下各位,如果边界处没有给出具体的速度值,如速度梯度为0。此时,对边界处网格来说,一侧的通量需要插值出来,如果此时选择的对流项格式为linear或QUICK格式等需要界面两侧节点值的数值个是,那就意味着缺少了界面一侧的节点,此时求解器如何来求界面通量呢?请各位赐教,谢谢!
-
pimpleDyMFoam模拟物体运动各位前辈们好,我想借助pimpleDyMFoam来模拟一个物体在槽道流中的自由运动,主要是参考tutorial中的wingMotion算例,现在会出现的问题就是因为物体运动,使得网格出现了较大变形,最后计算不下去了。现在想单纯地模拟物体的自由旋转,如果不作任何修改,仍会因为物体旋转导致网格变形严重,对此我个人感觉可以使用滑移网格,但是具体参数有哪些,字典文件该如何设置不知道从哪里着手。希望有相关经验的前辈能指导一下方法,或者提供一下可以参考的资料,谢谢大家了。
-
icoFoam解析中哪里调用了SIMPLE算法?@东岳 李老师,您好。首先是对“PISO算法略去临点”的理解,是否指的是《icoFoam解析》公式(24)中临近网格点的速度U_sub(N)采用的是已知的速度值?其次是关于“PISO和SIMPLE算法的区别”,看了您撰写的《浅谈Piso,Simple算法》(http://dyfluid.com/pisosimple.html ) 以及您的这段回复后,我目前仅能理解到PISO算法里的关键方程为动量预测方程(由已知U, p预测速度场),压力(泊松)方程(构造HbyA后,求p)和速度方程(形式和动量预测方程一致,但采用HbyA和p来求解新的速度场),SIMPLE算法里的关键方程是动量预测方程,压力修正方程和速度修正方程,抛开松弛这一点,他们的区别在哪儿?是否如同这篇博客(http://openfoam.blog.sohu.com/94234375.html )所言,PISO中采用了相邻校正,而SIMPLE里没有?
-
icoFoam求解器解析中问题。@东岳 李老师,您好。个人认为icoFoam解析中公式(22)->(23)推导过程中,(22)式等号右侧高斯积分中的
1/Ap,f
在(23)式中应该变成散度项里的1/Ap
。 -
icoFoam求解器解析中问题。@cfd中文网 你好,不过似乎UEqn.A()应该等于Ap吧。按你给出的定义,
rAU*UEqn.H()
就等于Ap*UEqn.H()
了,这和HbyA的定义不一致了。 -
potentialFOAM代码中的几个问题求解@东岳 李老师,您好,辛苦李老师更新求解器说明。对说明中仍有一处不是很理解:
if (potentialFlow.finalNonOrthogonalIter()) { phi -= PhiEqn.flux(); }
此处的“-=”的使用在编程语言中不是应该等效于“phi=phi-PhiEqn.flux();”么?那这与您在说明中给出的公式(3)和(6)似乎就不一致了。
-
potentialFOAM代码中的几个问题求解@东岳 好的,有劳李老师了。
另外,求解器的名字我写错了,应该是potentialFoam,抱歉。 -
《icoFoam解析》中压力修正的代码问题我找到了一个对div和snGrad的理解,希望可以帮上忙,内容来源:Giskard's CFD Learning Tricks
https://wenku.baidu.com/view/838580050975f46527d3e1ff.html
我的理解是fvc::div(phiHbyA)已经将原控制方程中的散度表示为高斯积分的求和形式了,不知道这样理解是否正确? -
potentialFOAM代码中的几个问题求解while (potentialFlow.correctNonOrthogonal()) { fvScalarMatrix PhiEqn ( fvm::laplacian(dimensionedScalar("1", dimless, 1), Phi) == fvc::div(phi)//为什么此处方程的右侧是通量的散度而不是0? ); PhiEqn.setReference(PhiRefCell, PhiRefValue); PhiEqn.solve(); if (potentialFlow.finalNonOrthogonalIter()) { phi -= PhiEqn.flux();//此处为什么要在当前通量的基础上减去由速度势建构出来的通量? } } MRF.makeAbsolute(phi);//此处的makeAbsolute按字面意思是取绝对值,那这个对下文中重构速度场不会产生影响么? Info<< "Continuity error = " << mag(fvc::div(phi))().weightedAverage(mesh.V()).value() << endl; U = fvc::reconstruct(phi); U.correctBoundaryConditions();
论坛里的各位前辈,对代码中不理解的地方已经用备注说明,还请各位赐教!