配置Abaqus2021 + VS2019 + IVF2020编译环境

配置Abaqus2021 + VS2019 + IVF2020编译环境

背景介绍

研三需要对Abaqus进行UMAT二次开发,虽然不喜欢Fortran,但是还是需要进行安装。

本文介绍的是我第二次安装的过程。在我第一次安装的时候(昨天),我的abaqus版本为2018,安装vs2015和IVF2016后,三个subroutine的验证全部pass,但是对Fortran和C++编译的验证没有通过,所以花了一上午时间这个三个软件卸载掉。

之后重新安装了abaqus2021,vs2019和IVF2020。

以下为正文:

软件安装

版本要求

需要安装VS, IVF,与Abaqus三个软件,安装流程如下:

![[Pasted image 20220601105137.png]]

这三个软件的版本有严格要求,且一定要先安装VS再安装IVF,请先查询版本要求后再安装! 版本要求如下:

Abaqus VersionVS VersionIVF Version
6.12200810.0/11.0
6.132008/201011.0/2011
6.142010/2012/20132011/2013
20162012/20132013
20172012/20132013
201820152016/2017
201920152016/2017
202020152016/2017
202120192020
202220192020

Aabaqus安装

流程如下:

  1. 添加 NOLICENCECHECK: true 系统变量
  2. 关闭杀毒软件及防火墙
    1. 安装Abaqus,Abaqus2022需要安装JDK,本次安装2021版
  3. 创建Abaqus安装目录,本机为
D:\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
  1. 安装 license
  2. 安装 iso 文中的 1/setup
  3. 分别加载 iso 文件中的5,2,3文件夹:注意,可以把Abaqus的安装文件夹设置为我们事先准备好的文件夹
  4. 完成安装

VS安装

在官网的下载页面,下拉到最下方,选择更早的版本,进入页面后,选择下载,下载对应版本的VS即可。

必须要安装的是:C++的桌面开发选项

IVF安装

为了防止出问题,我选择的是I32和X64全部安装。

安装过程一定要耐性等待,我安装的最后一步等了很久,都准备直接关闭安装程序了,显示安装成功了!

根据 朦胧烟雨生 的视频,我发现Abaqus2022是一个很大的改动,安装和关联Fortran的时候一定要注意。

Link Abaqus and IVF

将所有程序都安装好后,就可以对三个软件进行关联。关联很难,有的人很顺利,有的人很难搞定(比如我)。

如果软件版本能够相互关联,一般安装的软件不会有错,关联后报错极大可能是由关联引起的,所以关联一定要多查资料,多尝试

以下是我的关联历程,仅供参考:

尝试1:修改 launcher.bat (失败)

根据教程朦胧烟雨生的教程,需要在安装完成后修改launcher.bat文件,修改后的launcher.bat文件为:

# ----- 以下为新增 ------
call "D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsamd64_x86.bat"
call "D:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.0.166\windows\bin\ipsxe-comp-vars.bat" intel64 vs2019
# ---------------------

# ---- 以下为原始内容 ----
@echo off
call "D:\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

尝试2:修改 abq2021.bat (失败)

观看 朦胧烟雨生 关于abaqus2022及对应Fortran 安装的视频中,发现他修改的文件为 Commands 文件夹下的 文件。

对该文件进行同样的操作,增加同样的内容,发现仍然报相同的错。

# ----- 以下为新增 ------
call "D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsamd64_x86.bat"
call "D:\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
"D:\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

尝试3:其它方法修改 abq2021.bat (成功)

在网上搜索 ifrot问题 的解决方法时,发现了下面这篇博文:

vs2019+ivf2020+abauqs2021关联验证,子程序Error,‘ifort’ 不是内部或外部命令,也不是 - 哔哩哔哩 (bilibili.com)

按照这篇文章的方法,我只对Commands文件夹下的abq2021.bat文件进行了修改,修改内容如下:

# ----- 以下为新增内容 ------
SET PATH=%PATH%;D:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.0.166\windows\bin\intel64;
CALL "D:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.0.166\windows\bin\ifortvars" -arch intel64
CALL "D:\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
"D:\Programs\Abaqus2021\Products\2021\win_b64\code\bin\ABQLauncher.exe" %*
endlocal
# -------------------------

这次没有使用 朦胧烟雨生 的方法,但是在输入

abaqus verify -user_std

验证后,所有的 subroutine 都 Pass 了,而且abaqus cae 可以正常打开。

未尝试的方法

配置ABAQUS2021+VS2019+oneAPI2022编译环境 - 知乎 (zhihu.com)

上述方法看起来也很好,但我未进行尝试

完结撒花~

Reference

  1. 该博主录制了所有版本Abaqus安装链接IVF的视频,非常棒:朦胧烟雨生的个人空间_哔哩哔哩_bilibili
  2. 该博主提供了VS2019和IVF2020的安装包:Abaqus子程序关联教程-适用于abaqus2022/2021/2020等_哔哩哔哩_bilibili
  3. 该博主提供了"‘ifort’ 不是内部或外部命令"的解决方案:vs2019+ivf2020+abauqs2021关联验证,子程序Error,‘ifort’ 不是内部或外部命令-哔哩哔哩
  4. 该博主介绍了另外一种link方式:配置ABAQUS2021+VS2019+oneAPI2022编译环境 - 知乎
  • 13
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
您好!关于Abaqus 2017与VS2013和IVF2013的关联,我可以为您提供一些指导。 首先,Abaqus 2017是一个有限元分析软件,它通常与Visual Studio(VS)和Intel Visual Fortran(IVF)等开发工具进行集成。下面是一些步骤,您可以按照这些步骤来关联这些工具: 1. 安装VS2013:请确保您已经成功安装了Visual Studio 2013。如果您还没有安装,您可以从Microsoft官方网站下载并安装它。 2. 安装IVF2013:同样地,您需要安装Intel Visual Fortran 2013。您可以从Intel官方网站下载IVF并按照指示进行安装。 3. 配置环境变量:在成功安装VS2013和IVF2013后,您需要将相关的路径添加到系统的环境变量中。具体来说,您需要将IVF编译器和VS开发工具的路径添加到系统的Path变量中。 4. 关联Abaqus与VS和IVF:打开Abaqus 2017软件,在"Tools"菜单中选择"Add User Subroutine"。在弹出的窗口中,选择"Intel Fortran"作为编译器,并选择"Visual Studio"作为编辑器。然后,选择正确的编译器版本和路径。 5. 编写和编译用户子程序:根据您的需求,编写用户子程序代码,并在Visual Studio中进行编辑。然后,使用IVF编译器将代码编译成动态链接库(DLL)文件。 6. 在Abaqus中使用用户子程序:将编译后的DLL文件复制到Abaqus安装目录中的"site"文件夹下。然后,在Abaqus的输入文件中通过关键字调用您的用户子程序。 请注意,以上步骤是一般的指导,具体操作可能会有所不同,取决于您的系统配置和软件版本。如果您遇到任何问题,建议您查阅Abaqus和相关工具的官方文档或向他们的支持团队寻求帮助。 希望这些信息对您有所帮助!如果您还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值