fixedFluxPressure边界条件【转载】

转载自:http://blog.sina.com.cn/s/blog_e256415d0102vikh.html

fixedFluxPressureOpenFOAM较新的一个边界条件,表示边界处压力通量为固定值。在OpenFOAM-2.2.2中,还同时保留了buoyantPressurefixedFluxPressure两个边界条件,而较新的版本中已经只能使用fixedFluxPressure条件。在CFD论坛中,有详细的描述,(第56楼)

http://www.cfd-online.com/Forums/openfoam-solving/82581-i-need-explanations-about-fixedfluxpressure.html

 

我大致总结一下:buoyantPressure设置压力梯度使其适用于浮力流,由于壁面边界通量差值趋于0,因此边界条件近似zeroGradientbuoyantPressure从物理意义上更符合 Archimedes' principle描述的壁面边界;而fixedFluxPressure则是调整压力梯度使得边界通量与速度边界条件指定的保持一致,收敛性更好。此外,fixedFluxPressure边界条件不限于壁面,也可以用于入口与出口,在interFoam中的渠道流案例中,出口设置为fixedFluxPressure

 

此外,值得注意的是interFoam中的waterChannel范例,计算输出的log文件中会输出各个面的质量通量,如下所示。如果总和不为0,就表示质量通量不守恒,需要检查一下边界条件和初值条件是否设置正确。

 

faceSource inletFlux output:

sum(inlet) for rho*phi = -8.43073

 

faceSource outletFlux output:

sum(outlet) for rho*phi = 8.43846

 

faceSource atmosphereFlux output:

sum(atmosphere) for rho*phi = 0.00525326

 

这些输出是在system/controlDict文件中增加如下代码实现的:

functions

{

inletFlux

{

type faceSource;

functionObjectLibs ("libfieldFunctionObjects.so");

outputControl timeStep;

log true;

// Output field values as well

valueOutput false;

source patch;

sourceName inlet;

operation sum;

 

fields

(

rho*phi

);

}

 

outletFlux

{

$inletFlux;

sourceName outlet;

}

 

atmosphereFlux

{

$inletFlux;

sourceName atmosphere;

}

}

posted @ 2016-07-12 11:09  硫酸亚铜  阅读(2219)  评论(0编辑  收藏  举报