OpenFoamのサンプル確認(パラメータやキーワードの覚書)です。
バージョン : Windows版(OpenFOAM-v2206-windows-mingw.exe)
ベース
チュートリアルフォルダ:チュートリアル場所(windows)
引用元
<チュートリアルフォルダ>\multiphase\interFoam\RAS\floatingObject
結果図
気相と液相を揺すっています。
作業
基本的な流れはT703 OpenFoam tipsと同じです。(または作業)
//チュートリアルからサンプルをコピーしておきます。// //0.origから0へ(.org削除) //コマンド:メッシュ作成 blockMesh //コマンド実行 setFields //計算実行// interFoam //ParaView用VTK変換// foamToVTK
全体構造
//初期フォルダ・ファイル構成 testTubeMixer ├ 0.orig │ ├ alpha.water │ ├ p_rgh │ └ U ├ constant │ ├ dynamicMeshDict │ ├ g │ ├ transportProperties │ └ turbulenceProperties ├ system │ ├ blockMeshDict │ ├ controlDict │ ├ decomposeParDict │ ├ fvSchemes │ ├ fvSolution │ └ setFieldsDict ├ Allclean └ Allrun
0.orig
alpha.water
dimensions [0 0 0 0 0 0 0];
internalField uniform 0;
boundaryField
{
walls
{
type zeroGradient;
}
}
p_rgh
dimensions [1 -1 -2 0 0 0 0];
internalField uniform 0;
boundaryField
{
walls
{
type fixedFluxPressure;
}
}
U
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
walls
{
type movingWallVelocity;
value uniform (0 0 0);
}
}
constant
dynamicMeshDict
dynamicFvMesh dynamicMotionSolverFvMesh;
motionSolver solidBody;
solidBodyMotionFunction multiMotion;
// Table rotating in z axis
rotatingTable
{
solidBodyMotionFunction rotatingMotion;
rotatingMotionCoeffs
{
origin (0 0.1 0);
axis (0 0 1);
omega 6.2832; // rad/s
}
}
//// Box rotates on rotating table
//rotatingBox
//{
// solidBodyMotionFunction rotatingMotion;
// rotatingMotionCoeffs
// {
// origin (0 0 0);
// axis (1 0 0);
// omega 12.5664; // rad/s
// }
//}
// Tube rocking on rotating table
rotatingBox
{
solidBodyMotionFunction oscillatingRotatingMotion;
oscillatingRotatingMotionCoeffs
{
origin (0 0 0);
omega 40; // rad/s
amplitude (45 0 0); // 45 degrees max tilt
}
}
g
dimensions [0 1 -2 0 0 0 0]; value (0 0 -9.81);
transportProperties
phases (water air);
water
{
transportModel Newtonian;
nu 1e-06;
rho 998.2;
}
air
{
transportModel Newtonian;
nu 1.48e-05;
rho 1;
}
sigma 0;
turbulenceProperties
simulationType laminar;
system
blockMeshDict
scale 0.01;
vertices
(
(-0.5 -5 -0.5)
( 0.5 -5 -0.5)
( 0.5 5 -0.5)
(-0.5 5 -0.5)
(-0.5 -5 0.5)
( 0.5 -5 0.5)
( 0.5 5 0.5)
(-0.5 5 0.5)
);
blocks
(
hex (0 1 2 3 4 5 6 7) (5 50 5) simpleGrading (1 1 1)
);
edges
(
);
boundary
(
walls
{
type wall;
faces
(
(3 7 6 2)
(0 4 7 3)
(2 6 5 1)
(1 5 4 0)
(0 3 2 1)
(4 5 6 7)
);
}
);
controlDict
application interFoam; startFrom startTime; startTime 0; stopAt endTime; endTime 1; deltaT 0.0001; writeControl adjustable; writeInterval 0.01; purgeWrite 0; writeFormat ascii; writePrecision 6; writeCompression off; timeFormat general; timePrecision 6; runTimeModifiable true; adjustTimeStep yes; maxCo 0.5; maxAlphaCo 0.5; maxDeltaT 1;
decomposeParDict
numberOfSubdomains 16;
method hierarchical;
coeffs
{
n (4 2 2);
}
fvSchemes
ddtSchemes
{
default Euler;
}
gradSchemes
{
default Gauss linear;
}
divSchemes
{
div(rhoPhi,U) Gauss vanLeerV;
div(phi,alpha) Gauss vanLeer;
div(phirb,alpha) Gauss vanLeer;
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes
{
default Gauss linear corrected;
}
interpolationSchemes
{
default linear;
}
snGradSchemes
{
default corrected;
}
fvSolution
solvers
{
alpha.water
{
nAlphaCorr 1;
nAlphaSubCycles 3;
cAlpha 1;
}
"pcorr.*"
{
solver PCG;
preconditioner
{
preconditioner GAMG;
tolerance 1e-05;
relTol 0;
smoother DICGaussSeidel;
cacheAgglomeration no;
}
tolerance 1e-05;
relTol 0;
maxIter 100;
}
p_rgh
{
solver GAMG;
tolerance 1e-08;
relTol 0.01;
smoother DIC;
}
p_rghFinal
{
solver PCG;
preconditioner
{
preconditioner GAMG;
tolerance 2e-09;
relTol 0;
nVcycles 2;
smoother DICGaussSeidel;
nPreSweeps 2;
}
tolerance 2e-09;
relTol 0;
maxIter 20;
}
U
{
solver smoothSolver;
smoother GaussSeidel;
tolerance 1e-06;
relTol 0;
nSweeps 1;
}
}
PIMPLE
{
momentumPredictor no;
nCorrectors 2;
nNonOrthogonalCorrectors 0;
correctPhi no;
pRefPoint (0.0013 0.0017 0.0017);
pRefValue 1e5;
}
relaxationFactors
{
equations
{
"U.*" 1;
}
}
setFieldsDict
defaultFieldValues
(
volScalarFieldValue alpha.water 0
);
regions
(
boxToCell
{
box (-100 -100 -100) ( 100 100 -0.0025);
fieldValues
(
volScalarFieldValue alpha.water 1
);
}
);
コメント