python访问类的方法_【干货】 python访问对象

例:

访问Material对象:

import material

mdb.models[model名].materials[material名]   ※必须使用mdb限定材料对象、命令或成员

mdb.models[crash].materials[steel]

mdb.models[crash].materials[steel].Elastic(table=((30000000.0,0.3),))

elasticityType=mdb.models[crash].materials[steel].elastic.type

访问HistoryRegion对象:

import odbAccess

session.odbs[odb名].steps[step名].historyRegions[region名]

session.odbs[odb名].steps[step名].frames[i].fieldOutputs[field output名]

※ 如果访问对象的路径很长,可以通过创建变量的方法简化语句:

sideLoadStep=session.odbs[‘Forming loads’].steps[‘Side load’]

lastFrame=sideLoadStep.frames[-1]

stressData=lastFrame.fieldOutputs[‘S’]

integrationPointData=stressData.getSubset(position=INTEGRATION_POINT)

对stressData对象调用getSubset方法来访问积分点处的Mises应力S

invariantsData=stressData.validInvariants

访问stressData对象的不变量

构造函数:创建对象

mdb.models[‘Model-1’].Part(name=’Part-1’,dimensionality=THREE_D,type= DEFORMABLE_BODY)    ※创建零件

mdb.models[‘Model-1’].parts[‘Part-1’]              ※将零件放入部件库

※Abaqus脚本接口的惯例是:构造函数的首字母大写,其他字母小写;其他方法则以小写字母开头。

session.Viewport      ※创建视口对象

myFieldOutput=session.odbs[name].steps[‘Side load’].frames[-1].\

FieldOutput(name=’S’,description=’stress’,type=TENSOR_3D_FULL)

※函数定义形参和实参时可以使用关键字(keyword)和定位参数(positional arguments),并可以制定参数的默认值。编写脚本时,建议尽量使用关键字参数,其优点在于:

1)参数的顺序可以任意(如果不使用关键字,要求参数的顺序与要求的顺序必须完全一致;也可以使用关键字参数和定位参数相结合的方法来编写脚本,关键字参数可以放在定位参数之后,但定位参数却不允许放在关键字参数之后);

2)脚本更加易读。

※如果脚本中需要使用符号函数,就必须使用下列语句导入所有的符号常数:

from abaqusConstants import *

定义材料随温度变化的弹性模量:

mdb.models[‘Model-1’].materials[‘Steel’].Elastic(temperatureDependency=ON, table=((200000000000.0,0.3,0),(210000000000.0,0.3,100.0),(220000000000.0,0.3,200.0),(230000000000.0,0.3,300.0)))

129708142_1_20180409043301144

基于矩形草图创建三维变形体部件:

from abaqusConstants import *

mdb.Model(‘Body’)    mySketch=mdb.models[‘Body’].ConstrainedSketch(name=’__profile__’,sheetSize=200.0)

mySketch.rectangle(point1=(0.0,0.0),point2=(70.0,70.0))

switch=mdb.models[‘Body’].Part(name=’Switch’,dimensionality=THREE_D,type=DEFORMABLE_BODY)

switch.BaseSolidExtrude(sketch=mySketch, depth=20.0)

【小结】

1) 对象(object):对数据和处理数据的函数进行封装;

2) 成员(member):被对象封装的数据

3) 方法(method):处理数据的函数

4) 构造函数(constructor):创建对象的方法,首字母大写,其他字母小写

5) 创建对象后可以调用各种方法来输入或修改对象的数据。例如,调用setValues方法设置成员值;调用addNodes和addElements方法为部件增加节点和单元等。

6) Abaqus脚本接口中的一般惯例为:对象类型名的首字母要大写,通常情况下,构造函数名与创建对象的类型名相同。

7) 编写脚本时,要善于经常查阅《Abaqus Scripting Reference Manual》中对象的访问(access)方法和构造函数的路径,在访问对象后的路径后面还可以继续添加方法或成员。

8) 调用setValues(…)方法可以修改对象的成员值,但是,不允许使用赋值语句制定对象的成员值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值