Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SIMULIA/ABAQUS
  zyklische Berechnung mit USDFLD

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:  zyklische Berechnung mit USDFLD (3347 mal gelesen)
meta82
Mitglied



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

Beiträge: 20
Registriert: 22.10.2004

erstellt am: 06. Okt. 2008 10:53    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 Abaqus- Gemeinde,

Ich möchte gern das Materialverhalten unter zyklischer Zug- Schwell- Belastung mit Hilfe eines selbsterstellten USDFLD oder UMAT im ABAQUS- Standard (implizit) beschreiben. Bisher habe ich mich halbwegs in ABAQUS und USDFLD eingearbeitet und meine ersten Versuche unternommen. Zur Untersuchung meines USDFLD habe ich mir ein vereinfachtes FE- Modell aus 4 Volumenelementen erstellt. Nun habe ich zwei verschiedene Probleme und hoffe, dass Ihr mir etwas weiterhelfen könnt.

Zum Einen möchte ich gern im USDFLD den Min- oder Max-Wert bezüglich aller Elemente einer Größe (z.B. Spannung) auslesen und diesem im USDFLD für die weitere Berechnung benutzen. Kann ich dies im USDFLD erledigen (z.B. die Werte für alle Elemente in eine Reihe schreiben und anschließend auswerten) oder benötige ich dafür eine zusätzliche User-Subroutine? Oder ist diese Aufgabe in einem UMAT besser zu bewerkstelligen?

Zum Anderen habe ich bisher jeden einzelnen Zyklus als ein Step mit statischer Belastung definiert. Das hat soweit geklappt (mit z.B. 4000 Zyklen), allerdings bricht das Programm bei z.B. 6000 Zyklen mit einem System- Error- Code 29539 bei der „Analysis Input File Processor” ab und beginnt nicht mit der eigentlichen Berechung, evtl. ein Speicherproblem? Habt Ihr vielleicht eine Idee wie man die zyklische Belastung anderes realisieren kann? Ist evtl. die Definition durch eine Kraftamplitude und nur einem Step vorteilhafter? Habe auch schon über einen Restart nachgedacht.

Grüße und vielen Dank im Voraus!

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: 07. Okt. 2008 14: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 meta82 10 Unities + Antwort hilfreich

Sowohl Restart als auch die Arbeit mit Amplitudes könnte helfen. Amplitudes würde ich als erstes probieren.

Hast du schon überprüft ob du nicht das benutzen kannst:
Users Manual 6.2.6 Direct cyclic analysis

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

meta82
Mitglied



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

Beiträge: 20
Registriert: 22.10.2004

erstellt am: 08. Okt. 2008 10: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

Danke für die Antwort. Ich möchte übrigens das Schädigungsverhalten von faserverstärkten Kunststoffen unter zyklischer Belastung modellieren und möchte zu diesem Zweck ein eigenes Materialgesetz implementieren (hätte ich dazu sagen sollen).
Die Direct cyclic analysis hatte ich mir im Abaqus Version 6.7 Documentation angeschaut (Ich benutze Abaqus 6.7-1) und war zu dem Entschluss gekommen, dass diese Methode vorrangig für zyklische Belastung von Metallen mit plastischer Verformung geeignet ist. Allerdings habe ich jetzt im Internet die 6.8 Documentation angeschaut und gesehen, dass die Methode auch für das progressive Schädigungsverhalten von Composites verwendet werden kann. Weiß aber nicht, ob das auch in 6.7 funktioniert?

Hast Du übrigens eine Idee, wieso Abaqus ab einer bestimmten Stepanzahl das Inputfile nicht mehr vollständig analysieren kann?  Die Größe des .odb-file für 4000 Zyklen beträgt gerade mal 470 MB.
Bei dem Restart sollen übrigens nur die Werte des letzen Zyklus auf alle Elemente übertragen werden und nicht die gesamte Belastungsgeschichte. Muss ich dazu einen Restart aus  .odb oder  .fil machen und benötige ich dafür zusätzliche Einstellungen?.

Hast Du noch eine Idee bzgl. meiner ersten Frage. Das USDFLD arbeitet das Materialgesetz mit Hilfe der vorher eingelesenen Spannungen und Dehnungen für jeden IP nacheinander ab und berechnet entsprechend des implementierten Materialgesetzes je IP definierte Größen. Ist es denn irgendwie möglich diese berechneten Größen bezüglich aller Elemente im USDFLD auszuwerten, also z. B. eine Schleife über alle IP und die bestimmte Größe (z.B. SDV) von allen IP in eine Array schreiben und anschließend den max. Wert dieser Größe bzgl. aller IP bestimmen.
Habe mir noch die Subroutine URDFIL angeschaut. Diese scheint evtl. dafür geeignet. Muss aber noch raus finden, ob und wie die Informationen an das USDFLD übergeben werden können.
Vielleicht hast Du oder jemand anderes noch einen Vorschlag.Schonmal Danke.

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

