OpenFOAM里fixedJump命令

问题描述

对于二维泊肃叶流动来说,驱动流动一般有两种方式,一种是体积力驱动,另一种是进出口压力差驱动。这里我们主要对对第二种方式进行说明。

周期性边界条件

对于channel flow等流动来说,在进口和出口出我们一般采取周期性边界条件,在OpenFOAM种有cyclic和cyclicAMI两个命令,其中cyclic要求进口和出口网格完全一致,而cyclicAMI则没有这个要求。
在这里,周期性边界条件的意义是进口和出口面上物理量完全一致,简单的来说,即出口流出的继续从入口流入,采用这种边界条件的意义主要是用来模拟无限长的通道。这样的话会产生一个问题,对于压力p来说,进口和出口完全一致的话,就没有压力差了,那我们如何用压力差进行驱动流体流动呢?

利用fixedJump命令设置压力差

事实上,fixedJump命令就是解决这个问题的,我们可以设置一个Jump量,使得入口处的压力等于出口处的压力加上一个常数,这样就可以产生压力差。其具体设置在0文件夹下的p文件中。

    inlet
    {
    
    
    type            fixedJump;
	patchType       cyclic;
	jump            uniform -0.001220377373900;
	value           $internalField;
    }
    outlet
    {
    
    
    type            fixedJump;
	patchType       cyclic;
	jump            uniform 0;
	value           $internalField;
    }

上面是一种设置方法,这里我们需要注意两点:
1、我们想要的结果是inlet处压力更大,因此需要设置一个Jump量,特别需要注意这里是负号
2、对于出口处,我们的Jump量可以设置为0

验证

在paraview中打开已经算好的算例,只打开inlet面,并利用工具探测处inlet面上的p的上下界;如下图
在这里插入图片描述

p i n l e t m a x = 0.0245446 ; p i n l e t m i n = − 0.00250727 p_{inletmax} = 0.0245446;\quad p_{inletmin} = -0.00250727 pinletmax=0.0245446;pinletmin=0.00250727

outlet面上p的上下界如下图
在这里插入图片描述
p o u t l e t m a x = 0.0233242 ; p o u t l e t m i n = − 0.00372764 p_{outletmax} = 0.0233242;\quad p_{outletmin} = -0.00372764 poutletmax=0.0233242;poutletmin=0.00372764
可以计算出
Δ p i n l e t − o u t l e t m a x = 0.0245446 − 0.0233242 = 0.0012204 ; p o u t l e t m i n = − 0.00250727 + 0.00372764 = 0.00122037 \Delta p_{inlet -outlet max} = 0.0245446-0.0233242=0.0012204;\quad p_{outletmin} = -0.00250727+0.00372764 = 0.00122037 Δpinletoutletmax=0.02454460.0233242=0.0012204;poutletmin=0.00250727+0.00372764=0.00122037

可以看出,达到了我们想要的效果,进口壁出口处压力大一个定值,且正好等于我们设置的值。

猜你喜欢

转载自blog.csdn.net/ambu1230/article/details/128690705