Abaqus 与 Fortran 的连接

之前使用学校的自动升级程序安装的 Abaqus 6.14.3 居然没有自动连接 Fortran 编译器,导致使用用户子程序的时候发生编译错误。试了好半天才找到解决办法,记录备查。

错误提示关键信息为,

'ifort' is not recognized as an internal or external command,
operable program or batch file.
Abaqus Error: Problem during compilation ......

Abaqus 运行特殊功能时需要的搭配程序一般有两个,一个是 Intel 的 Fortran 编译器,一个是 Microsoft 的 VS 环境。虽然版本经常会变,但是方法好像没变。所以这里只是给个例子,具体的路径和文件名以及代号可能需要再查或者在系统安装的程序中查找。这里是针对 64 位系统。

Fortran:

C:\Program Files (x86)\Intel\Compiler\11.1\051\bin\ifortvars.bat

Visual Studio:

c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat

有两个方法可以采用。方法一最简单,但是有时候不一定可以操作;方法二只复杂了一丢丢,所以也记上。我用的方法二,因为我对电脑的系统的操作有权限限制,属性里的目标项目为灰色无法编辑,所以无法使用方法一。

方法一

修改 Abaqus 启动项的属性。依次,

  1. 依次展开 开始 -> 所有程序 -> Abaqus 6.14-3
  2. 右键单击 Abaqus CAE,选择 属性
  3. 快捷方式选项卡中修改目标 Abaqus6143 为下面的一串指令(与上面提到的 Fortran 和 VS 路径一致),
    "C:\Program Files (x86)\Intel\Compiler\11.1\051\bin\ifortvars.bat"  intel64 && "c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" amd64 && "C:\Program Files (x86)\SIMULIA\Abaqus\Commands\abq6143.bat" cae || pause

    并确定保存设置。文件路径需要与系统中安装的一致。

修改完成后可运行同在此处的 Abaqus Varification 检查。

方法二

修改启动文件。

假设 Abaqus 安装目录为 C:\Program Files (x86)\SIMULIA\Abaqus,此目录下有 Commands 文件夹,里面有 Abaqus 启动的批处理文件 abaqus.batabq6143.bat 等。修改它们其中一个(多半是带版本号的那个,因为这个与方法一中启动项的属性里面的快捷方式目标一致)或两个都修改(需要试试看哪种方式可用)。

abaqus.bat 原内容:

@echo off
"C:\Program Files (x86)\SIMULIA\Abaqus\Commands\abq6143.bat" %*

abq6143.bat 原内容:

@echo off
"C:\Program Files (x86)\SIMULIA\Abaqus\6.14-3\code\bin\abq6143.exe" %*

@echo off 下面插入下面两行内容,

@Call "C:\Program Files (x86)\Intel\Compiler\11.1\051\bin\ifortvars.bat" intel64
@Call "c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" amd64

保存即可。文件路径需要与系统中安装的一致。

修改完成后可运行开始菜单启动项里的 Abaqus Varification 检查。©

本文发表于水景一页。永久链接:<https://cnzhx.net/fe/2016/07/14/link-abaqus-and-fortran/>。转载请保留此信息及相应链接。

雁过留声,人过留名

您的电子邮箱地址不会被公开。 必填项已用 * 标注

特别提示:与当前文章主题无关的讨论相关但需要较多讨论求助信息请发布到水景一页讨论区的相应版块,谢谢您的理解与合作!请参考本站互助指南
您可以在评论中使用如下的 HTML 标记来辅助表达: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>