
發布
注冊
/
登錄ABAQUS輸出的案例
#Abaqus二次開發#一鍵輸出模態動畫(GIF格式)
=====前言=====
Abaqus輸出動畫是后處理工作中的一部分,但是Abaqus輸出的常見的動畫格式只有AVI。如果需要插入到PPT中,需要第三方軟件轉換成GIF格式,如此一來,導出模態動畫需要步驟如下:
Abaqus界面設置,包括調整模型視角,viewport窗口調整,動畫參數設置等。
激活動畫,輸出AVI格式。
通過第三方軟件轉成GIF,插入PPT中。
繼續輸出下一階模態動畫。
如果遇到有多個工況,模態階數數量又多,那這些看似簡單無腦的操作,變得相當的繁瑣無趣。
這里介紹一種一鍵生成GIF模態動畫的方法,主要省去了轉換格式(AVI->GIF)的時間。甚至可以實現點擊按鈕,即可自動生成多介模態動畫,并自動命名。
這個方法的思路是:用Python語言編寫一段輸出動畫的宏,宏里面調用第三方軟件(ImageMagick)把Abaqus輸出的AVI轉換成GIF,并實現自動命名,然后把.py宏包裝植入到Plug-ins菜單中,這樣既可通過自定義工具條添加按鈕來調用宏。
=====正文=====
首先,需要下載安裝格式轉換軟件,這里推薦使用ImageMagick,具體安裝方法自行百度。安裝順利的話會有如下文件,其中mogrify.exe是我們的宏所需要調用的程序。
展開 關于Abaqus圖片輸出的總結 附ABAQUS 6.14.1安裝包下載和安裝教程下載
關于Abaqus圖片輸出的總結
1.改變abaqus界面背景顏色
Aabaqus默認的背景為漸變藍色,如果想把背景變為白色,方便導出圖片,則可以進行以下操作。
View-Graphics Options-Viewport Background-Solid(點擊圓圈)-選擇顏色(白色)即可。
2.設定界面文字是否顯示
1Abaqus界面上有默認輸出的文字和坐標和圖例等,可以通過以下操作選擇是否顯示這些內容。
2Viewport-Viewport Annotation Options-General-Visibility
3取消勾選其中的內容即可
3.圖例大小
為了美觀需要顯示較小的圖例,通過以下操作即可
Viewport-Viewport Annotation Options-Legend-Set Font-Size
修改Size的大小即可
4.將云圖中的網格除去
有時為了輸出圖片的美觀,需要將劃分好的網格去除,通過以下操作即可。
Option-Common Plot Options-No edges
點選No edges即可
5.輸出高清png圖片
File-Print
需要高清圖片,點掉256色,進一步選擇PNG Formal Options即可進入分辨率界面。
以上即為Abaqus圖片輸出相關的操作過程
下載地址:ABAQUS 6.14.1安裝包下載和安裝教程
展開 Abaqus一鍵輸出剛度矩陣和質量矩陣的插件EMM ¥20
=======概述=======
EMM(Export Matlab Matrix)是集成在ABAQUS/CAE中的一個插件,能夠一鍵輸出Abaqus模型的單元及全局剛度、質量、載荷矩陣,并自動轉換為MATLAB矩陣。
Abaqus可以輸出剛度、質量等單元或者全局矩陣。但需要手動添加關鍵詞,較為麻煩,且輸出的.mtx矩陣格式比較亂,不易閱讀。
本工具能一鍵實現以下功能:
1. 輸出Abaqus模型的剛度、質量、載荷矩陣到.mtx,包括單元和全局的;
2. 將上述矩陣轉換為MATLAB的.mat文件;
3. 用Matlab打開上述.mat文件。
如果用戶有任何問題或者需要合作,歡迎聯系我們。email: SnowWave02@qq.com
=======使用過程=======
打開Abaqus模型,切換到Job模塊,在Abaqus菜單欄的Plug-ins里看到iSolver插件的菜單。
點擊iSolver->Export Matlab Matrix…,彈出EMM界面。
勾選需要輸出的矩陣和Set,點擊EMM界面右側的Submit后將提交Abaqus計算,計算完畢得到如下類似矩陣。
=====演示視頻======
http://www.yqgqt.org.cn/college/video/c11343
=====下載======
用到的模型
Job-Cabin-T.rar
用戶手冊
Export Matlab Matrix工具說明(SnowWave02 20191217).pdf
EMM插件
展開 Abaqus的歷史數據輸出的問題
Abaqus的歷史數據輸出的問題
Abaqus結果輸出時有場輸出(Field Output)和歷史輸出(History Output),場變量輸出用于描述某個量隨空間位置的變化,歷史變量用于描述某個量隨時間的變化,區別是場變量輸出大量的單元或節點上的計算結果,寫入odb文件的頻率低,用與生成后出的各個圖。歷史變量輸出少量單元或節點上的計算結果,寫入Odb的頻率高,用于生成X-Y圖。歷史變量允許單獨輸出某個獨立分量,經常用到的就是這個獨立分量的輸出,比如輸出結構最大點的位移變化曲線,或者盈利最大點的應力變化過程等。
在輸出歷史數據時,大多數的輸出結果比如位移和應力等,不能實現整個模型全部輸出,也就是需要指定set(參考集),需要設置相關的set后,結果輸出才會有這些數據。
定義Set的對話框如圖1所示,定義Set的類型時有三個,按照以往的理解,一般經常用到的應該是Node,也即節點集,想要輸出這個節點在求解過程中的Mises應力變化過程,選擇某個節點,通過Step模塊的History Output Requests,如圖2所示。
圖1
圖2
選擇剛才設置的Set,選擇需要輸出的結果項,此處為Mises。之后計算,計算后提取結果時,發現并沒有輸出該節點的Mises歷史數據。
筆者很快想到了,有可能是不能輸出節點的應力,因為涉及到節點解和單元積分點解的問題,這個之前已經討論過。基于此考慮,那么輸出該節點的位移場肯定沒問題,因為節點位移解是最先得到的節點解。
將Mises換成UT,如圖3所示。
同時,新建一個Element Set,因為Node Set無法輸出歷史數據,那么采用Element Set也肯定能夠輸出單元積分點的數據,如圖4所示。
展開 
ABAQUS如何輸出分析過程中每一時刻的最大溫度曲線
ABAQUS如何輸出分析過程中每一時刻的最大溫度曲線,或者輸出分析過程中每一時刻最大溫度值,如下圖所示
微信截圖_20180823102044.jpg
ABAQUS如何輸出硬度圖
看到相關文獻中,通過ABAQUS可以輸出焊接接頭的硬度圖,想知道怎么操作
python提取abaqus場輸出結果
最近寫了一個簡單的python讀取abaqus結果中的場輸出數據,就在這里簡單的講一下整個流程。后續采用abaqus讀取場輸出結果應用也挺廣泛。整個過程的流程圖可以用下圖來概括,因為不是計算機專業,考慮沒那么細致,很多python函數也是即查即用,當然程序后續根據要求也可以不斷更改。
Abaqus環境下兩種print標準輸出
之前在寫Abaqus腳本的時候發現一個問題,在cmd窗口中用命令行運行腳本的時候,腳本中的print語句沒有打印任何輸出。
經過查資料,才知道在Abaqus環境下有兩種標準輸出,abaqus自身的標準輸出
abaqus.AbaqusStdout
(實際上是對標準輸出的重定義,將輸出內容打印到Abaqus/CAE中的輸出欄)
和 Python標準輸出
sys.__stdout__
運行腳本是肯定加載abaqus環境的,在abaqus環境下,默認的輸出是 abaqus.AbaqusStdout,也就是只能打印到Abaqus/CAE中。所以,在cmd窗口中沒有任何輸出信息。
如果想在cmd窗口中輸出信息,則需要采用Python的標準輸出:
使用方法如下
import sys
print >> sys.__stdout__, "print to cmd window correctly."
展開 ABAQUS歷史輸出中,各能量變量(ALLAE、ALLIE、ETOTAL等)意義
ABAQUS中,對于很多動態問題,尤其像高速沖擊模擬中,對結果評價很重要的一點就是要保證模型能量守恒,這就涉及到ABAQUS歷史輸出中各能量變量的意義,下面最各簡單整理:
ALLAE:人工偽應變能,六面體、殼網格中沙漏發生情況指標
ALLCD:蠕變、膨脹以及粘彈性消耗的能量
ALLFD:摩擦消耗的能量
ALLIE:總的內能,ALLIE=ALLSE+ALLPD+ALLCD+ALLAE+ALLQB+ALLEE+ALLDMD
ALLKE:動能
ALLKL:碰撞消耗的能量
ALLVD:粘性消耗的能量
ALLDMD:破壞消耗的能量
ETOTAL:所有能量的總和
NOTE:ALLAE(偽應變能)的理解:偽應變能就是控制沙漏變形所消耗的主要能量。如果偽應變能過高,說明過多的應變能被用來控制沙漏變形了。一般通過比較偽應變能和其他內部能量的值來判斷偽應變能是否過高,以及判斷過高的偽應變能的來源。
展開 Abaqus中溫度輸出的規定 ¥10
Abaqus中溫度輸出的規定,詳細解釋了abaqus中實體單元,殼單元,梁單元溫度輸出的規定,并用實例進行了展示。
Abaqus 輸出矩陣的方法
在比較深入的CAE分析過程中,我們可能會關注模型中某些部分的剛度分布情況,因此需要提取剛度矩陣參數,因為使用相對較少,目前的Abaqus前處理模塊CAE中還無法直接實現該設置,因此需要對其inp文件進行局部修改來定義。
Abaqusn輸出剛度矩陣主要分為兩大類,一類是輸出某一部分的單元的剛度矩陣,一類是輸出整體模型的剛度矩陣(可含單元、彈簧、質量、阻尼、力等)。
下面我們分別對這兩中情況分別討論:
1、輸出單元矩陣
輸出單元剛度矩陣的方式相對容易理解,當然你也可以從自帶的英文幫助中需找答案,你只需要在inp文件中添加下述關鍵字即可:
*File Format,ASCII
*Element Matrix Output,Elset=xxx,
File Name=xxx,Frequency=1,Output File=User Defined,Stiffness=Yes
其中第一行的目的是將軟件默認生成的二進制文件轉化為ASCII格式文件,以方便直接查看和讀取避免亂碼。Elset后面的xxx對應的是之前已經定義好的單元集的名稱,也就是你想要獲取的那部分單元。File Name后面的xxx是abaqus計算后所提取出的單元矩陣所保存的文件名稱,后綴為.mtx ,也就是說最終在工作目錄中會生成一個xxx.mtx的文件,可以通過記事打開的剛度矩陣文件。
展開 
輸出方法:abaqus最值隨時間變化
為了減少工作量,大家還可以添加直接寫入Excel處理數據的步驟,也可以完善二次開發,自動更改顯示組,更改輸出變量,盡量實現只需要run script,然后就能game over的。
之前做Python-abaqus二次開發一直在用宏錄制.py文件,然后在此基礎上修改,后來在知乎上跟一位大佬學習意識到這樣做的局限性,大家在學習時,盡量把幫助文檔和.py文件結合起來,因為abaqus中每個函數庫里都包含了極其豐富的函數,.py文件不會把我們的操作全部錄制進去,這時就需要print一下,看看這個庫里都包括哪些函數,然后結合幫助文檔進行學習。比如我就是通過py文件找到了contourOptions這個函數,又在幫助文檔中找到了maxvalue這一變量。
展開 Abaqus模型輸出到HyperMesh ¥9.9
有時候我們會遇到把Abaqus中的模型輸出的inp文件導入到Hypermesh中的情況,但是有時候導入inp之后,在Hypermesh中會出現錯誤
為了解決這個問題,我們需要在Abaqus中進行如下操作:
在命令行中輸入“mdb.models['modelname'].setValues(noPartsInputFile=ON)”,'modelname'表示模型名稱
然后創建任務
然后輸出inp文件
這樣再到hypermesh中選擇剛輸出的文件導入,就不會出現錯誤
正確結果 謝謝大家,歡迎大家點贊關注
展開 abaqus二次開發輸出 VTU 格式文件 ¥100
abaqusoutputVtu,abaqus二次開發輸出 VTU 格式文件, VTK可顯示,該腳本可輸出位移、應力;
函數應用output_result_vtu222(workdir, "job-1", "Step-1", 1,"UnstructuredGrid")
abaqusoutputVtu,abaqus二次開發,基于python編寫提取odb結果輸出 VTU 格式文件, VTK可顯示,該腳本可輸出位移、應力;
函數應用output_result_vtu(workdir, "job-1", "Step-1", 1,"UnstructuredGrid")
展開 Abaqus疑難雜癥——INP文件自定義輸出
將單元矩陣輸出到DAT文件,關鍵詞為:
*ELEMENT MATRIX OUTPUT,ELSET=element_set,MASS=YES(單元質量矩陣)
*ELEMENT MATRIX OUTPUT,ELSET=element_set,SFIFFNESS=YES(單元剛度矩陣)
*ELEMENT MATRIX OUTPUT,ELSET=element_set,FREQUENCY=n(每隔n個增量步輸出一次單元矩陣)
OUTPUT FILE=USER DEFINED
有關inp文件的用法和功能就講解到這里了,木木會在B站上面及時更新有關INP文件食用的視頻,希望小伙伴們多多支持~B站ID:易木木響叮當
以上就是今天分享的內容,大家如果覺得有用,可以點個右下角的
在看
,也可以分享給正在學習Abaqus的同學,大家一起相互交流,共同學習進步~
往期推薦
Abaqus疑難雜癥——Inp文件的正確食用方法
Abaqus疑難雜癥——局部坐標系的那些事兒
Abaqus后處理常見問題
ABAQUS疑難雜癥之沙漏剛度
Abaqus/Standard分析步、增量與迭代
展開