天天看點

visualstudio開始調試不執行_ABAQUS子程式調試

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. 用文本編輯器打開“SMA\site\abaqus_v6.env”檔案。

3. 找到"compile_fortran"參數,添加‘/Od’和‘/Zi’選項以使得Intel Visual Fortran compiler在編譯期生成調試符号資訊。本人的修改結果為:

visualstudio開始調試不執行_ABAQUS子程式調試

4. 找到"link_sl"參數,添加‘/DEBUG’選項以使得IntelVisual Fortran linker在連結期連結調試符号資訊到.obj檔案。本人的修改結果為:

visualstudio開始調試不執行_ABAQUS子程式調試

5. 找到 "link_exe"參數, 添加 ‘/DEBUG’ 選項以使得 Intel Visual Fortran linker 在連結期連結調試符号資訊。本人的修改結果為:

visualstudio開始調試不執行_ABAQUS子程式調試

6. 準備好 job 檔案 (*.inp) 和子程式源代碼檔案 (*.for);

7. 在子程式源代碼檔案的變量聲明段和可執行代碼段之間添加一些可以使ABAQUS暫停執行的代碼,并在适當的位置設定斷點。有多種方案,如用Sleep函數、或read語句。本人所使用的方案如下所示:

visualstudio開始調試不執行_ABAQUS子程式調試

8. 啟動 “ABAQUS Command”,送出指令“ABAQUS job=JOB_NAME user=SUBROUTINE_NAMEinteractive“;當“standard.exe”程序啟動,并且開始等待使用者鍵盤輸入時,在Visual Studio點選菜單Debug => Attach toProcess…,在彈出的對話框中找到“standard.exe”程序,最後 Attach,此時Visual Studio會啟動調試器。

visualstudio開始調試不執行_ABAQUS子程式調試
visualstudio開始調試不執行_ABAQUS子程式調試

9. 在 ABAQUS Command 視窗中輸入任意整數并回車, Visual Studio 即打開一個臨時生成的和源檔案内容完全相同的臨時代碼檔案,并在設定斷點的位置暫停,此時即可開始正常的調試過程了。

visualstudio開始調試不執行_ABAQUS子程式調試