TUT: DMD: update cylinder2D with new DMD functionalities
This commit is contained in:
parent
2a8e1c0865
commit
2c74298891
@ -36,7 +36,7 @@ boundaryField
|
||||
type symmetry;
|
||||
}
|
||||
|
||||
"left|right"
|
||||
"(left|right)"
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
|
@ -36,7 +36,7 @@ boundaryField
|
||||
type symmetry;
|
||||
}
|
||||
|
||||
"left|right"
|
||||
"(left|right)"
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
|
@ -13,15 +13,24 @@ runParallel renumberMesh -overwrite
|
||||
|
||||
cp -f system/decomposeParDict system/coarseMesh
|
||||
|
||||
runApplication -s coarseMesh decomposePar -region coarseMesh
|
||||
runApplication -s coarseMesh \
|
||||
decomposePar -region coarseMesh
|
||||
|
||||
runParallel -s coarseMesh renumberMesh -overwrite -region coarseMesh
|
||||
runParallel -s coarseMesh \
|
||||
renumberMesh -overwrite -region coarseMesh
|
||||
|
||||
runParallel $(getApplication)
|
||||
|
||||
runParallel -s main redistributePar -reconstruct -latestTime
|
||||
runParallel -s main \
|
||||
redistributePar -reconstruct -overwrite
|
||||
|
||||
runParallel -s coarseMesh redistributePar -reconstruct \
|
||||
-region coarseMesh -time '50,100,200'
|
||||
runParallel -s coarseMesh \
|
||||
redistributePar -reconstruct -region coarseMesh -time '50,100' -overwrite
|
||||
|
||||
if notTest "$@"
|
||||
then
|
||||
runParallel -s postProcess \
|
||||
$(getApplication) -postProcess -fields '(U p)' -time '10:'
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
@ -10,7 +10,6 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object transportProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
@ -10,7 +10,6 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object turbulenceProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
@ -0,0 +1,49 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd01
|
||||
{
|
||||
// Mandatory entries (unmodifiable)
|
||||
type DMD;
|
||||
libs (fieldFunctionObjects);
|
||||
DMDModel STDMD;
|
||||
field U;
|
||||
|
||||
// Optional entries (unmodifiable)
|
||||
/* patch <patchName>; */
|
||||
|
||||
// Conditional mandatory entries (runtime modifiable)
|
||||
|
||||
// Option-1
|
||||
/* interval 5.5; */
|
||||
|
||||
// Option-2
|
||||
/* executeInterval 10; */
|
||||
|
||||
// Optional entries (runtime modifiable)
|
||||
/* modeSorter firstSnapshot; */
|
||||
/* nGramSchmidt 5; */
|
||||
/* maxRank 50; */
|
||||
/* nModes 50; */
|
||||
/* fMin 0; */
|
||||
/* fMax 1000000000; */
|
||||
|
||||
// Optional entries (runtime modifiable, yet not recommended)
|
||||
/* minBasis 0.00000001; */
|
||||
/* minEVal 0.00000001; */
|
||||
/* sortLimiter 500.0; */
|
||||
|
||||
|
||||
// Optional (inherited) entries
|
||||
region region0;
|
||||
enabled true;
|
||||
log true;
|
||||
timeStart 10;
|
||||
timeEnd 1000;
|
||||
executeControl timeStep;
|
||||
executeInterval 10;
|
||||
writeControl onEnd;
|
||||
writeInterval 1;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd02
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd03
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
patch cylinder;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd04
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
patch outlet;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd05
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
maxRank 10;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd06
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
maxRank 5;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd07
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
patch outlet;
|
||||
maxRank 2;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd08
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd09
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd10
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
patch cylinder;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd11
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
patch outlet;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd12
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
maxRank 10;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd13
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
region coarseMesh;
|
||||
maxRank 5;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd14
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
patch outlet;
|
||||
maxRank 2;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd15
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
modeSorter kiewat;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd16
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
modeSorter kiewat;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd17
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
patch cylinder;
|
||||
modeSorter kiewat;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd18
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
patch outlet;
|
||||
modeSorter kiewat;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd19
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
modeSorter kiewat;
|
||||
maxRank 10;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd20
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
modeSorter kiewat;
|
||||
maxRank 5;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd21
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
patch outlet;
|
||||
modeSorter kiewat;
|
||||
maxRank 2;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd22
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
modeSorter kiewat;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd23
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
modeSorter kiewat;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd24
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
patch cylinder;
|
||||
modeSorter kiewat;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd25
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
patch outlet;
|
||||
modeSorter kiewat;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd26
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
maxRank 10;
|
||||
modeSorter kiewat;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,14 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd27
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
region coarseMesh;
|
||||
maxRank 5;
|
||||
modeSorter kiewat;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,14 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd28
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field p;
|
||||
patch outlet;
|
||||
maxRank 2;
|
||||
modeSorter kiewat;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd29
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd30
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd31
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean;
|
||||
patch cylinder;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd32
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean;
|
||||
patch outlet;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd33
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean;
|
||||
maxRank 10;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd34
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean;
|
||||
maxRank 5;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd35
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean;
|
||||
patch outlet;
|
||||
maxRank 2;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd36
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field pMean;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd37
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field pMean;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd38
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field pMean;
|
||||
patch cylinder;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd39
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field pMean;
|
||||
patch outlet;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd40
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field pMean;
|
||||
maxRank 10;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd41
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field pMean;
|
||||
maxRank 5;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd42
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field pMean;
|
||||
patch outlet;
|
||||
maxRank 2;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd43
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field pMean;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd44
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field pMean;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd45
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UPrime2Mean;
|
||||
patch cylinder;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd46
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UPrime2Mean;
|
||||
patch outlet;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd47
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UPrime2Mean;
|
||||
maxRank 10;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd48
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UPrime2Mean;
|
||||
maxRank 5;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd49
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UPrime2Mean;
|
||||
patch outlet;
|
||||
maxRank 2;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd50
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean_movingAverageWindow;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd51
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean_movingAverageWindow;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd52
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean_movingAverageWindow;
|
||||
patch cylinder;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd53
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean_movingAverageWindow;
|
||||
patch outlet;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd54
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean_movingAverageWindow;
|
||||
maxRank 10;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd55
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean_movingAverageWindow;
|
||||
maxRank 5;
|
||||
region coarseMesh;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd56
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field UMean_movingAverageWindow;
|
||||
patch outlet;
|
||||
maxRank 2;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,11 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd57
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field yPlus;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd58
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field yPlus;
|
||||
patch cylinder;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd59
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field yPlus;
|
||||
patch outlet;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,12 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd60
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field yPlus;
|
||||
maxRank 10;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -0,0 +1,13 @@
|
||||
// -*- C++ -*-
|
||||
|
||||
stdmd61
|
||||
{
|
||||
${stdmd01}
|
||||
|
||||
field yPlus;
|
||||
patch cylinder;
|
||||
maxRank 2;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
@ -44,10 +44,6 @@ blocks
|
||||
hex (0 1 2 3 4 5 6 7) ($nx $ny $nz) simpleGrading (1 1 1)
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
);
|
||||
|
||||
boundary
|
||||
(
|
||||
allPatches
|
||||
@ -66,8 +62,5 @@ boundary
|
||||
}
|
||||
);
|
||||
|
||||
mergePatchPairs
|
||||
(
|
||||
);
|
||||
|
||||
// ************************************************************************* //
|
||||
|
@ -23,6 +23,18 @@ x3 #eval{ 10.0*$R };
|
||||
xOutlet #eval{ 18.6667*$R };
|
||||
xInlet #eval{ -10.125*$R };
|
||||
|
||||
RsinPi8 #eval{ $R*sin(0.125*pi()) };
|
||||
RsinPi8n #eval{ -$RsinPi8 };
|
||||
RcosPi8 #eval{ $R*cos(0.125*pi()) };
|
||||
RcosPi8n #eval{ -$RcosPi8 };
|
||||
RsinPi4 #eval{ $R*sin(0.25*pi()) };
|
||||
|
||||
x2sinPi8 #eval{ $x2*sin(0.125*pi()) };
|
||||
x2sinPi8n #eval{ -$x2sinPi8 };
|
||||
x2cosPi8 #eval{ $x2*cos(0.125*pi()) };
|
||||
x2cosPi8n #eval{ -$x2cosPi8 };
|
||||
x2sinPi4 #eval{ $x2*sin(0.25*pi()) };
|
||||
|
||||
z0 -0.0075;
|
||||
z1 0.0075;
|
||||
nz 1;
|
||||
@ -37,18 +49,15 @@ vertices #codeStream
|
||||
|
||||
code
|
||||
#{
|
||||
// sin(45), cos(45)
|
||||
const scalar sqrt05 = sqrt(0.5);
|
||||
|
||||
pointField points(19);
|
||||
points[0] = point($R, 0, $z0);
|
||||
points[1] = point($x2, 0, $z0);
|
||||
points[2] = point($x3, 0, $z0);
|
||||
points[3] = point($x3, $x2*sqrt05, $z0);
|
||||
points[4] = point($x2*sqrt05, $x2*sqrt05, $z0);
|
||||
points[5] = point($R*sqrt05, $R*sqrt05, $z0);
|
||||
points[3] = point($x3, $x2sinPi4, $z0);
|
||||
points[4] = point($x2sinPi4, $x2sinPi4, $z0);
|
||||
points[5] = point($RsinPi4, $RsinPi4, $z0);
|
||||
points[6] = point($x3, $x3, $z0);
|
||||
points[7] = point($x2*sqrt05, $x3, $z0);
|
||||
points[7] = point($x2sinPi4, $x3, $z0);
|
||||
|
||||
// Mirror +x points to -x side
|
||||
points[11] = point(-points[0].x(), points[0].y(), points[0].z());
|
||||
@ -67,7 +76,7 @@ vertices #codeStream
|
||||
|
||||
// Mirror -z points to +z side
|
||||
label sz = points.size();
|
||||
points.resize(2*sz);
|
||||
points.setSize(2*sz);
|
||||
for (label i = 0; i < sz; ++i)
|
||||
{
|
||||
const point& pt = points[i];
|
||||
@ -77,7 +86,7 @@ vertices #codeStream
|
||||
// Add an inner cylinder
|
||||
sz = points.size();
|
||||
label nAdd = 6;
|
||||
points.resize(sz + nAdd);
|
||||
points.setSize(sz + nAdd);
|
||||
|
||||
// Points within the inner cylinder
|
||||
points[sz] = point(0, 0, $z0);
|
||||
@ -93,7 +102,7 @@ vertices #codeStream
|
||||
|
||||
// Mirror -z points to +z side
|
||||
sz = points.size();
|
||||
points.resize(sz + nAdd);
|
||||
points.setSize(sz + nAdd);
|
||||
for (label i = 0; i < nAdd; ++i)
|
||||
{
|
||||
const point& pt = points[i+sz-nAdd];
|
||||
@ -103,21 +112,21 @@ vertices #codeStream
|
||||
// Add downstream and upstream blocks
|
||||
sz = points.size();
|
||||
nAdd = 6;
|
||||
points.resize(sz + nAdd);
|
||||
points.setSize(sz + nAdd);
|
||||
|
||||
// Points on outlet
|
||||
points[sz] = point($xOutlet, 0, $z0);
|
||||
points[sz + 1] = point($xOutlet, $x3, $z0);
|
||||
points[sz + 4] = point($xOutlet, $x2*sqrt05, $z0);
|
||||
points[sz + 4] = point($xOutlet, $x2sinPi4, $z0);
|
||||
|
||||
// Points on inlet
|
||||
points[sz + 2] = point($xInlet, 0, $z0);
|
||||
points[sz + 3] = point($xInlet, $x3, $z0);
|
||||
points[sz + 5] = point($xInlet, $x2*sqrt05, $z0);
|
||||
points[sz + 5] = point($xInlet, $x2sinPi4, $z0);
|
||||
|
||||
// Mirror -z points to +z side
|
||||
sz = points.size();
|
||||
points.resize(sz + nAdd);
|
||||
points.setSize(sz + nAdd);
|
||||
for (label i = 0; i < nAdd; ++i)
|
||||
{
|
||||
const point& pt = points[i + sz - nAdd];
|
||||
@ -149,22 +158,22 @@ blocks
|
||||
|
||||
edges
|
||||
(
|
||||
arc 0 5 origin (0 0 $z0)
|
||||
arc 5 10 origin (0 0 $z0)
|
||||
arc 1 4 origin (0 0 $z0)
|
||||
arc 4 9 origin (0 0 $z0)
|
||||
arc 19 24 origin (0 0 $z1)
|
||||
arc 24 29 origin (0 0 $z1)
|
||||
arc 20 23 origin (0 0 $z1)
|
||||
arc 23 28 origin (0 0 $z1)
|
||||
arc 11 16 origin (0 0 $z0)
|
||||
arc 16 10 origin (0 0 $z0)
|
||||
arc 12 15 origin (0 0 $z0)
|
||||
arc 15 9 origin (0 0 $z0)
|
||||
arc 30 35 origin (0 0 $z1)
|
||||
arc 35 29 origin (0 0 $z1)
|
||||
arc 31 34 origin (0 0 $z1)
|
||||
arc 34 28 origin (0 0 $z1)
|
||||
arc 0 5 ($RcosPi8 $RsinPi8 $z0)
|
||||
arc 5 10 ($RsinPi8 $RcosPi8 $z0)
|
||||
arc 1 4 ($x2cosPi8 $x2sinPi8 $z0)
|
||||
arc 4 9 ($x2sinPi8 $x2cosPi8 $z0)
|
||||
arc 19 24 ($RcosPi8 $RsinPi8 $z1)
|
||||
arc 24 29 ($RsinPi8 $RcosPi8 $z1)
|
||||
arc 20 23 ($x2cosPi8 $x2sinPi8 $z1)
|
||||
arc 23 28 ($x2sinPi8 $x2cosPi8 $z1)
|
||||
arc 11 16 ($RcosPi8n $RsinPi8 $z0)
|
||||
arc 16 10 ($RsinPi8n $RcosPi8 $z0)
|
||||
arc 12 15 ($x2cosPi8n $x2sinPi8 $z0)
|
||||
arc 15 9 ($x2sinPi8n $x2cosPi8 $z0)
|
||||
arc 30 35 ($RcosPi8n $RsinPi8 $z1)
|
||||
arc 35 29 ($RsinPi8n $RcosPi8 $z1)
|
||||
arc 31 34 ($x2cosPi8n $x2sinPi8 $z1)
|
||||
arc 34 28 ($x2sinPi8n $x2cosPi8 $z1)
|
||||
);
|
||||
|
||||
boundary
|
||||
@ -261,8 +270,5 @@ boundary
|
||||
}
|
||||
);
|
||||
|
||||
mergePatchPairs
|
||||
();
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
@ -10,7 +10,6 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
@ -10,7 +10,6 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
@ -10,7 +10,6 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object controlDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
@ -23,13 +22,13 @@ startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 200;
|
||||
endTime 100;
|
||||
|
||||
deltaT 0.05;
|
||||
|
||||
writeControl runTime;
|
||||
|
||||
writeInterval 50;
|
||||
writeInterval 0.5;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
@ -46,6 +45,45 @@ runTimeModifiable false;
|
||||
|
||||
functions
|
||||
{
|
||||
fieldAverage1
|
||||
{
|
||||
type fieldAverage;
|
||||
libs (fieldFunctionObjects);
|
||||
|
||||
fields
|
||||
(
|
||||
U
|
||||
{
|
||||
mean on;
|
||||
prime2Mean off;
|
||||
base time;
|
||||
windowType exact;
|
||||
window 0.25;
|
||||
windowName movingAverageWindow;
|
||||
allowRestart no;
|
||||
}
|
||||
|
||||
U
|
||||
{
|
||||
mean on;
|
||||
prime2Mean on;
|
||||
base time;
|
||||
}
|
||||
|
||||
p
|
||||
{
|
||||
mean on;
|
||||
prime2Mean on;
|
||||
base time;
|
||||
}
|
||||
);
|
||||
|
||||
timeStart 10;
|
||||
executeControl timeStep;
|
||||
executeInterval 1;
|
||||
writeControl onEnd;
|
||||
}
|
||||
|
||||
mapFields1
|
||||
{
|
||||
type mapFields;
|
||||
@ -55,7 +93,11 @@ functions
|
||||
consistent no;
|
||||
patchMap ();
|
||||
cuttingPatches ();
|
||||
fields ( U p );
|
||||
fields
|
||||
(
|
||||
U
|
||||
p
|
||||
);
|
||||
|
||||
timeStart 10;
|
||||
timeEnd 2000;
|
||||
@ -67,162 +109,98 @@ functions
|
||||
writeInterval 50;
|
||||
}
|
||||
|
||||
STDMD1U
|
||||
mapFields2
|
||||
{
|
||||
// Mandatory entries
|
||||
type STDMD;
|
||||
${mapFields1}
|
||||
fields
|
||||
(
|
||||
UMean
|
||||
pMean
|
||||
UPrime2Mean
|
||||
pPrime2Mean
|
||||
UMean_movingAverageWindow
|
||||
);
|
||||
}
|
||||
|
||||
yPlus1
|
||||
{
|
||||
type yPlus;
|
||||
libs (fieldFunctionObjects);
|
||||
field U;
|
||||
|
||||
// Optional entries
|
||||
modeSorter firstSnap;
|
||||
|
||||
// Optional (inherited) entries
|
||||
region coarseMesh; // mapFields must be executed before.
|
||||
timeStart 10;
|
||||
executeControl timeStep;
|
||||
executeInterval 10;
|
||||
writeControl onEnd;
|
||||
executeInterval 1;
|
||||
writeControl writeTime;
|
||||
}
|
||||
|
||||
STDMD1p
|
||||
{
|
||||
// Mandatory entries
|
||||
type STDMD;
|
||||
libs (fieldFunctionObjects);
|
||||
field p;
|
||||
#include "DMDs/stdmd01" // field=U
|
||||
#include "DMDs/stdmd02" // field=U, region=coarseMesh
|
||||
#include "DMDs/stdmd03" // field=U, patch=cylinder
|
||||
#include "DMDs/stdmd04" // field=U, patch=outlet
|
||||
#include "DMDs/stdmd05" // field=U, maxRank=10
|
||||
#include "DMDs/stdmd06" // field=U, region=coarseMesh, maxRank=5
|
||||
#include "DMDs/stdmd07" // field=U, patch=outlet, maxRank=2
|
||||
|
||||
// Optional entries
|
||||
modeSorter firstSnap;
|
||||
#include "DMDs/stdmd08" // field=p
|
||||
#include "DMDs/stdmd09" // field=p, region=coarseMesh
|
||||
#include "DMDs/stdmd10" // field=p, patch=cylinder
|
||||
#include "DMDs/stdmd11" // field=p, patch=outlet
|
||||
#include "DMDs/stdmd12" // field=p, maxRank=10
|
||||
#include "DMDs/stdmd13" // field=p, region=coarseMesh, maxRank=5
|
||||
#include "DMDs/stdmd14" // field=p, patch=outlet, maxRank=2
|
||||
|
||||
// Optional (inherited) entries
|
||||
region coarseMesh;
|
||||
timeStart 10;
|
||||
executeControl timeStep;
|
||||
executeInterval 10;
|
||||
writeControl onEnd;
|
||||
}
|
||||
#include "DMDs/stdmd15" // field=U, modeSorter=kiewat
|
||||
#include "DMDs/stdmd16" // field=U, region=coarseMesh, modeSorter=kiewat
|
||||
#include "DMDs/stdmd17" // field=U, patch=cylinder, modeSorter=kiewat
|
||||
#include "DMDs/stdmd18" // field=U, patch=outlet, modeSorter=kiewat
|
||||
#include "DMDs/stdmd19" // field=U, maxRank=10, modeSorter=kiewat
|
||||
#include "DMDs/stdmd20" // field=U, region=coarseMesh, maxRank=5, modeSorter=kiewat
|
||||
#include "DMDs/stdmd21" // field=U, patch=outlet, maxRank=2, modeSorter=kiewat
|
||||
|
||||
STDMD2U
|
||||
{
|
||||
// Mandatory entries
|
||||
type STDMD;
|
||||
libs (fieldFunctionObjects);
|
||||
field U;
|
||||
#include "DMDs/stdmd22" // field=p, modeSorter=kiewat
|
||||
#include "DMDs/stdmd23" // field=p, region=coarseMesh, modeSorter=kiewat
|
||||
#include "DMDs/stdmd24" // field=p, patch=cylinder, modeSorter=kiewat
|
||||
#include "DMDs/stdmd25" // field=p, patch=outlet, modeSorter=kiewat
|
||||
#include "DMDs/stdmd26" // field=p, maxRank=10, modeSorter=kiewat
|
||||
#include "DMDs/stdmd27" // field=p, region=coarseMesh, maxRank=5, modeSorter=kiewat
|
||||
#include "DMDs/stdmd28" // field=p, patch=outlet, maxRank=2, modeSorter=kiewat
|
||||
|
||||
// Optional entries
|
||||
modeSorter firstSnap;
|
||||
nModes 2;
|
||||
maxRank 2;
|
||||
nGramSchmidt 5;
|
||||
fMin 0;
|
||||
fMax 1000000000;
|
||||
testEigen true;
|
||||
dumpEigen true;
|
||||
minBasis 0.00000001;
|
||||
minEVal 0.00000001;
|
||||
absTol 0.001;
|
||||
relTol 0.0001;
|
||||
#include "DMDs/stdmd29" // field=UMean
|
||||
// #include "DMDs/stdmd30" // field=UMean, region=coarseMesh
|
||||
#include "DMDs/stdmd31" // field=UMean, patch=cylinder
|
||||
#include "DMDs/stdmd32" // field=UMean, patch=outlet
|
||||
#include "DMDs/stdmd33" // field=UMean, maxRank=10
|
||||
// #include "DMDs/stdmd34" // field=UMean, region=coarseMesh, maxRank=5
|
||||
#include "DMDs/stdmd35" // field=UMean, patch=outlet, maxRank=2
|
||||
|
||||
// Optional (inherited) entries
|
||||
timeStart 50;
|
||||
timeEnd 2000;
|
||||
executeControl timeStep;
|
||||
executeInterval 10;
|
||||
writeControl onEnd;
|
||||
}
|
||||
#include "DMDs/stdmd36" // field=pMean
|
||||
// #include "DMDs/stdmd37" // field=pMean, region=coarseMesh
|
||||
#include "DMDs/stdmd38" // field=pMean, patch=cylinder
|
||||
#include "DMDs/stdmd39" // field=pMean, patch=outlet
|
||||
#include "DMDs/stdmd40" // field=pMean, maxRank=10
|
||||
// #include "DMDs/stdmd41" // field=pMean, region=coarseMesh, maxRank=5
|
||||
#include "DMDs/stdmd42" // field=pMean, patch=outlet, maxRank=2
|
||||
|
||||
STDMD3U
|
||||
{
|
||||
// Mandatory entries
|
||||
type STDMD;
|
||||
libs (fieldFunctionObjects);
|
||||
field U;
|
||||
#include "DMDs/stdmd43" // field=UPrime2Mean
|
||||
// #include "DMDs/stdmd44" // field=UPrime2Mean, region=coarseMesh
|
||||
#include "DMDs/stdmd45" // field=UPrime2Mean, patch=cylinder
|
||||
#include "DMDs/stdmd46" // field=UPrime2Mean, patch=outlet
|
||||
#include "DMDs/stdmd47" // field=UPrime2Mean, maxRank=10
|
||||
// #include "DMDs/stdmd48" // field=UPrime2Mean, region=coarseMesh, maxRank=5
|
||||
#include "DMDs/stdmd49" // field=UPrime2Mean, patch=outlet, maxRank=2
|
||||
|
||||
// Optional entries
|
||||
modeSorter firstSnap;
|
||||
#include "DMDs/stdmd50" // field=UMean_movingAverageWindow
|
||||
// #include "DMDs/stdmd51" // field=UMean_movingAverageWindow, region=coarseMesh
|
||||
#include "DMDs/stdmd52" // field=UMean_movingAverageWindow, patch=cylinder
|
||||
#include "DMDs/stdmd53" // field=UMean_movingAverageWindow, patch=outlet
|
||||
#include "DMDs/stdmd54" // field=UMean_movingAverageWindow, maxRank=10
|
||||
// #include "DMDs/stdmd55" // field=UMean_movingAverageWindow, region=coarseMesh, maxRank=5
|
||||
#include "DMDs/stdmd56" // field=UMean_movingAverageWindow, patch=outlet, maxRank=2
|
||||
|
||||
// Optional (inherited) entries
|
||||
region coarseMesh;
|
||||
timeStart 10;
|
||||
timeEnd 150;
|
||||
executeControl timeStep;
|
||||
executeInterval 10;
|
||||
writeControl runTime;
|
||||
writeInterval 50;
|
||||
}
|
||||
|
||||
STDMD4U
|
||||
{
|
||||
// Mandatory entries
|
||||
type STDMD;
|
||||
libs (fieldFunctionObjects);
|
||||
field U;
|
||||
|
||||
// Optional entries
|
||||
modeSorter kiewat;
|
||||
|
||||
// Optional (inherited) entries
|
||||
region coarseMesh;
|
||||
timeStart 10;
|
||||
executeControl timeStep;
|
||||
executeInterval 10;
|
||||
writeControl onEnd;
|
||||
}
|
||||
|
||||
STDMD4p
|
||||
{
|
||||
// Mandatory entries
|
||||
type STDMD;
|
||||
libs (fieldFunctionObjects);
|
||||
field p;
|
||||
|
||||
// Optional entries
|
||||
modeSorter kiewat;
|
||||
|
||||
// Optional (inherited) entries
|
||||
region coarseMesh;
|
||||
timeStart 10;
|
||||
executeControl timeStep;
|
||||
executeInterval 10;
|
||||
writeControl onEnd;
|
||||
}
|
||||
|
||||
STDMD5U
|
||||
{
|
||||
// Mandatory entries
|
||||
type STDMD;
|
||||
libs (fieldFunctionObjects);
|
||||
field U;
|
||||
|
||||
// Optional entries
|
||||
modeSorter kouZhang;
|
||||
|
||||
// Optional (inherited) entries
|
||||
region coarseMesh;
|
||||
timeStart 10;
|
||||
executeControl timeStep;
|
||||
executeInterval 10;
|
||||
writeControl onEnd;
|
||||
}
|
||||
|
||||
STDMD5p
|
||||
{
|
||||
// Mandatory entries
|
||||
type STDMD;
|
||||
libs (fieldFunctionObjects);
|
||||
field p;
|
||||
|
||||
// Optional entries
|
||||
modeSorter kouZhang;
|
||||
|
||||
// Optional (inherited) entries
|
||||
region coarseMesh;
|
||||
timeStart 10;
|
||||
executeControl timeStep;
|
||||
executeInterval 10;
|
||||
writeControl onEnd;
|
||||
}
|
||||
#include "DMDs/stdmd57" // field=yPlus
|
||||
#include "DMDs/stdmd58" // field=yPlus, patch=cylinder
|
||||
#include "DMDs/stdmd59" // field=yPlus, patch=outlet
|
||||
#include "DMDs/stdmd60" // field=yPlus, maxRank=10
|
||||
#include "DMDs/stdmd61" // field=yPlus, patch=cylinder, maxRank=2
|
||||
}
|
||||
|
||||
|
||||
|
@ -10,18 +10,17 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object decomposeParDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
numberOfSubdomains 8;
|
||||
numberOfSubdomains 12;
|
||||
|
||||
method hierarchical;
|
||||
|
||||
coeffs
|
||||
{
|
||||
n (8 1 1);
|
||||
n (4 3 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -10,7 +10,6 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
@ -28,6 +27,7 @@ gradSchemes
|
||||
divSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
|
||||
div((nuEff*dev(T(grad(U))))) Gauss linear;
|
||||
}
|
||||
|
||||
|
@ -10,7 +10,6 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
@ -24,4 +24,5 @@ pointAndNormalDict
|
||||
|
||||
planeTolerance 1e-3;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
@ -22,7 +22,7 @@ geometry
|
||||
{
|
||||
cylinder
|
||||
{
|
||||
type cylinder;
|
||||
type searchableCylinder;
|
||||
point1 (0 0 -0.00375);
|
||||
point2 (0 0 0.00375);
|
||||
radius 0.06;
|
||||
|
Loading…
Reference in New Issue
Block a user