首页/文章/ 详情

Abaqus二次开发之Python(1)

1年前浏览896

    从今天开始,木木要进行Abaqus的二次开发,其中包括用Python编写脚本,用Fortran或者Matlab编写本构,二次开发是今后有限元分析的趋势,所以在业余时间学习了解一下是很有必要的。

    Pyhon比较可视化,受到木木的青睐,Fortran和Matlab编写本构的时候个人感觉出错率高,枯燥乏味,但是要想在二次开发中掌握核心技术,还是要学习本构的开发,可以先从Pyhon入手逐渐培养二次开发的兴趣逐渐接触内核。在接下来研究生生涯过程中,木木会将二次开发的相关知识嵌入到自己的研究课题中,当然会在这个公 众 号中展示,以供有需要的同学学习。

    先给大家上个小菜,只需三行命令即可在PPT或者报告中呈现高大上的视觉效应。




for y in range(360):  session.viewports['Viewport: 1'].view.rotate(xAngle=0, yAngle=1, zAngle=0,     mode=MODEL)


    开始今天的二次开发的点点滴滴

    看了曹金凤曹博士的书后,感觉获益良多,于是就想着自己动手开始做。一开始的时候比较顺利,按照书中的指引step-by-step操作,可是当要写比较长的代码时,涉及到注释,看似不起眼的注释,却给我带来极大的困扰。

    我按照书中资源包里面的源代码进行编写,由于Python是面向对象的编程,up-to-down一步步进行,编写的时候想着写一部分运行一部分,看看这部分的代码到底是怎样运行的,于是费解的事情就此发生了,用中文注释的时候,每次运行到注释行的时候就会报错,我把注释行删掉,又可以重新运行了,但是对于行数较多的代码来说没有注释行的话,自己读起来比较费劲,别人就更不用说了,百般思索,为什么例子中的中文注释就可以,我的就不行,刚开始想着编译器的问题,我已开始用的Sublime,然后我换用Editplus,也无济于事,最后又换用Pycharm,还是不行,灵机一动,那我用英文注释可以吗?果然可以。好嘛,那以后只能用英文注释了,还可以提升英语能力,何乐而不为。部分代码如下
























#create ModelmyModel = mdb.Model(name='Beam')

import part
#create sketchmySketch = myModel.ConstrainedSketch(name='beamProfile', sheetSize=250.)
#create rectangle sectionmySketch.rectangle(point1=(-100,10), point2=(100,-10))
# create three_D partmyBeam = myModel.Part(name='Beam', dimensionality=THREE_D,         type=DEFORMABLE_BODY)
# Extrude partmyBeam.BaseSolidExtrude(sketch=mySketch, depth=25.0)
import material
# create MaterialmySteel = myModel.Material(name='Steel')


    以上就是今天编写脚本时遇到的小插曲,现在只会按照书中源代码Step-by-Step地进行,熟能生巧,相信假以时日会写出属于自己的代码,开发自己的插件,定义自己想要的本构

来源:易木木响叮当
Abaqus二次开发
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-05-31
最近编辑:1年前
易木木响叮当
硕士 有限元爱好者
获赞 219粉丝 258文章 348课程 2
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