国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于實(shí)體變形的六面體網(wǎng)格生成方法研究

2013-09-04 00:47:20
機(jī)械工程與自動(dòng)化 2013年5期
關(guān)鍵詞:六面體坐標(biāo)值線性方程組

王 帥

(北京航空航天大學(xué) 機(jī)械工程及自動(dòng)化學(xué)院,北京 100191)

0 引言

常用的六面體網(wǎng)格生成方法有映射法[1]、掃掠法[2]、四面體轉(zhuǎn)換法[3]、基于柵格法[4]、波前推進(jìn)法[5]等。對(duì)于結(jié)構(gòu)復(fù)雜的模型,單獨(dú)使用上述幾種方法都無(wú)法獲得整體質(zhì)量較好的六面體網(wǎng)格。近年來(lái)基于實(shí)體變形技術(shù)的六面體網(wǎng)格生成方法成為研究熱點(diǎn),但這種方法需要先對(duì)多方體模型進(jìn)行網(wǎng)格劃分,再將整套網(wǎng)格映射回原始模型,如此一來(lái)需要生成兩套網(wǎng)格數(shù)據(jù),降低了網(wǎng)格的生成效率。

針對(duì)這一問(wèn)題,本文提出一種利用節(jié)點(diǎn)填充的方式直接在原始模型中生成結(jié)構(gòu)化六面體網(wǎng)格的方法:利用實(shí)體變形技術(shù)得到多方體模型后,不對(duì)變形多方體做實(shí)際剖分,僅通過(guò)線性規(guī)劃得到各頂點(diǎn)的網(wǎng)格信息,利用頂點(diǎn)信息,直接在原始模型中經(jīng)過(guò)邊節(jié)點(diǎn)填充、面節(jié)點(diǎn)填充、體節(jié)點(diǎn)填充生成結(jié)構(gòu)化六面體網(wǎng)格。

1 基于實(shí)體變形的網(wǎng)格生成技術(shù)

Y.Su[6]利用實(shí)體變形技術(shù)將原始模型變換為各邊與坐標(biāo)系平行的識(shí)別模型(多方體模型,polycube),用柵格法對(duì)識(shí)別模型劃分六面體網(wǎng)格,然后將識(shí)別模型網(wǎng)格映射回原始模型,過(guò)程如圖1所示。這種方法可以生成質(zhì)量較高的結(jié)構(gòu)化網(wǎng)格,避免了體分解,對(duì)拓?fù)浣Y(jié)構(gòu)為類多方體的復(fù)雜結(jié)構(gòu)有良好的剖分效果。但這種方法需要先對(duì)多方體模型進(jìn)行網(wǎng)格劃分,再將整套網(wǎng)格映射回原始模型,如此一來(lái)需要生成兩套網(wǎng)格數(shù)據(jù),降低了網(wǎng)格的生成效率。

2 節(jié)點(diǎn)填充法

對(duì)于結(jié)構(gòu)復(fù)雜的模型,很難得到原始模型頂點(diǎn)的網(wǎng)格坐標(biāo);經(jīng)過(guò)實(shí)體變形后的多方體模型,利用基于線性規(guī)劃的子映射法[7],可以較容易求得多方體模型各頂點(diǎn)的網(wǎng)格坐標(biāo)(i,j,k);映射回原始模型,即可得到原始模型各頂點(diǎn)的網(wǎng)格信息,即實(shí)際坐標(biāo)值與網(wǎng)格坐標(biāo)值的對(duì)應(yīng)關(guān)系。

圖1 基于實(shí)體變形的網(wǎng)格生成技術(shù)

本文利用模型頂點(diǎn)的網(wǎng)格坐標(biāo)信息,通過(guò)邊節(jié)點(diǎn)填充、面節(jié)點(diǎn)填充、體節(jié)點(diǎn)填充的方式,直接在原始模型中生成各網(wǎng)格節(jié)點(diǎn),過(guò)程如圖2所示。具體步驟如下:

