#二维(2d)和三维(3d)voronoi(泰森多边形)(映射网格)生成插件

二维voronoi和三维voronoi的应用非常广泛,而且网上也流传了各种建立方法,有的是在MATLAB中建立模型后,通过编程导入到ABAQUS中,这个过程比较麻烦,这里引用一下技术邻”CAE追梦者”在帖子(https://www.jishulink.com/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二次开发进行直接在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+、专门定制视频、全程亲自教学、各种模型调试及解答问题等等,倾囊相教)

如果有疑问或者想交流的可以站内联系或者qq1057593923

以下内容为付费内容,请购买后观看
该付费内容为:
包含 3个附件
售价: 0人购买

#二维(2d)和三维(3d)voronoi(泰森多边形)(映射网格)生成插件的评论2条

#二维(2d)和三维(3d)voronoi(泰森多边形)(映射网格)生成插件的相关案例教程

经过三个版本的迭代,工作室的泰森插件功能已经逐渐完善. 3.0版本介绍: 泰森插件3.0版本 为了满足更多客户的需求,现推出泰森插件5.0版本(不要问我为啥没有4.0 因为5.0比较好听),老客户也可以付一定费用升级到最新版本哦~ 1. 插件启动方式 首先启动Abaqus界面,单击菜单栏AbqVoronoi,点击子菜单中的选项可启动不同的晶体模型生成模块,包括:Voronoi2D模块(生成二维Vo
6.0版本相对于5.0版本做了一系列的功能升级和模块新增,首先升级了基础的三维voronoi模块以及梯度晶模块,然后增加了带权重的二维voronoi和周期性边界,当然三维周期性的voronoi也增加到当前的版本中,此外6.0版本新增了网格映射模块(Mapping VoronoiEG)、用户自定义模块(UserDefine VoronoiEG)、流动两相模块(Fluid VoronoiEG ) 、泡
插件介绍 Voronoi FGM 3D (Mesh) V1.0 - AbyssFish 插件可在Abaqus软件内生成梯度分布的三维泰森多边形长方体模型。插件可用于梯度功能材料(Functionally Gradient Materials)、梯度纳米金属材料、梯度金属结构、等梯度晶体模型的建立。模型基于背景网格实现,通过单元集的划分,将不同的晶格指定不同的材料类型。 使用说明 Length、Wi
三维Voronoi Voronoi又名泰森多边形或Dirichlet图、维诺图等,三维Voronoi是由连接两邻点直线的垂直平分面组成的连续三维多面体结构。Voronoi在各个学科中应用广泛,如进行区域规划、晶体塑性有限元研究、路径优化、地形简化、多孔结构力学等方面的分析。 CAD Voronoi3D CAD Voronoi 3D参数化建模插件可用于在AutoCAD软件内生成三维Voronoi模型
插件介绍 CAD Voronoi图、cad维诺图生成插件,用于在AutoCAD软件内生成泰森多边形冯洛诺伊图(Voronoi diagram)。 生成的voronoi图可导入COMSOL、abaqus、ANSYS等有限元分析软件进行科学计算。 插件采用Delaunay三角剖分算法生成三角网,进而生成Dirichlet图。 插件可设置生成的Voronoi图的长度、宽度、多边形数目、自定义控制点坐标等
博士/博士生
影响力
粉丝
内容
获赞
收藏
    项目客服
    培训客服
    2 6