Ansys在橋梁優(yōu)化設(shè)計(jì)中應(yīng)用
2013-06-18 by:廣州有限元分析、培訓(xùn)中心-1CAE.COM 來源:仿真在線
ANSYS是世界上著名的大型有限元分析軟件。但作為通用軟件,我們直接接觸到的只是一些基礎(chǔ)的、通用的功能,不免在某些專業(yè)領(lǐng)域中有所欠缺。例如,該軟件對(duì)于橋梁中的一些問題還不能直接求解。因此,需要我們運(yùn)用這些基本功能進(jìn)行一次開發(fā),使ANSYS的潛能充分發(fā)揮出來。
1 ANSYS的二次開發(fā)平臺(tái)
ANSYS向用戶提供了一個(gè)強(qiáng)大的二次開發(fā)平臺(tái)。通過這個(gè)平臺(tái),用戶就可以ANSYS原有強(qiáng)大的計(jì)算功能為基礎(chǔ),延伸出各行業(yè)工程設(shè)計(jì)中必需的或常用的功能,開發(fā)出適用于各個(gè)相關(guān)行業(yè)的ANSYS配套計(jì)算軟件。
ANSYS提供參數(shù)設(shè)計(jì)語言APDL(ANSYS Parametric Design Language是一種解釋性語言,可以通過參數(shù)來建立模型,從而可以自動(dòng)完成一些通用性強(qiáng)的任務(wù),也可以根據(jù)參數(shù)建立模型。此外,APDL還包括其他許多特性,如重復(fù)某條命令、宏、條件語句、Do循環(huán)以及標(biāo)量、矢量和矩陣運(yùn)算,文件的讀寫,定制用戶化圖形交互界面等。可將程序操作中常遇到的一些命令的命令流編制成宏文件。宏文件既可以在ANSYS命令行執(zhí)行,也可以將其與屏幕按鈕關(guān)聯(lián),從而使得一系列的操作可以一步快速完成。宏中除了可以填寫ANSYS命令外,還可以調(diào)用GUI函數(shù),給變量賦值以及調(diào)用另一個(gè)宏。因此,宏的靈活運(yùn)用會(huì)給用戶在處理復(fù)雜問題時(shí)提供極大的方便。
ANSYS的二次開發(fā)平臺(tái)還包括ANSYS的用戶界面設(shè)計(jì)語言(UIDL)和ANSYS的用戶可編程特性(UPFS)。山于篇幅所限,木文暫不展開討論。
2 參數(shù)化設(shè)計(jì)的概念
工程設(shè)計(jì)的參數(shù)化設(shè)計(jì)與設(shè)計(jì)優(yōu)化是密不可分的,參數(shù)化建模的最終目的就是為了設(shè)計(jì)優(yōu)化得以進(jìn)行。設(shè)計(jì)優(yōu)化是一種尋求最優(yōu)方案的設(shè)計(jì)技術(shù)。最優(yōu)的方案是最有效率的方案,可以滿足所有設(shè)計(jì)的要求,而且所需要的支出(如重量、而積、體積、應(yīng)力、內(nèi)力、位移或費(fèi)用等)最小。
ANSYS優(yōu)化設(shè)計(jì)的基本概念
1)設(shè)計(jì)變量v(或設(shè)計(jì)參數(shù))ANSYS的設(shè)計(jì)變量為自變量(如結(jié)構(gòu)的尺寸、初始應(yīng)變等)。通過設(shè)計(jì)變量的數(shù)字變化來實(shí)現(xiàn)結(jié)果的優(yōu)化,設(shè)計(jì)變量的上下限決定了設(shè)計(jì)變量的變化范圍。每次優(yōu)化設(shè)計(jì)可定義多個(gè)設(shè)計(jì)變量,但建議不要過多,以免導(dǎo)致程序運(yùn)算困難而難以收斂。ANSYS最多可以定義60個(gè)設(shè)計(jì)變量。
2)狀態(tài)變量W(或狀態(tài)參數(shù))。狀態(tài)變量是設(shè)計(jì)變量的函數(shù)。通過定義狀態(tài)變量可以實(shí)現(xiàn)狀態(tài)變量對(duì)設(shè)計(jì)的約束。程序運(yùn)行結(jié)果得到的內(nèi)力、應(yīng)力、位移等都可以采擷下來賦子狀態(tài)變量,作為整個(gè)優(yōu)化設(shè)計(jì)的條件(或約束)。每次優(yōu)化設(shè)計(jì)可定義多個(gè)狀態(tài)變量,但也建議不要定義過多。
3)目標(biāo)變量f(V)或(目標(biāo)參數(shù))目標(biāo)變量也是設(shè)計(jì)變量的函數(shù),是設(shè)計(jì)者希望其最終值盡量小的變量。程序運(yùn)行結(jié)果得到的內(nèi)力、應(yīng)力、位移、變形能等都可以作為設(shè)計(jì)的優(yōu)化目標(biāo)。目標(biāo)變量只能定義一個(gè)。
以上3個(gè)變量是優(yōu)化設(shè)計(jì)必須同時(shí)具備的,可用一種典型的數(shù)學(xué)表達(dá)式為:
AND(min f(V))
3 橋梁中常見的設(shè)計(jì)優(yōu)化問題
通常橋梁設(shè)計(jì)首先要進(jìn)行方案比選和方案優(yōu)化。在方案比選和優(yōu)化中常常涉及到眾多的可變因素,如:拱橋的單元截面尺寸、吊桿的初始應(yīng)變、跨徑、矢跨比、拱肋的傾角、材料的選用;斜拉橋的單元截面尺寸、拉索的初始應(yīng)變、跨徑、橋塔高度、橋塔的傾角、輔助墩的數(shù)量和布置;懸索橋單元截面尺寸、主纜初始應(yīng)變、主纜的矢跨比、跨徑。以上可變因素都可以在參數(shù)化建模時(shí)定義為設(shè)計(jì)變量(必須先賦一個(gè)初始值)。對(duì)于一些工程中己經(jīng)確定或難以更改的因素(如跨徑)以及根據(jù)設(shè)計(jì)者的經(jīng)驗(yàn)容易確定的因素(如矢跨比)也可不被定義為設(shè)計(jì)變量,這樣做是為了減少設(shè)計(jì)變量的個(gè)數(shù),提高程序運(yùn)行效率。
在第一次運(yùn)行結(jié)束后,進(jìn)入后處理可以得到結(jié)構(gòu)的計(jì)算結(jié)果,如:內(nèi)力、應(yīng)力、索的軸力、位移、支反力、變形能。這些結(jié)果值,都是設(shè)計(jì)變量的函數(shù),設(shè)計(jì)者可以根據(jù)自己的需要將其賦給狀態(tài)變量或者目標(biāo)變量。例如:
*GET,moment316,ELEM,316,ETAB,SMIS5(將316號(hào)單元的I端彎矩值賦給變量moment316)
*GET,disp745,NODE,745,U,Y(將節(jié)點(diǎn)745的Y句位移賦給變量disp745)
4 工程實(shí)例
某蝶形拱橋(見圖1)跨徑L=120m,鋼拱肋,與堅(jiān)直面夾角為θ,吊桿在橋面上的吊點(diǎn)與結(jié)構(gòu)邊緣的距離為a,矢跨比為B /L,拱肋在橋而高度拉有縱向水平鋼束。由于拱肋傾斜(自重產(chǎn)生拱肋平面外彎矩)、縱向水平鋼束的集中力以及吊桿對(duì)拱肋的作用,使得A點(diǎn)的應(yīng)力情況極為復(fù)雜,成為控制方案成立的主要因素。
此時(shí)橋梁的跨徑已經(jīng)確定,而且經(jīng)過對(duì)拱肋截面和縱梁自重(其操作起來相對(duì)比較方便)的反復(fù)調(diào)整之后仍不能得到滿意的結(jié)果。因此必須嘗試調(diào)整θ, a, B/L等參量。從有限元程序建模的常識(shí)可知:建一次空間模型己經(jīng)要花費(fèi)相當(dāng)?shù)臅r(shí)間和精力,而且調(diào)試需多次反復(fù)地在GUI(人機(jī)交互模式)下進(jìn)行刪除單元、重建模型的編輯過程,其工作量之大,往往是讓人無法忍受的。
ANSYS的APDL參數(shù)化設(shè)計(jì)語言可以讓這個(gè)艱難的工作輕松完成。有限元建模及求解的主體過程存為宏文件BUILD.MAC。宏文件在建立有限元節(jié)點(diǎn)時(shí),將節(jié)點(diǎn)坐標(biāo)定義為θ、B、a的函數(shù):
N,1, fix(θ,B,a), fiy(θ,B,a), fiz(θ,B,a),......!定義i號(hào)節(jié)點(diǎn)
N, i, fix(θ,B,a), fiv(θ,B,a), fim(θ,B,a),......!定義i號(hào)節(jié)點(diǎn)
通過建模及求解主體過程的命令流(宏文件BUILD.MAC),就可以開始求解過程。根據(jù)優(yōu)化過程中設(shè)計(jì)人手工參與程度可分為手工方法、半手工方法和程序優(yōu)化法。
1)手工優(yōu)化法。這種方法是設(shè)計(jì)人不斷變化設(shè)計(jì)參量(θ,B和a)的值,然后再運(yùn)行宏文件BUILD.MAC程序根據(jù)變化后的設(shè)計(jì)參數(shù)自動(dòng)建模并計(jì)算,直到計(jì)算結(jié)果滿足設(shè)計(jì)人的要求為止。手工賦值可以通過在宏文件里而插入設(shè)計(jì)參量的賦值語句,也可以運(yùn)用ANSYS二次開發(fā)功能,在每次運(yùn)行宏文件時(shí)產(chǎn)生賦值對(duì)話框。手工優(yōu)化法可適用于設(shè)計(jì)變量較少以及變量的取值范圍較窄的情況,對(duì)于設(shè)計(jì)參數(shù)較多而且其取值范圍較寬時(shí)這種優(yōu)化方法則不可取。手工優(yōu)化法使設(shè)計(jì)人對(duì)設(shè)計(jì)參數(shù)最佳取值范圍有了初步的了解,可作為程序優(yōu)化法的參考,同時(shí)程序優(yōu)化結(jié)束之后,可以用手工優(yōu)化來驗(yàn)證。
2)半手工優(yōu)化法。這種方法是利用APDL語言的循環(huán)語句反復(fù)執(zhí)行宏文件BUILD.MAC,循環(huán)的步長則由設(shè)計(jì)人根據(jù)優(yōu)化精度的要求酌定。在每次循環(huán)結(jié)束時(shí),自動(dòng)讀取計(jì)算結(jié)果(如應(yīng)力值),并將其賦值給一個(gè)變量,下一次循環(huán)得到的值與此變量比較,如較之小,則覆蓋之并進(jìn)入下一次循環(huán);如較之大,則直接進(jìn)入下一次循環(huán)。此方法實(shí)質(zhì)與手工優(yōu)化法一樣,不同的是每一次設(shè)計(jì)參數(shù)賦值是通過循環(huán)語句自動(dòng)實(shí)現(xiàn)的。
3)程序優(yōu)化法。ANSYS軟件包具有強(qiáng)大的設(shè)計(jì)優(yōu)化的功能,具體方法包括單步運(yùn)行法、隨即搜索法、等步長搜索法、乘子計(jì)算法以及最優(yōu)梯度等功能。這種方法的自動(dòng)化程度最高,得到的結(jié)果也較為精確。但要注意設(shè)計(jì)變量和狀態(tài)變量不要定義得太多,以免程序優(yōu)化的迭代過程無法收斂,而且以上幾種方法往往要結(jié)合使用以得到最優(yōu)結(jié)果。
經(jīng)過上述這3種優(yōu)化方法,得到一致的結(jié)果:θ=32°, B=0.25 m, a= 1.20 m,最終得到A點(diǎn)的主拉應(yīng)力σ1=50 MPa,σ3=-175 MPa,滿足要求。
5 如何編制APDL命令流
從以上的步驟可以看出,幾乎所有的操作(建模、運(yùn)行、后處理、優(yōu)化、命令流程控制)都是用命令流來進(jìn)行的。這是無法避免的,因?yàn)榈采婕暗蕉伍_發(fā)運(yùn)用的問題,都必須語言編程。對(duì)于任何操作命令對(duì)應(yīng)的APDL語句都可以查找下拉菜單的“l(fā)og file”直接得到,而且不需要編譯,調(diào)試起來極為方便。筆者編寫的轉(zhuǎn)換程序“CONVERT.MAC"其用途是當(dāng)初學(xué)者GUI建模完成之后執(zhí)行此程序,就可以得到建模過程的完整整齊的命令流(此部分語句占整個(gè)操作過程語句行數(shù)的絕大部分)。然后就可以局部修改這個(gè)命令流(如將其中的一些數(shù)據(jù)用變量表示,再加上少量的運(yùn)行執(zhí)行語句和優(yōu)化語句),實(shí)現(xiàn)參數(shù)化建模和優(yōu)化設(shè)計(jì)。
6 結(jié)語
本文所述的實(shí)例僅是ANSYS二次開發(fā)和參數(shù)化設(shè)計(jì)的一點(diǎn)粗淺的應(yīng)用,但通過以上的介紹可以看出,具有強(qiáng)大功能的ANSYS軟件在經(jīng)過二次開發(fā)之后,其優(yōu)越性又被史大程度地提高了,其應(yīng)用前景是令人驚嘆的。
相關(guān)標(biāo)簽搜索:Ansys在橋梁優(yōu)化設(shè)計(jì)中應(yīng)用 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓(xùn) Abaqus培訓(xùn) Autoform培訓(xùn) 有限元培訓(xùn) Solidworks培訓(xùn) UG模具培訓(xùn) PROE培訓(xùn) 運(yùn)動(dòng)仿真