ImageVerifierCode 换一换
格式:PPT , 页数:24 ,大小:2.08MB ,
资源ID:7886988      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/7886988.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(Python在ABAQUS二次开发中的应用实例.ppt)为本站上传会员【天****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

Python在ABAQUS二次开发中的应用实例.ppt

1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,Python,在,ABAQUS,二次开发中,的应用实例,主要内容,一、,ABAQUS,脚本概述,二、,Python,语言简介,三、,ABAQUS,脚本编写,一、,ABAQUS,脚本概述,ABAQUS,脚本概述,ABAQUS,软件简介,ABAQUS,是国际著名的,CAE,软件,它以解决实际工业问题能力和强大的非线性功能赢得广泛声誉。航空工业是,ABAQUS,最重要的应用领域之一,波音、空中客车、洛克希德,马丁等是其长期合作的用户。,ABAQUS,分析过程由三个步骤组成:,前处理(,ABAQUS/CAE,)

2、模拟计算,(ABAQUS/Standard,或者,ABAQUS/Explicit,);,后处理(,ABAQUS/CAE,)。,建模过程主要集中在前处理步骤中。,ABAQUS,脚本概述,ABAQUS,建模方法,常用的,ABAQUS,建模方法主要有三种:,在,ABAQUS/CAE,界面建模,优点:界面直观,简单易懂;,缺点:操作步骤繁琐,不利于修改,缺乏通用性。,通过,inp,文件建模,优点:可以直接在,ABAQUS,中提交;,缺点:只包含模型节点信息,代码较多,修改不便;,使用,Python,语言建模,优点:代码少,语言友好,可移,植性好,可进行参数化修改;,缺点:不够直观。,ABAQUS,

3、脚本概述,ABAQUS,脚本接口,ABAQUS,有限元分析软件二次开发环境提供的脚本接口,是基于,Python,语言进行的定制开发。,在,ABAQUS/CAE,中进行建模和进行后处理时,对话框中做的所有设置都由,ABAQUS/CAE,从内部发出与之对应的命令(,command,)。,ABAQUS,脚本接口直接与内核进行通信(,communicate,),而与,ABAQUS/CAE,的图形用户界面(,GUI,)无关。如果将所有的脚本接口命令存储于文件中,该文件则称为脚本(,script,)。脚本由一系列纯,ASCII,格式的,Python,语句组成,扩展名一般为,.py,。,ABAQUS,脚本概

4、述,ABAQUS,脚本接口,编写脚本可以实现以下功能:,自动执行重复任务;,进行参数分析;,创建和修改模型;,访问输出数据库(,ODB,文件);,定制,ABAQUS,环境文件;,创建,ABAQUS,插件程序。,编写完成的脚本文件,可以直接在,ABAQUS,运行,:,File,Run Script,,打开相应的,.py,文件,即可执行;,刚打开,ABAQUS,界面,直接选择,Run Script,也可;,可以在,GUI,界面下部的命令行接口输入脚本语句执行。,ABAQUS,脚本概述,创建,ABAQUS,脚本,创建脚本有,3,种常用方法:,在,GUI,建模时录制宏(,macro,),File,Ma

5、cro Manager,可以按需录制任何操作对应的命令,直接编辑,abaqus.rpy,文件,建模时工作目录下自动生成,abaqus.rpy,文件,使用软件,EditPlus,可以直接打开编辑,保存,.cae,文件并退出后才能生成,.rpy,文件,借助,PythonReader.exe,软件,中国石油大学焦中良开发,可以实时获取,CAE,每步操作对应的脚本命令,ABAQUS,脚本概述,调试,ABAQUS,脚本,调试脚本有多种方法,这里介绍,Abaqus,自带的,PDE,中的调试。,PDE,(,Python Development Environment,,,Python,开发环境)有以下功能:

6、编辑,Python,文件、调试,Python,脚本或插件;,创建,guiLog,脚本,录制所有的,GUI,动作;,通过,GUI,(,guiLog,)运行,Python,脚本或在,ABAQUS/CAE,之外运行,Python,脚本;,设置延迟(,delay,)和断点(,breakpoint,),并查看代码的执行情况;,在,watch,窗口中查看变量值等。,打开方式,File,Abaqus PDE,,然后打开相应的,.py,文件,即可编辑调试。,ABAQUS,脚本概述,调试,ABAQUS,脚本,点 按钮可以调试整个脚本文件;,点,按钮可以逐行调试脚本文件,调试行显示为蓝色;,点,按钮可以停止调试

