ABAQUS随机骨料python二次开发代码——二维椭圆颗粒生成

  1. 在<a href="/major/abaqus">ABAQUS中生成的模型展示

    可以根据自己的需要调整粒径大小和数量。

微信图片_20220918210912.jpg
微信图片_20220930093409.jpg

ABAQUS随机骨料python二次开发代码——二维椭圆颗粒生成的图3

2.部分代码展示

角度范围 0-90

import math

#定义创建椭圆的函数

def create_ellipse(centerx,centery,a,b,angle):

 s1.EllipseByCenterPerimeter(center=(centerx,centery), axisPoint1=(centerx+ a*math.cos(angle),centery+a*math.sin(angle)), axisPoint2=(centerx- b*math.sin(angle),centery+b*math.cos(angle)))

import random

center_coord = []

center_coord3D=[]

while len(center_coord) < number:

    centerx = random.uniform(0 + max_diameter/2,length-max_diameter/2)

    centery = random.uniform(0 + max_diameter/2,width - max_diameter/2)

    error = 0

    for result_x,result_y in center_coord:

        if ((centerx - result_x)**2 + (centery - result_y) ** 2) ** 0.5 < max_diameter:

            error = 1

            break

    if error == 0:

        center_coord.append([centerx,centery])

        radius = max_diameter/2

        angle = random.uniform(0,math.pi*2)

        create_ellipse(centerx,centery,a,b,angle)

备注:代码很长请付费立得代码压缩包,谢谢合作。

该付费内容为:ABAQUS随机骨料python二次开发代码——二维椭圆颗粒生成

包含1个附件 18人购买
(2条)
默认 最新
可以圆形、三角形、四边形随机嘛
评论 点赞
您好,我已购买压缩代码,请问该如何使用呢?
评论 1 点赞
回复
全选复制到对话框就能用哦
评论 点赞
点赞 评论 3 收藏 1
关注