ABAQUS根據(jù)Excel/csv批量生成inp
“ 工作中經(jīng)常需要處理這樣的問題: 相同的模型需要分析30多種工況, 并且每一種工況均需要使用非線性求解以評估其性能. 由于ABAQUS standard general 分析步默認(rèn)繼承其上一個standard general分析部的應(yīng)力應(yīng)變結(jié)果, 所以該問題不可以采用一個inp文件解決, 本文中提供了根據(jù)載荷工況表自動生成各自獨(dú)立的inp求解文件的解決辦法.”
該類型問題生成的inp數(shù)量較多, 所以在求解分析時, 推薦采用使用python進(jìn)行ABAQUS批處理-總體思路中的插件進(jìn)行批量計(jì)算.
01
—
插件GUI設(shè)計(jì)
使用ABAQUS RSG插件制作工具搭建如下插件GUI:
該GUI的搭建全部可以在RSG中完成.
02
—
kernel文件思路
首先我們應(yīng)該確保step是空的, 或者除了initial分析步之外其余的分析步均處于suppressed狀態(tài), 由于ABAQUS的Step對象不可迭代, 所以需要獲取其所有鍵值進(jìn)行手動迭代:
然后需要判斷輸入的step是Initial Step, 這一步的判斷應(yīng)該可以不加.
在讀入工況原數(shù)據(jù)的時候, 應(yīng)該支持Excel和csv兩種格式, 為兩種格式的文件分別設(shè)計(jì)讀取函數(shù), 使其讀取后數(shù)據(jù)格式相同, 以便于后期的統(tǒng)一開發(fā), 該處理思路會在以后的類似插件的開發(fā)中經(jīng)常使用, 因?yàn)?xls與.csv都是常見的數(shù)據(jù)格式:
使用ABAQUS錄制宏命令, 錄制: 建立分析步A--->建立載荷A--->導(dǎo)出inpA--->suppress A
整理錄制好的命令, 將其整合到kernel中進(jìn)行循環(huán).
進(jìn)行Job 和 Step的名稱標(biāo)準(zhǔn)化, 使用ABAQUS名稱標(biāo)準(zhǔn)化工具, 因?yàn)闊o論是.xls還是.csv, 均有可能出現(xiàn)不符合ABAQUS命名規(guī)則的字符串出現(xiàn).
03
—
補(bǔ)充說明
讀取Excel/csv進(jìn)行批量生產(chǎn)inp, 最難的部分在于力的作用邏輯, 因?yàn)樯婕傲εc扭矩的判斷, 并且有的點(diǎn)只受力的作用而不受扭矩的作用.
這需要進(jìn)行判別(目前程序無法判別只受扭矩作用的情況, 當(dāng)然這種作用方式在實(shí)際工作中也沒有遇見過), 因?yàn)橹皇芰Φ淖饔脮r該點(diǎn)有三個方向的載荷而普通的作用點(diǎn)是有六個方向的載荷的.
這部分的邏輯是我剛開始接觸python的時候設(shè)計(jì)的, 屬于陳年舊貨, 現(xiàn)在拿來使用雖然沒有邏輯問題, 但是還是有很大的優(yōu)化空間, 只不過....以后再說吧.
04
—
源代碼
關(guān)注AbaqusCoder并回復(fù)createJobFromExcel獲得源代碼.
期待更多技術(shù)干貨, 請關(guān)注AbaqusCoder!
如果本文對您有幫助, 期待您的轉(zhuǎn)發(fā)與點(diǎn)亮再看!
工程師必備
- 項(xiàng)目客服
- 培訓(xùn)客服
- 平臺客服
TOP




















