hello,大家晚上好。前几天感冒了,脑子转不过弯,子程序写不了,脚本不想写。好在没发烧,还好在疫情的低风险区域,不然就要被拉去隔离了。跟兄弟们隔栏相望了。所幸今天已经好多了,各位不要为我担心啊。
这几天,虽然我还没更新,但是我还是活在b站和知乎里的。回答大家的一些问题。当然还遇到了等我的更新等的不耐烦的可爱小粉丝。我也是无能为力呀,身体实在是顶不住啦。
催更大佬就是来自魔仙堡的,在我的评论处疯狂给我加能量。虽然你经常给我打赏一块钱,但是我是能用钱收买的吗???是能用钱催我的吗??
?
?
?
?
?
在这里,我只想对你说一句话:看人真准
因为公众号的文章底下不能评论,这是我心中的痛呀,申请的晚了,所以没有留言功能。如果你有问题,可以直接在我的公众号后台给我留言就行,我每天都会看,会回复。或者在bilibiil专栏下给我互动,那里有留言功能。
所以我准备今年后半年,也就是2021年9月才能开通好友功能和视频功能,各位如果有问题,留言给我即可。所以,咱们先做个云好友。
0 今日任务
好啦,开始今天的教学吧。看过我动态的都知道(我会在b站发一些动态),今天的内容,就是三维短纤维增强复合材料模型脚本建模的教学。其实我都不知道这个纤维多短才能叫短纤维,所谓闻道有先后,术业有专攻。我不知道也是正常的对吧,大家有知道的,欢迎留言告诉我,帮我扫一下盲。对于脚本而言,长的也能做,短的也能做,只是改个变量的值而已。
纤维在abaqusl里的建模有两种办法,一种是实体,一种是线:
1)实体,顾名思义就是实体,看图说话,就是像下面这种。
2)一种是无厚度的线纤维,可以赋予截面属性,单元,像下面这种。通过截面赋予厚度。
truss单元或者beam。就像下图这样,这个是有厚度的truss的样子。
1 脚本思路
上面已经说了两种建模的思路。一种是线纤维。一种是实体纤维。我们今天先说线纤维的做法,明天说实体纤维的脚本做法。
1 生成基体
2 定义纤维的属性,纤维的长度及数量
3 随机生成纤维的起点
4 随机生成纤维的转动角度
5 干涉判断
6 abaqus里重构
这里说两个特别重要的点:
一:纤维的两点坐标的确定方法
为了形象的说明怎么做的,我特意特地特别的手绘了一幅图。加上我的真迹注释。之赏心悦目,俗话说,见字如见人。详细大家看到我字,就可以想象到我的颜值了。虽然我给各位展示的都是一些帅气飘逸的操作,但是实际上,我的颜值远胜于我的操作,从我这飘逸潇洒的字,就能看得出来了啊。
各位自行可以脑补一下我的颜值。
为了不影响各位的学习,特别是女粉丝的,我就不给各位看了啊。大家看我的字就行。
二:纤维的干涉判断
为什么要做干涉判断呢,因为随机的纤维的是有可能干涉的。比如,下面这种
有干涉的情况,对于分析来说是个负重。特别是通用接触的时候,所以,我们尽可能的让每个纤维都独立开。这就需要干涉判断了。
干涉判断的思路是,判断两个线段的最短距离,这个最小距离要比圆柱纤维的直径要大,如果满足次条件的纤维才是符合要求的纤维。否则,就要重新生成。
下面我就说一下,干涉判断的思路:
method 1
method 2
2 脚本实现
首先,最最最重要的,就是实现方法二中的干涉判断:
整体的思路,就是按照我们上面分析的,分别在两个线段上取num个点,两两匹配测距离。
干涉写完之后,剩下的就简单了。先把基体画出来,已经不说了。简单到令人发指,如果我的粉丝,特别是老粉丝们,还有不知道的,私聊我一下,我送一个栗子套装。
然后,就是随机去点,做干涉判断了:
到这里,其实我们已经把坐标算出来了,存在points列表里,但是,还没画出来。是不是,所以大家可以看得出,我一般处理脚本,都是先处理数据,然后在abaqus里重构。重点内容,向来都是怎么做数据处理,重构很简单,函数都有,在rpy里。有时候一句话就搞定了。
比如,我们今天最后的部分,纤维重构的代码:
重构就这么点内容
所以大家的侧重点,都是数据处理方面的内容,都是数学方面的内容。abaqus里的函数,写的是很少很少的。各位要把数学好好学,否则就跟我一样了,只能想一些简单的办法二,方法一就做不出来了。
3 结果展示
写完了,当然是要测试结果啦:
完整源码:
https://github.com/wuhuiguo/Abaqus/tree/first/python_script
那今天的内容就到此为止了,有问题欢迎给我留言。明天我们写实体模型的建模。88
是故弟子不必不如师,师不必贤于弟子。问道有先后,术业有专攻。