在使用CAD建模工具和各種仿真軟件中,可能會(huì)碰到類似如下警告: The geometry is non-manifold... Non-manifold vertixs exist... 關(guān)于Non-manifold(非流形體),數(shù)學(xué)解釋比較復(fù)雜。通俗講該幾何現(xiàn)實(shí)中不存在或無法制造。最典型的例子就是兩個(gè)相同的立方體,完全相互接觸,接觸所在的共享面就是非流形體。該共享面既不能獨(dú)立存在,也不能單獨(dú)歸在兩個(gè)實(shí)體中的一個(gè)。在實(shí)踐中,拓?fù)涿嫦碌膸缀螖?shù)據(jù)相同。 在三維CAD建模中,如果出現(xiàn)非流形體,也就意味著幾何有重疊,干涉。 以下內(nèi)容來自網(wǎng)絡(luò): 流形(manifold)是一個(gè)幾何拓?fù)湫g(shù)語(yǔ),意思是:允許不相交的塊存在于單個(gè)邏輯體中。 非流形(Non-manifold )則意味著:所有不相交的塊必須是它們自己的邏輯體。 當(dāng)然,這個(gè)定義往往更令人困惑,所以也許考非流形和流形的最佳方式是這樣的:流形本質(zhì)上意味著“可制造的”,非流形意味著“不可制造的”。換句話說,流形的意思是:你可以用一塊金屬加工出形狀,對(duì)于非流形,你不能。 當(dāng)使用諸如CATIA V5之類的非流形建模應(yīng)用程序時(shí),例如,在創(chuàng)建非常大且復(fù)雜的部件時(shí),可能會(huì)從布爾、混合、清掃、放樣、抽殼等操作中無意中創(chuàng)建非流形對(duì)象。將這些非常大且復(fù)雜的非流形實(shí)體保存為流形建模格式時(shí),這些對(duì)象需要在非流形位置進(jìn)行“拆分”。當(dāng)不能創(chuàng)建實(shí)體時(shí),就創(chuàng)建一個(gè)表面模型。一般的模型檢查器也會(huì)檢查此類問題,給出報(bào)告。 以上內(nèi)容來自網(wǎng)絡(luò) 在仿真中,非流形體是一個(gè)非常重要的概念。結(jié)構(gòu)中不同單元連接,接觸,復(fù)合材料,散熱,CFD多流場(chǎng),EDA,TCAD,在這些分析中,最大的特點(diǎn)是不同屬性(不同的材料,幾何層,業(yè)務(wù)屬性等)的幾何要在一起分析,而且不同屬性的幾何之間相互接觸! 在以網(wǎng)格作為輸入的仿真中,輸入數(shù)據(jù)的網(wǎng)格單元必須是conformal(整體網(wǎng)格連接性要保持完整),即網(wǎng)格中不能存在多余的點(diǎn)和線,需要全部是相互連接的網(wǎng)格,否則求解器端就需要進(jìn)行額外的插值處理,以保證計(jì)算區(qū)域的連續(xù)性。 傳統(tǒng)意義上的幾何表達(dá)無法處理非流形體,所以在仿真處理中,一般是不同的幾何分別生成網(wǎng)格,然后對(duì)網(wǎng)格進(jìn)行合并。還有一種處理方法是在幾何中引入新的屬性,ACIS中叫元胞(Cell),OCC中也有類似的概念。 Cell結(jié)構(gòu)的特點(diǎn)是,在進(jìn)行布爾并運(yùn)算之后,原有的幾何都保留,屬性也保留,以剛才的兩個(gè)立方體為例,進(jìn)行布爾運(yùn)算之后,公共面會(huì)被保留,而且只會(huì)保留一個(gè)面,兩個(gè)實(shí)體的信息分別存儲(chǔ)在各自的Cell信息中。 傳統(tǒng)意義上的布爾并運(yùn)算則會(huì)將公共面去掉。 對(duì)于網(wǎng)格引擎而言,只要處理單純的面即可,在生成實(shí)體單元過程中,查詢對(duì)應(yīng)的Cell信息,就能給出原始幾何的屬性信息,這種方法相比網(wǎng)格合并要簡(jiǎn)單,而且網(wǎng)格質(zhì)量也更優(yōu)。 下圖是在FasCAD中進(jìn)行非流形體布爾并運(yùn)算: CAD和幾何其實(shí)不是公眾號(hào)介紹的重點(diǎn),但是由于仿真往往和幾何CAD緊密關(guān)聯(lián),所以不可避免的需要涉及,也是工業(yè)設(shè)計(jì)仿真軟件的基礎(chǔ)。目前CAD軟件里融入數(shù)值仿真功能,一些等幾何,無網(wǎng)格數(shù)值方法的應(yīng)用,生成式設(shè)計(jì)等,也是在強(qiáng)化CAD和仿真之間的無縫集成。 翻了下公眾號(hào)以往的內(nèi)容,幾何和CAD也占了相當(dāng)多內(nèi)容,后續(xù)根據(jù)實(shí)際情況再單獨(dú)打印一本書,主要還是以軟件研發(fā)為主。 |
|