
發(fā)布
注冊
/
登錄abaqus子程序的案例
abaqus子程序實(shí)例
abaqus子程序學(xué)習(xí)
Abaqus用戶子程序入門實(shí)例1.pdf
Abaqus用戶子程序入門實(shí)例2.pdf
Abaqus用戶子程序入門實(shí)例3.pdf
Abaqus用戶子程序入門實(shí)例4.pdf
Abaqus用戶子程序入門實(shí)例5.pdf
abaqus子程序開發(fā):fortran-c-python混合編程開發(fā)
abaqus子程序開發(fā)語言不局限fortran和c了,還能支持python!
這是一套自研的開發(fā)框架,源于客戶需要獲取分析過程的中間數(shù)據(jù)作為python機(jī)器學(xué)習(xí)程序的輸入這樣的需求。這種需求乍一聽確實(shí)非主流、非常規(guī)。
后來仔細(xì)做了一些了解,這種需求有其合理性。第一,python在數(shù)據(jù)分析、機(jī)器學(xué)習(xí)方面有豐富的資源;第二,python程序嵌入abaqus求解器一起運(yùn)行,那開發(fā)就會很方便高效;第三,借助python的pdb可以隨心所欲的設(shè)置斷點(diǎn),調(diào)試程序。在此之前,python一般作為獨(dú)立程序,依賴數(shù)據(jù)文件的順序傳遞,實(shí)現(xiàn)與abaqus的協(xié)同。直白的講,abaqus算完了,形成數(shù)據(jù)文件再導(dǎo)入python。
于是火力全開研究解決方案,結(jié)果可謂“大快人心”:實(shí)現(xiàn)了abaqus的子程序對python的支持,而且還實(shí)現(xiàn)了fortran、c、python三種語言的混合編程,真正讓不同的編程語言在它最擅長的領(lǐng)域發(fā)揮作用。
以上介紹了abaqus子程序fortran-c-python混合編程,如有這方面的需求,歡迎私信聯(lián)系開展合作。
展開 Abaqus 中最常用的子程序有哪些 碩迪科技
在ABAQUS中,用戶定義的子程序是一種重要的構(gòu)件,可以將其插入到Abaqus分析中以增強(qiáng)該軟件的功能和靈活性。這些子程序允許用戶在分析過程中添加自定義材料模型、邊界條件、初始化、加載等特定操作,以便更精準(zhǔn)地模擬分析中的現(xiàn)象和現(xiàn)象。ABAQUS支持各種不同類型和用途的子程序,下面列舉了最常用的ABAQUS子程序。
1. DLOAD(Abaqus/標(biāo)準(zhǔn))和 VDLOAD(Abaqus/顯式)
兩個子程序用于定義隨時(shí)間變化的邊界加載條件。在該子程序中,我們可以根據(jù)時(shí)間和位置來定義加載情況,并將其應(yīng)用于模型的邊界。
2. UMAT(Abaqus/標(biāo)準(zhǔn))和 VUMAT(Abaqus/顯式)
UMAT和VUMAT子程序可以用于定義自定義材料模型。UMAT子程序用于定義材料模型中的本構(gòu)關(guān)系,而VUMAT子程序可以使用相對簡單的格式定義材料模型。這些子程序提供了更高的靈活性和自定義能力,以滿足不同的材料模型需求。它們通常用于仿真非線性和復(fù)雜材料、材料失效和斷裂等。
3. USDFLD(Abaqus/標(biāo)準(zhǔn))和 VUSDFLD(Abaqus/Explicit)
USDFLD子程序允許用戶定義自定義場變量以用于邊界條件、初始化和輸出等。這些場變量可以是位移、應(yīng)力、應(yīng)變、溫度等,并且可以隨時(shí)間和位置而變化。這些場變量可以在模擬過程中更新,以便更好地模擬分析中的復(fù)雜現(xiàn)象。
4. UEL(Abaqus/標(biāo)準(zhǔn))和UELMDL子程序
UEL和UELMDL子程序可以用于定義自定義元素。這些元素可以是基于現(xiàn)有元素的增強(qiáng)版本,也可以是全新的元素。用戶可以在UELEXP和UELMDLEXP子程序中編寫自己的元素計(jì)算例程,并將其插入到分析中以模擬特定的現(xiàn)象。
UEL子程序用于定義有限元單元的行為。在這個子程序中,我們可以編寫單元的剛度矩陣、內(nèi)力矢量和應(yīng)力矢量等。
展開 一個abaqus用戶材料子程序(UMAT)問題解決說明 附Abaqus用戶子程序專題下載
在開展abaqus用戶子程序的項(xiàng)目時(shí),容易出現(xiàn)很多bug問題,下面是一個比較典型的容易遇到的報(bào)錯。
The job input file "Job-1.inp" has been submitted for analysis.
Job Job-1: Analysis Input File Processor aborted due to errors.
Error in job Job-1: Analysis Input File Processor exited with an error.
檢查工作路徑下的log文件(Job-1.log),提示無法識別“ifort”,這就意味著這個命令在系統(tǒng)路徑中無法被識別。實(shí)際上,“ifort”適用于編譯Fortran文件的,如果無法使用則無法完成編譯。
log文件內(nèi)容
為了解決這個問題,在系統(tǒng)文件中找到“ifort.exe”,并將其添加到環(huán)境變量path中,然后重啟軟件即可解決。
添加路徑
下載地址:Abaqus用戶子程序專題
展開 
線性強(qiáng)化彈塑性umat子程序-umat在abaqus計(jì)算流程中的意義及調(diào)試方法
abaqus子程序用fortran語言編寫,且子程序又通過abaqus調(diào)用,因而涉及到很多的力學(xué)及有限元理論知識,使得調(diào)試難度陡然增加。那么abaqus子程序常用的調(diào)試方法是什么呢?其實(shí)說出來也很簡單,就是打印變量法,即把程序中的變量打印出來(一般打印結(jié)果在當(dāng)前工作目錄下的job-name.log的文件里),然后考察其合理性。
如在上述umat子程序中定義了一個save在內(nèi)存的變量,用來記錄進(jìn)入umat的次數(shù)。
直接打印變量的方法很有用,但是當(dāng)單元數(shù)增加后,眾多的打印信息形成很多的干擾因素,這時(shí)候我們需要控制打印的頻率,常用的方法為針對某個單元的某個積分點(diǎn)打印,如下面的一段程序所示,紅色圓圈里內(nèi)容的含義是當(dāng)單元編號為1且積分點(diǎn)編號為1時(shí)才打印相關(guān)信息,這樣調(diào)試更具針對性。
我們通過打印信息發(fā)現(xiàn),一次迭代二次進(jìn)入umat,第一次進(jìn)入umat僅是給abaqus返回雅可比矩陣,第二次進(jìn)入umat的目的是為了更新應(yīng)力等信息。
視頻教程有這個帖子的更詳細(xì)解釋,感興趣的點(diǎn)擊下面的鏈接觀看
http://www.yqgqt.org.cn/college/video/c14014
展開 ABAQUS用戶子程序小例子
Abaqus用戶子程序DISP入門實(shí)例2-kxh.zip
Abaqus用戶子程序DISP入門實(shí)例3-kxh.zip
Abaqus用戶子程序DISP入門實(shí)例-kxh.zip
Abaqus內(nèi)置LaRC05失效準(zhǔn)則子程序(附cohesive單元umat子程序開發(fā)教程)
Abaqus從2017版本開始,內(nèi)置了UVARM和DMGINI兩種子程序供用戶調(diào)用。UVARM子程序需要以“ABQ_LARC05_DMGCRT”作為材料名的前綴,可以用來評估是否滿足LaRC05強(qiáng)度指標(biāo);DMGINI子程序需要以“ABQ_LARC05_DMGINI”作為材料名前綴,可以結(jié)合XFEM來分析裂紋萌生和擴(kuò)展。
在abaqus中可以通過修改關(guān)鍵字來進(jìn)行模型設(shè)置
UVARM設(shè)置
DMGINI設(shè)置
輸出變量的含義
計(jì)算結(jié)果
此外,如果有小伙伴希望學(xué)習(xí)cohesive單元的umat子程序開發(fā)相關(guān)技術(shù),可以關(guān)注下圖的教程:
點(diǎn)擊鏈接進(jìn)入了解詳情:Abaqus Cohesive單元介紹及其本構(gòu)的Umat子程序開發(fā)教程
最后,有ABAQUS子程序開發(fā)相關(guān)需求歡迎通過微信公眾號聯(lián)系我們。
微信公眾號:320科技工作室。
展開 Abaqus用戶子程序簡單入門實(shí)例詳細(xì)步驟——DISP的應(yīng)用
1、問題描述
2、Fortran程序
3、結(jié)果
4、詳細(xì)步驟
Abaqus用戶子程序DISP入門實(shí)例-kxh.part3.rar
Abaqus用戶子程序DISP入門實(shí)例-kxh.part1.rar
Abaqus用戶子程序DISP入門實(shí)例-kxh.part2.rar
Abaqus用戶子程序調(diào)試插件DUS ¥1
=======背景=======
前段時(shí)間學(xué)習(xí)Abaqus的用戶子程序,本以為按照算法實(shí)現(xiàn)Fortran編碼應(yīng)該是比較快的,但沒想到在找用戶子程序的編譯和調(diào)試時(shí)浪費(fèi)了不少時(shí)間,而且按照網(wǎng)上方法在命令行調(diào)試太麻煩,正好要做基于python的Abaqus二次開發(fā)培訓(xùn),所以就在Abaqus/CAE用python做了一個簡單的調(diào)試插件,希望能減少初學(xué)者自己摸索調(diào)試方法的時(shí)間,也為現(xiàn)在還在用命令行調(diào)試的人提供一種更加便捷的方式。
=======概述=======
DUS(Debug User Subroutine)是集成在ABAQUS/CAE中的一個插件,能夠一鍵啟動用戶配置的用戶子程序開發(fā)平臺(如Visual Studio 2008等),并進(jìn)入對用戶定義子程序的單步調(diào)試模式。
Abaqus用戶子程序是用戶進(jìn)行求解器二次開發(fā)的手段,如果想要加入自己的算法,就必須使用Abaqus用戶子程序,Abaqus/CAE中可以編譯并運(yùn)行用戶子程序,但沒有提供對用戶子程序的調(diào)試功能,用戶在編寫用戶子程序時(shí),如果通過打印數(shù)據(jù)信息輸出log信息來查看程序運(yùn)行情況,查錯過程極其繁瑣。而用戶如果在dos窗口下調(diào)試,由于用戶子程序本身的復(fù)雜性,在得到最終正確結(jié)果前,需要反復(fù)編程->調(diào)試->再編程這個過程,來回切換也是極其不方便的。
本工具可在Abaqus/CAE中調(diào)試用戶子程序,實(shí)現(xiàn)以下功能:
(1) 讀取用戶在ABAQUS/CAE的計(jì)算任務(wù)中定義的用戶子程序信息;
(2) 自動啟動配置的用戶子程序開發(fā)平臺,進(jìn)入調(diào)試模式;
(3) 對用戶子程序進(jìn)行單步調(diào)試。
展開 (完整)在Abaqus中使用.f90格式的子程序的方法
一、前言
Fortran語言發(fā)展至今已經(jīng)推出了若干版本,那么究竟采用哪個版本來編寫Abaqus子程序呢?這是困擾很多同學(xué)的問題,因?yàn)槲覀兡苜I的Fortran教材基本都是講解的Fortran90/95以上的版本。但是直接采用90或者95以上的版本編寫子程序,Abaqus卻又不能識別。
這里需要說明一點(diǎn),Abaqus原生支持的FORTRAN77的語法形式,因此采用77寫子程序肯定是沒有問題的,但是實(shí)際上更高級的比如90也是能夠支持的,需要對.env文件進(jìn)行修改,加入支持90的語句即可。
二、方法
Abaqus默認(rèn)支持的是固定(FORTRAN77)格式的Fortran子程序。編譯或者調(diào)用子程序時(shí)會自動搜索文件后綴為:*.for, *.f, *.C, *.c, *.cc, *.CPP, *.cpp, *.CXX, *.cxx 的源代碼文件。
如果想使用.f90自由格式的Fortran子程序,需要修改Abaqus的環(huán)境配置文件。
展開 Abaqus子程序代碼分享
Journal of the Mechanics and Physics of Solids 147: 104254 (2021)
1、UELCorrosion.zip
ABAQUS UMAT SUBROUTINE TO IMPLEMENT PHASE FIELD FRACTURE
2、ABAQUS UMAT子程序實(shí)現(xiàn)相場斷裂
ABAQUS UMAT user subroutine for implementing phase field fracture without the need for user elements by taking advantage of the heat transfer equation.
ABAQUS UMAT用戶子程序,通過利用傳熱方程式,無需用戶元素即可實(shí)現(xiàn)相場破裂。
Paper: Y. Navidtehrani, C. Betegón, E. Martínez-Pa?eda. A unified Abaqus implementation of the phase field fracture method using only a user material subroutine. Materials 14(8): 1913 (2021).
Paper: Y. Navidtehrani, C. Betegón, E. Martínez-Pa?eda.
展開 
Abaqus通過USDFLD子程序進(jìn)行泥巖的應(yīng)變軟化模擬
本文基于泥巖的三軸壓縮試驗(yàn)曲線,建立考慮應(yīng)變軟化特性的泥巖彈塑性本構(gòu)模型,使用Abaqus及其子程序對泥巖的三軸壓縮試驗(yàn)進(jìn)行了數(shù)值模擬。泥巖在受壓過程中主要經(jīng)過了5個階段,即壓密階段、彈性變 形、應(yīng)變硬化、應(yīng)變軟化、殘余階段。泥巖應(yīng)變軟化模型如下所示。
式中,ξ為強(qiáng)度參數(shù),ξp為峰值強(qiáng)度參數(shù),ξr為殘余階段強(qiáng)度參數(shù),η為應(yīng)變軟化參數(shù),η*為殘余階段的應(yīng)變軟化參數(shù)初始值。對于三軸壓縮試驗(yàn),η用塑性剪切應(yīng)變來表示
塑性屈服準(zhǔn)則采用Mohr-Coulomb準(zhǔn)則,則粘聚力和內(nèi)摩擦角的參數(shù)演化可以用下式表示
在巖石的塑性變形過程中會產(chǎn)生比較明顯的剪脹現(xiàn)象,而用來描述這一現(xiàn)象的較常用的力學(xué)參數(shù)就是剪脹角 Ψ,
上述模型可以通過USDFLD子程序進(jìn)行實(shí)現(xiàn),流程圖如下
有限元模型如下圖所示
計(jì)算得到的應(yīng)力云圖及不同圍壓下的載荷位移響應(yīng)如下所示
參考文獻(xiàn):張力偉,賈善坡,鄒江濤,舒婧曦.泥巖的峰后軟化力學(xué)模型.中國科技論文,2016,11(21):2456-2461
有關(guān)于abaqus子程序開發(fā)的相關(guān)問題可以通過公眾號聯(lián)系我們.
公眾號: 320科技工作室
展開 Abaqus通過USDFLD子程序進(jìn)行泥巖的應(yīng)變軟化模擬
本文基于泥巖的三軸壓縮試驗(yàn)曲線,建立考慮應(yīng)變軟化特性的泥巖彈塑性本構(gòu)模型,使用Abaqus及其子程序對泥巖的三軸壓縮試驗(yàn)進(jìn)行了數(shù)值模擬。泥巖在受壓過程中主要經(jīng)過了5個階段,即壓密階段、彈性變 形、應(yīng)變硬化、應(yīng)變軟化、殘余階段。泥巖應(yīng)變軟化模型如下所示。
式中,ξ為強(qiáng)度參數(shù),ξp為峰值強(qiáng)度參數(shù),ξr為殘余階段強(qiáng)度參數(shù),η為應(yīng)變軟化參數(shù),η*為殘余階段的應(yīng)變軟化參數(shù)初始值。對于三軸壓縮試驗(yàn),η用塑性剪切應(yīng)變來表示
塑性屈服準(zhǔn)則采用Mohr-Coulomb準(zhǔn)則,則粘聚力和內(nèi)摩擦角的參數(shù)演化可以用下式表示
在巖石的塑性變形過程中會產(chǎn)生比較明顯的剪脹現(xiàn)象,而用來描述這一現(xiàn)象的較常用的力學(xué)參數(shù)就是剪脹角 Ψ,
上述模型可以通過USDFLD子程序進(jìn)行實(shí)現(xiàn),流程圖如下
有限元模型如下圖所示
計(jì)算得到的應(yīng)力云圖及不同圍壓下的載荷位移響應(yīng)如下所示
參考文獻(xiàn):張力偉,賈善坡,鄒江濤,舒婧曦.泥巖的峰后軟化力學(xué)模型.中國科技論文,2016,11(21):2456-2461
有關(guān)于abaqus子程序開發(fā)的相關(guān)問題可以聯(lián)系扣扣1653004885或者關(guān)注cae320公眾號
展開 ABAQUS子程序新書推薦
入門ABAQUS子程序的最佳書籍之一,作者的經(jīng)驗(yàn)豐富。發(fā)的帖子也值得詳讀,走上成功之路!
連接:帖子
ABAQUS子程序直播內(nèi)容征集
近期可能會受邀給大家做場直播,與各位鄰友們交流一下,這是目前定的直播內(nèi)容,在這里也再次征集一下大家的建議,如果鄰友們還有什么ABAQUS子程序相關(guān)的內(nèi)容想要了解的,可以在評論區(qū)留言。