Initial commit copy of KAUST case

This commit is contained in:
ignis 2018-11-11 04:06:48 +09:00
commit 3a2e8ad3ec
23 changed files with 2031 additions and 0 deletions

15
.gitignore vendored Normal file
View file

@ -0,0 +1,15 @@
.*.swp
*.gz
log.*
job.[0-9]*.out
postProcessing
*~
processor*
[0-9]*
[0-9]*.[0-9]*
!0.org
constant/extendedFeatureEdgeMesh
*.eMesh
constant/polyMesh/*
!constant/polyMesh/blockMeshDict
constant/cellToRegion

72
0.org/CH4 Normal file
View file

@ -0,0 +1,72 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2;
format ascii;
class volScalarField;
location "0";
object CH4;
}
dimensions [ 0 0 0 0 0 0 0 ];
internalField uniform 0;
boundaryField
{
nzLow
{
type fixedValue;
value uniform 0.14046;
}
nzUpp
{
type fixedValue;
value uniform 0;
}
coLow
{
type fixedValue;
value uniform 0;
}
coUpp
{
type fixedValue;
value uniform 0;
}
waLow
{
type zeroGradient;
}
waUpp
{
type zeroGradient;
}
outlet
{
type inletOutlet;
inletValue uniform 0;
value uniform 0;
}
front
{
type wedge;
}
back
{
type wedge;
}
axis
{
type empty;
}
}
// ************************************************************************* //

72
0.org/N2 Normal file
View file

@ -0,0 +1,72 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2;
format ascii;
class volScalarField;
location "0";
object N2;
}
dimensions [ 0 0 0 0 0 0 0 ];
internalField uniform 1;
boundaryField
{
nzLow
{
type fixedValue;
value uniform 0.85954;
}
nzUpp
{
type fixedValue;
value uniform 0.440011;
}
coLow
{
type fixedValue;
value uniform 1;
}
coUpp
{
type fixedValue;
value uniform 1;
}
waLow
{
type zeroGradient;
}
waUpp
{
type zeroGradient;
}
outlet
{
type inletOutlet;
inletValue uniform 1;
value uniform 1;
}
front
{
type wedge;
}
back
{
type wedge;
}
axis
{
type empty;
}
}
// ************************************************************************* //

72
0.org/O2 Normal file
View file

@ -0,0 +1,72 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2;
format ascii;
class volScalarField;
location "0";
object O2;
}
dimensions [ 0 0 0 0 0 0 0 ];
internalField uniform 0;
boundaryField
{
nzLow
{
type fixedValue;
value uniform 0;
}
nzUpp
{
type fixedValue;
value uniform 0.559989;
}
coLow
{
type fixedValue;
value uniform 0;
}
coUpp
{
type fixedValue;
value uniform 0;
}
waLow
{
type zeroGradient;
}
waUpp
{
type zeroGradient;
}
outlet
{
type inletOutlet;
inletValue uniform 0;
value uniform 0;
}
front
{
type wedge;
}
back
{
type wedge;
}
axis
{
type empty;
}
}
// ************************************************************************* //

72
0.org/T Normal file
View file

@ -0,0 +1,72 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2;
format ascii;
class volScalarField;
location "0";
object T;
}
dimensions [ 0 0 0 1 0 0 0 ];
internalField uniform 300;
boundaryField
{
nzLow
{
type fixedValue;
value uniform 300;
}
nzUpp
{
type fixedValue;
value uniform 300;
}
coLow
{
type fixedValue;
value uniform 300;
}
coUpp
{
type fixedValue;
value uniform 300;
}
waLow
{
type zeroGradient;
}
waUpp
{
type zeroGradient;
}
outlet
{
type inletOutlet;
inletValue uniform 300;
value uniform 300;
}
front
{
type wedge;
}
back
{
type wedge;
}
axis
{
type empty;
}
}
// ************************************************************************* //

71
0.org/U Normal file
View file

@ -0,0 +1,71 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2;
format ascii;
class volVectorField;
location "0";
object U;
}
dimensions [ 0 1 -1 0 0 0 0 ];
internalField uniform ( 0 0 0 );
boundaryField
{
nzLow
{
type fixedValue;
value uniform ( 0.0 0.2 0 );
}
nzUpp
{
type fixedValue;
value uniform ( 0 -0.2 0 );
}
coLow
{
type fixedValue;
value uniform ( 0.0 0.2 0 );
}
coUpp
{
type fixedValue;
value uniform ( 0 -0.2 0 );
}
waLow
{
type slip;
}
waUpp
{
type slip;
}
outlet
{
type pressureInletOutletVelocity;
value uniform ( 0 0 0 );
}
front
{
type wedge;
}
back
{
type wedge;
}
axis
{
type empty;
}
}
// ************************************************************************* //

72
0.org/Ydefault Normal file
View file

@ -0,0 +1,72 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2;
format ascii;
class volScalarField;
location "0.0038885";
object H;
}
dimensions [ 0 0 0 0 0 0 0 ];
internalField uniform 0;
boundaryField
{
nzLow
{
type fixedValue;
value uniform 0;
}
nzUpp
{
type fixedValue;
value uniform 0;
}
coLow
{
type fixedValue;
value uniform 0;
}
coUpp
{
type fixedValue;
value uniform 0;
}
waLow
{
type zeroGradient;
}
waUpp
{
type zeroGradient;
}
outlet
{
type inletOutlet;
inletValue uniform 0;
value uniform 0;
}
front
{
type wedge;
}
back
{
type wedge;
}
axis
{
type empty;
}
}
// ************************************************************************* //

70
0.org/alphat Normal file
View file

@ -0,0 +1,70 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2;
format ascii;
class volScalarField;
location "0";
object alphat;
}
dimensions [ 1 -1 -1 0 0 0 0 ];
internalField uniform 0;
boundaryField
{
nzLow
{
type fixedValue;
value uniform 0;
}
nzUpp
{
type fixedValue;
value uniform 0;
}
coLow
{
type fixedValue;
value uniform 0;
}
coUpp
{
type fixedValue;
value uniform 0;
}
waLow
{
type zeroGradient;
}
waUpp
{
type zeroGradient;
}
outlet
{
type zeroGradient;
}
front
{
type wedge;
}
back
{
type wedge;
}
axis
{
type empty;
}
}
// ************************************************************************* //

71
0.org/p Normal file
View file

@ -0,0 +1,71 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2;
format ascii;
class volScalarField;
location "0";
object p;
}
dimensions [ 1 -1 -2 0 0 0 0 ];
internalField uniform 101325;
boundaryField
{
nzLow
{
type zeroGradient;
}
nzUpp
{
type zeroGradient;
}
coLow
{
type zeroGradient;
}
coUpp
{
type zeroGradient;
}
waLow
{
type zeroGradient;
}
waUpp
{
type zeroGradient;
}
outlet
{
type totalPressure;
rho none;
psi none;
gamma 1;
p0 uniform 101325;
value uniform 101325;
}
front
{
type wedge;
}
back
{
type wedge;
}
axis
{
type empty;
}
}
// ************************************************************************* //

View file

@ -0,0 +1,41 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object chemistryProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
chemistryType
{
chemistrySolver ode; // EulerImplicit; //
chemistryThermo psi;
}
chemistry on;
initialChemicalTimeStep 1e-10;
EulerImplicitCoeffs
{
cTauChem 1;
equilibriumRateLimiter off;
}
odeCoeffs
{
solver rodas23;
absTol 1e-12;
relTol 0.01;
}
// ************************************************************************* //

View file

@ -0,0 +1,28 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object combustionProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
combustionModel laminar<psiChemistryCombustion>;
active true; // false; //
laminarCoeffs
{
integrateReactionRate true;
}
// ************************************************************************* //

22
constant/g Normal file
View file

@ -0,0 +1,22 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class uniformDimensionedVectorField;
location "constant";
object g;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -2 0 0 0 0];
value ( 0 0 0 );
// ************************************************************************* //

View file

@ -0,0 +1,184 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.3.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1e-3; // 1 m / 1000 mm
vertices
(
( 0.0000000000000e+00 -5.0000000000000e+00 -0.0000000000000e+00 ) // 0
( 4.9998096153209e+00 -5.0000000000000e+00 -4.3632677491870e-02 ) // 1
( 4.9998096153209e+00 5.0000000000000e+00 -4.3632677491870e-02 ) // 2
( 0.0000000000000e+00 5.0000000000000e+00 -0.0000000000000e+00 ) // 3
( 4.9998096153209e+00 -5.0000000000000e+00 4.3632677491870e-02 ) // 4
( 4.9998096153209e+00 5.0000000000000e+00 4.3632677491870e-02 ) // 5
( 4.9998096153209e+00 -5.0000000000000e+00 -4.3632677491870e-02 ) // 6
( 9.9996192306417e+00 -5.0000000000000e+00 -8.7265354983739e-02 ) // 7
( 9.9996192306417e+00 5.0000000000000e+00 -8.7265354983739e-02 ) // 8
( 4.9998096153209e+00 5.0000000000000e+00 -4.3632677491870e-02 ) // 9
( 4.9998096153209e+00 -5.0000000000000e+00 4.3632677491870e-02 ) // 10
( 9.9996192306417e+00 -5.0000000000000e+00 8.7265354983739e-02 ) // 11
( 9.9996192306417e+00 5.0000000000000e+00 8.7265354983739e-02 ) // 12
( 4.9998096153209e+00 5.0000000000000e+00 4.3632677491870e-02 ) // 13
( 9.9996192306417e+00 -5.0000000000000e+00 -8.7265354983739e-02 ) // 14
( 3.9998476922567e+01 -5.0000000000000e+00 -3.4906141993496e-01 ) // 15
( 3.9998476922567e+01 5.0000000000000e+00 -3.4906141993496e-01 ) // 16
( 9.9996192306417e+00 5.0000000000000e+00 -8.7265354983739e-02 ) // 17
( 9.9996192306417e+00 -5.0000000000000e+00 8.7265354983739e-02 ) // 18
( 3.9998476922567e+01 -5.0000000000000e+00 3.4906141993496e-01 ) // 19
( 3.9998476922567e+01 5.0000000000000e+00 3.4906141993496e-01 ) // 20
( 9.9996192306417e+00 5.0000000000000e+00 8.7265354983739e-02 ) // 21
)
;
blocks
(
hex ( 0 1 2 3 0 4 5 3 ) ( 50 100 1 ) simpleGrading ( 1 1 1 ) // inner
hex ( 6 7 8 9 10 11 12 13 ) ( 50 100 1 ) simpleGrading ( 1 1 1 ) // coflow
hex ( 14 15 16 17 18 19 20 21 ) ( 300 100 1 ) simpleGrading ( 1 1 1 ) // outer
)
;
edges
(
);
boundary
(
nzLow
{
type patch;
faces
(
(0 1 4 0) // inner down
);
}
nzUpp
{
type patch;
faces
(
(2 3 3 5) // inner up
);
}
coLow
{
type patch;
faces
(
( 6 7 11 10) // coflow down
);
}
coUpp
{
type patch;
faces
(
( 8 9 13 12) // coflow up
);
}
waLow
{
type patch;
faces
(
(14 15 19 18) // outer down
);
}
waUpp
{
type patch;
faces
(
(16 17 21 20) // outer up
);
}
outlet
{
type patch;
faces
(
(15 16 20 19) // outer right
);
}
front
{
type wedge;
faces
(
(0 4 5 3) // inner front
(10 11 12 13) // coflow front
(18 19 20 21) // outer front
);
}
back
{
type wedge;
faces
(
(0 3 2 1) // inner back
(6 9 8 7) // coflow back
(14 17 16 15) // outer back
);
}
axis
{
type empty;
faces
(
(3 0 0 3) // inner left = axis
);
}
dummy1
{
type empty;
faces
(
(1 2 5 4) // inner right
);
}
dummy2
{
type empty;
faces
(
( 9 6 10 13) // coflow left
);
}
dummy3
{
type empty;
faces
(
( 7 8 12 11) // coflow right
);
}
dummy4
{
type empty;
faces
(
(17 14 18 21) // outer left
);
}
);
mergePatchPairs
(
(dummy1 dummy2)
(dummy3 dummy4)
);
// ************************************************************************* //

View file

@ -0,0 +1,37 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object thermophysicalProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
thermoType
{
type hePsiThermo;
mixture reactingMixture;
transport sutherland;
thermo janaf;
energy sensibleEnthalpy;
equationOfState perfectGas;
specie specie;
}
inertSpecie N2;
chemistryReader foamChemistryReader;
foamChemistryFile "$FOAM_CASE/constant/prager/grimech30.foam";
foamChemistryThermoFile "$FOAM_CASE/constant/prager/thermo30.foam";
// ************************************************************************* //

View file

@ -0,0 +1,21 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object turbulenceProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
simulationType laminar;
// ************************************************************************* //

93
system/controlDict Normal file
View file

@ -0,0 +1,93 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
application reactingFoam;
startFrom startTime; // latestTime; //
startTime 0;
stopAt endTime; // noWriteNow; // nextWrite; // writeNow; //
endTime 0.5;
deltaT 1.0e-6;
writeControl adjustableRunTime; // clockTime; // timeStep; //
writeInterval 1000; // 10000; // 0.05; // 0.000078; //3600; //
purgeWrite 0;
/*
secondaryWriteControl timeStep; //clockTime; //
secondaryWriteInterval 501; // 3600; //
secondaryPurgeWrite 1;
*/
secondaryWriteControl clockTime; // timeStep; //
secondaryWriteInterval 3000; // 1;
secondaryPurgeWrite 2;
writeFormat ascii;
writePrecision 6;
writeCompression off;
timeFormat general;
timePrecision 8;
runTimeModifiable true;
adjustTimeStep no;
maxCo 0.4;
functions
{
fieldMinMax1
{
type fieldMinMax;
functionObjectLibs ("libfieldFunctionObjects.so");
/*
region defaultRegion;
enabled yes;
timeStart 0;
timeEnd 10;
outputControl outputTime;
outputInterval 1;
*/
write no;
log yes;
location yes;
mode magnitude;
fields
(
p
Phi
);
}
}
// ************************************************************************* //

