用于在矩形边界内填充矩形骨料,矩形骨料长度可按范围指定,同时可控制矩形骨料间的最 小间距(如果为负数,则表示矩形可相交)。
图1.1 二维矩形骨料填充模块
用于在矩形边界内填充椭圆骨料。
图1.2 二维椭圆骨料填充模块
1.3.1 矩形边界圆形骨料填充模块
用于在矩形边界内填充圆形骨料,支持指定圆形骨料尺寸范围。
图1.3 二维圆形骨料填充模块(矩形边界)
1.3.2 圆形边界圆形骨料填充模块
用于在圆形边界内填充圆形骨料,支持指定圆形骨料尺寸范围。
图1.4 二维圆形骨料填充模块(圆形边界)
1.3.3 双层圆形骨料填充模块
用于在矩形边界内填充双层圆形骨料,每一种尺寸骨料可带一个偏置层(如指定0,则表示不附加偏置层)。
图1.5 二维双层圆形骨料填充模块
用于在长方体边界内随机填充纤维,可控制纤维长度在某一范围内变化,同时可控制纤维间的最小间距。
图2.1 三维纤维填充模块
用于在长方体边界内随机填充圆柱骨料,可控制骨料长度在某一范围内变化,同时可控制圆柱骨料间的最小间距。
图2.1 三维圆柱骨料填充模块
用于在长方体边界内随机填充椭球骨料,可控制椭球骨料间的最小间距。
图2.2 三维椭球骨料填充模块
2.3.1 长方体边界球体骨料填充模块
用于在长方体边界内填充球体骨料,支持指定球体骨料尺寸范围,并可控制球体骨料间的最小间距。
图2.3 三维球体骨料填充模块(长方体边界)
2.3.2 圆柱边界球体骨料填充模块
用于在圆柱边界内填充球体骨料,支持指定球体骨料尺寸范围,并可控制球体骨料间的最小间距。
图2.4 三维球体骨料填充模块(圆柱边界)
2.3.3 双层球体骨料填充模块
用于在长方体边界内填充双层球体骨料,每一种尺寸骨料可带一个偏置层(如指定0,则表示不附加偏置层)。
图2.5 三维双层球体骨料填充模块
用于在长方体边界内梯度填充球体骨料,可控制球体骨料间的最小间距。
图2.6 三维梯度球体骨料填充模块
在50x50的矩形边界上填充宽度为2.5,长度在1~10变化的矩形骨料,按最大数量填充,填充结果如下图所示,填充率可达40%左右。
图3.1 二维矩形骨料填充示例
在50x50x50的长方体边界内,填充最大600个半径为5.0的球,最小间距为0.001,下图为两种不同算法生成结果对比:
(a) Random算法生成结果 (121) | (b) Optimization算法生成结果 (221) |
图3.2 Random和Optimization算法球体骨料填充对比
从结果中可以看出,Optimization算法填充率远高于Random算法,能够得到更加致密的骨料填充模型。
梯度球体骨料填充模块提供了自定义分布模式(UDF选项),选择UDF选项后,Size Limit将转换为文件输入接口,用户需选择一个后缀.py的Python代码文件,文件中需包含一个getSize(x, y, z)函数接口,该函数返回当前位置晶体的尺寸(>0),文件模板见示例:
#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.3 梯度球体骨料填充(UDF程序接口模板)
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删