CentOS 7:ABAQUS 6.14关联gfortran

在centos7系统下,安装了abaqus6.14,然后将它与gfortran关联以方便UMAT的使用。linux下abaqus关联fortran编译器非常方便,只要修改abaqus_v6.env文件就行。但是改起来总是出现错误,还是对具体语句不太熟悉。经过试验,现在提供一个可用.env文件,在我的机器上verify后PASS了,希望能帮到有需要的人。

-------------------------------------下面是abaqus_v6.env文件的内容---------------------------

#

#        System-Wide Abaqus Environment File

#       -------------------------------------

standard_parallel = ALL

mp_mode = MPI

mp_file_system = (DETECT,DETECT)

mp_num_parallel_ftps = (4, 4)

mp_environment_export = ('MPI_PROPAGATE_TSTP',

                         'ABA_CM_BUFFERING',

                         'ABA_CM_BUFFERING_LIMIT',

                         'ABA_ITERATIVE_SOLVER_VERBOSE',

                         'ABA_DMPSOLVER_BWDPARALLELOFF',

                         'ABA_ELP_SURFACE_SPLIT',

                         'ABA_ELP_SUSPEND',

                         'ABA_HOME',

                         'ABA_MEMORY_MODE',

                         'ABA_MPI_MESSAGE_TRACKING',

                         'ABA_MPI_VERBOSE_LEVEL',

                         'ABA_PATH',

                         'ABAQUS_CSE_RELTIMETOLERANCE',

                         'ABA_RESOURCE_MONITOR',

                         'ABA_RESOURCE_USEMALLINFO',

                         'ABAQUS_LANG',

                         'ABAQUS_CSE_CURRCONFIGMappING',

                         'ABAQUS_MPF_DIAGNOSTIC_LEVEL',

                         'ABAQUSLM_LICENSE_FILE',

                         'ABQ_CRTMALLOC',

                         'ABQ_DATACHECK',

                         'ABQ_RECOVER',

                         'ABQ_RESTART',

                         'ABQ_SPLITFILE',

                         'ABQ_XPL_WINDOWDUMP',

                         'ABQ_XPL_PARTITIONSIZE',

                         'ABQLMHANGLIMIT',

                         'ABQLMQUEUE',

                         'ABQLMUSER',

                         'CCI_RENDEZVOUS',

                         'DOMAIN',

                         'DOMAIN_CPUS',

                         'DOUBLE_PRECISION',

                         'FLEXLM_DIAGNOSTICS',

                         'FOR0006',

                         'FOR0064',

                         'FOR_IGNORE_EXCEPTIONS',

                         'FOR_DISABLE_DIAGNOSTIC_DISPLAY',

                         'LD_PRELOAD',

                         'MP_NUMBER_OF_THREADS',

                         'MPC_GANG',

                         'MPI_FLAGS',

                         'MPI_FLUSH_FCACHE',

                         'MPI_RDMA_NENVELOPE',

                         'MPI_SOCKBUFSIZE',

                         'MPI_USE_MALLOPT_MMAP_MAX',

                         'MPI_USE_MALLOPT_MMAP_THRESHOLD',

                         'MPI_USE_MALLOPT_SBRK_PROTECTION',

                         'MPI_WORKDIR',

                         'MPCCI_DEBUG',

                         'MPCCI_CODEID',

                         'MPCCI_JOBID',

                         'MPCCI_NETDEVICE',

                         'MPCCI_TINFO',

                         'MPCCI_SERVER',

                         'MPIEXEC_AFFINITY_TABLE',

                         'ABAQUS_CCI_DEBUG',

                         'NCPUS',

                         'OMP_DYNAMIC',

                         'OMP_NUM_THREADS', 

                         'OUTDIR',

                         'PAIDUP',

                         'PARALLEL_METHOD',

                         'RAIDEV_NDREG_LAZYMEM',

                         'ABA_SYMBOLIC_GENERALCOLLAPSE',

                         'ABA_SYMBOLIC_GENERAL_MAXCLIQUERANK',

                         'ABA_ADM_MINIMUMINCREASE',

                         'ABA_ADM_MINIMUMDECREASE',

                         'IPATH_NO_CPUAFFINITY',

                         'MALLOC_MMAP_THRESHOLD_',

                         'ABA_EXT_SIMOUTPUT',

'SMA_WS',

'SMA_PARENT',

'SMA_PLATFORM',

                         'ABA_PRE_DECOMPOSITION',

                         'ACML_FAST_MALLOC',

                         'ACML_FAST_MALLOC_CHUNK_SIZE',

                         'ACML_FAST_MALLOC_MAX_CHUNKS',

                         'ACML_FAST_MALLOC_DEBUG',

                         'MKL_NUM_THREADS',

                         'MKL_DYNAMIC')

import driverUtils, os

#-*- mode: python -*-

#############################################################################

#                                                                           #

#    Compile and Link command settings for the Linux 64 Platform            #

#                 ( AMD Opteron / Intel EM64T )                             #

