【Abaqus 3D打印建模】之 极小曲面 II --python生成极小曲面

***请注意,附件仅为现式和隐士极小曲面生成和输出为stl的python代码,并不包括加厚***

***有加厚的需求,请看其他算例。加厚后输出的stl,也是空心封闭的壳,不是实心的实体***


0.算例

上一个帖子介绍了怎么用matlab建立极小曲面,详情见Matlab创建极小曲面

下面是个简单的算例,在y方向压缩极小曲面之Gyroid,几何模型建立方法见下文,建立后阵列并有画网格导入abaqus即可。

【Abaqus 3D打印建模】之 极小曲面 II --python生成极小曲面的图1

为了对比该极小曲面的应力水平,采用同样的材料做了单轴压缩,两种情况对比如图所示:

【Abaqus 3D打印建模】之 极小曲面 II --python生成极小曲面的图2

从图中可以看到,如果仅去极小曲面上的一个点作为其应力应变,其曲线甚至比实心立方体还高,显然这是不合理的。出现这种现象的主要原因是,此类细观结构或变形不均匀时,不能取一个点代表整个模型,不然很可能会出现较大的误差。对此问题,细观力学有些方法,比如作用力反作用力法,体积平均法等,但也有人认为对于细观结构,作用力反作用力法 不太合理。体积平均法的简单表达式如下:

【Abaqus 3D打印建模】之 极小曲面 II --python生成极小曲面的图3

即模型中每一个单元的应力(应变)对单元体积积分后,除以模型整个体积。上述应力应变曲线也证实,采用该方法能够得到较为真实的数据。

那么,怎么通过体积平均法获得数据呢? 在计算结束后,需要通过python脚本对数据进行处理,输出中需要EVOL(单元体积)以便获得各个单元的体积。

1.介绍

之前已经介绍过什么是极小曲面,同时根据表达式定义为 隐式 和显式 极小曲面,主要区别是 隐式极小曲面一般只有一个方程,不容易将x,y,z独立表达出来,如下图所示:

1.png

今天介绍怎么用python生成上述极小曲面并输出为stl文件。

  1. 安装包:需要mayavi、vtk、traits及numpy等依赖包,可以从python第三方库下载,或者从https://pan.baidu.com/s/17Aa-Qv6YqvVLXjVqgW1b4A,(br5n)下载安装;
  2. 需要用到mayavi的mlab函数,实际上建模思路跟matlab完全一样,即先建立点阵区域,再从中获取满足极小曲面方程的点。
  3. 生成曲线的代码:

隐式曲线代码:

import numpy as np
from numpy import mgrid,pi,cos,sin,sinh,cosh
from mayavi import mlab
import mayavi
x, y, z =mgrid[-pi:pi:10j,-pi:pi:10j,-pi:pi:10j]v=cos(x)+cos(y)+cos(z)
iso=mlab.contour3d(x, y, z, v,contours=[0])
mlab.axes()
mlab.show()
D.png

显式曲线代码:

import numpy as np
from numpy import mgrid,pi,cos,sin,sinh,cosh
from mayavi import mlab
import mayavi,vtk
u,v=mgrid[-2*pi:2*pi:40j,-10:10:200j]
x=u*cos(v)
y=u*sin(v)
z=(2/3)*v
iso= mlab.mesh(x, y, z)
mlab.axes()
mlab.show()
C.png

2.导入abaqus

无论是python还是matlab,不提供直接转换为abaqus可支持的格式,因此还是需要相应的脚本去转换,思路就是把上述过程中生成的点坐标信息按照stl文件格式写入即可。

至于加厚,如前面解释过,需要其他CAD软件辅助或自己编个小脚本即可。

附件包括隐式和显式曲线生成代码及转换stl格式的脚本。

3.下期预告

无论是用matlab还是python,都需要额外的脚本,或甚至要安装些依赖包,众所周知,python的某些安装包,如上面的traits安装起来其实挺麻烦的。基于以上的考虑,本人做了个简单的软件,下期跟大家分享。

由于并非程序猿出身,基于python打包的,把其他乱七八糟的库打包进去了,大概在200M左右。但不需要安装,直接运行即可。其特点包括:

1、解压即可运行;

2、内置典型极小曲面,直接可以生成,并可以输出stl或各种图片格式以及eps等多种格式;

3.png

3、可以加厚,并不需要额外的CAD软件辅助;

4、xyz的范围可以自定义,同时根据需求输入曲面表达式可以生成任何曲面(几乎)。

4.png

欢迎咨询讨论:QQ180280578、微信allisforA

该付费内容为:隐式、显式极小曲面生成脚本及 stl转换脚本

包含1个附件 9人购买
(15条)
默认 最新
学习学习
评论 点赞 1
你好啊,付费了以后,点击压缩包为啥下载不了,是空白
评论 1 点赞
回复
能下载的,要么换个浏览器试试
评论 点赞

查看更多评论 >

点赞 9 评论 24 收藏 10
关注