2020 pycharm 安装包太慢_Abaqus和Fortran的配置2020版

本文详细介绍了如何配置Abaqus 2020与Visual Studio 2019及Intel Parallel Studio 2020中的iFortran,解决启动时字符长度限制问题。教程中提到,通过调整bat文件路径和内容,确保Abaqus能正确调用Fortran编译器进行用户定义子程序的计算任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Abaqus的CAE用户界面前/后处理可以使用Python语言控制和二次开发,但它的核心求解器,Abaqus/Standard和Abaqus/Explicit则是使用Fortran语言编写的。想要使用各种用户定义子程序,如UMAT,UHYPER等,就需要使用Fortran。而Abaqus安装完并没有自带Fortran编译器,所以需要用户自己安装并完成Abaqus和Fortran编译器的连接。

互联网上能查到的Abaqus与Fortran的连接大多数基于Abaqus6.14和VS2013版。这么多年过去了,虽然方法变化不大,但我调试时也遇到了一些小坑。经过努力被我解决,写出来作为教程供大家参考。

本教程基于达索SIMULIA 2020+Visual Studio2019+Intel Parallel Studio 2020


简略版:

  1. 安装Abaqus.

  2. 安装VS2019.

  3. 安装iFortran2020.

  4. 找到两个bat文件的位置。它们分别是vcvarsall.bat和ifortvars.bat.

  5. 在开始菜单里Abaqus CAE的快捷方式 目标 栏里,输入以下内容(请自行替换前面两个bat文件的位置,第三个launcher.bat是原来就有的,目录不变)

"...\ifortvars.bat" intel64 && "...\vcvarsall.bat" amd64 && "...\launcher.bat" cae || pause

  6. 【如果你运气好的话】运行一下verification,看到全部pass的提示,再打开Abaqus/CAE界面运行一个分析,没有报错,说明连接成功。


然而,你也有可能和我一样运气不好。临床表现为:verification仍然可以通过,但是你用Abaqus/CAE用户界面提交计算任务的时候,会看到这个提示。

7173790b21b2d1ece4698a1e5aeac9e1.png

真是简单粗暴没有任何信息的错误提示呢

解决方法就是把上面那部分内容的长度缩减到256个字符以内。具体操作就需要把这三个bat文件之一或之二挪到更浅层的目录下。更具体的……就慢慢往下翻吧。


详(luo)细(suo)版:

  1. 安装Abaqus。Abaqus的安装包一般被达索封装成SIMULIA SUITE 2020,包含Abaqus、iSight、Tosca和FE-Safe等软件。这个安装过程略。

  2. 下载安装Visual Studio. 作为”宇宙第一IDE“,微软给了Visual Studio一个免费的社区版Community选项。付费功能大概是给一个Azure的代码托管,我也不太懂,不转行去做程序猿的话应该是用不到。

    下载链接:

    https://visualstudio.microsoft.com/zh-hans/

    其实不用下载完整安装包。下载一个几十Mb的在线安装器,只选择最基础的功能即可。如果有Python的需要可以再装一个Python扩展。不过Python的话,Anaconda或者Pycharm它不香吗。

     (安装过程忘了截图,具体需要多大硬盘空间忘了)

    6dec0600f0114425f9c569313f238f56.png

    af457252514c2a34a53ac432c0f181cf.png

  3. 下载安装英特尔的iFortran。学名叫Intel Parallel Studio XE.

    下载链接:

    https://software.intel.com/content/www/us/en/develop/tools/parallel-studio-xe/choose-download.html

    目前世界上的Fortran编译器主要就两种,一种是GCC家开源的GFortran,另一种就是Intel的iFortran。英特尔这个不是免费的,但是学生可以使用edu后缀的邮箱申请一年免费的序列号。一年期满后则需要重新申请。

    f837899ede8f8603e8427da0b9c6363f.png

    这个Parallel Studio也没必要下载完整安装包,可以选第一个,按需下载。只需要安装64位的Fortran编译器即可。除此之外,MKL还是可以安装一下的,毕竟是英特尔参与维护的数学计算核心库~

    别的东西我都不会玩,就先不占硬盘空间了。

  4. 连接。

    这一步也是最关键的。主要有两种方法,但核心思路都一样,就是让Abaqus软件在运行的时候后台能够调用到Visual Studio和iFortran。为了实现这个目标,我们需要找到两个bat文件。这也是2020版和2013版本有小小区别的地方。

