2011-03-29 19:19:50 +05:30
|
|
|
#
|
2011-08-26 12:59:55 +05:30
|
|
|
# DAMASK Abaqus Environment File
|
|
|
|
#
|
2011-03-29 19:19:50 +05:30
|
|
|
# ------------------------------------
|
2012-05-16 12:27:37 +05:30
|
|
|
# originally taken from Abaqus ver. 6.11.1
|
2011-04-06 15:10:39 +05:30
|
|
|
#
|
2011-03-29 19:19:50 +05:30
|
|
|
#
|
|
|
|
# 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
|
2016-02-03 00:25:55 +05:30
|
|
|
from damask import version as DAMASKVERSION
|
2018-11-21 02:30:08 +05:30
|
|
|
from damask import Environment
|
2018-11-21 04:30:18 +05:30
|
|
|
myEnv = Environment()
|
2011-03-29 19:19:50 +05:30
|
|
|
|
2018-11-21 02:30:08 +05:30
|
|
|
if myEnv.options['DAMASK_HDF5'] == 'ON':
|
|
|
|
# use hdf5 compiler wrapper in $PATH
|
2018-11-21 04:30:18 +05:30
|
|
|
fortCmd = os.popen('h5fc -shlib -show').read().replace('\n','') # complicated way needed to pass in DAMASKVERSION string
|
|
|
|
link_sl += fortCmd.split()[1:]
|
|
|
|
fortCmd +=" -DDAMASKHDF5"
|
|
|
|
else:
|
2018-11-21 02:30:08 +05:30
|
|
|
# Use the version in $PATH
|
|
|
|
fortCmd = "ifort"
|
2011-03-29 19:19:50 +05:30
|
|
|
|
2018-05-19 13:52:29 +05:30
|
|
|
# -free to use free-format FORTRAN 90 syntax
|
|
|
|
# -O <0-3> optimization level
|
|
|
|
# -fpp use FORTRAN preprocessor on source code
|
2018-07-03 15:35:14 +05:30
|
|
|
# -fopenmp build with openMP support
|
2018-05-19 13:52:29 +05:30
|
|
|
# -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)
|
2018-05-20 20:00:52 +05:30
|
|
|
# -standard-semantics sets standard (Fortran 2008) and some other conventions
|
|
|
|
# -assume nostd_mod_proc_name avoid problems with libraries compiled without that option
|
2018-05-19 13:52:29 +05:30
|
|
|
# -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
|
2011-08-26 12:59:55 +05:30
|
|
|
|
2014-04-29 22:13:59 +05:30
|
|
|
compile_fortran = (fortCmd + " -c -fPIC -auto -shared-intel " +
|
2018-07-03 15:35:14 +05:30
|
|
|
"-I%I -free -O3 -fpp -fopenmp " +
|
2013-01-28 21:00:51 +05:30
|
|
|
"-ftz -diag-disable 5268 " +
|
2018-05-20 20:00:52 +05:30
|
|
|
"-implicitnone -standard-semantics " +
|
|
|
|
"-assume nostd_mod_proc_name " +
|
2016-02-03 00:25:55 +05:30
|
|
|
"-real-size 64 -integer-size 32 -DFLOAT=8 -DINT=4 " +
|
2016-02-03 04:03:21 +05:30
|
|
|
'-DDAMASKVERSION=\\\"%s\\\"'%DAMASKVERSION)
|
2011-03-29 19:19:50 +05:30
|
|
|
|
2013-03-21 22:54:58 +05:30
|
|
|
# Abaqus/CAE will generate an input file without parts and assemblies.
|
2011-03-29 19:19:50 +05:30
|
|
|
cae_no_parts_input_file=ON
|
2013-03-21 22:54:58 +05:30
|
|
|
# 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
|
2011-03-29 19:19:50 +05:30
|
|
|
|
2011-05-26 15:08:48 +05:30
|
|
|
# usub_lib_dir='your_prefered_location/abqlib'
|
|
|
|
|
2011-03-29 19:19:50 +05:30
|
|
|
# Remove the temporary names from the namespace
|
|
|
|
del fortCmd
|
2018-11-21 04:30:18 +05:30
|
|
|
del Environment
|
|
|
|
del myEnv
|
2017-03-06 03:17:28 +05:30
|
|
|
del DAMASKVERSION
|