tutorials/multiphase/interPhaseChangeDyMFoam/propeller: New tutorial

This commit is contained in:
Henry
2013-08-05 17:16:52 +01:00
parent b7e0a248f5
commit bbc96e2a68
35 changed files with 59203 additions and 0 deletions

View File

@ -0,0 +1,57 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volVectorField;
location "0";
object U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
inlet
{
type uniformFixedValue;
uniformValue table
(
(0 (0 0 0))
(0.01 (0 -15 0))
(100 (0 -15 0))
);
value $internalField;
}
outlet
{
type inletOutlet;
inletValue uniform (0 0 0);
value uniform (0 0 0);
}
outerCylinder
{
type fixedValue;
value uniform (0 0 0);
}
"propeller.*"
{
type movingWallVelocity;
value uniform (0 0 0);
}
}
// ************************************************************************* //

View File

@ -0,0 +1,49 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object alpha1;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 0 0];
internalField uniform 1;
boundaryField
{
inlet
{
type fixedValue;
value $internalField;
}
outlet
{
type inletOutlet;
inletValue $internalField;
}
outerCylinder
{
type zeroGradient;
value $internalField;
}
"propeller.*"
{
type zeroGradient;
value $internalField;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,51 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object epsilon;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 2 -3 0 0 0 0];
internalField uniform 0.0495;
boundaryField
{
inlet
{
type fixedValue;
value $internalField;
}
outlet
{
type inletOutlet;
inletValue $internalField;
value $internalField;
}
outerCylinder
{
type epsilonWallFunction;
value $internalField;
}
"propeller.*"
{
type epsilonWallFunction;
value $internalField;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,51 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object k;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 2 -2 0 0 0 0];
internalField uniform 0.06;
boundaryField
{
inlet
{
type fixedValue;
value $internalField;
}
outlet
{
type inletOutlet;
inletValue $internalField;
value $internalField;
}
outerCylinder
{
type kqRWallFunction;
value $internalField;
}
"propeller.*"
{
type kqRWallFunction;
value $internalField;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,50 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object nut;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 2 -1 0 0 0 0];
internalField uniform 0;
boundaryField
{
inlet
{
type calculated;
value uniform 0;
}
outlet
{
type calculated;
value uniform 0;
}
outerCylinder
{
type nutkWallFunction;
value uniform 0;
}
"propeller.*"
{
type nutkWallFunction;
value uniform 0;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,53 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object p_rgh;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -1 -2 0 0];
internalField uniform 1e5;
boundaryField
{
inlet
{
type fixedFluxPressure;
phi phiAbs;
value $internalField;
}
outlet
{
type fixedValue;
value $internalField;
}
outerCylinder
{
type fixedFluxPressure;
phi phiAbs;
value $internalField;
}
"propeller.*"
{
type fixedFluxPressure;
phi phiAbs;
value $internalField;
}
}
// ************************************************************************* //

View File

@ -0,0 +1,14 @@
#!/bin/sh
cd ${0%/*} || exit 1 # run from this directory
# Source tutorial clean functions
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
# remove surface
\rm -f constant/triSurface/propellerTip.obj.gz
cleanCase
\rm -rf 0
\rm -rf constant/extendedFeatureEdgeMesh/
\rm -f constant/triSurface/*.eMesh*

View File

@ -0,0 +1,13 @@
#!/bin/sh
cd ${0%/*} || exit 1 # run from this directory
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
./Allrun.pre
runApplication decomposePar
runParallel `getApplication` 4
runApplication reconstructPar

View File

@ -0,0 +1,55 @@
#!/bin/sh
cd ${0%/*} || exit 1 # run from this directory
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
# copy propeller surface from resources folder
cp $FOAM_TUTORIALS/resources/geometry/propellerTip.obj.gz constant/triSurface/
# - meshing
runApplication blockMesh
runApplication surfaceFeatureExtract
runApplication snappyHexMesh -overwrite
# force removal of fields generated by snappy
\rm -rf 0
cp -rf 0.org 0
# - generate face/cell sets and zones
#runApplication setSet -batch removeRedundantZones.setSet
#mv log.setSet log.removeRedundantZones.setSet
runApplication topoSet -dict system/removeRedundantZones.topoSetDict
mv log.topoSet log.removeRedundantZones.topoSet
#runApplication setSet -batch createInletOutletSets.setSet
#mv log.setSet log.createInletOutletSets.setSet
runApplication topoSet -dict system/createInletOutletSets.topoSetDict
mv log.topoSet log.createInletOutletSets.topoSet
#runApplication setSet -batch createAMIFaces.setSet
#mv log.setSet log.createAMIFaces.setSet
runApplication topoSet -dict system/createAMIFaces.topoSetDict
mv log.topoSet log.createAMIFaces.topoSet
# - create the inlet/outlet patches
runApplication createPatch -overwrite
# - apply the initial fields
cp -rf 0.org 0
# - create the AMI faces by creating baffles, and then splitting the mesh
runApplication createBaffles -overwrite
runApplication mergeOrSplitBaffles -split -overwrite

View File

@ -0,0 +1,25 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object RASProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
RASModel kEpsilon;
turbulence on;
printCoeffs on;
// ************************************************************************* //

View File

@ -0,0 +1,43 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object dynamicMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dynamicFvMesh solidBodyMotionFvMesh;
motionSolverLibs ( "libfvMotionSolvers.so" );
solidBodyMotionFvMeshCoeffs
{
cellZone innerCylinderSmall;
solidBodyMotionFunction rotatingMotion;
rotatingMotionCoeffs
{
origin (0 0 0);
axis (0 1 0);
omega table
(
(0 0)
(0.01 628)
(0.022 628)
(0.03 419)
(100 419)
);
}
}
// ************************************************************************* //

View File

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

View File

@ -0,0 +1,72 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
convertToMeters 1;
vertices
(
(-0.3 -0.81 -0.3)
( 0.3 -0.81 -0.3)
( 0.3 0.21 -0.3)
(-0.3 0.21 -0.3)
(-0.3 -0.81 0.3)
( 0.3 -0.81 0.3)
( 0.3 0.21 0.3)
(-0.3 0.21 0.3)
);
blocks
(
hex (0 1 2 3 4 5 6 7) (12 20 12) simpleGrading (1 1 1)
);
edges
(
);
boundary
(
walls
{
type wall;
faces
(
(2 6 5 1)
(0 3 2 1)
(0 4 7 3)
(4 5 6 7)
);
}
inlet
{
type patch;
faces
(
(3 7 6 2)
);
}
outlet
{
type patch;
faces
(
(1 5 4 0)
);
}
);
// ************************************************************************* //

View File

@ -0,0 +1,84 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format binary;
class polyBoundaryMesh;
location "constant/polyMesh";
object boundary;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
9
(
inlet
{
type patch;
nFaces 676;
startFace 1710311;
}
outlet
{
type patch;
nFaces 112;
startFace 1710987;
}
outerCylinder
{
type wall;
nFaces 976;
startFace 1711099;
}
propellerTip
{
type wall;
nFaces 21579;
startFace 1712075;
}
propellerStem1
{
type wall;
nFaces 192;
startFace 1733654;
}
propellerStem2
{
type wall;
nFaces 576;
startFace 1733846;
}
propellerStem3
{
type wall;
nFaces 1536;
startFace 1734422;
}
AMI1
{
type cyclicAMI;
inGroups 1(cyclicAMI);
nFaces 22416;
startFace 1735958;
matchTolerance 0.0001;
transform noOrdering;
neighbourPatch AMI2;
}
AMI2
{
type cyclicAMI;
inGroups 1(cyclicAMI);
nFaces 22416;
startFace 1758374;
matchTolerance 0.0001;
transform noOrdering;
neighbourPatch AMI1;
}
)
// ************************************************************************* //

View File

@ -0,0 +1,62 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object transportProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
phaseChangeTwoPhaseMixture SchnerrSauer;
pSat pSat [1 -1 -2 0 0] 2300; // saturation pressure
sigma sigma [1 0 -2 0 0 0 0] 0.07;
phase1
{
transportModel Newtonian;
nu nu [0 2 -1 0 0 0 0] 9e-07;
rho rho [1 -3 0 0 0 0 0] 1000;
}
phase2
{
transportModel Newtonian;
nu nu [0 2 -1 0 0 0 0] 4.273e-04;
rho rho [1 -3 0 0 0 0 0] 0.02308;
}
KunzCoeffs
{
UInf UInf [0 1 -1 0 0 0 0] 20.0;
tInf tInf [0 0 1 0 0 0 0] 0.005; // L = 0.1 m
Cc Cc [0 0 0 0 0 0 0] 1000;
Cv Cv [0 0 0 0 0 0 0] 1000;
}
MerkleCoeffs
{
UInf UInf [0 1 -1 0 0 0 0] 20.0;
tInf tInf [0 0 1 0 0 0 0] 0.005; // L = 0.1 m
Cc Cc [0 0 0 0 0 0 0] 80;
Cv Cv [0 0 0 0 0 0 0] 1e-03;
}
SchnerrSauerCoeffs
{
n n [0 -3 0 0 0 0 0] 1.6e+13;
dNuc dNuc [0 1 0 0 0 0 0] 2.0e-06;
Cc Cc [0 0 0 0 0 0 0] 1;
Cv Cv [0 0 0 0 0 0 0] 1;
}
// ************************************************************************* //

View File

@ -0,0 +1,304 @@
# Wavefront OBJ file
# Regions:
# 0 ascii
#
# points : 100
# triangles : 196
#
v 0.0857323 0.1 -0.135092
v -0.0857323 0.1 -0.135092
v -0.0857323 0.1 0.135092
v 0.0857323 0.1 0.135092
v 0.158738 0.1 -0.0200533
v -0.158738 0.1 -0.0200533
v -0.158738 0.1 0.0200533
v 0.158738 0.1 0.0200533
v 0.0681247 0.1 -0.144772
v -0.0681247 0.1 -0.144772
v -0.0681247 0.1 0.144772
v 0.0681247 0.1 0.144772
v 0.154973 0.1 -0.0397904
v -0.154973 0.1 -0.0397904
v -0.154973 0.1 0.0397904
v 0.154973 0.1 0.0397904
v 0.0100465 0.1 -0.159684
v -0.0100465 0.1 -0.159684
v -0.0100465 0.1 0.159684
v 0.0100465 0.1 0.159684
v 0.148764 0.1 -0.0588999
v -0.148764 0.1 -0.0588999
v -0.148764 0.1 0.0588999
v 0.148764 0.1 0.0588999
v 0.140209 0.1 -0.0770806
v -0.140209 0.1 -0.0770806
v -0.140209 0.1 0.0770806
v 0.140209 0.1 0.0770806
v 0.0494427 0.1 -0.152169
v -0.0494427 0.1 -0.152169
v -0.0494427 0.1 0.152169
v 0.0494427 0.1 0.152169
v 0.16 0.1 0
v -0.16 0.1 6.56331e-11
v 0.101988 0.1 -0.123282
v -0.101988 0.1 -0.123282
v -0.101988 0.1 0.123282
v 0.101988 0.1 0.123282
v 0.029981 0.1 -0.157166
v -0.029981 0.1 -0.157166
v -0.029981 0.1 0.157166
v 0.029981 0.1 0.157166
v 0.129443 0.1 -0.0940456
v -0.129443 0.1 -0.0940456
v -0.129443 0.1 0.0940456
v 0.129443 0.1 0.0940456
v 0.116635 0.1 -0.109528
v -0.116635 0.1 -0.109528
v -0.116635 0.1 0.109528
v 0.116635 0.1 0.109528
v 0.0857323 -0.6 -0.135092
v -0.0857323 -0.6 -0.135092
v -0.0857323 -0.6 0.135092
v 0.0857323 -0.6 0.135092
v 0.158738 -0.6 -0.0200533
v -0.158738 -0.6 -0.0200533
v -0.158738 -0.6 0.0200533
v 0.158738 -0.6 0.0200533
v 0.0681247 -0.6 -0.144772
v -0.0681247 -0.6 -0.144772
v -0.0681247 -0.6 0.144772
v 0.0681247 -0.6 0.144772
v 0.154973 -0.6 -0.0397904
v -0.154973 -0.6 -0.0397904
v -0.154973 -0.6 0.0397904
v 0.154973 -0.6 0.0397904
v 0.0100465 -0.6 -0.159684
v -0.0100465 -0.6 -0.159684
v -0.0100465 -0.6 0.159684
v 0.0100465 -0.6 0.159684
v 0.148764 -0.6 -0.0588999
v -0.148764 -0.6 -0.0588999
v -0.148764 -0.6 0.0588999
v 0.148764 -0.6 0.0588999
v 0.140209 -0.6 -0.0770806
v -0.140209 -0.6 -0.0770806
v -0.140209 -0.6 0.0770806
v 0.140209 -0.6 0.0770806
v 0.0494427 -0.6 -0.152169
v -0.0494427 -0.6 -0.152169
v -0.0494427 -0.6 0.152169
v 0.0494427 -0.6 0.152169
v 0.16 -0.6 0
v -0.16 -0.6 6.56331e-11
v 0.101988 -0.6 -0.123282
v -0.101988 -0.6 -0.123282
v -0.101988 -0.6 0.123282
v 0.101988 -0.6 0.123282
v 0.029981 -0.6 -0.157166
v -0.029981 -0.6 -0.157166
v -0.029981 -0.6 0.157166
v 0.029981 -0.6 0.157166
v 0.129443 -0.6 -0.0940456
v -0.129443 -0.6 -0.0940456
v -0.129443 -0.6 0.0940456
v 0.129443 -0.6 0.0940456
v 0.116635 -0.6 -0.109528
v -0.116635 -0.6 -0.109528
v -0.116635 -0.6 0.109528
v 0.116635 -0.6 0.109528
g ascii
f 33 83 5
f 55 5 83
f 5 55 13
f 63 13 55
f 13 63 21
f 71 21 63
f 21 71 25
f 75 25 71
f 25 75 43
f 93 43 75
f 43 93 47
f 97 47 93
f 47 97 35
f 85 35 97
f 35 85 1
f 51 1 85
f 1 51 9
f 59 9 51
f 9 59 29
f 79 29 59
f 29 79 39
f 89 39 79
f 39 89 17
f 67 17 89
f 17 67 18
f 68 18 67
f 18 68 40
f 90 40 68
f 40 90 30
f 80 30 90
f 30 80 10
f 60 10 80
f 10 60 2
f 52 2 60
f 2 52 36
f 86 36 52
f 36 86 48
f 98 48 86
f 48 98 44
f 94 44 98
f 44 94 26
f 76 26 94
f 26 76 22
f 72 22 76
f 22 72 14
f 64 14 72
f 14 64 6
f 56 6 64
f 6 56 34
f 84 34 56
f 34 84 7
f 57 7 84
f 7 57 15
f 65 15 57
f 15 65 23
f 73 23 65
f 23 73 27
f 77 27 73
f 27 77 45
f 95 45 77
f 45 95 49
f 99 49 95
f 49 99 37
f 87 37 99
f 37 87 3
f 53 3 87
f 3 53 11
f 61 11 53
f 11 61 31
f 81 31 61
f 31 81 41
f 91 41 81
f 41 91 19
f 69 19 91
f 19 69 20
f 70 20 69
f 20 70 42
f 92 42 70
f 42 92 32
f 82 32 92
f 32 82 12
f 62 12 82
f 12 62 4
f 54 4 62
f 4 54 38
f 88 38 54
f 38 88 50
f 100 50 88
f 50 100 46
f 96 46 100
f 46 96 28
f 78 28 96
f 28 78 24
f 74 24 78
f 24 74 16
f 66 16 74
f 16 66 8
f 58 8 66
f 8 58 33
f 83 33 58
f 13 21 5
f 21 25 5
f 5 25 33
f 33 25 8
f 25 43 8
f 43 47 8
f 47 35 8
f 35 1 8
f 1 9 8
f 9 29 8
f 29 39 8
f 39 17 8
f 17 18 8
f 18 40 8
f 40 30 8
f 30 10 8
f 10 2 8
f 2 36 8
f 36 48 8
f 48 44 8
f 44 26 8
f 26 22 8
f 22 14 8
f 14 6 8
f 6 34 8
f 34 7 8
f 8 7 16
f 16 7 24
f 7 15 24
f 15 23 24
f 24 23 28
f 28 23 46
f 46 23 50
f 50 23 38
f 38 23 4
f 23 27 4
f 27 45 4
f 45 49 4
f 49 37 4
f 37 3 4
f 4 3 12
f 12 3 32
f 32 3 42
f 42 3 20
f 20 3 19
f 19 3 41
f 41 3 31
f 11 31 3
f 66 74 58
f 74 78 58
f 58 78 83
f 83 78 55
f 78 96 55
f 96 100 55
f 100 88 55
f 88 54 55
f 54 62 55
f 62 82 55
f 82 92 55
f 92 70 55
f 70 69 55
f 69 91 55
f 91 81 55
f 81 61 55
f 61 53 55
f 53 87 55
f 87 99 55
f 99 95 55
f 95 77 55
f 77 73 55
f 73 65 55
f 65 57 55
f 57 84 55
f 84 56 55
f 55 56 63
f 63 56 71
f 56 64 71
f 64 72 71
f 71 72 75
f 75 72 93
f 93 72 97
f 97 72 85
f 85 72 51
f 72 76 51
f 76 94 51
f 94 98 51
f 98 86 51
f 86 52 51
f 51 52 59
f 59 52 79
f 79 52 89
f 89 52 67
f 67 52 68
f 68 52 90
f 90 52 80
f 60 80 52

View File

@ -0,0 +1,364 @@
# Wavefront OBJ file
# Regions:
# 0 ascii
#
# points : 120
# triangles : 236
#
v 0.109625 0.06 -0.0488084
v 0.0488084 0.06 -0.109625
v -0.0488084 0.06 -0.109625
v -0.109625 0.06 -0.0488084
v -0.109625 0.06 0.0488084
v -0.0488084 0.06 0.109625
v 0.0488084 0.06 0.109625
v 0.109625 0.06 0.0488084
v 0.097082 0.06 -0.0705342
v 0.0705342 0.06 -0.097082
v -0.0705342 0.06 -0.097082
v -0.097082 0.06 -0.0705342
v -0.097082 0.06 0.0705342
v -0.0705342 0.06 0.097082
v 0.0705342 0.06 0.097082
v 0.097082 0.06 0.0705342
v 0.103923 0.06 -0.06
v 0.06 0.06 -0.103923
v -0.06 0.06 -0.103923
v -0.103923 0.06 -0.06
v -0.103923 0.06 0.06
v -0.06 0.06 0.103923
v 0.06 0.06 0.103923
v 0.103923 0.06 0.06
v 0.12 0.06 0
v -2.46124e-11 0.06 -0.12
v -0.12 0.06 4.92248e-11
v 7.38372e-11 0.06 0.12
v 0.0891774 0.06 -0.0802957
v 0.0802957 0.06 -0.0891774
v -0.0802957 0.06 -0.0891774
v -0.0891774 0.06 -0.0802957
v -0.0891774 0.06 0.0802957
v -0.0802957 0.06 0.0891774
v 0.0802957 0.06 0.0891774
v 0.0891774 0.06 0.0802957
v 0.114127 0.06 -0.037082
v 0.037082 0.06 -0.114127
v -0.037082 0.06 -0.114127
v -0.114127 0.06 -0.037082
v -0.114127 0.06 0.037082
v -0.037082 0.06 0.114127
v 0.037082 0.06 0.114127
v 0.114127 0.06 0.037082
v 0.117378 0.06 -0.0249494
v 0.0249494 0.06 -0.117378
v -0.0249494 0.06 -0.117378
v -0.117378 0.06 -0.0249494
v -0.117378 0.06 0.0249494
v -0.0249494 0.06 0.117378
v 0.0249494 0.06 0.117378
v 0.117378 0.06 0.0249494
v 0.119343 0.06 -0.0125434
v 0.0125434 0.06 -0.119343
v -0.0125434 0.06 -0.119343
v -0.119343 0.06 -0.0125434
v -0.119343 0.06 0.0125434
v -0.0125434 0.06 0.119343
v 0.0125434 0.06 0.119343
v 0.119343 0.06 0.0125434
v 0.109625 -0.08 -0.0488084
v 0.0488084 -0.08 -0.109625
v -0.0488084 -0.08 -0.109625
v -0.109625 -0.08 -0.0488084
v -0.109625 -0.08 0.0488084
v -0.0488084 -0.08 0.109625
v 0.0488084 -0.08 0.109625
v 0.109625 -0.08 0.0488084
v 0.097082 -0.08 -0.0705342
v 0.0705342 -0.08 -0.097082
v -0.0705342 -0.08 -0.097082
v -0.097082 -0.08 -0.0705342
v -0.097082 -0.08 0.0705342
v -0.0705342 -0.08 0.097082
v 0.0705342 -0.08 0.097082
v 0.097082 -0.08 0.0705342
v 0.103923 -0.08 -0.06
v 0.06 -0.08 -0.103923
v -0.06 -0.08 -0.103923
v -0.103923 -0.08 -0.06
v -0.103923 -0.08 0.06
v -0.06 -0.08 0.103923
v 0.06 -0.08 0.103923
v 0.103923 -0.08 0.06
v 0.12 -0.08 0
v -2.46124e-11 -0.08 -0.12
v -0.12 -0.08 4.92248e-11
v 7.38372e-11 -0.08 0.12
v 0.0891774 -0.08 -0.0802957
v 0.0802957 -0.08 -0.0891774
v -0.0802957 -0.08 -0.0891774
v -0.0891774 -0.08 -0.0802957
v -0.0891774 -0.08 0.0802957
v -0.0802957 -0.08 0.0891774
v 0.0802957 -0.08 0.0891774
v 0.0891774 -0.08 0.0802957
v 0.114127 -0.08 -0.037082
v 0.037082 -0.08 -0.114127
v -0.037082 -0.08 -0.114127
v -0.114127 -0.08 -0.037082
v -0.114127 -0.08 0.037082
v -0.037082 -0.08 0.114127
v 0.037082 -0.08 0.114127
v 0.114127 -0.08 0.037082
v 0.117378 -0.08 -0.0249494
v 0.0249494 -0.08 -0.117378
v -0.0249494 -0.08 -0.117378
v -0.117378 -0.08 -0.0249494
v -0.117378 -0.08 0.0249494
v -0.0249494 -0.08 0.117378
v 0.0249494 -0.08 0.117378
v 0.117378 -0.08 0.0249494
v 0.119343 -0.08 -0.0125434
v 0.0125434 -0.08 -0.119343
v -0.0125434 -0.08 -0.119343
v -0.119343 -0.08 -0.0125434
v -0.119343 -0.08 0.0125434
v -0.0125434 -0.08 0.119343
v 0.0125434 -0.08 0.119343
v 0.119343 -0.08 0.0125434
g ascii
f 25 85 53
f 113 53 85
f 53 113 45
f 45 113 105
f 45 105 37
f 97 37 105
f 37 97 1
f 61 1 97
f 1 61 17
f 17 61 77
f 17 77 9
f 9 77 69
f 9 69 29
f 89 29 69
f 29 89 30
f 90 30 89
f 30 90 10
f 70 10 90
f 10 70 18
f 18 70 78
f 18 78 2
f 2 78 62
f 2 62 38
f 98 38 62
f 38 98 46
f 106 46 98
f 46 106 54
f 54 106 114
f 54 114 26
f 86 26 114
f 26 86 55
f 115 55 86
f 55 115 47
f 47 115 107
f 47 107 39
f 99 39 107
f 39 99 3
f 63 3 99
f 3 63 19
f 19 63 79
f 19 79 11
f 11 79 71
f 11 71 31
f 91 31 71
f 31 91 32
f 92 32 91
f 32 92 12
f 72 12 92
f 12 72 20
f 20 72 80
f 20 80 4
f 4 80 64
f 4 64 40
f 100 40 64
f 40 100 48
f 108 48 100
f 48 108 56
f 56 108 116
f 56 116 27
f 87 27 116
f 27 87 57
f 117 57 87
f 57 117 49
f 49 117 109
f 49 109 41
f 101 41 109
f 41 101 5
f 65 5 101
f 5 65 21
f 21 65 81
f 21 81 13
f 13 81 73
f 13 73 33
f 93 33 73
f 33 93 34
f 94 34 93
f 34 94 14
f 74 14 94
f 14 74 22
f 22 74 82
f 22 82 6
f 6 82 66
f 6 66 42
f 102 42 66
f 42 102 50
f 110 50 102
f 50 110 58
f 58 110 118
f 58 118 28
f 88 28 118
f 28 88 59
f 119 59 88
f 59 119 51
f 51 119 111
f 51 111 43
f 103 43 111
f 43 103 7
f 67 7 103
f 7 67 23
f 23 67 83
f 23 83 15
f 15 83 75
f 15 75 35
f 95 35 75
f 35 95 36
f 96 36 95
f 36 96 16
f 76 16 96
f 16 76 24
f 24 76 84
f 24 84 8
f 8 84 68
f 8 68 44
f 104 44 68
f 44 104 52
f 112 52 104
f 52 112 60
f 60 112 120
f 60 120 25
f 85 25 120
f 45 37 53
f 37 1 53
f 53 1 25
f 25 1 60
f 1 17 60
f 60 17 52
f 52 17 44
f 44 17 8
f 8 17 24
f 24 17 16
f 16 17 36
f 36 17 35
f 35 17 15
f 15 17 23
f 23 17 7
f 7 17 43
f 43 17 51
f 51 17 59
f 59 17 28
f 28 17 58
f 58 17 50
f 50 17 42
f 42 17 6
f 6 17 22
f 22 17 14
f 14 17 34
f 17 9 34
f 9 29 34
f 34 29 33
f 33 29 13
f 13 29 21
f 21 29 5
f 5 29 41
f 41 29 49
f 49 29 57
f 57 29 27
f 27 29 56
f 56 29 48
f 48 29 40
f 40 29 4
f 4 29 20
f 20 29 12
f 12 29 32
f 32 29 31
f 31 29 11
f 29 30 11
f 30 10 11
f 11 10 19
f 19 10 3
f 3 10 39
f 39 10 47
f 47 10 55
f 55 10 26
f 26 10 54
f 54 10 46
f 46 10 38
f 38 10 2
f 18 2 10
f 112 104 120
f 104 68 120
f 120 68 85
f 85 68 113
f 68 84 113
f 113 84 105
f 105 84 97
f 97 84 61
f 61 84 77
f 77 84 69
f 69 84 89
f 89 84 90
f 90 84 70
f 70 84 78
f 78 84 62
f 62 84 98
f 98 84 106
f 106 84 114
f 114 84 86
f 86 84 115
f 115 84 107
f 107 84 99
f 99 84 63
f 63 84 79
f 79 84 71
f 71 84 91
f 84 76 91
f 76 96 91
f 91 96 92
f 92 96 72
f 72 96 80
f 80 96 64
f 64 96 100
f 100 96 108
f 108 96 116
f 116 96 87
f 87 96 117
f 117 96 109
f 109 96 101
f 101 96 65
f 65 96 81
f 81 96 73
f 73 96 93
f 93 96 94
f 94 96 74
f 96 95 74
f 95 75 74
f 74 75 82
f 82 75 66
f 66 75 102
f 102 75 110
f 110 75 118
f 118 75 88
f 88 75 119
f 119 75 111
f 111 75 103
f 103 75 67
f 83 67 75

View File

@ -0,0 +1,304 @@
# Wavefront OBJ file
# Regions:
# 0 ascii
#
# points : 100
# triangles : 196
#
v 0.297634 0.2 -0.0376
v -0.297634 0.2 -0.0376
v -0.297634 0.2 0.0376
v 0.297634 0.2 0.0376
v 0.160748 0.2 -0.253298
v -0.160748 0.2 -0.253298
v -0.160748 0.2 0.253298
v 0.160748 0.2 0.253298
v 0.0562144 0.2 -0.294686
v -0.0562144 0.2 -0.294686
v -0.0562144 0.2 0.294686
v 0.0562144 0.2 0.294686
v 0.191227 0.2 -0.231154
v -0.191227 0.2 -0.231154
v -0.191227 0.2 0.231154
v 0.191227 0.2 0.231154
v 0.278933 0.2 -0.110437
v -0.278933 0.2 -0.110437
v -0.278933 0.2 0.110437
v 0.278933 0.2 0.110437
v 0.262892 0.2 -0.144526
v -0.262892 0.2 -0.144526
v -0.262892 0.2 0.144526
v 0.262892 0.2 0.144526
v 0.0188372 0.2 -0.299408
v -0.0188372 0.2 -0.299408
v -0.0188372 0.2 0.299408
v 0.0188372 0.2 0.299408
v 0.127734 0.2 -0.271448
v -0.127734 0.2 -0.271448
v -0.127734 0.2 0.271448
v 0.127734 0.2 0.271448
v 0.3 0.2 0
v -0.3 0.2 1.23062e-10
v 0.0927051 0.2 -0.285317
v -0.0927051 0.2 -0.285317
v -0.0927051 0.2 0.285317
v 0.0927051 0.2 0.285317
v 0.290575 0.2 -0.074607
v -0.290575 0.2 -0.074607
v -0.290575 0.2 0.074607
v 0.290575 0.2 0.074607
v 0.242705 0.2 -0.176336
v -0.242705 0.2 -0.176336
v -0.242705 0.2 0.176336
v 0.242705 0.2 0.176336
v 0.218691 0.2 -0.205364
v -0.218691 0.2 -0.205364
v -0.218691 0.2 0.205364
v 0.218691 0.2 0.205364
v 0.297634 -0.8 -0.0376
v -0.297634 -0.8 -0.0376
v -0.297634 -0.8 0.0376
v 0.297634 -0.8 0.0376
v 0.160748 -0.8 -0.253298
v -0.160748 -0.8 -0.253298
v -0.160748 -0.8 0.253298
v 0.160748 -0.8 0.253298
v 0.0562144 -0.8 -0.294686
v -0.0562144 -0.8 -0.294686
v -0.0562144 -0.8 0.294686
v 0.0562144 -0.8 0.294686
v 0.191227 -0.8 -0.231154
v -0.191227 -0.8 -0.231154
v -0.191227 -0.8 0.231154
v 0.191227 -0.8 0.231154
v 0.278933 -0.8 -0.110437
v -0.278933 -0.8 -0.110437
v -0.278933 -0.8 0.110437
v 0.278933 -0.8 0.110437
v 0.262892 -0.8 -0.144526
v -0.262892 -0.8 -0.144526
v -0.262892 -0.8 0.144526
v 0.262892 -0.8 0.144526
v 0.0188372 -0.8 -0.299408
v -0.0188372 -0.8 -0.299408
v -0.0188372 -0.8 0.299408
v 0.0188372 -0.8 0.299408
v 0.127734 -0.8 -0.271448
v -0.127734 -0.8 -0.271448
v -0.127734 -0.8 0.271448
v 0.127734 -0.8 0.271448
v 0.3 -0.8 0
v -0.3 -0.8 1.23062e-10
v 0.0927051 -0.8 -0.285317
v -0.0927051 -0.8 -0.285317
v -0.0927051 -0.8 0.285317
v 0.0927051 -0.8 0.285317
v 0.290575 -0.8 -0.074607
v -0.290575 -0.8 -0.074607
v -0.290575 -0.8 0.074607
v 0.290575 -0.8 0.074607
v 0.242705 -0.8 -0.176336
v -0.242705 -0.8 -0.176336
v -0.242705 -0.8 0.176336
v 0.242705 -0.8 0.176336
v 0.218691 -0.8 -0.205364
v -0.218691 -0.8 -0.205364
v -0.218691 -0.8 0.205364
v 0.218691 -0.8 0.205364
g ascii
f 33 83 1
f 51 1 83
f 1 51 39
f 89 39 51
f 39 89 17
f 67 17 89
f 17 67 21
f 21 67 71
f 21 71 43
f 93 43 71
f 43 93 47
f 97 47 93
f 47 97 13
f 63 13 97
f 13 63 5
f 5 63 55
f 5 55 29
f 79 29 55
f 29 79 35
f 85 35 79
f 35 85 9
f 59 9 85
f 9 59 25
f 75 25 59
f 25 75 26
f 76 26 75
f 26 76 10
f 60 10 76
f 10 60 36
f 86 36 60
f 36 86 30
f 80 30 86
f 30 80 6
f 56 6 80
f 6 56 14
f 14 56 64
f 14 64 48
f 98 48 64
f 48 98 44
f 94 44 98
f 44 94 22
f 72 22 94
f 22 72 18
f 18 72 68
f 18 68 40
f 90 40 68
f 40 90 2
f 52 2 90
f 2 52 34
f 84 34 52
f 34 84 3
f 53 3 84
f 3 53 41
f 91 41 53
f 41 91 19
f 69 19 91
f 19 69 23
f 23 69 73
f 23 73 45
f 95 45 73
f 45 95 49
f 99 49 95
f 49 99 15
f 65 15 99
f 15 65 7
f 7 65 57
f 7 57 31
f 81 31 57
f 31 81 37
f 87 37 81
f 37 87 11
f 61 11 87
f 11 61 27
f 77 27 61
f 27 77 28
f 78 28 77
f 28 78 12
f 62 12 78
f 12 62 38
f 88 38 62
f 38 88 32
f 82 32 88
f 32 82 8
f 58 8 82
f 8 58 16
f 16 58 66
f 16 66 50
f 100 50 66
f 50 100 46
f 96 46 100
f 46 96 24
f 74 24 96
f 24 74 20
f 20 74 70
f 20 70 42
f 92 42 70
f 42 92 4
f 54 4 92
f 4 54 33
f 83 33 54
f 17 21 39
f 21 43 39
f 43 47 39
f 47 13 39
f 13 5 39
f 5 29 39
f 29 35 39
f 35 9 39
f 9 25 39
f 25 26 39
f 26 10 39
f 10 36 39
f 36 30 39
f 30 6 39
f 6 14 39
f 14 48 39
f 48 44 39
f 44 22 39
f 22 18 39
f 18 40 39
f 39 40 1
f 1 40 33
f 33 40 4
f 4 40 42
f 40 2 42
f 2 34 42
f 34 3 42
f 3 41 42
f 42 41 20
f 20 41 24
f 41 19 24
f 19 23 24
f 24 23 46
f 46 23 50
f 50 23 16
f 23 45 16
f 45 49 16
f 49 15 16
f 16 15 8
f 8 15 32
f 32 15 38
f 38 15 12
f 12 15 28
f 28 15 27
f 27 15 11
f 11 15 37
f 37 15 31
f 7 31 15
f 70 74 92
f 74 96 92
f 96 100 92
f 100 66 92
f 66 58 92
f 58 82 92
f 82 88 92
f 88 62 92
f 62 78 92
f 78 77 92
f 77 61 92
f 61 87 92
f 87 81 92
f 81 57 92
f 57 65 92
f 65 99 92
f 99 95 92
f 95 73 92
f 73 69 92
f 69 91 92
f 91 53 92
f 53 84 92
f 84 52 92
f 52 90 92
f 92 90 54
f 54 90 83
f 83 90 51
f 90 68 51
f 68 72 51
f 51 72 89
f 89 72 67
f 67 72 71
f 71 72 93
f 93 72 97
f 97 72 63
f 72 94 63
f 94 98 63
f 98 64 63
f 63 64 55
f 55 64 79
f 79 64 85
f 85 64 59
f 59 64 75
f 75 64 76
f 76 64 60
f 60 64 86
f 86 64 80
f 56 80 64

View File

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

View File

@ -0,0 +1,58 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
libs
(
"libincompressibleTurbulenceModel.so"
"libincompressibleRASModels.so"
);
application interPhaseChangeDyMFoam;
startFrom latestTime;
startTime 0;
stopAt endTime;
endTime 0.1;
deltaT 1e-5;
writeControl adjustableRunTime;
writeInterval 0.001;
purgeWrite 0;
writeFormat binary;
writePrecision 6;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;
adjustTimeStep yes;
maxCo 2;
// ************************************************************************* //

View File

@ -0,0 +1,110 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object topoSetDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
actions
(
{
name innerCylinderSmall;
type cellSet;
action new;
source cylinderToCell;
sourceInfo
{
p1 (0 -0.08 0);
p2 (0 0.06 0);
radius 0.12;
}
}
{
name outerCells;
type cellSet;
action new;
source cellToCell;
sourceInfo
{
set innerCylinderSmall;
}
}
{
name outerCells;
type cellSet;
action invert;
}
{
name innerCylinderSmall;
type cellZoneSet;
action new;
source setToCellZone;
sourceInfo
{
set innerCylinderSmall;
}
}
{
name innerCylinderSmallFace;
type faceSet;
action new;
source cellToFace;
sourceInfo
{
set innerCylinderSmall;
option all;
}
}
{
name innerCylinderSmallFace;
type faceSet;
action subset;
source cellToFace;
sourceInfo
{
set outerCells;
option all;
}
}
{
name innerCylinderSmall;
type faceZoneSet;
action new;
source setsToFaceZone;
sourceInfo
{
faceSet innerCylinderSmallFace;
cellSet innerCylinderSmall;
}
}
// Dummy faceSet for creating initial patches
{
name dummyFaces;
type faceSet;
action new;
source labelToFace;
sourceInfo
{
value ();
}
}
);
// ************************************************************************* //

View File

@ -0,0 +1,58 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object createBafflesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Whether to convert internal faces only (so leave boundary faces intact).
// This is only relevant if your face selection type can pick up boundary
// faces.
internalFacesOnly true;
// Baffles to create.
baffles
{
baffleFaces
{
//- Use predefined faceZone to select faces and orientation.
type faceZone;
zoneName innerCylinderSmall;
patches
{
master
{
//- Master side patch
name AMI1;
type cyclicAMI;
matchTolerance 0.0001;
neighbourPatch AMI2;
transform noOrdering;
}
slave
{
//- Slave side patch
name AMI2;
type cyclicAMI;
matchTolerance 0.0001;
neighbourPatch AMI1;
transform noOrdering;
}
}
}
}
// ************************************************************************* //

View File

@ -0,0 +1,78 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object topoSetDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
actions
(
{
name boundaryFaces;
type faceSet;
action new;
source patchToFace;
sourceInfo
{
name outerCylinder;
}
}
{
name outletFaces;
type faceSet;
action new;
source faceToFace;
sourceInfo
{
set boundaryFaces;
}
}
{
name inletFaces;
type faceSet;
action new;
source faceToFace;
sourceInfo
{
set boundaryFaces;
}
}
{
name outletFaces;
type faceSet;
action subset;
source normalToFace;
sourceInfo
{
normal (0 -1 0); // Vector
cos 0.3; // Tolerance (max cos of angle)
}
}
{
name inletFaces;
type faceSet;
action subset;
source normalToFace;
sourceInfo
{
normal (0 1 0); // Vector
cos 0.3; // Tolerance (max cos of angle)
}
}
);
// ************************************************************************* //

View File

@ -0,0 +1,51 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object createPatchDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// 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 inlet;
patchInfo
{
type patch;
}
constructFrom set;
set inletFaces;
}
{
name outlet;
patchInfo
{
type patch;
}
constructFrom set;
set outletFaces;
}
);
// ************************************************************************* //

View File

@ -0,0 +1,30 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 4;
method hierarchical;
hierarchicalCoeffs
{
n (1 4 1);
delta 0.001;
order xyz;
}
// ************************************************************************* //

View File

@ -0,0 +1,67 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / 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(U) cellLimited Gauss linear 1;
}
divSchemes
{
default none;
div(phi,alpha) Gauss vanLeer;
div(phirb,alpha) Gauss interfaceCompression;
UD Gauss upwind;
div(rhoPhi,U) Gauss linearUpwind grad(U);
div(phi,k) Gauss upwind;
div(phi,epsilon) Gauss upwind;
div((muEff*dev(T(grad(U))))) Gauss linear;
}
laplacianSchemes
{
default Gauss linear limited corrected 0.33;
}
interpolationSchemes
{
default linear;
}
snGradSchemes
{
default limited corrected 0.33;
}
fluxRequired
{
default no;
p_rgh;
pcorr;
alpha1;
}
// ************************************************************************* //

View File

@ -0,0 +1,96 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
solvers
{
alpha1
{
cAlpha 0;
nAlphaCorr 2;
nAlphaSubCycles 1;
MULESCorr yes;
nLimiterIter 5;
solver smoothSolver;
smoother symGaussSeidel;
tolerance 1e-8;
relTol 0;
maxIter 10;
};
pcorr
{
solver GAMG;
tolerance 1e-2;
relTol 0;
smoother DICGaussSeidel;
cacheAgglomeration no;
nCellsInCoarsestLevel 10;
agglomerator faceAreaPair;
mergeLevels 1;
maxIter 50;
}
p_rgh
{
$pcorr;
tolerance 1e-9;
relTol 0.01;
}
p_rghFinal
{
$p_rgh;
tolerance 1e-9;
relTol 0;
}
"(U|k|epsilon)"
{
solver smoothSolver;
smoother symGaussSeidel;
tolerance 1e-6;
relTol 0.1;
}
"(U|k|epsilon)Final"
{
$U;
tolerance 1e-6;
relTol 0;
}
}
PIMPLE
{
correctPhi yes;
nOuterCorrectors 1;
nCorrectors 3;
nNonOrthogonalCorrectors 0;
}
relaxationFactors
{
"(U|k|epsilon).*" 1;
}
cache
{
grad(U);
}
// ************************************************************************* //

View File

@ -0,0 +1,32 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object topoSetDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
actions
(
{
name innerCylinder;
type cellZoneSet;
action remove;
}
{
name innerCylinderSmall;
type cellZoneSet;
action remove;
}
);
// ************************************************************************* //

View File

@ -0,0 +1,484 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object snappyHexMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
// Which of the steps to run
castellatedMesh true;
snap true;
addLayers false;
// Geometry. Definition of all surfaces. All surfaces are of class
// searchableSurface.
// Surfaces are used
// - to specify refinement for any mesh cell intersecting it
// - to specify refinement for any mesh cell inside/outside/near
// - to 'snap' the mesh boundary to the surface
geometry
{
innerCylinder.obj
{
type triSurfaceMesh;
name innerCylinder;
regions
{
ascii
{
name innerCylinder;
}
}
}
innerCylinderSmall.obj
{
type triSurfaceMesh;
name innerCylinderSmall;
regions
{
ascii
{
name innerCylinderSmall;
}
}
}
outerCylinder.obj
{
type triSurfaceMesh;
name outerCylinder;
regions
{
ascii
{
name outerCylinder;
}
}
}
propellerTip.obj
{
type triSurfaceMesh;
name propellerTip;
regions
{
ascii
{
name propellerTip;
}
}
}
propellerStem1.obj
{
type triSurfaceMesh;
name propellerStem1;
regions
{
ascii
{
name propellerStem1;
}
}
}
propellerStem2.obj
{
type triSurfaceMesh;
name propellerStem2;
regions
{
ascii
{
name propellerStem2;
}
}
}
propellerStem3.obj
{
type triSurfaceMesh;
name propellerStem3;
regions
{
ascii
{
name propellerStem3;
}
}
}
};
// Settings for the castellatedMesh generation.
castellatedMeshControls
{
// Refinement parameters
// ~~~~~~~~~~~~~~~~~~~~~
// If local number of cells is >= maxLocalCells on any processor
// switches from from refinement followed by balancing
// (current method) to (weighted) balancing before refinement.
maxLocalCells 100000;
// Overall cell limit (approximately). Refinement will stop immediately
// upon reaching this number so a refinement level might not complete.
// Note that this is the number of cells before removing the part which
// is not 'visible' from the keepPoint. The final number of cells might
// actually be a lot less.
maxGlobalCells 2000000;
// The surface refinement loop might spend lots of iterations refining just a
// few cells. This setting will cause refinement to stop if <= minimumRefine
// are selected for refinement. Note: it will at least do one iteration
// (unless the number of cells to refine is 0)
minRefinementCells 0;
// Allow a certain level of imbalance during refining
// (since balancing is quite expensive)
// Expressed as fraction of perfect balance (= overall number of cells /
// nProcs). 0=balance always.
maxLoadUnbalance 0.10;
// Number of buffer layers between different levels.
// 1 means normal 2:1 refinement restriction, larger means slower
// refinement.
nCellsBetweenLevels 2;
// Explicit feature edge refinement
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Specifies a level for any cell intersected by its edges.
// This is a featureEdgeMesh, read from constant/triSurface for now.
features
(
{
file "innerCylinderSmall.eMesh";
level 4;
}
{
file "outerCylinder.eMesh";
level 0;
}
{
file "propellerTip.eMesh";
level 4;
}
// {
// file "propellerStem1.eMesh";
// level 4;
// }
{
file "propellerStem2.eMesh";
level 4;
}
{
file "propellerStem3.eMesh";
level 4;
}
);
// Surface based refinement
// ~~~~~~~~~~~~~~~~~~~~~~~~
// Specifies two levels for every surface. The first is the minimum level,
// every cell intersecting a surface gets refined up to the minimum level.
// The second level is the maximum level. Cells that 'see' multiple
// intersections where the intersections make an
// angle > resolveFeatureAngle get refined up to the maximum level.
refinementSurfaces
{
innerCylinder
{
level (2 3);
cellZone innerCylinder;
faceZone innerCylinder;
cellZoneInside inside;
}
innerCylinderSmall
{
level (4 4);
cellZone innerCylinderSmall;
faceZone innerCylinderSmall;
cellZoneInside inside;
}
outerCylinder
{
level (0 0);
}
propellerTip
{
level (4 5);
}
propellerStem1
{
level (4 4);
}
propellerStem2
{
level (4 4);
}
propellerStem3
{
level (4 4);
}
}
// Resolve sharp angles
resolveFeatureAngle 30;
// Region-wise refinement
// ~~~~~~~~~~~~~~~~~~~~~~
// Specifies refinement level for cells in relation to a surface. One of
// three modes
// - distance. 'levels' specifies per distance to the surface the
// wanted refinement level. The distances need to be specified in
// descending order.
// - inside. 'levels' is only one entry and only the level is used. All
// cells inside the surface get refined up to the level. The surface
// needs to be closed for this to be possible.
// - outside. Same but cells outside.
refinementRegions
{
innerCylinder
{
mode inside;
levels ((1E15 3));
}
innerCylinderSmall
{
mode inside;
levels ((1E15 4));
}
outerCylinder
{
mode inside;
levels ((1E15 0));
}
}
// Mesh selection
// ~~~~~~~~~~~~~~
// After refinement patches get added for all refinementSurfaces and
// all cells intersecting the surfaces get put into these patches. The
// section reachable from the locationInMesh is kept.
// NOTE: This point should never be on a face, always inside a cell, even
// after refinement.
locationInMesh (0 -0.5 0);
// Whether any faceZones (as specified in the refinementSurfaces)
// are only on the boundary of corresponding cellZones or also allow
// free-standing zone faces. Not used if there are no faceZones.
allowFreeStandingZoneFaces true;
}
// Settings for the snapping.
snapControls
{
//- Number of patch smoothing iterations before finding correspondence
// to surface
nSmoothPatch 3;
//- Relative distance for points to be attracted by surface feature point
// or edge. True distance is this factor times local
// maximum edge length.
tolerance 4.0; // 1.0;
//- Number of mesh displacement relaxation iterations.
nSolveIter 300;
//- Maximum number of snapping relaxation iterations. Should stop
// before upon reaching a correct mesh.
nRelaxIter 5;
//- Highly experimental and wip: number of feature edge snapping
// iterations. Leave out altogether to disable.
// Do not use here since mesh resolution too low and baffles present
nFeatureSnapIter 20;
}
// Settings for the layer addition.
addLayersControls
{
// Are the thickness parameters below relative to the undistorted
// size of the refined cell outside layer (true) or absolute sizes (false).
relativeSizes true;
// Per final patch (so not geometry!) the layer information
layers
{
}
// Expansion factor for layer mesh
expansionRatio 1.0;
// Wanted thickness of final added cell layer. If multiple layers
// is the
// thickness of the layer furthest away from the wall.
// Relative to undistorted size of cell outside layer.
// is the thickness of the layer furthest away from the wall.
// See relativeSizes parameter.
finalLayerThickness 0.3;
// Minimum thickness of cell layer. If for any reason layer
// cannot be above minThickness do not add layer.
// Relative to undistorted size of cell outside layer.
minThickness 0.1;
// If points get not extruded do nGrow layers of connected faces that are
// also not grown. This helps convergence of the layer addition process
// close to features.
// Note: changed(corrected) w.r.t 17x! (didn't do anything in 17x)
nGrow 0;
// Advanced settings
// When not to extrude surface. 0 is flat surface, 90 is when two faces
// are perpendicular
featureAngle 30;
// Maximum number of snapping relaxation iterations. Should stop
// before upon reaching a correct mesh.
nRelaxIter 3;
// Number of smoothing iterations of surface normals
nSmoothSurfaceNormals 1;
// Number of smoothing iterations of interior mesh movement direction
nSmoothNormals 3;
// Smooth layer thickness over surface patches
nSmoothThickness 10;
// Stop layer growth on highly warped cells
maxFaceThicknessRatio 0.5;
// Reduce layer growth where ratio thickness to medial
// distance is large
maxThicknessToMedialRatio 0.3;
// Angle used to pick up medial axis points
// Note: changed(corrected) w.r.t 17x! 90 degrees corresponds to 130 in 17x.
minMedianAxisAngle 90;
// Create buffer region for new layer terminations
nBufferCellsNoExtrude 0;
// Overall max number of layer addition iterations. The mesher will exit
// if it reaches this number of iterations; possibly with an illegal
// mesh.
nLayerIter 50;
}
// Generic mesh quality settings. At any undoable phase these determine
// where to undo.
meshQualityControls
{
//- Maximum non-orthogonality allowed. Set to 180 to disable.
maxNonOrtho 65;
//- Max skewness allowed. Set to <0 to disable.
maxBoundarySkewness 20;
maxInternalSkewness 4;
//- Max concaveness allowed. Is angle (in degrees) below which concavity
// is allowed. 0 is straight face, <0 would be convex face.
// Set to 180 to disable.
maxConcave 80;
//- Minimum pyramid volume. Is absolute volume of cell pyramid.
// Set to a sensible fraction of the smallest cell volume expected.
// Set to very negative number (e.g. -1E30) to disable.
minVol 1e-13;
//- Minimum quality of the tet formed by the face-centre
// and variable base point minimum decomposition triangles and
// the cell centre. This has to be a positive number for tracking
// to work. Set to very negative number (e.g. -1E30) to
// disable.
// <0 = inside out tet,
// 0 = flat tet
// 1 = regular tet
minTetQuality -1; // 1e-30;
//- Minimum face area. Set to <0 to disable.
minArea -1;
//- Minimum face twist. Set to <-1 to disable. dot product of face normal
//- and face centre triangles normal
minTwist 0.01;
//- minimum normalised cell determinant
//- 1 = hex, <= 0 = folded or flattened illegal cell
minDeterminant 0.001;
//- minFaceWeight (0 -> 0.5)
minFaceWeight 0.05;
//- minVolRatio (0 -> 1)
minVolRatio 0.01;
//must be >0 for Fluent compatibility
minTriangleTwist -1;
// Advanced
//- Number of error distribution iterations
nSmoothScale 4;
//- amount to scale back displacement at error points
errorReduction 0.75;
// Optional : some meshing phases allow usage of relaxed rules.
// See e.g. addLayersControls::nRelaxedIter.
relaxed
{
//- Maximum non-orthogonality allowed. Set to 180 to disable.
maxNonOrtho 75;
}
}
// Advanced
// Flags for optional output
// 0 : only write final meshes
// 1 : write intermediate meshes
// 2 : write volScalarField with cellLevel for postprocessing
// 4 : write current intersections as .obj files
debug 0;
// Merge tolerance. Is fraction of overall bounding box of initial mesh.
// Note: the write tolerance needs to be higher than this.
mergeTolerance 1e-6;
// ************************************************************************* //

View File

@ -0,0 +1,59 @@
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: dev |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object surfaceFeatureExtractDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
innerCylinder.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
innerCylinderSmall.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
outerCylinder.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
propellerStem1.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
propellerStem2.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
propellerStem3.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
propellerTip.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
// ************************************************************************* //

View File

@ -0,0 +1,17 @@
// How to obtain raw features (extractFromFile || extractFromSurface)
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
// Mark edges whose adjacent surface normals are at an angle less
// than includedAngle as features
// - 0 : selects no edges
// - 180: selects all edges
includedAngle 150;
}
trimFeatures
{
// Remove features with fewer than the specified number of edges
minElem 10;
}