Bonjour,

j'ai fait un programme sur Python pour extraire des données du fichiers .odb issues de l'Abaqus. le code est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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))
en ligne 7 j'ai créé un fichier .txt qui va contenir certaines résultats; en ligne 41 j'ai choisi quelques output à afficher sur ce fichier
et en ligne 66 j'ai inséré des autres output sur le même fichier mais j'ai voulu que ces derniers output s'affichent dans la colonne suivante mais pas dans la ligne suivante .
je ne sais pas que ma question est claire )

merci d'avance