
發布
注冊
/
登錄abaqus command的案例
Abaqus運行Python腳本的方法實操
圖4 File下拉菜單運行腳本文件
4從啟動屏幕運行腳本
此種方式是在剛啟動Abaqus/CAE界面時運行腳本文件,如圖5所示。
圖5從啟動屏幕運行腳本
5 Abaqus command命令行窗口執行
此種方式不用先行打開Abaqus/CAE 界面,而直接打開Abaqus Command即可。如圖6所示,在Abaqus Command 窗口輸入命令:
abaqus cae script= calcu_10.py
如圖6所示,即可自行運行腳本文件calcu_10.py,同時還打開Abaqus/CAE界面,如果不打開Abaqus/CAE程序界面,則輸入:
Abaqus cae nogui= calcu_10.py
此時運行腳本文件時不打開Abaqus/CAE界面。
這里注意一個問題:腳本文件的位置應該和Abaqus Command的指示位置一致,如果不一致需要指定腳本文件的位置,也即在前面用cd命令打開文件夾:如圖7所示:
cd E:\CAE Tech\10
圖6 Abaqus command命令行窗口執行
圖7 指定腳本文件位置
6從命令行接口運行腳本
這種方式和第一種類似,同樣在Abaqus/CAE的下面命令行窗口輸入,不過不同的是直接用函數execfile(‘myscript.py’),直接執行整個腳本文件,類似于將腳本文件當做一個宏文件的處理方式。
展開 CMD在CAE二次開發中的應用和批處理(batch)
第二種是通過Abaqus Command 打開,因為Abaqus Command是Abaqus的命令提示符窗口。
2. ANSYS
在對ANSYS進行外部調用時,采用其他外部語言均可以由相關的模塊或者函數來啟動ANSYS,VB的shell函數可以啟動:
Shell的語法:Shell(PathName[,WindowStyle])。
PathName 為必需參數。類型為String,它指出了要執行的程序名,以及任何需要的參數或命令行變量,也可以包括路徑名。WindowStyle為可選參數。Integer類型,指定在程序運行時窗口的樣式。
Shell("C:\Windows\SysWOW64\cmd.exe /c abaqus cae nogui=pre.py & abaqus cae script=Post.py", vbNormalFocus)
上式通過Abaqus Command啟動Abaqus執行Py腳本文件進行有限元分析過程,那么ANSYS同理。
Python語言啟動ANSYS還是Abaqus也都有對應的模塊或函數。
這里說一種:
p=subprocess.Popen("C:\Windows\SysWOW64\cmd.exe /k abaqus cae nogui=case_1_pre.py & abaqus cae script=case_1_post.py")
通過subprocess函數打開Abaqus Command 并且執行py腳本文件進行有限元分析;由此方法同樣可以執行inp文件執行有限元分析過程。
那么,由Python啟動ANSYS并且執行批處理也是一樣的,可以執行。
其實,稍微總結即可知道,只要能夠通過CMD啟動程序并且執行軟件的批處理文件,那么在外部語言的調用下,同樣就可以啟動軟件完成相關計算分析。
展開 基于Abaqus的VB計算程序開發
最終實現的功能如圖4所示,生成的py文件:
圖4 Py腳本文件
(3)開始計算
啟動Abaqus調用Python腳本文件在VB里面比較好的實現方法是利用Abaqus Command命令提示符窗口。因此,在VB里面只需要通過shell函數啟動計算機里面的Abaqus Command并且在窗口輸入調用語句即可。
Private Sub 開始計算_Click(sender As Object, e As EventArgs) Handles 開始計算.Click
Dim exe As String
exe = "C:\Windows\SysWOW64\cmd.exe /c abaqus cae nogui=" & 工作目錄.Text & "\script.py" '文件夾不能有空格
Shell(exe, vbNormalFocus)
End Sub
定義了一個字符串變量,獲取Abaqus Command的位置,并且輸入語句:
abaqus cae nogui=script.py.
這里有兩個地方需要注意:1)腳本文件所在的工作目錄不許存在空格,否則無法調用;2)如果Abaqus Command的位置和腳本文件位置不在一起,需要指定腳本文件的具體位置。
展開 基于Abaqus的VB計算程序開發
最終實現的功能如圖4所示,生成的py文件:
圖4 Py腳本文件
(3)開始計算
啟動Abaqus調用Python腳本文件在VB里面比較好的實現方法是利用Abaqus Command命令提示符窗口。因此,在VB里面只需要通過shell函數啟動計算機里面的Abaqus Command并且在窗口輸入調用語句即可。
Private Sub 開始計算_Click(sender As Object, e As EventArgs) Handles 開始計算.Click
Dim exe As String
exe = "C:\Windows\SysWOW64\cmd.exe /c abaqus cae nogui=" & 工作目錄.Text & "\script.py"
'文件夾不能有空格
Shell(exe, vbNormalFocus)
End Sub
定義了一個字符串變量,獲取Abaqus Command的位置,并且輸入語句:
abaqus cae nogui=script.py.
這里有兩個地方需要注意:1)腳本文件所在的工作目錄不許存在空格,否則無法調用;2)如果Abaqus Command的位置和腳本文件位置不在一起,需要指定腳本文件的具體位置。
轉自公眾號——ABAQUS大世界
旨在分享,若侵即刪.
展開 
命令行提交 Abaqus 任務
解決方案可見《常見問題2.0》:假如你的 abaqus.bat 是在 d:\ABAQUS\Commands 下面,在dos下輸入一下命令:
path=%path%;d:\ABAQUS\Commands
想多 cpu 運算(比如 4cpus):
提交任務:
abaqus job=jobname1 int
改為提交任務:
abaqus job=jobname1 cpus=4 int
有些顯式運算,incretment 太多的話(比如多于 30w ),建議用雙精度提交任務:
abaqus job=jobname1 int
改為提交任務:
abaqus job=jobname1 double int
但是誰都知道雙精度比單精度費時,所以沒有如果必要的話,就不需要加這個了。
如果不加int會怎么樣呢?
提交任務:
abaqus job=jobname1 int
改為提交任務:
abaqus job=jobname1
后面加了 int,dos 窗口會顯示任務進行到哪個階段。比如是 pre.exe,還是 standard explicit.exe,還是conpleted,都會給你提示。不加 int 就沒有這些提示了。
如何看任務進程:
一般就是看 .sta 文件。老手推薦 UltraEditor,能自動更新文件內容,可以試試。
Abaqus warning: The .inp extension has been removed from the job identifirer.
出這個一般是因為有的新手提交 job 的時候添加了 inp 后綴,如
abaqus job=jobname.inp
去掉 inp 后綴即可。即使不去掉,軟件也自動忽略這個后綴,這個只是告示說明,不影響計算。
3.
展開 [轉]通過Visual Studio調試ABAQUS子程序
啟動 “ABAQUS Command”,提交命令“ABAQUS job=JOB_NAME user=SUBROUTINE_NAMEinteractive“;當“standard.exe”進程啟動,并且開始等待用戶鍵盤輸入時,在Visual Studio點擊菜單Debug => Attach toProcess…,在彈出的對話框中找到“standard.exe”進程,最后 Attach,此時Visual Studio會啟動調試器。
9. 在 ABAQUS Command 窗口中輸入任意整數并回車, Visual Studio 即打開一個臨時生成的和源文件內容完全相同的臨時代碼文件,并在設置斷點的位置暫停,此時即可開始正常的調試過程了。
10.Enjoy and Thanks!
展開 ODB to Output2:將ABAQUS結果文件轉譯為NASTRAN的output2文件
例子:我要將D:\Python_Sec_Development\Abaqus\odbtooutput2目錄下的Job-Geely.odb的前三個step轉譯為output2,需要在Abaqus Command中輸入:
cd D:\Python_Sec_Development\Abaqus\odbtooutput2
abaqus toOutput2 job=Job-Geely-step1 odb=Job-Geely step=1
abaqus toOutput2 job=Job-Geely-step2 odb=Job-Geely step=2
abaqus toOutput2 job=Job-Geely-step3 odb=Job-Geely step=3
目前還沒有找到更好的辦法,使得前三個step轉譯到一個output2文件中,如果哪位大俠了解,請不吝賜教。
展開 Abaqus幫助文獻inp使用方法
8.在abaqus commands中寫入abaqus job=tiretransfer_symmetric int會出現old job name,在后邊填入之前的計算結果名:tiretransfer_axi_half。計算就可以繼續了。隨后在abaqus中打開odb就可以查看計算結果了。
VS環境下調試ABAQUS 2016子程序的處理辦法
本人所使用的方案如下所示:
10.啟動 “ABAQUS Command”,提交命令 “abaqus job=JOB_NAME user=SUBROUTINE_NAME int “;當 “standard.exe”/“explicit.exe” 進程啟動,并且開始等待用戶鍵盤輸入時,在Visual Studio點擊菜單Debug => Attach to Process…,在彈出的對話框中找到“standard.exe”/“explicit.exe” 進程,最后Attach,此時Visual Studio會啟動調試器。
11.在ABAQUS Command 窗口中輸入回車,Visual Studio即打開一個臨時生成的和源文件內容完全相同的臨時代碼文件,并在設置斷點的位置暫停,此時即可開始正常的調試過程了。
展開 【使用心得】計算機集群,定義環境變量
通過.bashrc定義環境變量和快捷調用方式,aba21 調用abaqus2021版本,aba17調用2017版本
bashrc目錄 home/用戶
ls -a 可以查看
定義abaqus 2021 和 2017兩個版本的環境變量
# User specific aliases and functions
alias aba21=/public/software/apps/abaqus2021/Commands/abaqus
alias aba17=/public/software/apps/abaqus2017/Commands/abaqus
export PATH=/public/software/apps/abaqus2021/Commands:$PATH
3. 必要的步驟
source ~/.bashrc
展開 ABAQUS批量提交作業-BAT文件
多核運算:abaqus job = jobname cpus=4 int
雙精度運算:abaqus job = jobname double int
【02 批處理提交】
首先,創建一個記事本文件,比如xxx.txt, 打開并輸入如下命令。這里可以看到Job2我用了cpus=8來計算,其余用4個來計算。當確認無誤后,保存并關閉xxx.txt,并將其后綴名改成.bat。最后打開ABAQUS command或者Windows cmd將xxx.bat拖入其中,并回車即可。
cmd/c abaqus job=jobname1 cpus=4 interactive
cmd/c abaqus job=jobname2 cpus=8 interactive
cmd/c abaqus job=jobname3 cpus=4 interactive
......
cmd/c abaqus job=jobnameN cpus=4 interactive
注意事項:
bat文件需要和你的所有待批量提交任務的inp文件放置在同一個文件夾下,否則job路徑需是絕對路徑。個人覺得不是很方便,所以建議放置在同一文件下。
ABAQUS Command默認路徑是在軟件安裝路徑下的temp文件夾中,需要將其路徑轉到剛才你存放bat和inp的文件夾當中。
當所有計算結束后,結果文件都會在這個文件夾中
展開 
利用VB生成APDL文件和Python文件的方法
利用VB可以設計GUI程序界面實現某些特定功能,在CAE領域,VB可以結合ANSYS和Abaqus進行程序化的CAE計算模擬,此應用可以大大降低CAE模擬的重復工作量,提高資源利用率。
ANSYS的批處理功能可以實現自動讀取批處理文件,實現整個有限元分析過程,包括前處理、求解和后處理,具體涵蓋了材料屬性定義、模型建立、載荷和邊界條件的施加、求解設置和后處理等等,ANSYS的批處理操作界面如圖1所示,圖中第一個紅框里面設置批處理環境(ANSYS Batch),第二個紅框里設置工作目錄(Working Directory)、項目名稱(Job Name)、批處理文件(Input File)以及輸出文件(Output File),其中Input File 是由ANSYS的APDL語言編寫的文件,設置之后即可實現ANSYS批處理,批處理計算過程不能顯示ANSYS操作界面。
圖1 ANSYS的批處理操作
Abaqus的內置語言是Python,與ANSYS類似,每一步操作都會有對應的Python命令,一個完整的Python編寫的腳本文件可以在Abaqus里面運行,而執行完整的有限元分析過程。Abaqus執行腳本文件的方法有幾種,其中最適合于外界其他軟件進行對接的執行方式是通過Abaqus Command窗口的命令提示符進行執行。
圖2 Abaqus Command執行腳本文件的方式
無論如何,ANSYS的APDL文件和Abaqus的Python文件都需要事先編寫好,才能借助這兩款軟件執行。本次主要介紹采用Visual Basic語言實現APDL文件和Python文件的自動生成。
展開 PyQt平臺開發Abaqus計算程序
最終實現的功能如圖4所示,生成的py文件:
圖4 Py腳本文件
(2)開始計算
啟動Abaqus調用Python腳本文件在PyQt里面比較好的實現方法是利用Abaqus Command命令提示符窗口。因此,在PyQt里面只需要通過subprocess函數啟動計算機里面的Abaqus Command并且在窗口輸入調用語句即可。
最終即可實現參數化計算,程序界面輸入參數,程序自行啟動Abaqus執行計算。
當然,程序還可以結合Python對Abaqus的計算結果進行后處理,此次不作闡釋。
展開 重啟動CAE操作:
.
**
** OUTPUT REQUESTS
**
*Restart, write, number interval=150, time marks=NO
**
** FIELD OUTPUT: F-Output-1
**
*Output, field, number interval=300
*Node Output
COORD, U
**
** FIELD OUTPUT: COOR
**
*Node Output, nset=RP
COORD,
**
** HISTORY OUTPUT: H-Output-1
**
*Output, history, time interval=0.00333333
*Element Output, elset=CABLE
CTF1,
*End Step
命令行提交過程:在開始界面輸入 ABAQUS COMMAND打開DOS界面,切換路徑到當前文件夾下—并執行重啟動操作---“ABAQUS job=Job-3 oldjob=Job-2” (例:根據第二次仿真結果進行第三次仿真)
path=%path%;D:\SIMULIA\Abaqus\Commands
G:
CD G:\CABLE_CON\TEXT1
ABAQUS job=Job-3 oldjob=Job-2
得到 Job-3.odb 文件
合并兩個odb文件,并將結果保留在original中:
ABAQUS restartjoin originalodb=original.odb restartodb=restart.odb
ABAQUS restartjoin originalodb=original.odb restartodb=restart.odb history copyoriginal
展開 abaqus2020軟件 Linux版本安裝教程 超詳細安裝教程 ¥30
/lmgrd -c ABAQUSLM__lmgrd__SSQ.lic
2.第二步
進入abaqus的Commands中,右鍵——在終端中打開,輸入
export PATH=$PATH:/home/centos7/abaqus2020/Commands #路徑為你的Commands安裝路徑
3.第三步
輸入
abaqus cae -mesa
即可啟動abaqus
五、abaqus桌面啟動方式
看過第四章以后都會覺得有一點點繁瑣,如果每次都要這樣打開abaqus那也太麻煩了,能不能像window系統一樣,創建一個桌面快捷方式,直接打開呢?
經過我的研究,流程如下:
1.編寫一個啟動程序的.sh腳本
首先,創建一個腳本,這個腳本我就放在了abaqus里面,輸入
touch abaqus.sh
編輯此腳本(使用管理員權限)
運行后,出現如下窗口
敲擊鍵盤的 i
即可進行編輯模式
輸入
#!/bin/sh
cd /home/centos7/abaqus2020/license/linux_a64/code/bin
.
展開 abaqus command的相關專題、標簽、搜索
abaqus commandCOMMANDHM COMMAND COMMAND1.TCLcheck the validity of the command on this computerAdams.Command.LanguageMSC.PATRAN PATRAN COMMAND LANGUAGE Abaqus abaqus commandabaquscommanderror: unable to add abaqus command directory to path variable. return code: 1 attempted to add command directory: "f:/simulia/commandsabaqus command inputabaqus command inputsabaqus command line interface