喬一樂 康曉亮 楊 建
(1.華北水利水電大學(xué),河南 鄭州 450011; 2.石家莊市滹沱河建設(shè)管理處,河北 石家莊 050800)
ANSYS二次開發(fā)技術(shù)及在預(yù)應(yīng)力混凝土中的應(yīng)用
喬一樂1康曉亮2楊 建1
(1.華北水利水電大學(xué),河南 鄭州 450011; 2.石家莊市滹沱河建設(shè)管理處,河北 石家莊 050800)
對ANSYS的二次開發(fā)技術(shù)作了簡要介紹,采用ANSYS二次開發(fā)的循環(huán)迭代法對預(yù)應(yīng)力混凝土結(jié)構(gòu)進(jìn)行精確模擬,正確的反映了預(yù)應(yīng)力的施加和損失問題,并通過實(shí)例分析驗(yàn)證了該方法的有效性。
ANSYS軟件,二次開發(fā)技術(shù),預(yù)應(yīng)力,循環(huán)迭代
ANSYS作為一款大型CAE有限元分析軟件,能夠進(jìn)行應(yīng)力場、溫度場、流場和電磁場的分析,具有完備的前、后處理功能,強(qiáng)大的求解器以及針對專業(yè)分析的二次開發(fā)技術(shù),是解決龐大、復(fù)雜工程的一個十分有效的工具。經(jīng)過幾十年的發(fā)展,ANSYS在有限元軟件領(lǐng)域占據(jù)了舉足輕重的地位,被世界各工業(yè)領(lǐng)域廣泛接受,成為全球眾多專業(yè)技術(shù)協(xié)會認(rèn)可的標(biāo)準(zhǔn)分析軟件。它不僅集成了多個模塊而且還應(yīng)用到眾多領(lǐng)域,為這些領(lǐng)域的技術(shù)交流提供了強(qiáng)有力的平臺。基于此,用戶可以很容易地實(shí)現(xiàn)對土木工程熱點(diǎn)問題的處理,例如:預(yù)應(yīng)力施加與計(jì)算、徐變、施工過程模擬、預(yù)應(yīng)力筋配置計(jì)算、混凝土開裂和壓碎計(jì)算等。然而,傳統(tǒng)的ANSYS模擬施加混凝土結(jié)構(gòu)預(yù)應(yīng)力的方法不能合理的考慮鋼筋的剛度貢獻(xiàn)和承載作用,又不能正確的反映鋼筋的實(shí)際應(yīng)力應(yīng)變狀態(tài)以及預(yù)應(yīng)力損失等問題。
基于以上問題,本文提出應(yīng)用ANSYS提供的二次開發(fā)技術(shù)對預(yù)應(yīng)力混凝土結(jié)構(gòu)進(jìn)行精確模擬,并將其成功的應(yīng)用到確定預(yù)應(yīng)力簡支梁設(shè)計(jì)應(yīng)力中,為今后ANSYS在預(yù)應(yīng)力混凝土工程中的廣泛應(yīng)用奠定良好的基礎(chǔ),亦為開發(fā)和研制大型預(yù)應(yīng)力混凝土結(jié)構(gòu)提供了一種新的方法。
1)用戶界面設(shè)計(jì)語言(UIDL)。
UIDL(User Interface Design Language)是ANSYS為用戶進(jìn)行程序界面設(shè)計(jì)而提供的一種專用語言。它可以客戶化 ANSYS圖形交互界面的許多部件,包括:對話框、菜單項(xiàng)、在線幫助以及在 ANSYS環(huán)境中集成自己開發(fā)的程序。用UIDL編寫的程序文件稱為控制文件,必須以“*.GRN”為擴(kuò)展名,它可在ANSYS原有的菜單中添加自己設(shè)定的菜單項(xiàng)和控制程序。UIDL控制文件由一個控制文件頭和幾個構(gòu)造塊構(gòu)成,一個構(gòu)造塊對應(yīng)著GUI的一個元件,每個構(gòu)造塊是一系列的GUI命令,構(gòu)造塊分為菜單塊和功能塊兩個類型[1]。
2)參數(shù)化設(shè)計(jì)語言(APDL)。
APDL(Parametric Design Language)是一種用來自動完成某些功能或建模的腳本語言,提供了一般程序語言的功能。它包含三個方面的內(nèi)容:工具條、參量和宏命令,由類似于FORTRAN的語言部分和1 000多條ANSYS命令組成,有順序、選擇、循環(huán)及宏等結(jié)構(gòu)。利用APDL將ANSYS命令組織起來,編寫出參數(shù)化的用戶程序,即建立有限元模型、加載和求解、結(jié)果后處理和結(jié)果查看,全部應(yīng)用參數(shù)化語言完成,從而實(shí)現(xiàn)有限元全過程分析的參數(shù)化。使用這些特性,可以實(shí)現(xiàn)快速操作,數(shù)據(jù)快速傳遞、更新等功能。
3)用戶可編程特性(UPFs)。
UPFs(User Programmable Features)是ANSYS作為開放結(jié)構(gòu)、允許用戶使用自己的FORTRAN程序的功能。用戶可以根據(jù)需要利用UPFs重新編譯連接生成用戶定制版本的ANSYS軟件,例如創(chuàng)建新單元、定義新的材料屬性、定義用戶失效準(zhǔn)則等,用戶還可以編寫自己的優(yōu)化設(shè)計(jì)算法,甚至可以將整個ANSYS程序作為子程序調(diào)用。UPFs是用戶在ANSYS提供的FORTRAN源代碼的基礎(chǔ)上,修改其用戶可編程子程序和函數(shù)(稱為用戶子程序),從源代碼層次上對ANSYS進(jìn)行二次開發(fā)的工具。用戶需要在相應(yīng)的FORTRAN語言編譯器的支持下,將編譯修改后的源代碼與ANSYS庫相連形成用戶版本的ANSYS可執(zhí)行文件,另外還可以創(chuàng)建自己的外部命令。
2.1 預(yù)應(yīng)力鋼筋建模方法
1)等效荷載法。
等效荷載法就是用一組“等效”荷載來替代預(yù)應(yīng)力筋的作用施加到結(jié)構(gòu)上。其優(yōu)點(diǎn)是建模簡單,不需要考慮預(yù)應(yīng)力鋼筋的具體位置,在用梁單元和殼單元進(jìn)行橋梁總體內(nèi)力分析的時候,能研究整體的預(yù)應(yīng)力效應(yīng)。其缺點(diǎn)是沒有考慮力筋對混凝土的作用分布和方向、對張拉過程無法模擬、難以求得結(jié)構(gòu)細(xì)部受力反應(yīng)、在外荷載作用下的共同作用難以考慮、不宜用其進(jìn)行三維實(shí)體單元的詳細(xì)應(yīng)力分析。
2)實(shí)體力筋法。
實(shí)體力筋法是將預(yù)應(yīng)力鋼筋和混凝土用不同的單元類型各自建立模型,再建立二者之間的位移關(guān)系用不同的單元一起考慮。多數(shù)情況下,預(yù)應(yīng)力鋼筋用Link系列單元模擬,混凝土則用 Solid 系列單元進(jìn)行模擬。根據(jù)力學(xué)模型上的求解方法,可分為節(jié)點(diǎn)耦合法、約束方程法和實(shí)體切分法三種。
本文的預(yù)應(yīng)力鋼筋建模采用實(shí)體切分法,其基本步驟如下:a.建立混凝土實(shí)體幾何模型;b.分割體定義力筋線;c.單元劃分,施加預(yù)應(yīng)力、荷載、邊界條件;d.求解。
2.2 預(yù)應(yīng)力鋼筋施加方法[2]
1)降溫法。
該法是通過設(shè)置各向異性的溫度應(yīng)變系數(shù),經(jīng)過應(yīng)力—應(yīng)變關(guān)系推算,在給定的溫差下就可以獲得與預(yù)應(yīng)力產(chǎn)生的應(yīng)變等效的效果。其實(shí)質(zhì)為等效變形的方法,即利用鋼筋的溫度特性為力筋單元設(shè)定一個溫降值,使得力筋單元產(chǎn)生一個收縮變形,達(dá)到所需要的預(yù)加應(yīng)力。
鋼筋的溫降值公式為:
ΔT=P/EAa
(1)
式中:ΔT——力筋的溫降值;P——鋼筋拉力設(shè)計(jì)值;E——力筋的彈性模量;A——力筋的截面面積;a——力筋的線性膨脹系數(shù)。
2)初始應(yīng)變法。
通過位移約束進(jìn)行加載,使結(jié)構(gòu)中產(chǎn)生的應(yīng)變與預(yù)應(yīng)力加載產(chǎn)生的應(yīng)變等效。給力筋單元設(shè)定一個初始拉力,放松后使力筋單元產(chǎn)生收縮變形生成一個預(yù)拉作用。
初始應(yīng)變的公式為:
ε0=P/EA
(2)
式中:ε0——力筋的初應(yīng)變;P——鋼筋拉力設(shè)計(jì)值;E——力筋的彈性模量;A——力筋的截面面積。
該方法可以模擬預(yù)應(yīng)力鋼筋的具體位置,并且能夠得到預(yù)應(yīng)力鋼筋在荷載作用下的應(yīng)力分布。本文擬采用初始應(yīng)變法來施加預(yù)應(yīng)力,通過ANSYS二次開發(fā)的循環(huán)迭代法來求解最終的設(shè)計(jì)應(yīng)力值。
3.1 混凝土結(jié)構(gòu)預(yù)應(yīng)力設(shè)計(jì)值的確定方法
目前國內(nèi)外ANSYS模擬預(yù)應(yīng)力的方法大致有:等效荷載法、降溫法、應(yīng)變法等等。本文采用通過施加初始應(yīng)變進(jìn)而通過應(yīng)力迭代求解最終應(yīng)力值的循環(huán)迭代法。該方法就是在不斷調(diào)初始應(yīng)變的同時,反復(fù)修正鋼筋應(yīng)力求解值,使其最終滿足設(shè)計(jì)要求。這時得到的鋼筋應(yīng)力值即為預(yù)應(yīng)力設(shè)計(jì)值,該方法能包含各種預(yù)應(yīng)力的損失同時又考慮了鋼筋與混凝土的共同作用。詳細(xì)步驟如下:
1)輸入預(yù)應(yīng)力混凝土結(jié)構(gòu)和鋼筋的基本參數(shù);
2)假定設(shè)計(jì)提供的預(yù)應(yīng)力鋼筋應(yīng)變值為初始應(yīng)變{ε0}(ε0=P/AE),并將此值輸入Link8單元實(shí)常數(shù)中,初始拉力為{P0}(P0=P);
3)采用ANSYS求解器進(jìn)行應(yīng)力的平衡迭代,求出鋼筋應(yīng)力值{σn};
4)檢查‖{Aσn}-{P0}‖/{P0}是否小于設(shè)計(jì)值,如果小于設(shè)計(jì)值則打印計(jì)算結(jié)果,否則用{εn+1}={εn}{P0}/{Aσn}代替{εn},重復(fù)步驟3),4),直至條件‖{Aσn}-{P0}‖/{P0}滿足要求為止;
5)打印滿足要求的{σn}值。
3.2 混凝土結(jié)構(gòu)預(yù)應(yīng)力設(shè)計(jì)值的確定過程
用戶可以結(jié)合本專業(yè)的學(xué)科特點(diǎn)進(jìn)行ANSYS的二次開發(fā)應(yīng)用,創(chuàng)造出既簡便又實(shí)用的開發(fā)程序,進(jìn)而彌補(bǔ)ANSYS在特定學(xué)科領(lǐng)域的不足。一方面顯示了ANSYS作為大型CAE軟件的廣泛應(yīng)用性,另一方面又提高了ANSYS應(yīng)用于實(shí)際的高效性。結(jié)合本文混凝土預(yù)應(yīng)力施加特點(diǎn),即預(yù)應(yīng)力大小如何確定,也就是如何模擬張拉的一個過程。我們最終要的是預(yù)應(yīng)力存留值,需要反復(fù)調(diào)整初始值來模擬預(yù)應(yīng)力損失情況。
故本文基于ANSYS二次開發(fā)的APDL參數(shù)化語言設(shè)計(jì),通過對預(yù)應(yīng)力的循環(huán)迭代編制出可以求得預(yù)應(yīng)力存留值的二次開發(fā)程序,以便高效解決預(yù)應(yīng)力施加問題。預(yù)應(yīng)力以初應(yīng)變的方式加到鋼筋上,詳細(xì)實(shí)現(xiàn)步驟如下:
1)建立有限元分析模型,定義荷載加上邊界約束條件。
2)定義參數(shù)數(shù)組存儲按照循環(huán)迭代法求解得到的應(yīng)力和應(yīng)變值:
*GET,EMAX,ELEM,0,COUNT !單元總數(shù)
*DIM,ISTRIN,ARRAY,EMAX,1 !鋼筋應(yīng)變數(shù)組
*DIM,FXX,ARRAY, EMAX,1 !鋼筋應(yīng)力數(shù)組
3)設(shè)置ANSYS分析類型,求解單元內(nèi)力:
ANTYPE,STATIC !進(jìn)行靜力分析
4)應(yīng)力迭代。
a.用*do-loop命令循環(huán)求解,每求解一次,利用ANSYS命令(*GET)從計(jì)算結(jié)果中提取鋼筋應(yīng)力,檢查鋼筋拉力與設(shè)計(jì)提供的拉力誤差是否小于允許值。
b.如果是小于允許值,則停止計(jì)算,否則,將二者比值作為應(yīng)變擴(kuò)大系數(shù),令{εn+1}={εn}{P0}/{Aσn},采用ANSYS命令(RMODIF)修改鋼筋單元的實(shí)常數(shù),重復(fù)步驟3),4)進(jìn)行計(jì)算,直至計(jì)算應(yīng)力滿足要求。
依照上面介紹的方法,結(jié)合一預(yù)應(yīng)力簡支梁實(shí)例, 應(yīng)用APDL語言編制的循環(huán)迭代程序成功實(shí)現(xiàn)了預(yù)應(yīng)力混凝土結(jié)構(gòu)的應(yīng)力模擬。預(yù)應(yīng)力混凝土簡支梁如圖1所示,預(yù)應(yīng)力筋為底部受拉縱筋。
已知預(yù)應(yīng)力筋的面積As=140 mm2,其張拉力為P=200 kN,彈性模量Es=2.0×105MPa?;炷翗?biāo)號為C50,混凝土彈性模量為Ec=4.0×104MPa,質(zhì)量密度為2 300 kg/m3。分析時混凝土采用Solid95單元模擬,力筋采用Link8單元模擬。
ANSYS計(jì)算的鋼筋應(yīng)力如圖2所示。
由以上計(jì)算結(jié)果可知ANSYS經(jīng)過兩次循環(huán)迭代后,計(jì)算鋼筋應(yīng)力值ε=1.43×106MPa與設(shè)計(jì)值ε1=1.428 5×106MPa在誤差允許的范圍之內(nèi),所以用該種方法來模擬施加預(yù)應(yīng)力是完全可以的。
本文在介紹ANSYS各項(xiàng)二次開發(fā)功能的同時重點(diǎn)介紹了APDL參數(shù)化語言在預(yù)應(yīng)力混凝土結(jié)構(gòu)設(shè)計(jì)中的具體應(yīng)用,詳細(xì)分析了精確模擬施加預(yù)應(yīng)力的具體步驟和方法,充分體現(xiàn)了利用ANSYS自身二次開發(fā)工具解決工程實(shí)際問題的必要性,為有限元軟件在工程領(lǐng)域的專業(yè)開發(fā)分析起了很好的導(dǎo)向作用,同時為解決復(fù)雜的混凝土結(jié)構(gòu)預(yù)應(yīng)力問題奠定了良好 的基礎(chǔ)。
[1] 段志東,張克華.ANSYS圖形用戶界面二次開發(fā)[J].蘭州鐵道學(xué)院學(xué)報,2002,21(1):44-46.
[2] 付永強(qiáng),張小水,胡 成.預(yù)應(yīng)力混凝土結(jié)構(gòu)施加預(yù)應(yīng)力的Ansys模擬[J].工程與建設(shè),2008,22(6):784-786.
ANSYS secondary development technology and application in the prestressed concrete
QIAO Yi-le1KANG Xiao-liang2YANG Jian1
(1.NorthChinaUniversityofWaterConservancyandHydropower,Zhengzhou450011,China;2.ShijiazhuangHutuoRiverConstructionManagementOffice,Shijiazhuang050800,China)
The paper gives the brief introduction of the ANSYS secondary development technology, adopts the lip iteration of ANSYS secondary development technology to have the accurate simulation of the prestressed concrete structure, reflects the prestress construction and losses, and proves the effectiveness of the method by the experimental analysis.
ANSYS software, secondary development technology, prestress, loop iteration
1009-6825(2014)03-0050-03
2013-11-06
喬一樂(1987- ),男,在讀碩士; 康曉亮(1988- ),男,助理工程師; 楊 建(1989- ),男,在讀碩士
TU378
A