Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SIMULIA/ABAQUS
  automatisierung von ergebnistransfers

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:   automatisierung von ergebnistransfers (512 mal gelesen)
Gunkerle
Mitglied
WMA


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

Beiträge: 133
Registriert: 15.03.2007

erstellt am: 28. Feb. 2008 10:00    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 Liebe Abaqusgemeinde,
hat jemand Erfahrung mir der Automatisierung mittels von Ergebnistransfers (& Neustarts) zwischen Abaqus Implizit & Explizit. Ich schlage mich immer noch mit dem Problem der Erwärmung mittels rein viskoser Wärmequellen in Abaqus Explizit herum.

BITTE AUCH ANTWORTEN, WENN NUR AUF TEILE MEINER ANFRAGE WISSEN VORHANDEN IST :-).


Da die Usersubroutines die ich dazu benötige zu 100% nur beim impliziten Solver vorhanden sind, denke ich darüber nach eine implizit/explizit gekoppelte Rechnung zu entwerfen. Dazu benötige ich, dass ich die Erwärmung im impliziten ausrechne und dann die Ergebnisse einer expliziten Rechnung übergebe. Das kann nur funktionieren, wenn man Abaqus eine automatisierte Übergabe & Neustart im jeweils anderm Solver beibringen kann.

Deshalb meine erste Frage. Den  subsequenten Start mehrerer Rechnungen kann man ja mittels Bachtfiles steuern. Wenn man nun die Filenamen immer gleichlaesst muesste man im Prinzip alternativ immer wieder zwei gleich  starten köennen. nur würden dann die Ergebnisse vermutlich immer wieder überschrieben werden  --- es sei denn man kann mittels Anhängenoptionen (also nicht überschreiben) & über denm Einlesen als predefines files (somit die errechneten Werte aus der anderen Rechnung als neuen Startwert) dafür sorgen dass jeweils die aktualisierten Daten in den erzeugten Stautus und Egebnisdateien angefügt & nicht überschrieben werden.
Alternativ könnte man sich vorstellen, dass ein counter die Dateinamen der Ein- & Ausgabedateien bei jeder Übergabe hochgezählt werden. Um dies vernünftig auswerten zu können, muestte man diese Files dann am Ende vermutlich wieder in jewiels ein File zusammenfügen.


Zu diesem Zwecke bin ich gerade dabei mir Python anzuschauen. da ich bisher mit Python noch nicht gearbeitet habe, wäre ich auch dankbar wenn mir jemand ein gutes Einführungswerk dazu empfehlen könnte.


Falls möglich würde ich mir den Ablauf folgendermaßen vorstellen:
Einfederung & darus resultierende Erwärmung im impliziten rechnen lassen (einen "Zeitschritt" oder mehrere je nach Problem). Dann resultierende Lasten & vor allem Temperaturen ...

(bestimmt mittels Verwendung von Uexternaldb zum Auslesen der EViskos, UField zur Redifinition  der internen Energie & Hetval zur Bestimmung der Wärme respektive neuen Temperatur auf der Basis der neudefinierten internen Energie --> Bekommt man wirklich auch die Temperatur in der Hetval geliefert?(spezifische Wärmekapazität ist als Materialdatum vorhanden))
... an den expliziten Solver übergeben und dort dann die notwendigen Rotationsrechnungen für mein rollendes Rad ausführen.


Bin für jede Unterstützung dankbar.

ciao gunkerle


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

Nicksen
Mitglied
wissenschaftlicher Mitarbeiter


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

Beiträge: 239
Registriert: 04.05.2007

erstellt am: 29. Feb. 2008 08:50    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 Gunkerle 10 Unities + Antwort hilfreich

Hi,

also wie es sich mit Start und Restart beim Wechsel von Implizit auf Explizit verhaelt, kann ich nicht sagen, aber ich selbst bearbeite Homogenisierungsprobleme.
Bei denen werden mehrere Rechnungen nacheinander ausgefuehrt und die sich ergebenden Spannungsfelder entsprechend ausgewertet.
Die Routine umfasst das Aufbringen von Randbedingungen, step-Definitionen, Erstellung der Jobs (mit "Hochzaehlcounter"), Auslesen der entsprechenden odb und Verarbeitung der Spannungsfelder.
Es laeuft bei mir alles ueber ein python- Skript, welches im CLI in Abaqus/CAE gestartet wird. Resultat sind mehrere eigens erstellte *.txt Dateien und die odb von saemtlichen Lastfaellen/Jobs mit fortlaufender Nummer.
Ob man bei der step-Definition auch den Solver vorgeben kann, weiß ich nicht.
Dazu muesste sich mal jemand anderes aeußern.

