Autor
|
Thema: UMAT: Neo-Hooke Material (1998 mal gelesen)
|
SLuckert Mitglied Student
Beiträge: 9 Registriert: 07.03.2016
|
erstellt am: 07. Mrz. 2016 09:55 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich versuche mich in die Nutzerschnittstelle UMAT einzuarbeiten und wollte zu Beginn nichtlineare Elastizität mit einem Neo-Hookeschen Modell implementieren. Das Materialmodell überprüfe ich an einem C3D8 Element welches ich durch Zug, Druck und Scherung verforme. Insgesamt überprüfe ich 6 Lastfälle da ich sowohl mit vorgeschriebenen Verzerrungen als auch vorgeschriebenen Spannungen arbeite. Vergleiche ich nun das Neo-Hooke Material das Abaqus zur Verfügung stellt mit dem selbst programmierten, so liefert das in 5 Fällen auch nahezu gleiche Ergebnisse, nur im Fall der Kraftgesteuerten Scherung erhalte ich stark abweichende Ergebnisse... Die implementierte UMAT Subroutine habe ich von einer Art Workshop: Google: Abaqus, UMAT (1. Ergebnis) [URL=https://www.google.de/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwio2YOPnK7LAhUFQpoKHfMnCXcQFggcMAA&url=https%3A%2F%2Fwww.researchgate.net%2Ffile.PostFi leLoader.html%3Fid%3D54fdbf46ef9713e3798b4567%26assetKey%3DAS%253A273727718133779%25401442273181845&usg=AFQjCNGHsBIHk1TQAukvf2GZQBrDwvFrFw&sig2=kgcGwcF6zGYPVajBJ3MkVA&bvm=bv.116274 245,d.bGs][/URL] Nun meine Fragen: Wieso erhalte ich für diesen einen Fall so verschiedene Ergebnisse? Hat jemand eine Lösung das in Abaqus vorhandene Modell durch eine UMAT zu programmieren? Wäre toll wenn mir da jemand helfen könnte. Grüße Simon [Diese Nachricht wurde von SLuckert am 07. Mrz. 2016 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mustaine Ehrenmitglied V.I.P. h.c.
Beiträge: 3554 Registriert: 04.08.2005 Abaqus
|
erstellt am: 07. Mrz. 2016 21:54 <-- editieren / zitieren --> Unities abgeben: Nur für SLuckert
|
SLuckert Mitglied Student
Beiträge: 9 Registriert: 07.03.2016
|
erstellt am: 08. Mrz. 2016 10:02 <-- editieren / zitieren --> Unities abgeben:
Hallo Mustaine, Vielen Dank! Das hatte ich mir noch nicht angesehen. Das Modell das ich implementiert hatte hat die auskommentierten Zeilen für EK und PR verwendet. Weißt du was da der Unterschied ist? C EK=TWO/D1*(TWO*DET-ONE) EK=TWO/D1*DET c PR=TWO/D1*(DET-ONE) PR=TWO/D1*(AJBAR-ONE) Außerdem bekomme ich einen "Illegal memory reference" Error, wenn ich den Code 1zu1 verwende. Vermutlich weil DIMENSION STRESS(9) und nicht 6 definiert ist. Hab ich da was falsch gemacht? Eigentlich müsste Code aus dem Manual doch funktionieren... Gruß Simon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
macmallow Mitglied Berechnung
Beiträge: 15 Registriert: 20.04.2015 ABQ 6.13-2 MSVC2012 INTEL PARALLEL XE 2013
|
erstellt am: 09. Mrz. 2016 10:10 <-- editieren / zitieren --> Unities abgeben: Nur für SLuckert
Hallo, dein Link funtioniert bei mir leider nicht, daher sehe ich das fragliche UMAT leider auch nicht. Grundsätzlich ist stress aber immer maximal 6 Felder groß, sprich 3 normal + 3 Schub komponenten. Bei Plane Stress o.Ä. evt. auch weniger. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SLuckert Mitglied Student
Beiträge: 9 Registriert: 07.03.2016
|
erstellt am: 09. Mrz. 2016 19:43 <-- editieren / zitieren --> Unities abgeben:
Ich habe jetzt das Beispiel 3 aus der Verification zum laufen bekommen. Die 9 Einträge im STRESS stammen von der hybrid formulation des C3D8H Elements, ist also alles in Ordnung. Bei Zug erhalte ich auch die Ergebnisse die ABAQUS Hyperelastic Neo-Hooke liefert. Wendet man aber die UMAT auf einen Würfel mit Schubkraft an, so sind die beiden Ergebnisse sehr verschieden. Wieso liefert die UMAT aus der Documentation nicht das gleiche? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hempres Mitglied
Beiträge: 84 Registriert: 30.06.2008
|
erstellt am: 11. Mrz. 2016 10:27 <-- editieren / zitieren --> Unities abgeben: Nur für SLuckert
|
SLuckert Mitglied Student
Beiträge: 9 Registriert: 07.03.2016
|
erstellt am: 11. Mrz. 2016 16:48 <-- editieren / zitieren --> Unities abgeben:
Ich hab eine statische Analyse und vergleiche die Spannungen und Verzerrungen an den Gaußpunkten des C3D8H. Hier das Beispiel für S12: S12 UMAT 98.37 161.71 98.37 161.71 -0.98 72.92 -0.98 72.92 S12 Interner Neo Hooke(natürlich mit gleichen Parametern) 96.82 149.83 96.82 149.83 25.17 91.60 25.17 91.60 Gleiches ist für die anderen Spannungen und Deformationen zu beobachten. Hier liegen die relativen Abweichungen bei 103% bei S23 sogar bei über 900%.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hempres Mitglied
Beiträge: 84 Registriert: 30.06.2008
|
erstellt am: 11. Mrz. 2016 17:10 <-- editieren / zitieren --> Unities abgeben: Nur für SLuckert
Das steht im Manual: If a hybrid element is used with user subroutine UMAT, Abaqus/Standard, by default, replaces the pressure stress calculated from your definition of STRESS with that derived from the Lagrange multiplier and modifies the Jacobian appropriately (“Hybrid incompressible solid element formulation,” Section 3.2.3 of the Abaqus Theory Guide). This approach is suitable for material models that use an incremental formulation (for example, metal plasticity) but is not consistent with a total formulation that is commonly used for hyperelastic materials. In the latter situation, the default formulation may lead to convergence problems. Such convergence problems may be observed, for example, when an almost incompressible nonlinear elastic user material is subjected to large deformations. Abaqus/Standard provides an alternate total formulation when user materials are used with hybrid elements (see “User-defined mechanical material behavior,” Section 26.7.1 of the Abaqus Analysis User's Guide). This formulation is consistent with the native almost incompressible formulation used by Abaqus for hyperelastic materials (“Hyperelastic material behavior,” Section 4.6.1 of the Abaqus Theory Guide) and works better than the default formulation for such cases. Versuch doch mal C3D8R Elemente. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SLuckert Mitglied Student
Beiträge: 9 Registriert: 07.03.2016
|
erstellt am: 12. Mrz. 2016 19:40 <-- editieren / zitieren --> Unities abgeben:
Hallo hempres, das kann ich auch mal versuchen, aber im Verification Manual(das den FORTRAN Code enthält) sind ausdrücklich C3D8H Elemente angegeben. Hat denn jemand schonmal geschafft die gleichen Ergebnisse wie die Intere Hyperelastizität zu bekommen und das auch für den Schubfall?
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hempres Mitglied
Beiträge: 84 Registriert: 30.06.2008
|
erstellt am: 12. Mrz. 2016 20:09 <-- editieren / zitieren --> Unities abgeben: Nur für SLuckert
|
SLuckert Mitglied Student
Beiträge: 9 Registriert: 07.03.2016
|
erstellt am: 12. Mrz. 2016 21:58 <-- editieren / zitieren --> Unities abgeben:
Abaqus Verification Guide (6.14) 4.1.21 UMAT and UHYPER III. User subroutine for total and incompressible hybrid formulations Element: C3D8H "For each case the results are compared against native Abaqus models and are found to be identical to the latter." Leider testen die nur auf Zug und nicht auf Schub. Welchen Fortran Code hast du verwendet? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
hempres Mitglied
Beiträge: 84 Registriert: 30.06.2008
|
erstellt am: 14. Mrz. 2016 11:22 <-- editieren / zitieren --> Unities abgeben: Nur für SLuckert
|
SLuckert Mitglied Student
Beiträge: 9 Registriert: 07.03.2016
|
erstellt am: 14. Mrz. 2016 15:04 <-- editieren / zitieren --> Unities abgeben:
Ja das hab ich. Mir würde es sehr weiterhelfen wenn ich Neo Hooke für irgendein Element reproduzieren könnte. Kannst du den Code für die Spannung mal posten? Wie hast du den Schub getestet? Auch an einem Element mit Schubkräften an 4 Knoten? Gruß Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SLuckert Mitglied Student
Beiträge: 9 Registriert: 07.03.2016
|
erstellt am: 29. Mrz. 2016 15:58 <-- editieren / zitieren --> Unities abgeben:
Hallo nochmal, leider ist der Thread hier scheinbar eingeschlafen. Auf hempres Code wäre ich sehr gespannt gewesen. Ich habe nochmal über das ganze nachgedacht und mich gewundert warum ich bei vorgegebenen Verzerrungen das richtige Ergebnis erhalte (somit muss ja die Berechnung von Stress richtig sein), aber bei vorgegebenen Spannungen ein anderes Ergebnis erhalte. Bedeutet das ich habe einen Fehler in DDSDDE? Allerdings habe ich gelesen das DDSDDE nur die Konvergenz beeinflusst, aber zu keinen falschen Lösungen führen kann. Weiß dazu vielleicht jemand noch mehr? Grüße Simon Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |