本案例利用OpenFOAM计算三角形腔体内流体流动特征,并对计算结果进行验证。
参考文献:R. Jyotsna, S.P. Vanka. “Multigrid Calculation of Steady, Viscous Flow in a Triangular Cavity”. J. Comp. Phys., Vol 122, pp. 107-117, 1995.
”
如图所示尺寸的三角形腔体,上部顶盖水平速度2 m/s,验证竖直轴线上速度分布。
腔体内介质密度为1 kg/m3,动力粘度0.01 kg/m-s。
本算例采用icoFoam
求解器进行计算。可以采用算例库中的cavity作为模板算例。
利用下面的命令准备文件。
cp -r $FOAM_TUTORIALS/incompressible/icoFoam/cavity/cavity .
mv cavity VM11
cd VM11
删除多余的文件,最终算例文件结构如下图所示。
本算例采用导入Fluent msh文件的形式准备网格。将VM11.msh
文件放入算例工作目录下。运行下面的命令转换计算网格并检查网格:
fluentMeshToFoam VM11.msh
checkMesh
确保网格检查结果没有错误信息。如下图所示。
修改transportProperties
文件,指定介质运动粘度0.01 m2/s。
文件内容如下所示。
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object transportProperties;
}
// * * * * * * * * * * * * * * * * * //
nu [0 2 -1 0 0 0 0] 0.01;
1、p文件
p文件内容如下所示。
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object p;
}
// * * * * * * * * * * * * * * * * //
dimensions [0 2 -2 0 0 0 0];
internalField uniform 0;
boundaryField
{
TOP
{
type zeroGradient;
}
WALLS
{
type zeroGradient;
}
frontAndBackPlanes
{
type empty;
}
}
2、U文件
U文件内容如下所示。
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
object U;
}
// * * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
TOP
{
type fixedValue;
value uniform (2 0 0);
}
WALLS
{
type noSlip;
}
frontAndBackPlanes
{
type empty;
}
}
1、controlDict文件
文件内容为:
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object controlDict;
}
// * * * * * * * * * * * * * * * * //
application icoFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 10;
deltaT 0.01;
writeControl timeStep;
writeInterval 20;
purgeWrite 5;
writeFormat ascii;
writePrecision 6;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;
2、fvSolutions文件
在fvSolutions文件中打开正交修正。
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object fvSolution;
}
// * * * * * * * * * * * * * * * * //
solvers
{
p
{
solver PCG;
preconditioner DIC;
tolerance 1e-06;
relTol 0.05;
}
pFinal
{
$p;
relTol 0;
}
U
{
solver **oothSolver;
**oother symGaussSeidel;
tolerance 1e-05;
relTol 0;
}
}
PISO
{
nCorrectors 2;
nNonOrthogonalCorrectors 3; //设置正交修正次数为3
pRefCell 0;
pRefValue 0;
}
运行icoFoam
进行计算。
set xlabel "y(m)"
set ylabel "non-vel(m/s)"
set grid
set key right
plot "VM11.txt" u 1:2 w line lw 3 t "numeric","xvelEXP.xy" u 1:2 w point pt 7 t "exp"
比较的结果如下图所示。
从图中看出,计算结果吻合程度较好。
---------------------------------------------------------------------------------------------
版权声明:
原创文章,来源CFD之道,本文已经授权,欢迎分享,如需转载请联系作者。