openfoam/tutorials/mesh/foamyHexMesh/mixerVessel/Allrun.pre
Kutalmis Bercin 3384d37a9a TUT: basic, IO, preProcessing, VV: clean up tutorials
- TUT: mesh: add missing SnakeRiverCanyon files
- TUT: mesh: add missing cp source in a foamyHexMesh tutorial
2021-06-09 11:16:08 +01:00

87 lines
2.4 KiB
Bash
Executable File

#!/bin/sh
cd "${0%/*}" || exit # Run from this directory
. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions
#------------------------------------------------------------------------------
intersectSurfaces()
{
outputName1=$(basename $1)
outputName1=${outputName1%.*}
outputName2=$(basename $2)
outputName2=${outputName2%.*}
runApplication -s $outputName1:$outputName2 \
surfaceBooleanFeatures intersection "$@"
}
#------------------------------------------------------------------------------
cp -rf \
"$FOAM_TUTORIALS"/resources/geometry/mixerVesselAMI \
constant/triSurface/rawSurfaces
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 -f system/controlDict.mesh system/controlDict
runApplication blockMesh -region backgroundMeshDecomposition
runApplication -s backgroundMeshDecomposition \
decomposePar -region backgroundMeshDecomposition
runApplication surfaceFeatureExtract
runParallel foamyHexMesh
runParallel -s faces \
collapseEdges -collapseFaces -latestTime \
-dict system/collapseDict.collapseFaces
#runParallel -s faceSet \
# collapseEdges -collapseFaceSet indirectPatchFaces -latestTime \
# -dict system/collapseDict.indirectPatchFaces
runParallel checkMesh -allTopology -allGeometry -latestTime
# Copy the mesh from the latest time folder into polyMesh and delete that
# latest time folder
latestTime=$(foamListTimes -latestTime -processor)
if [ "$latestTime" != "constant" ] && [ -d processor0/"$latestTime"/polyMesh ]
then
runApplication reconstructParMesh -latestTime
cp -rf "$latestTime"/polyMesh constant
rm -rf "$latestTime"
fi
#------------------------------------------------------------------------------