62
system/decomposeParDict Normal file
View file

@ -0,0 +1,62 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.2.2 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 100;
// method manual;
method simple;
// method scotch;
simpleCoeffs
{
// n ( 4 5 1 );
n ( 100 1 1 );
delta 0.001;
}
/*
simpleCoeffs
{
n ( 1 2 2 );
delta 0.001;
}
*/
hierarchicalCoeffs
{
n ( 1 1 1 );
delta 0.001;
order xyz;
}
scotchCoeffs
{
}
manualCoeffs
{
dataFile "manualDecomposition-24";
}
distributed no;
roots ( );
// ************************************************************************* //

40
system/fvOptions Normal file
View file

@ -0,0 +1,40 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object fvOptions;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
source1
{
type fixedTemperatureConstraint;
active false;
timeStart 0.0;
duration 0.1;
selectionMode cellSet;
cellSet ignitionCells;
fixedTemperatureConstraintCoeffs
{
mode uniform;
temperature table
2
(
(0 300)
(0.01 2000)
)
;
}
}
// ************************************************************************* //

76
system/fvSchemes Normal file
View file

@ -0,0 +1,76 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
ddtSchemes
{
default Euler;
}
gradSchemes
{
default Gauss linear;
}
divSchemes
{
default none;
/*
div(phi,U) Gauss linearUpwindV cellLimited 1;
div(phi,Yi_h) Gauss linearUpwind cellLimited 1;
div(phi,K) Gauss linearUpwind cellLimited 1;
div(phid,p) Gauss linearUpwind cellLimited 1;
div(phi,epsilon) Gauss linearUpwind cellLimited 1;
div(phi,k) Gauss linearUpwind cellLimited 1;
div((muEff*dev2(T(grad(U))))) Gauss linear;
div((interpolate((((De|ng)|Te)*grad(Te)))&S),ne) Gauss linearUpwind cellLimited 1;
div(ve,ne) Gauss linearUpwind cellLimited 1;
*/
div(phi,U) Gauss limitedLinearV 1;
div(phi,Yi_h) Gauss limitedLinear 1;
div(phi,K) Gauss limitedLinear 1;
div(phid,p) Gauss limitedLinear 1;
div(phi,epsilon) Gauss limitedLinear 1;
div(phi,k) Gauss limitedLinear 1;
div((muEff*dev2(T(grad(U))))) Gauss linear;
div((interpolate((((De|ng)|Te)*grad(Te)))&S),ne) Gauss limitedLinear 1;
div(ve,ne) Gauss limitedLinear 1;
}
laplacianSchemes
{
default Gauss linear orthogonal;
}
interpolationSchemes
{
default linear;
}
snGradSchemes
{
default orthogonal;
}
fluxRequired
{
default no;
p;
}
// ************************************************************************* //

