二维随机多边形骨料生成脚本分享

1. 概述

为了最优化混凝土、沥青混合料等颗粒增强复材料的力学性能,对其细观结构开展数值模拟仿真分析,开展级配优化设计和研究具有重要的意义。而建立包含随机形状,随机尺寸和随机位置的骨料颗粒是进行颗粒增强复合材料力学性能数值模拟分析的前提和基础。

小编在前一篇文章中给大家分享了一种建立三维随机骨料模型https://www.jishulink.com/content/post/1850204的方法。本期小编将给大家带来二维随机骨料模型的建模方法。

随机椭圆随机圆和随机多边形.png



2. 二维随机骨料模型建模方法

方法一:将颗粒增强复合材料结构离散为体素模型,根据骨料含量模型中的一部分单元被假设为增强材料(骨料),另一部分单元作为基体材料(水泥、沥青、树脂等),该模型可用于研究骨料含量对材料力学性质的影响。

方法二:将颗粒增强复合材料中的增强材料(骨料)假设为圆形、椭圆形或正多边形颗粒;该模型可考虑骨料的含量、随机分布和级配,但是由于骨料的形状为固定形状(与实际相差太远),无法体现不同骨料之间的形状特点的随机性。

方法三:将颗粒增强复合材料中的骨料结构考虑为随机多边形,该模型可较好的考虑骨料的含量、随机分布、级配和骨料形状的随机性。

单个骨料.png



3.单个随机多边形骨料模型建模方法

本文按照以下步骤,基于ABAQUS使用Python建立单个随机多边形骨料:

第一步根据所需的骨料级配,在一定粒径下建立所需尺寸的外接圆(该圆为虚拟圆,下配图仅为参考图)。

第二步选取外接圆上一定数量(应大于等于3,可随机定义)的点。

第三步将所选的点依次连接。

单个骨料建模方法.png



4. 主要代码

与开发单个三维随机骨料模型类似,可先在ABAQUS/CAE中进行建模,然后参考rpy文件生成的python脚本,选择所需的语句进行开发。小编为大家提供了部分代码如下(仅供参考),如需完整代码或者python开发教学可联系小编(qq1871858827)。  

一定级配下生成随机粒径import random myradius = random.uniform(r_min,r_max)
将圆平均分为n份, 在每个区域范围内选点for i in range(NumEdgeOfAgg): AveAngle=2.0*pi/NumEdgeOfAgg MyAngle=random.uniform(i*AveAngle,(i+1)*AveAngle) MyAngles.append(MyAngle) for Angle in MyAngles: px = x + R*cos(Angle) py = y + R*sin(Angle) Points.append([px, py])
将所选的点依次连线构成多边形for i in range(NumEdgeOfAgg-1): MySketch.Line(point1=tuple(Points[i]), point2=tuple(Points[i+1])) MySketch.Line(point1=tuple(Points[0]), point2=tuple(Points[-1]))



5.效果演示

小编应用自己开发的脚本生成了一系列的二维随机多边形骨料模型。可见随着多边形阶数增加,根据小编提供的建模方法建模得到的随机多边形骨料模型趋于圆。

多边形骨料.png



6. 二维随机多边形骨料模型

成功开发单个骨料模型后,我们可以根据骨料级配生成一系列的单个随机多边形骨料模型,并存储于骨料模型库。通过随机选取骨料模型库中的骨料模型,将其随机分布于基体内,即可得到含随机多边形骨料的二维复合材料模型。

二维复合材料模型.png


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空