在我的电脑上,VS的这个文件位于:

D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat

iFortran的这个文件在:

D:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.2.254\windows\bin\ifortvars.bat

方法一:修改Abaqus的快捷方式。打开开始菜单,右键单击Abaqus快捷方式打开文件位置,右键属性。可以看到原来的Abaqus快捷方式指向的是一个launcher.bat文件。

d92b2065115499940303225d716ec5bb.png

按照上面简略版的做法,把完整目录输入进去,这个快捷方式的目标应该指向:

"D:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\bin\ifortvars.bat" intel64 && "D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64 && "D:\SIMULIA\EstProducts\2020\win_b64\resources\install\cae\launcher.bat" cae || pause

试着输入进去,会发现这一段你写不全。说明快捷方式指向的目标有字符长度限制。

12963da51b2dada982859442991ab7dc.png

290个字符超出了长度限制,那么取个整,这个长度限制肯定就是256字符了。

所以尝试方法二——直接去修改启动时的bat文件。

先追过去看看上面那个快捷方式launcher.bat里面写了啥——

df2628ef9646c4229178ba6cdcb4ee6e.png

……禁止套娃。

那么,去找到这个abq2020.bat文件。它里面原来的内容是:

  @echo off  setlocalset ABA_COMMAND=%~nx0set ABA_COMMAND_FULL=%~f0"D:\SIMULIA\EstProducts\2020\win_b64\code\bin\ABQLauncher.exe" %*endlocal

为了连接Fortran,在它的第一行 @echo off后面增加两行内容。

@Call "D:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2020.2.254\windows\bin\ifortvars.bat" intel64   @Call "D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64

    5. 验证。

在开始菜单里找到verification,运行即可。

c5b17e0d18fd750a71f212abc2e7ee24.png

话说之前曾经把Abaqus和验证装在C盘,由于没有读写权限导致验证一闪而过就消失了。这次我把安装和临时文件夹都放在了D盘,验证就很顺利。

ba73403ebbfc5441542f527a4a5e756e.png

51d97d81f1b8289adae05b0e912ac90f.png

    6. 但是,不出意外的,遇到了问题。

在verification通过的情况下,使用Abaqus/CAE界面提交计算任务,会报错:

e1b030678d6699e374fae3bdef25a7ff.png

界面上没有其他信息。log文件也没有。只有在Abaqus后面的cmd黑框里有一句话“输入行太长。命令语法不正确。”

说明在第4步中无论用两种方法的哪一种,本质上都绕不过后台某处256字符的长度限制。想要让它能够运行,只有一种方法——把前面第4步里长度为290字符的那一串命令,缩短到256字符内。

那就试着把这三个bat文件从它们的“深闺”中搬出来呗。

然而,阅读ifortvars.bat和vcvarsall.bat文件发现,二者都和其父目录下的很多文件有关联关系。如果想要给它俩搬家的话,拔起萝卜带出泥,可能就要连根一起移植走。

只有Abaqus原来的那个启动文件看上去比较好欺负,launcher.bat内容只有一行,与其他文件没有依赖关系。所以唯一的选择就是搬走这个launcher.bat,搬到一个更浅的目录下。

D:\ABAQUStemp\launcher.bat

最终我还是选择了第一种方法,写在Abaqus快捷方式里的目标如下:

"D:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\bin\ifortvars.bat" intel64 && "D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64 && "D:\ABAQUStemp\launcher.bat" cae || pause

这段代码共246个字符,满足了不超过256个字符的限制。经过尝试,bingo!成功。使用Abaqus/CAE界面提交包含UMAT子程序的计算任务也能正确得到结果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值