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