7、文件;,点,按钮可以设置断点,调试时将调到此行为止;,点,按钮,然后点 按钮,可以录制,CAE,中的操作,点 可以停止录制。,二、,Python,语言简介,Python,语言简介,基本规则,代码按级别从大到小解读,之间用操作符“,.,”连接。如:,mdb.modelsModel-1.materialsBPCOMPOSITE.Depvar(n=5),表示将模型,model-1,的材料,BPCOMPOSITE,里的子程序相关参数设为,5,。,语句前加上,#,号,表示是注释内容,这个语句将不被执行;,使用中文注释,要在文件最开始加上:,#-*-coding:UTF-8-*-,以换行来识别一个逻辑语句

8、的结束。如果需要在一个物理行中编写多个逻辑语句,需要用分号分开。如:,x=1;y=2;z=3,。如果一个逻辑语句太长需要分行写,需要用反斜杠“,”进行连接(有括号括起来的内容就不用)。,不同代码块之间要注意用冒号和缩进来区分代码块之间的层次关系,如:,for i in range(0,b3):if(iAnglelowfgi=/):for l in range(0,i-j-1):c3k=c3k+iAnglelowfgj+l+1 j=i elif(iAnglelowfgi=):,Python,语言简介,保留字段,定义变量名、函数名的时候,避免使用保留字段。如:,保留字段,说明,and not or

9、逻辑“与”“非”“或”,break,中止循环语句,continue,继续执行下一次循环,class,定义类,def,定义函数或者方法,if else ,elif,条件判断语句,print,输出语句,while,循环语句,from import,导入模块,return,返回函数计算结果,Python,语言简介,数据类型,数据类型主要有数字类型、字符串类型;,数字类型主要有四种:整型,int,、长整型,long,、浮点型,float,、复数型,complex,;,Python,语言可自动判断数据类型,不需要编写者定义说明类型,如:,i=10.5,,即可。不需要用:,float i=10.5,;,

10、不同数据类型之间可通过函数转换,如,int,()、,float,()。,可以用替代符号表示定制字符串,如,stress=1234.56print The stress is%f MPa%stress,即可输出:,The stress is 1234.56 Mpa,符号,描述,符号,描述,%c,定制字符及其,ASCII,码,%o,定制无符号八进制数,%s,定制字符串,%x,定制无符号十六进制数,%d,定制整数,%f,定制浮点型数据,%u,定制无符号整数,%e,用科学计数法定义浮点型数据,Python,语言简介,运算符,主要有赋值运算符、算术运算符、逻辑运算符、关系运算符;,下表按优先级排列,从上

11、往下优先级增加。,运算符,描述,or,逻辑或,and,逻辑与,not,逻辑非,=,!=,=,小于,小于等于,大于,大于等于,不等于,等于,+,,,-,加、减运算,*,/,%,乘、除、取余数运算,*,指数运算,不支持自加或自减运算,如:,i+,、,i-,;,但类似,i+=1,这样的语句是可以的。,三、,ABAQUS,脚本编写,ABAQUS,脚本编写,定义和导入模块,在每个脚本文件的最开始处,首先要导入相应的,ABAQUS,模块;,每个步骤均有对应的模块,如,part,模块,,material,模块、,assembly,模块等,通过以下语句可以直接导入,cae,模块的所有对象,:,from,cae

12、Modules,import*,如果需要用到各种符号常数,如单元类型,C3D8R,,还要导入符号常数模块:,from,abaqusConstants,import*,定义和导入对象,还需要导入相应的,ABAQUS,对象,包括,Session,对象(包括视口、远程队列、视图对象),Mdb,对象(包括,Model,对象和,Job,对象),Odb,对象,通过类似如下的语句导入对象:,from,abaqus,import*,ABAQUS,脚本编写,创建新实体,myModel=mdb.modelsModel-1,myViewport=session.Viewport(name=Region syntax

13、origin=(20,20),width=200,height=100),mySketch=myModel.Sketch(name=Sketch A,sheetSize=200.0),mySketch.rectangle(point1=(-40.0,30.0),point2=(-10.0,0.0),mySketch.rectangle(point1=(10.0,30.0),point2=(40.0,0.0),door=myModel.Part(name=Door,dimensionality,=THREE_D,type=DEFORMABLE_BODY),door.BaseSolidExtru

14、de(sketch=mySketch,depth=20.0),通过以上语句,在,Part,模块中生成两个三维实体。,#,建立新模型,Model-1,#,创建新的视口,#,创建一个草图,并绘制两个矩形,#,对上面创建的两个矩形进行拉伸操作,生成三维部件,ABAQUS,脚本编写,装配实体、导入边界条件,myAssembly=myModel.rootAssembly,doorInstance=myAssembly.Instance(name=Door-1,part=door,dependent=OFF),pillarVertices=doorInstance.vertices.findAt(-40,

15、30,0),),(40,0,0),),myModel.StaticStep(name=impact,previous=Initial,initialInc=1,timePeriod=1),myPillarLoad=myModel.ConcentratedForce(name=pillarForce,createStepName=impact,region=(pillarVertices,),cf1=12.50E4),通过以上语句,装配实体,并施加边界条件。,此处使用了,findAt,语句来查找顶点。,#,导入实体,完成装配,#,选择两个顶点,#,创建静力分析步(,static,),#,在选择的

