
發布
注冊
/
登錄ABAQUS漸進網格
關注創建者:王靖雯 創建時間:2023-02-27
ABAQUS漸進網格的視頻教程
abaqus python漸進式二次開發(一)
abaqus python漸進式二次開發(一) 適用人群:習慣于復制粘貼 python 腳本的你,正在學習abaqus python腳本的你,官方開發文檔看得云里霧里的你,整不明白代碼里"對象"是啥的你 abaqus python漸進式二次開發(一)【已結束】 直播時間:2020-11-12 19:30 內容簡介:本次直播課程主要面向abaqus python腳本學習者和初級開發者。
¥10 1小時45分鐘 101播放
查看
abaqus動態載荷下薄壁鋁擠壓的漸進破壞分析
¥40 23分鐘 63播放
查看
ABAQUS漸進網格的實例教程
<p> 該表格工具可以對SALE網格節點的漸進式網格間距的比率進行計算,通過輸入下圖中紅色字體為輸入,計算出藍色為所要信息。</p><p><br></p><p><br></p><p><br></p><figure style="text-align: center;" class="ql-align-center">
<figure class="figure-image" contenteditable="false" data-img="https://img.jishulink.com/202507/attachment/fdd59e8f79264624b1edbe898f699ed4.png" style="display: inline-block;">
<img src="https://img.jishulink.com/202507/attachment/fdd59e8f79264624b1edbe898f699ed4.png" style="" width="356" data-mobile-src="https://img.jishulink.com/202507/attachment/fdd59e8f79264624b1edbe898f699ed4.png?image_process=/format,webp" data-pc-src="https://img.jishulink.com/202507/attachment/fdd59e8f79264624b1edbe898f699ed4.png?
展開 一、用“包”來開發——“漸進式開發”第一招
在abaqus頻繁做python二次開發的朋友,大多數憑借編程的基礎和abaqus自動生成的腳本,是能夠“玩轉”abaqus python腳本的,但是那些經過反復琢磨的“長長的”腳本往往會變成珍藏的“寶貝”,很難在不同的項目間重復使用。有時,一些非常管用的“代碼片段”會單獨保存,以便再次用到的時候快速找到,然后“復制粘貼”。其實項目越做越多,你的代碼在“成長”,更適合用“漸進式”的開發方式來組織代碼。
AbaqusCAE自帶的各種功能模塊是很好的學習榜樣,它們分門別類的放在C:\SIMULIA\CAE\2019\win_b64\code\python2.7\lib目錄里,一句import隨用隨取。
這是“漸進式開發”第一招:
在C:\SIMULIA\CAE\2019\win_b64\code\python2.7\lib目錄下創建一個用英文字符命名的文件夾,并在文件夾里加一個空文件__init__.py。往后你做python二次開發的代碼盡管往這里放,這個文件夾將成為你專屬的“開發包”。
其他炫酷的功能和效果都在這個基礎上實現,比如用代碼倉庫來對你的“開發包”做版本控制,你可以慢慢升級自己的包。比如,你換一臺電腦做開發,只要pull你的“開發包”,就能接著開發,做了更新只要push到你的代碼倉庫就好了。
如果你帶了一個團隊,那大家可以方便的公用這個開發包,集體的智慧也可以通過這個專屬“開發包”,不斷凝聚,不斷升級。
二、用“函數”、“模塊”組織代碼——“漸進式開發”第二招
abaqus自動生成腳本的功能在很多時候成了“代碼生成器”,但是帶來的問題也是很明顯的:首先是冗余的問題。變量命名的冗余,python函數傳遞參數的冗余,甚至代碼重復。
展開 在這種情況下,Abaqus在積分點產生一個體熱通量來補償這種差異。
2.9邊界條件
如果指定非活動單元跟隨變形,邊界條件將應用于非活動節點(因為這些節點的自由度是解的一部分)。否則,邊界條件不會應用于非活動節點,直到它們所屬的單元被激活。
2.10載荷
當一個單元處于非活動狀態時,不施加載荷;但是,只要一個單元被激活,它們就被施加。激活時的荷載大小有與激活時間對應的值,這意味著荷載大小可能會突然增大,這可能會導致收斂問題。
2.11單元
漸進單元激活只支持實體連續單元和殼單元。但是,對于殼單元只支持完全激活。如果將小于1的材料體積分數賦給一個殼單元,Abaqus會自動將值改為1。
2.12輸出
除了Abaqus/ standard中可用的標準輸出標識符(使用Abaqus/ standard輸出變量標識符),當指定漸進單元激活時,以下變量有特殊意義:
EACTIVE
當前單元中材料的體積分數。
EEIG
本征應變的所有分量。
UACT
所有物理位移分量,包括具有轉動自由度的節點的旋轉,從節點被激活時開始測量。
URACT
從節點被激活時開始測量的所有旋轉位移分量。
UTACT
從節點激活時起測量的所有平移位移分量。
展開 Abaqus python 漸進式二次開發專治各種“問題”!
一、在abaqus自帶python環境裝第三方庫的問題
在abaqus 用python做前后處理的二次開發,很多時候需要用到第三方庫。而由于種種原因,安裝這些庫對很多人來說是一件非常頭痛的事。漸進式二次開發的技術能完美解決。
二、不兼容python3的問題
截至abaqus 2019版本,abaqus內置的python環境都是python2版本的。但是python3是趨勢,相當多的開源算法、功能都基于python3來開發,并且不一定兼容python2。如果只是簡單的導入python腳本來運行,肯定是不行的。讓python2和python3和諧的一起使用,漸進式二次開發的技術也能完美解決。
三、保護“開發成果”的問題
用python做比較復雜的模型,往往會積累下一些不錯的算法或代碼片段。出于對成果的保護,作者不會直接發布源碼,只發布一些對代碼功能的介紹。這一方面不利于有需求的人快速的使用到這些稀缺的“腳本”,另一方面這些辛辛苦苦積累下來的代碼少了很多用武之地,對于作者和潛在需求者都挺遺憾的。漸進式二次開發的技術很容易就化解了這對矛盾。
四、方法
那Abaqus python 漸進式二次開發是如何解決這些問題的?簡單來說就是:采用網絡接口,讓函數上云。
1、網絡接口
你在下圖中創建的包,不只是可以放置到本地的對應文件夾,其中的核心功能、關鍵函數還可以部署到網絡上,成為一個通過IP地址就能使用的網絡接口。網絡接口不僅能用python3來開發,甚至可以用任意一種更適合你開發需求的代碼來開發。網絡接口的環境和abaqus的python2環境是天然隔離的,安裝各種第三方庫自然不在話下了。
說到成果保護,作者可以精準對具體某個函數進行訪問控制,包括“哪個賬號可以訪問?”
展開 Abaqus 考慮材料隨機性的復合材料漸進損傷分析
由于制造工藝、外部環境等的影響,材料的隨機分布是個普遍存在的現象。目前針對復合材料的分析中,絕大部分并未考慮材料隨機性對仿真結果的影響。鑒于此,本文通過Umat子程序將材料隨機性引入復合材料的漸進損傷分析中,對比了不同的隨機分布對仿真結果的影響。
本文的仿真對象為一種短切纖維復合材料(芳綸紙),主要從宏觀的角度研究了短纖維取向隨機性對計算結果的影響。
材料的隨機性一般可以認為服從正態分布或者weibull分布。正態分布可以通過Box-Muller算法實現。Box-Muller算法是通過服從均勻分布的隨機變量,來構建服從正態分布隨機變量的一種方法。具體實現方法為:選取兩個服從
[0,1]
上均勻分布的隨機變
量
U
1
、
U
2
,
X
、
Y
滿足
則
X
與
Y
服從均值為0,方差為
1
的正態分布。
通過上述算法,可以在Fortran中生成纖維取向在[0,90]之間服從正態分布的隨機數,以下為部分代碼
Fortran中生成服從Weibull分布隨機數的方法可以參照文獻[1]。http://www.yqgqt.org.cn/content/post/1205134中同樣采用了文獻[1]中的方法生成了服從Weibull分布的隨機數。
復合材料的損傷萌生準則和損傷演化準則可以參考http://www.yqgqt.org.cn/content/post/1206124。與之不同的是由于芳綸紙厚度很小,本文中只考慮了材料的面內損傷行為。
展開 
ABAQUS漸進網格的相關專題、標簽、搜索
ABAQUS漸進網格的最新內容
<p> 該表格工具可以對SALE網格節點的漸進式網格間距的比率進行計算,通過輸入下圖中紅色字體為輸入,計算出藍色為所要信息。</p><p><br></p><p><br></p><p><br></p><figure style="text-align: center;" class="ql-align-center">
<figure class="
筆名:復材失效仿真
關鍵詞:纖維增強復合材料,航空航天,漸近損傷模型,有限元仿真,沖擊
復合材料結構漸進損傷研究
復合材料因其輕質高強廣泛應用于航空航天、交通運輸等領域。當復合材料具備復雜結構(如連接結構)或承受復雜工況(如沖擊載荷)時,層內損傷的模式包括多種損傷模式纖維/基體脫粘、基體開裂和纖維斷裂,從而引起復合材料結構漸進失效。為了模擬這些現象,漸進損傷模型(PDM)在過去二十年中常被使用并已被證明是一種有效的方法
本文參考了十篇左右文章,基于Abaqus/Explicit,建立了復合材料漸進損傷本構模型并編寫了VUMAT子程序,包括彈性階段、基于應力的三維HASHIN初始損傷準則、線性損傷演化。計算流程如下圖所示。
圖1 整體計算流程
材料模型
1.1 彈性階段
其中, (i,j=1,2,3)為應力分量, (i,j=1,2,3) 為應變分量,Eii (i=1,2,3) 為拉伸模量
ABAQUS顯式和隱式Hashin失效的損傷起始判斷準則一致,但是單元刪除策略不同,如下ABAQUS幫助文檔中提到:
1. Standard中,Hashin中所有的失效模式中的損傷系數達到dmax才會認為材料失效。
2. Explicit中,當任意纖維失效模式(纖維拉伸或壓縮)中的損傷系數達到dmax即認為材料失效。
我們回頭來看Hashin失效準則:
隱式計算中,當纖維拉伸失效準則中的失效系數達到
對于纖維增強復合材料的模擬,在<a href="/major/ABAQUS中,集成了二維Hashin失效準則與多種損傷演化準則,但缺少三維的復合材料本構模型。
參考一篇已發表的SCI文章,使用Fortran語言建立三維平紋織物復合材料彈塑性、漸進損傷本構模型-Vumat子程序。平紋織物復合材料在1方向和2方向絲束性能近似相同。
該程序是博士期間學習復材子程序的小部分總結,編程結構并不是非常漂亮及完美
Abaqus python 漸進式二次開發專治各種“問題”!
一、在abaqus自帶python環境裝第三方庫的問題
在abaqus 用python做前后處理的二次開發,很多時候需要用到第三方庫。而由于種種原因,安裝這些庫對很多人來說是一件非常頭痛的事。漸進式二次開發的技術能完美解決。
二、不兼容python3的問題
截至abaqus 2019版本,abaqus內置的python環境都是
一、用“包”來開發——“漸進式開發”第一招
在abaqus頻繁做python二次開發的朋友,大多數憑借編程的基礎和abaqus自動生成的腳本,是能夠“玩轉”abaqus python腳本的,但是那些經過反復琢磨的“長長的”腳本往往會變成珍藏的“寶貝”,很難在不同的項目間重復使用。有時,一些非常管用的“代碼片段”會單獨保存,以便再次用到的時候快速找到,然后“復制粘貼”。其實項目越做越多,你的代碼在
漸進單元激活相對于model change,可以對單元的激活進行更精確的控制。
1.Model change(單元以及接觸對的移除與重新激活)
· 可用于模擬從模型中刪除part,可以是暫時的或在剩下的分析中永久刪除;
· 允許單元在無應變或有應變的情況下重新激活;
· 當不需要接觸對時,可用于節省計算時間;
· 只能用于通用分析步;
· 只有在原始分析中使用或激活時,才能在重新啟動分析中使用
由于制造工藝、外部環境等的影響,材料的隨機分布是個普遍存在的現象。目前針對復合材料的分析中,絕大部分并未考慮材料隨機性對仿真結果的影響。鑒于此,本文通過Umat子程序將材料隨機性引入復合材料的漸進損傷分析中,對比了不同的隨機分布對仿真結果的影響。
本文的仿真對象為一種短切纖維復合材料(芳綸紙),主要從宏觀的角度研究了短纖維取向隨機性對計算結果的影響。
材料的隨機性一般可以認為服從正態分布或者
準靜態和動態載荷下薄壁鋁型材的漸進破壞分析(abaqus-help)
