Abaqus定制化开发:骨料随机分布与映射网格生成技术

0.出发点

用abaqus做细观模拟,随机填充颗粒/纤维是跳不过的坎,网上有很多插件或脚本,技术邻也有不少大咖做了些插件,但个人而言更倾向于脚本,虽然插件使用起来方便,不过有时需要根据具体要求修改模型,此时脚本的灵活性就体现出来了。今天跟大家分享怎么通过python编写随机填充骨料的思路:

  1. 二维模型,主要是将基体做partition,比较简单;而做partition用的草图就需要用python批量生成,操作跟普通CAE界面做partition类似。
  2. 三维模型直接用上述方法比较难,此时可以建立多个part,或将骨料作为一个part跟基体在assembly模块进行装配,并巧用Merge/cut功能即可。
  3. 网格映射法主要是通过将获得骨料中的点坐标,把它映射到已画好结构化网格的另一个part中;这种方法的有点在于施加周期性边界条件很方便。



1. 普通随机骨料填充

下面是按照上述思路编写的2D及3D骨料随机填充模型,其中二维模型支持圆形、椭圆及多边形(可定义边数),指定粒径和含量比较方便。

同时,根据粒径创建了set,方便后续赋予材料属性等操作:

2D.gif

但很多实际问题中,骨料粒径并不是定值,需要服从一定的分布规律,如下面是根据正态分布生成的模型:

2D_G.gif

三维模型建立的思路也类似:

3D.gif


2.周期性骨料随机生成

由于细观力学的特点,需要通过一定的边界条件将细观和宏观模型连起来,其中常用的就是周期性边界条件,结构也需要周期性以通过偏移、阵列等当时拼出整个材料。下面是在上述模型基础上修改的周期性骨料随机生成模型:

2D_PBC.gif

由此可见,通过一定的阵列,完全能拼出整个宏观模型。下面是三维情况:

3D_PBC.gif

在以上周期性模型上施加周期性边界条件,才算完整的解决了周期性模型问题。怎么施加周期性边界条件呢?可以在interaction模块中使用equation,如果模型较大、节点较多则还需要脚本或插件。




3.网格映射法

如前面所属,网格映射法生成随机骨料填充模型有些优势,一定程度上可提高精度,或说结构性网格好看;但其缺点也比较明显,当网格长度比较大时很容易导致骨料变形;此外如果参考模型中网格很细的话映射需要较长时间。下面是采用网格映射法建立的模型:

2D_pro.gif

其实是一个part,只是在原来骨料位置建立了单元集合。

下面是三维模型:

02.jpg

04.jpg

图中可以看到,基体材料边界上网格是结构化的。



4.后话

其实以上这些技术含量不高,但比较费时间,特别是“假装患有强迫症”的人,有时发个帖子都需要一整天;除非你正在做类似的项目,特意去做这些反而不值得。有的时候这些资源是收费的,我们购买这些资源并不是因为自己做不了,只是投入的精力可能远大于跟价钱。

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

相关推荐
技术文档
QR Code
微信扫一扫,欢迎咨询~

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

* 公司名称:

姓名不为空

手机不正确

公司不为空