ABAQUS批量提交任務的兩種方法
相信大家在研究過程中都會有這個需求,進行大量工況的批量運算時,怎么讓其自動的一個一個進行提交,而無需手動提交?
這里介紹兩種方法,兩種方法各有優劣,可以根據自己實際情況進行選擇:
Bat文件提交方法;
Python提交方法。
Bat文件
Abaqus command中有一些基本的程序調取命令,經常使用服務器的小伙伴估計都不陌生。在幫助文檔《Abaqus Analysis User's Guide》的3.2.2節中詳細介紹了inp文件提交過程中的關鍵字用法,如下圖所示:
這里給出一個最簡單的inp文件提交格式如下:
abaqus job=job-name int
其中int 為 interactive的縮寫,幫助文檔解釋:在運行過程中反饋進程,隱式求解輸出log文件;顯式求解則輸出status和log文件。Interactive還有一個重要功能是:讓任務一個一個提交,而不是一次性提交運算。
為了批量提交計算,我們可以將任務提交語句寫入bat文本文件,雙擊bat文件即可提交運算;但經常會由于輸入格式錯誤而無法實現預期效果。
錯誤示例:
這也是網上經常遇到的錯誤答案:使用call作為開始關鍵字,或沒有采用int關鍵字。運行后會發現多個任務同時提交,且僅前幾個任務被提交;
正確示例:
以cmd/c為開始,并包含int或interactive關鍵字,此時任務可以順序提交。
【注意1】如果需要多cpu提交,將每行內容增加cpus=4,如下:
【注意2】bat文件和inp文件放置到相同目錄下,則可以采用相對路徑引用,如果非相同目錄,job文件則需要采用絕對路徑;
【注意3】提前將原有計算結果刪除,否則將提示“old job files exsit. overwrite?<y/n>”,為了避免此類手動操作,請先將原有計算結果文件刪除。
Python提交方法
這里主要講解ABAQUS/CAE界面下,使用Python代碼批量提交任務,代碼量很少,正文內容僅十行,可以實現:Job模塊下任務狀態為None時,順序批量的提交計算,并統計每個任務所耗費的時間。
代碼運行方式:
方式1:菜單欄File->Run Script...
方式2:在底部命令輸入窗口中粘帖上述代碼
來源:CAE愛聯盟
作者:陳佳敏cn
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















