#----------------------------------*-sh-*-------------------------------------- # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | # \\ / A nd | Copyright (C) 2016-2018 OpenCFD Ltd. # \\/ M anipulation | #------------------------------------------------------------------------------ # | Copyright (C) 2011-2016 OpenFOAM Foundation #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM, licensed under GNU General Public License # . # # File # etc/config.sh/aliases # - sourced by OpenFOAM-*/etc/bashrc (or from the user's ~/.bashrc) # # Description # Aliases for working with OpenFOAM. # #------------------------------------------------------------------------------ # Change compiled version aliases # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ alias wmSet='. $WM_PROJECT_DIR/etc/bashrc' alias wmInt32='wmSet WM_LABEL_SIZE=32' alias wmInt64='wmSet WM_LABEL_SIZE=64' alias wmSP='wmSet WM_PRECISION_OPTION=SP' alias wmDP='wmSet WM_PRECISION_OPTION=DP' # Clear env alias wmUnset='. $WM_PROJECT_DIR/etc/config.sh/unset' # Change directory aliases # ~~~~~~~~~~~~~~~~~~~~~~~~ alias foam='cd $WM_PROJECT_DIR' alias src='cd $FOAM_SRC' alias lib='cd $FOAM_LIBBIN' alias app='cd $FOAM_APP' alias sol='cd $FOAM_SOLVERS' alias util='cd $FOAM_UTILITIES' alias tut='cd $FOAM_TUTORIALS' alias run='cd $FOAM_RUN' alias ufoam='cd $WM_PROJECT_USER_DIR' alias uapp='cd $WM_PROJECT_USER_DIR/applications' alias usol='cd $WM_PROJECT_USER_DIR/applications/solvers' alias uutil='cd $WM_PROJECT_USER_DIR/applications/utilities' # Refresh the environment # ~~~~~~~~~~~~~~~~~~~~~~~ unset -f wmRefresh 2>/dev/null wmRefresh() { local projectDir="$WM_PROJECT_DIR" local foamSettings="$FOAM_SETTINGS" . "$projectDir/etc/config.sh/unset" 2>/dev/null . "$projectDir/etc/bashrc" "$foamSettings" } # Query the current OpenFOAM version # or change to another version (if installed in a parallel directory) unset -f foamVersion 2>/dev/null foamVersion() { if [ "$#" -gt 0 ] && [ -d "$WM_PROJECT_DIR" ] then local prefixDir="${WM_PROJECT_DIR%/*}" # Parent directory local ver="$1" shift if [ -f "$prefixDir/OpenFOAM-$ver/etc/bashrc" ] then . "$WM_PROJECT_DIR/etc/config.sh/unset" 2>/dev/null . "$prefixDir/OpenFOAM-$ver/etc/bashrc" echo "Using OpenFOAM-$WM_PROJECT_VERSION" 1>&2 else echo "No OpenFOAM-$ver available in $prefixDir" 1>&2 echo "Using OpenFOAM-$WM_PROJECT_VERSION" 1>&2 return 1 fi else # Treat as query. Report current version echo "OpenFOAM-$WM_PROJECT_VERSION" 1>&2 fi } # Change ParaView version # ~~~~~~~~~~~~~~~~~~~~~~~ # pass in first value directly (eg, 5.4.1) and transform to # ParaView_VERSION=... # Any additional arguments must be fully specified and start with "ParaView". # Eg, # ParaView_QT=... unset -f foamPV 2>/dev/null foamPV() { . "$WM_PROJECT_DIR/etc/config.sh/paraview" "${@+ParaView_VERSION=$@}" local pvdir="${ParaView_DIR##*/}" echo "${pvdir:-ParaView_DIR not set}" 1>&2 } # OpenFOAM working directory with basic env replacements # ~~~~~~~~~~~~~~~~~~~~~~~~~~ unset -f foamPwd 2>/dev/null foamPwd() { if [ -d "$WM_PROJECT_DIR" ] then echo "$PWD" | sed \ -e "s#^${FOAM_RUN}#\$FOAM_RUN#;" \ -e "s#^${WM_PROJECT_DIR}#\$WM_PROJECT_DIR#;" \ -e "s#^${WM_PROJECT_USER_DIR}#\$WM_PROJECT_USER_DIR#;" \ -e "s#^${HOME}#\$HOME#"; else echo "$PWD" | sed -e "s#^${HOME}#\$HOME#;" fi } #------------------------------------------------------------------------------