using up-to-date development since Abaqus exp has been removed
This commit is contained in:
parent
a9845c4bf8
commit
88b9da1973
|
@ -7,10 +7,7 @@ stages:
|
||||||
- compileSpectralGNU
|
- compileSpectralGNU
|
||||||
- prepareSpectral
|
- prepareSpectral
|
||||||
- spectral
|
- spectral
|
||||||
- compileMarc2014
|
- compileMarc2017
|
||||||
- compileMarc2014.2
|
|
||||||
- compileMarc2015
|
|
||||||
- compileMarc2016
|
|
||||||
- marc
|
- marc
|
||||||
- compileAbaqus2016
|
- compileAbaqus2016
|
||||||
- compileAbaqus2017
|
- compileAbaqus2017
|
||||||
|
@ -72,13 +69,10 @@ variables:
|
||||||
# ++++++++++++ FEM +++++++++++++++++++++++++++++++++++++++++++++++++++
|
# ++++++++++++ FEM +++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
Abaqus2016: "FEM/Abaqus/2016"
|
Abaqus2016: "FEM/Abaqus/2016"
|
||||||
Abaqus2017: "FEM/Abaqus/2017"
|
Abaqus2017: "FEM/Abaqus/2017"
|
||||||
MSC2014: "FEM/MSC/2014"
|
MSC2017: "FEM/MSC/2017"
|
||||||
MSC2014_2: "FEM/MSC/2014.2"
|
|
||||||
MSC2015: "FEM/MSC/2015"
|
|
||||||
MSC2016: "FEM/MSC/2016"
|
|
||||||
# ------------ Defaults ----------------------------------------------
|
# ------------ Defaults ----------------------------------------------
|
||||||
Abaqus: "$Abaqus2017"
|
Abaqus: "$Abaqus2017"
|
||||||
MSC: "$MSC2016"
|
MSC: "$MSC2017"
|
||||||
# ++++++++++++ Documentation +++++++++++++++++++++++++++++++++++++++++
|
# ++++++++++++ Documentation +++++++++++++++++++++++++++++++++++++++++
|
||||||
Doxygen1_8_13: "Documentation/Doxygen/1.8.13"
|
Doxygen1_8_13: "Documentation/Doxygen/1.8.13"
|
||||||
# ------------ Defaults ----------------------------------------------
|
# ------------ Defaults ----------------------------------------------
|
||||||
|
@ -331,42 +325,13 @@ TextureComponents:
|
||||||
- master
|
- master
|
||||||
- release
|
- release
|
||||||
|
|
||||||
###################################################################################################
|
|
||||||
Marc_compileIfort2014:
|
|
||||||
stage: compileMarc2014
|
|
||||||
script:
|
|
||||||
- module load $IntelCompiler16_0 $MSC2014
|
|
||||||
- Marc_compileIfort/test.py -m 2014
|
|
||||||
except:
|
|
||||||
- master
|
|
||||||
- release
|
|
||||||
|
|
||||||
###################################################################################################
|
###################################################################################################
|
||||||
Marc_compileIfort2014.2:
|
Marc_compileIfort2017:
|
||||||
stage: compileMarc2014.2
|
stage: compileMarc2017
|
||||||
script:
|
script:
|
||||||
- module load $IntelCompiler16_0 $MSC2014_2
|
- module load $IntelCompiler17_0 $MSC2017
|
||||||
- Marc_compileIfort/test.py -m 2014.2
|
- Marc_compileIfort/test.py -m 2017
|
||||||
except:
|
|
||||||
- master
|
|
||||||
- release
|
|
||||||
|
|
||||||
###################################################################################################
|
|
||||||
Marc_compileIfort2015:
|
|
||||||
stage: compileMarc2015
|
|
||||||
script:
|
|
||||||
- module load $IntelCompiler16_0 $MSC2015
|
|
||||||
- Marc_compileIfort/test.py -m 2015
|
|
||||||
except:
|
|
||||||
- master
|
|
||||||
- release
|
|
||||||
|
|
||||||
###################################################################################################
|
|
||||||
Marc_compileIfort2016:
|
|
||||||
stage: compileMarc2016
|
|
||||||
script:
|
|
||||||
- module load $IntelCompiler16_0 $MSC2016
|
|
||||||
- Marc_compileIfort/test.py -m 2016
|
|
||||||
except:
|
except:
|
||||||
- master
|
- master
|
||||||
- release
|
- release
|
||||||
|
@ -375,7 +340,7 @@ Marc_compileIfort2016:
|
||||||
Hex_elastic:
|
Hex_elastic:
|
||||||
stage: marc
|
stage: marc
|
||||||
script:
|
script:
|
||||||
- module load $IntelCompiler16_0 $MSC
|
- module load $IntelCompiler17_0 $MSC
|
||||||
- Hex_elastic/test.py
|
- Hex_elastic/test.py
|
||||||
except:
|
except:
|
||||||
- master
|
- master
|
||||||
|
@ -384,7 +349,7 @@ Hex_elastic:
|
||||||
CubicFCC_elastic:
|
CubicFCC_elastic:
|
||||||
stage: marc
|
stage: marc
|
||||||
script:
|
script:
|
||||||
- module load $IntelCompiler16_0 $MSC
|
- module load $IntelCompiler17_0 $MSC
|
||||||
- CubicFCC_elastic/test.py
|
- CubicFCC_elastic/test.py
|
||||||
except:
|
except:
|
||||||
- master
|
- master
|
||||||
|
@ -393,7 +358,7 @@ CubicFCC_elastic:
|
||||||
CubicBCC_elastic:
|
CubicBCC_elastic:
|
||||||
stage: marc
|
stage: marc
|
||||||
script:
|
script:
|
||||||
- module load $IntelCompiler16_0 $MSC
|
- module load $IntelCompiler17_0 $MSC
|
||||||
- CubicBCC_elastic/test.py
|
- CubicBCC_elastic/test.py
|
||||||
except:
|
except:
|
||||||
- master
|
- master
|
||||||
|
@ -402,7 +367,7 @@ CubicBCC_elastic:
|
||||||
J2_plasticBehavior:
|
J2_plasticBehavior:
|
||||||
stage: marc
|
stage: marc
|
||||||
script:
|
script:
|
||||||
- module load $IntelCompiler16_0 $MSC
|
- module load $IntelCompiler17_0 $MSC
|
||||||
- J2_plasticBehavior/test.py
|
- J2_plasticBehavior/test.py
|
||||||
except:
|
except:
|
||||||
- master
|
- master
|
||||||
|
@ -459,20 +424,11 @@ SpectralRuntime:
|
||||||
- release
|
- release
|
||||||
|
|
||||||
###################################################################################################
|
###################################################################################################
|
||||||
AbaqusExp:
|
|
||||||
stage: createDocumentation
|
|
||||||
script:
|
|
||||||
- module load $IntelCompiler $MPICH_Intel $PETSc_MPICH_Intel $Doxygen
|
|
||||||
- $DAMASKROOT/PRIVATE/documenting/runDoxygen.sh $DAMASKROOT abaqus_exp
|
|
||||||
except:
|
|
||||||
- master
|
|
||||||
- release
|
|
||||||
|
|
||||||
AbaqusStd:
|
AbaqusStd:
|
||||||
stage: createDocumentation
|
stage: createDocumentation
|
||||||
script:
|
script:
|
||||||
- module load $IntelCompiler $MPICH_Intel $PETSc_MPICH_Intel $Doxygen
|
- module load $IntelCompiler $MPICH_Intel $PETSc_MPICH_Intel $Doxygen
|
||||||
- $DAMASKROOT/PRIVATE/documenting/runDoxygen.sh $DAMASKROOT abaqus_std
|
- $DAMASKROOT/PRIVATE/documenting/runDoxygen.sh $DAMASKROOT abaqus
|
||||||
except:
|
except:
|
||||||
- master
|
- master
|
||||||
- release
|
- release
|
||||||
|
|
2
CONFIG
2
CONFIG
|
@ -6,6 +6,6 @@ set DAMASK_BIN = ${DAMASK_ROOT}/bin
|
||||||
set DAMASK_NUM_THREADS = 4
|
set DAMASK_NUM_THREADS = 4
|
||||||
|
|
||||||
set MSC_ROOT = /opt/msc
|
set MSC_ROOT = /opt/msc
|
||||||
set MARC_VERSION = 2016
|
set MARC_VERSION = 2017
|
||||||
|
|
||||||
set ABAQUS_VERSION = 2017
|
set ABAQUS_VERSION = 2017
|
||||||
|
|
2
PRIVATE
2
PRIVATE
|
@ -1 +1 @@
|
||||||
Subproject commit 704e2fc50dff343b085ea3d469f30bb3e2acae5a
|
Subproject commit a1f17cc3cad4ef0d620fb8633794cdcc9133120c
|
|
@ -3,15 +3,7 @@
|
||||||
|
|
||||||
set CALLED=($_)
|
set CALLED=($_)
|
||||||
set DIRNAME=`dirname $CALLED[2]`
|
set DIRNAME=`dirname $CALLED[2]`
|
||||||
|
set DAMASK_ROOT=`python -c "import os,sys; print(os.path.realpath(os.path.expanduser(sys.argv[1])))" $DIRNAME"/../"`
|
||||||
# transition compatibility (renamed $DAMASK_ROOT/DAMASK_env.csh to $DAMASK_ROOT/env/DAMASK.csh)
|
|
||||||
set FILENAME=`basename $CALLED[2]`
|
|
||||||
if ($FILENAME == "DAMASK.csh") then
|
|
||||||
set DIRNAME=$DIRNAME"/../"
|
|
||||||
endif
|
|
||||||
|
|
||||||
set DAMASK_ROOT=`python -c "import os,sys; print(os.path.realpath(os.path.expanduser(sys.argv[1])))" $DIRNAME`
|
|
||||||
|
|
||||||
|
|
||||||
source $DAMASK_ROOT/CONFIG
|
source $DAMASK_ROOT/CONFIG
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# usage: source DAMASK.sh
|
# usage: source DAMASK.sh
|
||||||
|
|
||||||
function canonicalPath {
|
function canonicalPath {
|
||||||
python -c "import os,sys; print(os.path.realpath(os.path.expanduser(sys.argv[1])))" $1
|
python -c "import os,sys; print(os.path.normpath(os.path.realpath(os.path.expanduser(sys.argv[1]))))" $1
|
||||||
}
|
}
|
||||||
|
|
||||||
function blink {
|
function blink {
|
||||||
|
@ -17,12 +17,8 @@ else
|
||||||
DAMASK_ROOT=${STAT##* }
|
DAMASK_ROOT=${STAT##* }
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# transition compatibility (renamed $DAMASK_ROOT/DAMASK_env.sh to $DAMASK_ROOT/env/DAMASK.sh)
|
DAMASK_ROOT=$(canonicalPath "$DAMASK_ROOT/../")
|
||||||
if [ ${BASH_SOURCE##*/} == "DAMASK.sh" ]; then
|
|
||||||
DAMASK_ROOT="$DAMASK_ROOT/.."
|
|
||||||
fi
|
|
||||||
|
|
||||||
DAMASK_ROOT=$(canonicalPath $DAMASK_ROOT)
|
|
||||||
|
|
||||||
# shorthand command to change to DAMASK_ROOT directory
|
# shorthand command to change to DAMASK_ROOT directory
|
||||||
eval "function DAMASK_root() { cd $DAMASK_ROOT; }"
|
eval "function DAMASK_root() { cd $DAMASK_ROOT; }"
|
||||||
|
|
|
@ -2,15 +2,14 @@
|
||||||
# usage: source DAMASK.zsh
|
# usage: source DAMASK.zsh
|
||||||
|
|
||||||
function canonicalPath {
|
function canonicalPath {
|
||||||
python -c "import os,sys; print(os.path.realpath(os.path.expanduser(sys.argv[1])))" $1
|
python -c "import os,sys; print(os.path.normpath(os.path.realpath(os.path.expanduser(sys.argv[1]))))" $1
|
||||||
}
|
}
|
||||||
|
|
||||||
# transition compatibility (renamed $DAMASK_ROOT/DAMASK_env.zsh to $DAMASK_ROOT/env/DAMASK.zsh)
|
function blink {
|
||||||
if [ ${0:t:r} = 'DAMASK' ]; then
|
echo -e "\033[2;5m$1\033[0m"
|
||||||
DAMASK_ROOT=${0:a:h}'/..'
|
}
|
||||||
else
|
|
||||||
DAMASK_ROOT=${0:a:h}
|
DAMASK_ROOT=$(canonicalPath "${0:a:h}'/..")
|
||||||
fi
|
|
||||||
|
|
||||||
# shorthand command to change to DAMASK_ROOT directory
|
# shorthand command to change to DAMASK_ROOT directory
|
||||||
eval "function DAMASK_root() { cd $DAMASK_ROOT; }"
|
eval "function DAMASK_root() { cd $DAMASK_ROOT; }"
|
||||||
|
@ -25,13 +24,13 @@ unset -f set
|
||||||
# add DAMASK_BIN if present
|
# add DAMASK_BIN if present
|
||||||
[ "x$DAMASK_BIN != x" ] && PATH=$DAMASK_BIN:$PATH
|
[ "x$DAMASK_BIN != x" ] && PATH=$DAMASK_BIN:$PATH
|
||||||
|
|
||||||
SOLVER=$(type -p DAMASK_spectral || true 2>/dev/null)
|
SOLVER=$(which DAMASK_spectral || true 2>/dev/null)
|
||||||
[ "x$SOLVER == x" ] && SOLVER='Not found!'
|
[ "x$SOLVER" = "x" ] && SOLVER=$(blink 'Not found!')
|
||||||
|
|
||||||
PROCESSING=$(type -p postResults || true 2>/dev/null)
|
PROCESSING=$(which postResults || true 2>/dev/null)
|
||||||
[ "x$PROCESSING == x" ] && PROCESSING='Not found!'
|
[ "x$PROCESSING" = "x" ] && PROCESSING=$(blink 'Not found!')
|
||||||
|
|
||||||
[ "x$DAMASK_NUM_THREADS == x" ] && DAMASK_NUM_THREADS=1
|
[ "x$DAMASK_NUM_THREADS" = "x" ] && DAMASK_NUM_THREADS=1
|
||||||
|
|
||||||
# currently, there is no information that unlimited causes problems
|
# currently, there is no information that unlimited causes problems
|
||||||
# still, http://software.intel.com/en-us/forums/topic/501500 suggest to fix it
|
# still, http://software.intel.com/en-us/forums/topic/501500 suggest to fix it
|
||||||
|
@ -52,16 +51,18 @@ if [ ! -z "$PS1" ]; then
|
||||||
echo "DAMASK $DAMASK_ROOT"
|
echo "DAMASK $DAMASK_ROOT"
|
||||||
echo "Spectral Solver $SOLVER"
|
echo "Spectral Solver $SOLVER"
|
||||||
echo "Post Processing $PROCESSING"
|
echo "Post Processing $PROCESSING"
|
||||||
echo "Multithreading DAMASK_NUM_THREADS=$DAMASK_NUM_THREADS"
|
|
||||||
if [ "x$PETSC_DIR" != "x" ]; then
|
if [ "x$PETSC_DIR" != "x" ]; then
|
||||||
echo "PETSc location $PETSC_DIR"
|
echo -n "PETSc location "
|
||||||
|
[ -d $PETSC_DIR ] && echo $PETSC_DIR || blink $PETSC_DIR
|
||||||
[[ $(canonicalPath "$PETSC_DIR") == $PETSC_DIR ]] \
|
[[ $(canonicalPath "$PETSC_DIR") == $PETSC_DIR ]] \
|
||||||
|| echo " ~~> "$(canonicalPath "$PETSC_DIR")
|
|| echo " ~~> "$(canonicalPath "$PETSC_DIR")
|
||||||
fi
|
fi
|
||||||
[[ "x$PETSC_ARCH" == "x" ]] \
|
[[ "x$PETSC_ARCH" == "x" ]] \
|
||||||
|| echo "PETSc architecture $PETSC_ARCH"
|
|| echo "PETSc architecture $PETSC_ARCH"
|
||||||
echo "MSC.Marc/Mentat $MSC_ROOT"
|
echo -n "MSC.Marc/Mentat "
|
||||||
|
[ -d $MSC_ROOT ] && echo $MSC_ROOT || blink $MSC_ROOT
|
||||||
echo
|
echo
|
||||||
|
echo "Multithreading DAMASK_NUM_THREADS=$DAMASK_NUM_THREADS"
|
||||||
echo -n "heap size "
|
echo -n "heap size "
|
||||||
[[ "$(ulimit -d)" == "unlimited" ]] \
|
[[ "$(ulimit -d)" == "unlimited" ]] \
|
||||||
&& echo "unlimited" \
|
&& echo "unlimited" \
|
||||||
|
|
|
@ -3,11 +3,11 @@
|
||||||
#-------------------#
|
#-------------------#
|
||||||
|
|
||||||
[dummy]
|
[dummy]
|
||||||
type none
|
mech none
|
||||||
|
|
||||||
[poly]
|
[poly]
|
||||||
type isostrain
|
mech isostrain
|
||||||
Ngrains 10
|
Nconstituents 10
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -63,7 +63,7 @@ gdot0_slip 0.001
|
||||||
n_slip 20
|
n_slip 20
|
||||||
tau0_slip 31e6 # per family
|
tau0_slip 31e6 # per family
|
||||||
tausat_slip 63e6 # per family
|
tausat_slip 63e6 # per family
|
||||||
w0_slip 2.25
|
a_slip 2.25
|
||||||
gdot0_twin 0.001
|
gdot0_twin 0.001
|
||||||
n_twin 20
|
n_twin 20
|
||||||
tau0_twin 31e6 # per family
|
tau0_twin 31e6 # per family
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#-------------------#
|
#-------------------#
|
||||||
|
|
||||||
[direct]
|
[direct]
|
||||||
type none # isostrain 1 grain
|
mech none # isostrain 1 grain
|
||||||
|
|
||||||
thermal adiabatic # thermal strain (stress) induced mass transport
|
thermal adiabatic # thermal strain (stress) induced mass transport
|
||||||
initialT 300.0
|
initialT 300.0
|
||||||
|
|
|
@ -19,7 +19,7 @@ fortCmd = "ifort"
|
||||||
# -free to use free-format FORTRAN 90 syntax
|
# -free to use free-format FORTRAN 90 syntax
|
||||||
# -O <0-3> optimization level
|
# -O <0-3> optimization level
|
||||||
# -fpp use FORTRAN preprocessor on source code
|
# -fpp use FORTRAN preprocessor on source code
|
||||||
# -openmp build with openMP support
|
# -fopenmp build with openMP support
|
||||||
# -w90 -w95 suppress messages about use of non-standard Fortran (previous version of abaqus_v6.env only)
|
# -w90 -w95 suppress messages about use of non-standard Fortran (previous version of abaqus_v6.env only)
|
||||||
# -WB turn a compile-time bounds check into a warning (previous version of abaqus_v6.env only)
|
# -WB turn a compile-time bounds check into a warning (previous version of abaqus_v6.env only)
|
||||||
# -mP2OPT_hpo_vec_divbyzero=F inofficial compiler switch, proposed by abaqus but highly dubios (previous version of abaqus_v6.env only)
|
# -mP2OPT_hpo_vec_divbyzero=F inofficial compiler switch, proposed by abaqus but highly dubios (previous version of abaqus_v6.env only)
|
||||||
|
@ -32,7 +32,7 @@ fortCmd = "ifort"
|
||||||
# -integer-size 32 -DINT=4 assume size of integer to be 4 bytes, matches our definition of pInt
|
# -integer-size 32 -DINT=4 assume size of integer to be 4 bytes, matches our definition of pInt
|
||||||
|
|
||||||
compile_fortran = (fortCmd + " -c -fPIC -auto -shared-intel " +
|
compile_fortran = (fortCmd + " -c -fPIC -auto -shared-intel " +
|
||||||
"-I%I -free -O1 -fpp -openmp " +
|
"-I%I -free -O3 -fpp -fopenmp " +
|
||||||
"-ftz -diag-disable 5268 " +
|
"-ftz -diag-disable 5268 " +
|
||||||
"-implicitnone -standard-semantics " +
|
"-implicitnone -standard-semantics " +
|
||||||
"-assume nostd_mod_proc_name " +
|
"-assume nostd_mod_proc_name " +
|
||||||
|
|
|
@ -1,52 +0,0 @@
|
||||||
#
|
|
||||||
# DAMASK Abaqus Environment File
|
|
||||||
#
|
|
||||||
# ------------------------------------
|
|
||||||
# originally taken from Abaqus ver. 6.11.1
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# Linux (Opteron/EM64T) Settings:
|
|
||||||
#
|
|
||||||
# Compile and Link command for user subroutines.
|
|
||||||
# Compile_cpp and link_exe for Abaqus make utility.
|
|
||||||
#
|
|
||||||
import os, re, glob, driverUtils
|
|
||||||
from damask import version as DAMASKVERSION
|
|
||||||
|
|
||||||
# Use the version in $PATH
|
|
||||||
fortCmd = "ifort"
|
|
||||||
|
|
||||||
# -free to use free-format FORTRAN 90 syntax
|
|
||||||
# -O <0-3> optimization level
|
|
||||||
# -fpp use FORTRAN preprocessor on source code
|
|
||||||
# -w90 -w95 suppress messages about use of non-standard Fortran (previous version of abaqus_v6.env only)
|
|
||||||
# -WB turn a compile-time bounds check into a warning (previous version of abaqus_v6.env only)
|
|
||||||
# -mP2OPT_hpo_vec_divbyzero=F inofficial compiler switch, proposed by abaqus but highly dubios (previous version of abaqus_v6.env only)
|
|
||||||
# -ftz flush underflow to zero
|
|
||||||
# -diag-disable 5268 disable warnings about line length > 132 (only comments there anyway)
|
|
||||||
# -implicitnone assume no implicit types (e.g. i for integer)
|
|
||||||
# -standard-semantics sets standard (Fortran 2008) and some other conventions
|
|
||||||
# -assume nostd_mod_proc_name avoid problems with libraries compiled without that option
|
|
||||||
# -real-size 64 -DFLOAT=8 assume size of real to be 8 bytes, matches our definition of pReal
|
|
||||||
# -integer-size 32 -DINT=4 assume size of integer to be 4 bytes, matches our definition of pInt
|
|
||||||
|
|
||||||
compile_fortran = (fortCmd + " -c -fPIC -auto -shared-intel " +
|
|
||||||
"-I%I -free -O1 -fpp " +
|
|
||||||
"-ftz -diag-disable 5268 " +
|
|
||||||
"-implicitnone -standard-semantics " +
|
|
||||||
"-assume nostd_mod_proc_name " +
|
|
||||||
"-real-size 64 -integer-size 32 -DFLOAT=8 -DINT=4 " +
|
|
||||||
'-DDAMASKVERSION=\\\"%s\\\"'%DAMASKVERSION)
|
|
||||||
|
|
||||||
# Abaqus/CAE will generate an input file without parts and assemblies.
|
|
||||||
cae_no_parts_input_file=ON
|
|
||||||
# Both the Abaqus/Explicit packager and analysis are run in double precision.
|
|
||||||
double_precision=BOTH
|
|
||||||
# The user will not be asked whether old job files of the same name should be deleted.
|
|
||||||
ask_delete=OFF
|
|
||||||
|
|
||||||
# usub_lib_dir='your_prefered_location/abqlib'
|
|
||||||
|
|
||||||
# Remove the temporary names from the namespace
|
|
||||||
del fortCmd
|
|
||||||
del DAMASKVERSION
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTRAN $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTHIGH $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTHIGHMP $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTLOW $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTRANLOWMP $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTRANMP $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,41 +0,0 @@
|
||||||
#!/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
|
|
|
@ -1,748 +0,0 @@
|
||||||
#
|
|
||||||
# General definitions for the Marc 2014 version
|
|
||||||
#
|
|
||||||
# EM64T
|
|
||||||
# ( LP64 - i4 version)
|
|
||||||
# (ILP64 - i8 version)
|
|
||||||
#
|
|
||||||
# Linux RedHat 5.7
|
|
||||||
#
|
|
||||||
# 64 bit MPI version
|
|
||||||
#
|
|
||||||
# Intel(R) Fortran Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# Intel(R) C Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# MKL Libraries:
|
|
||||||
# Intel(R) MKL 10.3
|
|
||||||
#
|
|
||||||
# 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
|
|
||||||
# To check the mpi version, type:
|
|
||||||
# mpirun -version
|
|
||||||
#
|
|
||||||
# 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/include"
|
|
||||||
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
|
|
||||||
|
|
||||||
MARCCODECOV=
|
|
||||||
#MARCCODECOV="ON"
|
|
||||||
|
|
||||||
MARCCODEPROF=
|
|
||||||
#MARCCODEPROF="ON"
|
|
||||||
|
|
||||||
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
|
||||||
I8FFLAGS="-real-size 64 -integer-size 32"
|
|
||||||
I8DEFINES="-DFLOAT=8 -DINT=4"
|
|
||||||
I8CDEFINES=
|
|
||||||
I8CASIDEFS=
|
|
||||||
else
|
|
||||||
I8FFLAGS="-i8 -real-size 64 -integer-size 64"
|
|
||||||
I8DEFINES="-DI64 -DFLOAT=8 -DINT=8"
|
|
||||||
I8CDEFINES="-U_DOUBLE -D_SINGLE"
|
|
||||||
I8CASIDEFS="-DCASI_64BIT_INT=1"
|
|
||||||
fi
|
|
||||||
|
|
||||||
MTHREAD=OPENMP
|
|
||||||
if test "$MARC_OPENMP" = "NONE" ; then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
#MTHREAD=NONE
|
|
||||||
if test "$_OEM_NASTRAN" -ne 0
|
|
||||||
then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
OMP_COMPAT=YES
|
|
||||||
if test "$MTHREAD" = "NONE"
|
|
||||||
then
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
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 -DMKL -DOPENMP"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FDEFINES="$FDEFINES -DOMP_COMPAT"
|
|
||||||
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 $METIS"
|
|
||||||
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 -std=c99 $I8CASIDEFS"
|
|
||||||
CCLOW_CASI="$CCLOW -std=c99 $I8CASIDEFS"
|
|
||||||
CCHIGH_CASI="$CCHIGH -std=c99 $I8CASIDEFS"
|
|
||||||
|
|
||||||
CCT_CASI="$CCT -std=c99 $I8CASIDEFS"
|
|
||||||
CCTLOW_CASI="$CCLOW -std=c99 $I8CASIDEFS"
|
|
||||||
CCTHIGH_CASI="$CCHIGH -std=c99 $I8CASIDEFS"
|
|
||||||
|
|
||||||
#PROFILE="-Mprof=func"
|
|
||||||
#PROFILE="-Mprof=lines"
|
|
||||||
#PROFILE="-Mprof=func,mpi"
|
|
||||||
PROFILE=
|
|
||||||
if test "$MARCCODECOV" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE="-prof-gen=srcpos"
|
|
||||||
fi
|
|
||||||
if test "$MARCCODEPROF" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE=" $PROFILE -pg"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORT_OPT="-c -implicitnone -stand f08 -standard-semantics -assume nostd_std_mod_proc_name -safe_cray_ptr -mp1 -WB"
|
|
||||||
if test "$MTHREAD" = "OPENMP"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp"
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp-threadprivate=compat"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# FORT_OPT=" $FORT_OPT -auto "
|
|
||||||
FORT_OPT=" $FORT_OPT -save -zero"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORTLOW="$FCOMP $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT -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"
|
|
||||||
|
|
||||||
# determine DAMASK version
|
|
||||||
HIT=0
|
|
||||||
for arg in "$@"
|
|
||||||
do
|
|
||||||
if [ $HIT = 1 ]
|
|
||||||
then
|
|
||||||
DAMASKPATH=`dirname $arg`
|
|
||||||
break
|
|
||||||
elif [ ${arg:0:2} = -u -o ${arg:0:2} = -U ]
|
|
||||||
then
|
|
||||||
HIT=1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
read DAMASKVERSION < $DAMASKPATH/../VERSION
|
|
||||||
DAMASKVERSION="'"$DAMASKVERSION"'"
|
|
||||||
|
|
||||||
# DAMASK compiler calls: additional flags are in line 2 OpenMP flags in line 3
|
|
||||||
DFORTLOW="$FCOMP $FORT_OPT $PROFILE -O0 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTLOWMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_std_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -O0 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRAN="$FCOMP $FORT_OPT $PROFILE -O1 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRANMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_std_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -O1 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGH="$FCOMP $FORT_OPT $PROFILE -fno-alias -O2 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGHMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_std_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -fno-alias -O2 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
|
|
||||||
if test "$MARCDEBUG" = "ON"
|
|
||||||
then
|
|
||||||
FORTLOW="$FCOMP $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE -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 $FORT_OPT -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"
|
|
||||||
|
|
||||||
# DAMASK compiler calls: additional flags are in line 2 OpenMP flags in line 3
|
|
||||||
DFORTLOW="$FCOMP $FORT_OPT $PROFILE $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTLOWMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_std_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRAN="$FCOMP $FORT_OPT $PROFILE $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRANMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_std_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGH="$FCOMP $FORT_OPT $PROFILE -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGHMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_std_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014.2 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
|
|
||||||
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 -fpp $FORT_OPT $PROFILE -fno-alias -O1 -fp-model precise $FDEFINES -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=icc
|
|
||||||
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_CASI/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_blacs_intelmpi_lp64.a "
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_blacs_lp64.a"
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_scalapack_lp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_lp64.a $MARC_MKL/libmkl_core.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_blacs_intelmpi_lp64.a -Wl,--end-group"
|
|
||||||
else
|
|
||||||
MKLLIB="$MARC_MKL/libmkl_scalapack_ilp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_ilp64.a $MARC_MKL/libmkl_core.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_blacs_intelmpi_ilp64.a -Wl,--end-group"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SECLIBS="-L$MARC_LIB -llapi"
|
|
||||||
|
|
||||||
SOLVERLIBS="${BCSSOLVERLIBS} ${VKISOLVERLIBS} ${CASISOLVERLIBS} ${INTELSOLVERLIBS} ${MF2SOLVERLIBS} ${MUMPSSOLVERLIBS2} \
|
|
||||||
$MKLLIB -L$MARC_MKL -liomp5 \
|
|
||||||
$MARC_LIB/blas_src.a ${ACSI_LIB}/ACSI_MarcLib.a "
|
|
||||||
|
|
||||||
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 -threads -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 cosim_begin.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 dpsmsah.f tpsmsah.f cn_qsort4_11.f "
|
|
||||||
|
|
||||||
|
|
||||||
HIGH_OPT_CODES_CASI="arithkernels.c blockedroutines.c blockedroutines_fd.c elemmatgenkernels.c longvecroutines.c sfmultutils.c solvewithbd.c"
|
|
||||||
|
|
||||||
MAXNUM=1000000
|
|
|
@ -1,685 +0,0 @@
|
||||||
#
|
|
||||||
# General definitions for the Marc 2014 version
|
|
||||||
#
|
|
||||||
# EM64T
|
|
||||||
# ( LP64 - i4 version)
|
|
||||||
# (ILP64 - i8 version)
|
|
||||||
#
|
|
||||||
# Linux RedHat 5.7
|
|
||||||
#
|
|
||||||
# 64 bit MPI version
|
|
||||||
#
|
|
||||||
# Intel(R) Fortran Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# Intel(R) C Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# MKL Libraries:
|
|
||||||
# Intel(R) MKL 10.3
|
|
||||||
#
|
|
||||||
# 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
|
|
||||||
# To check the mpi version, type:
|
|
||||||
# mpirun -version
|
|
||||||
#
|
|
||||||
# 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/include"
|
|
||||||
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
|
|
||||||
|
|
||||||
MARCCODECOV=
|
|
||||||
#MARCCODECOV="ON"
|
|
||||||
|
|
||||||
MARCCODEPROF=
|
|
||||||
#MARCCODEPROF="ON"
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
MTHREAD=OPENMP
|
|
||||||
if test "$MARC_OPENMP" = "NONE" ; then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
#MTHREAD=NONE
|
|
||||||
if test "$_OEM_NASTRAN" -ne 0
|
|
||||||
then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
OMP_COMPAT=YES
|
|
||||||
if test "$MTHREAD" = "NONE"
|
|
||||||
then
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
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 -DMKL -DOPENMP"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FDEFINES="$FDEFINES -DOMP_COMPAT"
|
|
||||||
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 $METIS"
|
|
||||||
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 -std=c99 $I8CASIDEFS"
|
|
||||||
CCLOW_CASI="$CCLOW -std=c99 $I8CASIDEFS"
|
|
||||||
CCHIGH_CASI="$CCHIGH -std=c99 $I8CASIDEFS"
|
|
||||||
|
|
||||||
CCT_CASI="$CCT -std=c99 $I8CASIDEFS"
|
|
||||||
CCTLOW_CASI="$CCLOW -std=c99 $I8CASIDEFS"
|
|
||||||
CCTHIGH_CASI="$CCHIGH -std=c99 $I8CASIDEFS"
|
|
||||||
|
|
||||||
#PROFILE="-Mprof=func"
|
|
||||||
#PROFILE="-Mprof=lines"
|
|
||||||
#PROFILE="-Mprof=func,mpi"
|
|
||||||
PROFILE=
|
|
||||||
if test "$MARCCODECOV" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE="-prof-gen=srcpos"
|
|
||||||
fi
|
|
||||||
if test "$MARCCODEPROF" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE=" $PROFILE -pg"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORT_OPT="-c -assume byterecl -safe_cray_ptr -mp1 -WB"
|
|
||||||
if test "$MTHREAD" = "OPENMP"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp"
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp-threadprivate=compat"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# FORT_OPT=" $FORT_OPT -auto "
|
|
||||||
FORT_OPT=" $FORT_OPT -save -zero"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORTLOW="$FCOMP $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT -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 $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE -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 $FORT_OPT -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 -fpp $FORT_OPT $PROFILE -fno-alias -O1 -fp-model precise $FDEFINES -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=icc
|
|
||||||
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_CASI/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_blacs_intelmpi_lp64.a "
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_blacs_lp64.a"
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_scalapack_lp64.a $MARC_MKL/libmkl_blacs_lp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_lp64.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_core.a -Wl,--end-group"
|
|
||||||
else
|
|
||||||
MKLLIB="$MARC_MKL/libmkl_scalapack_ilp64.a $MARC_MKL/libmkl_blacs_ilp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_ilp64.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_core.a -Wl,--end-group"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SECLIBS="-L$MARC_LIB -llapi"
|
|
||||||
|
|
||||||
SOLVERLIBS="${BCSSOLVERLIBS} ${VKISOLVERLIBS} ${CASISOLVERLIBS} ${INTELSOLVERLIBS} ${MF2SOLVERLIBS} ${MUMPSSOLVERLIBS2} \
|
|
||||||
$MKLLIB -L$MARC_MKL -liomp5 \
|
|
||||||
$MARC_LIB/blas_src.a ${ACSI_LIB}/ACSI_MarcLib.a "
|
|
||||||
|
|
||||||
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 -threads -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 cosim_begin.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 dpsmsah.f tpsmsah.f cn_qsort4_11.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
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
|
@ -1,5 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# This script opens a window running an editor.
|
|
||||||
# The command to invoke the editor is specified during DAMASK installation
|
|
||||||
|
|
||||||
%EDITOR% $*
|
|
|
@ -1,18 +0,0 @@
|
||||||
#!/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.
|
|
||||||
|
|
||||||
dir=
|
|
||||||
for d in /usr/bin /usr/bin/X11; do
|
|
||||||
if test -x "$d/xterm"; then
|
|
||||||
dir="$d"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if test -z "$dir"; then
|
|
||||||
echo "$0: Could not find xterm"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
"$dir/xterm" -T "vi $*" -n "vi $*" -e vi $*
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,186 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
#
|
|
||||||
# The exit status of this script is read by Mentat.
|
|
||||||
# Normal exit status is 0.
|
|
||||||
#
|
|
||||||
|
|
||||||
DIR=/msc/marc2014.2
|
|
||||||
if test $MARCDIR1
|
|
||||||
then
|
|
||||||
DIR=$MARCDIR1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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 \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_hmp" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_mp" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_lmp" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_h" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_l" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $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
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTRAN $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTHIGH $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTHIGHMP $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTLOW $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTRANLOWMP $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTRANMP $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,41 +0,0 @@
|
||||||
#!/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
|
|
|
@ -1,742 +0,0 @@
|
||||||
#
|
|
||||||
# General definitions for the Marc 2014 version
|
|
||||||
#
|
|
||||||
# EM64T
|
|
||||||
# ( LP64 - i4 version)
|
|
||||||
# (ILP64 - i8 version)
|
|
||||||
#
|
|
||||||
# Linux RedHat 5.7
|
|
||||||
#
|
|
||||||
# 64 bit MPI version
|
|
||||||
#
|
|
||||||
# Intel(R) Fortran Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# Intel(R) C Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# MKL Libraries:
|
|
||||||
# Intel(R) MKL 10.3
|
|
||||||
#
|
|
||||||
# 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
|
|
||||||
# To check the mpi version, type:
|
|
||||||
# mpirun -version
|
|
||||||
#
|
|
||||||
# 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
|
|
||||||
|
|
||||||
MARCCODECOV=
|
|
||||||
#MARCCODECOV="ON"
|
|
||||||
|
|
||||||
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
|
||||||
I8FFLAGS="-real-size 64 -integer-size 32"
|
|
||||||
I8DEFINES="-DFLOAT=8 -DINT=4"
|
|
||||||
I8CDEFINES=
|
|
||||||
I8CASIDEFS=
|
|
||||||
else
|
|
||||||
I8FFLAGS="-i8 -real-size 64 -integer-size 64"
|
|
||||||
I8DEFINES="-DI64 -DFLOAT=8 -DINT=8"
|
|
||||||
I8CDEFINES="-U_DOUBLE -D_SINGLE"
|
|
||||||
I8CASIDEFS="-DCASI_64BIT_INT=1"
|
|
||||||
fi
|
|
||||||
|
|
||||||
MTHREAD=OPENMP
|
|
||||||
if test "$MARC_OPENMP" = "NONE" ; then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
#MTHREAD=NONE
|
|
||||||
if test "$_OEM_NASTRAN" -ne 0
|
|
||||||
then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
OMP_COMPAT=YES
|
|
||||||
if test "$MTHREAD" = "NONE"
|
|
||||||
then
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
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 -DMKL -DOPENMP"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FDEFINES="$FDEFINES -DOMP_COMPAT"
|
|
||||||
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 $METIS"
|
|
||||||
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=
|
|
||||||
if test "$MARCCODECOV" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE="-prof-gen=srcpos"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORT_OPT="-c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr -mp1 -WB"
|
|
||||||
if test "$MTHREAD" = "OPENMP"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp"
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp-threadprivate=compat"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# FORT_OPT=" $FORT_OPT -auto "
|
|
||||||
FORT_OPT=" $FORT_OPT -save -zero"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORTLOW="$FCOMP $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT -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"
|
|
||||||
|
|
||||||
# determine DAMASK version
|
|
||||||
HIT=0
|
|
||||||
for arg in "$@"
|
|
||||||
do
|
|
||||||
if [ $HIT = 1 ]
|
|
||||||
then
|
|
||||||
DAMASKPATH=`dirname $arg`
|
|
||||||
break
|
|
||||||
elif [ ${arg:0:2} = -u -o ${arg:0:2} = -U ]
|
|
||||||
then
|
|
||||||
HIT=1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
read DAMASKVERSION < $DAMASKPATH/../VERSION
|
|
||||||
DAMASKVERSION="'"$DAMASKVERSION"'"
|
|
||||||
|
|
||||||
# DAMASK compiler calls: additional flags are in line 2 OpenMP flags in line 3
|
|
||||||
DFORTLOW="$FCOMP $FORT_OPT $PROFILE -O0 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTLOWMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -O0 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRAN="$FCOMP $FORT_OPT $PROFILE -O1 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRANMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -O1 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGH="$FCOMP $FORT_OPT $PROFILE -fno-alias -O2 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGHMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -fno-alias -O2 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
|
|
||||||
if test "$MARCDEBUG" = "ON"
|
|
||||||
then
|
|
||||||
FORTLOW="$FCOMP $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE -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 $FORT_OPT -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"
|
|
||||||
|
|
||||||
# DAMASK compiler calls: additional flags are in line 2 OpenMP flags in line 3
|
|
||||||
DFORTLOW="$FCOMP $FORT_OPT $PROFILE $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTLOWMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRAN="$FCOMP $FORT_OPT $PROFILE $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRANMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGH="$FCOMP $FORT_OPT $PROFILE -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGHMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2014 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
|
|
||||||
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 -fpp $FORT_OPT $PROFILE -fno-alias -O1 -fp-model precise $FDEFINES -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=icc
|
|
||||||
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_blacs_intelmpi_lp64.a "
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_blacs_lp64.a"
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_scalapack_lp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_lp64.a $MARC_MKL/libmkl_core.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_blacs_intelmpi_lp64.a -Wl,--end-group"
|
|
||||||
else
|
|
||||||
MKLLIB="$MARC_MKL/libmkl_scalapack_ilp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_ilp64.a $MARC_MKL/libmkl_core.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_blacs_intelmpi_ilp64.a -Wl,--end-group"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SECLIBS="-L$MARC_LIB -llapi"
|
|
||||||
|
|
||||||
SOLVERLIBS="${BCSSOLVERLIBS} \
|
|
||||||
${INTELSOLVERLIBS} ${MF2SOLVERLIBS} -Wl,--start-group $MKLLIB ${MUMPSSOLVERLIBS2} \
|
|
||||||
$MARC_MKL/libiomp5.a -Wl,--end-group \
|
|
||||||
$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 -threads -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 cn_qsort4_11.f "
|
|
||||||
|
|
||||||
|
|
||||||
HIGH_OPT_CODES_CASI="arithkernels.c blockedroutines.c blockedroutines_fd.c elemmatgenkernels.c longvecroutines.c sfmultutils.c solvewithbd.c"
|
|
||||||
|
|
||||||
MAXNUM=1000000
|
|
|
@ -1,679 +0,0 @@
|
||||||
#
|
|
||||||
# General definitions for the Marc 2014 version
|
|
||||||
#
|
|
||||||
# EM64T
|
|
||||||
# ( LP64 - i4 version)
|
|
||||||
# (ILP64 - i8 version)
|
|
||||||
#
|
|
||||||
# Linux RedHat 5.7
|
|
||||||
#
|
|
||||||
# 64 bit MPI version
|
|
||||||
#
|
|
||||||
# Intel(R) Fortran Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# Intel(R) C Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# MKL Libraries:
|
|
||||||
# Intel(R) MKL 10.3
|
|
||||||
#
|
|
||||||
# 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
|
|
||||||
# To check the mpi version, type:
|
|
||||||
# mpirun -version
|
|
||||||
#
|
|
||||||
# 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
|
|
||||||
|
|
||||||
MARCCODECOV=
|
|
||||||
#MARCCODECOV="ON"
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
MTHREAD=OPENMP
|
|
||||||
if test "$MARC_OPENMP" = "NONE" ; then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
#MTHREAD=NONE
|
|
||||||
if test "$_OEM_NASTRAN" -ne 0
|
|
||||||
then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
OMP_COMPAT=YES
|
|
||||||
if test "$MTHREAD" = "NONE"
|
|
||||||
then
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
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 -DMKL -DOPENMP"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FDEFINES="$FDEFINES -DOMP_COMPAT"
|
|
||||||
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 $METIS"
|
|
||||||
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=
|
|
||||||
if test "$MARCCODECOV" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE="-prof-gen=srcpos"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORT_OPT="-c -assume byterecl -safe_cray_ptr -mp1 -WB"
|
|
||||||
if test "$MTHREAD" = "OPENMP"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp"
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp-threadprivate=compat"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# FORT_OPT=" $FORT_OPT -auto "
|
|
||||||
FORT_OPT=" $FORT_OPT -save -zero"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORTLOW="$FCOMP $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT -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 $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE -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 $FORT_OPT -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 -fpp $FORT_OPT $PROFILE -fno-alias -O1 -fp-model precise $FDEFINES -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=icc
|
|
||||||
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_blacs_intelmpi_lp64.a "
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_blacs_lp64.a"
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_blacs_lp64.a $MARC_MKL/libmkl_scalapack_lp64.a $MARC_MKL/libmkl_intel_lp64.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_core.a "
|
|
||||||
else
|
|
||||||
MKLLIB="$MARC_MKL/libmkl_blacs_ilp64.a $MARC_MKL/libmkl_scalapack_ilp64.a $MARC_MKL/libmkl_intel_ilp64.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_core.a "
|
|
||||||
fi
|
|
||||||
|
|
||||||
SECLIBS="-L$MARC_LIB -llapi"
|
|
||||||
|
|
||||||
SOLVERLIBS="${BCSSOLVERLIBS} \
|
|
||||||
${INTELSOLVERLIBS} ${MF2SOLVERLIBS} -Wl,--start-group $MKLLIB ${MUMPSSOLVERLIBS2} \
|
|
||||||
$MARC_MKL/libiomp5.a -Wl,--end-group \
|
|
||||||
$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 -threads -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 cn_qsort4_11.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
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
|
@ -1,5 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# This script opens a window running an editor.
|
|
||||||
# The command to invoke the editor is specified during DAMASK installation
|
|
||||||
|
|
||||||
%EDITOR% $*
|
|
|
@ -1,18 +0,0 @@
|
||||||
#!/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.
|
|
||||||
|
|
||||||
dir=
|
|
||||||
for d in /usr/bin /usr/bin/X11; do
|
|
||||||
if test -x "$d/xterm"; then
|
|
||||||
dir="$d"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if test -z "$dir"; then
|
|
||||||
echo "$0: Could not find xterm"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
"$dir/xterm" -T "vi $*" -n "vi $*" -e vi $*
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,186 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
#
|
|
||||||
# The exit status of this script is read by Mentat.
|
|
||||||
# Normal exit status is 0.
|
|
||||||
#
|
|
||||||
|
|
||||||
DIR=/nethome/storage/raid3/f.roters/temp/msc/marc2014
|
|
||||||
if test $MARCDIR1
|
|
||||||
then
|
|
||||||
DIR=$MARCDIR1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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 \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_hmp" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_mp" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_lmp" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_h" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $nthread $nsolver $mode $gpu > /dev/null 2>&1
|
|
||||||
sleep 1
|
|
||||||
exit 0
|
|
|
@ -1,187 +0,0 @@
|
||||||
#!/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
|
|
||||||
|
|
||||||
if test -z "$DIR"; then
|
|
||||||
REALCOM="`ls -l $0 |awk '{ print $NF; }'`"
|
|
||||||
DIRSCRIPT=`dirname $REALCOM`
|
|
||||||
case $DIRSCRIPT in
|
|
||||||
\/*)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
DIRSCRIPT=`pwd`/$DIRSCRIPT
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
. $DIRSCRIPT/getarch
|
|
||||||
|
|
||||||
DIR="$MENTAT_MARCDIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SRCEXT=.f
|
|
||||||
SRCEXTC=.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
|
|
||||||
assem_recov_nthread=$9
|
|
||||||
shift 9 # cannot use $10, $11, ...
|
|
||||||
nthread=$1
|
|
||||||
nsolver=$2
|
|
||||||
mode=$3
|
|
||||||
gpu=$4
|
|
||||||
|
|
||||||
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$//" | sed "s/$SRCEXTC$//"`
|
|
||||||
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 [ "$assem_recov_nthread" != "" -a "$assem_recov_nthread" != "1" ]; then
|
|
||||||
assem_recov_nthread="-nthread_elem $assem_recov_nthread"
|
|
||||||
else
|
|
||||||
assem_recov_nthread=""
|
|
||||||
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_damask_l" $slv -j $job -v n -b y $nprocds $nprocd -autorst $autorst \
|
|
||||||
$srcfile $restart $postfile $viewfactorsfile $hostfile \
|
|
||||||
$compat $copy_datfile $copy_postfile $scr_dir $dcoup \
|
|
||||||
$assem_recov_nthread $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
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTRAN $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTHIGH $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTHIGHMP $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTLOW $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTRANLOWMP $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,52 +0,0 @@
|
||||||
#!/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`
|
|
||||||
|
|
||||||
# add BLAS options for linking
|
|
||||||
BLAS="%BLAS%"
|
|
||||||
|
|
||||||
. $DIR/tools/include
|
|
||||||
DIRJOB=$2
|
|
||||||
cd $DIRJOB
|
|
||||||
echo "Compiling and linking user subroutine $user on host `hostname`"
|
|
||||||
echo "program: $program"
|
|
||||||
$DFORTRANMP $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 \
|
|
||||||
$BLAS \
|
|
||||||
$SYSLIBS || \
|
|
||||||
{
|
|
||||||
echo "$0: link failed for $usernoext.o on host `hostname`"
|
|
||||||
exit 1
|
|
||||||
}
|
|
||||||
/bin/rm $userobj
|
|
||||||
/bin/rm $DIRJOB/*.mod
|
|
|
@ -1,41 +0,0 @@
|
||||||
#!/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
|
|
|
@ -1,744 +0,0 @@
|
||||||
#
|
|
||||||
# General definitions for the Marc 2014 version
|
|
||||||
#
|
|
||||||
# EM64T
|
|
||||||
# ( LP64 - i4 version)
|
|
||||||
# (ILP64 - i8 version)
|
|
||||||
#
|
|
||||||
# Linux RedHat 5.7
|
|
||||||
#
|
|
||||||
# 64 bit MPI version
|
|
||||||
#
|
|
||||||
# Intel(R) Fortran Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# Intel(R) C Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# MKL Libraries:
|
|
||||||
# Intel(R) MKL 10.3
|
|
||||||
#
|
|
||||||
# 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
|
|
||||||
# To check the mpi version, type:
|
|
||||||
# mpirun -version
|
|
||||||
#
|
|
||||||
# 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/include"
|
|
||||||
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
|
|
||||||
if test "$MARC_CASISOLVER" = "NONE" ; then
|
|
||||||
CASISOLVER=NONE
|
|
||||||
fi
|
|
||||||
#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
|
|
||||||
|
|
||||||
MARCCODECOV=
|
|
||||||
#MARCCODECOV="ON"
|
|
||||||
|
|
||||||
MARCCODEPROF=
|
|
||||||
#MARCCODEPROF="ON"
|
|
||||||
|
|
||||||
if test "$MARC_INTEGER_SIZE" = "i4" ; then
|
|
||||||
I8FFLAGS="-real-size 64 -integer-size 32"
|
|
||||||
I8DEFINES="-DFLOAT=8 -DINT=4"
|
|
||||||
I8CDEFINES=
|
|
||||||
I8CASIDEFS=
|
|
||||||
else
|
|
||||||
I8FFLAGS="-i8 -real-size 64 -integer-size 64"
|
|
||||||
I8DEFINES="-DI64 -DFLOAT=8 -DINT=8"
|
|
||||||
I8CDEFINES="-U_DOUBLE -D_SINGLE"
|
|
||||||
I8CASIDEFS="-DCASI_64BIT_INT=1"
|
|
||||||
fi
|
|
||||||
|
|
||||||
MTHREAD=OPENMP
|
|
||||||
if test "$MARC_OPENMP" = "NONE" ; then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
#MTHREAD=NONE
|
|
||||||
if test "$_OEM_NASTRAN" -ne 0
|
|
||||||
then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
OMP_COMPAT=YES
|
|
||||||
if test "$MTHREAD" = "NONE"
|
|
||||||
then
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
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 -DMKL -DOPENMP"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FDEFINES="$FDEFINES -DOMP_COMPAT"
|
|
||||||
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 $METIS"
|
|
||||||
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 -std=c99 $I8CASIDEFS"
|
|
||||||
CCLOW_CASI="$CCLOW -std=c99 $I8CASIDEFS"
|
|
||||||
CCHIGH_CASI="$CCHIGH -std=c99 $I8CASIDEFS"
|
|
||||||
|
|
||||||
CCT_CASI="$CCT -std=c99 $I8CASIDEFS"
|
|
||||||
CCTLOW_CASI="$CCLOW -std=c99 $I8CASIDEFS"
|
|
||||||
CCTHIGH_CASI="$CCHIGH -std=c99 $I8CASIDEFS"
|
|
||||||
|
|
||||||
#PROFILE="-Mprof=func"
|
|
||||||
#PROFILE="-Mprof=lines"
|
|
||||||
#PROFILE="-Mprof=func,mpi"
|
|
||||||
PROFILE=
|
|
||||||
if test "$MARCCODECOV" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE="-prof-gen=srcpos"
|
|
||||||
fi
|
|
||||||
if test "$MARCCODEPROF" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE=" $PROFILE -pg"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORT_OPT="-c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr -mp1 -WB"
|
|
||||||
if test "$MTHREAD" = "OPENMP"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp"
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp-threadprivate=compat"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# FORT_OPT=" $FORT_OPT -auto "
|
|
||||||
FORT_OPT=" $FORT_OPT -save -zero"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORTLOW="$FCOMP $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT -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"
|
|
||||||
|
|
||||||
# determine DAMASK version
|
|
||||||
if test -n "$DAMASK_USER"; then
|
|
||||||
DAMASKROOT=`dirname $DAMASK_USER`/..
|
|
||||||
read DAMASKVERSION < $DAMASKROOT/VERSION
|
|
||||||
DAMASKVERSION="'"$DAMASKVERSION"'"
|
|
||||||
else
|
|
||||||
DAMASKVERSION="'N/A'"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# DAMASK compiler calls: additional flags are in line 2 OpenMP flags in line 3
|
|
||||||
DFORTLOW="$FCOMP $FORT_OPT $PROFILE -O0 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTLOWMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -O0 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRAN="$FCOMP $FORT_OPT $PROFILE -O1 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRANMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -O1 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGH="$FCOMP $FORT_OPT $PROFILE -fno-alias -O2 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGHMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -fno-alias -O2 $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
|
|
||||||
if test "$MARCDEBUG" = "ON"
|
|
||||||
then
|
|
||||||
FORTLOW="$FCOMP $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE -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 $FORT_OPT -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"
|
|
||||||
|
|
||||||
# DAMASK compiler calls: additional flags are in line 2 OpenMP flags in line 3
|
|
||||||
DFORTLOW="$FCOMP $FORT_OPT $PROFILE $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTLOWMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRAN="$FCOMP $FORT_OPT $PROFILE $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTRANMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGH="$FCOMP $FORT_OPT $PROFILE -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-enable sc3 -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
DFORTHIGHMP="$FCOMP -c -implicitnone -stand f08 -standard-semantics -assume nostd_mod_proc_name -safe_cray_ptr $PROFILE -zero -mp1 -WB -fno-alias $I8FFLAGS -I$MARC_SOURCE/common \
|
|
||||||
-fpp -ftz -diag-disable 5268 -warn declarations -warn general -warn usage -warn interfaces -warn ignore_loc -warn alignments -DMarc4DAMASK=2015 -DDAMASKVERSION=$DAMASKVERSION \
|
|
||||||
-openmp -openmp_report2 -openmp-threadprivate=compat\
|
|
||||||
-I$MARC_SOURCE/${BCS_DIR}/common -I$MARC_SOURCE/mumpssolver/include $I8DEFINES -DLinux -DLINUX -DLinux_intel $FDEFINES $DDM $SOLVERFLAGS"
|
|
||||||
|
|
||||||
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 -fpp $FORT_OPT $PROFILE -fno-alias -O1 -fp-model precise $FDEFINES -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=icc
|
|
||||||
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_CASI/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_blacs_intelmpi_lp64.a "
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_blacs_lp64.a"
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_scalapack_lp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_lp64.a $MARC_MKL/libmkl_core.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_blacs_intelmpi_lp64.a -Wl,--end-group"
|
|
||||||
else
|
|
||||||
MKLLIB="$MARC_MKL/libmkl_scalapack_ilp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_ilp64.a $MARC_MKL/libmkl_core.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_blacs_intelmpi_ilp64.a -Wl,--end-group"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SECLIBS="-L$MARC_LIB -llapi"
|
|
||||||
|
|
||||||
SOLVERLIBS="${BCSSOLVERLIBS} ${VKISOLVERLIBS} ${CASISOLVERLIBS} ${INTELSOLVERLIBS} ${MF2SOLVERLIBS} ${MUMPSSOLVERLIBS2} \
|
|
||||||
$MKLLIB -L$MARC_MKL -liomp5 \
|
|
||||||
$MARC_LIB/blas_src.a ${ACSI_LIB}/ACSI_MarcLib.a "
|
|
||||||
|
|
||||||
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 -threads -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 cosim_begin.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 dpsmsah.f tpsmsah.f cn_qsort4_11.f "
|
|
||||||
|
|
||||||
|
|
||||||
HIGH_OPT_CODES_CASI="arithkernels.c blockedroutines.c blockedroutines_fd.c elemmatgenkernels.c longvecroutines.c sfmultutils.c solvewithbd.c"
|
|
||||||
|
|
||||||
MAXNUM=1000000
|
|
|
@ -1,688 +0,0 @@
|
||||||
#
|
|
||||||
# General definitions for the Marc 2014 version
|
|
||||||
#
|
|
||||||
# EM64T
|
|
||||||
# ( LP64 - i4 version)
|
|
||||||
# (ILP64 - i8 version)
|
|
||||||
#
|
|
||||||
# Linux RedHat 5.7
|
|
||||||
#
|
|
||||||
# 64 bit MPI version
|
|
||||||
#
|
|
||||||
# Intel(R) Fortran Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# Intel(R) C Compiler
|
|
||||||
# Version 13.0.1
|
|
||||||
#
|
|
||||||
# MKL Libraries:
|
|
||||||
# Intel(R) MKL 10.3
|
|
||||||
#
|
|
||||||
# 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
|
|
||||||
# To check the mpi version, type:
|
|
||||||
# mpirun -version
|
|
||||||
#
|
|
||||||
# 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/include"
|
|
||||||
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
|
|
||||||
if test "$MARC_CASISOLVER" = "NONE" ; then
|
|
||||||
CASISOLVER=NONE
|
|
||||||
fi
|
|
||||||
#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
|
|
||||||
|
|
||||||
MARCCODECOV=
|
|
||||||
#MARCCODECOV="ON"
|
|
||||||
|
|
||||||
MARCCODEPROF=
|
|
||||||
#MARCCODEPROF="ON"
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
MTHREAD=OPENMP
|
|
||||||
if test "$MARC_OPENMP" = "NONE" ; then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
#MTHREAD=NONE
|
|
||||||
if test "$_OEM_NASTRAN" -ne 0
|
|
||||||
then
|
|
||||||
MTHREAD=NONE
|
|
||||||
fi
|
|
||||||
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
OMP_COMPAT=YES
|
|
||||||
if test "$MTHREAD" = "NONE"
|
|
||||||
then
|
|
||||||
OMP_COMPAT=NO
|
|
||||||
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 -DMKL -DOPENMP"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FDEFINES="$FDEFINES -DOMP_COMPAT"
|
|
||||||
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 $METIS"
|
|
||||||
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 -std=c99 $I8CASIDEFS"
|
|
||||||
CCLOW_CASI="$CCLOW -std=c99 $I8CASIDEFS"
|
|
||||||
CCHIGH_CASI="$CCHIGH -std=c99 $I8CASIDEFS"
|
|
||||||
|
|
||||||
CCT_CASI="$CCT -std=c99 $I8CASIDEFS"
|
|
||||||
CCTLOW_CASI="$CCLOW -std=c99 $I8CASIDEFS"
|
|
||||||
CCTHIGH_CASI="$CCHIGH -std=c99 $I8CASIDEFS"
|
|
||||||
|
|
||||||
#PROFILE="-Mprof=func"
|
|
||||||
#PROFILE="-Mprof=lines"
|
|
||||||
#PROFILE="-Mprof=func,mpi"
|
|
||||||
PROFILE=
|
|
||||||
if test "$MARCCODECOV" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE="-prof-gen=srcpos"
|
|
||||||
fi
|
|
||||||
if test "$MARCCODEPROF" = "ON"
|
|
||||||
then
|
|
||||||
PROFILE=" $PROFILE -pg"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORT_OPT="-c -assume byterecl -safe_cray_ptr -mp1 -WB"
|
|
||||||
if test "$MTHREAD" = "OPENMP"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp"
|
|
||||||
if test "$OMP_COMPAT" = "YES"
|
|
||||||
then
|
|
||||||
FORT_OPT=" $FORT_OPT -openmp-threadprivate=compat"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# FORT_OPT=" $FORT_OPT -auto "
|
|
||||||
FORT_OPT=" $FORT_OPT -save -zero"
|
|
||||||
fi
|
|
||||||
|
|
||||||
FORTLOW="$FCOMP $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT $PROFILE -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 $FORT_OPT -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 $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE $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 $FORT_OPT $PROFILE -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 $FORT_OPT -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 -fpp $FORT_OPT $PROFILE -fno-alias -O1 -fp-model precise $FDEFINES -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=icc
|
|
||||||
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_CASI/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_blacs_intelmpi_lp64.a "
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_blacs_lp64.a"
|
|
||||||
else
|
|
||||||
MUMPSSOLVERLIBS2=" $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_scalapack_lp64.a $MARC_MKL/libmkl_blacs_lp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_lp64.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_core.a -Wl,--end-group"
|
|
||||||
else
|
|
||||||
MKLLIB="$MARC_MKL/libmkl_scalapack_ilp64.a $MARC_MKL/libmkl_blacs_ilp64.a -Wl,--start-group $MARC_MKL/libmkl_intel_ilp64.a $MARC_MKL/libmkl_intel_thread.a $MARC_MKL/libmkl_core.a -Wl,--end-group"
|
|
||||||
fi
|
|
||||||
|
|
||||||
SECLIBS="-L$MARC_LIB -llapi"
|
|
||||||
|
|
||||||
SOLVERLIBS="${BCSSOLVERLIBS} ${VKISOLVERLIBS} ${CASISOLVERLIBS} ${INTELSOLVERLIBS} ${MF2SOLVERLIBS} ${MUMPSSOLVERLIBS2} \
|
|
||||||
$MKLLIB -L$MARC_MKL -liomp5 \
|
|
||||||
$MARC_LIB/blas_src.a ${ACSI_LIB}/ACSI_MarcLib.a "
|
|
||||||
|
|
||||||
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 -shared-intel "
|
|
||||||
|
|
||||||
# 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 -threads -lpthread -shared-intel "
|
|
||||||
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 cosim_begin.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 dpsmsah.f tpsmsah.f cn_qsort4_11.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
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
|
@ -1,5 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# This script opens a window running an editor.
|
|
||||||
# The command to invoke the editor is specified during DAMASK installation
|
|
||||||
|
|
||||||
%EDITOR% $*
|
|
|
@ -1,18 +0,0 @@
|
||||||
#!/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.
|
|
||||||
|
|
||||||
dir=
|
|
||||||
for d in /usr/bin /usr/bin/X11; do
|
|
||||||
if test -x "$d/xterm"; then
|
|
||||||
dir="$d"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if test -z "$dir"; then
|
|
||||||
echo "$0: Could not find xterm"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
"$dir/xterm" -T "vi $*" -n "vi $*" -e vi $*
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "$1" = "" ]; then
|
|
||||||
echo "usage: $0 job_name"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo STOP > $1.cnt
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue