Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SIMULIA/ABAQUS
  Probleme beim Output

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
Autor Thema:  Probleme beim Output (1990 / mal gelesen)
Pabrelin
Mitglied


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

Beiträge: 9
Registriert: 10.05.2016

Abaqus 6.13

erstellt am: 06. Jun. 2016 12: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

Hallo Zusammen,

aus den Ergebnissen einer Simulation möchte ich Moment und Winkel in die .rpt-Datei speichern. Aus der .py Datei im Temp Ordner habe ich die nötigen Befehle bekommen, die mitgeschrieben wurden während ich die Dateien Manuell angelegt habe. Nun will ich das automatisieren und stoße auf Schwierigkeiten.

Dieses Skript habe ich mir nun gebastelt:
from abaqus import *
from abaqusConstants import *
from odbAccess import *
import visualization
from caeModules import *

## open file
o1 = session.openOdb(name='Job_vulkardan_2D.odb')
session.viewports['Viewport: 1'].setValues(displayedObject=o1)

## chose data
xy_result = session.XYDataFromHistory(name='Moment', odb=o1,
    outputVariableName='Point moments: CM2 at Node 701 in NSET SET-1', steps=('Step-1', ), )
c1 = session.Curve(xyData=xy_result)
xyp = session.xyPlots['XYPlot-1']
chartName = xyp.charts.keys()[0]
chart = xyp.charts[chartName]
chart.setValues(curvesToPlot=(c1, ), )

xy_result = session.XYDataFromHistory(name='Angle', odb=o1,
    outputVariableName='Rotational displacement: UR2 at Node 701 in NSET SET-1',
    steps=('Step-1', ), )
c1 = session.Curve(xyData=xy_result)
xyp = session.xyPlots['XYPlot-1']
chartName = xyp.charts.keys()[0]
chart = xyp.charts[chartName]
chart.setValues(curvesToPlot=(c1, ), )

## report data
x0 = session.xyDataObjects['Angle']
x1 = session.xyDataObjects['Moment']
session.writeXYReport(
    fileName='abaqus_FieldReport.rpt', appendMode=OFF, xyData=(x0, x1))

Der ausgegebene Fehler lautet:
KeyError: XYPlot-1
File "readOutput.py", line 15, in <module>
    xyp = session.xyPlots['XYPlot-1']

(Die Zeile 15 habe ich fett markiert)

Ich hab schon gelsen, dass die outputVariable ungünstig sind (wegen der Länge und Sonderzeichen)aber so wurde mir das von Abaqus vorgegeben und ich habs nicht geändert.

Ich bin den code aus der Temp nochmal durchgegangen, aber ich gehe davon aus, dass ich dort nichts wichtiges übersehen habe beim kopieren.
Kann mir jemand bei der Problemlösung helfen?

Gruß
Pabrelin

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: 3554
Registriert: 04.08.2005

Abaqus

erstellt am: 06. Jun. 2016 15:03    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 Pabrelin 10 Unities + Antwort hilfreich

Ich vermute deine Zeile 15 ist die, wo du versuchst die zweite Kurve zu erzeugen (Angle). Dort möchtest du nochmal 'XYPlot-1' erzeugen, aber den gibt es schon in der Session. Ändere den Namen im Skript mal in 'XYPlot-2' und probiere es nochmal.

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

Pabrelin
Mitglied


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

Beiträge: 9
Registriert: 10.05.2016

Abaqus 6.13

erstellt am: 07. Jun. 2016 12:05    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

Nein, leider nicht. Die Zeile 15 ist beim ersten Absatz zum Moment. Ich habe die Zeile auch fett markiert.

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

Pabrelin
Mitglied


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

Beiträge: 9
Registriert: 10.05.2016

Abaqus 6.13

erstellt am: 08. Jun. 2016 11:24    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

Muss ich für die Durchführung vorher was in der .odb angelegt haben oder eingestellt oder so?

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: 3554
Registriert: 04.08.2005

Abaqus

erstellt am: 08. Jun. 2016 13:10    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 Pabrelin 10 Unities + Antwort hilfreich

Nein.

Hast du mal probiert was passiert, wenn du andere Namen anstatt XYPlot-1 und 2 verwendest?

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

Pabrelin
Mitglied


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

Beiträge: 9
Registriert: 10.05.2016

Abaqus 6.13

erstellt am: 08. Jun. 2016 13:41    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

im Grunde der selbe Fehler:

KeyError: Moment
File "readOutput.py", line 16, in <module>
    xyp = session.xyPlots['Moment']

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: 3554
Registriert: 04.08.2005

Abaqus

erstellt am: 08. Jun. 2016 13:49    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 Pabrelin 10 Unities + Antwort hilfreich

Erstelle mal ein einfaches Beispiel an dem der Fehler ebenso auftritt und lade dann mal .inp und das Skript hier hoch. Dann dürfte der Fehler schnell gefunden sein.

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

Pabrelin
Mitglied


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

Beiträge: 9
Registriert: 10.05.2016

Abaqus 6.13

erstellt am: 10. Jun. 2016 11:52    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

Habe das Problem vielleicht gefunden.
Die Befehle die ich aus der abaqus.rpy (aus c:\Temp) habe, habe ich in die .rpy für meinen Job kopiert.
Damit sollten beim Ausführen des Jobs auch die Dateien erzeugt werden, aber das werden sie nicht. Der angezeigt Fehler entsteht also wohl dadurch, dass ich das erzeugen vermasselt habe.
Was muss ich ändern, um das zu berichtigen?
Darauf achten, dass ich in der Richtigen Directory bin?
Wenn ich den Job durchführe, wird die .rpy dann automatisch auch berücksichtigt und durchgeführt?
Und in welchem Ordner muss die .rpy sein? In der Directory oder im Ordner wie die job Dateien? (.odb, .dat, .inp, ...)


In meiner Matlab Datei, die die Simulation startet steht:

Code:
% do Job
! abaqus job=Job_name input=Job_name.inp scratch="C:\Temp" interactive

% write FieldOutput
! abaqus cae nogui=readOutput.py


Das beantwortet ja schon die Frage,ob die .py aktiv gestartet werden muss.
Gibts einen Unterschied zwischen .rpy und .py?
(Führe die Arbeit meines Vorgängers fort, und habe daher ein wenig Probleme mit den Dateien klar zu kommen.)

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: 3554
Registriert: 04.08.2005

Abaqus

erstellt am: 10. Jun. 2016 16: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 Nur für Pabrelin 10 Unities + Antwort hilfreich

.rpy ist die Mitschrift aus /CAE. Bei eigenen Skripten sollte man .py verwenden.

Generell ist es am einfachsten, wenn man die Dateien alle in einem Ordner (Arbeitsverzeichnis) hat und dann auch dort /CAE und die Analyse laufen lässt. So benötigt man kein Pfadangaben, wenn auf externe Dateien verwiesen wird.

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

Pabrelin
Mitglied


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

Beiträge: 9
Registriert: 10.05.2016

Abaqus 6.13

erstellt am: 10. Jun. 2016 21:57    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

Danke Mustaine für deine Hilfe und guten Antworten.

Mein Problem hab ich inzwischen behoben. Die Zeilen die mir probleme gemacht haben, habe ich mit "##" herausgenommen um zu testen ob der Rest funktioniert. Und das tut er. Hab die Tabelle die ich haben wollte nun auch mit ein paar Zeilen weniger in der .py-Datei erreicht.
Trotzdem danke für die Hilfe
Gruß
Pabrelin

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)2023 CAD.de | Impressum | Datenschutz