python返回某一步_Abaqus中如何利用python提取某一节点集某一分析步历史输出数据Mise应力?...

可参看曹金凤《python语言在ABAQUS中的应用》一书

以下是我参考书中代码写的提取全域最大应力和最大位移的代码:

def postdeal():#定义后处理函数

myJob1=mdb.Job(name='Job-1',model='Model-1')#新建作业

http://mdb.jobs['Job-1'].submit(consistencyChecking=OFF)#提交定义的作业

myJob1.waitForCompletion()#等待作业完成

odb=openOdb(path='Job-1.odb',readOnly=False)#打开ODB文件

stress=odb.steps['Step-1'].frames[-1].fieldOutputs['S']#各个单元的应力分量

displacement=odb.steps['Step-1'].frames[-1].fieldOutputs['U']#各个单元的位移分量

maxValue=None #最大的应力分量

maxdisp=None #最大的位移分量

for stressValue in stress.values:

if (not maxValue or stressValue.mises>maxValue.mises):

maxValue=stressValue #得到点阵结构的最大应力

for dispValue in displacement.values:

if (not maxdisp or dispValue.magnitude>maxdisp.magnitude):

maxdisp=dispValue #得到点阵结构的最大位移

maxdi=maxdisp.magnitude #最大位移的值

maxva=maxValue.mises #最大应力的值

q=(maxdi,maxva) #作为返回量

session.odbs['Job-1.odb'].close() #关闭打开的ODB文件

return q

代码很简单,应该能看懂,仅供参考,另外,如要提取指定结点集的应力,其方法是类似的,可能需要写个循环,可以自行研究。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值