二維隨機多邊形骨料腳本

1. 概述

       為了最優化混凝土、瀝青混合料等顆粒增強復材料的力學性能,對其細觀結構開展數值模擬仿真分析,開展級配優化設計和研究具有重要的意義。而建立包含隨機形狀,隨機尺寸和隨機位置的骨料顆粒是進行顆粒增強復合材料力學性能數值模擬分析的前提和基礎。

       小編在前一篇文章中給大家分享了一種建立三維隨機骨料模型http://www.yqgqt.org.cn/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
登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

20
8
27