6.0版本相对于5.0版本做了一系列的功能升级和模块新增,首先升级了基础的三维voronoi模块以及梯度晶模块,然后增加了带权重的二维voronoi和周期性边界,当然三维周期性的voronoi也增加到当前的版本中,此外6.0版本新增了网格映射模块(Mapping VoronoiEG)、用户自定义模块(UserDefine VoronoiEG)、流动两相模块(Fluid VoronoiEG ) 、泡沫结构模块(Foam Structure )以及周期性网格模块(Periodic Mesh).
5.0版本介绍:
晶体塑性有限元 Abaqus 三维泰森多边形(voronoi模型)插件 V5.0
1. 插件启动方式
首先启动Abaqus界面,单击菜单栏AbqVoronoi,点击子菜单中的选项可启动不同的晶体模型生成模块,包括:Voronoi2D模块(生成二维Voronoi模型)、Voronoi3D模块(生成三维Voronoi模型)、VoronoiEG模块(生成网格型Voronoi模型)和VoronoiTool(其他辅助工具),如图所示:
图1.1 启动三维多晶模型生成插件
2. Voronoi2D模块
Voronoi2D模块包括:Basic Voronoi2D模块、BSpline Voronoi2D模块和Weighted Voronoi2D模块,其中Basic Voronoi2D模块可生成矩形和圆形边界的二维Voronoi晶体模型;BSpline Voronoi2D模块可生成在每个晶胞中填充B样条曲线的模型。
2.1 Basic Voronoi2D模块
BSpline Voronoi2D模块用户输入界面如下:
图2.1 Basic Voronoi2D模块矩形边界模型用户界面
图2.2 Basic Voronoi2D模块圆形边界模型用户界面
2.2 BSpline Voronoi2D模块
BSpline Voronoi2D模块用户输入界面如下:
图2.3 BSpline Voronoi2D模块用户输入界面
2.3 Weighted Voronoi2D模块【新】
Weighted Voronoi2D模块用户输入界面如下:
图2.4 Weighted Voronoi2D模块用户输入界面
2.4 Periodic Voronoi2D模块【新】
Periodic Voronoi2D模块用户输入界面如下:
图2.5 Periodic Voronoi2D模块用户输入界面
3. Voronoi3D模块
Voronoi3D模块包括:Basic Voronoi3D模块、Multiphase Voronoi3D模块、Weighted Voronoi3D模块、Gradient Voronoi3D模块、Periodic Voronoi3D和UserDefine Voronoi3D模块。
3.1 Basic Voronoi3D模块【功能升级】
(1) Basic Voronoi3D模块生成长方体边界模型的用户输入界面如下:
图3.1 Basic Voronoi3D模块长方体边界模型用户输入界面
(2) Basic Voronoi3D模块生成圆柱体边界模型的用户输入界面如下:
图3.2 Basic Voronoi3D模块圆柱体边界模型用户输入界面
(3) Basic Voronoi3D模块生成球体边界模型的用户输入界面如下:
图3.3 Basic Voronoi3D模块球体边界模型用户输入界面
(4) Basic Voronoi3D模块生成长方体拉伸模型的用户输入界面如下:
图3.4 Basic Voronoi3D模块长方体拉伸模型用户输入界面
(5) Basic Voronoi3D模块生成圆柱体拉伸模型的用户输入界面如下:
图3.5 Basic Voronoi3D模块圆柱体拉伸模型用户输入界面
3.2 Multiphase Voronoi3D模块
Multiphase Voronoi3D模块的用户输入界面如下:
图3.6 Multiphase Voronoi3D模块用户输入界面
Cell Size输入参数说明:(1) Size[radius]列指该相晶体的半径大小,记为; (2) Num列指该相晶体的数量,记为。和需保证以下关系:
式中为多相晶体相数,为长方体总体积。
该模块支持用户输入固定位置晶胞,点击“Set Fixed Grain”按钮可进行相应输入,输入界面如下:
图3.7 固定晶胞参数输入界面
3.3 Weighted Voronoi3D模块
Weighted Voronoi3D模块的用户输入界面如下:
图3.8 Weighted Voronoi3D模块的用户输入界面
Cell Info输入参数说明:(1) Ratio列指该相晶体体积和占体积的比率,记为,必须保证; (2) Num列指该相晶体的数量。Ratio列中支持存在一个为“-1”的值,其Ratio值为。
3.4 Gradient Voronoi3D模块【功能升级】
Gradient Voronoi3D模块的用户输入界面如下:
图3.9 Gradient Voronoi3D模块用户输入界面
Cell Size输入参数说明:Size Limit代表Z方向上下边界的晶体大致半径,支持3种分布:Ramp、Pow2和UDF(用户自定义尺寸场),前两种分布晶体大致大小随Z的变化如下:
图(a) Ramp分布 | 图(b) Pow2分布 |
图3.10 Gradient Voronoi3D模块晶体大小分布
对于UDF分布,用户需自己使用Python编程语言编写一个尺寸场分布程序,即复写getSize(x, y, z)函数中的内容,函数返回值为一个大于0的浮点数,其意义为该点的晶体尺寸(半径)。
例如:在1×1×1的方盒中,晶体在方盒中的尺寸分布为:
将该尺寸分布函数转为Python程序,参考示例如下:
#coding:utf-8
import math
def getSize(x, y, z):
################################################
size = 0.2*math.sqrt((x-0.5)**2+(y-0.5)**2)+0.025
################################################
return max(size, 1E-5)
if __name__ == "__main__":
print(getSize(0., 0., 1.))
生成结果如下图所示:
图3.11 圆周分布的梯度晶体模型示例
3.5 Periodic Voronoi3D模块【新】
Periodic Voronoi3D模块生成用户输入界面如下:
图3.12 Periodic Voronoi3D模块用户输入界面
3.6 UserDefine Voronoi3D模块
UserDefine Voronoi3D模块生成用户输入界面如下:
图3.13 UserDefine Voronoi3D模块自定义Part用户输入界面
图3.14 UserDefine Voronoi3D模块自定义形核点用户输入界面
4. VoronoiEG模块
VoronoiEG模块包括:Basic VoronoiEG模块、Mapping VoronoiEG模块、UserDefine VoronoiEG模块、Smoothing VoronoiEG模块和Fluid VoronoiEG模块;
4.1 Basic VoronoiEG模块
Basic VoronoiEG模块用户输入界面如下:
图4.1 Basic VoronoiEG模块用户输入界面
4.2 Mapping VoronoiEG模块【新】
Mapping VoronoiEG模块用户输入界面如下:
图4.2 Mapping VoronoiEG模块用户输入界面
4.3 UserDefine VoronoiEG模块【新】
UserDefine VoronoiEG模块用户输入界面如下:
图4.3 UserDefine VoronoiEG模块用户输入界面
4.4 Smoothing VoronoiEG模块
Smoothing VoronoiEG模块用户输入界面如下:
图4.4 Smoothing VoronoiEG模块用户输入界面
其中参数Type有两个可选项,分别为Closed和Open。Close代表所有晶体均封闭;Open代表边界处的晶体为开口状态。
4.5 Fluid VoronoiEG模块【新】
Fluid VoronoiEG模块用户输入界面如下:
图4.5 Fluid VoronoiEG模块用户输入界面
Fluid VoronoiEG模块Period Num可以控制某一方向的复杂程度,数值越大越复杂,取值范围为1-10;Volume Ratio参数用来控制两相的体积比;
5. 其他工具
5.1 Voronoi Orientation模块
目前插件提供晶体随机取向设置模块,其用户界面如下图所示:
图5.1 晶体随机取向设置模块用户界面
其中Rotation Type参数有4个可选项,分别为Full Random、X Rotation、Y Rotation和Z Rotation。Full Random表示晶体取向完全随机;X Rotation表示所有晶体取向的X方向不变;其他两个选项亦同。
5.2 Foam Structure模块【新】
目前插件提供由Voronoi 3D模型转泡沫结构模型的一键转换工具,无需手动处理模型,如果选择的模型为0厚度晶界模型(不存在实体晶界部分),则会生成壳模型;否则仅保留实体晶界部分作为泡沫模型,其用户界面如下图所示:
图5.2 Voronoi 3D模型转泡沫结构模型模块用户界面
5.3 Periodic Mesh模块【新】
目前插件提供由Periodic Voronoi模型周期性网格划分工具,可保证在对应的周期面上生成网格的节点一一对应,网格类型仅支持四面体网格,其用户界面如下图所示:
图5.3 Periodic Mesh模块用户界面
6. 插件通用参数说明
(1) 生成算法:Uniform和Random算法。Uniform生成的模型每个晶体大小比较均匀,Random算法生成的模型晶体大小比较随机,并受最小距离约束(该参数可一定程度控制晶体均匀度)
图(a) Random算法 | 图(b) Uniform算法 |
图6.1不同生成算法生成的晶体模型结果
(2) Gap参数:Gap参数用于设置晶界的厚度。若Gap值设置为0,代表晶体无实体晶界;若Gap值设置大于0,则会在所有晶体间生成指定厚度的实体晶界,厚度值为Gap值,如图所示:
图6.2 晶体实体晶界厚度示意图
7. 其他可间接生成的模型
7.1 线框模型
生成的Voronoi模型经过处理后可生成如下图所示的线框模型,可用于梁/杆单元有限元分析:
图7.1 线框模型示例
7.2 支撑结构模型
插件可对自定义模型生成Voronoi支撑结构,示例如下:
图7.2 支撑结构模型示例
7.3 泡沫结构模型
插件生成的Voronoi模型经过处理后可得到泡沫结构模型,可用于泡沫结构的力学性能有限元分析,可生成的泡沫结构模型的类型如下:
图(a) 壳模型 | 图(b) 实体模型 |
图(c) 网格模型 | 图(d) 特殊分布模型(Weighted模型) |
图7.3 泡沫结构模型示例
注:任何可生成三维几何Voronoi模型的模块均可用于创建泡沫结构模型。
7.4 多种梯度模型
插件支持任意梯度分布模型,示例如下:
图(a) 自定义场分布曲线1 | 图(b) 自定义场分布曲线2 |
图(a) 自定义场分布曲线1结果 | 图(b) 自定义场分布曲线2结果 |
图7.4 不同梯度分布模型
7.5 几何模型到网格模型的快速映射
插件支持Voronoi 3D几何模型到网格模型的映射,示例如下:
图(a) Voronoi 3D几何模型 | 图(b) 几何到网格的映射结果 |
图7.5 几何模型到网格模型的映射结果
7.6 流体网格模型
不同参数条件下的流体网格模型,示例如下:
图(a) 流体模型示例1 (Period Num:x=4, y=4, z=4, ratio=0.5) | 图(b) 流体模型示例2 (Period Num:x=4, y=4, z=8, ratio=0.5) |
图7.6 不同参数条件下的流体网格模型
8. 模型生成速度
图8.1 模型生成时间随晶体数量变化曲线