interFoam + 周期边界条件的压力问题
-
各位老师好,最近在研究在有重力作用下的interFoam周期性边界条件,如气泡上升,液膜降落等,
看到几个论坛交流的帖子,有fixedJump设置压力梯度的,但是不适合所有的情况 https://www.cfd-china.com/topic/1992/cyclic周期性边界条件在这篇论坛里提到
https://www.cfd-online.com/Forums/openfoam-solving/79300-interfoam-cyclic-boundary-condition-issue.html
interFoam求解器求解的时候把重力放到了压力计算的过程中, 。 请问有老师做过相似的问题可以交流一下吗 -
我也是interFoam + 周期边界条件,计算气泡槽道流。
不过我没有加重力,而是直接添加体积源项。/*--------------------------------*- 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; object fvOptions; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // momentumSource { type meanVelocityForce; active yes; meanVelocityForceCoeffs { selectionMode all; fields (U); Ubar (1.0363 0 0); relaxation 1.0; } } /*momentumSource { type vectorSemiImplicitSource; active on; vectorSemiImplicitSourceCoeffs { selectionMode all; //volumeMode absolute; // specific volumeMode specific; injectionRateSuSp { U ( (0.3 0 0) 0); //partial p / partial x } } }*/ //************************************************************************** //
-
-
@Emrys
你用的是固定的体积力源项 vectorSemiImplicitSource 这个吗?
我的理解是:重力是9.81 m/s^2,代码就是injectionRateSuSp { U ( (9.81 0 0) 0); //重力方向是x }
我记得方程是:
截图来自:http://xiaopingqiu.github.io/2016/03/20/fvOptions2/ -
@Emrys 就cfd-online帖子里面他们那种方法?我下载了一个求解器看了下,发现把所有的 p_rgh 都改成 p 了。
我的理解是:有重力和周期性边界同时存在的情况下,不能用 p_rgh 算压力,否则在过周期性边界的时候压力会出问题,用包含了重力的 p 就可以了
这就是最表面的理解吧?复杂一些的理解我没仔细看。
interCyclicFoam.zip -
平均流速就是用瞬时的流场速度U进行三维空间上的积分。可以看看代码
https://develop.openfoam.com/Development/openfoam/blob/OpenFOAM-v2012/src/fvOptions/sources/derived/meanVelocityForce/meanVelocityForce.C和重力不挂勾的,重力产生的加速度是它自己的效果,记为A;这个体积源项本身会产生一个加速度,记为B。
A不变,B会一直变化以使得平均速度保持为你设定的那个值。
3/13