- 积分
- 5
- 注册时间
- 2004-11-23
- 仿真币
-
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2011-12-6 18:06:55
|
显示全部楼层
来自 欧洲
本帖最后由 wuweide127 于 2011-12-6 18:07 编辑
my code:
from odbAccess import *
#
# get field
#
odb = openOdb(path='pytest.odb')
endSet = odb.rootAssembly.elementSets['ALLELE']
field_1 = odb.steps.values()[0].frames[-1].fieldOutputs['EVOL']
field_2 = odb.steps.values()[0].frames[-1].fieldOutputs['SDV11']
subField_1 = field_1.getSubset(region=endSet)
subField_2 = field_2.getSubset(region=endSet)
#
# sum values
#
sum = 0
vol = 0
for val_1 in subField_1.values:
print 'ELENUMBER =', val_1.elementLabel
print 'EVOL =', val_1.data
for val_2 in subField_2.values:
if val_1.elementLabel == val_2.elementLabel:
print 'SDV11 =', val_2.data
val = val_1.data * val_2.data
break
sum = sum + val
vol = vol + val_1.data
print 'val =', val
print 'sum =', sum
ave = sum / vol
#
# print results
#
print 'All damage =', sum
print 'All volume =', vol
print 'Damage ratio =', ave
|
|