95
system/fvSolution Normal file
View file

@ -0,0 +1,95 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
solvers
{
"rho.*"
{
solver diagonal;
}
p
{
solver PCG;
preconditioner DIC;
tolerance 1e-6;
relTol 0.1;
}
pFinal
{
$p;
tolerance 1e-6;
relTol 0.0;
}
"(U|h|k|epsilon)"
{
solver PBiCG;
preconditioner DILU;
tolerance 1e-6;
relTol 0.1;
}
"(U|h|k|epsilon)Final"
{
$U;
relTol 0;
}
Yi
{
solver smoothSolver;
smoother DILU;
tolerance 1e-6;
relTol 0;
// $hFinal;
}
ne
{
$Yi;
tolerance 1e-9;
nNeSubCycles 1000;
}
Phi
{
solver PCG;
preconditioner DIC;
tolerance 1e-08;
relTol 0.2;
}
PhiFinal
{
$Phi;
tolerance 1e-08;
relTol 0.0;
}
}
PIMPLE
{
momentumPredictor no;
nOuterCorrectors 1;
nCorrectors 2;
nNonOrthogonalCorrectors 0;
}
// ************************************************************************* //

26
system/manDecomp.py Normal file
View file

@ -0,0 +1,26 @@
# coding: utf-8
import numpy as np
'''
y1 = np.arange(0, 30e-3, 1.5e-3)
y2 = np.arange(30e-3, 41e-3, 2.5e-3)
'''
y1 = []
y2 = np.linspace(0, 40.0e-3, 81)
y = np.hstack((y1, y2))
form = '''
boxToCell
{{
box ({0} -1 -1) ({1} 1 1);
fieldValues
(
volScalarFieldValue cellDist {2}
);
}}
'''
for i, yi in enumerate(y[:-1]):
print form.format(yi, y[i+1], i)

