
發(fā)布
注冊(cè)
/
登錄abaqus提交任務(wù)的案例
ABAQUS批量提交任務(wù)-Python腳本
然后這一個(gè)的話,僅僅使用inp文件提交作業(yè),inp文件中是不包含cpu數(shù)這樣的信息的,所以需要額外指定你所需要的cpu數(shù)。
第五步:當(dāng)所有分析結(jié)束之后,60秒后自動(dòng)關(guān)機(jī)。
總結(jié):
首先第一種方法是不推薦的,僅僅說(shuō)明這也是一個(gè)批量提交任務(wù)的思路。具體為什么不推薦的原因如下:
1. 任務(wù)不在一個(gè)模型下,就比較難處理。首先我們需要把幾個(gè)模型放在一個(gè)ABAQUS界面下,然后遍歷各個(gè)模型,最后再各個(gè)模型中拿到所需要的Jobs再提交。
2. 當(dāng)任務(wù)提交后,ABAQUS/CAE界面無(wú)法做其他操作
第二種方式是比較不錯(cuò)的,可以很輕松的處理不同模型的job,因?yàn)樗鞘褂胕np直接提交的,和bat的方式類似。提交的方式也比較相似,將ABAQUS command的路徑轉(zhuǎn)到存放腳本和inp文件的文件夾。使用abaqus cae nogui=xxx.py提交命令。且可以實(shí)現(xiàn)運(yùn)算結(jié)束后自動(dòng)關(guān)機(jī)的功能。
【PS】喜歡本文的朋友不妨加一下本人的微信公眾號(hào),不定時(shí)會(huì)推出技術(shù)文章。^_^
展開(kāi) Abaqus任務(wù)提交器
學(xué)習(xí)python的過(guò)程中制作了一個(gè)Abaqus的任務(wù)提交器,可以方便地提交inp和腳本文件,有需要可以私信
命令行提交 Abaqus 任務(wù)
解決方案可見(jiàn)《常見(jiàn)問(wèn)題2.0》:假如你的 abaqus.bat 是在 d:\ABAQUS\Commands 下面,在dos下輸入一下命令:
path=%path%;d:\ABAQUS\Commands
想多 cpu 運(yùn)算(比如 4cpus):
提交任務(wù):
abaqus job=jobname1 int
改為提交任務(wù):
abaqus job=jobname1 cpus=4 int
有些顯式運(yùn)算,incretment 太多的話(比如多于 30w ),建議用雙精度提交任務(wù):
abaqus job=jobname1 int
改為提交任務(wù):
abaqus job=jobname1 double int
但是誰(shuí)都知道雙精度比單精度費(fèi)時(shí),所以沒(méi)有如果必要的話,就不需要加這個(gè)了。
如果不加int會(huì)怎么樣呢?
提交任務(wù):
abaqus job=jobname1 int
改為提交任務(wù):
abaqus job=jobname1
后面加了 int,dos 窗口會(huì)顯示任務(wù)進(jìn)行到哪個(gè)階段。比如是 pre.exe,還是 standard explicit.exe,還是conpleted,都會(huì)給你提示。不加 int 就沒(méi)有這些提示了。
如何看任務(wù)進(jìn)程:
一般就是看 .sta 文件。老手推薦 UltraEditor,能自動(dòng)更新文件內(nèi)容,可以試試。
Abaqus warning: The .inp extension has been removed from the job identifirer.
出這個(gè)一般是因?yàn)橛械男率?em>提交 job 的時(shí)候添加了 inp 后綴,如
abaqus job=jobname.inp
去掉 inp 后綴即可。即使不去掉,軟件也自動(dòng)忽略這個(gè)后綴,這個(gè)只是告示說(shuō)明,不影響計(jì)算。
3.
展開(kāi) ABAQUS批量提交任務(wù)
ABAQUS可以使用Python代碼進(jìn)行批量提交任務(wù)
第一步:
新建文本.txt,復(fù)制Python代碼到文本,代碼如下
# -*-coding:UTF-8-*-
from abaqus import *
from abaqusConstants import *
import time
print "==================== 【開(kāi) 始】 ====================="
jobs = mdb.jobs.keys() #獲得所有任務(wù)名稱
for i in jobs: #遍歷所有任務(wù)
myJob = mdb.jobs[i] #獲得任務(wù)對(duì)象
#判斷任務(wù)的狀態(tài)是否為None,避免重復(fù)提交
if myJob.status == None:
t0=time.time() #記錄提交前的時(shí)間
myJob.submit() #提交計(jì)算
myJob.waitForCompletion() #等待計(jì)算完成
print '【%s】計(jì)算完成,耗時(shí) %f 秒'%(i,time.time()-t0)
print "==================== 【結(jié) 束】 ====================="
第二步:文本格式.txt 修改為 .py
第三步:創(chuàng)建好任務(wù),且任務(wù)顯示狀態(tài)為 None,不允許有其他狀態(tài),否則提交不成功(可修改代碼值靈活變化)
批量提交有兩種方式:
1、file>Run Script,打開(kāi)前面保存的.py文件,任務(wù)會(huì)自動(dòng)進(jìn)行
2、直接復(fù)制代碼到Abaqus
展開(kāi) 
linux 提交任務(wù)的命令(ansys lsdyna abaqus fluent)
記錄ansys lsdyna abaqus fluent 的命令提交方式
abaqus 提交命令
abaqus job=input <user=userfile> <cpus=n> inter
ansys (mmp 版本17.2)
ansys172 -b -dis -machines node1:4:node2:4 -i input -o output
LS-dyna(SMP,版本17.2)
lsdyna172 i=input.k ncpu=n memory=XXm
LS-dyna (MMP)
lsdyna172 -dis -machines node1:4:node2:4 i=input.k ncpu=n memory=XXm memory2=YYm
Fluent
fluent -ssh -g 3d -t2 -cnf="node1:2" input.jou
-ssh 使用ssh 協(xié)議 -tn 便是用n核計(jì)算 -g 便是不啟用圖形界面 -3d 表示3D模式 -i XXX 表示輸入文件
-cnf=“”便是制定某個(gè)節(jié)點(diǎn)用幾核計(jì)算
展開(kāi) ABAQUS批量提交任務(wù)的兩種方法
相信大家在研究過(guò)程中都會(huì)有這個(gè)需求,進(jìn)行大量工況的批量運(yùn)算時(shí),怎么讓其自動(dòng)的一個(gè)一個(gè)進(jìn)行提交,而無(wú)需手動(dòng)提交?
這里介紹兩種方法,兩種方法各有優(yōu)劣,可以根據(jù)自己實(shí)際情況進(jìn)行選擇:
Bat文件提交方法;
Python提交方法。
Bat文件
Abaqus command中有一些基本的程序調(diào)取命令,經(jīng)常使用服務(wù)器的小伙伴估計(jì)都不陌生。在幫助文檔《Abaqus Analysis User's Guide》的3.2.2節(jié)中詳細(xì)介紹了inp文件提交過(guò)程中的關(guān)鍵字用法,如下圖所示:
這里給出一個(gè)最簡(jiǎn)單的inp文件提交格式如下:
abaqus job=job-name int
其中int 為 interactive的縮寫(xiě),幫助文檔解釋:在運(yùn)行過(guò)程中反饋進(jìn)程,隱式求解輸出log文件;顯式求解則輸出status和log文件。Interactive還有一個(gè)重要功能是:讓任務(wù)一個(gè)一個(gè)提交,而不是一次性提交運(yùn)算。
為了批量提交計(jì)算,我們可以將任務(wù)提交語(yǔ)句寫(xiě)入bat文本文件,雙擊bat文件即可提交運(yùn)算;但經(jīng)常會(huì)由于輸入格式錯(cuò)誤而無(wú)法實(shí)現(xiàn)預(yù)期效果。
錯(cuò)誤示例:
這也是網(wǎng)上經(jīng)常遇到的錯(cuò)誤答案:使用call作為開(kāi)始關(guān)鍵字,或沒(méi)有采用int關(guān)鍵字。運(yùn)行后會(huì)發(fā)現(xiàn)多個(gè)任務(wù)同時(shí)提交,且僅前幾個(gè)任務(wù)被提交;
正確示例:
以cmd/c為開(kāi)始,并包含int或interactive關(guān)鍵字,此時(shí)任務(wù)可以順序提交。
展開(kāi) ABAQUS中利用Python批量創(chuàng)建提交多個(gè)分析任務(wù)
lsdyna 單機(jī)并行MMP的任務(wù)提交
下面提供一種基于ansys GUI 單機(jī)MMP提交任務(wù)的一種方式,
物理核心20 ,計(jì)算用了10個(gè),50%
物理內(nèi)存64G 計(jì)算用37.2G, 60%
單機(jī)MPP并行計(jì)算.pdf
該文檔打開(kāi)需要密碼,我沒(méi)有設(shè)置收費(fèi),我想看下有多少人對(duì)此感興趣,需要 密碼的 點(diǎn)贊 ,留言
PS:太多留言我沒(méi)有來(lái)的急回復(fù),現(xiàn)在把密碼公布如下
whlgdx
即: 武漢理工大學(xué) 的漢語(yǔ)首字母
lsdyna 提交多個(gè)任務(wù) 批處理 小結(jié)
DYNA提交多個(gè)任務(wù),批處理方法小結(jié)(涉及版本和目錄自行修改)
1.最簡(jiǎn)單的方法,基于dos 批處理提交
cd E:\LS_DYNA_TEST\case1
path=D:\Program Files\Ansys Inc\v100\ANSYS\bin\intel
ls970.exe i=case1.K memory=200000000 ncpu=3 /n
cd E:\LS_DYNA_TEST\case2
path=D:\Program Files\Ansys Inc\v100\ANSYS\bin\intel
ls970.exe i=case2.K memory=200000000 ncpu=3 /n
將以上代碼寫(xiě)進(jìn)一個(gè)txt文本文檔,然后對(duì)文件進(jìn)行重命名為calculate.bat,雙擊即可運(yùn)行。
2. Dyna-Job Submitter(可視化界面,Job-submitter)
非本人原創(chuàng),尊重作者,標(biāo)注出處
http://forum.simwe.com/forum.php?mod=viewthread&tid=883186&highlight=批處理
Dyna-Job Submitter.rar
3. 基于C++自編程方法,可自行設(shè)計(jì)(
非本人原創(chuàng),尊重作者,標(biāo)注出處
http://forum.simwe.com/forum.php?mod=viewthread&tid=1056743&highlight=批處理)
LSDYNALSDYNA連續(xù)求解程序(含源程序) - 副本.rar
展開(kāi) abaqus 金屬切削任務(wù)的任務(wù)
二維的
設(shè)計(jì)方案及參數(shù):工件及刀具材料屬性表
材料
[td=13%]
E(Gpa)
[td=8%]
μ
[td=15%]
ρ(kg/m3)
[td=11%]
σs(MPa)
[td=11%]
σb(MPa)
[td=8%]
δs(%)
[td=8%]
ψ(%)
[td=6%]
εmax
工件
[td=8%]
45鋼
[td=13%]
209
[td=8%]
0.269
[td=15%]
7890
[td=11%]
377
[td=11%]
624
[td=8%]
26
[td=8%]
55
[td=6%]
1.6
[td=8%]
A3鋼
[td=13%]
212
[td=8%]
0.288
[td=15%]
7860
[td=11%]
231
[td=11%]
407
[td=8%]
30
[td=8%]
54
[td=6%]
1.8
[td=7%]
刀具
[td=8%]
YT15
[td=13%]
530
[td=8%]
0.300
[td=15%]
11500
[td=11%]
/
[td=11%]
/
[td=8%]
/
[td=8%]
/
[td=6%]
/
設(shè)計(jì)內(nèi)容
1、參與完成金屬切削有限元分析建模的總體論述;
2、建立二維切削加工有限元分析模型;
3、完成二維切削的仿真實(shí)驗(yàn);
4、對(duì)金屬切削過(guò)程中應(yīng)立場(chǎng)、應(yīng)變場(chǎng)的變化及其規(guī)律進(jìn)行定性分析
展開(kāi) Abaqus批量提交作業(yè) ¥6
<pre class="ql-syntax" spellcheck="false"># -*- coding: utf-8 -*-
from abaqus import *
from abaqusConstants import *
import os
import time
def clean_residual_files(job_name):
"""清理殘留文件函數(shù)"""
residual_ext = ['.lck', '.prt', '.sim', '.sta',
'.abq', '.com', '.dat', '.msg','.odb',
'.log', '.odb', '.inp']
for ext in residual_ext:
file_path = job_name + ext
if os.path.exists(file_path):
try:
os.remove(file_path)
 
展開(kāi) 
Abaqus批量提交inp文件計(jì)算
當(dāng)有多個(gè)模型需要計(jì)算時(shí),或者一個(gè)模型需要多次修改本構(gòu)參數(shù)計(jì)算時(shí),可以使用bat文件批量提交inp文件計(jì)算。
在txt文件里寫(xiě)入如下內(nèi)容,另存為bat文件,雙擊運(yùn)行就可以批量提交inp文件計(jì)算了。本例是提交1.inp、2.inp和3.inp依次計(jì)算,可根據(jù)自己需要修改。
call abaqus job=1 int cpus=4
call abaqus job=2 int cpus=4
call abaqus job=3 int cpus=4
pause
shutdown -s -f -t 60
注意:
(1)1、2、3是inp文件的名字;
(2)int是interactive的縮寫(xiě),可以讓inp文件依次進(jìn)行計(jì)算;
(3)cpus=4是多核計(jì)算;
(4)pause是計(jì)算完成不關(guān)閉cmd窗口;
(5)shutdown -s -f -t 60是計(jì)算完3.inp文件(最后一個(gè))后60秒關(guān)機(jī),如不關(guān)機(jī)刪去即可;
(6)如果使用了子程序的,如pqfiber,則如下call abaqus job=1 user=pqfiber.for cpus=4 int ;
(7)如果多個(gè)inp文件在不同的文件夾下,加入cd/d C:\a(a為文件夾名字)進(jìn)行切換即可。
Abaqus批量提交inp文件計(jì)算的視頻操作,可以點(diǎn)擊如下鏈接,觀看視頻的章節(jié)11。
http://www.yqgqt.org.cn/college/video/c14934
學(xué)土木結(jié)構(gòu)的同學(xué),可以關(guān)注我!
有用可以點(diǎn)個(gè)贊!
展開(kāi) ABAQUS批量提交作業(yè)-BAT文件
本文主要介紹關(guān)于ABAQUS怎么不使用CAE界面提交作業(yè),以及批量提交作業(yè)。那么為什么我們需要用命令行來(lái)提交作業(yè)而不直接從ABAQUS/GUI中提交?畢竟ABAQUS的GUI界面可以說(shuō)是有限元分析軟件中做的最好的最人性化的界面。
可能的原因如下(個(gè)人感受):
Inp中少數(shù)關(guān)鍵字不為ABAQUS/CAE識(shí)別
多個(gè)INP需要被提交,且來(lái)自于不同的模型不同的分析任務(wù),這就導(dǎo)致無(wú)法在CAE界面中同時(shí)提交作業(yè)
【01 相關(guān)命令的介紹】
首先介紹幾個(gè)ABAQUS/命令行的幾個(gè)重要命令,以及各個(gè)命令的含義和須知事項(xiàng):
提交任務(wù):abaqus job = jobname1 int/interactive, 這個(gè)命令是用作提交Job的,命令行中輸入此命令就會(huì)直接調(diào)用abaqus求解器進(jìn)行求解。后面跟上的int或interactive含義一樣,加上DOS窗口會(huì)顯示任務(wù)運(yùn)行的階段。另外一個(gè)功能就是讓任務(wù)一個(gè)一個(gè)交,而不是一次性全部提交。
殺死任務(wù):abaqus terminate job = jobname int, 終止任務(wù)一般不可以恢復(fù),但是如果有restart文件,可以重啟動(dòng)計(jì)算
任務(wù)暫停和恢復(fù):abaqus suspend/resume job = jobname int, 暫停任務(wù),以及恢復(fù)任務(wù),從上次暫停的地方開(kāi)始接著算。
展開(kāi) ABAQUS批量提交Job與Python讀取ODB結(jié)果應(yīng)力應(yīng)變數(shù)據(jù)
批量提交的核心是需要等待當(dāng)前計(jì)算任務(wù)的結(jié)束,上圖中若干個(gè)job的提交代碼如下:
# coding: utf-8
#微信公眾號(hào):ABAQUS二次開(kāi)發(fā)
#作者:阿信老師CAE
#email:axin_cae@163.com
#2022.03.17
from abaqus import *
from abaqusConstants import *
jobList = mdb.jobs.keys() #獲取所有計(jì)算任務(wù)的jobName
for jobName in jobList:
mdb.jobs[jobName].submit(consistencyChecking=OFF) #提交計(jì)算
mdb.jobs[jobName].waitForCompletion() #等待計(jì)算完成
print jobName , "is completed"
不過(guò)在實(shí)際的操作過(guò)程中,我們可能會(huì)需要避開(kāi)一些job不提交,或者job窗口事先并沒(méi)有建立job,等等,總之實(shí)際問(wèn)題永遠(yuǎn)比任何教程都復(fù)雜,不過(guò)只需要靈活面對(duì)就可以了,處理起來(lái)并不難。
展開(kāi) 免費(fèi)工具 | 一種ABAQUS inp文件批量提交的工具
本次推薦simwe論壇榮譽(yù)版主garethz前輩在2009年共享的inp文件批量提交工具Abaqus-bat(V1.3)
Abaqus-bat V1.3 能批量提交選定目錄下的所有inp文件,適用于所有版本的ABAQUS軟件,無(wú)需手動(dòng)編寫(xiě)bat批處理命令,界面操作簡(jiǎn)單,非常的方便,親測(cè)可用。
軟件具體的使用說(shuō)明參考simwe論壇,網(wǎng)址(可下載軟件)如下:
http://forum.simwe.com/forum.php?mod=viewthread&tid=894456&highlight=Abaqus-bat
考慮部分道友沒(méi)有注冊(cè)simwe,故提供網(wǎng)盤(pán)下載地址,如下:
鏈接:
https://pan.baidu.com/s/1gTe_lrqYjEdkf75mKaNnug
提取碼:
z98c
特別說(shuō)明:
1、該工具發(fā)布時(shí)間較早,新手一般不會(huì)留意,容易被埋沒(méi),所以才斗膽挖出來(lái)推薦給大家,不是炒冷飯;
2、在論壇原帖中g(shù)arethz版主未收取仿真幣,其目的就是方便更多道友,故下載一份通過(guò)網(wǎng)盤(pán)傳播,零差價(jià),造福更多道友,應(yīng)該不構(gòu)成侵權(quán),請(qǐng)大家明鑒。
3、歡迎關(guān)注微信公眾號(hào):ABAQUS在線(ID:Abaqus)交流。
展開(kāi)