mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' of ssh://hunt//home/noisy3/OpenFOAM/OpenFOAM-dev
This commit is contained in:
10
tutorials/compressible/rhoPimpleFoam/ras/angledDuct/Allrun
Executable file
10
tutorials/compressible/rhoPimpleFoam/ras/angledDuct/Allrun
Executable file
@ -0,0 +1,10 @@
|
||||
cd ${0%/*} || exit 1 # run from this directory
|
||||
|
||||
m4 constant/polyMesh/blockMeshDict.m4 > constant/polyMesh/blockMeshDict
|
||||
|
||||
# Source tutorial run functions
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||
|
||||
runApplication blockMesh
|
||||
runApplication rhoPimpleFoam
|
||||
|
||||
@ -94,7 +94,8 @@ PIMPLE
|
||||
nCorrectors 2;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
momentumPredictor yes;
|
||||
pMin pMin [ 1 -1 -2 0 0 0 0 ] 1000;
|
||||
rhoMin rhoMin [ 1 -3 0 0 0 ] 0.5;
|
||||
rhoMax rhoMax [ 1 -3 0 0 0 ] 2.0;
|
||||
pRefCell 0;
|
||||
pRefValue 1e5;
|
||||
}
|
||||
|
||||
@ -0,0 +1 @@
|
||||
../angledDuctImplicit/Allrun
|
||||
@ -47,5 +47,25 @@ graphFormat raw;
|
||||
|
||||
runTimeModifiable true;
|
||||
|
||||
functions
|
||||
{
|
||||
residualControl1
|
||||
{
|
||||
type residualControl;
|
||||
functionObjectLibs ( "libjobControl.so" );
|
||||
outputControl timeStep;
|
||||
outputInterval 1;
|
||||
|
||||
maxResiduals
|
||||
{
|
||||
p 1e-2;
|
||||
U 1e-4;
|
||||
T 1e-3;
|
||||
|
||||
// possibly check turbulence fields
|
||||
"(k|epsilon|omega)" 1e-3;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -34,7 +34,6 @@ divSchemes
|
||||
div(phi,h) Gauss upwind;
|
||||
div(phi,epsilon) Gauss upwind;
|
||||
div(phi,k) Gauss upwind;
|
||||
div(phid,p) Gauss linear;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
|
||||
@ -57,7 +57,8 @@ solvers
|
||||
SIMPLE
|
||||
{
|
||||
nNonOrthogonalCorrectors 0;
|
||||
pMin pMin [ 1 -1 -2 0 0 0 0 ] 100;
|
||||
rhoMin rhoMin [ 1 -3 0 0 0 ] 1.0;
|
||||
rhoMax rhoMax [ 1 -3 0 0 0 ] 1.5;
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
|
||||
10
tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/Allrun
Executable file
10
tutorials/compressible/rhoPorousSimpleFoam/angledDuctImplicit/Allrun
Executable file
@ -0,0 +1,10 @@
|
||||
cd ${0%/*} || exit 1 # run from this directory
|
||||
|
||||
m4 constant/polyMesh/blockMeshDict.m4 > constant/polyMesh/blockMeshDict
|
||||
|
||||
# Source tutorial run functions
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||
|
||||
runApplication blockMesh
|
||||
runApplication rhoPorousSimpleFoam
|
||||
|
||||
@ -31,11 +31,11 @@ FoamFile
|
||||
f f [0 -1 0 0 0 0 0] (0 0 0);
|
||||
}
|
||||
|
||||
thermalModel
|
||||
{
|
||||
type fixedTemperature;
|
||||
thermalModel none; // fixedTemperature;
|
||||
|
||||
T T [0 0 0 1 0] 350;
|
||||
fixedTemperatureCoeffs
|
||||
{
|
||||
T 350;
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
@ -47,5 +47,25 @@ graphFormat raw;
|
||||
|
||||
runTimeModifiable true;
|
||||
|
||||
functions
|
||||
{
|
||||
residualControl1
|
||||
{
|
||||
type residualControl;
|
||||
functionObjectLibs ( "libjobControl.so" );
|
||||
outputControl timeStep;
|
||||
outputInterval 1;
|
||||
|
||||
maxResiduals
|
||||
{
|
||||
p 1e-3;
|
||||
U 1e-4;
|
||||
T 1e-3;
|
||||
|
||||
// possibly check turbulence fields
|
||||
"(k|epsilon|omega)" 1e-3;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -34,7 +34,6 @@ divSchemes
|
||||
div(phi,h) Gauss upwind;
|
||||
div(phi,epsilon) Gauss upwind;
|
||||
div(phi,k) Gauss upwind;
|
||||
div(phid,p) Gauss linear;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
|
||||
@ -51,7 +51,8 @@ SIMPLE
|
||||
{
|
||||
nUCorrectors 2;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
pMin pMin [ 1 -1 -2 0 0 0 0 ] 100;
|
||||
rhoMin rhoMin [ 1 -3 0 0 0 ] 0.5;
|
||||
rhoMax rhoMAx [ 1 -3 0 0 0 ] 2.0;
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
|
||||
@ -171,9 +171,10 @@ solvers
|
||||
|
||||
SIMPLE
|
||||
{
|
||||
nNonOrthogonalCorrectors 0;
|
||||
pMin pMin [1 -1 -2 0 0 0 0] 10000;
|
||||
transonic yes;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
rhoMin rhoMin [1 -3 0 0 0] 0.1;
|
||||
rhoMax rhoMax [1 -3 0 0 0] 1.0;
|
||||
transonic yes;
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
|
||||
@ -1,443 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object T;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 1 0 0 0];
|
||||
|
||||
internalField uniform 300;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
floor
|
||||
{
|
||||
type fixedValue;
|
||||
value nonuniform List<scalar>
|
||||
400
|
||||
(
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
600
|
||||
600
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
600
|
||||
600
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
300
|
||||
)
|
||||
;
|
||||
}
|
||||
ceiling
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 300;
|
||||
}
|
||||
fixedWalls
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -1,39 +0,0 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object T;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 1 0 0 0];
|
||||
|
||||
internalField uniform 300;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
floor
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 300;
|
||||
}
|
||||
ceiling
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 300;
|
||||
}
|
||||
fixedWalls
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -56,8 +56,8 @@ functions
|
||||
maxResiduals
|
||||
{
|
||||
p_rgh 1e-2;
|
||||
U 1e-4;
|
||||
T 1e-3;
|
||||
U 1e-3;
|
||||
h 1e-3;
|
||||
|
||||
// possibly check turbulence fields
|
||||
"(k|epsilon|omega)" 1e-3;
|
||||
|
||||
@ -57,8 +57,8 @@ functions
|
||||
maxResiduals
|
||||
{
|
||||
p_rgh 1e-2;
|
||||
U 1e-4;
|
||||
T 1e-3;
|
||||
U 1e-3;
|
||||
h 1e-3;
|
||||
|
||||
// possibly check turbulence fields
|
||||
"(k|epsilon|omega)" 1e-3;
|
||||
|
||||
@ -57,8 +57,9 @@ functions
|
||||
maxResiduals
|
||||
{
|
||||
p_rgh 1e-2;
|
||||
U 1e-4;
|
||||
T 1e-3;
|
||||
U 1e-3;
|
||||
h 1e-3;
|
||||
G 1e-3;
|
||||
|
||||
// possibly check turbulence fields
|
||||
"(k|epsilon|omega)" 1e-3;
|
||||
|
||||
@ -57,8 +57,9 @@ functions
|
||||
maxResiduals
|
||||
{
|
||||
p_rgh 1e-2;
|
||||
U 1e-4;
|
||||
T 1e-3;
|
||||
U 1e-3;
|
||||
h 1e-3;
|
||||
G 1e-3;
|
||||
|
||||
// possibly check turbulence fields
|
||||
"(k|epsilon|omega)" 1e-3;
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
cellSet heater new boxToCell (-0.01 0 -100 )(0.01 0.01 100)
|
||||
cellSet heater add boxToCell (-0.01 -100 -0.01)(0.01 0.01 0.01)
|
||||
cellSet heater new boxToCell (-0.01001 0 -100 )(0.01001 0.00999 100)
|
||||
cellSet heater add boxToCell (-0.01001 -100 -0.01001)(0.01001 0.00999 0.01001)
|
||||
cellZoneSet heater new setToCellZone heater
|
||||
cellSet leftSolid new boxToCell (-100 0 -100 )(-0.01 0.01 100)
|
||||
cellSet leftSolid new boxToCell (-100 0 -100 )(-0.01001 0.00999 100)
|
||||
cellZoneSet leftSolid new setToCellZone leftSolid
|
||||
cellSet rightSolid new boxToCell (0.01 0 -100 )(100 0.01 100)
|
||||
cellSet rightSolid new boxToCell (0.01001 0 -100 )(100 0.00999 100)
|
||||
cellZoneSet rightSolid new setToCellZone rightSolid
|
||||
cellSet topAir new boxToCell (-100 0.01 -100 )(100 100 100)
|
||||
cellSet topAir new boxToCell (-100 0.00999 -100 )(100 100 100)
|
||||
cellZoneSet topAir new setToCellZone topAir
|
||||
cellSet bottomAir clear
|
||||
cellSet bottomAir add cellToCell heater
|
||||
|
||||
@ -18,9 +18,16 @@ solvers
|
||||
{
|
||||
rho
|
||||
{
|
||||
solver PCG
|
||||
solver PCG;
|
||||
preconditioner DIC;
|
||||
tolerance 1e-8;
|
||||
relTol 0.1;
|
||||
}
|
||||
|
||||
rhoFinal
|
||||
{
|
||||
$rho;
|
||||
tolerance 1e-8;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
|
||||
@ -18,9 +18,16 @@ solvers
|
||||
{
|
||||
rho
|
||||
{
|
||||
solver PCG
|
||||
solver PCG;
|
||||
preconditioner DIC;
|
||||
tolerance 1e-7;
|
||||
relTol 0.1;
|
||||
}
|
||||
|
||||
rhoFinal
|
||||
{
|
||||
$rho;
|
||||
tolerance 1e-7;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
|
||||
@ -35,8 +35,7 @@ solvers
|
||||
|
||||
pFinal
|
||||
{
|
||||
solver PCG;
|
||||
preconditioner DIC;
|
||||
$p;
|
||||
tolerance 1e-06;
|
||||
relTol 0;
|
||||
}
|
||||
@ -46,6 +45,13 @@ solvers
|
||||
solver PBiCG;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-05;
|
||||
relTol 0.1;
|
||||
}
|
||||
|
||||
UFinal
|
||||
{
|
||||
$U;
|
||||
tolerance 1e-05;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
|
||||
@ -32,16 +32,9 @@ solvers
|
||||
|
||||
pFinal
|
||||
{
|
||||
solver GAMG;
|
||||
$p;
|
||||
tolerance 1e-7;
|
||||
relTol 0;
|
||||
smoother GaussSeidel;
|
||||
nPreSweeps 0;
|
||||
nPostSweeps 2;
|
||||
cacheAgglomeration on;
|
||||
agglomerator faceAreaPair;
|
||||
nCellsInCoarsestLevel 10;
|
||||
mergeLevels 1;
|
||||
}
|
||||
|
||||
"(U|k|omega)"
|
||||
@ -49,6 +42,13 @@ solvers
|
||||
solver PBiCG;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-06;
|
||||
relTol 0.1;
|
||||
}
|
||||
|
||||
"(U|k|omega)Final"
|
||||
{
|
||||
$U;
|
||||
tolerance 1e-06;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1 @@
|
||||
../angledDuctImplicit/Allrun
|
||||
10
tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/Allrun
Executable file
10
tutorials/incompressible/porousSimpleFoam/angledDuctImplicit/Allrun
Executable file
@ -0,0 +1,10 @@
|
||||
cd ${0%/*} || exit 1 # run from this directory
|
||||
|
||||
m4 constant/polyMesh/blockMeshDict.m4 > constant/polyMesh/blockMeshDict
|
||||
|
||||
# Source tutorial run functions
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||
|
||||
runApplication blockMesh
|
||||
runApplication porousSimpleFoam
|
||||
|
||||
@ -0,0 +1,165 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: dev |
|
||||
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
`format' ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
// block definition for a porosity with an angled inlet/outlet
|
||||
// the porosity is not aligned with the main axes
|
||||
//
|
||||
dnl> -----------------------------------------------------------------
|
||||
dnl> <STANDARD DEFINTIONS>
|
||||
dnl>
|
||||
changecom(//)changequote([,]) dnl>
|
||||
define(calc, [esyscmd(perl -e 'print ($1)')]) dnl>
|
||||
define(VCOUNT, 0) dnl>
|
||||
define(vlabel, [[// ]pt VCOUNT ($1) define($1, VCOUNT)define([VCOUNT], incr(VCOUNT))]) dnl>
|
||||
dnl>
|
||||
define(hex2D, hex ($1b $2b $3b $4b $1f $2f $3f $4f)) dnl>
|
||||
define(quad2D, ($1f $1b $2b $2f)) dnl>
|
||||
define(frontQuad, ($1f $2f $3f $4f)) dnl>
|
||||
define(backQuad, ($4b $3b $2b $1b)) dnl>
|
||||
dnl>
|
||||
dnl> </STANDARD DEFINTIONS>
|
||||
dnl> -----------------------------------------------------------------
|
||||
dnl>
|
||||
define(ncells, 20) dnl>
|
||||
define(ninlet, 15) dnl>
|
||||
define(nporo, 20) dnl>
|
||||
define(noutlet, 20) dnl>
|
||||
dnl>
|
||||
define(x0,0) dnl>
|
||||
define(y0,0) dnl>
|
||||
define(y0,0) dnl>
|
||||
define(Cos,0.7071067812) dnl> == cos(45)
|
||||
define(Sin,0.7071067812) dnl> == sin(45)
|
||||
dnl>
|
||||
define(width,50) dnl>
|
||||
define(zBack,calc(-width/2)) dnl>
|
||||
define(zFront,calc(width/2)) dnl>
|
||||
define(leninlet,150)dnl>
|
||||
define(lenporo,100)dnl>
|
||||
define(lenoutlet,100)dnl>
|
||||
dnl>
|
||||
define(xhyp,calc(Sin*width)) dnl>
|
||||
define(yhyp,calc(Cos*width)) dnl>
|
||||
define(xinlet,leninlet)dnl>
|
||||
define(xporo,calc(Cos*lenporo)) dnl>
|
||||
define(yporo,calc(Sin*lenporo)) dnl>
|
||||
define(xoutlet,calc(xporo + Cos*lenoutlet)) dnl>
|
||||
define(youtlet,calc(yporo + Sin*lenoutlet)) dnl>
|
||||
dnl>
|
||||
|
||||
convertToMeters 0.001;
|
||||
|
||||
vertices
|
||||
(
|
||||
// inlet region
|
||||
( -xinlet y0 zBack ) vlabel(in1b)
|
||||
( -xinlet yhyp zBack ) vlabel(in2b)
|
||||
( -xinlet y0 zFront ) vlabel(in1f)
|
||||
( -xinlet yhyp zFront ) vlabel(in2f)
|
||||
|
||||
// join inlet->outlet
|
||||
( x0 y0 zBack ) vlabel(join1b)
|
||||
( -xhyp yhyp zBack ) vlabel(join2b)
|
||||
( x0 y0 zFront ) vlabel(join1f)
|
||||
( -xhyp yhyp zFront ) vlabel(join2f)
|
||||
|
||||
// porosity ends ->outlet
|
||||
( xporo yporo zBack ) vlabel(poro1b)
|
||||
( calc(xporo - xhyp) calc(yporo + yhyp) zBack ) vlabel(poro2b)
|
||||
( xporo yporo zFront ) vlabel(poro1f)
|
||||
( calc(xporo - xhyp) calc(yporo + yhyp) zFront ) vlabel(poro2f)
|
||||
|
||||
// outlet
|
||||
( xoutlet youtlet zBack ) vlabel(out1b)
|
||||
( calc(xoutlet - xhyp) calc(youtlet + yhyp) zBack ) vlabel(out2b)
|
||||
( xoutlet youtlet zFront ) vlabel(out1f)
|
||||
( calc(xoutlet - xhyp) calc(youtlet + yhyp) zFront ) vlabel(out2f)
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
// inlet block
|
||||
hex2D(in1, join1, join2, in2)
|
||||
inlet ( ninlet ncells ncells ) simpleGrading (1 1 1)
|
||||
|
||||
// porosity block
|
||||
hex2D(join1, poro1, poro2, join2)
|
||||
porosity ( nporo ncells ncells ) simpleGrading (1 1 1)
|
||||
|
||||
// outlet block
|
||||
hex2D(poro1, out1, out2, poro2)
|
||||
outlet ( noutlet ncells ncells ) simpleGrading (1 1 1)
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
);
|
||||
|
||||
patches
|
||||
(
|
||||
// is there no way of defining all my 'defaultFaces' to be 'wall'?
|
||||
wall front
|
||||
(
|
||||
// inlet block
|
||||
frontQuad(in1, join1, join2, in2)
|
||||
// outlet block
|
||||
frontQuad(poro1, out1, out2, poro2)
|
||||
)
|
||||
|
||||
wall back
|
||||
(
|
||||
// inlet block
|
||||
backQuad(in1, join1, join2, in2)
|
||||
// outlet block
|
||||
backQuad(poro1, out1, out2, poro2)
|
||||
)
|
||||
|
||||
wall wall
|
||||
(
|
||||
// inlet block
|
||||
quad2D(in1, join1)
|
||||
quad2D(join2, in2)
|
||||
// outlet block
|
||||
quad2D(poro1, out1)
|
||||
quad2D(out2, poro2)
|
||||
)
|
||||
|
||||
wall porosityWall
|
||||
(
|
||||
// porosity block
|
||||
frontQuad(join1, poro1, poro2, join2)
|
||||
// porosity block
|
||||
backQuad(join1, poro1, poro2, join2)
|
||||
// porosity block
|
||||
quad2D(join1, poro1)
|
||||
quad2D(poro2, join2)
|
||||
)
|
||||
|
||||
patch inlet
|
||||
(
|
||||
quad2D(in2, in1)
|
||||
)
|
||||
|
||||
patch outlet
|
||||
(
|
||||
quad2D(out2, out1)
|
||||
)
|
||||
);
|
||||
|
||||
mergePatchPairs
|
||||
(
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -46,4 +46,60 @@ timePrecision 6;
|
||||
|
||||
runTimeModifiable true;
|
||||
|
||||
|
||||
functions
|
||||
{
|
||||
// Make sure all fields for functionObjects are loaded. Prevents any
|
||||
// problems running with execFlowFunctionObjects.
|
||||
readFields
|
||||
{
|
||||
// Where to load it from (if not already in solver)
|
||||
functionObjectLibs ("libfieldFunctionObjects.so");
|
||||
|
||||
type readFields;
|
||||
fields (p U k);
|
||||
}
|
||||
|
||||
streamLines
|
||||
{
|
||||
type streamLine;
|
||||
|
||||
// Output every
|
||||
outputControl outputTime;
|
||||
// outputInterval 10;
|
||||
|
||||
setFormat vtk; //gnuplot; //xmgr; //raw; //jplot;
|
||||
|
||||
// Velocity field to use for tracking.
|
||||
U U;
|
||||
|
||||
// Tracked forwards (+U) or backwards (-U)
|
||||
trackForward true;
|
||||
|
||||
// Names of fields to sample. Should contain above velocity field!
|
||||
fields (p U k);
|
||||
|
||||
// Cells particles can travel before being removed
|
||||
lifeTime 1000;
|
||||
|
||||
// Cloud name to use
|
||||
cloudName particleTracks;
|
||||
|
||||
// Seeding method. See the sampleSets in sampleDict.
|
||||
seedSampleSet uniform; //cloud;//triSurfaceMeshPointSet;
|
||||
|
||||
uniformCoeffs
|
||||
{
|
||||
type uniform;
|
||||
axis x; //distance;
|
||||
|
||||
// Note: tracks slightly offset so as not to be on a face
|
||||
start (-1.001 1E-7 0.0011);
|
||||
end (-1.001 1E-7 1.0011);
|
||||
nPoints 20;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -33,7 +33,7 @@ PhaseChangeModel LiquidEvaporation;
|
||||
|
||||
DevolatilisationModel ConstantRateDevolatilisation;
|
||||
|
||||
SurfaceReactionModel COxidationDiffusionLimitedRate;
|
||||
SurfaceReactionModel COxidationKineticDiffusionLimitedRate;
|
||||
|
||||
PostProcessingModel none;
|
||||
|
||||
@ -167,10 +167,12 @@ ConstantRateDevolatilisationCoeffs
|
||||
volatileResidualCoeff 0.001;
|
||||
}
|
||||
|
||||
COxidationDiffusionLimitedRateCoeffs
|
||||
COxidationKineticDiffusionLimitedRateCoeffs
|
||||
{
|
||||
Sb Sb [ 0 0 0 0 0 ] 1;
|
||||
D D [ 0 2 -1 0 0 ] 1.5e-05;
|
||||
Sb Sb [ 0 0 0 0 0 ] 2.667;
|
||||
C1 C1 [ 0 0 0 0 0] 5.0E-12;
|
||||
C2 C2 [ 0 0 0 0 0] 0.002;
|
||||
E E [ 0 0 0 0 0] 7.9E+07;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -20,10 +20,10 @@ FoamFile
|
||||
{
|
||||
active true;
|
||||
timeStart 0.15;
|
||||
duration 0.1;
|
||||
duration 0.2;
|
||||
selectionMode cellSet;
|
||||
volumeMode absolute;
|
||||
fieldData 10000;
|
||||
fieldData 15000;
|
||||
cellSet ignitionCells;
|
||||
}
|
||||
);
|
||||
|
||||
@ -34,10 +34,17 @@ solvers
|
||||
|
||||
p
|
||||
{
|
||||
solver PBiCG;
|
||||
preconditioner DILU;
|
||||
solver GAMG;
|
||||
tolerance 1e-06;
|
||||
relTol 0.1;
|
||||
relTol 0.01;
|
||||
smoother GaussSeidel;
|
||||
nPreSweeps 0;
|
||||
nPostSweeps 2;
|
||||
nBottomSweeps 2;
|
||||
cacheAgglomeration false;
|
||||
nCellsInCoarsestLevel 10;
|
||||
agglomerator faceAreaPair;
|
||||
mergeLevels 1;
|
||||
}
|
||||
|
||||
pFinal
|
||||
@ -82,7 +89,7 @@ solvers
|
||||
PISO
|
||||
{
|
||||
transonic yes;
|
||||
nCorrectors 2;
|
||||
nCorrectors 3;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
momentumPredictor yes;
|
||||
}
|
||||
|
||||
@ -15,38 +15,18 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
//surfaceFilmModel kinematicSingleLayer;
|
||||
surfaceFilmModel thermoSingleLayer;
|
||||
|
||||
filmRegionName wallFilmRegion;
|
||||
|
||||
active true;
|
||||
|
||||
kinematicSingleLayerCoeffs
|
||||
{
|
||||
thermoModel constant;
|
||||
rho0 rho0 [1 -3 0 0 0] 1000;
|
||||
mu0 mu0 [1 -1 -1 0 0] 1e-3;
|
||||
sigma0 sigma0 [1 0 -2 0 0] 0.07;
|
||||
|
||||
deltaStable deltaStable [0 1 0 0 0] 0.0005;
|
||||
Cf 0.005;
|
||||
|
||||
injectionModel removeInjection; // none; // cloudInjection;
|
||||
}
|
||||
|
||||
|
||||
thermoSingleLayerCoeffs
|
||||
{
|
||||
thermoModel singleComponent; // constant
|
||||
liquid H2O;
|
||||
// thermoModel constant;
|
||||
// rho0 rho0 [1 -3 0 0 0] 1000;
|
||||
// mu0 mu0 [1 -1 -1 0 0] 1e-3;
|
||||
// sigma0 sigma0 [1 0 -2 0 0] 0.07;
|
||||
// cp0 cp0 [0 2 -2 -1 0] 4187;
|
||||
|
||||
deltaStable deltaStable [0 1 0 0 0] 0;
|
||||
Cf 0.005;
|
||||
|
||||
upperSurfaceModels
|
||||
@ -75,7 +55,9 @@ thermoSingleLayerCoeffs
|
||||
{
|
||||
cloudName reactingCloud1;
|
||||
|
||||
particlesPerParcel 100.0;
|
||||
deltaStable 0.0;
|
||||
|
||||
particlesPerParcel 100.0;
|
||||
|
||||
parcelPDF
|
||||
{
|
||||
|
||||
@ -288,9 +288,6 @@ meshQualityControls
|
||||
// Set to 180 to disable.
|
||||
maxConcave 80;
|
||||
|
||||
//- Minimum projected area v.s. actual area. Set to -1 to disable.
|
||||
minFlatness 0.5;
|
||||
|
||||
//- Minimum pyramid volume. Is absolute volume of cell pyramid.
|
||||
// Set to very negative number (e.g. -1E30) to disable.
|
||||
minVol 1e-20;
|
||||
|
||||
Reference in New Issue
Block a user