研三需要对Abaqus进行UMAT二次开发,虽然不喜欢Fortran,但是还是需要进行安装。
本文介绍的是我第二次安装的过程。在我第一次安装的时候(昨天),我的abaqus版本为2018,安装vs2015和IVF2016后,三个subroutine的验证全部pass,但是对Fortran和C++编译的验证没有通过,所以花了一上午时间这个三个软件卸载掉。
之后重新安装了abaqus2021,vs2019和IVF2020。
以下为正文:
需要安装VS, IVF,与Abaqus三个软件,安装流程如下:
![[Pasted image 20220601105137.png]]
这三个软件的版本有严格要求,且一定要先安装VS再安装IVF,请先查询版本要求后再安装! 版本要求如下:
| Abaqus Version | VS Version | IVF Version |
|---|---|---|
| 6.12 | 2008 | 10.0/11.0 |
| 6.13 | 2008/2010 | 11.0/2011 |
| 6.14 | 2010/2012/2013 | 2011/2013 |
| 2016 | 2012/2013 | 2013 |
| 2017 | 2012/2013 | 2013 |
| 2018 | 2015 | 2016/2017 |
| 2019 | 2015 | 2016/2017 |
| 2020 | 2015 | 2016/2017 |
| 2021 | 2019 | 2020 |
| 2022 | 2019 | 2020 |
流程如下:
https://www.gofarlic.com\Programs\Abaqus2021
# 该目录下文件结构如下:
2022-06-08 13:30 <DIR> Commands
2022-06-08 13:22 <DIR> Document
2022-06-08 13:31 <DIR> plugins
2022-06-08 13:29 <DIR> Products
2022-06-08 13:11 <DIR> SolidSQUAD_License_Servers
2022-06-08 13:30 <DIR> temp
在官网的下载页面,下拉到最下方,选择更早的版本,进入页面后,选择下载,下载对应版本的VS即可。
必须要安装的是:C++的桌面开发选项
为了防止出问题,我选择的是I32和X64全部安装。
安装过程一定要耐性等待,我安装的最后一步等了很久,都准备直接关闭安装程序了,显示安装成功了!
根据 朦胧烟雨生 的视频,我发现Abaqus2022是一个很大的改动,安装和关联Fortran的时候一定要注意。
将所有程序都安装好后,就可以对三个软件进行关联。关联很难,有的人很顺利,有的人很难搞定(比如我)。
如果软件版本能够相互关联,一般安装的软件不会有错,关联后报错极大可能是由关联引起的,所以关联一定要多查资料,多尝试。
以下是我的关联历程,仅供参考:
根据教程朦胧烟雨生的教程,需要在安装完成后修改launcher.bat文件,修改后的launcher.bat文件为:
# ----- 以下为新增 ------
call "https://www.gofarlic.com\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsamd64_x86.bat"
call "https://www.gofarlic.com\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.0.166\windows\bin\ipsxe-comp-vars.bat" intel64 vs2019
# ---------------------
# ---- 以下为原始内容 ----
@echo off
call "https://www.gofarlic.com\Programs\Abaqus2021\Commands\abq2021.bat" %*
# ----------------------
改完之后打开cmd,输入以下命令进行验证:
abaqus verify -user_std
发现3个 subroutine 为 Error,而不是Pass,报错内容为:
Abaqus/Standard checked out 5 tokens from Flexnet server DESKTOP-NQDL4ID.
<9994 out of 9999 licenses remain available>.
Begin Compiling Abaqus/Standard User Subroutines
6/8/2022 4:08:47 PM
'ifort' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
Abaqus Error: Problem during compilation - std_user.for
Abaqus/Analysis exited with errors
观看 朦胧烟雨生 关于abaqus2022及对应Fortran 安装的视频中,发现他修改的文件为 Commands 文件夹下的 文件。
对该文件进行同样的操作,增加同样的内容,发现仍然报相同的错。
# ----- 以下为新增 ------
call "https://www.gofarlic.com\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsamd64_x86.bat"
call "https://www.gofarlic.com\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.0.166\windows\bin\ipsxe-comp-vars.bat" intel64 vs2019
# ---------------------
# ---- 以下为原始内容 ----
@echo off
setlocal
set ABA_COMMAND=%~nx0
set ABA_COMMAND_FULL=%~f0
"https://www.gofarlic.com\Programs\Abaqus2021\Products\2021\win_b64\code\bin\ABQLauncher.exe" %*
endlocal
# ----------------------
改完之后打开cmd,输入以下命令进行验证:
abaqus verify -user_std
发现3个 subroutine 为 Error,而不是Pass,报错内容为:
Abaqus/Standard checked out 5 tokens from Flexnet server DESKTOP-NQDL4ID.
<9994 out of 9999 licenses remain available>.
Begin Compiling Abaqus/Standard User Subroutines
6/8/2022 4:08:47 PM
'ifort' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
Abaqus Error: Problem during compilation - std_user.for
Abaqus/Analysis exited with errors
在网上搜索 ifrot问题 的解决方法时,发现了下面这篇博文:
vs2019+ivf2020+abauqs2021关联验证,子程序Error,‘ifort’ 不是内部或外部命令,也不是 - 哔哩哔哩 (bilibili.com)
按照这篇文章的方法,我只对Commands文件夹下的abq2021.bat文件进行了修改,修改内容如下:
# ----- 以下为新增内容 ------
SET PATH=%PATH%;https://www.gofarlic.com\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.0.166\windows\bin\intel64;
CALL "https://www.gofarlic.com\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.0.166\windows\bin\ifortvars" -arch intel64
CALL "https://www.gofarlic.com\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.0.166\windows\mkl\bin\mklvars" intel64
# -------------------------
# ----- 以下为原始内容 ------
@echo off
setlocal
set ABA_COMMAND=%~nx0
set ABA_COMMAND_FULL=%~f0
"https://www.gofarlic.com\Programs\Abaqus2021\Products\2021\win_b64\code\bin\ABQLauncher.exe" %*
endlocal
# -------------------------
这次没有使用 朦胧烟雨生 的方法,但是在输入
abaqus verify -user_std
验证后,所有的 subroutine 都 Pass 了,而且abaqus cae 可以正常打开。
配置ABAQUS2021+VS2019+oneAPI2022编译环境 - 知乎 (zhihu.com)
上述方法看起来也很好,但我未进行尝试
完结撒花~
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删