一種等幾何分析的內(nèi)外邊界處理方法
【專利摘要】本發(fā)明提出了一種等幾何分析的內(nèi)外邊界處理方法,首先建立與零件或者區(qū)域拓?fù)浣Y(jié)構(gòu)相同的參數(shù)空間,然后采用節(jié)點(diǎn)插入法將零件或區(qū)域的參數(shù)空間用開節(jié)點(diǎn)矢量表達(dá),再使用參數(shù)空間的法向及法向坐標(biāo)表示每個三維體上的表面,接著生成每個三維體上的表面的開節(jié)點(diǎn)矢量表達(dá),并根據(jù)得到的開節(jié)點(diǎn)矢量表達(dá),計(jì)算每個三維體上的表面的基函數(shù),最后應(yīng)用等幾何分析方法,把未知場量的內(nèi)外邊界條件在離散函數(shù)空間上投影,完成邊界條件處理。通過本發(fā)明的方法完成工程問題中的邊界條件處理,可以將數(shù)值計(jì)算問題轉(zhuǎn)換為邏輯判斷問題,由于邏輯判斷的效率遠(yuǎn)高于數(shù)值計(jì)算,實(shí)現(xiàn)也更為簡單,所以能夠以較高的效率解決等幾何分析中的拓?fù)潢P(guān)系判斷問題。
【專利說明】一種等幾何分析的內(nèi)外邊界處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于有限元分析【技術(shù)領(lǐng)域】,具體為一種等幾何分析的內(nèi)外邊界處理方法。
【背景技術(shù)】
[0002]在采用等幾何法處理有限元問題時,要首先建立被仿真對象的CAD模型,使CAD模型由NURBS基表達(dá)。對于一維對象,其對應(yīng)的參數(shù)空間的節(jié)點(diǎn)矢量是一個非負(fù)升序?qū)崝?shù)列表。對于二維和三維對象,每個對象對應(yīng)于兩個或三個這樣的列表。對于一個維度來說,所有NURBS基函數(shù)的信息都在節(jié)點(diǎn)矢量內(nèi)存儲,這樣的一個節(jié)點(diǎn)矢量決定了一個維度上的所有基函數(shù)。
[0003]一個CAD模型中通常有多個相互作用的零件(或者區(qū)域),一般來說,每個零件由開節(jié)點(diǎn)矢量(Open Knot Vector)開節(jié)點(diǎn)矢量表達(dá)。關(guān)于開節(jié)點(diǎn)矢量以及NURBS基函數(shù)如何計(jì)算的問題在計(jì)算機(jī)圖形學(xué)相關(guān)書籍中有廣泛論述。
[0004]工程問題中所需求解的未知場量通常定義在物理空間內(nèi)的零件(區(qū)域)內(nèi),為了保證問題能夠被求解,該場所需滿足的內(nèi)外邊界條件必須被指明。為應(yīng)用等幾何方法處理這些內(nèi)外邊界條件,必須要獲得內(nèi)外表面上的所有基函數(shù)。同時也需要處理以下問題:
[0005]1、幾何邊界提取,即對于三維體來說,需要提取其某個二維表面上基的節(jié)點(diǎn)矢量。
[0006]2、拓?fù)潢P(guān)系判斷,對于三維體來說,要判斷該三維體與哪個體的那些表面接觸。
[0007]3、邊界法向特征提取,對于三維體來說,要表面的那個方向垂直指向體外。
[0008]4、生成相應(yīng)的邊界函數(shù)空間,應(yīng)用邊界連接條件,完成邊界處理。
[0009]傳統(tǒng)的三維曲面的節(jié)點(diǎn)矢量數(shù)組上是二維的,即包含兩個一維節(jié)點(diǎn)矢量。應(yīng)用傳統(tǒng)的表達(dá)方式,上述問題I和4可以得到簡單的處理,但其他問題的處理過程都較為復(fù)雜而且計(jì)算效率較低。如果在物理空間來處理以上問題,對于問題2來說,需要通過判斷復(fù)雜的體-面關(guān)系才能得到解決。對于問題3,需要計(jì)算表面法向量,然后判斷沿法向的點(diǎn)是否在體內(nèi)。在參數(shù)空間來處理以上問題,復(fù)雜度本質(zhì)上是相同的,區(qū)別在于參數(shù)空間相對規(guī)則而已(NURBS參數(shù)空間通常為矩形)。
【發(fā)明內(nèi)容】
[0010]要解決的技術(shù)問題
[0011]本發(fā)明的目的是針對等幾何分析過程中多維體與其邊界處理中存在的問題,通過構(gòu)建拓?fù)浣Y(jié)構(gòu)與物理空間相同的參數(shù)空間,應(yīng)用開節(jié)點(diǎn)矢量數(shù)組統(tǒng)一表示其他較低維度節(jié)點(diǎn)矢量,從而將分析過程中的數(shù)值計(jì)算問題轉(zhuǎn)化為邏輯判斷問題,簡化了等幾何分析中的邊界處理問題。
[0012]本發(fā)明的技術(shù)方案為:
[0013]所述一種等幾何分析的內(nèi)外邊界處理方法,其特征在于:包括以下步驟:
[0014]步驟1:根據(jù)物理空間中的零件或者區(qū)域,建立與零件或者區(qū)域拓?fù)浣Y(jié)構(gòu)相同的參數(shù)空間;
[0015]步驟2:根據(jù)步驟I的參數(shù)空間,采用節(jié)點(diǎn)插入法,將零件或區(qū)域的參數(shù)空間用開節(jié)點(diǎn)矢量表達(dá),得到零件或區(qū)域中若干個三維體對應(yīng)的開節(jié)點(diǎn)矢量數(shù)組;其中第i個三維體對應(yīng)的開節(jié)點(diǎn)矢量數(shù)組由KVn,KVi2, KVi3三個列表組成;KVn,KVi2, KVi3S個列表各自的最大值對應(yīng)為Maxn,Maxi2, Maxi3,三個列表各自的最小值對應(yīng)為Minn,Mini2, Mini3;
[0016]步驟3:使用參數(shù)空間的法向及法向坐標(biāo)表示每個三維體上的表面:其中第i個三維體中的某個面的表達(dá)式為SiQi, d),其中k = l,2,3,d = Maxik或Min ik, SiQi, d)表示第i個三維體中的某個面在參數(shù)空間內(nèi)所對應(yīng)平面的法向是k,且對應(yīng)平面在k方向上的坐標(biāo)為d ;其中當(dāng)d取Maxik時,法向是k正方向,當(dāng)d取Min 115時,法向是k負(fù)方向;所述三維體上的表面包括單個三維體上的外表面和兩個三維體之間接觸面;
[0017]步驟4:生成每個三維體上的表面的開節(jié)點(diǎn)矢量表達(dá):對于第i個三維體中的某個面Si (k, d),采用以下步驟得到其對應(yīng)的開節(jié)點(diǎn)矢量表達(dá):
[0018]步驟4.1:統(tǒng)計(jì)第i個三維體的開節(jié)點(diǎn)矢量數(shù)組中的列表KVik的元素個數(shù)η ;
[0019]步驟4.2:采用一維開節(jié)點(diǎn)矢量newKV替換第i個三維體的開節(jié)點(diǎn)矢量數(shù)組中的列表KVik,得到新的開節(jié)點(diǎn)矢量數(shù)組;所述newKV由η個元素組成,newKV的每一個元素均為d ;所述新的開節(jié)點(diǎn)矢量數(shù)組為第i個三維體中的某個面Si (k, d)的開節(jié)點(diǎn)矢量表達(dá);
[0020]步驟5:根據(jù)步驟4得到的開節(jié)點(diǎn)矢量表達(dá),采用與計(jì)算三維Nurbs基函數(shù)相同的方法計(jì)算每個三維體上的表面的基函數(shù);
[0021]步驟6:應(yīng)用等幾何分析方法,把未知場量的內(nèi)外邊界條件在離散函數(shù)空間上投影,完成邊界條件處理;所述未知場量指某個工程問題中定義在步驟I所述物理空間中的零件或者區(qū)域中的待求場量;所述離散函數(shù)空間以步驟5得到的基函數(shù)為基底。
[0022]有益效果
[0023]通過本發(fā)明的方法完成工程問題中的邊界條件處理,可以將數(shù)值計(jì)算問題轉(zhuǎn)換為邏輯判斷問題,由于邏輯判斷的效率遠(yuǎn)高于數(shù)值計(jì)算,實(shí)現(xiàn)也更為簡單,所以能夠以較高的效率解決等幾何分析中的拓?fù)潢P(guān)系判斷問題。例如:
[0024]1、如果一個開節(jié)點(diǎn)矢量數(shù)組中的某個列表中的所有元素相同,則該節(jié)點(diǎn)矢量數(shù)組對應(yīng)于一個三維體的表面;
[0025]2、如果兩個表面的某一方向上的兩個節(jié)點(diǎn)矢量的元素值全部相等,則兩個面重入口 ο
【專利附圖】
【附圖說明】
[0026]圖1用于等幾何分析的裝配及其對應(yīng)的參數(shù)空間劃分示例(左側(cè)為物理空間,右側(cè)為對應(yīng)的參數(shù)空間);
[0027]圖2將一個區(qū)域轉(zhuǎn)換為多個包含開節(jié)點(diǎn)矢量數(shù)組的的Patch,本文以Patch A和Patch B中相互接觸的曲面為例,說明本發(fā)明的使用方法。Patch A,Patch B為用以說明本方法的兩個三維體;
[0028]圖3為Patch A和Patch B兩個三維體及其開節(jié)點(diǎn)矢量數(shù)組;
[0029]圖4Patch B上外表面節(jié)點(diǎn)矢量表示過程;
[0030]圖5Patch B上外表面節(jié)點(diǎn)矢量表示過程。
【具體實(shí)施方式】
[0031]下面結(jié)合具體實(shí)施例描述本發(fā)明:
[0032]為了說明本發(fā)明方法的使用過程,本實(shí)施例中要建模的圖形如圖1左側(cè)所示,其中物理空間的X,y,z方向分別對應(yīng)參數(shù)空間的1,2,3三個方向。
[0033]具體步驟為:
[0034]步驟1:根據(jù)物理空間中的零件或者區(qū)域,建立與零件或者區(qū)域拓?fù)浣Y(jié)構(gòu)相同的參數(shù)空間。如圖1右側(cè)所示,如果物理空間內(nèi)的兩個零件(區(qū)域)如果接觸,其所對應(yīng)的參數(shù)空間也相互接觸。
[0035]步驟2:根據(jù)步驟I的參數(shù)空間,采用節(jié)點(diǎn)插入法,將零件或區(qū)域的參數(shù)空間用開節(jié)點(diǎn)矢量表達(dá),得到零件或區(qū)域中若干個三維體對應(yīng)的開節(jié)點(diǎn)矢量數(shù)組;其中第i個三維體對應(yīng)的開節(jié)點(diǎn)矢量數(shù)組由KVn,KVi2, KVi3三個列表組成;KVn,KVi2, KVi3S個列表各自的最大值對應(yīng)為Maxn,Maxi2, Maxi3,三個列表各自的最小值對應(yīng)為Minn,Mini2,Mini3O 一個開節(jié)點(diǎn)矢量數(shù)組在等幾何分析中被稱為一個片(Patch),一個片的幾何信息由其控制點(diǎn)網(wǎng)格和開節(jié)點(diǎn)矢量數(shù)組決定。
[0036]如圖2所示,本實(shí)施例這樣一個物理空間的模型可以表示為多個Patch的組合,其中每個Patch都有自己的三維開節(jié)點(diǎn)矢量數(shù)組。
[0037]步驟3:使用參數(shù)空間的法向及法向坐標(biāo)表示每個三維體上的表面:其中第i個三維體中的某個面的表達(dá)式為SiQi, d),其中k = l,2,3,d = Maxik或Min ik, SiQi, d)表示第i個三維體中的某個面在參數(shù)空間內(nèi)所對應(yīng)平面的法向是k,且對應(yīng)平面在k方向上的坐標(biāo)為d ;其中當(dāng)d取Maxik時,法向是k正方向,當(dāng)d取Min 115時,法向是k負(fù)方向;所述三維體上的表面包括單個三維體上的外表面和兩個三維體之間接觸面。
[0038]如圖3所示,本實(shí)施例中PatchA所對應(yīng)的開節(jié)點(diǎn)矢量數(shù)組為:KVA1 ={0,0, I, I}, KVa2= {2, 2,4, 4}, KVa3= {0,0,0,3,3,3},而 PatchB 對應(yīng)的開節(jié)點(diǎn)矢量數(shù)組為:KVbi= {0,0, I, 1},KVB2= {0,0, 2, 2}, KVb3= {0,0,0,3,3,3}。
[0039]步驟4:生成每個三維體上的表面的開節(jié)點(diǎn)矢量表達(dá):對于第i個三維體中的某個面Si (k, d),采用以下步驟得到其對應(yīng)的開節(jié)點(diǎn)矢量表達(dá):
[0040]步驟4.1:統(tǒng)計(jì)第i個三維體的開節(jié)點(diǎn)矢量數(shù)組中的列表KVik的元素個數(shù)η ;
[0041]步驟4.2:采用一維開節(jié)點(diǎn)矢量newKV替換第i個三維體的開節(jié)點(diǎn)矢量數(shù)組中的列表KVik,得到新的開節(jié)點(diǎn)矢量數(shù)組;所述newKV由η個元素組成,newKV的每一個元素均為d ;所述新的開節(jié)點(diǎn)矢量數(shù)組為第i個三維體中的某個面Si (k, d)的開節(jié)點(diǎn)矢量表達(dá)。
[0042]圖4所示為Patch A中的下側(cè)接觸曲面生成開節(jié)點(diǎn)矢量數(shù)組的過程:
[0043]1、由 Patch A 開節(jié)點(diǎn)矢量數(shù)組:KVai= {0,0, I, I}, KV A2= {2,2,4,4},KV A3 ={0,0,0, 3, 3, 3}以及其參數(shù)空間的法向方向,可以獲知,k = 2,d = 2,所以下側(cè)接觸曲面為Sa(2,2)。
[0044]2、因節(jié)點(diǎn)矢量(或稱為列表)KVa2= {2,2,4,4}中共有四個元素,所以將d = 2重復(fù)四次,生成新的節(jié)點(diǎn)矢量newKV = {2,2,2,2}。
[0045]3、以newKV替換上述的三維體節(jié)點(diǎn)矢量數(shù)組,就得到了該曲面的新的開節(jié)點(diǎn)矢量數(shù)組表達(dá):KVA1 {O, O, I, 1},KVa2= {2,2,2,2} ,KV A3= {O, O, O, 3,3,3}。
[0046]Patch B中的上側(cè)接觸曲面生成開節(jié)點(diǎn)矢量數(shù)組的過程如圖5所示。
[0047]應(yīng)用這樣的邊界表示可以將體-面,面-面關(guān)系判斷中的數(shù)值計(jì)算問題轉(zhuǎn)換為邏輯判斷問題,從而獲得較高效率。例如:
[0048]K Patch A和Patch B中的接觸曲面在物理空間是重合的,而由此法生成的該曲面的開節(jié)點(diǎn)矢量數(shù)組表達(dá)也是相同的。利用這個特性可以判斷兩個物理空間的零件是否接觸。
[0049]2、可以應(yīng)用邏輯判斷得出:接觸曲面分別是Patch A的參數(shù)空間中的2方向上的下表面,是Patch B的參數(shù)空間中的2方向上的上表面。
[0050]步驟5:根據(jù)步驟4得到的開節(jié)點(diǎn)矢量表達(dá),采用與計(jì)算三維Nurbs基函數(shù)相同的方法計(jì)算每個三維體上的表面的基函數(shù);因?yàn)榻?jīng)典NURBS基函數(shù)的計(jì)算過程中規(guī)定了 0/0=1,所以,計(jì)算計(jì)算三維Nurbs基函數(shù)的方法適用于計(jì)算每個三維體上的表面的基函數(shù),無需改變。
[0051]步驟6:應(yīng)用等幾何分析方法,把未知場量的內(nèi)外邊界條件在離散函數(shù)空間上投影,完成邊界條件處理;所述未知場量指某個工程問題中定義在步驟I所述物理空間中的零件或者區(qū)域中的待求場量;所述離散函數(shù)空間以步驟5得到的基函數(shù)為基底。
【權(quán)利要求】
1.一種等幾何分析的內(nèi)外邊界處理方法,其特征在于:包括以下步驟: 步驟1:根據(jù)物理空間中的零件或者區(qū)域,建立與零件或者區(qū)域拓?fù)浣Y(jié)構(gòu)相同的參數(shù)空間; 步驟2:根據(jù)步驟1的參數(shù)空間,采用節(jié)點(diǎn)插入法,將零件或區(qū)域的參數(shù)空間用開節(jié)點(diǎn)矢量表達(dá),得到零件或區(qū)域中若干個三維體對應(yīng)的開節(jié)點(diǎn)矢量數(shù)組;其中第i個三維體對應(yīng)的開節(jié)點(diǎn)矢量數(shù)組由KVn,KVi2,KVi3三個列表組成;KVn,KVi2,KVi3三個列表各自的最大值對應(yīng)為Maxn,Maxi2,Maxi3,三個列表各自的最小值對應(yīng)為Minn,Mini2,Mini3; 步驟3:使用參數(shù)空間的法向及法向坐標(biāo)表示每個三維體上的表面:其中第i個三維體中的某個面的表達(dá)式為Si (k,d),其中k = 1,2,3,d = Maxikm Min ik, Si (k, d)表示第i個三維體中的某個面在參數(shù)空間內(nèi)所對應(yīng)平面的法向是k,且對應(yīng)平面在k方向上的坐標(biāo)為d ;其中當(dāng)d取Maxik時,法向是k正方向,當(dāng)d取Min 115時,法向是k負(fù)方向;所述三維體上的表面包括單個三維體上的外表面和兩個三維體之間接觸面; 步驟4:生成每個三維體上的表面的開節(jié)點(diǎn)矢量表達(dá):對于第i個三維體中的某個面Sjk,d),采用以下步驟得到其對應(yīng)的開節(jié)點(diǎn)矢量表達(dá): 步驟4.1:統(tǒng)計(jì)第i個三維體的開節(jié)點(diǎn)矢量數(shù)組中的列表KVik的元素個數(shù)η ; 步驟4.2:采用一維開節(jié)點(diǎn)矢量newKV替換第i個三維體的開節(jié)點(diǎn)矢量數(shù)組中的列表KVik,得到新的開節(jié)點(diǎn)矢量數(shù)組;所述newKV由η個元素組成,newKV的每一個元素均為d ;所述新的開節(jié)點(diǎn)矢量數(shù)組為第i個三維體中的某個面Sjk,d)的開節(jié)點(diǎn)矢量表達(dá); 步驟5:根據(jù)步驟4得到的開節(jié)點(diǎn)矢量表達(dá),采用與計(jì)算三維Nurbs基函數(shù)相同的方法計(jì)算每個三維體上的表面的基函數(shù); 步驟6:應(yīng)用等幾何分析方法,把未知場量的內(nèi)外邊界條件在離散函數(shù)空間上投影,完成邊界條件處理;所述未知場量指某個工程問題中定義在步驟1所述物理空間中的零件或者區(qū)域中的待求場量;所述離散函數(shù)空間以步驟5得到的基函數(shù)為基底。
【文檔編號】G06F17/50GK104504223SQ201510018363
【公開日】2015年4月8日 申請日期:2015年1月14日 優(yōu)先權(quán)日:2015年1月14日
【發(fā)明者】萬能, 杜珂, 張洪海, 高瑾宇 申請人:西北工業(yè)大學(xué)