ABAQUS后處理二次開發(fā)相關(guān)介紹

2017-01-20  by:CAE仿真在線  來源:互聯(lián)網(wǎng)

1、ABAQUS與Python

ABAQUS軟件具有很強的通用性和模擬性能,擁有大量不同種類的單元模型、材料模型等。它具有ABAQUS/CAE、ABAQUS/STANDARD、ABAQUS/EXPLICIT等模塊。Python是一種面向?qū)ο蟮哪_本語言,它有高級的數(shù)據(jù)類型和簡單有效的面向?qū)ο蟪绦蛟O(shè)計方法,功能強大,擴展性強,被廣泛應(yīng)用。

ABAQUS/CAE模塊是一個完整的ABAQUS環(huán)境,提供一個簡單一致的接口,可以用于創(chuàng)建、提交、監(jiān)視和評價模擬所得到的結(jié)果。用戶在使用ABAQUS/CAE的圖形化用戶界面創(chuàng)建模型和瀏覽結(jié)果時,每個操作都有命令提交給ABAQUS/CAE。GUI使用Python語言產(chǎn)生這些命令,并提交給ABAQUS/CAE內(nèi)核。內(nèi)核解釋這些命令并執(zhí)行。

ABAQUS后處理二次開發(fā)相關(guān)介紹abaqus靜態(tài)分析圖片1

ABAQUS腳本接口是基于Python語言的擴展,允許用戶繞過ABAQUS/CAE的GUI直接與內(nèi)核交互。使用Python編寫的包含腳本接口命令的程序可以實現(xiàn)如自動化重復(fù)性的作業(yè)、創(chuàng)建和修改數(shù)據(jù)庫、訪問結(jié)果數(shù)據(jù)庫等功能。

2、ABAQUS后處理的二次開發(fā)

ABAQUS的后處理提供了許多功能,如云圖顯示、動畫顯示、等值線繪制及其他列表曲線等。但是對于塑性成型,如提單元的厚度顯示和應(yīng)力包絡(luò)線的繪制等這些特殊的后處理功能ABAQUS并未提供,需要使用Python進行二次開發(fā)。即首先要讀出結(jié)果數(shù)據(jù)庫中的數(shù)據(jù),進行計算和轉(zhuǎn)換等相應(yīng)的處理,然后輸出相應(yīng)的形式供用戶查看和分析。

3、實現(xiàn)原理

對后處理進行二次開發(fā),首先要讀取結(jié)果數(shù)據(jù)庫中的數(shù)據(jù),即使用Python語言通過ABAQUS腳本接口訪問ABAQUS對象中的數(shù)據(jù)。這就需要了解ABAQUS的腳本接口、ABAQUS對象模型和ABAQUS結(jié)果數(shù)據(jù)庫結(jié)構(gòu)。

ABAQUS腳本接口即是一個基于對象的程序庫。腳本接口中的每個對象都擁有相應(yīng)的數(shù)據(jù)成員和函數(shù)。在對象創(chuàng)建后,可以使用該對象提供的方法來處理對象中的數(shù)據(jù)成員。

ABAQUS對象模型是指ABAQUS腳本接口中的各種對象類型之間的層次結(jié)構(gòu)和相互關(guān)系。ABAQUS的對象類型很多,一般分為3類,Session對象用來定義viewport、遠程隊列、用戶定義的視圖等;Mdb對象是保存在模型空間中的對象,包括model對象和job對象;odb對象是結(jié)果數(shù)據(jù)對象,包含了模型數(shù)據(jù)和結(jié)果數(shù)據(jù),是后處理二次開發(fā)考察的重點。ABAQUS后處理二次開發(fā)相關(guān)介紹abaqus靜態(tài)分析圖片2
結(jié)果數(shù)據(jù)庫有ABAQUS分析得到,其中包含了模型數(shù)據(jù)和結(jié)果數(shù)據(jù)。模型數(shù)據(jù)描述了分析中使用的模型,包括零件、裝配等。結(jié)果數(shù)據(jù)描述了分析得到的結(jié)果,包括分析步(step)、幀(frame)、場變量輸出(field output)和歷史變量輸出(history output)等。在對后處理的二次開發(fā)中,就是讀取odb對象中的數(shù)據(jù),進行計算等相應(yīng)的處理,然后輸出為相應(yīng)形式供用戶查看的。