Aber prinzipiell kann man jede odb auslesen und entsprechende Variablen definieren. Somit sollte es auch moeglich sein, sich die Eingabeparameter fuer den naechsten Job zu ermitteln und dem Modell beizubringen.

Vielleicht hilft das schon ein wenig weiter.

Was jedoch Einstiegslektuere in python angeht kann ich nur sagen, dass die Referenz von Abaqus nicht so schlecht ist, man jedoch um diverse Einstiegslektionen (kann man im Netz finden) nicht herum kommt.

Großes Problem in meinen Augen: Der Interpreter fuer python scheint vorgeschrieben zu sein. Das Laden externer Module ist demnach nur eingeschraenkt oder gar nicht moeglich. Wenn man Pakete wie "Numpy" oder "Scipy" nutzen will (Matrizenoperationen usw.), dann muss man sich den Kram komplett selbst schreiben.
Das frustet und ist in meinen Augen mehr als ueberdenkenswert. Sollte jemand in diesem Feld schon Erfahrungen gesammelt haben, dann bitte ich um Meldung. Mein Admin hat nach mehreren Tagen schließlich halbwegs entnervt aufgegeben. Ohne Tricks waere es nicht zu machen, sagte er mir.

beste Grueße erstmal und ein schoenes Wochenende an die ganze Gemeinde

der Nixxon

------------------
==========
==  Dingsen  ==
==========

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

HerrHansen
Mitglied
Dipl.-Ing.


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

Beiträge: 257
Registriert: 03.12.2005

Abaqus/CAE 6.3 bis 6.12

erstellt am: 03. Mrz. 2008 08:46    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 Gunkerle 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Gunkerle:
[...] es sei denn man kann mittels Anhängenoptionen (also nicht überschreiben) & über denm Einlesen als predefines files (somit die errechneten Werte aus der anderen Rechnung als neuen Startwert) dafür sorgen dass jeweils die aktualisierten Daten in den erzeugten Stautus und Egebnisdateien angefügt & nicht überschrieben werden.

Das schreit ja geradezu nach einem Python-Script :D . Bei mir lag übrigens ein ähnlicher Fall vor: ich hatte mehrere statische Rechnungen mit /Implicit und darauf aufbauend hunderte Dynamikrechnungen (insgesamt ca. 500; man stelle sich vor, diese Anzahl an Input/Include-Files zu schreiben!).
Für obiges Problem habe ich mir folgende Schleife in mein Script eingebaut:

Code:

for Material in ['Alu', 'Stahl', 'irgendwasanderes']:
  for Durchmesser in [15, 20, 25]:
    for Druck in [10, 100, 200, 300]:
      jobname_stat = 'Job-s-'+str(Durchmesser)+'mm-'+str(Druck)+'bar'+str(Material)+'_auto.inp'



Mit diesem Code baue ich mir automatisiert einen Dateinamen zusammen (die Funktion "str(...)" konvertiert übrigens alles, was in den Klammern steht, zu einem String). Du kannst selber ausprobieren, wie das Ganze dann aussieht: kopiere den obigen Code in eine Textdatei, benenne sie nach "*.py" um und lasse ihn ablaufen ;) .

Zitat:
Original erstellt von Gunkerle:

Alternativ könnte man sich vorstellen, dass ein counter die Dateinamen der Ein- & Ausgabedateien bei jeder Übergabe hochgezählt werden. Um dies vernünftig auswerten zu können, muestte man diese Files dann am Ende vermutlich wieder in jewiels ein File zusammenfügen.


Siehe oben.

Zitat:
Original erstellt von Gunkerle:

[...] wäre ich auch dankbar wenn mir jemand ein gutes Einführungswerk dazu empfehlen könnte.


Google, Abaqus-Scripting-Manual, http://de.wikibooks.org/wiki/Python-Programmierung

Zitat:
Original erstellt von Gunkerle:
Falls möglich würde ich mir den Ablauf folgendermaßen vorstellen:
[...] an den expliziten Solver übergeben und dort dann die notwendigen Rotationsrechnungen für mein rollendes Rad ausführen.



Wie hast du das bisher gemacht? Mit *Import?

MfG
HH

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