ABAQUS批量提交任務的兩種方法

相信大家在研究過程中都會有這個需求,進行大量工況的批量運算時,怎么讓其自動的一個一個進行提交,而無需手動提交?

這里介紹兩種方法,兩種方法各有優劣,可以根據自己實際情況進行選擇:

  • Bat文件提交方法;

  • Python提交方法。

Bat文件

Abaqus command中有一些基本的程序調取命令,經常使用服務器的小伙伴估計都不陌生。在幫助文檔《Abaqus Analysis User's Guide》的3.2.2節中詳細介紹了inp文件提交過程中的關鍵字用法,如下圖所示:

ABAQUS批量提交任務的兩種方法的圖1

這里給出一個最簡單的inp文件提交格式如下:

abaqus job=job-name int

其中int 為 interactive的縮寫,幫助文檔解釋:在運行過程中反饋進程,隱式求解輸出log文件;顯式求解則輸出status和log文件。Interactive還有一個重要功能是:讓任務一個一個提交,而不是一次性提交運算

ABAQUS批量提交任務的兩種方法的圖2

為了批量提交計算,我們可以將任務提交語句寫入bat文本文件,雙擊bat文件即可提交運算;但經常會由于輸入格式錯誤而無法實現預期效果。

錯誤示例:

ABAQUS批量提交任務的兩種方法的圖3

這也是網上經常遇到的錯誤答案:使用call作為開始關鍵字,或沒有采用int關鍵字。運行后會發現多個任務同時提交,且僅前幾個任務被提交;

正確示例:

ABAQUS批量提交任務的兩種方法的圖4

cmd/c為開始,并包含int或interactive關鍵字,此時任務可以順序提交。

【注意1】如果需要多cpu提交,將每行內容增加cpus=4,如下:

ABAQUS批量提交任務的兩種方法的圖5

【注意2】bat文件和inp文件放置到相同目錄下,則可以采用相對路徑引用,如果非相同目錄,job文件則需要采用絕對路徑;

【注意3】提前將原有計算結果刪除,否則將提示“old job files exsit. overwrite?<y/n>”,為了避免此類手動操作,請先將原有計算結果文件刪除。

Python提交方法

這里主要講解ABAQUS/CAE界面下,使用Python代碼批量提交任務,代碼量很少,正文內容僅十行,可以實現:Job模塊下任務狀態為None時,順序批量的提交計算,并統計每個任務所耗費的時間

ABAQUS批量提交任務的兩種方法的圖6

代碼運行方式:

方式1:菜單欄File->Run Script...

方式2:在底部命令輸入窗口中粘帖上述代碼

ABAQUS批量提交任務的兩種方法的圖7

來源:CAE愛聯盟

作者:陳佳敏cn 

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

4
3
7