#----------------------------------*-sh-*-------------------------------------- # ========= | # \\ / F ield | OpenFOAM: The Open Source CFD Toolbox # \\ / O peration | # \\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd. # \\/ M anipulation | #------------------------------------------------------------------------------ # License # This file is part of OpenFOAM. # # OpenFOAM is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by the # Free Software Foundation; either version 2 of the License, or (at your # option) any later version. # # OpenFOAM is distributed in the hope that it will be useful, but WITHOUT # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License # for more details. # # You should have received a copy of the GNU General Public License # along with OpenFOAM; if not, write to the Free Software Foundation, # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # # Script # settings.sh # # Description # Startup file for OpenFOAM # Sourced from OpenFOAM-??/etc/bashrc # #------------------------------------------------------------------------------ if [ "$PS1" -a "$foamDotFile" ]; then if [ "$FOAM_VERBOSE" ]; then echo "Executing: $foamDotFile" fi fi AddPath() { if [ $# -ge 1 ]; then [ -d $1 ] || mkdir -p $1 export PATH=$1:$PATH fi } AddLib() { if [ $# -ge 1 ]; then [ -d $1 ] || mkdir -p $1 export LD_LIBRARY_PATH=$1:$LD_LIBRARY_PATH fi } #- Add the system-specifc executables path to the path export PATH=$WM_PROJECT_DIR/bin:$FOAM_INST_DIR/$WM_ARCH/bin:$PATH #- Location of the jobControl directory export FOAM_JOB_DIR=$FOAM_INST_DIR/jobControl export WM_DIR=$WM_PROJECT_DIR/wmake export WM_LINK_LANGUAGE=c++ export WM_OPTIONS=$WM_ARCH${WM_COMPILER}$WM_PRECISION_OPTION$WM_COMPILE_OPTION export PATH=$WM_DIR:$PATH export FOAM_SRC=$WM_PROJECT_DIR/src export FOAM_LIB=$WM_PROJECT_DIR/lib export FOAM_LIBBIN=$FOAM_LIB/$WM_OPTIONS AddLib $FOAM_LIBBIN export FOAM_APP=$WM_PROJECT_DIR/applications export FOAM_APPBIN=$WM_PROJECT_DIR/applications/bin/$WM_OPTIONS AddPath $FOAM_APPBIN export FOAM_TUTORIALS=$WM_PROJECT_DIR/tutorials export FOAM_UTILITIES=$FOAM_APP/utilities export FOAM_SOLVERS=$FOAM_APP/solvers export FOAM_USER_LIBBIN=$WM_PROJECT_USER_DIR/lib/$WM_OPTIONS AddLib $FOAM_USER_LIBBIN export FOAM_USER_APPBIN=$WM_PROJECT_USER_DIR/applications/bin/$WM_OPTIONS AddPath $FOAM_USER_APPBIN export FOAM_RUN=$WM_PROJECT_USER_DIR/run # Compiler settings # ~~~~~~~~~~~~~~~~~ WM_COMPILER_BIN= WM_COMPILER_LIB= # Select compiler installation # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # WM_COMPILER_INST = OpenFOAM | System WM_COMPILER_INST=OpenFOAM case "$WM_COMPILER_INST" in OpenFOAM) case "$WM_COMPILER" in Gcc43) export WM_COMPILER_DIR=$FOAM_INST_DIR/$WM_ARCH/gcc-4.3.0$WM_COMPILER_ARCH ;; Gcc) export WM_COMPILER_DIR=$FOAM_INST_DIR/$WM_ARCH/gcc-4.2.2$WM_COMPILER_ARCH ;; esac # Check that the compiler directory can be found if [ ! -d "$WM_COMPILER_DIR" ] then echo echo "Warning in $1:" echo " Cannot find $WM_COMPILER_DIR installation." echo " Please install this compiler version or if you wish to use the system compiler," echo " change the WM_COMPILER_INST setting to 'System' in this file" echo fi WM_COMPILER_BIN=$WM_COMPILER_DIR/bin WM_COMPILER_LIB=$WM_COMPILER_DIR/lib$WM_COMPILER_LIB_ARCH:$WM_COMPILER_DIR/lib ;; esac if [ "$WM_COMPILER_BIN" != "" ]; then export PATH=$WM_COMPILER_BIN:$PATH export LD_LIBRARY_PATH=$WM_COMPILER_LIB:$LD_LIBRARY_PATH fi # MICO # ~~~~ export MICO_VERSION=2.3.12 export MICO_PATH=$FOAM_SRC/other/mico-$MICO_VERSION export MICO_ARCH_PATH=$MICO_PATH/platforms/$WM_OPTIONS export PATH=$MICO_ARCH_PATH/bin:$PATH # FoamX # ~~~~~ export FOAMX_PATH=$FOAM_UTILITIES/preProcessing/FoamX # perhaps we can cut down a bit here for FOAMX_CONFIG in \ $HOME/.$WM_PROJECT/$WM_PROJECT_VERSION/apps/FoamX \ $HOME/.$WM_PROJECT/apps/FoamX \ $WM_PROJECT_INST_DIR/site/$WM_PROJECT_VERSION/apps/FoamX \ $WM_PROJECT_INST_DIR/site/apps/FoamX \ $WM_PROJECT_DIR/etc/apps/FoamX \ ; do [ -d $FOAMX_CONFIG ] && break done export FOAMX_CONFIG # Communications library # ~~~~~~~~~~~~~~~~~~~~~~ case "$WM_MPLIB" in OPENMPI) ompi_version=1.2.6 export OPENMPI_HOME=$FOAM_SRC/other/openmpi-$ompi_version export OPENMPI_ARCH_PATH=$OPENMPI_HOME/platforms/$WM_OPTIONS # Tell OpenMPI where to find it's install directory export OPAL_PREFIX=$OPENMPI_ARCH_PATH AddLib $OPENMPI_ARCH_PATH/lib AddPath $OPENMPI_ARCH_PATH/bin export FOAM_MPI_LIBBIN=$FOAM_LIBBIN/openmpi-$ompi_version unset ompi_version ;; LAM) lam_version=7.1.4 export LAMHOME=$FOAM_SRC/other/lam-$lam_version export LAM_ARCH_PATH=$LAMHOME/platforms/$WM_OPTIONS AddLib $LAM_ARCH_PATH/lib AddPath $LAM_ARCH_PATH/bin export FOAM_MPI_LIBBIN=$FOAM_LIBBIN/lam-$lam_version unset lam_version ;; MPICH) mpich_version=1.2.4 export MPICH_PATH=$FOAM_SRC/other/mpich-$mpich_version export MPICH_ARCH_PATH=$MPICH_PATH/platforms/$WM_OPTIONS export MPICH_ROOT=$MPICH_ARCH_PATH AddLib $MPICH_ARCH_PATH/lib AddPath $MPICH_ARCH_PATH/bin export FOAM_MPI_LIBBIN=$FOAM_LIBBIN/mpich-$mpich_version unset mpich_version ;; MPICH-GM) export MPICH_PATH=/opt/mpi export MPICH_ARCH_PATH=$MPICH_PATH export MPICH_ROOT=$MPICH_ARCH_PATH export GM_LIB_PATH=/opt/gm/lib64 AddLib $MPICH_ARCH_PATH/lib AddLib $GM_LIB_PATH AddPath $MPICH_ARCH_PATH/bin export FOAM_MPI_LIBBIN=$FOAM_LIBBIN/mpich-gm ;; GAMMA) export GAMMA_ARCH_PATH=/usr # AddLib $GAMMA_ARCH_PATH/lib # AddPath $GAMMA_ARCH_PATH/bin export FOAM_MPI_LIBBIN=$FOAM_LIBBIN/gamma ;; MPI) export FOAM_MPI_LIBBIN=$FOAM_LIBBIN/mpi ;; *) export FOAM_MPI_LIBBIN=$FOAM_LIBBIN/dummy ;; esac AddLib $FOAM_MPI_LIBBIN # Set the MPI buffer size (used by all platforms except SGI MPI) # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ export MPI_BUFFER_SIZE=20000000 # CGAL library if available # ~~~~~~~~~~~~~~~~~~~~~~~~~ [ -d "$CGAL_LIB_DIR" ] && AddLib $CGAL_LIB_DIR # Switch on the hoard memory allocator if available # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #if [ -f $FOAM_LIBBIN/libhoard.so ]; then # export LD_PRELOAD=$FOAM_LIBBIN/libhoard.so:$LD_PRELOAD #fi # -----------------------------------------------------------------------------