61 lines
1.9 KiB
Bash
61 lines
1.9 KiB
Bash
#
|
|
# DAMASK Abaqus Environment File
|
|
#
|
|
# $Id$
|
|
# ------------------------------------
|
|
# originally taken from Abaqus ver. 6.9.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
|
|
|
|
# Always use the newest version
|
|
fortDefPath = '/'
|
|
|
|
dirLst = glob.glob('/opt/intel/fce/*')
|
|
if dirLst:
|
|
dirLst.sort()
|
|
fortDefPath = dirLst[-1] + '/bin'
|
|
|
|
fortCompiler = "ifort"
|
|
|
|
if os.path.exists(os.path.join(fortDefPath, fortCompiler)):
|
|
fortCmd = os.path.join(fortDefPath, fortCompiler)
|
|
else:
|
|
fortCmd = fortCompiler
|
|
|
|
# "-free" to use free-format FORTRAN 90 syntax
|
|
# "-heap-arrays" increase heap size
|
|
# "-O3" maximum optimization level
|
|
# "-fpp" use FORTRAN preprocessor on source code
|
|
# "-openmp" build with openMP support
|
|
|
|
compile_fortran = (fortCmd + " -c -fPIC -auto -w90 -w95 " +
|
|
"-WB -I%I -free -O3 -fpp -openmp")
|
|
|
|
# Do not use parts in input file
|
|
cae_no_parts_input_file=ON
|
|
|
|
# You can compile DAMASK into a library to be used with abaqus
|
|
# it saves you from compiling the subroutine for each job
|
|
# in this case you do not have to specify a usersubroutine file
|
|
# however if you still do, the compiled version will override that in the library
|
|
# Procedure:
|
|
# 1. create a library directory, e.g. abqlib, in your prefered location
|
|
# 2. build the library replacing your_prefered_location/abqlib with the correct path to the directory created in 1.:
|
|
# abaqus make -l DAMASK_abaqus_std.f -dir your_prefered_location/abqlib
|
|
# abaqus make -l DAMASK_abaqus_exp.f -dir your_prefered_location/abqlib
|
|
# 3. uncomment the next line after replacing your_prefered_location/abqlib with the correct path to the directory created in 1.
|
|
# usub_lib_dir='your_prefered_location/abqlib'
|
|
|
|
# Remove the temporary names from the namespace
|
|
del fortCmd
|
|
del fortDefPath
|
|
del fortCompiler
|
|
del dirLst
|
|
|