(1)邊節(jié)點(diǎn)填充:在原始模型的每條邊上,利用頂點(diǎn)的網(wǎng)格坐標(biāo)值得到該邊的節(jié)點(diǎn)個(gè)數(shù),在該邊按等弧長(zhǎng)創(chuàng)建節(jié)點(diǎn),完成邊節(jié)點(diǎn)填充。

(2)面節(jié)點(diǎn)填充:在原始模型的每張面上,得到面內(nèi)未知節(jié)點(diǎn)的網(wǎng)格坐標(biāo)值,利用8節(jié)點(diǎn)等參元模型對(duì)所有面內(nèi)未知節(jié)點(diǎn)構(gòu)建線性方程組,求解方程組即可得到面內(nèi)各節(jié)點(diǎn)的實(shí)際坐標(biāo)值,完成面節(jié)點(diǎn)填充。

(3)體節(jié)點(diǎn)填充:根據(jù)所有已知的面節(jié)點(diǎn),得到體內(nèi)未知節(jié)點(diǎn)的網(wǎng)格坐標(biāo)值,利用20節(jié)點(diǎn)等參元模型對(duì)所有體內(nèi)未知節(jié)點(diǎn)構(gòu)建線性方程組,求解方程組即可得到體內(nèi)節(jié)點(diǎn)的實(shí)際坐標(biāo)值,完成體節(jié)點(diǎn)填充。

圖2 節(jié)點(diǎn)填充法生成六面體網(wǎng)格的過(guò)程

2.1 數(shù)據(jù)結(jié)構(gòu)模型

2.1.1 二維節(jié)點(diǎn)數(shù)據(jù)結(jié)構(gòu)

在二維面節(jié)點(diǎn)填充算法實(shí)現(xiàn)過(guò)程中,每個(gè)二維節(jié)點(diǎn)包含的數(shù)據(jù)為 P(i,j)=(x,y,flag,edgeTag)。其中,(i,j)為二維節(jié)點(diǎn)的網(wǎng)格坐標(biāo),x,y為二維節(jié)點(diǎn)的實(shí)際坐標(biāo),flag為該節(jié)點(diǎn)與形成該面的多邊形的位置關(guān)系(-1:該節(jié)點(diǎn)不在多邊形內(nèi);0:該節(jié)點(diǎn)為多邊形邊界點(diǎn);1:該節(jié)點(diǎn)在多邊形內(nèi)),edgeTag為該節(jié)點(diǎn)所屬邊的編號(hào)。

圖3為二維網(wǎng)格節(jié)點(diǎn)示意圖。

圖3 二維網(wǎng)格節(jié)點(diǎn)示意圖

在填充邊節(jié)點(diǎn)時(shí),將各節(jié)點(diǎn)所在邊的編號(hào)存入P(i,j)→edgeTag中(記為edgeTag(i,j),下同),并將該節(jié)點(diǎn)的flag值改為0(flag(i,j)=0),表示該節(jié)點(diǎn)為邊界節(jié)點(diǎn)。判斷面內(nèi)節(jié)點(diǎn),將其flag值改為1。

2.1.2 三維節(jié)點(diǎn)數(shù)據(jù)結(jié)構(gòu)

與二維節(jié)點(diǎn)類似,每個(gè)三維節(jié)點(diǎn)包含的數(shù)據(jù)為P(i,j,k)=(x,y,z,flag,faceTag)。其中,(i,j,k)為三維節(jié)點(diǎn)的網(wǎng)格坐標(biāo),x,y,z為三維節(jié)點(diǎn)的實(shí)際坐標(biāo),flag為該節(jié)點(diǎn)與模型的位置關(guān)系(-1:該節(jié)點(diǎn)在模型體外,0:該節(jié)點(diǎn)為模型面上的點(diǎn),1:該節(jié)點(diǎn)為體內(nèi)點(diǎn)),faceTag為該節(jié)點(diǎn)所屬面的面編號(hào)(若該節(jié)點(diǎn)非模型面上點(diǎn),其值為-1)。

