#!/bin/sh cd "${0%/*}" || exit # Run from this directory . ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions #------------------------------------------------------------------------------ mkdir -p constant/triSurface cp -f "$FOAM_TUTORIALS"/resources/geometry/geom.stl.gz constant/triSurface rm -rf constant/polyMesh/sets # For meshing only decompDict="-decomposeParDict system/decomposeParDict" runApplication blockMesh runApplication surfaceFeatureExtract runApplication snappyHexMesh -overwrite #- Alternatively if snappyHexMesh has not set the faceZones correctly # can do some topoSet magic: # - pick up the outside of the cellZones # - put into faceZones #runApplication topoSet -dict system/topoSetDict.f1 # Use faceZones in combination with preserveFaceZones constraint runApplication $decompDict decomposePar # Restore initial fields restore0Dir -processor runParallel $decompDict splitMeshRegions -cellZones -overwrite # Remove fluid fields from solid regions (important for post-processing) for region in $(foamListRegions solid) do rm -f 0/$region/{nut,alphat,epsilon,k,U,p_rgh} rm -f processor*/0/$region/{nut,alphat,epsilon,k,U,p_rgh} done for region in $(foamListRegions) do runParallel $decompDict -s $region changeDictionary -region $region done # Redistribute onto fewer processors, with special treatment for heater #for region in $(foamListRegions) #do # runParallel -np 6 -s redist-$region \ # redistributePar -overwrite -region $region #done #-- Run in parallel runParallel $(getApplication) # Reconstruct for region in $(foamListRegions) do runParallel -s reconstruct-$region \ redistributePar -reconstruct -region $region done #------------------------------------------------------------------------------