魏騰飛,呂 昊
(上海飛機設(shè)計研究院,上海 201210)
超單元方法[1]是一種求解大型有限元問題十分有效的手段,主要通過把整體結(jié)構(gòu)分化成許多小的子結(jié)構(gòu)來進行分析,具有使問題表達簡單、計算效率高、計算機存儲量低等優(yōu)點。在工程上運用超單元方法,工程師僅需對所關(guān)心的、受影響較大的超單元部分進行計算,從而使分析過程更經(jīng)濟、更高效,避免了總體模型的修改和整個結(jié)構(gòu)的重新計算。
馬洪亮等[2]對超單元應(yīng)用中的關(guān)鍵問題進行了研究,從超單元單元創(chuàng)建、超單元對約束和載荷的要求等方面給出解決措施。賈海濤等[3]以航天相機模型為例,重點研究了超單元在模態(tài)分析和動力學(xué)分析中的適用性。趙會光等[4]采用外部超單元法建立航天器外掛太陽翼結(jié)構(gòu)模型,在保證計算精度的前提下縮減了2/3的分析時間。孫利[5]采用MSC.NASTRAN軟件建立船舶超單元模型,給出了兩種減少計算成本的方法。
本文將大型民用飛機全機內(nèi)力計算作為對象,提出超單元方法使用步驟和計算文件設(shè)置要求,并以某型飛機起落架模型為例,進行了驗證計算。
超單元的概念在物理上體現(xiàn)為子結(jié)構(gòu),在數(shù)學(xué)上體現(xiàn)為邊界矩陣,即從內(nèi)部節(jié)點到外部節(jié)點或邊界節(jié)點進行縮減后得到的載荷、質(zhì)量、阻尼和剛度矩陣。超單元方法以部件模態(tài)綜合法為理論基礎(chǔ),對部件子結(jié)構(gòu)進行單獨建模,選擇若干階固定界面主模態(tài)和約束模態(tài)作為假設(shè)模態(tài),進行模型縮減,然后對縮減后的模型進行求解。
線彈性靜力求解方程為:
KffUf=Pf
(1)
式中:Kff為模型總剛度矩陣;Uf為待求解位移矩陣;Pf為模型外載荷矩陣。
根據(jù)超單元方法的基本理論,將整體模型拆分為兩個集合:超單元內(nèi)部節(jié)點自由度集合A以及超單元與剩余模型相連的外部節(jié)點自由度集合O,則式(1)擴展后變?yōu)椋?/p>
(2)
對式(2)進行處理,可得:
KooUo+KoaUa=Po
(3)
Uo=-Koo-1KoaUa+Koo-1Po
(4)
再將式(4)代入式(2)得:
(5)
整理后得到超單元縮減后的剛度矩陣和載荷向量矩陣:
(6)
(7)
由此可見,引入超單元后,有限元求解僅與剩余結(jié)構(gòu)所包含的節(jié)點自由度有關(guān)。而當(dāng)剩余結(jié)構(gòu)所包含的節(jié)點自由度在整個模型中所占比例很小時,可縮減計算時長。
本文所進行的超單元計算基于MSC.NASTRAN軟件,計算時首先需要生成外部超單元的邊界矩陣,主要包括邊界剛度矩陣和邊界載荷矩陣。
1) 根據(jù)計算需求,分割有限元模型,確定外部超單元部分和剩余模型部分。
2) 在計算文件中,CASE CONTROL部分用extseout卡指出要保存的超單元數(shù)據(jù)及保存形式,書寫格式如圖1所示。
圖1 超單元數(shù)據(jù)書寫格式示意圖
按照圖1格式,將計算生成的數(shù)據(jù)存放到*.asm文件中。其中:
①extbulk指出為后續(xù)組裝運行生成的標(biāo)準(zhǔn)備份文件——*.pch文件;
② extid指出要運行的超單元號;
③ 如果在extseout卡中沒寫asmbulk、extbulk(或dmigpch),則不生成標(biāo)準(zhǔn)備份文件;
④ 如果在extseout卡中選用了“dmigop2=unit”,則必須在File Management Statements (FMS)部分用“ASSIGN output2=outfilename UNIT=YY”卡指出對應(yīng)的外部文件名及其通道號,其中“YY”和“dmigop2=unit”中的unit為同一數(shù)字。
3)用ASET或ASET1卡給出外部超單元與剩余模型連接邊界節(jié)點編號及其自由度。
4)輸入外部超單元部分的模型以及施加在外部超單元模型上的約束、載荷等信息。
5)提交NASTRAN軟件運行計算,生成相應(yīng)的*.f06、*.pch、*.asm等文件。
6)檢查計算結(jié)果是否符合要求。
剩余模型提交計算時,會自動反算并輸出外部超單元內(nèi)部節(jié)點以及單元結(jié)果。主要步驟如下:
1) 根據(jù)上文數(shù)據(jù)存放形式的不同,在主計算文件中所應(yīng)用的語句也有所區(qū)別。
① 如果采用的是matrixdb或者dmigdb形式,則需在FMS部分用“ASSGIN dbnameXX='*.master' dblocate databulk=(extdb) convert(seid=XX) logical=dbnameXX”語句給出要從哪個數(shù)據(jù)庫中讀取什么數(shù)據(jù),其中“XX”指代超單元號,并且在BULK DATA部分加入“include *.asm”和“include *.pch”語句關(guān)聯(lián)引用2.1節(jié)生成的文件;
② 如果采用的是dmigop2形式,則需在FMS部分加入“ASSGIN input2='*.outfilename' unit=YY”語句,指定輸入的數(shù)據(jù)庫,“YY”指代通道號,并且在BULK DATA部分加入“include *.asm”和“include *.pch”語句關(guān)聯(lián)引用2.1節(jié)生成的文件;
③ 如果采用的是dmigpch形式,則需在CASE CONTROL部分用“K2GG=kaXX,p2g=pax”語句調(diào)用存放在數(shù)據(jù)中的邊界剛度矩陣和邊界載荷矩陣,并且在BULK DATA部分最底部按順序加入“include *.asm,include *.pch”語句關(guān)聯(lián)引用2.1節(jié)生成的文件。
2)輸入剩余模型以及施加在剩余模型上的約束、載荷等信息。
3)設(shè)置計算文件參數(shù)和格式,提交NASTRAN軟件進行計算,輸出剩余模型和反算出的外部超單元的節(jié)點位移、單元內(nèi)力、單元應(yīng)變等計算結(jié)果。
以某型飛機全機模型作為研究對象,將除左側(cè)主起落架的機體模型設(shè)計成外部超單元,左側(cè)主起落架模型作為剩余模型進行驗證計算,模型示意圖如圖2所示。
圖2 某型飛機左側(cè)主起落架有限元模型示意圖
按照前文所描述的方法設(shè)置計算文件,生成pch文件后將左側(cè)主起落架模型作為剩余模型文件并提交計算,得到主起落架模型的節(jié)點位移、單元內(nèi)力結(jié)果,將其與全模型方法計算的結(jié)果進行對比。因數(shù)據(jù)量過大,故本文選擇若干個具有代表性的節(jié)點、單元計算結(jié)果。節(jié)點、單元號與模型對應(yīng)圖如圖3所示,節(jié)點、單元計算結(jié)果對比分別見表1、表2。
圖3 主起落架模型節(jié)點、單元號對應(yīng)圖
從表1、表2可以看出,兩種方法得到的節(jié)點位移結(jié)果基本一致,單元內(nèi)力結(jié)果大部分一致,個別結(jié)果雖然誤差百分比很大,但由于計算結(jié)果的量級很小,誤差的影響可以忽略。
表2 兩種分析方法下起落架單元內(nèi)力結(jié)果對比
表1 兩種分析方法下起落架節(jié)點位移結(jié)果對比
本文以超單元方法的基本理論為基礎(chǔ),提出了超單元方法的使用步驟以及計算文件設(shè)置要求,并在某型民用飛機全機內(nèi)力計算中進行了驗證。結(jié)果表明,超單元方法在保證計算準(zhǔn)確性的前提下,可大幅提高計算效率,在全機模型內(nèi)力計算過程中具備適用性和可行性。