New tutorial case for BF with dynamic cohesive zone.

This commit is contained in:
tlichtenegger
2020-02-10 07:41:33 +01:00
parent 9a81b875f1
commit 332dc5e057
224 changed files with 5782349 additions and 0 deletions

View File

@ -0,0 +1,25 @@
/*--------------------------------*- 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;
location "constant";
object RASProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
RASModel laminar;//kEpsilon;
turbulence off;
printCoeffs off;
// ************************************************************************* //

View File

@ -0,0 +1,183 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object couplingProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
//===========================================================================//
// sub-models & settings
modelType "A"; // A or B
couplingInterval 10;
voidFractionModel divided;
locateModel engine;//turboEngineM2M;//
meshMotionModel noMeshMotion;
regionModel allRegion;
IOModel "off";
dataExchangeModel twoWayMPI;//twoWayM2M;//twoWayFiles;//oneWayVTK;//
//dataExchangeModel twoWayMany2Many;
averagingModel dense;//dilute;//
clockModel standardClock;//off;
smoothingModel off;
probeModel off;
forceModels
(
dSauter
BeetstraDragPoly
gradPForce
viscForce
particleDeformation
);
momCoupleModels
(
implicitCouple
);
energyModels
(
heatTransferRanzMarshall
);
thermCondModel SyamlalThermCond;
chemistryModels ();
turbulenceModelType "turbulenceProperties";
/*liggghtsCommandModels
(
execute
);
*/
getParticleTypes true;
//getParticleTypeField true;
getParticleDensities false;
getParticleEffVolFactors true;
//===========================================================================//
// sub-model properties
implicitCoupleProps
{
velFieldName "U";
granVelFieldName "Us";
voidfractionFieldName "voidfraction";
}
gradPForceProps
{
pFieldName "p";
densityFieldName "rho";
voidfractionFieldName "voidfraction";
velocityFieldName "U";
}
viscForceProps
{
velocityFieldName "U";
densityFieldName "rho";
}
BeetstraDragProps
{
velFieldName "U";
granVelFieldName "Us";
densityFieldName "rho";
voidfractionFieldName "voidfraction";
phi 1;
coarseGrainingFactors (4.0 10.0);
}
dSauterProps
{
coarseGrainingFactors (4.0 10.0);
}
particleDeformationProps
{
refFieldName "partTempRef";
partType 2;
// same as Huo et al. (2017)
lowerBound 1475;
upperBound 1675;
}
heatTransferRanzMarshallProps
{
partTempName "Temp";
partHeatFluxName "convectiveHeatFlux";
calcPartTempField false;
coarseGrainingFactors (4.0 10.0);
partRefTemp 293;
interpolation false;
NusseltScalingFactor 0.1;
initPartTemp true;
Tmin 293;
Tmax 3000;
}
SyamlalThermCondProps
{
}
centreProps
{
alphaMin 0.10;
}
engineProps
{
treeSearch true;
}
dividedProps
{
alphaMin 0.1;
scaleUpVol 1.0;
weight 1.0;
verbose;
}
twoWayMPIProps
{
maxNumberOfParticles 50000;
liggghtsPath "../DEM/in.liggghts_CFDDEM_createDB";
liggghtsEndOfRunPath "../DEM/in.final";
}
// ************************************************************************* //

View File

@ -0,0 +1,22 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / 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 -9.81 );
// ************************************************************************* //

View File

@ -0,0 +1,42 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object liggghtsCommands;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
liggghtsCommandModels
(
runLiggghts
writeLiggghts
);
// ************************************************************************* //
/*runLiggghtsProps
{
preNo false;
}
writeLiggghtsProps
{
writeLast off;
overwrite off;
}*/

View File

@ -0,0 +1,195 @@
// Parametrized test case for a BF geometry
//Run using:
//m4 -P blockMeshDict.m4 > blockMeshDict
//m4 definitions:
//Mathematical constants:
//Geometry
// width of wedge
// height levels
// xlevels
//Grid points (integers!):
//m4_define(rGrading, 0.5)
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1;
vertices
(
(-6 0.6 -2) // Vertex V0 = 0
(0 0.6 -2) // Vertex V1 = 1
(0 0.6 0.75) // Vertex V2 = 2
(-6 0.6 0.75) // Vertex V3 = 3
(-7.4 0.6 3.9) // Vertex V4 = 4
(0 0.6 3.9) // Vertex V5 = 5
(0 0.6 6.4) // Vertex V6 = 6
(-7.4 0.6 6.4) // Vertex V7 = 7
(-4.7 0.6 24) // Vertex V8 = 8
(0 0.6 24) // Vertex V9 = 9
(0 0.6 26) // Vertex V10 = 10
(-4.7 0.6 26) // Vertex V11 = 11
// neg. y values
(-6 -0.6 -2) // Vertex V12 = 12
(0 -0.6 -2) // Vertex V13 = 13
(0 -0.6 0.75) // Vertex V14 = 14
(-6 -0.6 0.75) // Vertex V15 = 15
(-7.4 -0.6 3.9) // Vertex V16 = 16
(0 -0.6 3.9) // Vertex V17 = 17
(0 -0.6 6.4) // Vertex V18 = 18
(-7.4 -0.6 6.4) // Vertex V19 = 19
(-4.7 -0.6 24) // Vertex V20 = 20
(0 -0.6 24) // Vertex V21 = 21
(0 -0.6 26) // Vertex V22 = 22
(-4.7 -0.6 26) // Vertex V23 = 23
);
// Defining blocks:
blocks
(
hex ( 0 1 2 3 12 13 14 15 ) AB
(32 25 11)
simpleGrading (1.0 1 1)
hex ( 3 2 5 4 15 14 17 16) BC
(32 15 11)
simpleGrading (1.0 1 1)
hex ( 4 5 6 7 16 17 18 19) CD
(32 12 11)
simpleGrading (1.0 1 1)
hex ( 7 6 9 8 19 18 21 20 ) EF
(32 90 11)
simpleGrading (1.0 1 1)
hex ( 8 9 10 11 20 21 22 23 ) GH
(32 10 11)
simpleGrading (1.0 1 1)
);
// Defining patches:
boundary
(
bottom
{
type patch;
faces
(
(0 1 13 12)
);
}
wall
{
type wall;
faces
(
(0 3 15 12)
(3 4 16 15)
(4 7 19 16)
(7 8 20 19)
(8 11 23 20)
);
}
top
{
type patch;
faces
(
(11 10 22 23)
);
}
inner
{
type patch;
faces
(
(0 1 2 3)
(3 2 5 4)
(4 5 6 7)
(7 6 9 8)
(8 9 10 11)
(12 13 14 15)
(15 14 17 16)
(16 17 18 19)
(19 18 21 20)
(20 21 22 23)
);
}
);
mergePatchPairs
(
);
// ************************************************************************* //

View File