294
system/setFieldsDict Normal file
View file

@ -0,0 +1,294 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object setFieldsDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
defaultFieldValues
(
// volScalarFieldValue alpha1 0
// volVectorFieldValue U (0 0 0)
);
regions
(
// Set cell values
// (does zerogradient on boundaries)
boxToCell
{
box (-1 0.0 -1) (1 0.0003125 1);
fieldValues
(
volScalarFieldValue cellDist 0
);
}
boxToCell
{
box (-1 0.0003125 -1) (1 0.000625 1);
fieldValues
(
volScalarFieldValue cellDist 1
);
}
boxToCell
{
box (-1 0.000625 -1) (1 0.0009375 1);
fieldValues
(
volScalarFieldValue cellDist 2
);
}
boxToCell
{
box (-1 0.0009375 -1) (1 0.00125 1);
fieldValues
(
volScalarFieldValue cellDist 3
);
}
boxToCell
{
box (-1 0.00125 -1) (1 0.0015625 1);
fieldValues
(
volScalarFieldValue cellDist 4
);
}
boxToCell
{
box (-1 0.0015625 -1) (1 0.001875 1);
fieldValues
(
volScalarFieldValue cellDist 5
);
}
boxToCell
{
box (-1 0.001875 -1) (1 0.0021875 1);
fieldValues
(
volScalarFieldValue cellDist 6
);
}
boxToCell
{
box (-1 0.0021875 -1) (1 0.0025 1);
fieldValues
(
volScalarFieldValue cellDist 7
);
}
boxToCell
{
box (-1 0.0025 -1) (1 0.0028125 1);
fieldValues
(
volScalarFieldValue cellDist 8
);
}
boxToCell
{
box (-1 0.0028125 -1) (1 0.003125 1);
fieldValues
(
volScalarFieldValue cellDist 9
);
}
boxToCell
{
box (-1 0.003125 -1) (1 0.0034375 1);
fieldValues
(
volScalarFieldValue cellDist 10
);
}
boxToCell
{
box (-1 0.0034375 -1) (1 0.00375 1);
fieldValues
(
volScalarFieldValue cellDist 11
);
}
boxToCell
{
box (-1 0.00375 -1) (1 0.0040625 1);
fieldValues
(
volScalarFieldValue cellDist 12
);
}
boxToCell
{
box (-1 0.0040625 -1) (1 0.004375 1);
fieldValues
(
volScalarFieldValue cellDist 13
);
}
boxToCell
{
box (-1 0.004375 -1) (1 0.0046875 1);
fieldValues
(
volScalarFieldValue cellDist 14
);
}
boxToCell
{
box (-1 0.0046875 -1) (1 0.005 1);
fieldValues
(
volScalarFieldValue cellDist 15
);
}
boxToCell
{
box (-1 0.005 -1) (1 0.0053125 1);
fieldValues
(
volScalarFieldValue cellDist 16
);
}
boxToCell
{
box (-1 0.0053125 -1) (1 0.005625 1);
fieldValues
(
volScalarFieldValue cellDist 17
);
}
boxToCell
{
box (-1 0.005625 -1) (1 0.0059375 1);
fieldValues
(
volScalarFieldValue cellDist 18
);
}
boxToCell
{
box (-1 0.0059375 -1) (1 0.00625 1);
fieldValues
(
volScalarFieldValue cellDist 19
);
}
boxToCell
{
box (-1 0.00625 -1) (1 0.0065625 1);
fieldValues
(
volScalarFieldValue cellDist 20
);
}
boxToCell
{
box (-1 0.0065625 -1) (1 0.006875 1);
fieldValues
(
volScalarFieldValue cellDist 21
);
}
boxToCell
{
box (-1 0.006875 -1) (1 0.0071875 1);
fieldValues
(
volScalarFieldValue cellDist 22
);
}
boxToCell
{
box (-1 0.0071875 -1) (1 0.0075 1);
fieldValues
(
volScalarFieldValue cellDist 23
);
}
);

