顧敏芳 汪學(xué)鋒
1上海交通大學(xué)船舶海洋與建筑工程學(xué)院,上海 200030
2上海交通大學(xué) 船舶海洋與建筑工程學(xué)院、海洋工程國家重點(diǎn)實(shí)驗(yàn)室,上海 200030
Patran集成Fluent處理中模型的轉(zhuǎn)換
顧敏芳1汪學(xué)鋒2
1上海交通大學(xué)船舶海洋與建筑工程學(xué)院,上海 200030
2上海交通大學(xué) 船舶海洋與建筑工程學(xué)院、海洋工程國家重點(diǎn)實(shí)驗(yàn)室,上海 200030
Patran集成Fluent處理在艦船力學(xué)計(jì)算、流固耦合分析等方面有廣泛的應(yīng)用,而模型轉(zhuǎn)換則是該集成處理的關(guān)鍵問題。針對Patran和Fluent中模型的特點(diǎn),對轉(zhuǎn)換過程做了詳細(xì)的介紹,并給出應(yīng)用的算例。工程驗(yàn)算表明所論述的方法能夠迅速有效地從Patran中提取模型信息,并轉(zhuǎn)換成Fluent處理中所需要的格式。最后闡述該方法的優(yōu)點(diǎn)與不足,并展望該方法在CAD/CAE軟件集成中的進(jìn)一步應(yīng)用。
有限元模型;轉(zhuǎn)換;PCL;MSC.Patran
MSC.Patran是一個集成的并行框架式有限元前后處理及分析系統(tǒng),是工業(yè)領(lǐng)域最著名的有限元分析軟件之一,也是艦船結(jié)構(gòu)分析最常用的軟件工具。其開放式、多功能的體系結(jié)構(gòu)可將工程設(shè)計(jì)、工程分析、結(jié)果評估、用戶化設(shè)計(jì)和交互圖形界面集于一身,構(gòu)成一個完整的CAE集成環(huán)境。它的用戶化技術(shù)允許用戶將MSC.Patran作為自己的前后處理器,并利用其強(qiáng)大的PCL語言和編程函數(shù)庫,將自行開發(fā)的應(yīng)用程序和功能及針對特殊要求開發(fā)的內(nèi)容直接嵌入MSC.Patran的框架系統(tǒng),或單獨(dú)使用或與其他系統(tǒng)聯(lián)合使用,提高其在市場的競爭力[1,2]。
Fluent是目前功能最全面、適用性最廣、國內(nèi)應(yīng)用最廣泛的CFD軟件之一,能完成多種參考系下流場模擬,定常與非定常流動分析、不可壓流和可壓流計(jì)算、層流和湍流模擬、傳熱和熱混合分析等[3]。Fluent在流場計(jì)算領(lǐng)域的強(qiáng)大,得到了業(yè)界的充分肯定,同樣也是艦船流體動力性能分析中最廣泛應(yīng)用的分析軟件。
通常情況下,艦船等設(shè)備進(jìn)行結(jié)構(gòu)和流體分析的時候,要在Patran和Fluent中分別建模,這不但存在重復(fù)建模的效率問題,而且因?yàn)閮蓚€系統(tǒng)之間在模型定義、實(shí)現(xiàn)手段和存取方法上存在差異,使得信息交換存在障礙,資源不能有效共享[4]。如果能開發(fā)Patran與Fluent的接口,將有明顯的優(yōu)勢。它能夠?qū)⒘鲌龊徒Y(jié)構(gòu)分析的前后處理器統(tǒng)一在Patran一個平臺下,并且共用一個模型,避免了重復(fù)建模以及模型信息的丟失和不一致;還能用數(shù)據(jù)庫的形式統(tǒng)一管理模型及有關(guān)數(shù)據(jù),提高了工作效率。而模型轉(zhuǎn)換作為Patran集成Fluent處理中的關(guān)鍵技術(shù),它的效率高低,無疑很大程度上決定了整個接口程序的好壞。
有限元分析是工程計(jì)算領(lǐng)域的一種主要的數(shù)值計(jì)算方法,其基本思想就是將連續(xù)區(qū)域上的物理力學(xué)關(guān)系近似地轉(zhuǎn)化為離散規(guī)則區(qū)域上的物理力學(xué)方程[5]。在有限元分析中,使用的是幾何模型經(jīng)過離散化以后得到的抽象化的有限元模型,所需要的無一例外都是有限元網(wǎng)格的數(shù)據(jù) (如節(jié)點(diǎn)的坐標(biāo)和單元的節(jié)點(diǎn)構(gòu)成),所有的邊界條件(如載荷和位移約束),最終也都必須反映到節(jié)點(diǎn)上來。利用有限元模型轉(zhuǎn)換的方法,可以使模型轉(zhuǎn)換前后不存在信息的丟失,能達(dá)到100%的模型拷貝,做到真正意義上的“零失真”轉(zhuǎn)換[6]。
本文在已有Patran繼承Fluent工作的基礎(chǔ)上[7],專門詳細(xì)闡述了Patran到Fluent接口轉(zhuǎn)換中模型的轉(zhuǎn)化方法。該方法采用在效率和精度方面都有較大的提升的有限元模型轉(zhuǎn)換方法,通過改善拓?fù)溆成浜驮乇平姆绞?,找到了適合于三維模型轉(zhuǎn)換的有效途徑。
Patran[8]由 Node 和 Element兩種結(jié)構(gòu)來表示有限元模型。 Node包含NID(Node ID)和xyz(Position xyz)兩個要素;而 Element里包含 EID(Element ID)、GID (Element Group ID)、PID(Physical Property ID)、MID(Material Property ID)、TID(Element Type ID)、arElNode (Element與 Node 的關(guān)系表),以及 NSI(Element Node Start Index in array arElNode)等多個要素。
Patran擁有許多種單元結(jié)構(gòu)形式,而與Fluent相對應(yīng),可以歸結(jié)為以下6種基本單元格式:Tri3、Quad4、Tet4、Wedge6、Paramid5 以及 Hex8,如圖1所示。
Fluent[9]的有限元結(jié)構(gòu)模式和 Patran 有很大的差別,它由Node、Face和Cell三種要素來表示。
1)Nodes表示節(jié)點(diǎn),與Patran的Node一致,但表達(dá)形式不同。
2)Cells表示網(wǎng)格,與Patran的Element對應(yīng),但只申明了網(wǎng)格的數(shù)量、序號、屬性與單元結(jié)構(gòu)類型,而沒有申明網(wǎng)格與節(jié)點(diǎn)的對應(yīng)關(guān)系。
3)Faces表示 face, 是 Fluent里各個cell的面。在Patran里面是通過element的arElNode和NSI來表示單元與節(jié)點(diǎn)的對應(yīng)關(guān)系,而在Fluent中是用face來表示的。Face包含了面的節(jié)點(diǎn)和鄰接cells兩個主要的信息。值得注意的是,在2D情況下,F(xiàn)luent將線段看作face。如圖2所示,這是一個trial的例子,包含3個節(jié)點(diǎn)n0,n1,n2以及鄰接 cells cr和 cl。 cr是 face右邊的 cell,cl是 face左邊的cell,左右由右手法則確定。
通過上面對Patran與Fluent兩者之間有限元結(jié)構(gòu)的分析,可以看出兩者在拓?fù)錁?biāo)識和有限元要素定義方面并不完全一致,這種差別導(dǎo)致在進(jìn)行從Patran到Fluent的有限元模型轉(zhuǎn)換時,不能直接進(jìn)行數(shù)據(jù)的讀取和寫入,而需要進(jìn)行一定的拓?fù)溆成浜驮乇平?/p>
因此,要實(shí)現(xiàn)有限元模型的轉(zhuǎn)化,需要完成如下工作:
1)數(shù)據(jù)的讀取與存儲
利用Patran強(qiáng)大的二次開發(fā)語言PCL(Patran Command Language)結(jié)合C語言的方法來進(jìn)行數(shù)據(jù)的讀取與存儲。PCL中自帶的一些命令能夠很方便地讀取Patran數(shù)據(jù)庫中的Node和Element信息,而使用C語言能夠創(chuàng)建簡單有效的結(jié)構(gòu)體來存儲轉(zhuǎn)換后的數(shù)據(jù)信息。圖3所示為一些結(jié)構(gòu)體的C語言表述。
2)有限元模型的拓?fù)溆成浜驮乇平?/p>
由于Patran數(shù)據(jù)庫中沒有直接的Face,所以需要通過特殊轉(zhuǎn)換處理來解決。圖3所示,結(jié)構(gòu)體ElemFace 中的 nd_ids[4]和 eids[2]表示 face 的節(jié)點(diǎn)和左右 cell。 elem→nd_ids[ind]是單元的關(guān)系表,ind=shape[i][j],shape[i][j]是各個單元結(jié)構(gòu)的節(jié)點(diǎn)矩陣,由 fnode[i][j]=elem→nd_ids[ind]可得到該單元各面的節(jié)點(diǎn)。由節(jié)點(diǎn)得到所在的面以及鄰接的cells,并根據(jù)右手法則,判斷出right cell和left cell。
3)新數(shù)據(jù)格式的書寫
由于Patran中的數(shù)據(jù)格式為二進(jìn)制,而Fluent為十六進(jìn)制,故最后書寫cas文件時,還需要對數(shù)據(jù)格式進(jìn)行轉(zhuǎn)化。
整個轉(zhuǎn)換過程如圖4所示,除Patran、Fluent軟件本身提供的功能外,此過程還包含有獨(dú)立開發(fā)的PCL程序、C語言外插模塊等。
應(yīng)用本文所述的轉(zhuǎn)換方法,對三個例子進(jìn)行了有限元模型轉(zhuǎn)化,并對其轉(zhuǎn)換前后的網(wǎng)格形態(tài)進(jìn)行了詳細(xì)的校驗(yàn),確認(rèn)了結(jié)果的一致性。
以為了分析某艦船艙室熱傳導(dǎo)而建立的船艙有限元模型為對象應(yīng)用了本轉(zhuǎn)換的方法。模型網(wǎng)格為六面體結(jié)構(gòu),總共劃分了197 760個節(jié)點(diǎn)、186 558個有限元。圖5為由Patran下建模的船艙艙室模型。調(diào)用本文開發(fā)的Patran到Fluent接口程序,進(jìn)行模型轉(zhuǎn)換,生成cas文件,并由Fluent讀取后,在Fluent顯示的網(wǎng)格模型,如圖6所示。
以為了分析某油管內(nèi)部油的流動而建立的油管有限元模型為對象,進(jìn)行轉(zhuǎn)換。圖7為Patran下建模的油管有限元模型,圖8為轉(zhuǎn)換后讀入Fluent顯示的油管模型。
圖7 Patran 下建模的油管模型
以考慮整船水動力性能計(jì)算中所使用的三維模型為例,進(jìn)行模型轉(zhuǎn)換。網(wǎng)格選用四面體網(wǎng)格。圖9為Patran下建模的船首部水下部分模型,圖10為讀入Fluent中顯示的有限元模型。
從圖8、圖9、圖10三個示例可以看到,這種轉(zhuǎn)換方法能夠迅速有效地實(shí)現(xiàn)從Patran到Fluent的模型轉(zhuǎn)換。
為了更好地驗(yàn)證模型轉(zhuǎn)換的效果,運(yùn)用傳統(tǒng)的建模方法,即用Gambit建立相同的艙室有限元模型,進(jìn)行CFD分析。對兩個模型設(shè)定完全相同的條件和求解參數(shù),用Fluent求解,得到兩組結(jié)果。圖11是用Patran建模得到的溫度云圖,圖12是用Gambit建模得到的溫度云圖??梢钥吹剑瑑烧呓Y(jié)果非常接近,其中要注意兩者的CFD分析的精度設(shè)定需要的參數(shù)。
從對比結(jié)果來看,基于MSC Patran的PCL語言結(jié)合C語言開發(fā)的Patran集成Fluent接口,本文所闡述的模型轉(zhuǎn)換方法是可行的,它能很好地讀取Patran數(shù)據(jù)庫中的模型信息,并轉(zhuǎn)換成Fluent所需要的格式,從而完全可以應(yīng)用到一些實(shí)際的工程項(xiàng)目中去,方便工程分析人員的工作,提高工作效率。
同時該方法也存在一些不足,如Patran和Gambit兩者劃分網(wǎng)格的方式不一樣,Patran更適合固體力學(xué)性能分析狀況的網(wǎng)格劃分,而對流體方面的網(wǎng)格劃分支持比較少,在作為Fluent前處理軟件劃分網(wǎng)格時,很難做到100%的一致,但只要注意網(wǎng)格的劃分密度,CFD分析精度設(shè)定等因素,對分析結(jié)果的影響較小。我們計(jì)劃下一步利用艦船CFD研究領(lǐng)域的工程實(shí)際經(jīng)驗(yàn),運(yùn)用Patran的二次開發(fā)語言PCL的強(qiáng)大客戶端功能,開發(fā)一些專門的前后處理模塊,如網(wǎng)格劃分、邊界條件加載等,進(jìn)一步避免轉(zhuǎn)換帶來的精度誤差。
除了Patran和Fluent,市面上還有很多CAD/CAE軟件,如HYPERMESH、ANSYS、ADAMS、PHOENICS、CFX、STAR-CD和FIDAP等。Patran集成Fluent處理中的有限元模型轉(zhuǎn)換的方法,無疑可以應(yīng)用于其他軟件之間相互的模型轉(zhuǎn)換。本文介紹的思路與手段,可以用于開發(fā)CAD/CAE軟件之間各自的接口,將許多業(yè)界功能強(qiáng)大的軟件集成起來,發(fā)揮各自的優(yōu)勢,從而提高CAE軟件分析的效率,并有助于諸如流固耦合一類復(fù)雜問題的研究,真正實(shí)現(xiàn)CAE軟件“一次建模,多種分析”。
[1]馬愛軍,周傳月,王旭.Patran和Nastran有限元分析[M].北京:清華大學(xué)出版社,2005.
[2]汪學(xué)鋒,賀曉燕,吳龍周,等.Fluent與Patran的接口實(shí)現(xiàn)及其在船舶力學(xué)中的應(yīng)用[J].船舶力學(xué),2006,10(4):49-53.
[3]王福軍.計(jì)算流體動力學(xué)分析:CFD軟件原理與應(yīng)用[M].北京:清華大學(xué)出版社,2004.
[4]朱恒山.CAD、CAE集成中信息模型的研究[D].北京航空航天大學(xué),2001.
[5]SUZUMORI K.Elastic materials producing compliant robots[J].Robotics and Autonomous Systems,1996,18 (1-2):135-140.
[6]謝世坤,黃菊花,楊國泰.CAD/CAE集成中的有限元模型轉(zhuǎn)換之研究[J].中國機(jī)械工程,2005,16(5):428-431.
[7]李鋒,田志鋒,周煒,等.MSC Patran集成Fluent的方法及其在船舶工程中的應(yīng)用 [J].計(jì)算機(jī)輔助工程,2006,15(B09):65-67.
[8]MSC Documentation Library[CP].MSC.Software Corporation,2005.
[9]Fluent 6.2 Document[CP].Fluent Inc, 2005.
Model Transformation in Integration of Fluent Based on Patran
Gu Min-fang1Wang Xue-feng2
1 School of Naval Architecture,Ocean and Civil Engineering,Shanghai Jiaotong University,Shanghai 200030,China 2 State Key Laboratory of Marine Engineering,Shanghai Jiaotong University,Shanghai 200030,China
The integration of Fluent based on Patran is widely used in ship mechanics computations and fluid-solid coupling analysis.However, the method to transform the models from Patran to Fluent is critical during the integration of the two.Considering the geometric model features of both Patran and Fluent,the details of transform process are described and the application examples are presented.The validation examples show that the discussed method can quickly and efficiently extract the model information from Patran and then convert them into the format of Fluent.At the end,the advantages and disadvantages of the method are discussed and future applications in the integration of the CAD/CAE software are previewed.
finite element model; transformation; PCL; MSC.Patran
U661
A
1673-3185(2010)01-06-04
2009-10-20
國家教育部財(cái)政部重大項(xiàng)目(ZXZY019);海洋工程國家重點(diǎn)實(shí)驗(yàn)室專項(xiàng)基金(GKZD01020)
顧敏芳(1984-),男,碩士研究生。研究方向:船舶與海洋結(jié)構(gòu)物設(shè)計(jì)制造
汪學(xué)鋒(1966-) ,男,研究員,博士生導(dǎo)師。 研究方向:船舶與海洋工程。E-mail:wangxuef@ sjtu.edu.cn