在填充面節(jié)點(diǎn)時(shí),將各節(jié)點(diǎn)所在面的編號(hào)存入P(i,j,k)→faceTag中(記為faceTag(i,j,k),下同),并將該節(jié)點(diǎn)的flag值改為0(flag(i,j,k)=0),表示該節(jié)點(diǎn)為面節(jié)點(diǎn)。判斷體內(nèi)節(jié)點(diǎn),將其flag值改為1。

圖4為三維網(wǎng)格節(jié)點(diǎn)示意圖。

圖4 三維網(wǎng)格節(jié)點(diǎn)示意圖

2.2 基于等參元的線性方程組

在獲得所有邊界節(jié)點(diǎn)的實(shí)際坐標(biāo)以及內(nèi)部節(jié)點(diǎn)的網(wǎng)格坐標(biāo)后,可以利用等參元模型對(duì)每一個(gè)內(nèi)部節(jié)點(diǎn)列出實(shí)際坐標(biāo)方程,組成線性方程組,求解此方程組即可得到所有內(nèi)部點(diǎn)的實(shí)際坐標(biāo)值。

對(duì)于二維面網(wǎng)格,本文利用如圖5所示的8節(jié)點(diǎn)等參元模型構(gòu)建坐標(biāo)方程。為表示中間插值點(diǎn)的實(shí)際坐標(biāo),可利用8個(gè)節(jié)點(diǎn)和其對(duì)應(yīng)的二次形函數(shù)組成8節(jié)點(diǎn)的等參元,推導(dǎo)出相應(yīng)的坐標(biāo)方程為:

對(duì)于結(jié)構(gòu)化網(wǎng)格,當(dāng)該面所有邊界節(jié)點(diǎn)的坐標(biāo)值已知時(shí),對(duì)平面內(nèi)每一個(gè)面內(nèi)待求節(jié)點(diǎn)列出以上坐標(biāo)方程,可以得到兩組線性方程組,求解線性方程組即可得到面內(nèi)各個(gè)網(wǎng)格節(jié)點(diǎn)的實(shí)際坐標(biāo)(x(i,j),y(i,j))。對(duì)于空間參數(shù)化曲面,可先在參數(shù)平面內(nèi)利用該方法求得各節(jié)點(diǎn)的參數(shù)坐標(biāo),再通過(guò)參數(shù)轉(zhuǎn)換得到相應(yīng)的實(shí)際坐標(biāo)值。

對(duì)于三維體節(jié)點(diǎn),本文利用如圖6所示的20節(jié)點(diǎn)等參元模型,得到每一個(gè)體內(nèi)節(jié)點(diǎn)坐標(biāo)方程為:

圖5 8節(jié)點(diǎn)等參元模型

對(duì)于結(jié)構(gòu)化網(wǎng)格,當(dāng)該實(shí)體所有面節(jié)點(diǎn)已知時(shí),對(duì)每一個(gè)體內(nèi)待求節(jié)點(diǎn)列出上述的坐標(biāo)方程,可以得到三組線性方程組,求解線性方程組即可得到體內(nèi)各個(gè)網(wǎng)格節(jié)點(diǎn)的實(shí)際坐標(biāo)(x(i,j),y(i,j),z(i,j))。

圖6 20節(jié)點(diǎn)等參元模型

3 實(shí)例驗(yàn)證

根據(jù)以上方法,本文以UG NX 3.0為開(kāi)發(fā)平臺(tái),利用UG/Open API開(kāi)發(fā)了六面體網(wǎng)格自動(dòng)剖分模塊,對(duì)渦輪葉片實(shí)體模型的部分結(jié)構(gòu)進(jìn)行了網(wǎng)格自動(dòng)剖分,剖分結(jié)果如圖7所示。

4 結(jié)論