425
system/topoSetDict Normal file
View file

@ -0,0 +1,425 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 2.4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object topoSetDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// List of actions. Each action is a dictionary with e.g.
// // name of set
// name c0;
//
// // type: pointSet/faceSet/cellSet/faceZoneSet/cellZoneSet
// type cellSet;
//
// // action to perform on set. Two types:
// // - require no source : clear/invert/remove
// // clear : clears set or zone
// // invert : select all currently non-selected elements
// // remove : removes set or zone
// // - require source : new/add/delete/subset
// // new : create new set or zone from source
// // add : add source to contents
// // delete : deletes source from contents
// // subset : keeps elements both in contents and source
// action new;
//
// The source entry varies according to the type of set:
//
// cellSet
// ~~~~~~~
//
// // Select by explicitly providing cell labels
// source labelToCell;
// sourceInfo
// {
// value (12 13 56); // labels of cells
// }
//
// // Copy elements from cellSet
// source cellToCell;
// sourceInfo
// {
// set c1;
// }
//
// // Cells in cell zone
// source zoneToCell;
// sourceInfo
// {
// name ".*Zone"; // Name of cellZone, regular expressions allowed
// }
//
// // Cells on master or slave side of faceZone
// source faceZoneToCell;
// sourceInfo
// {
// name ".*Zone"; // Name of faceZone, regular expressions allowed
// option master; // master/slave
// }
//
// // Select based on faceSet
// source faceToCell;
// sourceInfo
// {
// set f0; // Name of faceSet
//
// //option neighbour; // cell with neighbour in faceSet
// //option owner; // ,, owner
// option any; // cell with any face in faceSet
// //option all; // cell with all faces in faceSet
// }
//
// // Select based on pointSet
// source pointToCell;
// sourceInfo
// {
// set p0;
// option any; // cell with any point in pointSet
// //option edge; // cell with an edge with both points in pointSet
// }
//
// // Select based on cellShape
// source shapeToCell;
// sourceInfo
// {
// type hex; // hex/wedge/prism/pyr/tet/tetWedge/splitHex
// }
//
// // Cells with cell centre within box ('box') or multiple boxes ('boxes')
// source boxToCell;
// sourceInfo
// {
// box (0 0 0) (1 1 1);
// //boxes ((0 0 0) (1 1 1) (10 10 10)(11 11 11));
// }
//
// // Cells with cell centre within box
// // Is skewed, rotated box. Given as origin and three spanning vectors.
// source rotatedBoxToCell;
// sourceInfo
// {
// origin (0.2 0.2 -10);
// i (0.2 0.2 0);
// j (-0.2 0.2 0);
// k (10 10 10);
// }
//
// // Cells with centre within cylinder
// source cylinderToCell;
// sourceInfo
// {
// p1 (0.2 0.2 -10); // start point on cylinder axis
// p2 (0.2 0.2 0); // end point on cylinder axis
// radius 5.0;
// }
//
// // Cells with centre within sphere
// source sphereToCell;
// sourceInfo
// {
// centre (0.2 0.2 -10);
// radius 5.0;
// }
//
// // Cells with cellCentre nearest to coordinates
// source nearestToCell;
// sourceInfo
// {
// points ((0 0 0) (1 1 1)(2 2 2));
// }
//
// // Select based on surface
// source surfaceToCell;
// sourceInfo
// {
// file "www.avl.com-geometry.stl";
// useSurfaceOrientation false; // use closed surface inside/outside
// // test (ignores includeCut,
// // outsidePoints)
// outsidePoints ((-99 -99 -59)); // definition of outside
// includeCut false; // cells cut by surface
// includeInside false; // cells not on outside of surf
// includeOutside false; // cells on outside of surf
// nearDistance -1; // cells with centre near surf
// // (set to -1 if not used)
// curvature 0.9; // cells within nearDistance
// // and near surf curvature
// // (set to -100 if not used)
// }
//
// // values of field within certain range
// source fieldToCell;
// sourceInfo
// {
// fieldName U; // Note: uses mag(U) since volVectorField
// min 0.1;
// max 0.5;
// }
//
// // Mesh region (non-face connected part of (subset of)mesh)
// source regionToCell;
// sourceInfo
// {
// set c0; // optional name of cellSet giving mesh subset
// insidePoints ((1 2 3)); // points inside region to select
// nErode 0; // optional number of layers to erode
// // selection
// }
//
// // Cells underneath plane such that volume is reached. E.g. for use
// // in setFields to set the level given a wanted volume.
// source targetVolumeToCell;
// sourceInfo
// {
// volume 2e-05;
// normal (0 1 0); // usually in direction of gravity
// }
//
//
//
// faceSet
// ~~~~~~~
//
// // Copy elements from faceSet
// source faceToFace;
// sourceInfo
// {
// set f1;
// }
//
// // Select based on cellSet
// source cellToFace;
// sourceInfo
// {
// set c0;
// option all; // All faces of cells
// //option both; // Only faces whose owner&neighbour are in cellSet
// }
//
// // Select based on pointSet
// source pointToFace;
// sourceInfo
// {
// set p0;
// option any; // Faces using any point in pointSet
// //option all // Faces with all points in pointSet
// //option edge // Faces with two consecutive points in pointSet
// }
//
// // Select by explicitly providing face labels
// source labelToFace;
// sourceInfo
// {
// value (12 13 56); // labels of faces
// }
//
// // All faces of patch
// source patchToFace;
// sourceInfo
// {
// name ".*Wall"; // Name of patch or patch group,
// // (regular expressions allowed)
// }
//
// // All boundary faces
// source boundaryToFace;
// sourceInfo
// {
// }
//
// // All faces of faceZone
// source zoneToFace;
// sourceInfo
// {
// name ".*Zone1"; // Name of faceZone, regular expressions allowed
// }
//
// // Faces with face centre within box ('box') or multiple boxes ('boxes')
// source boxToFace;
// sourceInfo
// {
// box (0 0 0) (1 1 1);
// //boxes ((0 0 0) (1 1 1) (10 10 10)(11 11 11));
// }
//
// // Faces with normal to within certain angle aligned with vector.
// source normalToFace;
// sourceInfo
// {
// normal (0 0 1); // Vector
// cos 0.01; // Tolerance (max cos of angle)
// }
//
// // Walk on faces in faceSet, starting from face nearest given position
// source regionToFace;
// sourceInfo
// {
// set f0;
// nearPoint (0.1 0.1 0.005);
// }
//
//
//
// pointSet
// ~~~~~~~
//
// // Copy elements from pointSet
// source pointToPoint;
// sourceInfo
// {
// set p1;
// }
//
// // Select based on cellSet
// source cellToPoint;
// sourceInfo
// {
// set c0;
// option all; // all points of cell
// }
//
// // Select based on faceSet
// source faceToPoint;
// sourceInfo
// {
// set f0; // name of faceSet
// option all; // all points of face
// }
//
// // Select by explicitly providing point labels
// source labelToPoint;
// sourceInfo
// {
// value (12 13 56); // labels of points
// }
//
// // All points in pointzone
// source zoneToPoint;
// sourceInfo
// {
// name ".*Zone"; // name of pointZone, regular expressions allowed
// }
//
// // Points nearest to coordinates
// source nearestToPoint;
// sourceInfo
// {
// points ((0 0 0) (1 1 1));
// }
//
// // Points with coordinate within box ('box') or multiple boxes ('boxes')
// source boxToPoint;
// sourceInfo
// {
// box (0 0 0) (1 1 1);
// //boxes ((0 0 0) (1 1 1) (10 10 10)(11 11 11));
// }
//
// // Select based on surface
// source surfaceToPoint;
// sourceInfo
// {
// file "www.avl.com-geometry.stl";
// nearDistance 0.1; // points near to surface
// includeInside false; // points on inside of surface
// // (requires closed surface with consistent
// // normals)
// includeOutside false; // ,, outside ,,
// }
//
//
//
//
// cellZoneSet
// ~~~~~~~~~~~
// (mirrors operations on a cellSet into a cellZone)
//
// // Select based on cellSet
// source setToCellZone;
// sourceInfo
// {
// set c0; // name of cellSet
// }
//
//
//
// faceZoneSet
// ~~~~~~~~~~~
// // Select based on faceSet without orientation
// source setToFaceZone;
// sourceInfo
// {
// faceSet f0; // name of faceSet
// }
//
// // Select based on faceSet, using cellSet to determine orientation
// source setsToFaceZone;
// sourceInfo
// {
// faceSet f0; // name of faceSet
// cellSet c0; // name of cellSet of slave side
// flip false; // optional: flip the faceZone (so now the cellSet
// // is the master side)
// }
//
// // Select based on surface. Orientation from normals on surface
// {
// name fz0;
// type faceZoneSet;
// action new;
// source searchableSurfaceToFaceZone;
// sourceInfo
// {
// surface searchableSphere;
// centre (0.05 0.05 0.005);
// radius 0.025;
// //name sphere.stl; // Optional name if surface triSurfaceMesh
// }
// }
//
//
//
// pointZoneSet
// ~~~~~~~~~~~~
// (mirrors operations on a pointSet into a pointZone)
//
// // Select based on pointSet
// source setToPointZone;
// sourceInfo
// {
// set p0; // name of pointSet
// }
//
//
//
actions
(
// Example:pick up internal faces on outside of cellSet
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Load initial cellSet
{
name ignitionCells;
type cellZoneSet;
action new;
source boxToCell;
sourceInfo
{
box (-0.001 -0.001 -1) (0.001 0.001 1);
}
}
);
// ************************************************************************* //