@ -0,0 +1,195 @@
// Parametrized test case for a BF geometry
//Run using:
//m4 -P blockMeshDict.m4 > blockMeshDict
//m4 definitions:
m4_changecom(//)m4_changequote([,])
m4_define(calc, [m4_esyscmd(perl -e 'use Math::Trig; printf ($1)')])
m4_define(VCOUNT, 0)
m4_define(vlabel, [[// ]Vertex $1 = VCOUNT m4_define($1, VCOUNT)m4_define([VCOUNT], m4_incr(VCOUNT))])
//Mathematical constants:
m4_define(pi, 3.1415926536)
//Geometry
// width of wedge
m4_define(y0, 0.6)
m4_define(y1, -0.6)
// height levels
m4_define(z0, -2)
m4_define(z1, 0.75)
m4_define(z2, 3.9)
m4_define(z3, 6.4)
m4_define(z4, 24)
m4_define(z5, 26)
// xlevels
m4_define(x0, -6)
m4_define(x1, -6)
m4_define(x2, -7.4)
m4_define(x3, -7.4)
m4_define(x4, -4.7)
m4_define(x5, -4.7)
//Grid points (integers!):
m4_define(xNumberOfCells, 32)
m4_define(yNumberOfCells, 11)
m4_define(zNumberOfCells0, 25)
m4_define(zNumberOfCells1, 15)
m4_define(zNumberOfCells2, 12)
m4_define(zNumberOfCells3, 90)
m4_define(zNumberOfCells4, 10)
m4_define(rGrading, 1.0)
//m4_define(rGrading, 0.5)
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1;
vertices
(
(x0 y0 z0) vlabel(V0)
(0 y0 z0) vlabel(V1)
(0 y0 z1) vlabel(V2)
(x1 y0 z1) vlabel(V3)
(x2 y0 z2) vlabel(V4)
(0 y0 z2) vlabel(V5)
(0 y0 z3) vlabel(V6)
(x3 y0 z3) vlabel(V7)
(x4 y0 z4) vlabel(V8)
(0 y0 z4) vlabel(V9)
(0 y0 z5) vlabel(V10)
(x5 y0 z5) vlabel(V11)
// neg. y values
(x0 y1 z0) vlabel(V12)
(0 y1 z0) vlabel(V13)
(0 y1 z1) vlabel(V14)
(x1 y1 z1) vlabel(V15)
(x2 y1 z2) vlabel(V16)
(0 y1 z2) vlabel(V17)
(0 y1 z3) vlabel(V18)
(x3 y1 z3) vlabel(V19)
(x4 y1 z4) vlabel(V20)
(0 y1 z4) vlabel(V21)
(0 y1 z5) vlabel(V22)
(x5 y1 z5) vlabel(V23)
);
// Defining blocks:
blocks
(
hex ( V0 V1 V2 V3 V12 V13 V14 V15 ) AB
(xNumberOfCells zNumberOfCells0 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V3 V2 V5 V4 V15 V14 V17 V16) BC
(xNumberOfCells zNumberOfCells1 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V4 V5 V6 V7 V16 V17 V18 V19) CD
(xNumberOfCells zNumberOfCells2 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V7 V6 V9 V8 V19 V18 V21 V20 ) EF
(xNumberOfCells zNumberOfCells3 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V8 V9 V10 V11 V20 V21 V22 V23 ) GH
(xNumberOfCells zNumberOfCells4 yNumberOfCells)
simpleGrading (rGrading 1 1)
);
// Defining patches:
boundary
(
bottom
{
type patch;
faces
(
(V0 V1 V13 V12)
);
}
wall
{
type wall;
faces
(
(V0 V3 V15 V12)
(V3 V4 V16 V15)
(V4 V7 V19 V16)
(V7 V8 V20 V19)
(V8 V11 V23 V20)
);
}
top
{
type patch;
faces
(
(V11 V10 V22 V23)
);
}
inner
{
type patch;
faces
(
(V0 V1 V2 V3)
(V3 V2 V5 V4)
(V4 V5 V6 V7)
(V7 V6 V9 V8)
(V8 V9 V10 V11)
(V12 V13 V14 V15)
(V15 V14 V17 V16)
(V16 V17 V18 V19)
(V19 V18 V21 V20)
(V20 V21 V22 V23)
);
}
);
mergePatchPairs
(
);
// ************************************************************************* //

View File

@ -0,0 +1,195 @@
// Parametrized test case for a BF geometry
//Run using:
//m4 -P blockMeshDict.m4 > blockMeshDict
//m4 definitions:
m4_changecom(//)m4_changequote([,])
m4_define(calc, [m4_esyscmd(perl -e 'use Math::Trig; printf ($1)')])
m4_define(VCOUNT, 0)
m4_define(vlabel, [[// ]Vertex $1 = VCOUNT m4_define($1, VCOUNT)m4_define([VCOUNT], m4_incr(VCOUNT))])
//Mathematical constants:
m4_define(pi, 3.1415926536)
//Geometry
// width of wedge
m4_define(y0, 0.6)
m4_define(y1, -0.6)
// height levels
m4_define(z0, -2)
m4_define(z1, 0.75)
m4_define(z2, 3.9)
m4_define(z3, 6.4)
m4_define(z4, 24)
m4_define(z5, 28)
// xlevels
m4_define(x0, -6)
m4_define(x1, -6)
m4_define(x2, -7.4)
m4_define(x3, -7.4)
m4_define(x4, -4.7)
m4_define(x5, -4.7)
//Grid points (integers!):
m4_define(xNumberOfCells, 32)
m4_define(yNumberOfCells, 11)
m4_define(zNumberOfCells0, 25)
m4_define(zNumberOfCells1, 15)
m4_define(zNumberOfCells2, 12)
m4_define(zNumberOfCells3, 90)
m4_define(zNumberOfCells4, 10)
m4_define(rGrading, 1.0)
//m4_define(rGrading, 0.5)
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1;
vertices
(
(x0 y0 z0) vlabel(V0)
(0 y0 z0) vlabel(V1)
(0 y0 z1) vlabel(V2)
(x1 y0 z1) vlabel(V3)
(x2 y0 z2) vlabel(V4)
(0 y0 z2) vlabel(V5)
(0 y0 z3) vlabel(V6)
(x3 y0 z3) vlabel(V7)
(x4 y0 z4) vlabel(V8)
(0 y0 z4) vlabel(V9)
(0 y0 z5) vlabel(V10)
(x5 y0 z5) vlabel(V11)
// neg. y values
(x0 y1 z0) vlabel(V12)
(0 y1 z0) vlabel(V13)
(0 y1 z1) vlabel(V14)
(x1 y1 z1) vlabel(V15)
(x2 y1 z2) vlabel(V16)
(0 y1 z2) vlabel(V17)
(0 y1 z3) vlabel(V18)
(x3 y1 z3) vlabel(V19)
(x4 y1 z4) vlabel(V20)
(0 y1 z4) vlabel(V21)
(0 y1 z5) vlabel(V22)
(x5 y1 z5) vlabel(V23)
);
// Defining blocks:
blocks
(
hex ( V0 V1 V2 V3 V12 V13 V14 V15 ) AB
(xNumberOfCells zNumberOfCells0 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V3 V2 V5 V4 V15 V14 V17 V16) BC
(xNumberOfCells zNumberOfCells1 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V4 V5 V6 V7 V16 V17 V18 V19) CD
(xNumberOfCells zNumberOfCells2 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V7 V6 V9 V8 V19 V18 V21 V20 ) EF
(xNumberOfCells zNumberOfCells3 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V8 V9 V10 V11 V20 V21 V22 V23 ) GH
(xNumberOfCells zNumberOfCells4 yNumberOfCells)
simpleGrading (rGrading 1 1)
);
// Defining patches:
boundary
(
bottom
{
type patch;
faces
(
(V0 V1 V13 V12)
);
}
wall
{
type wall;
faces
(
(V0 V3 V15 V12)
(V3 V4 V16 V15)
(V4 V7 V19 V16)
(V7 V8 V20 V19)
(V8 V11 V23 V20)
);
}
top
{
type patch;
faces
(
(V11 V10 V22 V23)
);
}
inner
{
type patch;
faces
(
(V0 V1 V2 V3)
(V3 V2 V5 V4)
(V4 V5 V6 V7)
(V7 V6 V9 V8)
(V8 V9 V10 V11)
(V12 V13 V14 V15)
(V15 V14 V17 V16)
(V16 V17 V18 V19)
(V19 V18 V21 V20)
(V20 V21 V22 V23)
);
}
);
mergePatchPairs
(
);
// ************************************************************************* //

View File

@ -0,0 +1,59 @@
/*--------------------------------*- 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.0;
format ascii;
class polyBoundaryMesh;
location "constant/polyMesh";
object boundary;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
6
(
bottom
{
type patch;
nFaces 704;
startFace 308920;
}
wall
{
type wall;
inGroups 1(wall);
nFaces 3332;
startFace 309624;
}
top
{
type patch;
nFaces 704;
startFace 312956;
}
inner
{
type patch;
nFaces 19456;
startFace 313660;
}
inletLeft
{
type patch;
nFaces 6;
startFace 333116;
}
inletRight
{
type patch;
nFaces 6;
startFace 333122;
}
)
// ************************************************************************* //

View File

@ -0,0 +1,35 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class regIOobject;
location "constant/polyMesh";
object faceZones;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
2
(
inletLeft
{
type faceZone;
faceLabels 0();
flipMap 0();
}
inletRight
{
type faceZone;
faceLabels 0();
flipMap 0();
}
)
// ************************************************************************* //

View File

@ -0,0 +1,21 @@
/*--------------------------------*- 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.0;
format ascii;
class regIOobject;
location "constant/polyMesh";
object pointZones;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
0
()
// ************************************************************************* //

View File

@ -0,0 +1,41 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class cellSet;
location "constant/polyMesh/sets";
object c_left;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
18
(
3776
3777
3778
3808
3809
3810
4576
4577
4578
4608
4609
4610
5376
5377
5378
5408
5409
5410
)
// ************************************************************************* //

View File

@ -0,0 +1,41 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class cellSet;
location "constant/polyMesh/sets";
object c_right;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
18
(
57280
57281
57282
57312
57313
57314
58080
58081
58082
58112
58113
58114
58880
58881
58882
58912
58913
58914
)
// ************************************************************************* //

View File

@ -0,0 +1,23 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class faceSet;
location "constant/polyMesh/sets";
object inletLeft;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
0
(
)
// ************************************************************************* //

View File

@ -0,0 +1,23 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class faceSet;
location "constant/polyMesh/sets";
object inletRight;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
0
(
)
// ************************************************************************* //

View File

@ -0,0 +1,671 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class cellSet;
location "constant/polyMesh/sets";
object rw_left;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
648
(
1248
1249
1250
1251
1252
1253
1254
1255
1280
1281
1282
1283
1284
1285
1286
1287
1312
1313
1314
1315
1316
1317
1318
1319
1344
1345
1346
1347
1348
1349
1350
1351
1376
1377
1378
1379
1380
1381
1382
1383
1408
1409
1410
1411
1412
1413
1414
1415
1440
1441
1442
1443
1444
1445
1446
1447
1472
1473
1474
1475
1476
1477
1478
1479
1504
1505
1506
1507
1508
1509
1510
1511
2048
2049
2050
2051
2052
2053
2054
2055
2080
2081
2082
2083
2084
2085
2086
2087
2112
2113
2114
2115
2116
2117
2118
2119
2144
2145
2146
2147
2148
2149
2150
2151
2176
2177
2178
2179
2180
2181
2182
2183
2208
2209
2210
2211
2212
2213
2214
2215
2240
2241
2242
2243
2244
2245
2246
2247
2272
2273
2274
2275
2276
2277
2278
2279
2304
2305
2306
2307
2308
2309
2310
2311
2848
2849
2850
2851
2852
2853
2854
2855
2880
2881
2882
2883
2884
2885
2886
2887
2912
2913
2914
2915
2916
2917
2918
2919
2944
2945
2946
2947
2948
2949
2950
2951
2976
2977
2978
2979
2980
2981
2982
2983
3008
3009
3010
3011
3012
3013
3014
3015
3040
3041
3042
3043
3044
3045
3046
3047
3072
3073
3074
3075
3076
3077
3078
3079
3104
3105
3106
3107
3108
3109
3110
3111
3648
3649
3650
3651
3652
3653
3654
3655
3680
3681
3682
3683
3684
3685
3686
3687
3712
3713
3714
3715
3716
3717
3718
3719
3744
3745
3746
3747
3748
3749
3750
3751
3776
3777
3778
3779
3780
3781
3782
3783
3808
3809
3810
3811
3812
3813
3814
3815
3840
3841
3842
3843
3844
3845
3846
3847
3872
3873
3874
3875
3876
3877
3878
3879
3904
3905
3906
3907
3908
3909
3910
3911
4448
4449
4450
4451
4452
4453
4454
4455
4480
4481
4482
4483
4484
4485
4486
4487
4512
4513
4514
4515
4516
4517
4518
4519
4544
4545
4546
4547
4548
4549
4550
4551
4576
4577
4578
4579
4580
4581
4582
4583
4608
4609
4610
4611
4612
4613
4614
4615
4640
4641
4642
4643
4644
4645
4646
4647
4672
4673
4674
4675
4676
4677
4678
4679
4704
4705
4706
4707
4708
4709
4710
4711
5248
5249
5250
5251
5252
5253
5254
5255
5280
5281
5282
5283
5284
5285
5286
5287
5312
5313
5314
5315
5316
5317
5318
5319
5344
5345
5346
5347
5348
5349
5350
5351
5376
5377
5378
5379
5380
5381
5382
5383
5408
5409
5410
5411
5412
5413
5414
5415
5440
5441
5442
5443
5444
5445
5446
5447
5472
5473
5474
5475
5476
5477
5478
5479
5504
5505
5506
5507
5508
5509
5510
5511
6048
6049
6050
6051
6052
6053
6054
6055
6080
6081
6082
6083
6084
6085
6086
6087
6112
6113
6114
6115
6116
6117
6118
6119
6144
6145
6146
6147
6148
6149
6150
6151
6176
6177
6178
6179
6180
6181
6182
6183
6208
6209
6210
6211
6212
6213
6214
6215
6240
6241
6242
6243
6244
6245
6246
6247
6272
6273
6274
6275
6276
6277
6278
6279
6304
6305
6306
6307
6308
6309
6310
6311
6848
6849
6850
6851
6852
6853
6854
6855
6880
6881
6882
6883
6884
6885
6886
6887
6912
6913
6914
6915
6916
6917
6918
6919
6944
6945
6946
6947
6948
6949
6950
6951
6976
6977
6978
6979
6980
6981
6982
6983
7008
7009
7010
7011
7012
7013
7014
7015
7040
7041
7042
7043
7044
7045
7046
7047
7072
7073
7074
7075
7076
7077
7078
7079
7104
7105
7106
7107
7108
7109
7110
7111
7648
7649
7650
7651
7652
7653
7654
7655
7680
7681
7682
7683
7684
7685
7686
7687
7712
7713
7714
7715
7716
7717
7718
7719
7744
7745
7746
7747
7748
7749
7750
7751
7776
7777
7778
7779
7780
7781
7782
7783
7808
7809
7810
7811
7812
7813
7814
7815
7840
7841
7842
7843
7844
7845
7846
7847
7872
7873
7874
7875
7876
7877
7878
7879
7904
7905
7906
7907
7908
7909
7910
7911
)
// ************************************************************************* //

View File

@ -0,0 +1,671 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class cellSet;
location "constant/polyMesh/sets";
object rw_right;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
648
(
54752
54753
54754
54755
54756
54757
54758
54759
54784
54785
54786
54787
54788
54789
54790
54791
54816
54817
54818
54819
54820
54821
54822
54823
54848
54849
54850
54851
54852
54853
54854
54855
54880
54881
54882
54883
54884
54885
54886
54887
54912
54913
54914
54915
54916
54917
54918
54919
54944
54945
54946
54947
54948
54949
54950
54951
54976
54977
54978
54979
54980
54981
54982
54983
55008
55009
55010
55011
55012
55013
55014
55015
55552
55553
55554
55555
55556
55557
55558
55559
55584
55585
55586
55587
55588
55589
55590
55591
55616
55617
55618
55619
55620
55621
55622
55623
55648
55649
55650
55651
55652
55653
55654
55655
55680
55681
55682
55683
55684
55685
55686
55687
55712
55713
55714
55715
55716
55717
55718
55719
55744
55745
55746
55747
55748
55749
55750
55751
55776
55777
55778
55779
55780
55781
55782
55783
55808
55809
55810
55811
55812
55813
55814
55815
56352
56353
56354
56355
56356
56357
56358
56359
56384
56385
56386
56387
56388
56389
56390
56391
56416
56417
56418
56419
56420
56421
56422
56423
56448
56449
56450
56451
56452
56453
56454
56455
56480
56481
56482
56483
56484
56485
56486
56487
56512
56513
56514
56515
56516
56517
56518
56519
56544
56545
56546
56547
56548
56549
56550
56551
56576
56577
56578
56579
56580
56581
56582
56583
56608
56609
56610
56611
56612
56613
56614
56615
57152
57153
57154
57155
57156
57157
57158
57159
57184
57185
57186
57187
57188
57189
57190
57191
57216
57217
57218
57219
57220
57221
57222
57223
57248
57249
57250
57251
57252
57253
57254
57255
57280
57281
57282
57283
57284
57285
57286
57287
57312
57313
57314
57315
57316
57317
57318
57319
57344
57345
57346
57347
57348
57349
57350
57351
57376
57377
57378
57379
57380
57381
57382
57383
57408
57409
57410
57411
57412
57413
57414
57415
57952
57953
57954
57955
57956
57957
57958
57959
57984
57985
57986
57987
57988
57989
57990
57991
58016
58017
58018
58019
58020
58021
58022
58023
58048
58049
58050
58051
58052
58053
58054
58055
58080
58081
58082
58083
58084
58085
58086
58087
58112
58113
58114
58115
58116
58117
58118
58119
58144
58145
58146
58147
58148
58149
58150
58151
58176
58177
58178
58179
58180
58181
58182
58183
58208
58209
58210
58211
58212
58213
58214
58215
58752
58753
58754
58755
58756
58757
58758
58759
58784
58785
58786
58787
58788
58789
58790
58791
58816
58817
58818
58819
58820
58821
58822
58823
58848
58849
58850
58851
58852
58853
58854
58855
58880
58881
58882
58883
58884
58885
58886
58887
58912
58913
58914
58915
58916
58917
58918
58919
58944
58945
58946
58947
58948
58949
58950
58951
58976
58977
58978
58979
58980
58981
58982
58983
59008
59009
59010
59011
59012
59013
59014
59015
59552
59553
59554
59555
59556
59557
59558
59559
59584
59585
59586
59587
59588
59589
59590
59591
59616
59617
59618
59619
59620
59621
59622
59623
59648
59649
59650
59651
59652
59653
59654
59655
59680
59681
59682
59683
59684
59685
59686
59687
59712
59713
59714
59715
59716
59717
59718
59719
59744
59745
59746
59747
59748
59749
59750
59751
59776
59777
59778
59779
59780
59781
59782
59783
59808
59809
59810
59811
59812
59813
59814
59815
60352
60353
60354
60355
60356
60357
60358
60359
60384
60385
60386
60387
60388
60389
60390
60391
60416
60417
60418
60419
60420
60421
60422
60423
60448
60449
60450
60451
60452
60453
60454
60455
60480
60481
60482
60483
60484
60485
60486
60487
60512
60513
60514
60515
60516
60517
60518
60519
60544
60545
60546
60547
60548
60549
60550
60551
60576
60577
60578
60579
60580
60581
60582
60583
60608
60609
60610
60611
60612
60613
60614
60615
61152
61153
61154
61155
61156
61157
61158
61159
61184
61185
61186
61187
61188
61189
61190
61191
61216
61217
61218
61219
61220
61221
61222
61223
61248
61249
61250
61251
61252
61253
61254
61255
61280
61281
61282
61283
61284
61285
61286
61287
61312
61313
61314
61315
61316
61317
61318
61319
61344
61345
61346
61347
61348
61349
61350
61351
61376
61377
61378
61379
61380
61381
61382
61383
61408
61409
61410
61411
61412
61413
61414
61415
)
// ************************************************************************* //

View File

@ -0,0 +1,24 @@
/*--------------------------------*- 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;
location "constant";
object symmetrizerProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
scalarFields (voidfractionMean);
vectorFields (UsMean UMean);
refPoint (0 0 0);
refDirection (1 0 0);
// ************************************************************************* //

View File

@ -0,0 +1,24 @@
/*--------------------------------*- 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;
location "constant";
object symmetrizerProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
scalarFields (partTempRef);
vectorFields ();
refPoint (0 0 0);
refDirection (1 0 0);
// ************************************************************************* //

View File

@ -0,0 +1,49 @@
/*--------------------------------*- 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;
location "constant";
object thermophysicalProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
thermoType
{
type hePsiThermo;
mixture pureMixture;
transport const;
thermo eConst;
equationOfState perfectGas;
specie specie;
energy sensibleInternalEnergy;
}
mixture
{
specie
{
nMoles 1;
molWeight 28.9;
}
thermodynamics
{
Cv 718;
Hf 0;
}
transport
{
mu 2e-05;
Pr 0.8;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,43 @@
/*--------------------------------*- 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;
location "constant";
object transportProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
transportModel Newtonian;
nu nu [ 0 2 -1 0 0 0 0 ] 1e-05;
kf kf [ 1 1 -3 -1 0 0 0 ] 0.026;
Cp Cp [ 0 2 -2 -1 0 0 0 ] 1005;
CrossPowerLawCoeffs
{
nu0 nu0 [ 0 2 -1 0 0 0 0 ] 1e-06;
nuInf nuInf [ 0 2 -1 0 0 0 0 ] 1e-06;
m m [ 0 0 1 0 0 0 0 ] 1;
n n [ 0 0 0 0 0 0 0 ] 1;
}
BirdCarreauCoeffs
{
nu0 nu0 [ 0 2 -1 0 0 0 0 ] 1e-06;
nuInf nuInf [ 0 2 -1 0 0 0 0 ] 1e-06;
k k [ 0 0 1 0 0 0 0 ] 0;
n n [ 0 0 0 0 0 0 0 ] 1;
}
// ************************************************************************* //

View File

@ -0,0 +1,21 @@
/*--------------------------------*- 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;
location "constant";
object turbulenceProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
simulationType laminar;
// ************************************************************************* //

View File

@ -0,0 +1,17 @@
./Allclean
cd constant/polyMesh
m4 -P blockMeshDict_slot.m4 > blockMeshDict
cd ../..
blockMesh
mirrorMesh
topoSet -dict system/topoSetDict
createPatch -overwrite
rm -r 0
cp -r orig.0/ 0
setsToZones -noFlipMap
#foamToSurface surface.stl
#surfaceSplitByPatch surface.stl
#mv surface_*.stl stl_files/

View File

@ -0,0 +1,54 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object Ksl;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -3 -1 0 0 0 0];
internalField uniform 0;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,53 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object KslNext;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -3 -1 0 0 0 0];
internalField uniform 0;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,54 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object KslPrev;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -3 -1 0 0 0 0];
internalField uniform 0;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,56 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: http://www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object T;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 1 0 0 0];
internalField uniform 293;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type fixedValue;
value uniform 293;
}
wall
{
type fixedValue;
value uniform 293;
}
inner
{
type zeroGradient;
}
inletLeft
{
type fixedValue;
value uniform 2600;
}
inletRight
{
type fixedValue;
value uniform 2600;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,66 @@
/*--------------------------------*- 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 volVectorField;
object U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
bottom
{
type uniformFixedValue;
uniformValue constant (0 0 0);
}
top
{
type zeroGradient;
}
wall
{
type uniformFixedValue;
uniformValue constant (0 0 0);
}
inner
{
type uniformFixedValue;
uniformValue constant (0 0 0);
}
defaultFaces
{
type empty;
}
inletLeft
{
type uniformFixedValue;
uniformValue constant (200 0 0);
}
inletRight
{
type uniformFixedValue;
uniformValue constant (-200 0 0);
}
}
// ************************************************************************* //

View File

@ -0,0 +1,54 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
location "0";
object Us;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,55 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
location "0";
object UsNext;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,55 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
location "0";
object UsPrev;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,53 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object addSource;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -1 -3 0 0 0 0];
internalField uniform 0;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,60 @@
/*--------------------------------*- 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 volScalarField;
object p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -1 -2 0 0 0 0];
internalField uniform 1.0e5;
boundaryField
{
bottom
{
type zeroGradient;
}
top
{
type fixedValue;
value uniform 1.0e5;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
defaultFaces
{
type empty;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,54 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: http://www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object partEffThermCondField;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 1 -3 -1 0 0 0];
internalField uniform 0;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
// fixed heat loss, put all in gas phase
type fixedValue;
value uniform 0.0;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,53 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: http://www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
object particleForces;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [2 -5 -2 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,56 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: http://www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
object rho;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -3 0 0 0 0 0];
internalField uniform 1.1885;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type fixedValue;
value uniform 1.5;
}
inletRight
{
type fixedValue;
value uniform 1.5;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,57 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object voidfraction;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 0 0 0 0];
internalField uniform 1;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type fixedValue;
value uniform 0.4;
}
inletRight
{
type fixedValue;
value uniform 0.4;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,57 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object voidfractionNext;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 0 0 0 0];
internalField uniform 1;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type fixedValue;
value uniform 1;
}
inletRight
{
type fixedValue;
value uniform 1;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,57 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object voidfractionPrev;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 0 0 0 0];
internalField uniform 1;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type fixedValue;
value uniform 1;
}
inletRight
{
type fixedValue;
value uniform 1;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,65 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object wallHeatLoss;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 0 -3 -1 0 0 0];
internalField uniform 1;
boundaryField
{
bottom
{
type fixedValue;
value uniform 20.0;
}
top
{
type zeroGradient;
}
wall
{
// value according to Zhang et al. (2016)
type fixedValue;
value uniform 20.0;
}
inner
{
type zeroGradient;
}
defaultFaces
{
type empty;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,132 @@
/*--------------------------------*- 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;
location "system";
object controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
application potentialFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 50.0;
deltaT 0.00025;
writeControl timeStep;
writeInterval 10000;
purgeWrite 0;
writeFormat ascii;
writePrecision 6;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;
adjustTimeStep no;
functions
{
fieldAverage1
{
type fieldAverage;
libs ("libfieldFunctionObjects.so");
writeControl writeTime;
fields
(
U
{
mean on;
prime2Mean off;
base time;
window 10.0001;
}
Us
{
mean on;
prime2Mean off;
base time;
window 10.0001;
}
voidfraction
{
mean on;
prime2Mean off;
base time;
window 10.0001;
}
);
}
fieldOutput
{
type writeObjects;
functionObjectLibs ( "libutilityFunctionObjects.so" );
exclusiveWriting true;
objects ("Us" "UsMean" "voidfraction" "voidfractionMean" "partType" "dSauter" "dSauterMean");
writeControl timeStep;
writeInterval 10000;
}
probes1
{
type probes;
functionObjectLibs ("libsampling.so");
#include "probesDict";
}
cellObj1
{
type volRegion;
libs ("libfieldFunctionObjects.so");
enabled true;
writeControl timeStep;
writeInterval 400;
log true;
writeFields false;
regionType cellZone;
name topReg;
operation volAverage;
fields
(
UsMean
);
}
conditionalStop
{
type abort;
functionObjectLibs ( "libjobControl.so" );
action writeNow;
fileName "ABORT";
}
}
// ************************************************************************* //

View File

@ -0,0 +1,72 @@
/*--------------------------------*- 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 createPatchDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// This application/dictionary controls:
// - optional: create new patches from boundary faces (either given as
// a set of patches or as a faceSet)
// - always: order faces on coupled patches such that they are opposite. This
// is done for all coupled faces, not just for any patches created.
// - optional: synchronise points on coupled patches.
// 1. Create cyclic:
// - specify where the faces should come from
// - specify the type of cyclic. If a rotational specify the rotationAxis
// and centre to make matching easier
// - always create both halves in one invocation with correct 'neighbourPatch'
// setting.
// - optionally pointSync true to guarantee points to line up.
// 2. Correct incorrect cyclic:
// This will usually fail upon loading:
// "face 0 area does not match neighbour 2 by 0.0100005%"
// " -- possible face ordering problem."
// - in polyMesh/boundary file:
// - loosen matchTolerance of all cyclics to get case to load
// - or change patch type from 'cyclic' to 'patch'
// and regenerate cyclic as above
// Do a synchronisation of coupled points after creation of any patches.
// Note: this does not work with points that are on multiple coupled patches
// with transformations (i.e. cyclics).
pointSync false;
// Patches to create.
patches
(
{
name inletLeft;
patchInfo
{
type patch;
}
constructFrom set;
set inletLeft;
}
{
name inletRight;
patchInfo
{
type patch;
}
constructFrom set;
set inletRight;
}
);
// ************************************************************************* //

View File

@ -0,0 +1,32 @@
/*-------------------------------*- C++ -*---------------------------------*\
| ========= |
| \\ / OpenFOAM |
| \\ / |
| \\ / The Open Source CFD Toolbox |
| \\/ http://www.OpenFOAM.org |
\*-------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
note "mesh decomposition control dictionary";
location "system";
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 8;
method simple;
simpleCoeffs
{
n (2 1 4);
// n (2 2 8);
delta 0.001;
}
// ************************************************************************* //

View File

@ -0,0 +1,43 @@
/*--------------------------------*- 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;
location "system";
object fvOptions;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
/*
source1
{
type temperatureLimitsConstraint;
selectionMode all;
active true;
temperatureLimitsConstraintCoeffs
{
Tmin 288;
Tmax 298;
}
}
*/
source1
{
type limitTemperature;
active yes;
limitTemperatureCoeffs
{
active yes;
selectionMode all;
Tmin 273;
Tmax 313;
}
}

View File

@ -0,0 +1,82 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / 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;
grad(p) cellLimited Gauss linear 1;
// grad(U) Gauss linear;
grad(U) cellLimited Gauss linear 1;
}
divSchemes
{
default Gauss linear;
div(phi,U) Gauss upwind;
// div(phi,U) bounded Gauss linearUpwindV grad(U);
div(phi,k) Gauss limitedLinear 1;
div(phi,epsilon) Gauss limitedLinear 1;
div(phi,R) Gauss limitedLinear 1;
div(R) Gauss linear;
div(phi,nuTilda) Gauss limitedLinear 1;
div((viscousTerm*dev(grad(U).T()))) Gauss linear;
div((nu*dev(grad(U).T()))) Gauss linear;
div((nuEff*dev(grad(U).T()))) Gauss linear;
}
laplacianSchemes
{
/*
default Gauss linear corrected;
laplacian(viscousTerm,U) Gauss linear corrected;
laplacian(nu,U) Gauss linear corrected;
laplacian(nuEff,U) Gauss linear corrected;
laplacian((1|A(U)),p) Gauss linear corrected;
laplacian((voidfraction2|A(U)),p) Gauss linear corrected;
laplacian(DkEff,k) Gauss linear corrected;
laplacian(DepsilonEff,epsilon) Gauss linear corrected;
laplacian(DREff,R) Gauss linear corrected;
laplacian(DnuTildaEff,nuTilda) Gauss linear corrected;
*/
default Gauss linear limited 0.333;
}
interpolationSchemes
{
default linear;
interpolate(U) linear;
}
snGradSchemes
{
// default corrected;
default limited 0.333;
}
fluxRequired
{
default no;
p ;
}
// ************************************************************************* //

View File

@ -0,0 +1,115 @@
/*--------------------------------*- 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;
location "system";
object fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
solvers
{
"(p|rho)"
{
solver PCG;
preconditioner DIC;
tolerance 1e-8;//1e-6;
relTol 0.01;
}
"(p|rho)Final"
{
$p;
relTol 0;
}
"(U|k|e|epsilon|R|nuTilda|c)"
{
solver smoothSolver;
smoother GaussSeidel;
tolerance 1e-7;//1e-5;
relTol 0;
}
"(U|e|k|nuTilda)Final"
{
$U;
relTol 0;
}
T
{
solver PBiCG;
preconditioner DILU;
tolerance 1e-8;
relTol 0;
}
alphaSt
{
//solver smoothSolver;
//smoother GaussSeidel;
solver PBiCG;
preconditioner DILU;
tolerance 1e-05;
relTol 0;
}
alphaDyn
{
//solver smoothSolver;
//smoother GaussSeidel;
solver PBiCG;
preconditioner DILU;
tolerance 1e-05;
relTol 0;
}
"(voidfraction|Ksl|UsNext|voidfractionNext|sSmoothField|vSmoothField|fSmooth)"
{
solver PCG;
preconditioner DIC;
tolerance 1e-09;
relTol 1e-06;
}
}
PIMPLE
{
momentumPredictor yes;
nOuterCorrectors 2;
nCorrectors 1;
nNonOrthogonalCorrectors 0;
rhoMin rhoMin [ 1 -3 0 0 0 ] 0.5;
rhoMax rhoMax [ 1 -3 0 0 0 ] 2.0;
}
PISO
{
nCorrectors 4;
nNonOrthogonalCorrectors 1;
pRefCell 0;
pRefValue 0;
}
relaxationFactors
{
fields
{
}
equations
{
".*" 1;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,27 @@
/*--------------------------------*- 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 mirrorMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
planeType pointAndNormal;
pointAndNormalDict
{
basePoint (0 0 0);
normalVector (-1 0 0);
}
planeTolerance 1e-3;
// ************************************************************************* //

View File

@ -0,0 +1,63 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \ / O peration | Version: 2.1.x |
| \ / A nd | Web: www.OpenFOAM.org |
| \/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object probesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
fields
(
voidfraction
voidfractionMean
rho
p
Us
UsMean
U
T
massFluxField
massFluxFieldMean
);
writeControl timeStep;
writeInterval 400;
// Locations to be probed.
probeLocations
(
(-5.9 0.0 0.0)
(-5.5 0.0 0.0)
(-5.0 0.0 0.0)
(-4.5 0.0 0.0)
(-4.0 0.0 0.0)
(-3.5 0.0 0.0)
(5.9 0.0 0.0)
(5.5 0.0 0.0)
(5.0 0.0 0.0)
(4.5 0.0 0.0)
(4.0 0.0 0.0)
(3.5 0.0 0.0)
(0 0.0 -1.0)
(0 0.0 0.0)
(0 0.0 1.0)
(0 0.0 2.0)
(0 0.0 5.0)
(0 0.0 10.0)
(0 0.0 15.0)
(0 0.0 20.0)
);
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

View File

@ -0,0 +1,41 @@
/*--------------------------------*- C++ -*----------------------------------*\
========= |
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
\\ / O peration | Website: https://openfoam.org
\\ / A nd | Version: 6
\\/ M anipulation |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object setFieldsDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
defaultFieldValues
(
volScalarFieldValue partTempRef 300
volScalarFieldValue partTemp 300
);
regions
(
rotatedBoxToCell
{
origin (0.0 -0.6 8);
i (20 0 -10);
j (-20 0 -10);
k (0 1.2 0);
fieldValues
(
volScalarFieldValue partTempRef 2700
volScalarFieldValue partTemp 2700
);
}
);
// ************************************************************************* //

View File

@ -0,0 +1,122 @@
/*--------------------------------*- 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 topoSetDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
tuydia 0.25;
actions
(
{
name c_left;
type cellSet;
action new;
source boxToCell;
sourceInfo
{
box (-6.5 #calc "-0.5*$tuydia" #calc "-0.25*$tuydia")(-5.5 #calc "0.5*$tuydia" #calc "0.75*$tuydia");
}
}
{
name inletLeft;
type faceSet;
action new;
source patchToFace;
sourceInfo
{
name "wall";
}
}
{
name inletLeft;
type faceSet;
action subset;
source cellToFace;
sourceInfo
{
set c_left;
option all;
}
}
{
name c_right;
type cellSet;
action new;
source boxToCell;
sourceInfo
{
box (5.5 #calc "-0.5*$tuydia" #calc "-0.25*$tuydia")(6.5 #calc "0.5*$tuydia" #calc "0.75*$tuydia");
}
}
{
name inletRight;
type faceSet;
action new;
source patchToFace;
sourceInfo
{
name "wall";
}
}
{
name inletRight;
type faceSet;
action subset;
source cellToFace;
sourceInfo
{
set c_right;
option all;
}
}
{
name rw_left;
type cellSet;
action new;
source boxToCell;
sourceInfo
{
box (-6.0 -0.5 -0.5)(-4.5 0.5 0.5);
}
}
{
name rw_right;
type cellSet;
action new;
source boxToCell;
sourceInfo
{
box (4.5 -0.5 -0.5)(6.0 0.5 0.5);
}
}
{
name topReg;
type cellSet;
action new;
source boxToCell;
sourceInfo
{
box (-5.0 -1.0 25)(5.0 1.0 26);
}
}
);
// ************************************************************************* //

View File

@ -0,0 +1,52 @@
# DEM-parameters COKE
variable yM_C equal 5.e7 # Young's modulus
variable pR_C equal 0.25 # Poisson ratio
variable rest_C equal 0.5 # coefficient of restitution
variable fric_C equal 0.9 # coefficient of friction
variable roll_C equal 0.5 # coefficient of rolling friction
# values according to information from VAS
# mean diameter coke = 0.044 m
# mean density coke = 800
# estimated max packing fraction = 0.65
variable dens_C equal 800 # density
variable rad_C equal 0.088 # c.g. radius (cg = 4)
variable poly_C equal 1.0 # polydisp factor
# DEM-parameters ORE
variable yM_O equal 5.e7 # Young's modulus
variable pR_O equal 0.25 # Poisson ratio
variable rest_O equal 0.5 # coefficient of restitution
variable fric_O equal 0.8 # coefficient of friction
variable roll_O equal 0.4 # coefficient of rolling friction
# values according to Modern Blast Furnace Ironmaking
# mean diameter lump ore = 0.015 m
# mean density lump ore = 3000
# estimated max packing fraction = 0.72
variable dens_O equal 3000 # density
variable rad_O equal 0.075 # c.g. radius (cg = 10)
variable poly_O equal 1.1 # polydisp factor
# DEM-parameters wall
variable yM_W equal 5.e6 # Young's modulus
variable pR_W equal 0.25 # Poisson ratio
variable rest_W equal 0.5 # coefficient of restitution
variable fric_W equal 0.85 # coefficient of friction
variable roll_W equal 0.45 # coefficient of rolling friction
# DEM-parameters mixed
variable rest_CO equal 0.2 # coefficient of restitution
variable rest_WO equal 0.2 # coefficient of restitution
variable rest_CW equal 0.5 # coefficient of restitution
variable fric_CO equal 0.8 # coefficient of friction
variable fric_WO equal 0.2 # coefficient of friction
variable fric_CW equal 0.5 # coefficient of friction
variable roll_CO equal 0.02 # for particles and walls with friction
variable roll_WO equal 0.02 # for particles and walls with friction
variable roll_CW equal 0.02 # for particles and walls with friction
variable cV equal 0.1 # characteristic velocity

View File

@ -0,0 +1,10 @@
# adapt particle parameters in deadman region
group DMcoke region DM
set group DMcoke property/atom/polydispparcel effvolfactor 1.5
group nonDMcoke subtract coke DMcoke
set group nonDMcoke property/atom/polydispparcel effvolfactor ${poly_C}
group DMcoke clear
group nonDMcoke clear

View File

@ -0,0 +1 @@
print " " file ../CFD/ABORT

View File

@ -0,0 +1,24 @@
#remove out-of-CFD domain particles and uppermost, partial layer
#write out uppermost complete layers
delete_atoms group highestCoke
delete_atoms group highestOre
run 0
write_dump secHighestOre custom ../DEM/initOre id type radius mass density x y z
write_dump secHighestCoke custom ../DEM/initCoke id type radius mass density x y z
write_dump secHighestOre custom/vtk ../DEM/initOre.vtk id type radius mass density x y z
write_dump secHighestCoke custom/vtk ../DEM/initCoke.vtk id type radius mass density x y z
write_restart ../DEM/liggghts.restartCFDEM
# exclude near-wall artifacts
region centerReg block -4.0 4.0 -0.59 0.59 INF INF units box
group center region centerReg
group remainder subtract center secHighestOre secHighestCoke
write_dump remainder custom/vtk ../DEM/remainder.vtk id type radius mass density x y z
variable zInsLower equal bound(remainder,zmax)
print 'variable zInsLower equal ${zInsLower}' screen yes
print "variable zInsLower equal ${zInsLower}" file ../DEM/zInsLower

View File

@ -0,0 +1,19 @@
print 'Performing insertion number ${counter}.' screen yes
group secHighestCoke clear
group secHighestOre clear
group secHighestCoke union secHighestCoke highestCoke
group secHighestOre union secHighestOre highestOre
group highestCoke clear
group highestOre clear
if "${counter} > 1" then "unfix ins${counter}C"
if "${counter} > 1" then "unfix ins${counter}O"
next counter
fix ins${counter}C highestCoke insert/pack/dense seed 125 region insRegTop2 distributiontemplate pdd1 volumefraction_region 0.56
fix ins${counter}O highestOre insert/pack/dense seed 124 region insRegTop1 distributiontemplate pdd2 volumefraction_region 0.56
run 0

View File

@ -0,0 +1,185 @@
## material properties
include ../DEM/DEMparameters
variable dt equal 0.000025
variable skin equal 0.0015
# particle settling loop parameters
variable vthre equal 0.01
###############################################
atom_style granular
atom_modify map array
communicate single vel yes
boundary f p f
newton off
units si
processors 1 1 8
read_restart ../DEM/liggghts.restart
reset_timestep 0
neighbor 0.001 bin
neigh_modify delay 0
#Material properties required for new pair styles
fix m1 all property/global youngsModulus peratomtype ${yM_C} ${yM_O} ${yM_W}
fix m2 all property/global poissonsRatio peratomtype ${pR_C} ${pR_O} ${pR_W}
fix m3 all property/global coefficientRestitution peratomtypepair 3 ${rest_C} ${rest_CO} ${rest_CW} ${rest_CO} ${rest_O} ${rest_WO} ${rest_CW} ${rest_WO} ${rest_W}
fix m4 all property/global coefficientFriction peratomtypepair 3 ${fric_C} ${fric_CO} ${fric_CW} ${fric_CO} ${fric_O} ${fric_WO} ${fric_CW} ${fric_WO} ${fric_W}
fix m5 all property/global coefficientRollingFriction peratomtypepair 3 ${roll_C} ${roll_CO} ${roll_CW} ${roll_CO} ${roll_O} ${roll_WO} ${roll_CW} ${roll_WO} ${roll_W}
fix m6 all property/global characteristicVelocity scalar ${cV}
fix ftco all property/global thermalConductivity peratomtype 15 15 15
fix ftca all property/global thermalCapacity peratomtype 850 850 850
fix heattransfer all heat/gran initial_temperature 293
#pair style
pair_style gran model hertz tangential history rolling_friction cdt
pair_coeff * *
#timestep, gravity
timestep ${dt}
fix gravi all gravity 9.81 vector 0.0 0.0 -1.0
fix bottom all mesh/surface file ../DEM/stl_files/surface_bottom.stl type 1
fix wall all mesh/surface file ../DEM/stl_files/surface_wall.stl type 3
fix granwalls all wall/gran model hertz tangential history mesh n_meshes 2 meshes bottom wall
group coke type 1
group ore type 2
fix pts1 coke particletemplate/sphere 1 atom_type 1 density constant ${dens_C} radius constant ${rad_C}
fix pdd1 coke particledistribution/discrete 1.0 1 pts1 1.0
fix pts2 ore particletemplate/sphere 2 atom_type 2 density constant ${dens_O} radius constant ${rad_O}
fix pdd2 ore particledistribution/discrete 1.0 1 pts2 1.0
fix fp all property/atom/polydispparcel effvolfactor ${poly_C} ${poly_O} 1.0
###########
# regions
###########
# raceways
variable RWradFreeze equal 0.35
region RW1Freeze cylinder x 0 0 ${RWradFreeze} -6.0 -4.0
region RW2Freeze cylinder x 0 0 ${RWradFreeze} 4.0 6.0
region RW union 2 RW1Freeze RW2Freeze
group RW dynamic all region RW every 100
variable RWrad equal 0.4
region RW1 cylinder x 0 0 ${RWrad} -6.0 -4.0
region RW2 cylinder x 0 0 ${RWrad} 4.0 6.0
# deadman
variable DMheight equal 3
variable DMslope equal -0.8
region DMwall1 plane 0 0 ${DMheight} 1 0 ${DMslope}
region DMwall2 plane 0 0 ${DMheight} -1 0 ${DMslope}
region DM intersect 2 DMwall1 DMwall2
group DMcoke region DM
delete_atoms region RW1
delete_atoms region RW2
###########
# removal
###########
# raceways
variable rCMass equal 500
fix delRW1 all remove nevery 1000 massrate ${rCMass} style delete seed 10007143 region RW1 atomtype 1 restart_read no restart_write no verbose no
fix delRW2 all remove nevery 1000 massrate ${rCMass} style delete seed 10007134 region RW2 atomtype 1 restart_read no restart_write no verbose no
###############################################################################################################################
#cfd coupling
variable Ncouple equal 10
variable Tin equal 293
fix cfd1 all couple/cfd couple_every 10 mpi
fix cfd2 all couple/cfd/force/implicit transfer_density no transfer_type yes transfer_property name effvolfactor type scalar-atom
fix cfd3 all couple/cfd/convection T0 293
fix cfd4 all couple/cfd/parttempfield T0 293
fix cfd5 all couple/cfd/deform
# make sure particle outside CFD domain are initialized with reasonable temperature
# this is executed at the beginning of each run
region outsideCFD block INF INF INF INF 26.0 INF units box
variable NFixTemp equal ${Ncouple}+2
fix eeTemp all execute ${NFixTemp} " set region outsideCFD property/atom Temp ${Tin} " once
fix integr all nve/sphere
fix limV all limit/vel 5.0
fix limV RW limit/vel 0.01
#screen output
compute 1 all erotate/sphere
thermo_style custom step atoms ke c_1 vol
thermo 10000
thermo_modify lost ignore norm no
compute_modify thermo_temp dynamic yes
variable Ndump equal 40000
dump myStl1 all stl ${Ndump} ../DEM/post/dump_CFDDEMflow_DB*.stl
dump dmp1 all custom/vtk ${Ndump} ../DEM/post/dump*.CFDDEMflow_DB.vtk id type radius x y z vx vy vz fx fy fz mass
run 1
set group coke property/atom/polydispparcel effvolfactor ${poly_C}
set group ore property/atom/polydispparcel effvolfactor ${poly_O}
variable Nset equal 1000
fix eeDM all execute ${Nset} "../DEM/in.DM" file
region insRegTop1 block -4.61 4.61 -0.59 0.59 26.125 26.9 units box
region insRegTop2 block -4.61 4.61 -0.59 0.59 26.9 27.525 units box
region regTop block -4.61 4.61 -0.59 0.59 26.125 27.525 units box
variable nTot equal count(all,regTop)
variable nLower equal count(all,insRegTop1)
variable time equal step*dt
variable np equal count(all)
variable nO equal count(ore)
variable nC equal count(coke)
variable zMax equal bound(all,zmax)
fix printN all print 4000 "${time} ${np} ${nTot} ${nC} ${nO} ${zMax} ${zMaxSecHighCoke}" file ../DEM/Npart_createDB.txt title "#time n_all n_insertionreg n_coke n_ore z_max z_max_2"
group secHighestCoke empty
group secHighestOre empty
group highestCoke empty
group highestOre empty
# ensure reasonable initialization
group secHighestCoke union all secHighestCoke
group highestCoke union all highestCoke
variable zMaxSecHighCoke equal bound(secHighestCoke,zmax)
dump dmptest1 highestOre custom/vtk 200000 ../DEM/post/dump*.highOre.vtk id type radius x y z vx vy vz fx fy fz mass
dump dmptest2 highestCoke custom/vtk 200000 ../DEM/post/dump*.highCoke.vtk id type radius x y z vx vy vz fx fy fz mass
variable Nins equal 1000
variable counter loop 1000
fix eeIns all execute ${Nins} "../DEM/in.insert" file conditional nTot 0 0.1
# conditionally stop simulation
variable tmin equal 20.0
variable zmaxCFD equal 26.0
variable zminCFD equal 25.8
variable abort equal (v_time>=${tmin})&&(v_zMaxSecHighCoke<=${zmaxCFD})&&(v_zMaxSecHighCoke>=${zminCFD})
fix printAbort all print 4000 "${time} ${zMax} ${zMaxSecHighCoke} ${abort}" file ../DEM/Nabort.txt title "#time z_max z_max_2 abort"
fix eeAbort all execute 1000 "../DEM/in.abort" file conditional abort 1 0.1
restart 100000 restartA restartB

View File

@ -0,0 +1,20 @@
region insBlock block -8.0 8.0 -1 1 24 26
group insBlockAll region insBlock
group insBlockOre intersect insBlockAll ore
group insBlockCoke intersect insBlockAll coke
write_dump insBlockOre custom ../DEM/initOre id type radius mass density x y z
write_dump insBlockCoke custom ../DEM/initCoke id type radius mass density x y z
#read_dump ../DEM/initOre 0 x y z radius mass density bruteadd yes retaintimestep yes
#read_dump ../DEM/initCoke 0 x y z radius mass density bruteadd yes retaintimestep yes
#run 1

View File

@ -0,0 +1,58 @@
solid inlet
facet normal -1 0 0
outer loop
vertex 0.3 -0.0902791 -0.0375
vertex 0.3 -0.0902791 0.05
vertex 0.3 0 0.05
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0.3 -0.0902791 -0.0375
vertex 0.3 0 0.05
vertex 0.3 0 -0.0375
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0.3 0 -0.0375
vertex 0.3 0 0.05
vertex 0.3 0.0902791 0.05
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0.3 0 -0.0375
vertex 0.3 0.0902791 0.05
vertex 0.3 0.0902791 -0.0375
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0.3 -0.0902791 0.05
vertex 0.3 -0.0902791 0.1375
vertex 0.3 0 0.1375
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0.3 -0.0902791 0.05
vertex 0.3 0 0.1375
vertex 0.3 0 0.05
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0.3 0 0.05
vertex 0.3 0 0.1375
vertex 0.3 0.0902791 0.1375
endloop
endfacet
facet normal -1 0 0
outer loop
vertex 0.3 0 0.05
vertex 0.3 0.0902791 0.1375
vertex 0.3 0.0902791 0.05
endloop
endfacet
endsolid inlet

View File

@ -0,0 +1,7 @@
(0) First, the BF geometry needs to be filled and the layer structure needs to be created. To this end, execute run_init.sh. The resulting data is transferred to the appropriate places by post_init.sh which is automatically called by run_init.sh.
(1) Then, a database with the mean flow fields needs to be created. First, execute preCreateDB.sh, then run_CFDDEM.sh.
(2) Once finished, a data-driven run can be performed. Execute preDataDrivenCFD.sh and then run_dataDrivenCFD.sh.
Repeat steps (1) and (2) as often as desired.

View File

@ -0,0 +1,13 @@
rm runIndex
cd CFDDEM/CFD
rm -r proc*
rm -r 0
cd ../DEM
rm -r post*
mkdir post
rm liggghts.restart
cd ../../dataDrivenCFD/CFD
rm -r proc*
rm -r 0
rm ../DEM/temp_ave.txt

View File

@ -0,0 +1,12 @@
#!/bin/sh
# Source run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
echo "Clearing processor directories without removing decomposed database."
for proc in processor*
do
echo "Clearing $proc directory."
rm -rf $proc/0.*
rm -rf $proc/[1-9]*
done

View File

@ -0,0 +1,25 @@
/*--------------------------------*- 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;
location "constant";
object RASProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
RASModel laminar;//kEpsilon;
turbulence off;
printCoeffs off;
// ************************************************************************* //

View File

@ -0,0 +1,226 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object couplingProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
//===========================================================================//
// sub-models & settings
modelType "A"; // A or B
couplingInterval 1;
voidFractionModel divided;
locateModel engine;//turboEngineM2M;//
meshMotionModel noMeshMotion;
regionModel allRegion;
IOModel "off";
dataExchangeModel twoWayMPI;//twoWayM2M;//twoWayFiles;//oneWayVTK;//
//dataExchangeModel twoWayMany2Many;
averagingModel dense;//dilute;//
clockModel standardClock;//off;
smoothingModel off;
probeModel off;
forceModels
(
freeStreaming
isotropicFluctuations
directedDiffusiveRelaxation
dSauter
BeetstraDragPoly
gradPForce
viscForce
particleDeformation
);
momCoupleModels
(
implicitCouple
);
energyModels
(
heatTransferRanzMarshall
heatTransferGranConduction
);
thermCondModel SyamlalThermCond;
chemistryModels ();
//chemistryModel off;
turbulenceModelType "turbulenceProperties";
getParticleTypes true;
getParticleDensities true;
getParticleEffVolFactors true;
coupleRecFluc true;
coupleRecForce false;
setForceField true;
nEveryFlow 1;
//===========================================================================//
// sub-model properties
implicitCoupleProps
{
velFieldName "U";
granVelFieldName "UsRec";
voidfractionFieldName "voidfractionRec";
}
gradPForceProps
{
pFieldName "p";
densityFieldName "rho";
voidfractionFieldName "voidfractionRec";
velocityFieldName "U";
}
viscForceProps
{
velocityFieldName "U";
densityFieldName "rho";
}
BeetstraDragProps
{
velFieldName "U";
granVelFieldName "UsRec";
densityFieldName "rho";
voidfractionFieldName "voidfractionRec";
phi 1;
coarseGrainingFactors (4.0 10.0);
}
dSauterProps
{
coarseGrainingFactors (4.0 10.0);
}
freeStreamingProps
{
critVoidfraction 1.5;
// density can be chosen arbitrarily
particleDensity 667;
ballisticVelLimit 0.0;
scalingFactor 250.09045;
interpolation true;
}
isotropicFluctuationsProps
{
critVoidfraction 1.1;
D0 5e-4;
measureDiff true;
ignoreCellsName "aboveCZ";
}
directedDiffusiveRelaxationProps
{
critVoidfraction 1.1;
D0 1e-1;
measureDiff false;
maxDisplacement 0.01;
ignoreCellsName "aboveCZ";
}
particleDeformationProps
{
refFieldName "partTempRef";
partType 2;
// same as Huo et al. (2017)
lowerBound 1475;
upperBound 1675;
}
heatTransferRanzMarshallProps
{
partTempName "Temp";
partHeatFluxName "convectiveHeatFlux";
calcPartTempField true;
partRefTemp 293;
interpolation false;
voidfractionFieldName "voidfractionRec";
coarseGrainingFactors (4.0 10.0);
verbose true;
initPartTemp true;
Tmin 293;
Tmax 3000;
NusseltScalingFactor 0.1;
}
heatTransferGranConductionProps
{
prescribedVoidfractionFieldName "voidfractionRec";
// data taken from Hou et al. Powder Technology 314 (2017)
thermalConductivities (1.7 80.0);
calcTotalHeatFlux true;
}
SyamlalThermCondProps
{
voidfractionFieldName "voidfractionRec";
}
centreProps
{
alphaMin 0.10;
}
engineProps
{
treeSearch true;
}
dividedProps
{
alphaMin -20;
scaleUpVol 1.0;
weight 1.0;//1.06; //1.33;
verbose;
}
twoWayMPIProps
{
maxNumberOfParticles 50000;
liggghtsPath "../DEM/in.liggghts_dataDrivenCFD";
liggghtsEndOfRunPath "../DEM/in.final";
}
// ************************************************************************* //

View File

@ -0,0 +1,22 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / 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 -9.81 );
// ************************************************************************* //

View File

@ -0,0 +1,31 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object liggghtsCommands;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
liggghtsCommandModels
(
runLiggghts
writeLiggghts
);

View File

@ -0,0 +1,2 @@
Run using:
m4 -P blockMeshDict.m4 > blockMeshDict

View File

@ -0,0 +1,195 @@
// Parametrized test case for a BF geometry
//Run using:
//m4 -P blockMeshDict.m4 > blockMeshDict
//m4 definitions:
//Mathematical constants:
//Geometry
// width of wedge
// height levels
// xlevels
//Grid points (integers!):
//m4_define(rGrading, 0.5)
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1;
vertices
(
(-6 0.6 -2) // Vertex V0 = 0
(0 0.6 -2) // Vertex V1 = 1
(0 0.6 0.75) // Vertex V2 = 2
(-6 0.6 0.75) // Vertex V3 = 3
(-7.4 0.6 3.9) // Vertex V4 = 4
(0 0.6 3.9) // Vertex V5 = 5
(0 0.6 6.4) // Vertex V6 = 6
(-7.4 0.6 6.4) // Vertex V7 = 7
(-4.7 0.6 24) // Vertex V8 = 8
(0 0.6 24) // Vertex V9 = 9
(0 0.6 26) // Vertex V10 = 10
(-4.7 0.6 26) // Vertex V11 = 11
// neg. y values
(-6 -0.6 -2) // Vertex V12 = 12
(0 -0.6 -2) // Vertex V13 = 13
(0 -0.6 0.75) // Vertex V14 = 14
(-6 -0.6 0.75) // Vertex V15 = 15
(-7.4 -0.6 3.9) // Vertex V16 = 16
(0 -0.6 3.9) // Vertex V17 = 17
(0 -0.6 6.4) // Vertex V18 = 18
(-7.4 -0.6 6.4) // Vertex V19 = 19
(-4.7 -0.6 24) // Vertex V20 = 20
(0 -0.6 24) // Vertex V21 = 21
(0 -0.6 26) // Vertex V22 = 22
(-4.7 -0.6 26) // Vertex V23 = 23
);
// Defining blocks:
blocks
(
hex ( 0 1 2 3 12 13 14 15 ) AB
(32 25 11)
simpleGrading (1.0 1 1)
hex ( 3 2 5 4 15 14 17 16) BC
(32 15 11)
simpleGrading (1.0 1 1)
hex ( 4 5 6 7 16 17 18 19) CD
(32 12 11)
simpleGrading (1.0 1 1)
hex ( 7 6 9 8 19 18 21 20 ) EF
(32 90 11)
simpleGrading (1.0 1 1)
hex ( 8 9 10 11 20 21 22 23 ) GH
(32 10 11)
simpleGrading (1.0 1 1)
);
// Defining patches:
boundary
(
bottom
{
type patch;
faces
(
(0 1 13 12)
);
}
wall
{
type wall;
faces
(
(0 3 15 12)
(3 4 16 15)
(4 7 19 16)
(7 8 20 19)
(8 11 23 20)
);
}
top
{
type patch;
faces
(
(11 10 22 23)
);
}
inner
{
type patch;
faces
(
(0 1 2 3)
(3 2 5 4)
(4 5 6 7)
(7 6 9 8)
(8 9 10 11)
(12 13 14 15)
(15 14 17 16)
(16 17 18 19)
(19 18 21 20)
(20 21 22 23)
);
}
);
mergePatchPairs
(
);
// ************************************************************************* //

View File

@ -0,0 +1,195 @@
// Parametrized test case for a BF geometry
//Run using:
//m4 -P blockMeshDict.m4 > blockMeshDict
//m4 definitions:
m4_changecom(//)m4_changequote([,])
m4_define(calc, [m4_esyscmd(perl -e 'use Math::Trig; printf ($1)')])
m4_define(VCOUNT, 0)
m4_define(vlabel, [[// ]Vertex $1 = VCOUNT m4_define($1, VCOUNT)m4_define([VCOUNT], m4_incr(VCOUNT))])
//Mathematical constants:
m4_define(pi, 3.1415926536)
//Geometry
// width of wedge
m4_define(y0, 0.6)
m4_define(y1, -0.6)
// height levels
m4_define(z0, -2)
m4_define(z1, 0.75)
m4_define(z2, 3.9)
m4_define(z3, 6.4)
m4_define(z4, 24)
m4_define(z5, 26)
// xlevels
m4_define(x0, -6)
m4_define(x1, -6)
m4_define(x2, -7.4)
m4_define(x3, -7.4)
m4_define(x4, -4.7)
m4_define(x5, -4.7)
//Grid points (integers!):
m4_define(xNumberOfCells, 32)
m4_define(yNumberOfCells, 11)
m4_define(zNumberOfCells0, 25)
m4_define(zNumberOfCells1, 15)
m4_define(zNumberOfCells2, 12)
m4_define(zNumberOfCells3, 90)
m4_define(zNumberOfCells4, 10)
m4_define(rGrading, 1.0)
//m4_define(rGrading, 0.5)
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1;
vertices
(
(x0 y0 z0) vlabel(V0)
(0 y0 z0) vlabel(V1)
(0 y0 z1) vlabel(V2)
(x1 y0 z1) vlabel(V3)
(x2 y0 z2) vlabel(V4)
(0 y0 z2) vlabel(V5)
(0 y0 z3) vlabel(V6)
(x3 y0 z3) vlabel(V7)
(x4 y0 z4) vlabel(V8)
(0 y0 z4) vlabel(V9)
(0 y0 z5) vlabel(V10)
(x5 y0 z5) vlabel(V11)
// neg. y values
(x0 y1 z0) vlabel(V12)
(0 y1 z0) vlabel(V13)
(0 y1 z1) vlabel(V14)
(x1 y1 z1) vlabel(V15)
(x2 y1 z2) vlabel(V16)
(0 y1 z2) vlabel(V17)
(0 y1 z3) vlabel(V18)
(x3 y1 z3) vlabel(V19)
(x4 y1 z4) vlabel(V20)
(0 y1 z4) vlabel(V21)
(0 y1 z5) vlabel(V22)
(x5 y1 z5) vlabel(V23)
);
// Defining blocks:
blocks
(
hex ( V0 V1 V2 V3 V12 V13 V14 V15 ) AB
(xNumberOfCells zNumberOfCells0 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V3 V2 V5 V4 V15 V14 V17 V16) BC
(xNumberOfCells zNumberOfCells1 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V4 V5 V6 V7 V16 V17 V18 V19) CD
(xNumberOfCells zNumberOfCells2 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V7 V6 V9 V8 V19 V18 V21 V20 ) EF
(xNumberOfCells zNumberOfCells3 yNumberOfCells)
simpleGrading (rGrading 1 1)
hex ( V8 V9 V10 V11 V20 V21 V22 V23 ) GH
(xNumberOfCells zNumberOfCells4 yNumberOfCells)
simpleGrading (rGrading 1 1)
);
// Defining patches:
boundary
(
bottom
{
type patch;
faces
(
(V0 V1 V13 V12)
);
}
wall
{
type wall;
faces
(
(V0 V3 V15 V12)
(V3 V4 V16 V15)
(V4 V7 V19 V16)
(V7 V8 V20 V19)
(V8 V11 V23 V20)
);
}
top
{
type patch;
faces
(
(V11 V10 V22 V23)
);
}
inner
{
type patch;
faces
(
(V0 V1 V2 V3)
(V3 V2 V5 V4)
(V4 V5 V6 V7)
(V7 V6 V9 V8)
(V8 V9 V10 V11)
(V12 V13 V14 V15)
(V15 V14 V17 V16)
(V16 V17 V18 V19)
(V19 V18 V21 V20)
(V20 V21 V22 V23)
);
}
);
mergePatchPairs
(
);
// ************************************************************************* //

View File

@ -0,0 +1,59 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class polyBoundaryMesh;
location "constant/polyMesh";
object boundary;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
6
(
bottom
{
type patch;
nFaces 704;
startFace 308920;
}
wall
{
type wall;
inGroups 1(wall);
nFaces 3332;
startFace 309624;
}
top
{
type patch;
nFaces 704;
startFace 312956;
}
inner
{
type patch;
nFaces 19456;
startFace 313660;
}
inletLeft
{
type patch;
nFaces 6;
startFace 333116;
}
inletRight
{
type patch;
nFaces 6;
startFace 333122;
}
)
// ************************************************************************* //

View File

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

View File

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

View File

@ -0,0 +1,41 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class cellSet;
location "constant/polyMesh/sets";
object c_left;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
18
(
4608
5376
4576
3776
5408
3808
4609
5377
4577
3777
3809
5409
4610
5410
3810
5378
4578
3778
)
// ************************************************************************* //

View File

@ -0,0 +1,41 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class cellSet;
location "constant/polyMesh/sets";
object c_right;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
18
(
58112
58880
58080
57280
58912
57312
58113
58881
58081
57281
57313
58913
58114
58914
57314
58882
58082
57282
)
// ************************************************************************* //

View File

@ -0,0 +1,29 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class faceSet;
location "constant/polyMesh/sets";
object inletLeft;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
6
(
309792
309768
309793
309742
309743
309767
)
// ************************************************************************* //

View File

@ -0,0 +1,29 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.0 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class faceSet;
location "constant/polyMesh/sets";
object inletRight;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
6
(
311440
311464
311465
311414
311439
311415
)
// ************************************************************************* //

View File

@ -0,0 +1,90 @@
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object recProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
//===========================================================================//
// sub-models & settings
recModel standardRecModel;
recNorm EuclideanNorm;
//recPath predefinedPath;
recPath MarkovPath;
volScalarFields
(
voidfraction
);
volVectorFields
(
Us
);
surfaceScalarFields
(
// phi
);
//verbose true;
//couplingSubStep 1;
initialRecSteps 10;
//===========================================================================//
// sub-model properties
standardRecModelProps
{
dataBases (dataBase);
storeAveragedFields true;
timeDilationFactor 130.0;
}
EuclideanNormProps
{
fieldType "volScalarField";
// fieldName "partType";
fieldName "voidfraction";
}
MarkovPathProps
{
correlationSteps 0;
meanIntervalSteps 1;
minIntervalSteps 1;
intervalWeights (1.0);
}
predefinedPathProps
{
recPathName "predefRecurrencePath";
}
// ************************************************************************* //

View File

@ -0,0 +1,24 @@
/*--------------------------------*- 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;
location "constant";
object symmetrizerProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
scalarFields (partTemp);
vectorFields ();
refPoint (0 0 0);
refDirection (1 0 0);
// ************************************************************************* //

View File

@ -0,0 +1,49 @@
/*--------------------------------*- 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;
location "constant";
object thermophysicalProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
thermoType
{
type hePsiThermo;
mixture pureMixture;
transport const;
thermo eConst;
equationOfState perfectGas;
specie specie;
energy sensibleInternalEnergy;
}
mixture
{
specie
{
nMoles 1;
molWeight 28.0;
}
thermodynamics
{
Cv 745;
Hf 0;
}
transport
{
mu 2e-05;
Pr 0.8;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,45 @@
/*--------------------------------*- 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;
location "constant";
object transportProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
transportModel Newtonian;
nu nu [ 0 2 -1 0 0 0 0 ] 1e-05;
kf kf [ 1 1 -3 -1 0 0 0 ] 0.026;
Cp Cp [ 0 2 -2 -1 0 0 0 ] 1005;
Cv Cv [ 0 2 -2 -1 0 0 0 ] 718;
CrossPowerLawCoeffs
{
nu0 nu0 [ 0 2 -1 0 0 0 0 ] 1e-06;
nuInf nuInf [ 0 2 -1 0 0 0 0 ] 1e-06;
m m [ 0 0 1 0 0 0 0 ] 1;
n n [ 0 0 0 0 0 0 0 ] 1;
}
BirdCarreauCoeffs
{
nu0 nu0 [ 0 2 -1 0 0 0 0 ] 1e-06;
nuInf nuInf [ 0 2 -1 0 0 0 0 ] 1e-06;
k k [ 0 0 1 0 0 0 0 ] 0;
n n [ 0 0 0 0 0 0 0 ] 1;
}
// ************************************************************************* //

View File

@ -0,0 +1,21 @@
/*--------------------------------*- 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;
location "constant";
object turbulenceProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
simulationType laminar;
// ************************************************************************* //

View File

@ -0,0 +1,34 @@
#!/bin/sh
# Source run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
if [ $# -eq 0 ]
then
dBname="dataBase"
else
dBname=$1
fi
#rm log.decomposePar
#runApplication decomposePar -force
cpdirs="system constant"
for f in $cpdirs
do
cp -r $f $dBname/$f
done
cd $dBname
rm log.decomposePar
runApplication decomposePar -force -time 0:
rm -rf $cpdirs
rm -rf processor*/constant
for proc in processor*
do
echo "Transferring decomposed recurrence fields of $dBname/$proc to $proc."
rm -r ../$proc/$dBname
mkdir ../$proc/$dBname
mv $proc/* ../$proc/$dBname/
rm -rf $proc
done

View File

@ -0,0 +1,15 @@
./Allclean
cd constant/polyMesh
m4 -P blockMeshDict_slot.m4 > blockMeshDict
cd ../..
blockMesh
mirrorMesh
topoSet -dict system/topoSetDict
createPatch -overwrite
rm -r 0
cp -r orig.0/ 0
#foamToSurface surface.stl
#surfaceSplitByPatch surface.stl
#mv surface_*.stl stl_files/

View File

@ -0,0 +1,54 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.6 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object Ksl;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -3 -1 0 0 0 0];
internalField uniform 0;
boundaryField
{
top
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
wall
{
type zeroGradient;
}
inner
{
type zeroGradient;
}
inletLeft
{
type zeroGradient;
}
inletRight
{
type zeroGradient;
}
}
// ************************************************************************* //

Some files were not shown because too many files have changed in this diff Show More