meta82
Mitglied



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

Beiträge: 20
Registriert: 22.10.2004

erstellt am: 08. Okt. 2008 10:30    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 ich noch vergessen (bzgl. letzten Abschnitt). Der max. Wert der z.b. SDV von allen Elementen, ist dann für die weitere Berechnung im USDFLD notwendig, da in Abhängigkeit dieses Wertes eine andere SDV berechnet werden soll.

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. Okt. 2008 11:26    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 meta82 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von meta82:
Danke für die Antwort. Ich möchte übrigens das Schädigungsverhalten von faserverstärkten Kunststoffen unter zyklischer Belastung modellieren und möchte zu diesem Zweck ein eigenes Materialgesetz implementieren (hätte ich dazu sagen sollen).
Die Direct cyclic analysis hatte ich mir im Abaqus Version 6.7 Documentation angeschaut (Ich benutze Abaqus 6.7-1) und war zu dem Entschluss gekommen, dass diese Methode vorrangig für zyklische Belastung von Metallen mit plastischer Verformung geeignet ist. Allerdings habe ich jetzt im Internet die 6.8 Documentation angeschaut und gesehen, dass die Methode auch für das progressive Schädigungsverhalten von Composites verwendet werden kann. Weiß aber nicht, ob das auch in 6.7 funktioniert?

Ich habe gerade mal in die 6.8er Release Notes geschaut. Dort ist eine Kapitel
6.2 Low-cycle fatigue analysis using the direct cyclic approach in Abaqus/Standard
was bedeutet, dass das neu in 6.8 ist.
Kurzbeschreibung:
Benefits: The direct cyclic low-cycle fatigue capability provides a computationally effective technique for modeling progressive damage and failure both in bulk materials and at material interfaces for a structure subjected to a sub-critical cyclic loading. The capability has applications in solder joint failure in electronics, powertrain durability in automotive, composite damage and strength in aerospace, and bone degradation in medical applications.

Zitat:

Hast Du übrigens eine Idee, wieso Abaqus ab einer bestimmten Stepanzahl das Inputfile nicht mehr vollständig analysieren kann?  Die Größe des .odb-file für 4000 Zyklen beträgt gerade mal 470 MB.
Bei dem Restart sollen übrigens nur die Werte des letzen Zyklus auf alle Elemente übertragen werden und nicht die gesamte Belastungsgeschichte. Muss ich dazu einen Restart aus  .odb oder  .fil machen und benötige ich dafür zusätzliche Einstellungen?.

Vielleicht reicht der Speicher nicht aus wenn der Datacheck die Input-Datei (und somit die Steps) liest und verarbeitet.
Bei einem Restart kann man sowieso nur einen Zustand lesen. Von diesem wird dann in der neuen Analyse weitergerechnet. Benutze einfach die ganz normale Restart-Funktionalität ohne spezielle Einstellungen.

Zitat:

Hast Du noch eine Idee bzgl. meiner ersten Frage. Das USDFLD arbeitet das Materialgesetz mit Hilfe der vorher eingelesenen Spannungen und Dehnungen für jeden IP nacheinander ab und berechnet entsprechend des implementierten Materialgesetzes je IP definierte Größen. Ist es denn irgendwie möglich diese berechneten Größen bezüglich aller Elemente im USDFLD auszuwerten, also z. B. eine Schleife über alle IP und die bestimmte Größe (z.B. SDV) von allen IP in eine Array schreiben und anschließend den max. Wert dieser Größe bzgl. aller IP bestimmen.
Habe mir noch die Subroutine URDFIL angeschaut. Diese scheint evtl. dafür geeignet. Muss aber noch raus finden, ob und wie die Informationen an das USDFLD übergeben werden können.
Vielleicht hast Du oder jemand anderes noch einen Vorschlag.Schonmal Danke.

Sorry, aber mit Subroutines und Fortran kenne ich mich nicht wirklich aus.

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

meta82
Mitglied



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

Beiträge: 20
Registriert: 22.10.2004

erstellt am: 08. Okt. 2008 17:08    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 nochmal für Deine Antworten.
Ich bin eigentlich zuversichtlich, daß das mit USDFLD irgendwie gehen muss. Immerhin berechnet ABQ die notwendigen Werte für alle IP, man muss nur rausfinden, wie man darauf in geeigneter Form zugreifen kann, um die oben beschriebene Aufgabe zu erledigen.

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