modifications for Marc/Mentat2012
This commit is contained in:
parent
d3d0cfdab1
commit
976564b74e
|
@ -0,0 +1,47 @@
|
||||||
|
#!/bin/ksh
|
||||||
|
# 1st arg: $DIR
|
||||||
|
# 2nd arg: $DIRJOB
|
||||||
|
# 3rd arg: $user
|
||||||
|
# 4th arg: $program
|
||||||
|
DIR=$1
|
||||||
|
user=$3
|
||||||
|
program=$4
|
||||||
|
usernoext=$user
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .f`
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .F`
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .for`
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .f90`
|
||||||
|
. $DIR/tools/include
|
||||||
|
DIRJOB=$2
|
||||||
|
cd $DIRJOB
|
||||||
|
echo "Compiling and linking user subroutine $user on host `hostname`"
|
||||||
|
echo "program: $program"
|
||||||
|
$FORTRAN $user || \
|
||||||
|
{
|
||||||
|
echo "$0: compile failed for $user"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
/bin/rm $program 2>/dev/null
|
||||||
|
userobj=$usernoext.o
|
||||||
|
|
||||||
|
|
||||||
|
$LOAD ${program} $DIR/lib/main.o\
|
||||||
|
$DIR/lib/blkdta.o $DIR/lib/comm?.o \
|
||||||
|
${userobj-} \
|
||||||
|
$DIR/lib/srclib.a \
|
||||||
|
$MNFLIBS \
|
||||||
|
$MDUSER \
|
||||||
|
../lib/mdsrc.a \
|
||||||
|
../lib/mcvfit.a \
|
||||||
|
$STUBS \
|
||||||
|
${SOLVERLIBS} \
|
||||||
|
$TKLIBS \
|
||||||
|
$MRCLIBS \
|
||||||
|
$METISLIBS \
|
||||||
|
$SYSLIBS || \
|
||||||
|
{
|
||||||
|
echo "$0: link failed for $usernoext.o on host `hostname`"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
/bin/rm $userobj
|
||||||
|
/bin/rm $DIRJOB/*.mod
|
|
@ -0,0 +1,41 @@
|
||||||
|
#!/bin/ksh
|
||||||
|
# 1st arg: $DIR
|
||||||
|
# 2nd arg: $DIRJOB
|
||||||
|
# 3rd arg: $user
|
||||||
|
# 4th arg: $program
|
||||||
|
DIR=$1
|
||||||
|
user=$3
|
||||||
|
program=$4
|
||||||
|
. $DIR/tools/include
|
||||||
|
DIRJOB=$2
|
||||||
|
cd $DIRJOB
|
||||||
|
echo "Compiling and linking user subroutine $user.f on host `hostname`"
|
||||||
|
echo "program: $program"
|
||||||
|
$FORTRAN $user.f || \
|
||||||
|
{
|
||||||
|
echo "$0: compile failed for $user.f"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
/bin/rm $program 2>/dev/null
|
||||||
|
userobj=$user.o
|
||||||
|
|
||||||
|
|
||||||
|
$LOAD ${program} $DIR/lib/main.o\
|
||||||
|
$DIR/lib/blkdta.o $DIR/lib/comm?.o \
|
||||||
|
${userobj-} \
|
||||||
|
$DIR/lib/srclib.a \
|
||||||
|
$MNFLIBS \
|
||||||
|
$MDUSER \
|
||||||
|
../lib/mdsrc.a \
|
||||||
|
../lib/mcvfit.a \
|
||||||
|
$STUBS \
|
||||||
|
${SOLVERLIBS} \
|
||||||
|
$TKLIBS \
|
||||||
|
$MRCLIBS \
|
||||||
|
$METISLIBS \
|
||||||
|
$SYSLIBS || \
|
||||||
|
{
|
||||||
|
echo "$0: link failed for $user.o on host `hostname`"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
/bin/rm $userobj
|
|
@ -0,0 +1,47 @@
|
||||||
|
#!/bin/ksh
|
||||||
|
# 1st arg: $DIR
|
||||||
|
# 2nd arg: $DIRJOB
|
||||||
|
# 3rd arg: $user
|
||||||
|
# 4th arg: $program
|
||||||
|
DIR=$1
|
||||||
|
user=$3
|
||||||
|
program=$4
|
||||||
|
usernoext=$user
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .f`
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .F`
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .for`
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .f90`
|
||||||
|
. $DIR/tools/include
|
||||||
|
DIRJOB=$2
|
||||||
|
cd $DIRJOB
|
||||||
|
echo "Compiling and linking user subroutine $user on host `hostname`"
|
||||||
|
echo "program: $program"
|
||||||
|
$FORTHIGH $user || \
|
||||||
|
{
|
||||||
|
echo "$0: compile failed for $user"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
/bin/rm $program 2>/dev/null
|
||||||
|
userobj=$usernoext.o
|
||||||
|
|
||||||
|
|
||||||
|
$LOAD ${program} $DIR/lib/main.o\
|
||||||
|
$DIR/lib/blkdta.o $DIR/lib/comm?.o \
|
||||||
|
${userobj-} \
|
||||||
|
$DIR/lib/srclib.a \
|
||||||
|
$MNFLIBS \
|
||||||
|
$MDUSER \
|
||||||
|
../lib/mdsrc.a \
|
||||||
|
../lib/mcvfit.a \
|
||||||
|
$STUBS \
|
||||||
|
${SOLVERLIBS} \
|
||||||
|
$TKLIBS \
|
||||||
|
$MRCLIBS \
|
||||||
|
$METISLIBS \
|
||||||
|
$SYSLIBS || \
|
||||||
|
{
|
||||||
|
echo "$0: link failed for $usernoext.o on host `hostname`"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
/bin/rm $userobj
|
||||||
|
/bin/rm $DIRJOB/*.mod
|
|
@ -0,0 +1,47 @@
|
||||||
|
#!/bin/ksh
|
||||||
|
# 1st arg: $DIR
|
||||||
|
# 2nd arg: $DIRJOB
|
||||||
|
# 3rd arg: $user
|
||||||
|
# 4th arg: $program
|
||||||
|
DIR=$1
|
||||||
|
user=$3
|
||||||
|
program=$4
|
||||||
|
usernoext=$user
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .f`
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .F`
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .for`
|
||||||
|
usernoext=`dirname $usernoext`/`$BASENAME $usernoext .f90`
|
||||||
|
. $DIR/tools/include
|
||||||
|
DIRJOB=$2
|
||||||
|
cd $DIRJOB
|
||||||
|
echo "Compiling and linking user subroutine $user on host `hostname`"
|
||||||
|
echo "program: $program"
|
||||||
|
$FORTHIGHMP $user || \
|
||||||
|
{
|
||||||
|
echo "$0: compile failed for $user"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
/bin/rm $program 2>/dev/null
|
||||||
|
userobj=$usernoext.o
|
||||||
|
|
||||||
|
|
||||||
|
$LOAD ${program} $DIR/lib/main.o\
|
||||||
|
$DIR/lib/blkdta.o $DIR/lib/comm?.o \
|
||||||
|
${userobj-} \
|
||||||
|
$DIR/lib/srclib.a \
|
||||||
|
$MNFLIBS \
|
||||||
|
$MDUSER \
|
||||||
|
../lib/mdsrc.a \
|
||||||
|
../lib/mcvfit.a \
|
||||||
|
$STUBS \
|
||||||
|
${SOLVERLIBS} \
|
||||||
|
$TKLIBS \
|
||||||
|
$MRCLIBS \
|
||||||
|
$METISLIBS \
|
||||||
|
$SYSLIBS || \
|
||||||
|
{
|
||||||
|
echo "$0: link failed for $usernoext.o on host `hostname`"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
/bin/rm $userobj
|
||||||
|
/bin/rm $DIRJOB/*.mod
|
|
@ -0,0 +1,647 @@
|
||||||
|
#
|
||||||
|
# General definitions for the Marc 2011 version
|
||||||
|
#
|
||||||
|
# EM64T
|
||||||
|
# ( LP64 - i4 version)
|
||||||
|
# (ILP64 - i8 version)
|
||||||
|
#
|
||||||
|
# Linux RedHat 5.4
|
||||||
|
#
|
||||||
|
# 64 bit MPI version
|
||||||
|
#
|
||||||
|
# Intel(R) Fortran Compiler
|
||||||
|
# Version 12.0.4
|
||||||
|
#
|
||||||
|
# Intel(R) C Compiler
|
||||||
|
# Version 12.0.4
|
||||||
|
#
|
||||||
|
# DATE
|
||||||
|
#
|
||||||
|
# To check the O/S level, type:
|
||||||
|
# uname -a
|
||||||
|
#
|
||||||
|
# Distributed parallel MPI libraries:
|
||||||
|
# 1) HP MPI 2.3
|
||||||
|
# To check the mpi version, type:
|
||||||
|
# mpirun -version
|
||||||
|
# 2) Intel MPI 4.0.1.007
|
||||||
|
# To check the mpi version, type:
|
||||||
|
# mpirun -version
|
||||||
|
#
|
||||||
|
# MKL Libraries:
|
||||||
|
# Intel(R) MKL 10.3.0.084
|
||||||
|
#
|
||||||
|
# To check the Compiler level, type using the compiler
|
||||||
|
# installation path:
|
||||||
|
# ifort -V
|
||||||
|
# icc -V
|
||||||
|
#
|
||||||
|
# REMARKS : This file contains the definitions of variables used during
|
||||||
|
# compilation loading and use of the MARC programmes . The
|
||||||
|
# current machine type is identified by means of the variable
|
||||||
|
# MACHINE , defined below.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# MPI_ROOT: root directory in which mpi shared libraries, etc. are located
|
||||||
|
# DIRJOB : directory in which spawned jobs should look for Marc input
|
||||||
|
# MPI_ARCH: system architecture
|
||||||
|
# MPI_EPATH: path where executable resides
|
||||||
|
#
|
||||||
|
|
||||||
|
REVISION="VERSION, BUILD"
|
||||||
|
HOSTNAME=`hostname`
|
||||||
|
|
||||||
|
# find available memory in Mbyte on the machine
|
||||||
|
# can be set explicitly
|
||||||
|
MEMLIMIT=`free -m | awk '/Mem:/ {print $2}'`
|
||||||
|
|
||||||
|
# set _OEM_NASTRAN to 1 for MD Nastran build
|
||||||
|
# override _OEM_NASTRAN setting with MARC_MD_NASTRAN environment variable
|
||||||
|
_OEM_NASTRAN="${MARC_MD_NASTRAN:-0}"
|
||||||
|
|
||||||
|
# uncomment the following line for an autoforge build
|
||||||
|
#AUTOFORGE=1
|
||||||
|
AUTOFORGE=0
|
||||||
|
export AUTOFORGE
|
||||||
|
|
||||||
|
# integer size
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "" ; then
|
||||||
|
INTEGER_PATH=
|
||||||
|
else
|
||||||
|
INTEGER_PATH=/$MARC_INTEGER_SIZE
|
||||||
|
fi
|
||||||
|
|
||||||
|
FCOMP=ifort
|
||||||
|
|
||||||
|
#
|
||||||
|
# settings for Metis
|
||||||
|
#
|
||||||
|
METIS="-I$METIS_SOURCE"
|
||||||
|
METISLIBS="$MARC_LIB/metis.a "
|
||||||
|
|
||||||
|
#
|
||||||
|
# settings for MPI
|
||||||
|
#
|
||||||
|
# RCP and RSH are used for parallel network runs
|
||||||
|
# replace with similar commands like rsh if needed
|
||||||
|
RCP=/usr/bin/scp
|
||||||
|
RSH=/usr/bin/ssh
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
MPI_DEFAULT=intelmpi
|
||||||
|
MPI_OTHER=hpmpi
|
||||||
|
|
||||||
|
MPITYPE=$MPI_DEFAULT
|
||||||
|
|
||||||
|
if test $AUTOFORGE
|
||||||
|
then
|
||||||
|
if test $AUTOFORGE = 1
|
||||||
|
then
|
||||||
|
MPITYPE=none
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# overrule MPITYPE setting with environmental variable MARC_MPITYPE
|
||||||
|
if test $MARC_MPITYPE
|
||||||
|
then
|
||||||
|
MPITYPE=$MARC_MPITYPE
|
||||||
|
fi
|
||||||
|
|
||||||
|
# always set MPITYPE to none for MD Nastran
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
MPITYPE=none
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Edit following lines to build with GPGPU version of BCS Solver for
|
||||||
|
# NVIDIA platforms
|
||||||
|
#BCSGPUSOLVER=NONE
|
||||||
|
BCSGPUSOLVER=BCSGPU
|
||||||
|
|
||||||
|
SOLVERFLAGS=
|
||||||
|
if test "$BCSGPUSOLVER" = BCSGPU
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DBCSGPU -DCUDA"
|
||||||
|
BCS_DIR=bcsgpusolver
|
||||||
|
export PATH=$MARC_CUDA/bin:$MARC_CUDA/nvvm:$PATH
|
||||||
|
export LD_LIBRARY_PATH=$MARC_CUDA/lib64:$LD_LIBRARY_PATH
|
||||||
|
else
|
||||||
|
BCS_DIR=bcssolver
|
||||||
|
fi
|
||||||
|
#
|
||||||
|
# settings for MPI
|
||||||
|
#
|
||||||
|
DDM=
|
||||||
|
if test $MPITYPE != none
|
||||||
|
then
|
||||||
|
if test $MPITYPE = hpmpi
|
||||||
|
then
|
||||||
|
FCOMPMPI=mpif90
|
||||||
|
export MPI_ROOT=$MARC_HPMPI
|
||||||
|
export MPI_REMSH=$RSH
|
||||||
|
export MPI_F77=$FCOMP
|
||||||
|
ARCHITECTURE=linux_amd64
|
||||||
|
DDM="-I$MPI_ROOT/include/64 -DDDM -DHPMPI"
|
||||||
|
MPI_CLEAN=
|
||||||
|
export MPI_EPATH=$MARC_BIN
|
||||||
|
export LD_LIBRARY_PATH=$MPI_ROOT/lib/$ARCHITECTURE:$MARC_LIB:$MARC_LIB_SHARED:$LD_LIBRARY_PATH
|
||||||
|
export MPIHPSPECIAL="-e MPI_FLAGS=E,T,y1"
|
||||||
|
# Below line is moved in run_marc file
|
||||||
|
# export MPIHPSPECIAL="$MPIHPSPECIAL -e LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
|
||||||
|
export MPIHPSPECIAL="$MPIHPSPECIAL -e BINDIR=$MARC_BIN"
|
||||||
|
if test -n "$MSC_LICENSE_FILE"
|
||||||
|
then
|
||||||
|
export MPIHPSPECIAL="$MPIHPSPECIAL -e MSC_LICENSE_FILE=$MSC_LICENSE_FILE"
|
||||||
|
fi
|
||||||
|
if test -n "$LM_LICENSE_FILE"
|
||||||
|
then
|
||||||
|
export MPIHPSPECIAL="$MPIHPSPECIAL -e LM_LICENSE_FILE=$LM_LICENSE_FILE"
|
||||||
|
fi
|
||||||
|
export MPIHPSPECIAL="$MPIHPSPECIAL -e MPI_LIC_CHECKER=$MPI_ROOT/bin/licensing/amd64_s8/lichk.x"
|
||||||
|
RUN_JOB2="$MPI_ROOT/bin/mpirun ${MPIRUNOPTIONS} -prot -f "
|
||||||
|
RUN_JOB1="$MPI_ROOT/bin/mpirun ${MPIRUNOPTIONS} -prot -w $MPIHPSPECIAL -np "
|
||||||
|
RUN_JOB0=
|
||||||
|
fi
|
||||||
|
if test $MPITYPE = intelmpi
|
||||||
|
then
|
||||||
|
INTELMPI_VERSION=HYDRA
|
||||||
|
FCOMPMPI=mpiifort
|
||||||
|
MPI_ROOT=$MARC_INTELMPI
|
||||||
|
DDM="-I${MPI_ROOT}/include64 -DDDM"
|
||||||
|
PATH=$MPI_ROOT/bin64:$PATH
|
||||||
|
export PATH
|
||||||
|
LD_LIBRARY_PATH=$MPI_ROOT/lib64:$LD_LIBRARY_PATH
|
||||||
|
export LD_LIBRARY_PATH
|
||||||
|
if test $INTELMPI_VERSION = HYDRA
|
||||||
|
then
|
||||||
|
RUN_JOB1="${MPI_ROOT}/bin64/mpiexec.hydra -genvall -n "
|
||||||
|
RUN_JOB2="${MPI_ROOT}/bin64/mpiexec.hydra -genvall"
|
||||||
|
else
|
||||||
|
RUN_JOB1="${MPI_ROOT}/bin64/mpiexec -n "
|
||||||
|
RUN_JOB2="${MPI_ROOT}/bin64/mpiexec -configfile "
|
||||||
|
fi
|
||||||
|
RUN_JOB0=
|
||||||
|
MPI_CLEAN=
|
||||||
|
MPI_EPATH=$MARC_BIN
|
||||||
|
MPIR_HOME=$MPI_ROOT
|
||||||
|
MPICH_F77=$FCOMP
|
||||||
|
MPICH_F77LINKER=$FCOMP
|
||||||
|
export MPI_ROOT MPI_EPATH MPIR_HOME MPICH_F77 MPICH_F77LINKER
|
||||||
|
I_MPI_PIN_DOMAIN=node
|
||||||
|
export I_MPI_PIN_DOMAIN
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
MPI_ROOT=$MARC_DUMMYMPI
|
||||||
|
export MPI_ROOT=$MARC_DUMMYMPI
|
||||||
|
DDM="-I$MPI_ROOT/include"
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# variables for the "maintain" script
|
||||||
|
#
|
||||||
|
|
||||||
|
MACHINENAME=LINUX
|
||||||
|
MACHINE64BIT=yes
|
||||||
|
MACHINE=Linux_EM64T
|
||||||
|
DEV=/dev/tape
|
||||||
|
GETLOG="whoami"
|
||||||
|
CLEAR="clear"
|
||||||
|
MY_UNAME=`uname -a`
|
||||||
|
|
||||||
|
# Edit following 2 lines to build with VKI Solver
|
||||||
|
#VKISOLVER=VKI
|
||||||
|
VKISOLVER=NONE
|
||||||
|
|
||||||
|
# Edit following 2 lines to build with CASI Solver
|
||||||
|
CASISOLVER=CASI
|
||||||
|
#CASISOLVER=NONE
|
||||||
|
|
||||||
|
# Edit following 2 lines to build with MF2 Solver
|
||||||
|
MF2SOLVER=NONE
|
||||||
|
#MF2SOLVER=SERIAL
|
||||||
|
#MF2SOLVER=MF2PARALLEL
|
||||||
|
|
||||||
|
# Edit following lines to build with Intel(c) Multithreaded solver (PARDISO)
|
||||||
|
#INTELSOLVER=NONE
|
||||||
|
INTELSOLVER=PARDISO
|
||||||
|
|
||||||
|
# Edit following lines to build with MUMPS
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
#MUMPSSOLVER=NONE
|
||||||
|
MUMPSSOLVER=MUMPS
|
||||||
|
else
|
||||||
|
#MUMPSSOLVER=NONE
|
||||||
|
MUMPSSOLVER=MUMPS
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Edit following 2 lines to build MARC dynamic shared library
|
||||||
|
MARC_DLL=MARC_DLL
|
||||||
|
#MARC_DLL=NONE
|
||||||
|
|
||||||
|
# always set VKISOLVER, CASISOLVER, BCSGPUSOLVER, and MARC_DLL to NONE for MD Nastran
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
VKISOLVER=NONE
|
||||||
|
CASISOLVER=NONE
|
||||||
|
MF2SOLVER=NONE
|
||||||
|
INTELSOLVER=NONE
|
||||||
|
MUMPSSOLVER=NONE
|
||||||
|
BCSGPUSOLVER=NONE
|
||||||
|
MARC_DLL=NONE
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# define Fortran and C compile syntax
|
||||||
|
#
|
||||||
|
if test "$VKISOLVER" = VKI
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DVKI"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$CASISOLVER" = CASI
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DCASI"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MF2SOLVER" = MF2PARALLEL
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DMF2PARALLEL"
|
||||||
|
fi
|
||||||
|
if test "$MF2SOLVER" = MF2SERIAL
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DMF2SERIAL"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$INTELSOLVER" = PARDISO
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DPARDISO"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MUMPSSOLVER" = MUMPS
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DMUMPS"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
if test "$MARC_DLL" = MARC_DLL
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DMARC_DLL"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LINK_OPT=
|
||||||
|
DEBUG_OPT=
|
||||||
|
C_DEBUG_OPT=
|
||||||
|
|
||||||
|
#Uncomment following line to build Marc in debuggable mode
|
||||||
|
MARCDEBUG=
|
||||||
|
#MARCDEBUG="ON"
|
||||||
|
|
||||||
|
if test "$MARCDEBUG" = "ON"
|
||||||
|
then
|
||||||
|
LINK_OPT="-debug -traceback"
|
||||||
|
DEBUG_OPT="-debug -traceback"
|
||||||
|
C_DEBUG_OPT="-debug -traceback"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
MARCCHECK=
|
||||||
|
#MARCCHECK="ON"
|
||||||
|
if test "$MARCCHECK" = "ON"
|
||||||
|
then
|
||||||
|
DEBUG_OPT="$DEBUG_OPT -fpe0 -fp-stack-check -check all -ftrapuv "
|
||||||
|
C_DEBUG_OPT="$C_DEBUG_OPT -fp-stack-check -check-uninit -Wformat -ftrapuv "
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
I8FFLAGS=
|
||||||
|
I8DEFINES=
|
||||||
|
I8CDEFINES=
|
||||||
|
I8CASIDEFS=
|
||||||
|
else
|
||||||
|
I8FFLAGS="-i8"
|
||||||
|
I8DEFINES="-DI64"
|
||||||
|
I8CDEFINES="-U_DOUBLE -D_SINGLE"
|
||||||
|
I8CASIDEFS="-DCASI_64BIT_INT=1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
CDEFINES=
|
||||||
|
FDEFINES=
|
||||||
|
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
CDEFINES="$CDEFINES -D_OEM_NASTRAN"
|
||||||
|
FDEFINES="$FDEFINES -D_OEM_NASTRAN"
|
||||||
|
fi
|
||||||
|
|
||||||
|
FDEFINES="$FDEFINES -D_IMPLICITNONE"
|
||||||
|
|
||||||
|
if test "$_OEM_NASTRAN" -eq 0
|
||||||
|
then
|
||||||
|
FDEFINES="$FDEFINES -DOPENMP -DMKL"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# -D_MSCMARC
|
||||||
|
FDEFINES="$FDEFINES -D_MSCMARC $DEBUG_OPT"
|
||||||
|
CDEFINES="$CDEFINES -D_MSCMARC $C_DEBUG_OPT $I8CDEFINES"
|
||||||
|
|
||||||
|
CINCL="-I$MARC_SOURCE/mdsrc -I$MARC_SOURCE/csource"
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
CINCL="$CINCL -I../../include"
|
||||||
|
fi
|
||||||
|
|
||||||
|
CC="icc -c -O1 $I8DEFINES -DLinux -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
CCLOW="icc -c -O0 $I8DEFINES -DLinux -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
CCHIGH="icc -c -O3 $I8DEFINES -DLinux -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
|
||||||
|
if test "$MARCDEBUG" = "ON"
|
||||||
|
then
|
||||||
|
CC="icc -c -DLinux $I8DEFINES -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
CCLOW="icc -c -DLinux $I8DEFINES -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
CCHIGH="icc -c -DLinux $I8DEFINES -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LOAD_CC="icc -O1 -DLinux -DLINUX -DLinux_intel"
|
||||||
|
CCT="$CC"
|
||||||
|
CCTLOW="$CCLOW"
|
||||||
|
CCTHIGH="$CCHIGH"
|
||||||
|
|
||||||
|
CC_CASI="$CC -c99 $I8CASIDEFS"
|
||||||
|
CCLOW_CASI="$CCLOW -c99 $I8CASIDEFS"
|
||||||
|
CCHIGH_CASI="$CCHIGH -c99 $I8CASIDEFS"
|
||||||
|
|
||||||
|
CCT_CASI="$CCT -c99 $I8CASIDEFS"
|
||||||
|
CCTLOW_CASI="$CCLOW -c99 $I8CASIDEFS"
|
||||||
|
CCTHIGH_CASI="$CCHIGH -c99 $I8CASIDEFS"
|
||||||
|
|
||||||
|
#PROFILE="-Mprof=func"
|
||||||
|
#PROFILE="-Mprof=lines"
|
||||||
|
#PROFILE="-Mprof=func,mpi"
|
||||||
|
PROFILE=
|
||||||
|
|
||||||
|
FORTLOW="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -fpp -zero -mp1 -WB -O0 $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTRAN="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -fpp -zero -mp1 -WB -O1 $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTHIGH="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -fpp -zero -mp1 -WB -fno-alias -O3 $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTHIGHMP="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -fpp -zero -mp1 -WB -fno-alias -O3 $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-openmp -openmp_report2 \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTNA="$FCOMP -c -assume byterecl -safe_cray_ptr -save -fpp -zero -mp1 -WB -fno-alias -O3 $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM"
|
||||||
|
|
||||||
|
if test "$MARCDEBUG" = "ON"
|
||||||
|
then
|
||||||
|
FORTLOW="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -fpp -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTRAN="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -fpp -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTHIGH="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -fpp -zero -mp1 -WB -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTHIGHMP="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -fpp -zero -mp1 -WB -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-openmp -openmp_report2 \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTNA="$FCOMP -c -assume byterecl -safe_cray_ptr -save -fpp -zero -mp1 -WB -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM"
|
||||||
|
fi
|
||||||
|
|
||||||
|
FORTLOWT="$FORTLOW"
|
||||||
|
FORTRANT="$FORTRAN"
|
||||||
|
FORTHIGHT="$FORTHIGH"
|
||||||
|
|
||||||
|
FORTRANMNF="$FCOMP -c $FDEFINES "
|
||||||
|
CCMNF="icc -c -O1 -DLinux -DLINUX -DLinux_intel -Dport2egcs -I$MARC_SOURCE/marctoadams/mnf/include -D_LARGEFILE64_SOURCE"
|
||||||
|
|
||||||
|
|
||||||
|
FORTRANMUMPS="$FCOMP -c -fpp -D_IMPLICITNONE $I8FFLAGS $I8DEFINES $DDM -I$MARC_SOURCE/mumpssolver/include -Dintel_ -DALLOW_NON_INIT -Dmetis -nofor_main"
|
||||||
|
CCMUMPS="icc -c -DAdd_ -Dmetis -I$MARC_SOURCE/mumpssolver/include"
|
||||||
|
|
||||||
|
|
||||||
|
BCSCC="icc -c -O3 -DLOWERCASE_ -I${MARC_SOURCE}/${BCS_DIR}/bcslib_csrc $CDEFINES $CINCL"
|
||||||
|
NVCC="nvcc -c -O3 -arch sm_20 -DLOWERCASE_ -I${MARC_SOURCE}/${BCS_DIR}/bcslib_cuda/include -I${MARC_CUDA}/include -I$MARC_SOURCE/mdsrc $I8DEFINES -Xcompiler -fvisibility=hidden -Xcompiler -fPIC $I8DEFINES "
|
||||||
|
NVCCLIB="ar rvl"
|
||||||
|
NVCCLD=gcc
|
||||||
|
BCSFORTLOW="$FORTLOW -I${MARC_SOURCE}/${BCS_DIR}/common"
|
||||||
|
BCSFORTRAN="$FORTRAN -I${MARC_SOURCE}/${BCS_DIR}/common"
|
||||||
|
BCSFORTHIGH="$FORTHIGH -I${MARC_SOURCE}/${BCS_DIR}/common"
|
||||||
|
BCSFORT90HIGH="$BCSFORTHIGH"
|
||||||
|
if test "$MARCDEBUG" = "ON"
|
||||||
|
then
|
||||||
|
BCSFORTRAN=$BCSFORTLOW
|
||||||
|
BCSFORTHIGH=$BCSFORTLOW
|
||||||
|
BCSFORT90HIGH=$BCSFORTLOW
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $MPITYPE != none
|
||||||
|
then
|
||||||
|
if test $MPITYPE = hpmpi
|
||||||
|
then
|
||||||
|
LOAD="$MPI_ROOT/bin/$FCOMPMPI ${LOADOPTIONS} -L$MPI_ROOT/lib/$ARCHITECTURE $PROFILE $LINK_OPT -o "
|
||||||
|
LOADT="$MPI_ROOT/bin/$FCOMPMPI ${LOADOPTIONS} -L$MPI_ROOT/lib/$ARCHITECTURE $PROFILE $LINK_OPT -o "
|
||||||
|
fi
|
||||||
|
# Uncomment the following lines to turn on the tracer and commnet out the next 5 lines
|
||||||
|
# if test $MPITYPE = intelmpi
|
||||||
|
# then
|
||||||
|
# INCLUDEMPI="-I$MPI_ROOT/include64 -I$VT_ROOT/include"
|
||||||
|
# LOAD="$MPI_ROOT/bin64/$FCOMPMPI $PROFILE $INCLUDEMPI -g -t=log $LINK_OPT -o "
|
||||||
|
# LOADT="$MPI_ROOT/bin64/$FCOMPMPI $PROFILE $INCLUDEMPI -g -t=log $LINK_OPT -o "
|
||||||
|
# fi
|
||||||
|
if test $MPITYPE = intelmpi
|
||||||
|
then
|
||||||
|
LOAD="$MPI_ROOT/bin64/$FCOMPMPI $PROFILE $LINK_OPT -o "
|
||||||
|
LOADT="$MPI_ROOT/bin64/$FCOMPMPI $PROFILE $LINK_OPT -o "
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
LOAD="$FCOMP $LINK_OPT -o "
|
||||||
|
LOADT="$FCOMP $LINK_OPT -o "
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MARC_DLL" = MARC_DLL
|
||||||
|
then
|
||||||
|
FORTLOW="$FORTLOW -fpp -fPIC"
|
||||||
|
FORTRAN="$FORTRAN -fpp -fPIC"
|
||||||
|
FORTHIGH="$FORTHIGH -fpp -fPIC"
|
||||||
|
FORTRANMNF="$FORTRANMNF -fpp -fPIC"
|
||||||
|
CC="$CC -fPIC"
|
||||||
|
CCMNF="$CCMNF -fPIC"
|
||||||
|
CC_CASI="$CC_CASI -fPIC"
|
||||||
|
CCLOW_CASI="$CCLOW_CASI -fPIC"
|
||||||
|
CCHIGH_CASI="$CCHIGH_CASI -fPIC"
|
||||||
|
LINK_EXE_MARC="-L$MARC_LIB -lmarc -L$MARC_LIB_SHARED -lguide -lpthread"
|
||||||
|
LINK_MARC_DLL="-shared -fPIC"
|
||||||
|
LOAD_DLL=$LOAD
|
||||||
|
LOADT_DLL=$LOADT
|
||||||
|
EXT_DLL="so"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
XLIBS="-L/usr/X11/lib -lX11 "
|
||||||
|
|
||||||
|
#
|
||||||
|
# define archive and ranlib syntax
|
||||||
|
#
|
||||||
|
|
||||||
|
ARC="ar rvl"
|
||||||
|
ARD="ar dvl"
|
||||||
|
ARX="ar xl"
|
||||||
|
RAN=""
|
||||||
|
|
||||||
|
#
|
||||||
|
# choose which libraries you want to use ( e.g. blas )
|
||||||
|
#
|
||||||
|
|
||||||
|
if test "$VKISOLVER" = VKI
|
||||||
|
then
|
||||||
|
VKISOLVERLIBS="$MARC_LIB/vkisolver.a"
|
||||||
|
else
|
||||||
|
VKISOLVERLIBS=
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$CASISOLVER" = CASI
|
||||||
|
then
|
||||||
|
CASISOLVERLIBS="$MARC_LIB/casilib.a"
|
||||||
|
else
|
||||||
|
CASISOLVERLIBS=
|
||||||
|
fi
|
||||||
|
|
||||||
|
MF2SOLVERLIBS=
|
||||||
|
if test "$MF2SOLVER" = MF2PARALLEL
|
||||||
|
then
|
||||||
|
MF2SOLVERLIBS="$MARC_LIB/mf2parallel/libseq.a \
|
||||||
|
$MARC_LIB/mf2parallel/libsym.a \
|
||||||
|
$MARC_LIB/mf2parallel/libmet.a \
|
||||||
|
$MARC_LIB/mf2parallel/libmf2.a \
|
||||||
|
$MARC_LIB/mf2parallel/libgauss.a \
|
||||||
|
$MARC_LIB/mf2parallel/libmf2.a \
|
||||||
|
$MARC_LIB/mf2parallel/libgauss.a \
|
||||||
|
$MARC_LIB/mf2parallel/libnum.a \
|
||||||
|
$MARC_LIB/mf2parallel/libutl.a \
|
||||||
|
$MARC_LIB/mf2parallel/libr8.a \
|
||||||
|
$MARC_LIB/mf2parallel/libz.a "
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$INTELSOLVER" = PARDISO
|
||||||
|
then
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
INTELSOLVERLIBS="$MARC_MKL/libmkl_solver_lp64.a"
|
||||||
|
else
|
||||||
|
INTELSOLVERLIBS="$MARC_MKL/libmkl_solver_ilp64.a"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
INTELSOLVERLIBS=
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MUMPSSOLVER" = MUMPS
|
||||||
|
then
|
||||||
|
MUMPSSOLVERLIBS="$MARC_LIB/libmumps.a"
|
||||||
|
if test $MPITYPE = none
|
||||||
|
then
|
||||||
|
MUMPSSOLVERLIBS2=
|
||||||
|
echo hello > /dev/null
|
||||||
|
fi
|
||||||
|
if test $MPITYPE = intelmpi
|
||||||
|
then
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
MUMPSSOLVERLIBS2="$MARC_MKL/libmkl_scalapack_lp64.a $MARC_MKL/libmkl_blacs_intelmpi_lp64.a"
|
||||||
|
else
|
||||||
|
MUMPSSOLVERLIBS2="$MARC_MKL/libmkl_scalapack_ilp64.a $MARC_MKL/libmkl_blacs_intelmpi_ilp64.a"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if test $MPITYPE = hpmpi
|
||||||
|
then
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
MUMPSSOLVERLIBS2="$MARC_MKL/libmkl_scalapack_lp64.a $MARC_MKL/libmkl_blacs_lp64.a"
|
||||||
|
else
|
||||||
|
MUMPSSOLVERLIBS2="$MARC_MKL/libmkl_scalapack_ilp64.a $MARC_MKL/libmkl_blacs_ilp64.a"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
MUMPSSOLVERLIBS=
|
||||||
|
MUMPSSOLVERLIBS2=
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$BCSGPUSOLVER" = BCSGPU
|
||||||
|
then
|
||||||
|
BCSSOLVERLIBS="${MARC_LIB}/bcsgpulib.a "
|
||||||
|
MARCCUDALIBS1="-L${MARC_LIB}/cuda_dummy -lmarccuda "
|
||||||
|
MARCCUDALIBS2="-L${MARC_LIB}/cuda -lmarccuda "
|
||||||
|
MARCCUDALIBS=$MARCCUDALIBS1
|
||||||
|
CUDALIBS="-L$MARC_CUDA/lib64 -lcudart -lcublas -L/usr/lib64 -lcuda "
|
||||||
|
else
|
||||||
|
BCSSOLVERLIBS="${MARC_LIB}/bcslib.a "
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
MKLLIB=$MARC_MKL/libmkl_intel_lp64.a
|
||||||
|
else
|
||||||
|
MKLLIB=$MARC_MKL/libmkl_intel_ilp64.a
|
||||||
|
fi
|
||||||
|
|
||||||
|
SECLIBS="-L$MARC_LIB -llapi"
|
||||||
|
|
||||||
|
SOLVERLIBS="${BCSSOLVERLIBS} \
|
||||||
|
${INTELSOLVERLIBS} ${MUMPSSOLVERLIBS2} ${MF2SOLVERLIBS} \
|
||||||
|
-Wl,--start-group $MKLLIB $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_core.a -Wl,--end-group \
|
||||||
|
$MARC_MKL/libguide.a \
|
||||||
|
$MARC_LIB/blas_src.a ${VKISOLVERLIBS} ${CASISOLVERLIBS} "
|
||||||
|
SOLVERLIBS_DLL=${SOLVERLIBS}
|
||||||
|
|
||||||
|
MRCLIBS="$MARC_LIB/clib.a ${CASISOLVERLIBS}"
|
||||||
|
MRCLIBSPAR="$MARC_LIB/clib.a"
|
||||||
|
STUBS="$MARC_LIB/stubs.a "
|
||||||
|
MNFLIBS="$MARC_LIB/libmnf.a"
|
||||||
|
MDUSER="$MARC_LIB/md_user.a"
|
||||||
|
|
||||||
|
|
||||||
|
OPENMP="-openmp"
|
||||||
|
|
||||||
|
SYSLIBS=" $OPENMP -lpthread "
|
||||||
|
|
||||||
|
# Uncomment the following lines to turn on the trace and comment out the next 4 lines
|
||||||
|
# if test $MPITYPE = intelmpi
|
||||||
|
# then
|
||||||
|
# SYSLIBS="-L${VT_ROOT}/lib -lVT -ldwarf -lelf -lm -lpthread \
|
||||||
|
# -L${MPI_ROOT}/lib64 -lmpi -lmpiif -lmpigi -lrt"
|
||||||
|
# fi
|
||||||
|
if test $MPITYPE = intelmpi
|
||||||
|
then
|
||||||
|
SYSLIBS="-L${MPI_ROOT}/lib64 -lmpi -lmpiif -lmpigi -lrt $OPENMP -lpthread"
|
||||||
|
fi
|
||||||
|
|
||||||
|
SYSLIBSPAR=" "
|
||||||
|
|
||||||
|
MARC_DLL_CODES="runmarc.f"
|
||||||
|
|
||||||
|
|
||||||
|
BLAS_SRC="dzero.f icopy.f izero.f"
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
BLAS_SRC="$BLAS_SRC dsctr.f zsctr.f dzasum.f daxpyi.f zaxpyi.f dgthr.f zgthr.f"
|
||||||
|
else
|
||||||
|
BLAS_SRC="ALL"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
LOW_OPT_CODES="are163.f contro.f ndext.f omarc.f omarca.f omarcb.f omarcc.f \
|
||||||
|
omars.f fixbc.f triang.f bet049.f norst3.f eldata.f \
|
||||||
|
elec*.f elct*.f fmeig.f oada00.f ogeig.f updtrbe2.f cycrota.f \
|
||||||
|
cordef.f ogpk.f ogtan.f eldam.f formrbe3.f \
|
||||||
|
inertie.f em_sso072.f cn_fol3d_qpatch6.f"
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i8" ; then
|
||||||
|
LOW_OPT_CODES="$LOW_OPT_CODES bbcseg.f"
|
||||||
|
fi
|
||||||
|
LOW_OPT_CODES_CASI=""
|
||||||
|
|
||||||
|
HIGH_OPT_CODES="dpsmsa1.f dpsmsa2.f dpsmsa3.f dpsmsa4.f dpsmsa5.f dpsmsa6.f \
|
||||||
|
dpsmsa7.f dpsmsa8.f dpsmsa9.f dpsmsa10.f dpsmsa11.f dpsmsa12.f \
|
||||||
|
dpsmsa13.f dpsmsa14.f dpsmsa15.f dpsmsa16.f "
|
||||||
|
|
||||||
|
|
||||||
|
HIGH_OPT_CODES_CASI="arithkernels.c blockedroutines.c blockedroutines_fd.c elemmatgenkernels.c longvecroutines.c sfmultutils.c solvewithbd.c"
|
||||||
|
|
||||||
|
MAXNUM=1000000
|
|
@ -0,0 +1,641 @@
|
||||||
|
#
|
||||||
|
# General definitions for the Marc 2011 version
|
||||||
|
#
|
||||||
|
# EM64T
|
||||||
|
# ( LP64 - i4 version)
|
||||||
|
# (ILP64 - i8 version)
|
||||||
|
#
|
||||||
|
# Linux RedHat 5.4
|
||||||
|
#
|
||||||
|
# 64 bit MPI version
|
||||||
|
#
|
||||||
|
# Intel(R) Fortran Compiler
|
||||||
|
# Version 12.0.4
|
||||||
|
#
|
||||||
|
# Intel(R) C Compiler
|
||||||
|
# Version 12.0.4
|
||||||
|
#
|
||||||
|
# DATE
|
||||||
|
#
|
||||||
|
# To check the O/S level, type:
|
||||||
|
# uname -a
|
||||||
|
#
|
||||||
|
# Distributed parallel MPI libraries:
|
||||||
|
# 1) HP MPI 2.3
|
||||||
|
# To check the mpi version, type:
|
||||||
|
# mpirun -version
|
||||||
|
# 2) Intel MPI 4.0.1.007
|
||||||
|
# To check the mpi version, type:
|
||||||
|
# mpirun -version
|
||||||
|
#
|
||||||
|
# MKL Libraries:
|
||||||
|
# Intel(R) MKL 10.3.0.084
|
||||||
|
#
|
||||||
|
# To check the Compiler level, type using the compiler
|
||||||
|
# installation path:
|
||||||
|
# ifort -V
|
||||||
|
# icc -V
|
||||||
|
#
|
||||||
|
# REMARKS : This file contains the definitions of variables used during
|
||||||
|
# compilation loading and use of the MARC programmes . The
|
||||||
|
# current machine type is identified by means of the variable
|
||||||
|
# MACHINE , defined below.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# MPI_ROOT: root directory in which mpi shared libraries, etc. are located
|
||||||
|
# DIRJOB : directory in which spawned jobs should look for Marc input
|
||||||
|
# MPI_ARCH: system architecture
|
||||||
|
# MPI_EPATH: path where executable resides
|
||||||
|
#
|
||||||
|
|
||||||
|
REVISION="VERSION, BUILD"
|
||||||
|
HOSTNAME=`hostname`
|
||||||
|
|
||||||
|
# find available memory in Mbyte on the machine
|
||||||
|
# can be set explicitly
|
||||||
|
MEMLIMIT=`free -m | awk '/Mem:/ {print $2}'`
|
||||||
|
|
||||||
|
# set _OEM_NASTRAN to 1 for MD Nastran build
|
||||||
|
# override _OEM_NASTRAN setting with MARC_MD_NASTRAN environment variable
|
||||||
|
_OEM_NASTRAN="${MARC_MD_NASTRAN:-0}"
|
||||||
|
|
||||||
|
# uncomment the following line for an autoforge build
|
||||||
|
#AUTOFORGE=1
|
||||||
|
AUTOFORGE=0
|
||||||
|
export AUTOFORGE
|
||||||
|
|
||||||
|
# integer size
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "" ; then
|
||||||
|
INTEGER_PATH=
|
||||||
|
else
|
||||||
|
INTEGER_PATH=/$MARC_INTEGER_SIZE
|
||||||
|
fi
|
||||||
|
|
||||||
|
FCOMP=ifort
|
||||||
|
|
||||||
|
#
|
||||||
|
# settings for Metis
|
||||||
|
#
|
||||||
|
METIS="-I$METIS_SOURCE"
|
||||||
|
METISLIBS="$MARC_LIB/metis.a "
|
||||||
|
|
||||||
|
#
|
||||||
|
# settings for MPI
|
||||||
|
#
|
||||||
|
# RCP and RSH are used for parallel network runs
|
||||||
|
# replace with similar commands like rsh if needed
|
||||||
|
RCP=/usr/bin/scp
|
||||||
|
RSH=/usr/bin/ssh
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
MPI_DEFAULT=intelmpi
|
||||||
|
MPI_OTHER=hpmpi
|
||||||
|
|
||||||
|
MPITYPE=$MPI_DEFAULT
|
||||||
|
|
||||||
|
if test $AUTOFORGE
|
||||||
|
then
|
||||||
|
if test $AUTOFORGE = 1
|
||||||
|
then
|
||||||
|
MPITYPE=none
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# overrule MPITYPE setting with environmental variable MARC_MPITYPE
|
||||||
|
if test $MARC_MPITYPE
|
||||||
|
then
|
||||||
|
MPITYPE=$MARC_MPITYPE
|
||||||
|
fi
|
||||||
|
|
||||||
|
# always set MPITYPE to none for MD Nastran
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
MPITYPE=none
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Edit following lines to build with GPGPU version of BCS Solver for
|
||||||
|
# NVIDIA platforms
|
||||||
|
#BCSGPUSOLVER=NONE
|
||||||
|
BCSGPUSOLVER=BCSGPU
|
||||||
|
|
||||||
|
SOLVERFLAGS=
|
||||||
|
if test "$BCSGPUSOLVER" = BCSGPU
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DBCSGPU -DCUDA"
|
||||||
|
BCS_DIR=bcsgpusolver
|
||||||
|
export PATH=$MARC_CUDA/bin:$MARC_CUDA/nvvm:$PATH
|
||||||
|
export LD_LIBRARY_PATH=$MARC_CUDA/lib64:$LD_LIBRARY_PATH
|
||||||
|
else
|
||||||
|
BCS_DIR=bcssolver
|
||||||
|
fi
|
||||||
|
#
|
||||||
|
# settings for MPI
|
||||||
|
#
|
||||||
|
DDM=
|
||||||
|
if test $MPITYPE != none
|
||||||
|
then
|
||||||
|
if test $MPITYPE = hpmpi
|
||||||
|
then
|
||||||
|
FCOMPMPI=mpif90
|
||||||
|
export MPI_ROOT=$MARC_HPMPI
|
||||||
|
export MPI_REMSH=$RSH
|
||||||
|
export MPI_F77=$FCOMP
|
||||||
|
ARCHITECTURE=linux_amd64
|
||||||
|
DDM="-I$MPI_ROOT/include/64 -DDDM -DHPMPI"
|
||||||
|
MPI_CLEAN=
|
||||||
|
export MPI_EPATH=$MARC_BIN
|
||||||
|
export LD_LIBRARY_PATH=$MPI_ROOT/lib/$ARCHITECTURE:$MARC_LIB:$MARC_LIB_SHARED:$LD_LIBRARY_PATH
|
||||||
|
export MPIHPSPECIAL="-e MPI_FLAGS=E,T,y1"
|
||||||
|
# Below line is moved in run_marc file
|
||||||
|
# export MPIHPSPECIAL="$MPIHPSPECIAL -e LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
|
||||||
|
export MPIHPSPECIAL="$MPIHPSPECIAL -e BINDIR=$MARC_BIN"
|
||||||
|
if test -n "$MSC_LICENSE_FILE"
|
||||||
|
then
|
||||||
|
export MPIHPSPECIAL="$MPIHPSPECIAL -e MSC_LICENSE_FILE=$MSC_LICENSE_FILE"
|
||||||
|
fi
|
||||||
|
if test -n "$LM_LICENSE_FILE"
|
||||||
|
then
|
||||||
|
export MPIHPSPECIAL="$MPIHPSPECIAL -e LM_LICENSE_FILE=$LM_LICENSE_FILE"
|
||||||
|
fi
|
||||||
|
export MPIHPSPECIAL="$MPIHPSPECIAL -e MPI_LIC_CHECKER=$MPI_ROOT/bin/licensing/amd64_s8/lichk.x"
|
||||||
|
RUN_JOB2="$MPI_ROOT/bin/mpirun ${MPIRUNOPTIONS} -prot -f "
|
||||||
|
RUN_JOB1="$MPI_ROOT/bin/mpirun ${MPIRUNOPTIONS} -prot -w $MPIHPSPECIAL -np "
|
||||||
|
RUN_JOB0=
|
||||||
|
fi
|
||||||
|
if test $MPITYPE = intelmpi
|
||||||
|
then
|
||||||
|
INTELMPI_VERSION=HYDRA
|
||||||
|
FCOMPMPI=mpiifort
|
||||||
|
MPI_ROOT=$MARC_INTELMPI
|
||||||
|
DDM="-I${MPI_ROOT}/include64 -DDDM"
|
||||||
|
PATH=$MPI_ROOT/bin64:$PATH
|
||||||
|
export PATH
|
||||||
|
LD_LIBRARY_PATH=$MPI_ROOT/lib64:$LD_LIBRARY_PATH
|
||||||
|
export LD_LIBRARY_PATH
|
||||||
|
if test $INTELMPI_VERSION = HYDRA
|
||||||
|
then
|
||||||
|
RUN_JOB1="${MPI_ROOT}/bin64/mpiexec.hydra -genvall -n "
|
||||||
|
RUN_JOB2="${MPI_ROOT}/bin64/mpiexec.hydra -genvall"
|
||||||
|
else
|
||||||
|
RUN_JOB1="${MPI_ROOT}/bin64/mpiexec -n "
|
||||||
|
RUN_JOB2="${MPI_ROOT}/bin64/mpiexec -configfile "
|
||||||
|
fi
|
||||||
|
RUN_JOB0=
|
||||||
|
MPI_CLEAN=
|
||||||
|
MPI_EPATH=$MARC_BIN
|
||||||
|
MPIR_HOME=$MPI_ROOT
|
||||||
|
MPICH_F77=$FCOMP
|
||||||
|
MPICH_F77LINKER=$FCOMP
|
||||||
|
export MPI_ROOT MPI_EPATH MPIR_HOME MPICH_F77 MPICH_F77LINKER
|
||||||
|
I_MPI_PIN_DOMAIN=node
|
||||||
|
export I_MPI_PIN_DOMAIN
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
MPI_ROOT=$MARC_DUMMYMPI
|
||||||
|
export MPI_ROOT=$MARC_DUMMYMPI
|
||||||
|
DDM="-I$MPI_ROOT/include"
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# variables for the "maintain" script
|
||||||
|
#
|
||||||
|
|
||||||
|
MACHINENAME=LINUX
|
||||||
|
MACHINE64BIT=yes
|
||||||
|
MACHINE=Linux_EM64T
|
||||||
|
DEV=/dev/tape
|
||||||
|
GETLOG="whoami"
|
||||||
|
CLEAR="clear"
|
||||||
|
MY_UNAME=`uname -a`
|
||||||
|
|
||||||
|
# Edit following 2 lines to build with VKI Solver
|
||||||
|
#VKISOLVER=VKI
|
||||||
|
VKISOLVER=NONE
|
||||||
|
|
||||||
|
# Edit following 2 lines to build with CASI Solver
|
||||||
|
CASISOLVER=CASI
|
||||||
|
#CASISOLVER=NONE
|
||||||
|
|
||||||
|
# Edit following 2 lines to build with MF2 Solver
|
||||||
|
MF2SOLVER=NONE
|
||||||
|
#MF2SOLVER=SERIAL
|
||||||
|
#MF2SOLVER=MF2PARALLEL
|
||||||
|
|
||||||
|
# Edit following lines to build with Intel(c) Multithreaded solver (PARDISO)
|
||||||
|
#INTELSOLVER=NONE
|
||||||
|
INTELSOLVER=PARDISO
|
||||||
|
|
||||||
|
# Edit following lines to build with MUMPS
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
#MUMPSSOLVER=NONE
|
||||||
|
MUMPSSOLVER=MUMPS
|
||||||
|
else
|
||||||
|
#MUMPSSOLVER=NONE
|
||||||
|
MUMPSSOLVER=MUMPS
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Edit following 2 lines to build MARC dynamic shared library
|
||||||
|
MARC_DLL=MARC_DLL
|
||||||
|
#MARC_DLL=NONE
|
||||||
|
|
||||||
|
# always set VKISOLVER, CASISOLVER, BCSGPUSOLVER, and MARC_DLL to NONE for MD Nastran
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
VKISOLVER=NONE
|
||||||
|
CASISOLVER=NONE
|
||||||
|
MF2SOLVER=NONE
|
||||||
|
INTELSOLVER=NONE
|
||||||
|
MUMPSSOLVER=NONE
|
||||||
|
BCSGPUSOLVER=NONE
|
||||||
|
MARC_DLL=NONE
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# define Fortran and C compile syntax
|
||||||
|
#
|
||||||
|
if test "$VKISOLVER" = VKI
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DVKI"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$CASISOLVER" = CASI
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DCASI"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MF2SOLVER" = MF2PARALLEL
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DMF2PARALLEL"
|
||||||
|
fi
|
||||||
|
if test "$MF2SOLVER" = MF2SERIAL
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DMF2SERIAL"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$INTELSOLVER" = PARDISO
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DPARDISO"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MUMPSSOLVER" = MUMPS
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DMUMPS"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
if test "$MARC_DLL" = MARC_DLL
|
||||||
|
then
|
||||||
|
SOLVERFLAGS="$SOLVERFLAGS -DMARC_DLL"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LINK_OPT=
|
||||||
|
DEBUG_OPT=
|
||||||
|
C_DEBUG_OPT=
|
||||||
|
|
||||||
|
#Uncomment following line to build Marc in debuggable mode
|
||||||
|
MARCDEBUG=
|
||||||
|
#MARCDEBUG="ON"
|
||||||
|
|
||||||
|
if test "$MARCDEBUG" = "ON"
|
||||||
|
then
|
||||||
|
LINK_OPT="-debug -traceback"
|
||||||
|
DEBUG_OPT="-debug -traceback"
|
||||||
|
C_DEBUG_OPT="-debug -traceback"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
MARCCHECK=
|
||||||
|
#MARCCHECK="ON"
|
||||||
|
if test "$MARCCHECK" = "ON"
|
||||||
|
then
|
||||||
|
DEBUG_OPT="$DEBUG_OPT -fpe0 -fp-stack-check -check all -ftrapuv "
|
||||||
|
C_DEBUG_OPT="$C_DEBUG_OPT -fp-stack-check -check-uninit -Wformat -ftrapuv "
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
I8FFLAGS=
|
||||||
|
I8DEFINES=
|
||||||
|
I8CDEFINES=
|
||||||
|
I8CASIDEFS=
|
||||||
|
else
|
||||||
|
I8FFLAGS="-i8"
|
||||||
|
I8DEFINES="-DI64"
|
||||||
|
I8CDEFINES="-U_DOUBLE -D_SINGLE"
|
||||||
|
I8CASIDEFS="-DCASI_64BIT_INT=1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
CDEFINES=
|
||||||
|
FDEFINES=
|
||||||
|
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
CDEFINES="$CDEFINES -D_OEM_NASTRAN"
|
||||||
|
FDEFINES="$FDEFINES -D_OEM_NASTRAN"
|
||||||
|
fi
|
||||||
|
|
||||||
|
FDEFINES="$FDEFINES -D_IMPLICITNONE"
|
||||||
|
|
||||||
|
if test "$_OEM_NASTRAN" -eq 0
|
||||||
|
then
|
||||||
|
FDEFINES="$FDEFINES -DOPENMP -DMKL"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# -D_MSCMARC
|
||||||
|
FDEFINES="$FDEFINES -D_MSCMARC $DEBUG_OPT"
|
||||||
|
CDEFINES="$CDEFINES -D_MSCMARC $C_DEBUG_OPT $I8CDEFINES"
|
||||||
|
|
||||||
|
CINCL="-I$MARC_SOURCE/mdsrc -I$MARC_SOURCE/csource"
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
CINCL="$CINCL -I../../include"
|
||||||
|
fi
|
||||||
|
|
||||||
|
CC="icc -c -O1 $I8DEFINES -DLinux -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
CCLOW="icc -c -O0 $I8DEFINES -DLinux -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
CCHIGH="icc -c -O3 $I8DEFINES -DLinux -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
|
||||||
|
if test "$MARCDEBUG" = "ON"
|
||||||
|
then
|
||||||
|
CC="icc -c -DLinux $I8DEFINES -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
CCLOW="icc -c -DLinux $I8DEFINES -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
CCHIGH="icc -c -DLinux $I8DEFINES -DLINUX -DLinux_intel $CDEFINES $CINCL $SOLVERFLAGS"
|
||||||
|
fi
|
||||||
|
|
||||||
|
LOAD_CC="icc -O1 -DLinux -DLINUX -DLinux_intel"
|
||||||
|
CCT="$CC"
|
||||||
|
CCTLOW="$CCLOW"
|
||||||
|
CCTHIGH="$CCHIGH"
|
||||||
|
|
||||||
|
CC_CASI="$CC -c99 $I8CASIDEFS"
|
||||||
|
CCLOW_CASI="$CCLOW -c99 $I8CASIDEFS"
|
||||||
|
CCHIGH_CASI="$CCHIGH -c99 $I8CASIDEFS"
|
||||||
|
|
||||||
|
CCT_CASI="$CCT -c99 $I8CASIDEFS"
|
||||||
|
CCTLOW_CASI="$CCLOW -c99 $I8CASIDEFS"
|
||||||
|
CCTHIGH_CASI="$CCHIGH -c99 $I8CASIDEFS"
|
||||||
|
|
||||||
|
#PROFILE="-Mprof=func"
|
||||||
|
#PROFILE="-Mprof=lines"
|
||||||
|
#PROFILE="-Mprof=func,mpi"
|
||||||
|
PROFILE=
|
||||||
|
|
||||||
|
FORTLOW="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -zero -mp1 -WB -O0 $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTRAN="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -zero -mp1 -WB -O1 $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTHIGH="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -zero -mp1 -WB -fno-alias -O3 $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTNA="$FCOMP -c -assume byterecl -safe_cray_ptr -save -zero -mp1 -WB -fno-alias -O3 $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM"
|
||||||
|
|
||||||
|
if test "$MARCDEBUG" = "ON"
|
||||||
|
then
|
||||||
|
FORTLOW="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTRAN="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTHIGH="$FCOMP -c -assume byterecl -safe_cray_ptr $PROFILE -save -zero -mp1 -WB -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
||||||
|
FORTNA="$FCOMP -c -assume byterecl -safe_cray_ptr -save -zero -mp1 -WB -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
||||||
|
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM"
|
||||||
|
fi
|
||||||
|
|
||||||
|
FORTLOWT="$FORTLOW"
|
||||||
|
FORTRANT="$FORTRAN"
|
||||||
|
FORTHIGHT="$FORTHIGH"
|
||||||
|
|
||||||
|
FORTRANMNF="$FCOMP -c $FDEFINES "
|
||||||
|
CCMNF="icc -c -O1 -DLinux -DLINUX -DLinux_intel -Dport2egcs -I$MARC_SOURCE/marctoadams/mnf/include -D_LARGEFILE64_SOURCE"
|
||||||
|
|
||||||
|
|
||||||
|
FORTRANMUMPS="$FCOMP -c -fpp -D_IMPLICITNONE $I8FFLAGS $I8DEFINES $DDM -I$MARC_SOURCE/mumpssolver/include -Dintel_ -DALLOW_NON_INIT -Dmetis -nofor_main"
|
||||||
|
CCMUMPS="icc -c -DAdd_ -Dmetis -I$MARC_SOURCE/mumpssolver/include"
|
||||||
|
|
||||||
|
|
||||||
|
BCSCC="icc -c -O3 -DLOWERCASE_ -I${MARC_SOURCE}/${BCS_DIR}/bcslib_csrc $CDEFINES $CINCL"
|
||||||
|
NVCC="nvcc -c -O3 -arch sm_20 -DLOWERCASE_ -I${MARC_SOURCE}/${BCS_DIR}/bcslib_cuda/include -I${MARC_CUDA}/include -I$MARC_SOURCE/mdsrc $I8DEFINES -Xcompiler -fvisibility=hidden -Xcompiler -fPIC $I8DEFINES "
|
||||||
|
NVCCLIB="ar rvl"
|
||||||
|
NVCCLD=gcc
|
||||||
|
BCSFORTLOW="$FORTLOW -I${MARC_SOURCE}/${BCS_DIR}/common"
|
||||||
|
BCSFORTRAN="$FORTRAN -I${MARC_SOURCE}/${BCS_DIR}/common"
|
||||||
|
BCSFORTHIGH="$FORTHIGH -I${MARC_SOURCE}/${BCS_DIR}/common"
|
||||||
|
BCSFORT90HIGH="$BCSFORTHIGH"
|
||||||
|
if test "$MARCDEBUG" = "ON"
|
||||||
|
then
|
||||||
|
BCSFORTRAN=$BCSFORTLOW
|
||||||
|
BCSFORTHIGH=$BCSFORTLOW
|
||||||
|
BCSFORT90HIGH=$BCSFORTLOW
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $MPITYPE != none
|
||||||
|
then
|
||||||
|
if test $MPITYPE = hpmpi
|
||||||
|
then
|
||||||
|
LOAD="$MPI_ROOT/bin/$FCOMPMPI ${LOADOPTIONS} -L$MPI_ROOT/lib/$ARCHITECTURE $PROFILE $LINK_OPT -o "
|
||||||
|
LOADT="$MPI_ROOT/bin/$FCOMPMPI ${LOADOPTIONS} -L$MPI_ROOT/lib/$ARCHITECTURE $PROFILE $LINK_OPT -o "
|
||||||
|
fi
|
||||||
|
# Uncomment the following lines to turn on the tracer and commnet out the next 5 lines
|
||||||
|
# if test $MPITYPE = intelmpi
|
||||||
|
# then
|
||||||
|
# INCLUDEMPI="-I$MPI_ROOT/include64 -I$VT_ROOT/include"
|
||||||
|
# LOAD="$MPI_ROOT/bin64/$FCOMPMPI $PROFILE $INCLUDEMPI -g -t=log $LINK_OPT -o "
|
||||||
|
# LOADT="$MPI_ROOT/bin64/$FCOMPMPI $PROFILE $INCLUDEMPI -g -t=log $LINK_OPT -o "
|
||||||
|
# fi
|
||||||
|
if test $MPITYPE = intelmpi
|
||||||
|
then
|
||||||
|
LOAD="$MPI_ROOT/bin64/$FCOMPMPI $PROFILE $LINK_OPT -o "
|
||||||
|
LOADT="$MPI_ROOT/bin64/$FCOMPMPI $PROFILE $LINK_OPT -o "
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
LOAD="$FCOMP $LINK_OPT -o "
|
||||||
|
LOADT="$FCOMP $LINK_OPT -o "
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MARC_DLL" = MARC_DLL
|
||||||
|
then
|
||||||
|
FORTLOW="$FORTLOW -fpp -fPIC"
|
||||||
|
FORTRAN="$FORTRAN -fpp -fPIC"
|
||||||
|
FORTHIGH="$FORTHIGH -fpp -fPIC"
|
||||||
|
FORTRANMNF="$FORTRANMNF -fpp -fPIC"
|
||||||
|
CC="$CC -fPIC"
|
||||||
|
CCMNF="$CCMNF -fPIC"
|
||||||
|
CC_CASI="$CC_CASI -fPIC"
|
||||||
|
CCLOW_CASI="$CCLOW_CASI -fPIC"
|
||||||
|
CCHIGH_CASI="$CCHIGH_CASI -fPIC"
|
||||||
|
LINK_EXE_MARC="-L$MARC_LIB -lmarc -L$MARC_LIB_SHARED -lguide -lpthread"
|
||||||
|
LINK_MARC_DLL="-shared -fPIC"
|
||||||
|
LOAD_DLL=$LOAD
|
||||||
|
LOADT_DLL=$LOADT
|
||||||
|
EXT_DLL="so"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
XLIBS="-L/usr/X11/lib -lX11 "
|
||||||
|
|
||||||
|
#
|
||||||
|
# define archive and ranlib syntax
|
||||||
|
#
|
||||||
|
|
||||||
|
ARC="ar rvl"
|
||||||
|
ARD="ar dvl"
|
||||||
|
ARX="ar xl"
|
||||||
|
RAN=""
|
||||||
|
|
||||||
|
#
|
||||||
|
# choose which libraries you want to use ( e.g. blas )
|
||||||
|
#
|
||||||
|
|
||||||
|
if test "$VKISOLVER" = VKI
|
||||||
|
then
|
||||||
|
VKISOLVERLIBS="$MARC_LIB/vkisolver.a"
|
||||||
|
else
|
||||||
|
VKISOLVERLIBS=
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$CASISOLVER" = CASI
|
||||||
|
then
|
||||||
|
CASISOLVERLIBS="$MARC_LIB/casilib.a"
|
||||||
|
else
|
||||||
|
CASISOLVERLIBS=
|
||||||
|
fi
|
||||||
|
|
||||||
|
MF2SOLVERLIBS=
|
||||||
|
if test "$MF2SOLVER" = MF2PARALLEL
|
||||||
|
then
|
||||||
|
MF2SOLVERLIBS="$MARC_LIB/mf2parallel/libseq.a \
|
||||||
|
$MARC_LIB/mf2parallel/libsym.a \
|
||||||
|
$MARC_LIB/mf2parallel/libmet.a \
|
||||||
|
$MARC_LIB/mf2parallel/libmf2.a \
|
||||||
|
$MARC_LIB/mf2parallel/libgauss.a \
|
||||||
|
$MARC_LIB/mf2parallel/libmf2.a \
|
||||||
|
$MARC_LIB/mf2parallel/libgauss.a \
|
||||||
|
$MARC_LIB/mf2parallel/libnum.a \
|
||||||
|
$MARC_LIB/mf2parallel/libutl.a \
|
||||||
|
$MARC_LIB/mf2parallel/libr8.a \
|
||||||
|
$MARC_LIB/mf2parallel/libz.a "
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$INTELSOLVER" = PARDISO
|
||||||
|
then
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
INTELSOLVERLIBS="$MARC_MKL/libmkl_solver_lp64.a"
|
||||||
|
else
|
||||||
|
INTELSOLVERLIBS="$MARC_MKL/libmkl_solver_ilp64.a"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
INTELSOLVERLIBS=
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MUMPSSOLVER" = MUMPS
|
||||||
|
then
|
||||||
|
MUMPSSOLVERLIBS="$MARC_LIB/libmumps.a"
|
||||||
|
if test $MPITYPE = none
|
||||||
|
then
|
||||||
|
MUMPSSOLVERLIBS2=
|
||||||
|
echo hello > /dev/null
|
||||||
|
fi
|
||||||
|
if test $MPITYPE = intelmpi
|
||||||
|
then
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
MUMPSSOLVERLIBS2="$MARC_MKL/libmkl_scalapack_lp64.a $MARC_MKL/libmkl_blacs_intelmpi_lp64.a"
|
||||||
|
else
|
||||||
|
MUMPSSOLVERLIBS2="$MARC_MKL/libmkl_scalapack_ilp64.a $MARC_MKL/libmkl_blacs_intelmpi_ilp64.a"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if test $MPITYPE = hpmpi
|
||||||
|
then
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
MUMPSSOLVERLIBS2="$MARC_MKL/libmkl_scalapack_lp64.a $MARC_MKL/libmkl_blacs_lp64.a"
|
||||||
|
else
|
||||||
|
MUMPSSOLVERLIBS2="$MARC_MKL/libmkl_scalapack_ilp64.a $MARC_MKL/libmkl_blacs_ilp64.a"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
MUMPSSOLVERLIBS=
|
||||||
|
MUMPSSOLVERLIBS2=
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$BCSGPUSOLVER" = BCSGPU
|
||||||
|
then
|
||||||
|
BCSSOLVERLIBS="${MARC_LIB}/bcsgpulib.a "
|
||||||
|
MARCCUDALIBS1="-L${MARC_LIB}/cuda_dummy -lmarccuda "
|
||||||
|
MARCCUDALIBS2="-L${MARC_LIB}/cuda -lmarccuda "
|
||||||
|
MARCCUDALIBS=$MARCCUDALIBS1
|
||||||
|
CUDALIBS="-L$MARC_CUDA/lib64 -lcudart -lcublas -L/usr/lib64 -lcuda "
|
||||||
|
else
|
||||||
|
BCSSOLVERLIBS="${MARC_LIB}/bcslib.a "
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
MKLLIB=$MARC_MKL/libmkl_intel_lp64.a
|
||||||
|
else
|
||||||
|
MKLLIB=$MARC_MKL/libmkl_intel_ilp64.a
|
||||||
|
fi
|
||||||
|
|
||||||
|
SECLIBS="-L$MARC_LIB -llapi"
|
||||||
|
|
||||||
|
SOLVERLIBS="${BCSSOLVERLIBS} \
|
||||||
|
${INTELSOLVERLIBS} ${MUMPSSOLVERLIBS2} ${MF2SOLVERLIBS} \
|
||||||
|
-Wl,--start-group $MKLLIB $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_core.a -Wl,--end-group \
|
||||||
|
$MARC_MKL/libguide.a \
|
||||||
|
$MARC_LIB/blas_src.a ${VKISOLVERLIBS} ${CASISOLVERLIBS} "
|
||||||
|
SOLVERLIBS_DLL=${SOLVERLIBS}
|
||||||
|
|
||||||
|
MRCLIBS="$MARC_LIB/clib.a ${CASISOLVERLIBS}"
|
||||||
|
MRCLIBSPAR="$MARC_LIB/clib.a"
|
||||||
|
STUBS="$MARC_LIB/stubs.a "
|
||||||
|
MNFLIBS="$MARC_LIB/libmnf.a"
|
||||||
|
MDUSER="$MARC_LIB/md_user.a"
|
||||||
|
|
||||||
|
|
||||||
|
OPENMP="-openmp"
|
||||||
|
|
||||||
|
SYSLIBS=" $OPENMP -lpthread "
|
||||||
|
|
||||||
|
# Uncomment the following lines to turn on the trace and comment out the next 4 lines
|
||||||
|
# if test $MPITYPE = intelmpi
|
||||||
|
# then
|
||||||
|
# SYSLIBS="-L${VT_ROOT}/lib -lVT -ldwarf -lelf -lm -lpthread \
|
||||||
|
# -L${MPI_ROOT}/lib64 -lmpi -lmpiif -lmpigi -lrt"
|
||||||
|
# fi
|
||||||
|
if test $MPITYPE = intelmpi
|
||||||
|
then
|
||||||
|
SYSLIBS="-L${MPI_ROOT}/lib64 -lmpi -lmpiif -lmpigi -lrt $OPENMP -lpthread"
|
||||||
|
fi
|
||||||
|
|
||||||
|
SYSLIBSPAR=" "
|
||||||
|
|
||||||
|
MARC_DLL_CODES="runmarc.f"
|
||||||
|
|
||||||
|
|
||||||
|
BLAS_SRC="dzero.f icopy.f izero.f"
|
||||||
|
if test "$_OEM_NASTRAN" -ne 0
|
||||||
|
then
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
||||||
|
BLAS_SRC="$BLAS_SRC dsctr.f zsctr.f dzasum.f daxpyi.f zaxpyi.f dgthr.f zgthr.f"
|
||||||
|
else
|
||||||
|
BLAS_SRC="ALL"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
LOW_OPT_CODES="are163.f contro.f ndext.f omarc.f omarca.f omarcb.f omarcc.f \
|
||||||
|
omars.f fixbc.f triang.f bet049.f norst3.f eldata.f \
|
||||||
|
elec*.f elct*.f fmeig.f oada00.f ogeig.f updtrbe2.f cycrota.f \
|
||||||
|
cordef.f ogpk.f ogtan.f eldam.f formrbe3.f \
|
||||||
|
inertie.f em_sso072.f cn_fol3d_qpatch6.f"
|
||||||
|
if test "$MARC_INTEGER_SIZE" = "i8" ; then
|
||||||
|
LOW_OPT_CODES="$LOW_OPT_CODES bbcseg.f"
|
||||||
|
fi
|
||||||
|
LOW_OPT_CODES_CASI=""
|
||||||
|
|
||||||
|
HIGH_OPT_CODES="dpsmsa1.f dpsmsa2.f dpsmsa3.f dpsmsa4.f dpsmsa5.f dpsmsa6.f \
|
||||||
|
dpsmsa7.f dpsmsa8.f dpsmsa9.f dpsmsa10.f dpsmsa11.f dpsmsa12.f \
|
||||||
|
dpsmsa13.f dpsmsa14.f dpsmsa15.f dpsmsa16.f "
|
||||||
|
|
||||||
|
|
||||||
|
HIGH_OPT_CODES_CASI="arithkernels.c blockedroutines.c blockedroutines_fd.c elemmatgenkernels.c longvecroutines.c sfmultutils.c solvewithbd.c"
|
||||||
|
|
||||||
|
MAXNUM=1000000
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,12 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# This script opens a window running an editor. The default window is an
|
||||||
|
# xterm, and the default editor is vi. These may be customized.
|
||||||
|
|
||||||
|
if [ "`uname`" = "SunOS" ]; then
|
||||||
|
dir=/usr/openwin/bin
|
||||||
|
else
|
||||||
|
dir=/usr/bin/X11
|
||||||
|
fi
|
||||||
|
|
||||||
|
# $dir/xterm -T "vi $*" -n "vi $*" -e vi $*
|
||||||
|
kwrite $*
|
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# This script opens a window running an editor. The default window is an
|
||||||
|
# xterm, and the default editor is vi. These may be customized.
|
||||||
|
|
||||||
|
if [ "`uname`" = "SunOS" ]; then
|
||||||
|
dir=/usr/openwin/bin
|
||||||
|
else
|
||||||
|
dir=/usr/bin/X11
|
||||||
|
fi
|
||||||
|
|
||||||
|
$dir/xterm -T "vi $*" -n "vi $*" -e vi $*
|
|
@ -0,0 +1,164 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# The exit status of this script is read by Mentat.
|
||||||
|
# Normal exit status is 0.
|
||||||
|
#
|
||||||
|
|
||||||
|
DIR=%INSTALLDIR%/marc%VERSION%
|
||||||
|
if test $MARCDIR1
|
||||||
|
then
|
||||||
|
DIR=$MARCDIR1
|
||||||
|
fi
|
||||||
|
|
||||||
|
SRCEXT=.f
|
||||||
|
RSTEXT=.t08
|
||||||
|
PSTEXT=.t19
|
||||||
|
PSTEXTB=.t16
|
||||||
|
VWFCEXT=.vfs
|
||||||
|
|
||||||
|
slv=$1
|
||||||
|
version=$2
|
||||||
|
ndom_fea_solver=$3
|
||||||
|
ndom_preprocessor=$4
|
||||||
|
hostfile=$5
|
||||||
|
compat=$6
|
||||||
|
job=$7
|
||||||
|
srcfile=$8
|
||||||
|
srcmeth=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
restart=$1
|
||||||
|
postfile=$2
|
||||||
|
viewfactorsfile=$3
|
||||||
|
autorst=$4
|
||||||
|
copy_datfile="-ci $5"
|
||||||
|
copy_postfile="-cr $6"
|
||||||
|
scr_dir=$7
|
||||||
|
dcoup=$8
|
||||||
|
nthread=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
nsolver=$1
|
||||||
|
mode=$2
|
||||||
|
gpu=$3
|
||||||
|
|
||||||
|
if [ "$slv" != "" -a "$slv" != "marc" ]; then
|
||||||
|
slv="-iam sfm"
|
||||||
|
else
|
||||||
|
slv=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$ndom_fea_solver" != "" -a "$ndom_fea_solver" != "1" ]; then
|
||||||
|
nprocds="-nprocds $ndom_fea_solver"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
if [ "$ndom_preprocessor" != "" -a "$ndom_preprocessor" != "1" ]; then
|
||||||
|
nprocd="-nprocd $ndom_preprocessor"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$srcfile" != "" -a "$srcfile" != "-" ]; then
|
||||||
|
# srcfile=`echo $srcfile | sed "s/$SRCEXT$//"`
|
||||||
|
case "$srcmeth" in
|
||||||
|
-)
|
||||||
|
srcfile="-u $srcfile"
|
||||||
|
;;
|
||||||
|
compsave)
|
||||||
|
srcfile="-u $srcfile -save y"
|
||||||
|
;;
|
||||||
|
runsaved)
|
||||||
|
srcfile=${srcfile%.*}".marc"
|
||||||
|
srcfile="-prog $srcfile"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
srcfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$restart" != "" -a "$restart" != "-" ]; then
|
||||||
|
restart=`echo $restart | sed "s/$RSTEXT$//"`
|
||||||
|
restart="-r $restart"
|
||||||
|
else
|
||||||
|
restart=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$postfile" != "" -a "$postfile" != "-" ]; then
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXT$//"`
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXTB$//"`
|
||||||
|
postfile="-pid $postfile"
|
||||||
|
else
|
||||||
|
postfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$viewfactorsfile" != "" -a "$viewfactorsfile" != "-" ]; then
|
||||||
|
viewfactorsfile=`echo $viewfactorsfile | sed "s/$VWFCEXT$//"`
|
||||||
|
viewfactorsfile="-vf $viewfactorsfile"
|
||||||
|
else
|
||||||
|
viewfactorsfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$hostfile" != "" -a "$hostfile" != "-" ]; then
|
||||||
|
hostfile="-ho $hostfile"
|
||||||
|
else
|
||||||
|
hostfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$compat" != "" -a "$compat" != "-" ]; then
|
||||||
|
compat="-co $compat"
|
||||||
|
else
|
||||||
|
compat=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$scr_dir" != "" -a "$scr_dir" != "-" ]; then
|
||||||
|
scr_dir="-sd $scr_dir"
|
||||||
|
else
|
||||||
|
scr_dir=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$dcoup" != "" -a "$dcoup" != "0" ]; then
|
||||||
|
dcoup="-dcoup $dcoup"
|
||||||
|
else
|
||||||
|
dcoup=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nthread" != "" -a "$nthread" != "0" -a "$nthread" != "1" ]; then
|
||||||
|
nthread="-nthread $nthread"
|
||||||
|
else
|
||||||
|
nthread=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nsolver" != "" -a "$nsolver" != "0" ]; then
|
||||||
|
nsolver="-nsolver $nsolver"
|
||||||
|
else
|
||||||
|
nsolver=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$mode" in
|
||||||
|
4) mode="-mo i4" ;;
|
||||||
|
8) mode="-mo i8" ;;
|
||||||
|
*) mode= ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ "$gpu" != "" -a "$gpu" != "-" ]; then
|
||||||
|
gpu="-gpu $gpu"
|
||||||
|
else
|
||||||
|
gpu=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f $job.cnt
|
||||||
|
rm -f $job.sts
|
||||||
|
rm -f $job.out
|
||||||
|
rm -f $job.log
|
||||||
|
|
||||||
|
# To prevent a mismatch with the python version used by the solver
|
||||||
|
# do *not* prepend $MENTAT_INSTALL_DIR/python/bin to environment variable PATH
|
||||||
|
# unset environment variables PYTHONHOME and PYTHONPATH
|
||||||
|
unset PYTHONHOME
|
||||||
|
unset PYTHONPATH
|
||||||
|
|
||||||
|
"${DIR}/tools/run_h_marc" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
||||||
|
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
||||||
|
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
||||||
|
$nthread $nsolver $mode $gpu > /dev/null 2>&1
|
||||||
|
sleep 1
|
||||||
|
exit 0
|
|
@ -0,0 +1,163 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# The exit status of this script is read by Mentat.
|
||||||
|
# Normal exit status is 0.
|
||||||
|
#
|
||||||
|
|
||||||
|
DIR=/msc/marc2012
|
||||||
|
if test $MARCDIR1
|
||||||
|
then
|
||||||
|
DIR=$MARCDIR1
|
||||||
|
fi
|
||||||
|
|
||||||
|
SRCEXT=.f
|
||||||
|
RSTEXT=.t08
|
||||||
|
PSTEXT=.t19
|
||||||
|
PSTEXTB=.t16
|
||||||
|
VWFCEXT=.vfs
|
||||||
|
|
||||||
|
slv=$1
|
||||||
|
version=$2
|
||||||
|
ndom_fea_solver=$3
|
||||||
|
ndom_preprocessor=$4
|
||||||
|
hostfile=$5
|
||||||
|
compat=$6
|
||||||
|
job=$7
|
||||||
|
srcfile=$8
|
||||||
|
srcmeth=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
restart=$1
|
||||||
|
postfile=$2
|
||||||
|
viewfactorsfile=$3
|
||||||
|
autorst=$4
|
||||||
|
copy_datfile="-ci $5"
|
||||||
|
copy_postfile="-cr $6"
|
||||||
|
scr_dir=$7
|
||||||
|
dcoup=$8
|
||||||
|
nthread=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
nsolver=$1
|
||||||
|
mode=$2
|
||||||
|
gpu=$3
|
||||||
|
|
||||||
|
if [ "$slv" != "" -a "$slv" != "marc" ]; then
|
||||||
|
slv="-iam sfm"
|
||||||
|
else
|
||||||
|
slv=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$ndom_fea_solver" != "" -a "$ndom_fea_solver" != "1" ]; then
|
||||||
|
nprocds="-nprocds $ndom_fea_solver"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
if [ "$ndom_preprocessor" != "" -a "$ndom_preprocessor" != "1" ]; then
|
||||||
|
nprocd="-nprocd $ndom_preprocessor"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$srcfile" != "" -a "$srcfile" != "-" ]; then
|
||||||
|
srcfile=`echo $srcfile | sed "s/$SRCEXT$//"`
|
||||||
|
case "$srcmeth" in
|
||||||
|
-)
|
||||||
|
srcfile="-u $srcfile"
|
||||||
|
;;
|
||||||
|
compsave)
|
||||||
|
srcfile="-u $srcfile -save y"
|
||||||
|
;;
|
||||||
|
runsaved)
|
||||||
|
srcfile="-prog $srcfile"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
srcfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$restart" != "" -a "$restart" != "-" ]; then
|
||||||
|
restart=`echo $restart | sed "s/$RSTEXT$//"`
|
||||||
|
restart="-r $restart"
|
||||||
|
else
|
||||||
|
restart=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$postfile" != "" -a "$postfile" != "-" ]; then
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXT$//"`
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXTB$//"`
|
||||||
|
postfile="-pid $postfile"
|
||||||
|
else
|
||||||
|
postfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$viewfactorsfile" != "" -a "$viewfactorsfile" != "-" ]; then
|
||||||
|
viewfactorsfile=`echo $viewfactorsfile | sed "s/$VWFCEXT$//"`
|
||||||
|
viewfactorsfile="-vf $viewfactorsfile"
|
||||||
|
else
|
||||||
|
viewfactorsfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$hostfile" != "" -a "$hostfile" != "-" ]; then
|
||||||
|
hostfile="-ho $hostfile"
|
||||||
|
else
|
||||||
|
hostfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$compat" != "" -a "$compat" != "-" ]; then
|
||||||
|
compat="-co $compat"
|
||||||
|
else
|
||||||
|
compat=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$scr_dir" != "" -a "$scr_dir" != "-" ]; then
|
||||||
|
scr_dir="-sd $scr_dir"
|
||||||
|
else
|
||||||
|
scr_dir=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$dcoup" != "" -a "$dcoup" != "0" ]; then
|
||||||
|
dcoup="-dcoup $dcoup"
|
||||||
|
else
|
||||||
|
dcoup=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nthread" != "" -a "$nthread" != "0" -a "$nthread" != "1" ]; then
|
||||||
|
nthread="-nthread $nthread"
|
||||||
|
else
|
||||||
|
nthread=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nsolver" != "" -a "$nsolver" != "0" ]; then
|
||||||
|
nsolver="-nsolver $nsolver"
|
||||||
|
else
|
||||||
|
nsolver=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$mode" in
|
||||||
|
4) mode="-mo i4" ;;
|
||||||
|
8) mode="-mo i8" ;;
|
||||||
|
*) mode= ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ "$gpu" != "" -a "$gpu" != "-" ]; then
|
||||||
|
gpu="-gpu $gpu"
|
||||||
|
else
|
||||||
|
gpu=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f $job.cnt
|
||||||
|
rm -f $job.sts
|
||||||
|
rm -f $job.out
|
||||||
|
rm -f $job.log
|
||||||
|
|
||||||
|
# To prevent a mismatch with the python version used by the solver
|
||||||
|
# do *not* prepend $MENTAT_INSTALL_DIR/python/bin to environment variable PATH
|
||||||
|
# unset environment variables PYTHONHOME and PYTHONPATH
|
||||||
|
unset PYTHONHOME
|
||||||
|
unset PYTHONPATH
|
||||||
|
|
||||||
|
"${DIR}/tools/run_marc" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
||||||
|
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
||||||
|
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
||||||
|
$nthread $nsolver $mode $gpu > /dev/null 2>&1
|
||||||
|
sleep 1
|
||||||
|
exit 0
|
|
@ -0,0 +1,164 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# The exit status of this script is read by Mentat.
|
||||||
|
# Normal exit status is 0.
|
||||||
|
#
|
||||||
|
|
||||||
|
DIR=%INSTALLDIR%/marc%VERSION%
|
||||||
|
if test $MARCDIR1
|
||||||
|
then
|
||||||
|
DIR=$MARCDIR1
|
||||||
|
fi
|
||||||
|
|
||||||
|
SRCEXT=.f
|
||||||
|
RSTEXT=.t08
|
||||||
|
PSTEXT=.t19
|
||||||
|
PSTEXTB=.t16
|
||||||
|
VWFCEXT=.vfs
|
||||||
|
|
||||||
|
slv=$1
|
||||||
|
version=$2
|
||||||
|
ndom_fea_solver=$3
|
||||||
|
ndom_preprocessor=$4
|
||||||
|
hostfile=$5
|
||||||
|
compat=$6
|
||||||
|
job=$7
|
||||||
|
srcfile=$8
|
||||||
|
srcmeth=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
restart=$1
|
||||||
|
postfile=$2
|
||||||
|
viewfactorsfile=$3
|
||||||
|
autorst=$4
|
||||||
|
copy_datfile="-ci $5"
|
||||||
|
copy_postfile="-cr $6"
|
||||||
|
scr_dir=$7
|
||||||
|
dcoup=$8
|
||||||
|
nthread=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
nsolver=$1
|
||||||
|
mode=$2
|
||||||
|
gpu=$3
|
||||||
|
|
||||||
|
if [ "$slv" != "" -a "$slv" != "marc" ]; then
|
||||||
|
slv="-iam sfm"
|
||||||
|
else
|
||||||
|
slv=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$ndom_fea_solver" != "" -a "$ndom_fea_solver" != "1" ]; then
|
||||||
|
nprocds="-nprocds $ndom_fea_solver"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
if [ "$ndom_preprocessor" != "" -a "$ndom_preprocessor" != "1" ]; then
|
||||||
|
nprocd="-nprocd $ndom_preprocessor"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$srcfile" != "" -a "$srcfile" != "-" ]; then
|
||||||
|
# srcfile=`echo $srcfile | sed "s/$SRCEXT$//"`
|
||||||
|
case "$srcmeth" in
|
||||||
|
-)
|
||||||
|
srcfile="-u $srcfile"
|
||||||
|
;;
|
||||||
|
compsave)
|
||||||
|
srcfile="-u $srcfile -save y"
|
||||||
|
;;
|
||||||
|
runsaved)
|
||||||
|
srcfile=${srcfile%.*}".marc"
|
||||||
|
srcfile="-prog $srcfile"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
srcfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$restart" != "" -a "$restart" != "-" ]; then
|
||||||
|
restart=`echo $restart | sed "s/$RSTEXT$//"`
|
||||||
|
restart="-r $restart"
|
||||||
|
else
|
||||||
|
restart=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$postfile" != "" -a "$postfile" != "-" ]; then
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXT$//"`
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXTB$//"`
|
||||||
|
postfile="-pid $postfile"
|
||||||
|
else
|
||||||
|
postfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$viewfactorsfile" != "" -a "$viewfactorsfile" != "-" ]; then
|
||||||
|
viewfactorsfile=`echo $viewfactorsfile | sed "s/$VWFCEXT$//"`
|
||||||
|
viewfactorsfile="-vf $viewfactorsfile"
|
||||||
|
else
|
||||||
|
viewfactorsfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$hostfile" != "" -a "$hostfile" != "-" ]; then
|
||||||
|
hostfile="-ho $hostfile"
|
||||||
|
else
|
||||||
|
hostfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$compat" != "" -a "$compat" != "-" ]; then
|
||||||
|
compat="-co $compat"
|
||||||
|
else
|
||||||
|
compat=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$scr_dir" != "" -a "$scr_dir" != "-" ]; then
|
||||||
|
scr_dir="-sd $scr_dir"
|
||||||
|
else
|
||||||
|
scr_dir=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$dcoup" != "" -a "$dcoup" != "0" ]; then
|
||||||
|
dcoup="-dcoup $dcoup"
|
||||||
|
else
|
||||||
|
dcoup=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nthread" != "" -a "$nthread" != "0" -a "$nthread" != "1" ]; then
|
||||||
|
nthread="-nthread $nthread"
|
||||||
|
else
|
||||||
|
nthread=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nsolver" != "" -a "$nsolver" != "0" ]; then
|
||||||
|
nsolver="-nsolver $nsolver"
|
||||||
|
else
|
||||||
|
nsolver=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$mode" in
|
||||||
|
4) mode="-mo i4" ;;
|
||||||
|
8) mode="-mo i8" ;;
|
||||||
|
*) mode= ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ "$gpu" != "" -a "$gpu" != "-" ]; then
|
||||||
|
gpu="-gpu $gpu"
|
||||||
|
else
|
||||||
|
gpu=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f $job.cnt
|
||||||
|
rm -f $job.sts
|
||||||
|
rm -f $job.out
|
||||||
|
rm -f $job.log
|
||||||
|
|
||||||
|
# To prevent a mismatch with the python version used by the solver
|
||||||
|
# do *not* prepend $MENTAT_INSTALL_DIR/python/bin to environment variable PATH
|
||||||
|
# unset environment variables PYTHONHOME and PYTHONPATH
|
||||||
|
unset PYTHONHOME
|
||||||
|
unset PYTHONPATH
|
||||||
|
|
||||||
|
"${DIR}/tools/run_marc" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
||||||
|
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
||||||
|
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
||||||
|
$nthread $nsolver $mode $gpu > /dev/null 2>&1
|
||||||
|
sleep 1
|
||||||
|
exit 0
|
|
@ -0,0 +1,163 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# The exit status of this script is read by Mentat.
|
||||||
|
# Normal exit status is 0.
|
||||||
|
#
|
||||||
|
|
||||||
|
DIR=/msc/marc2012
|
||||||
|
if test $MARCDIR2
|
||||||
|
then
|
||||||
|
DIR=$MARCDIR2
|
||||||
|
fi
|
||||||
|
|
||||||
|
SRCEXT=.f
|
||||||
|
RSTEXT=.t08
|
||||||
|
PSTEXT=.t19
|
||||||
|
PSTEXTB=.t16
|
||||||
|
VWFCEXT=.vfs
|
||||||
|
|
||||||
|
slv=$1
|
||||||
|
version=$2
|
||||||
|
ndom_fea_solver=$3
|
||||||
|
ndom_preprocessor=$4
|
||||||
|
hostfile=$5
|
||||||
|
compat=$6
|
||||||
|
job=$7
|
||||||
|
srcfile=$8
|
||||||
|
srcmeth=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
restart=$1
|
||||||
|
postfile=$2
|
||||||
|
viewfactorsfile=$3
|
||||||
|
autorst=$4
|
||||||
|
copy_datfile="-ci $5"
|
||||||
|
copy_postfile="-cr $6"
|
||||||
|
scr_dir=$7
|
||||||
|
dcoup=$8
|
||||||
|
nthread=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
nsolver=$1
|
||||||
|
mode=$2
|
||||||
|
gpu=$3
|
||||||
|
|
||||||
|
if [ "$slv" != "" -a "$slv" != "marc" ]; then
|
||||||
|
slv="-iam sfm"
|
||||||
|
else
|
||||||
|
slv=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$ndom_fea_solver" != "" -a "$ndom_fea_solver" != "1" ]; then
|
||||||
|
nprocds="-nprocds $ndom_fea_solver"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
if [ "$ndom_preprocessor" != "" -a "$ndom_preprocessor" != "1" ]; then
|
||||||
|
nprocd="-nprocd $ndom_preprocessor"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$srcfile" != "" -a "$srcfile" != "-" ]; then
|
||||||
|
srcfile=`echo $srcfile | sed "s/$SRCEXT$//"`
|
||||||
|
case "$srcmeth" in
|
||||||
|
-)
|
||||||
|
srcfile="-u $srcfile"
|
||||||
|
;;
|
||||||
|
compsave)
|
||||||
|
srcfile="-u $srcfile -save y"
|
||||||
|
;;
|
||||||
|
runsaved)
|
||||||
|
srcfile="-prog $srcfile"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
srcfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$restart" != "" -a "$restart" != "-" ]; then
|
||||||
|
restart=`echo $restart | sed "s/$RSTEXT$//"`
|
||||||
|
restart="-r $restart"
|
||||||
|
else
|
||||||
|
restart=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$postfile" != "" -a "$postfile" != "-" ]; then
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXT$//"`
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXTB$//"`
|
||||||
|
postfile="-pid $postfile"
|
||||||
|
else
|
||||||
|
postfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$viewfactorsfile" != "" -a "$viewfactorsfile" != "-" ]; then
|
||||||
|
viewfactorsfile=`echo $viewfactorsfile | sed "s/$VWFCEXT$//"`
|
||||||
|
viewfactorsfile="-vf $viewfactorsfile"
|
||||||
|
else
|
||||||
|
viewfactorsfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$hostfile" != "" -a "$hostfile" != "-" ]; then
|
||||||
|
hostfile="-ho $hostfile"
|
||||||
|
else
|
||||||
|
hostfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$compat" != "" -a "$compat" != "-" ]; then
|
||||||
|
compat="-co $compat"
|
||||||
|
else
|
||||||
|
compat=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$scr_dir" != "" -a "$scr_dir" != "-" ]; then
|
||||||
|
scr_dir="-sd $scr_dir"
|
||||||
|
else
|
||||||
|
scr_dir=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$dcoup" != "" -a "$dcoup" != "0" ]; then
|
||||||
|
dcoup="-dcoup $dcoup"
|
||||||
|
else
|
||||||
|
dcoup=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nthread" != "" -a "$nthread" != "0" -a "$nthread" != "1" ]; then
|
||||||
|
nthread="-nthread $nthread"
|
||||||
|
else
|
||||||
|
nthread=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nsolver" != "" -a "$nsolver" != "0" ]; then
|
||||||
|
nsolver="-nsolver $nsolver"
|
||||||
|
else
|
||||||
|
nsolver=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$mode" in
|
||||||
|
4) mode="-mo i4" ;;
|
||||||
|
8) mode="-mo i8" ;;
|
||||||
|
*) mode= ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ "$gpu" != "" -a "$gpu" != "-" ]; then
|
||||||
|
gpu="-gpu $gpu"
|
||||||
|
else
|
||||||
|
gpu=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f $job.cnt
|
||||||
|
rm -f $job.sts
|
||||||
|
rm -f $job.out
|
||||||
|
rm -f $job.log
|
||||||
|
|
||||||
|
# To prevent a mismatch with the python version used by the solver
|
||||||
|
# do *not* prepend $MENTAT_INSTALL_DIR/python/bin to environment variable PATH
|
||||||
|
# unset environment variables PYTHONHOME and PYTHONPATH
|
||||||
|
unset PYTHONHOME
|
||||||
|
unset PYTHONPATH
|
||||||
|
|
||||||
|
"${DIR}/tools/run_marc" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
||||||
|
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
||||||
|
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
||||||
|
$nthread $nsolver $mode $gpu > /dev/null 2>&1
|
||||||
|
sleep 1
|
||||||
|
exit 0
|
|
@ -0,0 +1,164 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# The exit status of this script is read by Mentat.
|
||||||
|
# Normal exit status is 0.
|
||||||
|
#
|
||||||
|
|
||||||
|
DIR=%INSTALLDIR%/marc%VERSION%
|
||||||
|
if test $MARCDIR1
|
||||||
|
then
|
||||||
|
DIR=$MARCDIR1
|
||||||
|
fi
|
||||||
|
|
||||||
|
SRCEXT=.f
|
||||||
|
RSTEXT=.t08
|
||||||
|
PSTEXT=.t19
|
||||||
|
PSTEXTB=.t16
|
||||||
|
VWFCEXT=.vfs
|
||||||
|
|
||||||
|
slv=$1
|
||||||
|
version=$2
|
||||||
|
ndom_fea_solver=$3
|
||||||
|
ndom_preprocessor=$4
|
||||||
|
hostfile=$5
|
||||||
|
compat=$6
|
||||||
|
job=$7
|
||||||
|
srcfile=$8
|
||||||
|
srcmeth=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
restart=$1
|
||||||
|
postfile=$2
|
||||||
|
viewfactorsfile=$3
|
||||||
|
autorst=$4
|
||||||
|
copy_datfile="-ci $5"
|
||||||
|
copy_postfile="-cr $6"
|
||||||
|
scr_dir=$7
|
||||||
|
dcoup=$8
|
||||||
|
nthread=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
nsolver=$1
|
||||||
|
mode=$2
|
||||||
|
gpu=$3
|
||||||
|
|
||||||
|
if [ "$slv" != "" -a "$slv" != "marc" ]; then
|
||||||
|
slv="-iam sfm"
|
||||||
|
else
|
||||||
|
slv=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$ndom_fea_solver" != "" -a "$ndom_fea_solver" != "1" ]; then
|
||||||
|
nprocds="-nprocds $ndom_fea_solver"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
if [ "$ndom_preprocessor" != "" -a "$ndom_preprocessor" != "1" ]; then
|
||||||
|
nprocd="-nprocd $ndom_preprocessor"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$srcfile" != "" -a "$srcfile" != "-" ]; then
|
||||||
|
# srcfile=`echo $srcfile | sed "s/$SRCEXT$//"`
|
||||||
|
case "$srcmeth" in
|
||||||
|
-)
|
||||||
|
srcfile="-u $srcfile"
|
||||||
|
;;
|
||||||
|
compsave)
|
||||||
|
srcfile="-u $srcfile -save y"
|
||||||
|
;;
|
||||||
|
runsaved)
|
||||||
|
srcfile=${srcfile%.*}".marc"
|
||||||
|
srcfile="-prog $srcfile"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
srcfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$restart" != "" -a "$restart" != "-" ]; then
|
||||||
|
restart=`echo $restart | sed "s/$RSTEXT$//"`
|
||||||
|
restart="-r $restart"
|
||||||
|
else
|
||||||
|
restart=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$postfile" != "" -a "$postfile" != "-" ]; then
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXT$//"`
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXTB$//"`
|
||||||
|
postfile="-pid $postfile"
|
||||||
|
else
|
||||||
|
postfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$viewfactorsfile" != "" -a "$viewfactorsfile" != "-" ]; then
|
||||||
|
viewfactorsfile=`echo $viewfactorsfile | sed "s/$VWFCEXT$//"`
|
||||||
|
viewfactorsfile="-vf $viewfactorsfile"
|
||||||
|
else
|
||||||
|
viewfactorsfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$hostfile" != "" -a "$hostfile" != "-" ]; then
|
||||||
|
hostfile="-ho $hostfile"
|
||||||
|
else
|
||||||
|
hostfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$compat" != "" -a "$compat" != "-" ]; then
|
||||||
|
compat="-co $compat"
|
||||||
|
else
|
||||||
|
compat=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$scr_dir" != "" -a "$scr_dir" != "-" ]; then
|
||||||
|
scr_dir="-sd $scr_dir"
|
||||||
|
else
|
||||||
|
scr_dir=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$dcoup" != "" -a "$dcoup" != "0" ]; then
|
||||||
|
dcoup="-dcoup $dcoup"
|
||||||
|
else
|
||||||
|
dcoup=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nthread" != "" -a "$nthread" != "0" -a "$nthread" != "1" ]; then
|
||||||
|
nthread="-nthread $nthread"
|
||||||
|
else
|
||||||
|
nthread=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nsolver" != "" -a "$nsolver" != "0" ]; then
|
||||||
|
nsolver="-nsolver $nsolver"
|
||||||
|
else
|
||||||
|
nsolver=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$mode" in
|
||||||
|
4) mode="-mo i4" ;;
|
||||||
|
8) mode="-mo i8" ;;
|
||||||
|
*) mode= ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ "$gpu" != "" -a "$gpu" != "-" ]; then
|
||||||
|
gpu="-gpu $gpu"
|
||||||
|
else
|
||||||
|
gpu=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f $job.cnt
|
||||||
|
rm -f $job.sts
|
||||||
|
rm -f $job.out
|
||||||
|
rm -f $job.log
|
||||||
|
|
||||||
|
# To prevent a mismatch with the python version used by the solver
|
||||||
|
# do *not* prepend $MENTAT_INSTALL_DIR/python/bin to environment variable PATH
|
||||||
|
# unset environment variables PYTHONHOME and PYTHONPATH
|
||||||
|
unset PYTHONHOME
|
||||||
|
unset PYTHONPATH
|
||||||
|
|
||||||
|
"${DIR}/tools/run_mp_marc" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
||||||
|
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
||||||
|
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
||||||
|
$nthread $nsolver $mode $gpu > /dev/null 2>&1
|
||||||
|
sleep 1
|
||||||
|
exit 0
|
|
@ -0,0 +1,161 @@
|
||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# The exit status of this script is read by Mentat.
|
||||||
|
# Normal exit status is 0.
|
||||||
|
#
|
||||||
|
# This is an example of remote execution of MARC using NFS
|
||||||
|
#
|
||||||
|
|
||||||
|
DIR=/msc/marc2012
|
||||||
|
|
||||||
|
SRCEXT=.f
|
||||||
|
RSTEXT=.t08
|
||||||
|
PSTEXT=.t19
|
||||||
|
PSTEXTB=.t16
|
||||||
|
VWFCEXT=.vfs
|
||||||
|
|
||||||
|
# Customize the following two lines:
|
||||||
|
rhost=zippy
|
||||||
|
job=/mounts/linus$PWD/$6
|
||||||
|
|
||||||
|
slv=$1
|
||||||
|
version=$2
|
||||||
|
ndom_fea_solver=$3
|
||||||
|
ndom_preprocessor=$4
|
||||||
|
hostfile=$5
|
||||||
|
compat=$6
|
||||||
|
srcfile=$8
|
||||||
|
srcmeth=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
restart=$1
|
||||||
|
postfile=$2
|
||||||
|
viewfactorsfile=$3
|
||||||
|
autorst=$4
|
||||||
|
copy_datfile="-ci $5"
|
||||||
|
copy_postfile="-cr $6"
|
||||||
|
scr_dir=$7
|
||||||
|
dcoup=$8
|
||||||
|
nthread=$9
|
||||||
|
shift 9 # cannot use $10, $11, ...
|
||||||
|
nsolver=$1
|
||||||
|
mode=$2
|
||||||
|
gpu=$3
|
||||||
|
|
||||||
|
if [ "$slv" != "" -a "$slv" != "marc" ]; then
|
||||||
|
slv="-iam sfm"
|
||||||
|
else
|
||||||
|
slv=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$ndom_fea_solver" != "" -a "$ndom_fea_solver" != "1" ]; then
|
||||||
|
nprocds="-nprocds $ndom_fea_solver"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
if [ "$ndom_preprocessor" != "" -a "$ndom_preprocessor" != "1" ]; then
|
||||||
|
nprocd="-nprocd $ndom_preprocessor"
|
||||||
|
else
|
||||||
|
nprocd=""
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$srcfile" != "" -a "$srcfile" != "-" ]; then
|
||||||
|
srcfile=`echo $srcfile | sed "s/$SRCEXT$//"`
|
||||||
|
case "$srcmeth" in
|
||||||
|
-)
|
||||||
|
srcfile="-u $srcfile"
|
||||||
|
;;
|
||||||
|
compsave)
|
||||||
|
srcfile="-u $srcfile -save y"
|
||||||
|
;;
|
||||||
|
runsaved)
|
||||||
|
srcfile="-prog $srcfile"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
srcfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$restart" != "" -a "$restart" != "-" ]; then
|
||||||
|
restart=`echo $restart | sed "s/$RSTEXT$//"`
|
||||||
|
restart="-r $restart"
|
||||||
|
else
|
||||||
|
restart=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$postfile" != "" -a "$postfile" != "-" ]; then
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXT$//"`
|
||||||
|
postfile=`echo $postfile | sed "s/$PSTEXTB$//"`
|
||||||
|
postfile="-pid $postfile"
|
||||||
|
else
|
||||||
|
postfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$viewfactorsfile" != "" -a "$viewfactorsfile" != "-" ]; then
|
||||||
|
viewfactorsfile=`echo $viewfactorsfile | sed "s/$VWFCEXT$//"`
|
||||||
|
viewfactorsfile="-vf $viewfactorsfile"
|
||||||
|
else
|
||||||
|
viewfactorsfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$hostfile" != "" -a "$hostfile" != "-" ]; then
|
||||||
|
hostfile="-ho $hostfile"
|
||||||
|
else
|
||||||
|
hostfile=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$compat" != "" -a "$compat" != "-" ]; then
|
||||||
|
compat="-co $compat"
|
||||||
|
else
|
||||||
|
compat=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$scr_dir" != "" -a "$scr_dir" != "-" ]; then
|
||||||
|
scr_dir="-sd $scr_dir"
|
||||||
|
else
|
||||||
|
scr_dir=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$dcoup" != "" -a "$dcoup" != "0" ]; then
|
||||||
|
dcoup="-dcoup $dcoup"
|
||||||
|
else
|
||||||
|
dcoup=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nthread" != "" -a "$nthread" != "0" -a "$nthread" != "1" ]; then
|
||||||
|
nthread="-nthread $nthread"
|
||||||
|
else
|
||||||
|
nthread=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$nsolver" != "" -a "$nsolver" != "0" ]; then
|
||||||
|
nsolver="-nsolver $nsolver"
|
||||||
|
else
|
||||||
|
nsolver=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$mode" in
|
||||||
|
4) mode="-mo i4" ;;
|
||||||
|
8) mode="-mo i8" ;;
|
||||||
|
*) mode= ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ "$gpu" != "" -a "$gpu" != "-" ]; then
|
||||||
|
gpu="-gpu $gpu"
|
||||||
|
else
|
||||||
|
gpu=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f $job.cnt
|
||||||
|
|
||||||
|
# To prevent a mismatch with the python version used by the solver
|
||||||
|
# do *not* prepend $MENTAT_INSTALL_DIR/python/bin to environment variable PATH
|
||||||
|
# unset environment variables PYTHONHOME and PYTHONPATH
|
||||||
|
unset PYTHONHOME
|
||||||
|
unset PYTHONPATH
|
||||||
|
|
||||||
|
rsh $rhost marc $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
||||||
|
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
||||||
|
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
||||||
|
$nthread $nsolver $mode $gpu > /dev/null 2>&1
|
||||||
|
sleep 1
|
||||||
|
exit 0
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue