导读
“ 在我所有的程序 Bug 中,80% 是语法错误。剩下的 20% 中,80% 是不重要的逻辑错误。剩下的 4% 中,80% 是指针错误。最后剩下的 0.4% 是有难度的问题。”
-MarcDonner,IBM Watson 研究中心
经常做程序开发的同学都清楚,最痛苦的环节莫过于调试各类莫名其妙的错误。在之前的文章里,已经介绍过Abaqus Fortran子程序开发过程中常见的几种错误类型及相应的基本调试方法。详见以下链接:
上述方法虽然能实现对程序语法错误和逻辑错误的调试,但方法笨拙,调试效率低,那么有没有更快捷的调试方法呢?能不能像VC/VB那样直接在Visual studio环境中直接调试呢?
答案是肯定的,那么该如何实现呢?
01
—
VS环境下的Fortran子程序调试
先看看效果图,就是下面酱紫,在VS环境下打开子程序,并设置断点,当提交abaqus任务后,子程序被调用,将光标停留在变量名上时,即可实时查看变量数值,异常数据一目了然。
02
—
如何设置软件
找到Abaqus安装目录下的环境变量文件abaqus_v6.env或win86_64.env,将其中“compile_fortran”参数、“link_sl” 参数及“link_exe”参数中的注释符号去掉。就这么简单。
03
—
如何体验
最简单的体验方式,直接在CAE中提交任务(也可以使用命令提交任务),当进程中出现“standard.exe”或“explicit.exe”进程时,切换到VS界面下,将“standard.exe”或“explicit.exe”附加到进程即可。
你就可以看到惊喜了。
此外,在使用Abaqus command提交任务时,还可以在代码中加入read或者pause之类的暂停语句,以防止计算量小的模型瞬间就运算结束了。
上述调试方法适合调试逻辑错误哈,一般的语法错误还是直接查找与任务同名的.log文件更方便一些。