Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  SIMULIA/ABAQUS
  COORD aller Knoten über Python

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co.
  
Mit der Kisters 3DViewStation komplexeste 3D CAD-Daten beherrschen, eine Pressemitteilung
Autor Thema:  COORD aller Knoten über Python (1622 mal gelesen)
Flexi
Mitglied



Sehen Sie sich das Profil von Flexi an!   Senden Sie eine Private Message an Flexi  Schreiben Sie einen Gästebucheintrag für Flexi

Beiträge: 23
Registriert: 25.09.2014

erstellt am: 26. Sep. 2014 14:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hey,

versuche gerade die Knotenkoordinaten beim letzten
Frame herauszulesen. Es handelt sich um ein 2D-Zylindermodell.

Auswertungsskript:

from abaqus import *
from abaqusConstants import *
from odbAccess import *


odbpath = 'Job-Test.odb'
odb = openOdb(path=odbpath)

lastframe = odb.steps['Step-test'].frames[-1]
coordinates = lastframe.fieldOutputs['COORD']
nodes = coordinates.getSubset(region=odb.rootAssembly.nodeSets['ALL NODES'])
datei = file('Job-Test.rpt','w')

for x in nodes.values:
datei.write(str(x.nodeLabel)+str(x.data)+'\n')
datei.close()

odb.close()


In der Job-Test.rpt-Datei steht nur folgendes:
1[ 0.  0.]

Ich habe allerdings 1281 Knoten, kann die Odb laden, mir Ergebnisse anschauen und an die abaqus.rpt schicken.

Was mache ich falsch?! Habe ich vielleicht "Frames" falsch angewandt oder brauche ich eine "Liste"?

Viele Grüße
Mo

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Mustaine
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von Mustaine an!   Senden Sie eine Private Message an Mustaine  Schreiben Sie einen Gästebucheintrag für Mustaine

Beiträge: 3585
Registriert: 04.08.2005

Abaqus

erstellt am: 29. Sep. 2014 10:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Flexi 10 Unities + Antwort hilfreich

Hattest du COORD als Field Output für die Analyse angefordert?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Flexi
Mitglied



Sehen Sie sich das Profil von Flexi an!   Senden Sie eine Private Message an Flexi  Schreiben Sie einen Gästebucheintrag für Flexi

Beiträge: 23
Registriert: 25.09.2014

erstellt am: 09. Okt. 2014 09:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo und Entschuldigung, dass ich mich jetzt erst melde, war auf einer Konferenz und da bin ich einfach nicht dazu gekommen...

Ja, habe es folgendermaßen angefordert:

mdb.models[modelName].FieldOutputRequest(name='Field-Abschrecken',  createStepName=stepAbschrecken, variables=( 'NT', 'TEMP','COORD'))

Zudem konnte ich den Fieldoutput im Postprocess direkt via GUI auswählen... sollte dann doch vorhanden sein,oder?

Woran könnte es noch liegen?

Viele Grüße

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

slein89
Mitglied



Sehen Sie sich das Profil von slein89 an!   Senden Sie eine Private Message an slein89  Schreiben Sie einen Gästebucheintrag für slein89

Beiträge: 139
Registriert: 30.04.2012

erstellt am: 09. Okt. 2014 10:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Flexi 10 Unities + Antwort hilfreich

Schreib mal bitte deinen Code aus dem ersten Beitrag so, wie er von Python gelesen wird, also füge bitte mal die entsprechenden Tabulatoren (oder hier Leerzeichen) ein. Steht die Zeile "datei.close()" vielleicht mit in der FOR Schleife? Dann würde die Datei nach dem ersten Knoten geschlossen werden und könnte bei den folgenden Knoten nicht mehr beschrieben werden. Das würde auch zum Inhalt der Datei passen.

Grüße
Slein

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Flexi
Mitglied



Sehen Sie sich das Profil von Flexi an!   Senden Sie eine Private Message an Flexi  Schreiben Sie einen Gästebucheintrag für Flexi

Beiträge: 23
Registriert: 25.09.2014

erstellt am: 09. Okt. 2014 11:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Python-Auswertung_Test.jpg

 
Hallo slein89,

anbei ein Screenshot, hoffe das genügt...
Bearbeite die .py-Dateien u.a. mit Notepad+

Gruß
Flexi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

slein89
Mitglied



Sehen Sie sich das Profil von slein89 an!   Senden Sie eine Private Message an slein89  Schreiben Sie einen Gästebucheintrag für slein89

Beiträge: 139
Registriert: 30.04.2012

erstellt am: 09. Okt. 2014 13:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Flexi 10 Unities + Antwort hilfreich

Ein paar Sachen, die ich probieren würde:

1. Wo steht jetzt das datei.close() ??

2. Ich kenne bisher nur "open()" zum Anlegen von FileHandles. Probier das bitte mal aus.

3. Wenn du sowieso alle Knoten auswerten willst, lass das Subset weg. Das könnte ungefähr so aussehen:

Code:
from abaqus import *
from abaqusConstants import *
from odbAccess import *


odbpath = 'Job-Test.odb'
odb = openOdb(path=odbpath)

lastframe = odb.steps['Step-test'].frames[-1]
coordinates = lastframe.fieldOutputs['COORD'].values

datei = open('Job-Test.rpt','w')

for x in coordinates:
    datei.write(str(x.nodeLabel)+str(x.data)+'\n')

datei.close()

odb.close()


4. Testweise solltest du dir mal das Feld der Koordinaten printen:

Code:

print coordinates

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz