等几何分析
?
等幾何分析
概述
等幾何分析(IGA)是新型的有限元理論。它通常采用等參分析思想,其計算域模型為二維情況下的平面NURBS曲面或三維情況下的三變量NURBS參數體;計算單元為節點區間構建的NURBS曲面單元或NURBS體單元;形參數為NURBS基函數,擬求解的未知變量為控制頂點。
等幾何分析方法是基于有限元分析方法的等參單元思想,將計算機輔助幾何設計(CAGD)中用于表達幾何模型的非均勻有理B樣條(NURBS)的基函數作為形參數,實現了計算機輔助設計(CAD)和計算機輔助工程(CAE)的無縫結合。
等幾何分析可以精確地表述模型的幾何特征,精度更高。在網格細化上,等幾何分析不僅擁有通用的h-細化策略和p-細化策略,同時還擁有一種獨有的 k-細化策略,細化精度更高,細化速度更快。從優化的角度看,設計與仿真實現了集成,可以根據仿真分析后的結果直接對設計結構進行幾何修改,提高了結構設計優化的效率。
特點
由于NURBS基函數可以構造任意高階連續的近似函數,克服了有限元分析方法通常僅有C^0連續性的弊端,使等幾何分析方法可以方便地求解薄板殼等高階問題。目前等幾何分析方法已成功用于固體、流體、電磁、振動和裂紋擴散等模型的分析,并展現出其相對有限元分析方法的很大優勢,如:無需進行幾何模型轉換,單元細分簡便且不損失幾何精度以及便于求解高階連續問題等
在實現計算機輔助設計(CAD)和計算機輔助工程(CAE)結合的同時,等幾何分析方法也自然在結構優化中擁有了獨到的優勢。它可直接將幾何模型的NURBS控制點作為優化對象,并根據優化后的控制點坐標和權值簡便精確地得到優化后的形狀,而且優化后的邊界是光滑連續的NURBS曲線。
等幾何分析方法的幾何模型均采用參數表示,其網格的劃分和細化與經典有限元不同,僅需要在參數域上進行自然劃分或插點細分,避免了對分析網格模型直接操作,省去了經典有限元中專門劃分網格的過程,加快了分析周期。等幾何分析利用構建模型的基函數為形函數進行計算,其單位節點精度遠高于經典有限元。
三種重要分析的概念
應力分析是檢查產品在施加力時的應力(物體內部產生的力)和"變形"的分析。例如,當支架受力時,可以分析力如何變形,以及力集中在哪個部分,這樣,就可以在制作真實物體之前檢查支架在實際使用中是否損壞。
振動分析是研究物體振動時如何變形的分析,以及每秒振動的周期如何產生共振。(共振是物體的自然頻率和施加的振動頻率匹配并發生大振動的現象)
例如,當觸摸長標尺時,標尺會變形。 當我改變速度時,變形的方式會發生變化。
因此,振動分析可以分析振動時的"變形方式"和"變形量"。 此外,還可以通過在變形時尋求"應力"來確定是否斷裂。
這是一種分析技術,用于汽車和飛機等振動問題產品。
熱分析是計算"物體溫度"和"熱傳導"作為熱移動現象的分析,用于研究產品是否處于使用范圍內的溫度。
例如,可以計算活塞燃燒時的熱量溫度分布,該溫度是發動機部件,并使用溫度結果來確定熱應力。熱傳導分析是一種重要分析技術,用于驗證發動機等熱發動機和電子產品的熱。
等幾何分析的簡單示例:
結構分析
幾何模型在CAGD軟件中建立,然后通過程序讀取模型信息并直接進行等幾何分析,中間無需進行模型轉換。下圖展示了結構幾何模型(左)、NURBS控制點網格(中上)、結構物理空間網格(中下)和Von mises應力云圖(右)。
應力云圖是有限元軟件里面生成的在給定外力作用下表現出來的各部分應力大小和分布的云圖。
應力:物體由于外因(受力、濕度、溫度場變化等)而變形時,在物體內各部分之間產生相互作用的內力,以抵抗這種外因的作用,并試圖使物體從變形后的位置恢復到變形前的位置。
結構優化
幾何模型的NURBS控制點可直接作為結構優化變量。在應力約束下,以結構質量最小為目標,通過對控制點坐標的優化可快速得到支架的最優形狀。
等幾何分析的應用
等幾何分析提出至今,其理論已經得到了很好的完善,其應用已經擴展到了各個領域。在結構力學問題的分析上,等幾何分析有獨特的優勢。板殼問題的應用就很好地證明了等幾何分析相比于傳統方法的優勢。
板殼結構在航空航天、海洋船舶工程、機械制造、石油化工、精密儀器、車輛工程、土木工程等領域有著廣泛的應用。數值方法分析板殼結構的力學行為(靜力彎曲、自振特性、屈曲穩定)需要形函數高階連續,因此等幾何分析非常適合分析板殼問題。
在CAD建模中,復雜幾何模型,如含接口的板殼模型,通常采用一系列布爾運算如并、交及減等裁剪獲得。采用這種方式建立模型最終生成是裁剪NURBS曲面,根據裁剪曲面構造裁剪單元用于等幾何分析。
梁構件是一種重要的結構元件,在各個領域都有廣泛的應用。在工程實踐中,梁構件在外載荷的作用下會產生較大的變形,需要使用非線性分析方法,采用樣條函數精確描述梁結構幾何構型,適用于曲梁結構的仿真分析,同時避免了傳統有限元分析的網格生成前處理過程,提高了計算精度。
還可以通過等幾何分析進行心臟建模和力學分析,通過對心臟CT圖像的手動分割得到的左心室七個相位的內外壁特征點,計算出控制點與基函數,并用等幾何仿真和插值法對內外壁之間的區域進行實體擬合,獲得帶控制點的左心室實體模型,最后利用應力應變方程有效的計算出施加在心室壁上的某一時刻應力應變分布情況。
等幾何分析的流程
等幾何分析的優點
等幾何分析不可直接在已有的網格模型上進行細化,它的網格劃分不需要ASG模型,如下圖所示等幾何分析與經典有限元的差異。
等幾何分析的優勢:
等幾何分析方法以CAD中樣條理論為基礎實現,旨在對分析目標精確表達和分析建模。
等幾何分析外傳
目前B樣條和NURBS已成為等幾何分析方法中最常用的模型描述方式,可以嘗試用其他樣條代替原來最常用的樣條來對模型進行描述。(改造樣條基)
等幾何分析方法中最關鍵的是模型的參數域,參數域不僅是描述幾何模型和分析模型基函數的定義域,也是分析模型中網格劃分和細化的操作域。
等幾何分析:邊界條件的施加,接觸分析,結構優化等。
等幾何分析的過程,以有限元中的等參思想為基礎。
基于其他樣條的等幾何形狀優化技術
等幾何分析(零碎)
在等幾何分析中,參數空間中的單元是由節點劃分的。
等幾何分析的核心是利用實體的幾何描述直接進行分析計算,避免傳統有限元的二次建模,消除幾何模型和計算模型之間存在的誤差。
在等幾何分析中,單元的定義不同于傳統有限元,通常定義在參數坐標上。
在等幾何分析中,每個NURBS曲面被稱為“片”,每個片內至少包含一個單元,相當于傳統有限元中的子域。
等幾何分析的根本思想是將用于精確幾何建模的基函數同樣用作數值方法解空間的基函數。
單元的幾何形狀和單元內的場函數采用相同數目的結點參數及相同的插值函數進行變換稱之為等參變換,采用等參變換的單元即為等參元。
等幾何分析的思想和傳統有限元的等參思想的根本區別在于:在經典FEA中,選用近似未知解空間的基函數離散已知幾何域;而在等幾何分析中,則采用反向思維,選用精確構造幾何的基函數作為近似解空間的基函數。
假設節點矢量構成的計算區域為參數域,B樣條或NURBS曲面(或實體)為實體幾何域。對張量積樣條基函數進行線性重排序,則參數坐標系與實際坐標系之間的映射為:
x=G(ξ)=∑i=1nNi(ξ)dix=G(\xi)=\sum_{i=1}^nN_i(\xi)d_i x=G(ξ)=i=1∑n?Ni?(ξ)di?
式中 Ni(ξ)N_i(\xi)Ni?(ξ) 表示NURBS基函數,did_idi? 表示控制頂點,n表示基函數個數,x=(x,y,z)或x=(x,y)表示實際笛卡爾坐標系,ξ=(ξ,η,ζ)\xi=(\xi,\eta,\zeta)ξ=(ξ,η,ζ) 或ξ=(ξ,η)\xi=(\xi,\eta)ξ=(ξ,η) 表示參數坐標。
任意場變量的近似表達:
uh(x)=∑i=1nΦi(x)uix∈Ωu_h(x) = \sum_{i=1}^n\Phi_i(x)u_i\ \ \ \ x\in\Omega uh?(x)=i=1∑n?Φi?(x)ui?????x∈Ω
式中?i(x)\phi_i(x)?i?(x) 表示形狀函數,?i(x)=Ni(ξ)°G?1(x)\phi_i(x)=N_i(\xi)\circ G^{-1}(x)?i?(x)=Ni?(ξ)°G?1(x) , 記號°\circ°表示函數復合,uiu_iui? 表示控制頂點處的物理場值,在等幾何分析中又稱為控制變量。
等幾何分析采用了精確幾何離散,有限元則是使用多項式近似。
等幾何分析在工程應用時,摒棄了傳統有限元的網格劃分過程,保持了幾何模型的精確性,具有計算精度高,流程快,適應范圍廣等優點。
邊界問題求解
邊界值問題求解,為了研究等幾何分析的思想,考慮求解邊界值問題泊松方程(偏微分方程)。
很多情況下問題的解析解是很難得到的,通常尋找的是問題的數值解。
數值解是在一定條件下通過某種近似計算得出來的一個數值,能在給定的精度條件下滿足方程
解析解為方程的解析式(比如求根公式之類的),是方程的精確解,能在任意精度下滿足方程
伽遼金方法將求解域進行逼近處理,即將一個求解域用有限維空間近似。
有限元分析(FEA)
在數學上,有限元分法是一種為偏微分方程的邊界值問題尋找近似解的數值計算方法,既然是數值計算方法,所以是沒有精確解的。**它將一個區域分成簡單的小單元,這些小單元稱為有限元,并使用各種微積分的各種求解方法在最小誤差函數下求解問題。**類似于連接許多小段直線可以近似逼近一個圓一樣,有限元法綜合每個小單元的方程去近似逼近整個大范圍內的方程域。
面對一個模型我們需要綜合考慮各種因素來選擇劃分的網格類型,況且除了3D單元以外,還有1D和2D單元,不同的場合選擇也是不一樣的。大多數情況下我們會采用3D四面體網格,但不是所有樣子的3D四面體網格都是可行的,我們需要檢查其各種參數,比如長寬比,扭曲系數,雅可比因子等等,只有通過一定的參數檢查,我們才能保證結果的準確。
另外在劃分網格以前,我們還要對模型進行處理,也稱為模型理想化,既要把對分析結果沒什么影響的結構給去掉,比如細小孔和其它細微結構,還有就是有問題的地方比如破面等要修復。因為一個結構如果太過于細微,那么網格劃分是很難成功的,因此需要先理想化地去除。
網格劃分的好,邊界條件也有了,那么后面的求解和后處理也就變得簡單了。
有限元分析的一般流程為:結構離散(網格劃分)——單元構造(確定位移插值方法)——單元分析(局部剛度矩陣)——整體結構分析(所有單元組裝成整剛矩陣)——施加邊界條件(邊值、初值)——構造方程、解方程(數值方法求近似解)
為什么有限元分析要先進行前處理劃分網格?其實就是把原本的CAD模型(NURBS參數公式)轉化成CAE模型(有限元位移插值公式),而等幾何分析(IGA)便是直接將NURBS曲線曲面表達式中的基函數拿來,作為有限元位移場的插值形函數,使得CAD模型和CAE模型具有統一的數學表達形式。
IGA直接利用NURBS基函數作為位移形函數,這有什么用呢?
首先,省去網格劃分:不同于FEM每次要將CAD模型離散成很小的網格單元,IGA將原本的復雜曲面分割成一塊塊的不那么復雜的子級曲面片(patch)。本質上IGA還是基于有限元的“分割”思想,但是,相比較有限元動輒千萬個幾毫米的線性網格,IGA可以用很少很大的幾個patch來逼近原模型,前處理的工作量大大減少。更重要的是,前處理的減負不僅僅體現在某一次的模型分析中,須知實際工程中的模型迭代更新是很頻繁的,以汽車為例,往往從預研到SOP期間要經過3到5輪分析,每次分析都意味著有限元網格的重新劃分和建模,而使用IGA方法,等CAD模型更新后,其patch也會同步更新(因為patch用的形函數就是NURBS基函數),無需或者簡單調整模型即可直接進行分析。
其次,幾何精確性:由于patch使用了和原模型相同的數學表達式(NURBS基函數),幾乎可以說是原模型的“分裂體”,逼近程度非常高;patch之間的連接也能保證一定的光順性,無需擔心有限元單元之間出現的應力不連續、單元畸變,無需在后處理時特意處理單元之間的連接問題。
最后,結果高精度:我們知道有限元要想提高結果的精度,勢必要加密網格(甚至重新劃分網格),導致計算時長增加。而采用IGA單元,由于NURBS基函數具有天然的局部性和遞推性,低階次的單元可以很方便的構造高階單元(通過插入節點、基函數升階或者兩者混合使用的方式),這就意味著IGA提高精度無需重新分割成子級patch,無需改變單元本身的形狀,這也是“等幾何分析”名稱的由來。相比較有限元加密網格得到的的h-收斂,IGA通過采用高階單元得到的p-收斂具有更高的精度。
計算流體動力學(CFD)
計算流體動力學(CFD)是近代流體動力學、數值數學和計算機科學結合的產物。它從計算方法出發,利用計算機快速的計算能力得到流體控制方程的近似解。隨著計算機軟硬件的猛速發展,CFD被廣泛地應用于現在工程領域,特別是在制造領域,用以研究和優化設計流體流動的設備和系統的性能。然后隨著近年來掃描技術和計算機技術的進步,CFD仿真技術為生物醫學領域帶來了全新的機遇。
人體解剖學和人體流體行為的復雜性,使得CFD仿真技術稱為醫學領域研究的重要工具。醫學研究人員通過先進設備得到人體血液、氣流等流體運作的詳細數值,從而研究并設計出更可靠的醫學醫療和設備,用以改進優化人體的流體運作,幫助病人更快的恢復健康。
CFD的示例應用之一是預測冠狀動脈疾病,例如動脈粥樣硬化,已知其由于生物力學和流體流動因素(例如流速和壓力變化)而發生,CFD分析可以通過使用三維醫學圖像中的冠狀動脈生成網格來執行轉換成矢量格式,隨后可以應用根據心動周期的諸如速度和壓力信息的邊界條件,并選擇合適的粘度模型來模擬非牛頓流體,以求解流體流動方程并獲得結果。可以觀察到流體流動的壁剪切應力,速度和壓力,以預測動脈粥樣硬化的原因并確定最佳干預方法 。
曲線曲面的表示方法
曲線曲面表示:最重要的兩種,隱式和參數表示
隱式表示和參數表示各有各的優缺點,利用參數表示形式,很容易生成曲線(或曲面)上的有序點列(網格點),易于繪制和操作,但判斷給定點與曲線或曲面的位置關系比較困難;利用隱式表示形式則正好相反。
一般來說,一個成功的幾何造型系統往往同時用到以上的兩種技術,但是絕大多數CAD曲面均采用參數表示形式。
網格細化的目的:
三維模型的網格細化是基于網格離散曲面的一種表示方法,它可以從任意拓撲網格構造光滑曲面。
網格是有限元求解的基礎,求解器的工作,就是把空間里連續的變量按照網格進行離散化。因此,從通常意義上講,網格越細致,描述的變量就越精確。
基于任何有限元分析模型得到的精度都與所用的有限元網格直接相關。有限元網格用于將 CAD 模型分割為很多較小的域,我們稱之為單元,然后在這些單元上求解一組方程,這些方程通過在每個單元上定義的一組多項式函數來近似表示所需的控制方程。隨著網格的不斷細化,這些單元變得越來越小,從而使求解的結果越來越接近真實解。
網格細化過程是我們驗證有限元模型,并對軟件、模型和計算結果建立信心的關鍵步驟。
三維網格細分算法
每次細分都是在每條邊上插入一個新的頂點,可以看到隨著細分次數的增加,折線逐漸變成一條光滑的曲線。曲面細分需要有幾何規則和拓撲規則,幾何規則用于計算新頂點的位置,拓撲規則用于確定新頂點的連接關系。如下圖所示:
Catmull-Clark subdivision細分
Catmull-Clark細分是一種四邊形網格的細分法則,每個面計算生成一個新的頂點,每條邊計算生成一個新的頂點,同時每個原始頂點更新位置。下圖為Catmull-Clark細分格式的細分掩膜,對于新增加的頂點位置以及原始頂點位置更新規則如下:
設四邊形的四個頂點為v0、v1、v2、v3v_0、v_1、v_2、v_3v0?、v1?、v2?、v3?,則新增加的頂點位置為v=1/4?(v0+v1+v2+v3)v = 1/4*(v_0 + v_1 + v_2 + v_3)v=1/4?(v0?+v1?+v2?+v3?)
設內部頂點v0的相鄰點為v1、v2,…,v2nv_1、v_2,…,v_{2n}v1?、v2?,…,v2n?,則該頂點更新后位置為 ,其中α,β,γ\alpha,\beta,\gammaα,β,γ分別為α=1?β?γ\alpha= 1 - \beta - \gammaα=1?β?γ
設邊界頂點v0v_0v0?的兩個相鄰點為v1、v2v_1、v_2v1?、v2?,則該頂點更新后位置為v=3/4?v0+1/8?(v1+v2)v = 3/4*v_0 + 1/8*(v_1 + v_2)v=3/4?v0?+1/8?(v1?+v2?)
設內部邊的兩個端點為v0、v1v_0、v_1v0?、v1?,與該邊相鄰的兩個四邊形頂點分別為v0、v1、v2、v3v_0、v_1、v_2、v_3v0?、v1?、v2?、v3?和v0、v1、v4、v5v_0、v_1、v_4、v_5v0?、v1?、v4?、v5?,則新增加的頂點位置為v=1/4?(v0+v1+vf1+vf2)=3/8?(v0+v1)+1/16?(v2+v3+v4+v5)v = 1/4*(v_0 + v_1 + v_f^1 + v_f^2) = 3/8*(v_0 + v_1) + 1/16*(v_2 + v_3 + v_4 + v_5)v=1/4?(v0?+v1?+vf1?+vf2?)=3/8?(v0?+v1?)+1/16?(v2?+v3?+v4?+v5?)
設邊界邊的兩個端點為v0、v1v_0、v_1v0?、v1?,則新增加的頂點位置為v=1/2?(v0+v1)v = 1/2*(v_0 + v_1)v=1/2?(v0?+v1?)
Loop細分
Loop細分是一種三角形網格的細分法則,它按照1-4三角形分裂,每條邊計算生成一個新的頂點,同時每個原始頂點更新位置。下圖為Loop細分格式的細分掩膜,對于新增加的頂點位置以及原始頂點位置更新規則如下:
設內部頂點v0的相鄰點為v1、v2,…,vnv_1、v_2,…,v_nv1?、v2?,…,vn?,則該頂點更新后位置為
,其中
設邊界頂點v0v_0v0?的兩個相鄰點為v1、v2v_1、v_2v1?、v2?,則該頂點更新后位置為v=3/4?v0+1/8?(v1+v2)v = 3/4*v_0 + 1/8*(v_1 + v_2)v=3/4?v0?+1/8?(v1?+v2?)。
設內部邊的兩個端點為v0、v1v_0、v_1v0?、v1?,相對的兩個頂點為v2、v3v_2、v_3v2?、v3?,則新增加的頂點位置為v=3/8?(v0+v1)+1/8?(v2+v3)v = 3/8*(v_0 + v_1) + 1/8*(v_2 + v_3)v=3/8?(v0?+v1?)+1/8?(v2?+v3?)。
設邊界邊的兩個端點為v0、v1v_0、v_1v0?、v1?,則新增加的頂點位置為v=1/2?(v0+v1)v = 1/2*(v_0 + v_1)v=1/2?(v0?+v1?)。
等幾何分析中的網格細化策略
等幾何分析中的基本細化策略通常有三種:h-細化(基于節點插入),p-細化(基于基函數升階)以及k-細化(基函數升階和節點插入相結合)。等幾何分析中的細化策略能夠在保持計算機域幾何表示不變的情況下,增加計算的自由度。
增加一個內部節點的重復度會減小在該節點的非零基函數的數目。如果該節點的重復度是k, 最多在該節點上有p - k + 1 個非基零函數,而且在該節點的基函數是Cp?kC^{p-k}Cp?k連續的。
等幾何分析中,p-細化是由升階操作來完成的。在等幾何分析中,單元邊界處基函數是p-mim_imi?次可微的(mim_imi?為節點重復度),因此,當階次p升高時,節點矢量中每個單獨的節點值的重復度mim_imi?也必須同時提高,這樣原始曲線單元連接處的連接性才能保持不變。
新的控制頂點數目取決于已存在節點的重復度。在升階操作中,每個節點值的重復度加1,但沒有新的節點值增加。
問題:基函數升階中,控制頂點的個數按照什么規則來添加?應該加幾個?基函數的個數與什么有關?
? 在某點的基函數個數與次數n有關
? 控制頂點添加的個數比直接插入節點添加的個數少一個(只升一階的話)
? 升階過程中,新的控制頂點滿足:(n次升階為n+1次)
Qi=in+1Pi?1+(1?in+1Pi),i=0,1,...,n+1,P?1=Pn+1=0Q_i = \frac{i}{n+1}P_{i-1}+(1-\frac{i}{n+1}P_i),i=0,1,...,n+1,P_{-1} = P_{n+1}=0 Qi?=n+1i?Pi?1?+(1?n+1i?Pi?),i=0,1,...,n+1,P?1?=Pn+1?=0
k-細化策略:先在網格上采用升階操作,然后在進行節點插入產生多個單元
流體力學中拉格朗日法和歐拉法有什么不同
拉格朗日法是隨體法,跟隨某個流體質點一起運動,了解該質點的各項參數隨時間的變化情況,然后綜合流場中的所有流體質點得到整個流場的流動情況。
歐拉分析法是局部法,研究流場中某一固定點的各項參數隨時間的變化情況,然后綜合流場中的所有的固定點得到整個流場的流動情況。
?
總結
- 上一篇: 分析 C# 2.0 新特性 -- 空类型
- 下一篇: 学习笔记day5:inline inli