本文提出一種基于多方體變形技術(shù)的結(jié)構(gòu)化六面體網(wǎng)格生成方法:利用實(shí)體變形技術(shù)得到多方體模型后,不對(duì)變形多方體做實(shí)際剖分,僅通過(guò)線性規(guī)劃得到各頂點(diǎn)的網(wǎng)格信息,利用頂點(diǎn)信息,直接在原始模型中經(jīng)過(guò)節(jié)點(diǎn)填充生成結(jié)構(gòu)化六面體網(wǎng)格。該方法在保證較高網(wǎng)格質(zhì)量的前提下,提高了網(wǎng)格生成效率。利用本文方法開(kāi)發(fā)了六面體網(wǎng)格自動(dòng)生成程序,可以得到整體質(zhì)量較好的六面體網(wǎng)格。

圖7 渦輪葉片肋區(qū)網(wǎng)格劃分結(jié)果

[1] 王東風(fēng),翟建軍,陳文亮.基于映射法的六面體網(wǎng)格生成算法[J].中國(guó)制造業(yè)信息化,2009,3(5):25-27.

[2] 翟建軍,喬新宇,丁秋林.基于掃掠法的六面體網(wǎng)格生成算法及實(shí)現(xiàn)[J].南京航空航天大學(xué)學(xué)報(bào),2007,39(1):71-74.

[3] Gregson J,Sheffer A,Zhang E.All-h(huán)ex mesh generation via volumetric polycube deformation[G]//Eurographics Symposium on Geometry Processing 2011. USA:Blackwell Publishing,2011:1407-1416.

[4] 黃麗麗,趙國(guó)群,馬新武,等.柵格法三維六面體網(wǎng)格自動(dòng)生成算法與優(yōu)化[J].塑性工程學(xué)報(bào),2009,16(3):187-191.

[5] 俞建威,沈軍,盧百平,等.一種新的六面體有限元網(wǎng)格算法[J].計(jì)算機(jī)工程與設(shè)計(jì),2003,24(9):22-25.

[6] Su Y,Lee K H ,Kumar , u.Automatic hexahedral mesh generation using a new grid-based method with geometry and mesh transformation [J]. Computer Methods in Applied Mechanics and Engineering,2005,194:4071-4096.

[7] Ruiz-Girones E,Sarrate J.Generation of structured hexahedral meshes in volumes with holes[J].Finite Elements in Analysis and Design,2010,46:792-804.

猜你喜歡
六面體坐標(biāo)值線性方程組
麥弗遜懸架主銷軸線對(duì)半軸滑移的影響
北京汽車(2023年1期)2023-03-03 00:50:38
一個(gè)領(lǐng)導(dǎo)人的“六面體”
求解非線性方程組的Newton迭代與Newton-Kazcmarz迭代的吸引域
基于二分法迭代的凸模數(shù)控銑削加工編程*
一種適用于任意復(fù)雜結(jié)構(gòu)的曲六面體網(wǎng)格生成算法
新型透空式六面體在南匯東灘促淤二期工程中的應(yīng)用
基于六面體網(wǎng)格的水下航行體流體動(dòng)力分析
電子制作(2017年24期)2017-02-02 07:14:27
線性方程組解的判別
保護(hù)私有信息的一般線性方程組計(jì)算協(xié)議
基于Matlab實(shí)現(xiàn)線性方程組的迭代解法
双江| 宁德市| 滦平县| 金门县| 徐水县| 通山县| 阿巴嘎旗| 蕉岭县| 榆社县| 信宜市| 孟村| 芜湖县| 乡城县| 禄劝| 吴桥县| 威海市| 全州县| 赫章县| 井研县| 阳山县| 大冶市| 郑州市| 成武县| 淳安县| 石景山区| 奎屯市| 开江县| 砀山县| 广河县| 青岛市| 林周县| 和林格尔县| 武定县| 邵武市| 乌苏市| 永春县| 安岳县| 拉萨市| 潼关县| 冷水江市| 玉树县|