ANSYS14.5 在 win7 64 位环境下的 UPFs 二次开发编译连接
郑恒 中南大学 湖南长沙
1 UPFs 二次开发安装
1.1 ANSYS 14.5 的安装
在安装 ANSYS 14.5 时,ANSYS 在默认的情况下是不安装 UPFs 二次开发相关文件,如
图 1.1 所示,需要用户点选“ANSYS Customization Files”选项才能利用 UPFs 进行二次开发,
其他版本的 ANSYS 在默认情况下也是不安装这些文件的,需要用户在安装时注意自行点选
安装。之前我已经安装了 ANSYS14.5,后来我直接卸载了重新安装,重新安装时只需要用
户点选“ANSYS Customization Files”选项,其余的安装和以往的安装过程是一样的。
图1.1 ANSYS 14.5各个安装组件和模块图
安装好了后,ANSYS 14.5 会将相关的二次开发的 Fortran 文件存放在其安装目录下
D:\####(必须是英文目录)\ANSYS Inc\v145\ansys\customize\user(由于 ANSYS 14.5 版本的安
装文件较大,我放在 D 盘),如图 1.2 所示,用户可以从中找到自己所需要的 Fortran 程序文
件对其进行修改,然后编译连接,即可生成自定义版本的 ANSYS。
图1.2 ANSYS Inc\v145\ansys\customize\user文件夹下Fortran程序文件
1.2 安装 Fortran 编译器
首先,弄明白 Fortran 和 Visual Studio 的兼容关系,如表 1.1 所示;其次选择合适的版本
进行安装。之前我已经安装过 Visual Studio 2010,放在 D 盘,后来我尝试着安装 Intel Fortran
v13.0,并且也放在 D 盘。后来发现在进行编译过程连接时,需要设置环境变量;参考 ANSYS
12.0 版本的环境变量设置方法,进行设置,发现在 Visual Studio 2010 里安装目录里找不到
VC\PlatformSDK 这个文件夹,这应该是由于在 Visual Studio 2010 里 PlatformSDK 被其他的
取代的缘故吧!为了不把时间浪费在尝试 Visual Studio 和 Fortran 版本的选择以及环境变量
的设置上,参考 Simwe 仿真论坛中 ANSYS UPFs 二次开发教程(原创,持续更新)
http://forum.simwe.com/thread-1021888-1-1.html 此贴中第十四部分相关的方法,选择安装
Visual Studio 2008 和 Intel Fortran11.1.038。
表 1.1 Fortran 和 Visual Studio 的兼容关系表
Intel Fortran 版本
兼容的 Visual Studio
v10.0
v10.1(10.1.019 之后)
v11.0, v11.1
v12.0, v12.1 (XE2011)
v13.0 (XE2013)
2003, 2005
2003, 2005, 2008
2003, 2005, 2008
2005, 2008, 2010
2008, 2010, 2012
在安装 Visual Studio 2008 和 Intel Fortran11.1.038 时,都采用默认安装方式直接安装在 C
盘,从而可以无需进行系统环境变量的设置,就可以编译成功。
2 UPFs 二次开发编译连接的设置
以 Fortran 子程序 user02.F 为进行说明:
2.1 修改 Fortran 用户子程序 user02.F
该 Fortran 用户子程序 user02.F(Fortran 用户子程序存放在安装目录下 D:\ ####(必须是
英文目录)\ANSYS Inc\v145\ansys\customize\user)的功能是实现所选节点的移动,程序中的
主要代码不做改动,只是在输出代码上增加自己的 Logo。即将原程序中的代码进行修改,
修改的过程如下:
原程序代码如下:
c ***** write to GUI window *****
call erhandler ('user02',3000,
x 2,'NODE OFFSET COMPLETE',0.0d0,' ')
将上述原程序代码修改成如下所示:
c ***** write to GUI window *****
call erhandler ('user02',3000,
x 2,'oxyzNODE OFFSET COMPLETE',0.0d0,' ')
修改完成后进行保存。
2.2 UPFs 二次开发编译连接设置
将已经修改 好的 Fortran 用户子程序 user02.F 文件复制到 D:\ ####(必须是英文目
录)\ANSYS Inc\v145\ansys\custom\user\winx64 文件目录下,如图 2.1 所示。
图2.1 ANSYS Inc\v145\ansys\custom\user\winx64目录下文件图
也可以将 ANSCUST.bat、ansys.lrf、ansysex.def 程序文件和已经修改好的 Fortran 用户子
程序 user02.F 文件复制到任意磁盘分区的任意英文目录下进行编译连接。但这两种方式的编
译连接的方法稍微有所区别:前者可以直接点击“开始\ANSYS 14.5\Utilities\ANS_ADMIN
14.5” 进 行 编 译 连 接 , 也 可 以 直 接 双 击 D:\####( 必 须 是 英 文 目 录 )\ANSYS
Inc\v145\ansys\custom\user\winx64 文件目录中的“ANSCUST.bat”Windows 批处理文件进行编
译连接;而后者只能直接双击自定义目录下的“ANSCUST.bat”Windows 批处理文件进行编译
连接。
现在将两种方法都进行了尝试性验证如下:
2.2.1 方法一
点击“开始\ANSYS 14.5\Utilities\ANS_ADMIN 14.5”,弹出如图 2.2 所示的对话框。
图2.2 ANS_ADMIN 14.5编译连接对话框
点击“Relink ANSYS”,弹出如图 2.3 所示的窗口。
图2.3 弹出DOS窗口
在图 2.3 中也说明上述两种编译连接的方法。在弹出如图 2.3 所示的窗口,按任意键后,
弹出“Do you want to link theWind Turbine Aeroelastic library with Mechanical APDL?”,如图 2.4 所示。
图2.4 弹出DOS窗口
输入“Y”后,弹出如图 2.5 所示的 DOS 窗口,此时编译连接还没有完成,接着弹出如图
2.6 所示的 DOS 窗口,有时编译连接耗时比较长,请耐心等待。
图2.5 弹出DOS窗口
图2.6 弹出DOS窗口
直至弹出的 DOS 窗口显示“LINK WAS SUCCESSFUL”,如图 2.7 所示,说明编译连接基
本成功。但在图 2.7 的 DOS 窗口提示显示“Do you want to copy the runtime DLLs?”,
上面的几行英文对此进行了简单的说明,复制一些必要的 the necessary runtime DLLs,如果
你输入的是“N”可能在后面的激活 UPFs 时,弹出“缺少相应的***.dll”错误窗口(我已经验证
过)。为了避免后面激活 UPFs 时,弹出错误窗口,选择输入“Y”,在复制了 107 个***.dll
文件后,如图 2.8 所示,此时编译连接才成功。
编译连接成功后,会在相应的目录文件下生成的自定义 ANSYS.exe 和其他一系列的文
件,如图 2.9 所示。
图2.7 弹出显示“LINK WAS SUCCESSFUL”DOS窗口
图2.8 显示复制必要的***.dll文件完成DOS窗口