tutorials: Updated to use surfaceFeatures rather than the deprecated surfaceFeatureExtract

This commit is contained in:
Henry Weller
2018-05-29 19:18:53 +01:00
parent 48c79c0bf5
commit aea8dc0516
62 changed files with 394 additions and 18229 deletions

View File

@ -21,10 +21,7 @@ surface1
"surface1.stl"
);
// Mark edges whose adjacent surface normals are at an angle less
// than includedAngle as features
// - 0 : selects no edges
// - 180: selects all edges
// Identify a feature when angle between faces < includedAngle
includedAngle 120;
// Do not mark region edges

View File

@ -10,25 +10,24 @@ FoamFile
version 2.0;
format ascii;
class dictionary;
object surfaceFeatureExtractDict;
object surfaceFeaturesDict.cfg;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
boundaryAndFaceZones.stl
includedAngle 150;
subsetFeatures
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
baffles (porosityFaces);
// Write options
writeObj no; // yes;
nonManifoldEdges yes;
openEdges yes;
}
trimFeatures
{
minElem 0;
minLen 0;
}
writeObj yes;
// ************************************************************************* //

View File

@ -23,8 +23,9 @@ surfaces
"rotorBlades.obj"
);
includedAngle 150; // Identifes a feature when angle
// between faces < includedAngle
// Identify a feature when angle between faces < includedAngle
includedAngle 150;
trimFeatures
{
minElem 10; // minimum edges within a feature

View File

@ -8,7 +8,7 @@ cd ${0%/*} || exit 1 # Run from this directory
rm -rf constant/polyMesh/sets
runApplication blockMesh
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication snappyHexMesh -overwrite
runApplication splitMeshRegions -cellZones -overwrite

View File

@ -1,99 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
bottomAir.stl
{
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;
}
// Write options
writeFeatureEdgeMesh yes;
}
heater.stl
{
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;
}
// Write options
writeFeatureEdgeMesh yes;
}
leftSolid.stl
{
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;
}
// Write options
writeFeatureEdgeMesh yes;
}
rightSolid.stl
{
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;
}
// Write options
writeFeatureEdgeMesh yes;
}
topAir.stl
{
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;
}
// Write options
writeFeatureEdgeMesh yes;
}
// ************************************************************************* //

View File

@ -0,0 +1,29 @@
/*--------------------------------*- 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 surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
surfaces
(
"bottomAir.stl"
"heater.stl"
"leftSolid.stl"
"rightSolid.stl"
"topAir.stl"
);
// Identify a feature when angle between faces < includedAngle
includedAngle 150;
// ************************************************************************* //

View File

@ -9,7 +9,7 @@ cp $FOAM_TUTORIALS/resources/geometry/propellerTip.obj.gz constant/triSurface/
# Meshing
runApplication blockMesh
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication snappyHexMesh -overwrite
# Generate face/cell sets and zones

View File

@ -1,17 +0,0 @@
// 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;
}

View File

@ -10,36 +10,27 @@ FoamFile
version 2.0;
format ascii;
class dictionary;
location "system";
object decomposeParDict;
object surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
numberOfSubdomains 8;
surfaces
(
"innerCylinderSmall.obj"
"outerCylinder.obj"
"propellerStem1.obj"
"propellerStem2.obj"
"propellerStem3.obj"
"propellerTip.obj"
);
method hierarchical;
// Identify a feature when angle between faces < includedAngle
includedAngle 150;
simpleCoeffs
trimFeatures
{
n (2 2 1);
delta 0.001;
// Remove features with fewer than the specified number of edges
minElem 10;
}
hierarchicalCoeffs
{
n (2 2 2);
delta 0.001;
order xyz;
}
manualCoeffs
{
dataFile "";
}
distributed no;
roots ( );
// ************************************************************************* //

View File

@ -4,7 +4,7 @@ cd ${0%/*} || exit 1 # Run from this directory
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication foamyHexMesh

View File

@ -19,7 +19,7 @@ constant/triSurface/boundaryAndFaceZones.stl
surfaceMeshTriangulate -faceZones '(porosityFaces)' boundaryAndFaceZones.stl
)
surfaceFeatureExtract
surfaceFeatures

View File

@ -10,18 +10,15 @@ FoamFile
version 2.0;
format ascii;
class dictionary;
object surfaceFeatureExtractDict;
object surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
fixed.obj
{
#includeEtc "caseDicts/surface/surfaceFeatureExtractDict.cfg"
}
surfaces ("boundaryAndFaceZones.stl");
rotatingZone.obj
{
#includeEtc "caseDicts/surface/surfaceFeatureExtractDict.cfg"
}
// Identify a feature when angle between faces < includedAngle
includedAngle 120;
baffles (porosityFaces);
// ************************************************************************* //

View File

@ -6,7 +6,7 @@ cd ${0%/*} || exit 1 # Run from this directory
# Copy motorbike surface from resources directory
cp $FOAM_TUTORIALS/resources/geometry/motorBike.obj.gz constant/triSurface/
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication blockMesh

View File

@ -1,48 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
motorBike.obj
{
// 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;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges no;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
// Write options
// Write features to obj format for postprocessing
writeObj yes;
}
// ************************************************************************* //

View File

@ -0,0 +1,31 @@
/*--------------------------------*- 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 surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
surfaces ("motorBike.obj");
// Identify a feature when angle between faces < includedAngle
includedAngle 150;
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges no;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
// ************************************************************************* //

View File

@ -6,7 +6,7 @@ cd ${0%/*} || exit 1 # Run from this directory
# Meshing
runApplication blockMesh
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication snappyHexMesh -overwrite
runApplication $(getApplication)

View File

@ -10,13 +10,16 @@ FoamFile
version 2.0;
format ascii;
class dictionary;
object surfaceFeatureExtractDict;
object surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
buildings.obj
{
#includeEtc "caseDicts/surface/surfaceFeatureExtractDict.cfg"
}
surfaces
(
"fixed.obj"
"rotatingZone.obj"
);
#includeEtc "caseDicts/surface/surfaceFeaturesDict.cfg"
// ************************************************************************* //

View File

@ -4,7 +4,7 @@ cd ${0%/*} || exit 1 # run from this directory
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication blockMesh
runApplication snappyHexMesh -overwrite

View File

@ -10,12 +10,12 @@ FoamFile
version 2.0;
format ascii;
class dictionary;
location "constant";
object turbulenceProperties;
object surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
simulationType laminar;
surfaces ("buildings.obj");
#includeEtc "caseDicts/surface/surfaceFeaturesDict.cfg"
// ************************************************************************* //

View File

@ -73,7 +73,7 @@ runApplication blockMesh -region backgroundMeshDecomposition
runApplication -s backgroundMeshDecomposition \
decomposePar -region backgroundMeshDecomposition
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runParallel foamyHexMesh

View File

@ -1,144 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
shaftRotating.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 100;
}
subsetFeatures
{
// Remove the top feature
insideBox (-0.1 -0.1 -0.1)(0.1 0.1 0.1);
}
// Write options
writeObj yes;
}
vessel.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces where
// the faces form more than two different normal planes)
nonManifoldEdges no;
// Keep open edges (edges with 1 connected face)
openEdges no;
}
// Write options
writeObj no;
}
spargerInlet.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
// Write options
writeObj no;
}
stirrer.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
// Write options
writeObj no;
}
stirrer_baffles.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
baffles (stirrer);
// Write options
writeObj no;
}
rotating.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
baffles (MRF);
// Write options
writeObj yes;
}
baffles.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
baffles (baffles);
// Write options
writeObj no;
}
// ************************************************************************* //

View File

@ -10,30 +10,31 @@ FoamFile
version 2.0;
format ascii;
class dictionary;
object surfaceFeatureExtractDict;
object surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
jaggedBoundary.stl
shaftRotating
{
extractionMethod extractFromSurface;
surfaces ("shaftRotating.stl");
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 175;
}
includedAngle 100;
subsetFeatures
{
// Use a plane to select feature edges
// (normal)(point)
// Keep only edges that intersect the plane will be included
plane (0 0 1)(-0.6 0.3 0.0);
// Remove the top feature
insideBox (-0.1 -0.1 -0.1)(0.1 0.1 0.1);
}
}
vessel
{
surfaces ("vessel.stl");
includedAngle 120;
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces where
// the faces form more than two different normal planes)
nonManifoldEdges no;
@ -41,12 +42,44 @@ jaggedBoundary.stl
// Keep open edges (edges with 1 connected face)
openEdges no;
}
// Write options
// Write features to obj format for postprocessing
writeObj no;
}
spargerInletStirrer
{
surfaces
(
"spargerInlet.stl"
"stirrer.stl"
);
includedAngle 120;
}
stirrerBaffles
{
surfaces ("stirrer_baffles.stl");
includedAngle 120;
baffles (stirrer);
}
rotating
{
surfaces ("rotating.stl");
includedAngle 120;
baffles (MRF);
}
baffles
{
surfaces ("baffles.stl");
includedAngle 120;
baffles (baffles);
}
// ************************************************************************* //

View File

@ -1,50 +0,0 @@
/*--------------------------------*- 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;
object T;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 0 0 1 0 0 0];
internalField uniform 1;
boundaryField
{
inlet
{
type fixedValue;
value uniform 1;
}
outlet
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
top
{
type zeroGradient;
}
letters
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -1,58 +0,0 @@
/*--------------------------------*- 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;
object U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);
boundaryField
{
inlet
{
type fixedValue;
value uniform (3 0 0);
}
outlet
{
type zeroGradient;
}
bottom
{
type supersonicFreestream;
UInf (3 0 0);
pInf 1;
TInf 1;
gamma 1.4;
}
top
{
type supersonicFreestream;
UInf (3 0 0);
pInf 1;
TInf 1;
gamma 1.4;
}
letters
{
type noSlip;
}
}
// ************************************************************************* //

View File

@ -1,51 +0,0 @@
/*--------------------------------*- 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;
object p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
dimensions [1 -1 -2 0 0 0 0];
internalField uniform 1;
boundaryField
{
inlet
{
type fixedValue;
value uniform 1;
}
outlet
{
type zeroGradient;
}
bottom
{
type zeroGradient;
}
top
{
type zeroGradient;
}
letters
{
type zeroGradient;
}
}
// ************************************************************************* //

View File

@ -1,14 +0,0 @@
#!/bin/sh
cd ${0%/*} || exit 1 # Run from this directory
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
rm -rf constant/extendedFeatureEdgeMesh > /dev/null 2>&1
rm -rf constant/triSurface/*.eMesh > /dev/null 2>&1
rm -rf MeshedSurface.obj > /dev/null 2>&1
cleanCase
#------------------------------------------------------------------------------

View File

@ -1,14 +0,0 @@
#!/bin/sh
cd ${0%/*} || exit 1 # Run from this directory
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
cp system/controlDict.mesher system/controlDict
runApplication surfaceFeatureExtract
runApplication foamyQuadMesh -overwrite
runApplication extrude2DMesh -overwrite polyMesh2D
runApplication checkMesh -allGeometry -allTopology -constant -noZero
#------------------------------------------------------------------------------

View File

@ -1,13 +0,0 @@
#!/bin/sh
cd ${0%/*} || exit 1 # Run from this directory
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
cp system/controlDict.rhoCentralFoam system/controlDict
runApplication decomposePar
runParallel rhoCentralFoam
runApplication reconstructPar
#------------------------------------------------------------------------------

View File

@ -1,42 +0,0 @@
/*--------------------------------*- 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 thermophysicalProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
thermoType hePsiThermo<pureMixture<const<hConst<perfectGas<specie>>,sensibleEnthalpy>>>;
// Note: these are the properties for a "normalised" inviscid gas
// for which the speed of sound is 1 m/s at a temperature of 1K
// and gamma = 7/5
mixture
{
specie
{
molWeight 11640.3;
}
thermodynamics
{
Cp 2.5;
Hf 0;
}
transport
{
mu 0;
Pr 1;
}
}
// ************************************************************************* //

View File

@ -1,96 +0,0 @@
solid back
facet normal 0 0 -1
outer loop
vertex -1.618703 -1.830978 -0.557967
vertex 4.82342 2.27362 -0.557967
vertex 4.82342 -1.830978 -0.557967
endloop
endfacet
facet normal 0 0 -1
outer loop
vertex -1.618703 -1.830978 -0.557967
vertex -1.618703 2.27362 -0.557967
vertex 4.82342 2.27362 -0.557967
endloop
endfacet
endsolid back
solid front
facet normal 0 0 1
outer loop
vertex 4.82342 2.27362 0.586404
vertex -1.618703 -1.830978 0.586404
vertex 4.82342 -1.830978 0.586404
endloop
endfacet
facet normal 0 0 1
outer loop
vertex 4.82342 2.27362 0.586404
vertex -1.618703 2.27362 0.586404
vertex -1.618703 -1.830978 0.586404
endloop
endfacet
endsolid front
solid bottom
facet normal -2.19049e-08 -1 2.0834e-07
outer loop
vertex -1.618703 -1.830978 0.586404
vertex -1.618703 -1.830978 -0.557967
vertex 4.82342 -1.830978 -0.557967
endloop
endfacet
facet normal -1.97144e-07 -1 -6.25021e-07
outer loop
vertex 4.82342 -1.830978 -0.557967
vertex 4.82342 -1.830978 0.586404
vertex -1.618703 -1.830978 0.586404
endloop
endfacet
endsolid bottom
solid top
facet normal 6.57148e-08 1 4.1668e-07
outer loop
vertex 4.82342 2.27362 0.586404
vertex 4.82342 2.27362 -0.557967
vertex -1.618703 2.27362 -0.557967
endloop
endfacet
facet normal 8.76197e-08 1 3.1251e-07
outer loop
vertex -1.618703 2.27362 -0.557967
vertex -1.618703 2.27362 0.586404
vertex 4.82342 2.27362 0.586404
endloop
endfacet
endsolid top
solid inlet
facet normal -1 2.54891e-07 -2.60425e-07
outer loop
vertex -1.618703 -1.830978 -0.557967
vertex -1.618703 2.27362 0.586404
vertex -1.618703 2.27362 -0.557967
endloop
endfacet
facet normal -1 1.69927e-07 -1.0417e-07
outer loop
vertex -1.618703 -1.830978 -0.557967
vertex -1.618703 -1.830978 0.586404
vertex -1.618703 2.27362 0.586404
endloop
endfacet
endsolid inlet
solid outlet
facet normal 1 0 8.33361e-07
outer loop
vertex 4.82342 2.27362 -0.557967
vertex 4.82342 -1.830978 0.586404
vertex 4.82342 -1.830978 -0.557967
endloop
endfacet
facet normal 1 -6.79708e-07 -4.16681e-07
outer loop
vertex 4.82342 2.27362 -0.557967
vertex 4.82342 2.27362 0.586404
vertex 4.82342 -1.830978 0.586404
endloop
endfacet
endsolid outlet

View File

@ -1,55 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
application rhoCentralFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 10;
deltaT 0.001;
writeControl adjustableRunTime;
writeInterval 0.25;
purgeWrite 0;
writeFormat ascii;
writePrecision 12;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;
adjustTimeStep yes;
maxCo 0.5;
maxDeltaT 1;
// ************************************************************************* //

View File

@ -1,55 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
application rhoCentralFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 100;
deltaT 1;
writeControl adjustableRunTime;
writeInterval 1;
purgeWrite 0;
writeFormat ascii;
writePrecision 12;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;
adjustTimeStep yes;
maxCo 0.2;
maxDeltaT 1;
// ************************************************************************* //

View File

@ -1,55 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
application rhoCentralFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 10;
deltaT 0.001;
writeControl adjustableRunTime;
writeInterval 0.25;
purgeWrite 0;
writeFormat ascii;
writePrecision 12;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;
adjustTimeStep yes;
maxCo 0.5;
maxDeltaT 1;
// ************************************************************************* //

View File

@ -1,187 +0,0 @@
/*--------------------------------*- 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 foamyQuadMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
geometry
{
opencfd_text.stl
{
name letters;
type closedTriSurfaceMesh;
}
opencfd_box.stl
{
name box;
type closedTriSurfaceMesh;
regions
{
back
{
name back;
}
front
{
name front;
}
bottom
{
name bottom;
}
top
{
name top;
}
inlet
{
name inlet;
}
outlet
{
name outlet;
}
}
}
}
surfaceConformation
{
// The z-coordinate of the plane is taken from here.
locationInMesh (0 0 0);
pointPairDistanceCoeff 0.1;
minEdgeLenCoeff 0.1;
maxNotchLenCoeff 1.0;
minNearPointDistCoeff 0.1;
maxQuadAngle 120;
// Insert near-boundary point mirror or point-pairs
insertSurfaceNearestPointPairs yes;
// Mirror near-boundary points rather than insert point-pairs
mirrorPoints no;
// Insert point-pairs vor dual-cell vertices very near the surface
insertSurfaceNearPointPairs yes;
// Maximum number of iterations used in boundaryConform.
maxBoundaryConformingIter 5;
geometryToConformTo
{
letters
{
featureMethod extendedFeatureEdgeMesh;
extendedFeatureEdgeMesh "opencfd_text.extendedFeatureEdgeMesh";
}
box
{
featureMethod extendedFeatureEdgeMesh;
extendedFeatureEdgeMesh "opencfd_box.extendedFeatureEdgeMesh";
}
}
additionalFeatures
{}
// Choose if to randomise the initial grid created by insertGrid.
randomiseInitialGrid yes;
// Perturbation fraction, 1 = cell-size.
randomPerturbation 0.1;
}
motionControl
{
// This is a tolerance for determining whether to deal with surface
// protrusions or not.
minCellSize 0.02;
// Assign a priority to all requests for cell sizes, the highest overrules.
defaultPriority 0;
shapeControlFunctions
{
letters
{
type searchableSurfaceControl;
priority 1;
mode inside;
cellSizeFunction uniform;
linearDistanceCoeffs
{
distanceCellSizeCoeff 1;
distanceCoeff 50;
}
uniformCoeffs
{}
surfaceCellSizeFunction uniformValue;
uniformValueCoeffs
{
surfaceCellSizeCoeff 1;
}
}
}
relaxationModel adaptiveLinear;
adaptiveLinearCoeffs
{
relaxationStart 0.5;
relaxationEnd 0.0;
}
objOutput no;
meshedSurfaceOutput yes;
// Near-wall region where cells are aligned with the wall specified as a
// number of cell layers
nearWallAlignedDist 3;
}
shortEdgeFilter
{
// Factor to multiply the average of a face's edge lengths by.
// If an edge of that face is smaller than that value then delete it.
shortEdgeFilterFactor 0.2;
// Weighting for the lengths of edges that are attached to the boundaries.
// Used when calculating the length of an edge. Default 2.0.
edgeAttachedToBoundaryFactor 2.0;
}
extrusion
{
extrude off;
#include "extrude2DMeshDict"
}
// ************************************************************************* //

View File

@ -1,55 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
//fluxScheme Kurganov;
fluxScheme Tadmor;
ddtSchemes
{
default Euler;
}
gradSchemes
{
default Gauss linear;
}
divSchemes
{
default none;
div(tauMC) Gauss linear;
}
laplacianSchemes
{
default Gauss linear corrected;
}
interpolationSchemes
{
default linear;
reconstruct(rho) vanLeer;
reconstruct(U) vanLeerV;
reconstruct(T) vanLeer;
}
snGradSchemes
{
default corrected;
}
// ************************************************************************* //

View File

@ -1,42 +0,0 @@
/*--------------------------------*- 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 fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
solvers
{
"(rho|rhoU|rhoE)"
{
solver diagonal;
}
U
{
solver smoothSolver;
smoother GaussSeidel;
nSweeps 2;
tolerance 1e-09;
relTol 0.01;
}
h
{
$U;
tolerance 1e-10;
relTol 0;
}
}
// ************************************************************************* //

View File

@ -1,87 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
opencfd_text.stl
{
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 120;
}
subsetFeatures
{
// Use a plane to select feature edges
// (normal)(point)
// Keep only edges that intersect the plane will be included
plane (0 0 1)(0 0 0);
// Keep nonManifold edges (edges with >2 connected faces where
// the faces form more than two different normal planes)
nonManifoldEdges no;
// Keep open edges (edges with 1 connected face)
openEdges no;
}
// Write options
// Write features to obj format for postprocessing
writeObj no;
}
opencfd_box.stl
{
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 120;
}
subsetFeatures
{
// Use a plane to select feature edges
// (normal)(point)
// Keep only edges that intersect the plane will be included
plane (0 0 1)(0 0 0);
// Keep nonManifold edges (edges with >2 connected faces where
// the faces form more than two different normal planes)
nonManifoldEdges no;
// Keep open edges (edges with 1 connected face)
openEdges no;
}
// Write options
// Write features to obj format for postprocessing
writeObj no;
}
// ************************************************************************* //

View File

@ -4,10 +4,9 @@ cd ${0%/*} || exit 1 # Run from this directory
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication foamyQuadMesh -overwrite
runApplication extrude2DMesh -overwrite MeshedSurface
runApplication checkMesh -allGeometry -allTopology -constant -noZero
#------------------------------------------------------------------------------

View File

@ -0,0 +1,40 @@
/*--------------------------------*- 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 surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
surfaces
(
"jaggedBoundary.stl"
);
// Identify a feature when angle between faces < includedAngle
includedAngle 175;
subsetFeatures
{
// Use a plane to select feature edges
// (normal)(point)
// Keep only edges that intersect the plane will be included
plane (0 0 1)(-0.6 0.3 0.0);
// Keep nonManifold edges (edges with >2 connected faces where
// the faces form more than two different normal planes)
nonManifoldEdges no;
// Keep open edges (edges with 1 connected face)
openEdges no;
}
// ************************************************************************* //

View File

@ -4,10 +4,9 @@ cd ${0%/*} || exit 1 # Run from this directory
# Source tutorial run functions
. $WM_PROJECT_DIR/bin/tools/RunFunctions
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication foamyQuadMesh -overwrite
runApplication extrude2DMesh -overwrite polyMesh2D
runApplication checkMesh -allGeometry -allTopology -constant -noZero
#------------------------------------------------------------------------------

View File

@ -1,52 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
unit_cube.stl
{
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 175;
}
subsetFeatures
{
// Use a plane to select feature edges
// (normal)(point)
// Keep only edges that intersect the plane will be included
plane (0 0 1)(0 0 0);
// Keep nonManifold edges (edges with >2 connected faces where
// the faces form more than two different normal planes)
nonManifoldEdges no;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
// Write options
// Write features to obj format for postprocessing
writeObj yes;
}
// ************************************************************************* //

View File

@ -10,50 +10,31 @@ FoamFile
version 2.0;
format ascii;
class dictionary;
object surfaceFeatureExtractDict;
object surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
//innerCylinder.obj
//{
// #include "surfaceFeatureExtractDictDefaults"
//}
surfaces
(
"unit_cube.stl"
);
// Identify a feature when angle between faces < includedAngle
includedAngle 175;
innerCylinderSmall.obj
subsetFeatures
{
#include "surfaceFeatureExtractDictDefaults"
// Use a plane to select feature edges
// (normal)(point)
// Keep only edges that intersect the plane will be included
plane (0 0 1)(0 0 0);
// Keep nonManifold edges (edges with >2 connected faces where
// the faces form more than two different normal planes)
nonManifoldEdges no;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
outerCylinder.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
propellerStem1.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
propellerStem2.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
propellerStem3.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
propellerTip.obj
{
#include "surfaceFeatureExtractDictDefaults"
}
// ************************************************************************* //

View File

@ -6,5 +6,5 @@
cp $FOAM_TUTORIALS/resources/geometry/flange.stl.gz constant/triSurface/
runApplication blockMesh
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication snappyHexMesh -overwrite

View File

@ -1,38 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
flange.stl
{
// 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;
}
// Write options
// Write features to obj format for postprocessing
writeObj yes;
}
// ************************************************************************* //

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 dictionary;
object surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
surfaces ("flange.stl");
// Identify a feature when angle between faces < includedAngle
includedAngle 150;
// ************************************************************************* //

View File

@ -7,7 +7,7 @@ cd ${0%/*} || exit 1 # Run from this directory
# copy DTC hull surface from resources folder
cp $FOAM_TUTORIALS/resources/geometry/DTC-scaled.stl.gz constant/triSurface/
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication blockMesh

View File

@ -1,48 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
DTC-scaled.stl
{
// 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;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges yes;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
// Write options
// Write features to obj format for postprocessing
writeObj yes;
}
// ************************************************************************* //

View File

@ -10,33 +10,22 @@ FoamFile
version 2.0;
format ascii;
class dictionary;
object extrude2DMeshDict;
object surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
extrudeModel linearDirection;
surfaces ("DTC-scaled.stl");
patchInfo
{}
// Identify a feature when angle between faces < includedAngle
includedAngle 150;
patchType empty;
nLayers 1;
expansionRatio 1.0;
linearDirectionCoeffs
subsetFeatures
{
direction (0 0 1);
thickness 0.1;
}
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges yes;
wedgeCoeffs
{
axisPt (0 0 0);
axis (1 0 0);
angle 10;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
// ************************************************************************* //

View File

@ -7,7 +7,7 @@ cd ${0%/*} || exit 1 # Run from this directory
# copy DTC hull surface from resources folder
cp $FOAM_TUTORIALS/resources/geometry/DTC-scaled.stl.gz constant/triSurface/
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication blockMesh

View File

@ -1,48 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
DTC-scaled.stl
{
// 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;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges yes;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
// Write options
// Write features to obj format for postprocessing
writeObj yes;
}
// ************************************************************************* //

View File

@ -0,0 +1,31 @@
/*--------------------------------*- 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 surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
surfaces ("DTC-scaled.stl");
// Identify a feature when angle between faces < includedAngle
includedAngle 150;
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges yes;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
// ************************************************************************* //

View File

@ -8,7 +8,7 @@ cd ${0%/*} || exit 1 # Run from this directory
# copy DTC hull surface from resources folder
cp $FOAM_TUTORIALS/resources/geometry/DTC-scaled.stl.gz constant/triSurface/
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication blockMesh

View File

@ -1,49 +0,0 @@
/*--------------------------------*- 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 surfaceFeatureExtractDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
DTC-scaled.stl
{
// 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;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges yes;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
// Write options
// Write features to obj format for postprocessing
writeObj yes;
}
// ************************************************************************* //

View File

@ -0,0 +1,31 @@
/*--------------------------------*- 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 surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
surfaces ("DTC-scaled.stl");
// Identify a feature when angle between faces < includedAngle
includedAngle 150;
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges yes;
// Keep open edges (edges with 1 connected face)
openEdges yes;
}
// ************************************************************************* //

View File

@ -9,7 +9,7 @@ application=$(getApplication)
# Meshing
runApplication blockMesh
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication snappyHexMesh -overwrite
runApplication createBaffles -overwrite
runApplication mergeOrSplitBaffles -split -overwrite

View File

@ -1,113 +0,0 @@
/*--------------------------------*- 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;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
vessel.stl
{
// 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 120;
}
// Write options
// Write features to obj format for postprocessing
writeObj no;
}
gasInlet.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
writeObj no;
}
stirrer.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
writeObj no;
}
outlet.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
writeObj no;
}
/*
baffles.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
writeObj no;
}
rotating.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
writeObj no;
}
sparger.stl
{
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
includedAngle 120;
}
writeObj no;
}
*/
// ************************************************************************* //

View File

@ -0,0 +1,28 @@
/*--------------------------------*- 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 surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
surfaces
(
"vessel.stl"
"gasInlet.stl"
"stirrer.stl"
"outlet.stl"
);
// Identify a feature when angle between faces < includedAngle
includedAngle 120;
// ************************************************************************* //

View File

@ -8,7 +8,7 @@ cd ${0%/*} || exit 1 # Run from this directory
cp $FOAM_TUTORIALS/resources/geometry/propellerTip.obj.gz constant/triSurface/
runApplication blockMesh
runApplication surfaceFeatureExtract
runApplication surfaceFeatures
runApplication snappyHexMesh -overwrite
# Generate face/cell sets and zones

View File

@ -1,59 +0,0 @@
/*--------------------------------*- 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

@ -1,17 +0,0 @@
// 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;
}

View File

@ -0,0 +1,36 @@
/*--------------------------------*- 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 surfaceFeaturesDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
surfaces
(
"innerCylinderSmall.obj"
"outerCylinder.obj"
"propellerStem1.obj"
"propellerStem2.obj"
"propellerStem3.obj"
"propellerTip.obj"
);
// Identify a feature when angle between faces < includedAngle
includedAngle 150;
trimFeatures
{
// Remove features with fewer than the specified number of edges
minElem 10;
}
// ************************************************************************* //