110 lines
2.9 KiB
Bash
Executable File
110 lines
2.9 KiB
Bash
Executable File
#!/bin/sh
|
|
cd ${0%/*} || exit 1 # Run from this directory
|
|
|
|
# Source tutorial run functions
|
|
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
|
|
|
intersectSurfaces()
|
|
{
|
|
runApplication \
|
|
surfaceBooleanFeatures \
|
|
intersection \
|
|
"$@"
|
|
|
|
outputName1=$(basename $1)
|
|
outputName1=${outputName1%.*}
|
|
|
|
outputName2=$(basename $2)
|
|
outputName2=${outputName2%.*}
|
|
|
|
mv log.surfaceBooleanFeatures \
|
|
log.surfaceBooleanFeatures.$outputName1:$outputName2
|
|
}
|
|
|
|
# Set application name
|
|
application=$(getApplication)
|
|
|
|
# Get number of processors to run on
|
|
nProcs=$(getNumberOfProcessors)
|
|
|
|
\rm -rf 0
|
|
|
|
|
|
# Run the surface preparation script
|
|
./constant/triSurface/surfaceProcess.sh > log.surfaceProcess 2>&1
|
|
|
|
|
|
# Surface intersections
|
|
intersectSurfaces \
|
|
vessel.stl \
|
|
spargerShaft.stl \
|
|
-perturb
|
|
|
|
intersectSurfaces \
|
|
vessel.stl \
|
|
shaft.stl \
|
|
-perturb
|
|
|
|
intersectSurfaces \
|
|
spargerShaft.stl \
|
|
spargerInlet.stl \
|
|
-perturb
|
|
|
|
intersectSurfaces \
|
|
stirrer.stl \
|
|
shaftRotating.stl \
|
|
-perturb
|
|
|
|
intersectSurfaces \
|
|
stirrer_baffles.stl \
|
|
stirrer.stl \
|
|
-surf1Baffle \
|
|
-perturb
|
|
|
|
intersectSurfaces \
|
|
rotating.stl \
|
|
shaft.stl \
|
|
-surf1Baffle \
|
|
-perturb
|
|
|
|
# Intersect blades with the plate
|
|
for bladeI in $(seq 1 6);
|
|
do
|
|
intersectSurfaces \
|
|
stirrer_baffles_$bladeI.obj \
|
|
stirrer_baffles_plate.obj \
|
|
-surf1Baffle \
|
|
-surf2Baffle
|
|
done
|
|
|
|
|
|
# Meshing
|
|
\cp system/controlDict.mesh system/controlDict
|
|
\cp system/collapseDict.collapseFaces system/collapseDict
|
|
|
|
runApplication blockMesh -region backgroundMeshDecomposition
|
|
|
|
runApplication decomposePar -region backgroundMeshDecomposition
|
|
|
|
runApplication surfaceFeatureExtract
|
|
|
|
runParallel foamyHexMesh $nProcs
|
|
|
|
runParallel collapseEdges $nProcs -collapseFaces -latestTime
|
|
mv log.collapseEdges log.collapseFaces
|
|
|
|
#\cp system/collapseDict.indirectPatchFaces system/collapseDict
|
|
#runParallel collapseEdges $nProcs -collapseFaceSet indirectPatchFaces -latestTime
|
|
#mv log.collapseEdges log.collapseFaceSet
|
|
|
|
runParallel checkMesh $nProcs -allTopology -allGeometry -latestTime
|
|
|
|
runApplication reconstructParMesh -latestTime
|
|
|
|
# Copy the mesh into polyMesh and delete the 102 directory
|
|
\cp -r 101/polyMesh constant
|
|
\rm -rf 101
|
|
|
|
|
|
# ----------------------------------------------------------------- end-of-file
|