- 积分
- 0
- 注册时间
- 2009-11-20
- 仿真币
-
- 最后登录
- 1970-1-1
|
悬赏1仿真币未解决
我想把ODB文件里的两个分析步结束后的应力值相减,然后再显示出来,代码如下,但是运行提示第22行有误,改行为:
newField.addData(position=INTEGRATION_POINT,data=deltaDisp)
其实我需要的事MISES应力差。
我刚学二次开发,不知道该怎么修改,请高手帮忙解答,谢谢
#!/user/bin/python
# -* - coding:UTF-8 -*-
# 本实例将计算两个场变量,并将计算结果添加到输出数据库中。
file_path='D://ABAQUS/dalunwen/Job-pdie14_Thermal_2.odb'
from odbAccess import *
#odb = openOdb(path='fieldOperation.odb')
odb = openOdb(path=file_path)
# 从输出数据库中提取场变量计算结果。
field1 = odb.steps['Step-pressure0_9'].frames[1].fieldOutputs['S']
field2 = odb.steps['Step-T180'].frames[1].fieldOutputs['S']
# 对提取的计算结果求差运算S
deltaDisp = field2 - field1
# 保存为新的场变量,并创建对应的分析步和帧。
newStep = odb.Step(name='user7', description='user defined results',
domain= TIME, timePeriod=0)
newFrame = newStep.Frame(incrementNumber=0, frameValue=0.0)
newField = newFrame.FieldOutput(name='S', description='display_desc', type=TENSOR_3D_PLANAR,
componentLabels=("S11","S22","S33","S12"),validInvariants=(MISES,))
newField.addData(position=INTEGRATION_POINT,data=deltaDisp)
newStep.setDefaultDeformedField(newField)
print 'The data has been created'
odb.save()
odb.close()
|
|