#二維(2d)和三維(3d)voronoi(泰森多邊形)(映射網格)生成插件

二維voronoi和三維voronoi的應用非常廣泛,而且網上也流傳了各種建立方法,有的是在MATLAB中建立模型后,通過編程導入到ABAQUS中,這個過程比較麻煩,這里引用一下技術鄰”CAE追夢者”在帖子(http://www.yqgqt.org.cn/content/post/428641)中介紹的方法:

***********************************

(1)首先在一特定的空間進行空間剖分獲得每一個晶核坐標對應的隨機數,借助MATLAB里面的Multi-Parametric Toolbox(MPT)工具箱賦有的 mpt_voronoi函數命令,生成帶有拓撲信息且具有指定大小和晶粒數目的三維Voronoi多晶體示意圖。

   (2)在ABAQUS/CAE中建立一個與MATLAB構建的三維Voronoi多晶體示意圖相同大小的Part模型,并劃上適量數目的網格單元,根據每一個單元編號的空間排布特點尤其是單元編號的排列規律,直接依次求得每一個單元體形心坐標。

   (3)求得每一個單元體的形心坐標后,接下來就是依次求取每一個單元的形心坐標與每個晶核的距離,最終把每一個單元歸屬于其形心坐標距離最近晶核所處的晶粒中。

   (4)把上述所得的每一個晶粒的編號和該晶粒包含的全部單元編號,最后用多級列表的方式存放于txt文本里,為后面修改INP文件做好準備工作。

 經過上面MATLAB部分的編程,僅僅只是得到了關于三維Voronoi圖的全部拓撲結構信息。為此必須得在ABAQUS生成的INP文件里的part部分編寫與晶粒數相同多的set集合,每一個set集合就作為一個晶粒。接著,在txt文本里找到該晶粒包含的所有單元編號寫入與之對應的set集合中完成整個建模。在INP文件里實現三維建模的具體步驟如下:

  (1)于ABAQUS/CAE模塊中創建單個3D/Deformable/Shell實體,選擇默認裝配,劃分網格類型為C3D8R的網格單元,接著在Job模塊中點擊Write Input命令生成相應的INP文件。

 (2)把之前所得的每一個晶粒的編號和該晶粒包含的全部單元編號作為一個set集合,最終把每一個set集合以多級列表的方式寫入已建立好的INP文件里對應的part部分。在ABAQUS里重新打開修改之后的模型(INP文件格式類型),并且在Color Code Dialog中選擇Color code by:Sets。

***********************************

這里基本介紹了如何在MATLAB中建立三維voronoi后再導入到二維中的詳細過程,python二次開發較繁瑣,另外也有通過python二次開發進行直接在ABAQUS中建立模型,具有代表性的的就是星辰北極星團隊開發的voronoi插件,使用起來非常方便,當然,個人也做了一個生成voronoi3d晶粒的程序,但是,這些都是先建立幾何模型后再進行網格剖分,網格的邊界和晶粒邊界一致,這樣對于三維voronoi來說,由于結構比較復雜,網格劃分起來往往都比較困難,要不然就是單元少網格不好,要不然就是網格還可以但單元太多了,這就比較糾結了,所以,我們想著通過現在也是比較流行的映射網格來劃分voronoi體,這樣就不會出現上面單元數量與單元質量之間的矛盾了,這方面具有代表性的是neper軟件,但是neper是一個基于linux的小眾軟件,大部分人都不懂或賴得使用,這里我們介紹一款ABAQUS的voronoi映射網格生成插件,二維的其實比較好做,只要生成了二維voronoi圖片,然后,結合我們前期帖子中介紹的基于實際形貌的映射網格生成方法即可得到,但是對于三維的模型,因為是3d空間,這種方法就無能為力了,因此只能通過二次開發編程實現。

二維模型:

插件程序及源碼圖示:

macroVoronoi.pyc

voronoi.pyc

voronoiDB.pyc

voronoiIcon.pyc

Voronoy_plugin.pyc

*

macroVoronoi.py

voronoi.py

voronoiDB.py

voronoiIcon.py

Voronoy_plugin.py

生成的幾何模型:

2.jpg
11.jpg
12.jpg

生成的映射網格(不區分晶界區域):

4.jpg

生成的映射網格(區分晶界區域):

3.jpg

三維模型:

插件程序及源碼圖示:

5.jpg  
6.jpg  

#n為種子點,晶粒數、

r1,r2,r3為長、寬、高

#mo為楊氏模量,po為泊松比

生成的映射網格(不區分晶界區域):

8.jpg

生成的映射網格(取邊界上的1/3單元作為增強顆粒):

7.jpg

使用插件可以極快速分分鐘生成想要的voronoi模型,而且這種網格劃分不會造成計算困難,對后續的分析提供了便利。

ABAQUS斷裂模擬收徒 ,保證快速學會各種ABAQUS斷裂模擬方法  1200/人(將享有各種插件以及程序,價值3000+、專門定制視頻、全程親自教學、各種模型調試及解答問題等等,傾囊相教)

如果有疑問或者想交流的可以站內聯系

以下內容為付費內容,請購買后觀看

二維和三維voronoi的插件及源碼,及相關例子cae文件

App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

22
2
10