#!/bin/sh cd "${0%/*}" || exit # Run from this directory . ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions #------------------------------------------------------------------------------ ####################################### # Extract a value (Eg, from boundaryField/bump/value) # Arguments: # $1 = dictEntry # $2 = inputFile # $3 = outputFile # Outputs: # Writes to 'outputFile' # Notes: # Only retains values between, but not including the ( ) delimiters. # For example, #---- # value nonuniform List # 110 # ( # 0.0041520092 # 0.012577691 # 0.021250264 # 0.030176962 # ) # ; ####################################### extractVal() { if [ -f "$2" ] then foamDictionary -entry "$1" -value "$2" | \ sed -n '/(/,/)/{ s/[()]//g; /^ *$/d; p}' \ > "$3" else # Or some other tag? echo "Not such file: $2" 1>&2 echo "0" > "$3" fi } #------------------------------------------------------------------------------ ./Allrun.pre runApplication decomposePar runParallel $(getApplication) runApplication reconstructPar endTime=$(foamListTimes -latestTime) # Create datasets for benchmark comparisons extractVal boundaryField/bottomWall/value "$endTime/Cx" Cx.$$ extractVal boundaryField/bottomWall/value "$endTime/wallShearStress" tau.$$ extractVal boundaryField/bottomWall/value "$endTime/yPlus" yPlus.$$ echo "# ccx tau_xx tau_yy tau_zz y+" > profiles.dat paste -d ' ' Cx.$$ tau.$$ yPlus.$$ >> profiles.dat rm -f Cx.$$ tau.$$ yPlus.$$ #------------------------------------------------------------------------------