
發布
注冊
/
登錄abaqus提取質量矩陣
關注創建者:王靖雯 創建時間:2023-02-27

abaqus提取質量矩陣的實例教程
abaqus提取單元的剛度矩陣和質量矩陣:
*Output, history, variable=PRESELECT,
*File Format,ASCII
*Element Matrix Output,Elset=Beam-1.Set-2,
File Name=shuchu,Frequency=1,Output File=User Defined,Stiffness=Yes
*End Step
*Step
*Matrix generate,stiffness
*End Step
1.引論
經常使用Ansys、Abaqus等一系列有限元分析軟件進行計算、學習的學生或工程師們都會知道在有限元分析建模與計算中剛度矩陣與質量矩陣的重要性。但是由于軟件的黑盒性質,大家往往在實際使用十分成熟的商業化軟件的過程中慢慢忽視了有限元及其衍生出的商業軟件背后的原理與方法。
這時,不管是在學習中還是在工程應用中往往都會遇到一個同樣的問題,那么就是如何將Ansys APDL運行中的產生的各種數據(例如:剛度矩陣、質量矩陣)導出成為我們熟悉的形式或文件格式,從而為我們所用,所分析。
因此我決定寫下此篇文章來幫助很多實際工作或學習中需要用到此類技能的同學、同事們,讓大家更了解Ansys APDL背后的工作原理與數據導出方式。
當然,在社區中早就有大佬回答過了這個問題,并給大家制作了相應的提取矩陣軟件,其軟件具備了簡單、便捷的操作方式,讓很多想要提取剛度矩陣與質量矩陣的同僚們受益,那么我為什么還要寫一篇這樣的文章重新提起這樣一個話題呢?這就又回到了我開頭所說的“原理與方法”,我在此更希望面對想要進一步學習了解軟件背后機理的群體,并在此基礎上保留教學的簡潔性,提供導出矩陣與轉換、列式、求解的源代碼,使其既兼顧基本原理,又可以讓大家直接上手使用,非常的便捷,也避免了很多因為優化不完全導致的運行bug。
2.有限元軟件導出剛度矩陣與質量矩陣的方法
在使用APDL進行求解時,每次在求解完成后都會在工作路徑下生成一個.full文件,而這個文件十分關鍵,其正是剛度矩陣與質量矩陣的所在之處。
展開 指定輸出單元矩陣
/SOLU
SOLVE
finish
/OUTPUT, TERM ! 將輸出信息送到output windows中
! 這時用編輯器打開cp.out文件,可以看到按單元寫出的質量、剛度等矩陣
3.
其原理很簡單,即使用ansys的超單元即可解決問題。定義超單元,然后列出超單元的剛度矩陣即可。
面是一個小例題,自可明白。
/prep7
k,1
k,2,3000
l,1,2
et,1,beam3
mp,ex,1,2e5
mp,prxy,1,0.3
r,1,5000,2e7,200
lesize,all,,,10
lmesh,all
finish
!----以上正常建立模型,不必施加約束和荷載
/solu
antype,7 !substructuring分析類型
seopt,matname,1 !設置文件名稱和剛度矩陣類型(剛度,質量,阻尼等)
nsel,all !選擇所有節點
m,all,all !定義所有節點自由度為主自由度
solve !求解
selist,matname,3 !列出整體剛度矩陣
展開 在有限元分析中,ANSYS 可以導出大規模稀疏矩陣(如剛度矩陣、質量矩陣),通常使用 Harwell-Boeing (HB) CCS 格式。這些矩陣對后續二次開發、動力學分析或自定義求解器非常重要,但由于其稀疏和壓縮存儲形式,直接在 MATLAB 中讀取和使用并不方便。
本文提供了 兩個 MATLAB 函數,可直接從 ANSYS 導出的 HB 矩陣文件中讀取并重構成 MATLAB 稀疏矩陣:
1.剛度矩陣提取函數
輸入:ANSYS 導出的剛度矩陣 HB 文件(stiff.txt)
輸出:MATLAB 稀疏矩陣 K,可直接用于動力學計算或驗證
支持自動對稱化,保證數值正確
2.質量矩陣提取函數
輸入:ANSYS 導出的質量矩陣 HB 文件(mass.txt)
輸出:MATLAB 稀疏矩陣 M
使用與剛度矩陣同樣的解析邏輯,無需額外修改
案例說明:
本文以高速鐵路接觸網結構為例,展示了如何將 ANSYS 中導出的稀疏剛度矩陣和質量矩陣,在 MATLAB 中完整展開,并進行后續動力學分析準備。
通過該方法,可以將大規模有限元矩陣快速轉化為 MATLAB 可操作形式,為自定義振動分析、模態分析及其他科研或工程應用提供基礎。
優勢與應用:
支持大規模稀疏矩陣解析
自動對稱化,保證數值精度
適用于剛度矩陣、質量矩陣、其他 HB 格式矩陣
可作為動力學求解器或后處理工具的基礎模塊
使用方法:
1.使用以下代碼對ansys中生成的質量及剛度矩陣進行提取,file,5,full(5為工作目錄下full文件的文件名,例如:filename.full)。
展開 獲取矩陣十進制文件
/aux2
file,Frame,full !與文件名一致
hbmat,Stiff,txt,,ascii,stiffness,yes,yes !提取剛度矩陣 存儲為Stiff.txt
hbmat,Mass,txt,,ascii,mass,yes,yes !提取質量矩陣 存儲為Mass.txt
Finish
提取其前10階模態如下:
通過MATLAB對文件提取并處理后,可以使用spy命令查看稀疏矩陣的分布,剛度矩陣分布和各變量維度如下:
稀疏剛度矩陣的具體分布如下:
稀疏質量矩陣的具體分布如下:
計算矩陣的特征值,利用提取的剛度矩陣和質量矩陣做模態分析。
與ANSYS中的結果一致,因此驗證了正確性。
在Stiff.mapping文件中,格式是這樣的:
在MATLAB中使用相同的方法提取并整理,如下:
展開 
abaqus提取質量矩陣的相關專題、標簽、搜索
abaqus提取質量矩陣的最新內容
在有限元分析中,ANSYS 可以導出大規模稀疏矩陣(如剛度矩陣、質量矩陣),通常使用 Harwell-Boeing (HB) CCS 格式。這些矩陣對后續二次開發、動力學分析或自定義求解器非常重要,但由于其稀疏和壓縮存儲形式,直接在 MATLAB 中讀取和使用并不方便。
本文提供了 兩個 MATLAB 函數,可直接從 ANSYS 導出的 HB 矩陣文件中讀取并重構成 MATLAB 稀疏矩陣:
1.引論
經常使用Ansys、Abaqus等一系列有限元分析軟件進行計算、學習的學生或工程師們都會知道在有限元分析建模與計算中剛度矩陣與質量矩陣的重要性。但是由于軟件的黑盒性質,大家往往在實際使用十分成熟的商業化軟件的過程中慢慢忽視了有限元及其衍生出的商業軟件背后的原理與方法。
這時,不管是在學習中還是在工程應用中往往都會遇到一個同樣的問題,那么就是如何將Ansys
最近在考慮自己編寫的程序和商用軟件的驗證問題,有限元結構分析中最關鍵的一環就是剛度矩陣的獲得,如果涉及到模態分析,還有質量矩陣??紤]到商業軟件的成熟性,可以用ANSYS生成的剛度矩陣做參照來看自己編寫的程序是否正確,因此如何提取ANSYS中結構的剛度矩陣,并進行隨后的驗證或者二次開發是一個問題。
https://www.yqgqt.org.cn/content/post/1796144
1. 背景
從事結構振動控制、車橋耦合振動、結構健康監測傳感器優化布置、結構動力性能分析等等一系列研究的同仁們應該都面臨過一個同樣的問題—“怎么把結構的剛度和質量矩陣建立出來?”。這對于那些數值分析高手和專家可能不是什么問題;但是對于科研剛入門的新手來說,這個難度還是相當大的。如果都靠自己寫程序來建立有限元模型,則對理論基礎、編程水平都有很高的要求,甚至程序做出來也未必能保證其正確性,是一個很讓人頭疼的問題
==概述==
在CAE領域,從學校、實驗室的自研算法到實現真正的商業化軟件是一條無比漫長的道路。我們不研究有限元的新方法、新理論,只是研究商用有限元軟件的實現方式。有限元的理論發展了幾十年已經相當成熟,商用有限元軟件同樣也是采用這些成熟的有限元理論,只是在實際應用過程中,商用軟件在這些傳統的理論基礎上會做相應的修正以解決工程中遇到的不同問題,且各家軟件的修正方法都不一樣,每個主流商用軟件手冊中都會注明各個單元的理論采用了哪種理論公式
=======概述=======
EMM(Export Matlab Matrix)是集成在ABAQUS/CAE中的一個插件,能夠一鍵輸出Abaqus模型的單元及全局剛度、質量、載荷矩陣,并自動轉換為MATLAB矩陣。
Abaqus可以輸出剛度、質量等單元或者全局矩陣。但需要手動添加關鍵詞,較為麻煩,且輸出的.mtx矩陣格式比較亂,不易閱讀。
本工具能一鍵實現以下功能:
1. 輸出
abaqus提取單元的剛度矩陣和質量矩陣:
*Output, history, variable=PRESELECT,
*File Format,ASCII
*Element Matrix Output,Elset=Beam-1.Set-2,
File Name=shuchu,Frequency=1,Output File=User Defined,Stiffness=Yes
*End
、整體剛度和質量矩陣的提取。
該功能需要進行二次開發,由ansys形成
的二進制文件.full提取整體剛度和質量
矩陣。
基于ansys的一個用戶開發程序例子編
了一個程序(附件中)。
開發環境:compaq fortran 6.5
運行環境:win2000。
一個主文件:self.for,
另一個文件matrixout.f90用于矩陣輸出
binlib.lib
1、整體剛度和質量矩陣的提取。
該功能需要進行二次開發,由ansys形成
的二進制文件.full提取整體剛度和質量
矩陣。
基于ansys的一個用戶開發程序例子編
了一個程序(附件中)。
開發環境:compaq fortran 6.5
運行環境:win2000。
一個主文件:self.for,
另一個文件matrixout.f90用于矩陣輸出
binlib.lib為ansys提供的庫文件
1.
Which matrix you would like? element stiffness matrix or full stiffness matrix?
element stiffness is within file.emat. full stiffness matrix is within file.full
A simple way to dump the matrix