4、實現(xiàn)的關(guān)鍵技術(shù)

后處理是將計算后的數(shù)據(jù)形象地顯示出來供用戶對計算結(jié)果進行查看和分析。首先明確所要實現(xiàn)的功能,設(shè)計功能實現(xiàn)的流程,使用Python調(diào)用ABAQUS提供的方法編寫程序?qū)Y(jié)果數(shù)據(jù)庫進行處理。其中關(guān)鍵技術(shù)有文件的讀寫和控制、數(shù)據(jù)的讀取、數(shù)據(jù)的處理和結(jié)果的輸出與查看等。

1)文件的讀寫和復(fù)制

經(jīng)過分析計算后得到結(jié)果數(shù)據(jù)庫odb文件,對后處理進行二次開發(fā)就是對odb文件的處理,有時還需要要對.dat文件和.fil文件進行數(shù)據(jù)的讀取。Odb文件的讀寫使用了ABAQUS中提供的OdbAecess模塊,文件的復(fù)制使用Python語言中的shutil模塊。

2)數(shù)據(jù)的讀取

數(shù)據(jù)讀取的原理如前所述,即使用Python語言通過ABAQUS的腳本接口讀取odb文件中的數(shù)據(jù)。ABAQUS計算得到的數(shù)據(jù)是以面向?qū)ο蟮男问酱鎯τ诮Y(jié)果數(shù)據(jù)庫中的。要讀取數(shù)據(jù)就要找到數(shù)據(jù)所在的路徑(path),直接引用其中的變量或者使用數(shù)據(jù)對象的方法得到數(shù)據(jù),供后續(xù)的處理使用。有時還需要讀取dat文件和fil文件中的數(shù)據(jù),需要使用Python提供的文本處理函數(shù)。

3)數(shù)據(jù)的處理

用所設(shè)計的算法對數(shù)據(jù)進行處理,包括數(shù)值運算和矢量運算等,需要根據(jù)不同的后處理需求而定。這部分是后處理二次開發(fā)的核心,也是整個二次開發(fā)中程序編寫的重點。

4)結(jié)果的輸出與查看

后的任務(wù)是把這些處理后的數(shù)據(jù)顯示出來供用戶查看。如使用對象模型提供的構(gòu)造方法創(chuàng)建一個新的場變量輸出并將處理后的數(shù)據(jù)寫入其中供ABAQUS/Viewer查看,或者調(diào)用viewpoint對象顯示出所需的變量和圖形,或者輸出為其他形式的圖表或文件等。


開放分享:優(yōu)質(zhì)有限元技術(shù)文章,助你自學(xué)成才

相關(guān)標(biāo)簽搜索:ABAQUS后處理二次開發(fā)相關(guān)介紹 abaqus分析培訓(xùn) abaqus技術(shù)教程 abaqus巖土分析 鋼筋混凝土仿真 abaqus分析理論 abaqus軟件下載 abaqus umat用戶子程序編程 Abaqus代做 Abaqus基礎(chǔ)知識 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓(xùn) 

編輯
在線報名:
  • 客服在線請直接聯(lián)系我們的客服,您也可以通過下面的方式進行在線報名,我們會及時給您回復(fù)電話,謝謝!
驗證碼

全國服務(wù)熱線

1358-032-9919

廣州公司:
廣州市環(huán)市中路306號金鷹大廈3800
電話:13580329919
          135-8032-9919
培訓(xùn)QQ咨詢:點擊咨詢 點擊咨詢
項目QQ咨詢:點擊咨詢
email:kf@1cae.com