
發布
注冊
/
登錄abaqus dat數據的案例
基于Python向Abaqus導入txt、dat數據(附abaqus中python二次開發課程)
這次推送聚焦于解決采用Python向Abaqus里導入txt、dat數據的問題(dat文件只需要將txt文件的后綴名改為dat就可以生成dat文件),Abaqus基于Python讀入txt、dat數據主要有read()、readlines()、readlines()、numpy.loadtxt()函數,導入的txt文件放在工作目錄temp中。
1. read() 函數
可以一次性讀取txt文件中的內容,并以字符串的結果返回來,如下列代碼所示:
with open("xyplot.dat", "r") as f: #打開文件
data = f.read() #讀取文件
print(data)
其中,
r是讀取人工書寫的數據,書寫的時候是什么樣子,讀出來就是什么樣。
rb是讀取二進制文件,非人工書寫的數據,如.jpeg等這些。
將該命令在Abaqus/CAE的命令行接口(Command Line Interface, CLI)運行后,結果如圖1所示(圖中#注釋后的亂碼為作者安裝abaqus采用英文版,沒有漢化所致):
圖1 read()讀取txt、dat數據到Abaqus
需要注意的是,以上data數據類型都是為字符,如下圖所示。調用data[0]為字符,因此data[0][0]也為字符,以及后續的data[20][0],data[60][0]等也都為字符。
展開 用Python從Abaqus導出txt、dat數據
__biz=MzIzNzcyMDE3OA==&mid=2247484080&idx=1&sn=1b34a15a8bf79e8f9cdf901f43aac9b1&chksm=e8c505addfb28cbb54225ef35bf7c6750ee21673d696b63fe13df9067320f1215cae6861c6a5&token=667787181&lang=zh_CN#rd</strong></a></p><p><strong>以下內容均來自于本人微信公眾號(圖片版可能缺失內容,完整版請關注查看公眾號內容),有興趣請關注一波,共同學習ANSYS和ABAQUS有限元技術,我理解為兩把神器,屠龍刀和倚天劍,用好可行走有限元江湖,做個大俠。</strong></p><p><strong>同濟大學優秀畢業生創立,研究Abaqus、ANSYS在土木領域的科研編程和數值模擬技術,涉及到多尺度、多物理場耦合等計算力學問題,以及基于Python、子程序、INP的Abaqus建模,和ANSYS APDL、Workbench二次開發。
展開 基于ABAQUS的建筑結構時程分析
現有一7度區的小區主體結構,30層剪力墻住宅,標準層層高3.0m,總高為90.0m,其平面圖如下所示:
在YJK或第三方軟件建模完成后導入至ABAQUS如下圖所示(為保證兩個軟件模型的一致性,可以對比兩個模型的質量,和基本周期及振動形態,ABAQUS的結果數據在dat文件查找):
導入模型后,在ABAQUS中的主要參數設置如下:
材料采用混凝土,阻尼參數:α=0.38,β=0.006;
分析步:先進行靜力分析,再進行隱式分析;靜力分析時間可取為1e-05,隱式分析時長為輸入地震波的時間,增量步長同地震波數據,一般取為0.02,其它數據默認(γ,β數值可根據α進行調整;半增量誤差參數設置參考上節內容)。
荷載輸入:分別輸入不同方向的地震波,放大系數為規范表5.1.2-2所采用的加速度峰值除以地震波數據的最大值。
本文選擇帝谷波ELCENTRO作為地震動輸入,其圖形如下圖所示:
分別輸入不同方向下的地震波數據后得到各個方向的計算指標:
X向底部剪力時程曲線如下圖所示:
X向頂點(下圖)的位移時程曲線如下圖所示:
位移角數值如下圖所示
以上分析可以看出,位移角為1/2225,滿足1/1000的要求;
最大水平位移為0.08m,遠小于0.3的要求。
Y向的計算結果與X向一樣的處理方法:輸入地震波數據,提取基底剪力與位移時程曲線,后續工作主要為與振型分解法的結果進行比較,當大于反應譜法結果時需要進行內力及配筋的調整。
展開