#                                                                           #

#############################################################################

import os, re, glob, driverUtils

#MPI implementation handling

mpiCppImpl = ''

mp_rsh_command = 'ssh -n -l %U %H %C'

mp_mpi_implementation = PMPI

#mp_mpi_implementation = IMPI #<--- Uncomment this line and comment above line to switch to IMPI

if mp_mpi_implementation == PMPI:

    pmpipath = driverUtils.locateFile(os.environ.get('ABA_PATH', ''), 'pmpi-9.1.2/bin', 'mpirun')

    mp_mpirun_path = {PMPI: pmpipath}

    mpiCppImpl = '-DABQ_MPI_PMPI'

if mp_mpi_implementation == IMPI:

    impipath = driverUtils.locateFile(os.environ.get('ABA_PATH', ''), 'impi-4.1.1/bin', 'mpiexec.hydra')

    mp_mpirun_path = {IMPI: impipath}

    mpiCppImpl = '-DABQ_MPI_IMPI'

    

fortCmd = 'gfortran'   # <-- Fortran compiler

cppCmd  = "g++"     # <-- C++ compiler

# Avoid signal trapping by the Fortran RTE

os.environ["FOR_IGNORE_EXCEPTIONS"] = "1"

# Disable messages from the Fotran RTE

os.environ["FOR_DISABLE_STACK_TRACE"] = "1"

# Do not let QLogic InfiniPath driver set processor affinity.

os.environ["IPATH_NO_CPUAFFINITY"] = "1"

# Add the flag "-free" to the compile_fortran command below to use free-format FORTRAN 90 syntax.

#compile_fortran = [fortCmd,

#                   '-c', '-fPIC', '-extend_source', '-O3',

#                   '-Warray-bounds', '-ffree-form', '-fcray-pointer', '-I%I']

compile_fortran = [fortCmd,

                   '-c', '-fPIC', '-extend_source', '-O3',

                   '-Warray-bounds', '-I%I']

# Additional command-line options for the Intel C/C++ Compilers:

# '-cxxlib', '-Kc++eh', '-Krtti', '-Kc++', '-pc64', '-restrict', '-i-dynamic',

# '-we1011', '-we120',  '-we117', '-we556', '-we144', '-we268', '-we1224', '-we167', '-we880'

compile_cpp = [cppCmd,

               '-c', '-fPIC', '-w', '-Wno-deprecated', '-DTYPENAME=typename',

               '-D_LINUX_SOURCE', '-DABQ_LINUX', '-DABQ_LNX86_64', '-DSMA_GNUC',

               '-DFOR_TRAIL', '-DHAS_BOOL', '-DASSERT_ENABLED',

               '-D_BSD_TYPES', '-D_BSD_SOURCE', '-D_GNU_SOURCE',

               '-D_POSIX_SOURCE', '-D_XOPEN_SOURCE_EXTENDED', '-D_XOPEN_SOURCE',

               '-DHAVE_OPENGL', '-DHKS_OPEN_GL',  '-DGL_GLEXT_PROTOTYPES',

               '-DMULTI_THREADING_ENABLED', '-D_REENTRANT',

               '-DABQ_MPI_SUPPORT', '-DBIT64', '-D_LARGEFILE64_SOURCE', '-D_FILE_OFFSET_BITS=64',                

               mpiCppImpl,

               # '-O0', # <-- Optimization level

               # '-g',  # <-- Debug symbols

               '-I%I']

compile_fmu = [cppCmd,

               '-c', '-fPIC','-I%I']

link_fmu = [cppCmd,

            '-fPIC', '-shared', '-o', '%J', '%M']

link_sl = [fortCmd,

           '-fPIC', '-pthread', '-shared',

           '%E', '-Wl,-soname,%U', '-o', '%U', '%F', '%A', '%L', '%B', '-Wl,-Bdynamic']

link_exe = [cppCmd,

            '-fPIC',

            '-Wl,-Bdynamic', '-o', '%J', '%F', '%M', '%L', '%B', '%O', '-lpthread', '-lm', '-lifcoremt']

# Remove the temporary names from the namespace

del cppCmd

del fortCmd

del mpiCppImpl

if mp_mpi_implementation == PMPI:

    del pmpipath

if mp_mpi_implementation == IMPI:    

    del impipath

graphicsEnv = driverUtils.locateFile(os.environ['ABA_PATH'],'site','graphicsConfig','env')

if graphicsEnv:

    execfile(graphicsEnv)

else:

    raise 'Cannot find the graphics configuration environment file (graphicsConfig.env)'

del driverUtils, os, graphicsEnv

license_server_type=FLEXNET

abaquslm_license_file="27011@****(按照自己设置修改此处)"

verify pass

提供一些有用的链接,很有参考意义

https://www.eng-tips.com/viewthread.cfm?qid=381690

http://home.iitk.ac.in/~saiwal/engineering/abaqus2016-2017-gfortran-compiler/

https://xizou.github.io/2017/07/26/link-gfortran-to-abaqus/

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空