16、顶点上施加集中力,ABAQUS,脚本编写,findAt,语句简介,在,Abaqus,建模操作生成的,rpy,文件中,,Abaqus,将自动为模型的特征进行编号,每个节点,(node),、单元,(element),、顶点,(vertex),、边,(edge),、面,(face),、体,(cell),,都有对应的,ID,。,实例:对方形实体切割,p=mdb.modelsModel-1.partsDoorc=p.cellspickedCells=c.getSequenceFromMask(mask=(#1,),)v,e,d=p.vertices,p.edges,p.datumsp.Partition

17、CellByPlaneThreePoints(point1=v0,point2=v2,point3=v6,cells=pickedCells),如果后续对模型进行编辑(增加、删除),特征,ID,会改变,这时再用原来的语句就报错。,解决方法:用该特征的空间坐标来表示;,对于点,坐标是唯一的;对于线、面、体,上面的任一坐标都可以,但不要用两个特征的交点坐标。,p.PartitionCellByPlaneThreePoints(point1=(-10,30,0),point2=(-40,30,20),point3=(-40,0,20),cells=pickedCells),c.findAt(-25,

18、30,20),),ABAQUS,脚本编写,定义材料属性,mdb.modelsModel-1.Material(name=Steel),mdb.modelsModel-1.materialsSteel.Elastic(table=(220000.0,0.35),),mdb.modelsModel-1.HomogeneousSolidSection(name=Section-1,material=Steel,thickness=None),pickedCells=c:,p.Set(cells=pickedCells,name=Set-all),p=mdb.modelsModel-1.partsDo

19、or,c=p.cells,cells=c:,region=p.setsSet-all,p=mdb.modelsModel-1.partsDoor,p.SectionAssignment(region=region,sectionName=Section-1,offset=0.0),#,定义材料“,steel,”。,#,定义材料“,steel,”的工程弹性常数。,#,定义截面属性“,steel,”,将材料“,steel,”赋予截面,#c:,可以选取全部的实体,#,定义集合“,Set-all,”,将全部实体定义成一个集合,#,将截面属性赋予给集合“,Set-all,”,ABAQUS,脚本编写,布置

20、种子,a=,mdb.models,Model-1.,rootAssembly,e1=,a.instances,Door-1.edges,pickedEdges,=e1:#e1:,可以选取全部的边,a.seedEdgeByNumber,(edges=,pickedEdges,number=4),通过以上语句布置种子。,a=,mdb.models,Model-1.,rootAssembly,partInstances,=(,a.instances,Door-1,),a.generateMesh,(regions=,partInstances,),通过以上语句,把实体划分网格。,提交工作,mdb.J

21、ob,(name=Job-1,model=Model-1,description=,type=ANALYSIS,atTime,=None,waitMinutes,=0,waitHours,=0,queue=None,memory=90,memoryUnits,=PERCENTAGE,getMemoryFromAnalysis,=True,explicitPrecision,=SINGLE,nodalOutputPrecision,=SINGLE,echoPrint,=OFF,modelPrint,=OFF,contactPrint,=OFF,historyPrint,=OFF,userSubr

22、outine,=,scratch=,multiprocessingMode,=DEFAULT,numCpus,=1),mdb.jobs,Job-1.submit(,consistencyChecking,=OFF,datacheckJob,=True),ABAQUS,脚本编写,参考资料,ABAQUS,帮助手册,Abaqus Scripting Reference Manual,中关于,Python,部分;,曹金凤,王旭春,孔亮,.Python,语言在,Abaqus,中的应用,M.,机械工业出版社,,2012.,总结,ABAQUS,在建模过程中生成脚本文件,贮存在,rpy,文件中;,提取,rpy

23、文件,可以用,EditPlus,编辑,保存生成,py,文件,在,ABAQUS,中直接运行。运行,py,文件的方式有:,Run Script,、在,PDE,中运行、在,GUI,底部的命令窗口运行;,写好的语句一般在,GUI,窗口底部的命令窗口或,PDE,中逐句运行调试;,rpy,文件中,模型的点、线、面、体等特征是通过,ID,编号记录的,在二次开发过程中,要把这些,ID,编号改成特征的唯一坐标值,以利于修改识别;,建模过程有很多重复的操作步骤,要合理使用循环语句进行简化;,过于冗长的语句段,定义成函数,再在其他语句中调用,可以使程序简洁;,注意,Python,语句段中的换行、缩进等,使用中文注释要事先声明;,ABAQUS,特定的函数,可查看帮助手册,Abaqus Scripting Reference Manual,。,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服