声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2463|回复: 0

通过Visual Studio调试ABAQUS子程序

[复制链接]
发表于 2016-6-20 09:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
  1.安装、配置ABAQUS UserSubroutine 的开发环境;
     本人使用的开发工具组合为 Windows 7 (x64)+ ABAQUS 6.12-1 (x64) +Visual Studio 2008 + Intel Visual Fortran 11.1.060 + IMSL Fortran Library 6.0(可选项)。首先使用 ABAQUS官方所建议的方法编译、运行简单的示例子程序,确保开发环境能正常工作。

  2. 用文本编辑器打开“C:\SIMULIA\Abaqus\6.12-1\SMA\site\abaqus_v6.env”。

  3. 找到"compile_fortran"参数,添加‘/Od’和‘/Zi’选项以使得Intel Visual Fortran compiler在编译期生成调试符号信息。本人的修改结果为:
         1.png

  4. 找到"link_sl"参数,添加‘/DEBUG’选项以使得IntelVisual Fortran linker在链接期链接调试符号信息到.obj文件。本人的修改结果为:
          2.png

  5. 找到 "link_exe"参数, 添加 ‘/DEBUG’ 选项以使得 Intel Visual Fortran linker 在链接期链接调试符号信息。本人的修改结果为:
         3.png

  6. 准备好 job 文件 (*.inp) 和子程序源代码文件 (*.for);
  7. 在子程序源代码文件的变量声明段和可执行代码段之间添加一些可以使ABAQUS暂停执行的代码,并在适当的位置设置断点。有多种方案,如用Sleep函数、或read语句。本人所使用的方案如下所示:
          4.png
  8. 启动 “ABAQUS Command”,提交命令“ABAQUS job=JOB_NAME user=SUBROUTINE_NAMEinteractive“;当“standard.exe”进程启动,并且开始等待用户键盘输入时,在Visual Studio点击菜单Debug => Attach toProcess…,在弹出的对话框中找到“standard.exe”进程,最后 Attach,此时Visual Studio会启动调试器。
         5.png
  9. 在 ABAQUS Command 窗口中输入任意整数并回车, Visual Studio 即打开一个临时生成的和源文件内容完全相同的临时代码文件,并在设置断点的位置暂停,此时即可开始正常的调试过程了。
       6.png
  10.Enjoy and Thanks!


来源:FEAonline  有限元在线

回复
分享到:

使用道具 举报

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-26 04:39 , Processed in 0.127631 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表