1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
from odbAccess import*
from abaqusConstants import*
from odbMaterial import*
from odbSection import*
output=open('hcf2.txt','w')
odb = openOdb(path='hcf.odb')
myAssembly = odb.rootAssembly
for instanceName in odb.rootAssembly.instances.keys():
print 'Instance Name : ',instanceName
print 'Node sets = ',odb.rootAssembly.instances['V20110406-1-1'].nodeSets.keys()
print 'element sets = ',odb.rootAssembly.instances['V20110406-1-1'].elementSets.keys()
allMaterials = odb.materials
for materialName in allMaterials.keys():
print 'Material Name : ',materialName
allSections = odb.sections
for sectionName in allSections.keys():
print 'Section Name : ',sectionName
for mySection in allSections.values():
if type(mySection) == HomogeneousSolidSectionType:
print 'material name = ',mySection.material
instances = odb.rootAssembly.instances
for instance in instances.values():
assignments = instance.sectionAssignments
print 'Instance : ',instance.name
for sa in assignments:
region = sa.region
elements = region.elements
print ' Elements associated with this section : '
for e in elements:
#print ' label : ',e.label
output.write ('Instance: %s\t label: %6d\n'%(instance.name,e.label))
for stepName in odb.steps.keys():
print stepName
#step1 = odb.steps.values()[0]
#print step1.name
lastFrame = odb.steps['Load'].frames[-1]
for fieldName in lastFrame.fieldOutputs.keys():
print fieldName
# for each field output value in the last frame, print the name, description, and type members.
for f in lastFrame.fieldOutputs.values():
print f.name,':', f.description
print 'type: ', f.type
displacement = lastFrame.fieldOutputs['U']
fieldValues = displacement.values
#for each displacement value, print the nodelabel and data members
for v in fieldValues:
# print 'Node = %d, U[x] = %6.4f, U[y]= %6.4f' % (v.nodeLabel, v.data[0], v.data[1])
output.write ('Node: %d\t U[x]: %6.4f\t U[y]: %6.4f\n'%(v.nodeLabel,v.data[0],v.data[1]))
center = odb.rootAssembly.instances['V20110406-1-1'].nodeSets['SKIN']
centerDisplacement = displacement.getSubset(region=center)
centerValues = centerDisplacement.values
for v in centerValues:
#print v.nodeLabel, v.data
output.write ('Node: %d\t Data: %s\n'%(v.nodeLabel,v.data)) |
Partager