Si vous faites du contact, il ne faut pas que la s

  • MGolbs
  • MGolbs's Avatar Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
6 years 6 months ago #8231 by MGolbs
Hallo,

habe ein DYNA_NON_LINE Modell mit Kontakt, Continue, THETA_METHODE, Aufprall eines Körpers auf einen anderen Körper, wo bei feineren Zeitschritten der Solverlauf abbricht.

<S> Exception utilisateur levee mais pas interceptee. !
! Les bases sont fermees. !
! Type de l'exception : MatriceSinguliereError !
! !
! Arrêt pour cause de matrice non inversible. !
! La base globale est sauvegardée. Elle contient les pas archivés avant !
! l'arrêt.



Leider verstehe ich folgende Meldung/Hinweis nicht. Wäre es möglich einen Tipp zu erhalten was damit gemeint ist?

Si vous faites du contact, il ne faut pas que la structure ne "tienne" que par le contact.


Das Modell läuft durch, wenn:

# grobe Zeitschritte und größeres Residuum gewählt werden
# das Modell ohne Aufschlag schwingen kann.
# sobald die Zeitschritte kleiner werden, näher am Aufschlagszeitpunkt gerechnet wird, bricht der Solverlauf ab.

Es gibr keine RBM's im Modell. Wodurch kann ein "MatriceSinguliereError" im Bereich Kontakt zustande kommen? Mir fehlt da das Verständnis zum dem möglichen Effekt.

Habe versucht:
# weiche Federn einzubauen
# nichtlineares Materialverhalten
# verschiedene SCHEMA_TEMPS
# verschiedene Schrittweiten und Schrittweitensteuerung
# verschiedene E-Modul Kombinationen der Kontaktmaterialien

Der Effekt ist immer der gleiche.

Habe auch schon etliches aus www.code-aster.org/forum2/viewtopic.php?id=15079 versucht.

Über einen Tipp wäre ich sehr dankbar.

Gruß Markus

Dem Überflüssigen nachlaufen, heißt das Wesentliche verpassen.
Jules Saliège

Please Log in or Create an account to join the conversation.

More
6 years 6 months ago #8232 by RichardS
Hallo Markus,
extremer ansatz: einfach mal mit STOP_SINGULIER='NON' versuchen.
Damit wird eine nicht-invertierbare matrix nicht als exception sondern als normaler fehler (wie zum beispiel ein divergentes residuum) behandelt und ein timestepping event kann eintreten.
Das ändert nichts an der Ursache, aber wenn es eine numerisches "freak event" ist, könnte es damit gelöst sein.

Generell kann es viele Ursachen defür geben, die mehr oder weniger komplex zu lösen sind, ein nichlineares material einzuführen dürfte jedoch eher kontraproduktiv sein.
Wenn selbst "weiche" Federn das problem nicht lösen, weiß ich ohne dateien auch nicht weiter.

Gruß,
Richard

SimScale - Engineering Simulation in your browser!

Please Log in or Create an account to join the conversation.

  • MGolbs
  • MGolbs's Avatar Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
6 years 6 months ago - 6 years 6 months ago #8233 by MGolbs
Hallo Richard,

vielen Dank für die Rückmeldung und Infos. Mit STOP_SINGULIER='NON' rechne ich schon, und habe ebenfalls den Effekt. Anfangs habe ich diese Option nicht gesetzt. Auch das Konvergenzverhalten ist irgend wie komisch. Selbst mit sehr kleinen Zeitschritten bekomme ich keine Konvergenz. Das physikalische Problem des Modells ist durch die Lagerungsbedingungen eigentlich recht einfach. Kann es Probleme wegen des Auftreffens Ebene auf Ebene geben? Der Solver bricht genau zu dem Zeitpunkt ab, wo der eine Körper durch freien Fall auf den anderen auftrifft. Wenn ich die Zeitschritte groß genug halte läuft er durch. Je näher ich an den tatsächlichen Auftreffzeitpunkt hinrechne, desto höher ist das Risiko des:

<S> Exception utilisateur levee mais pas interceptee. !
! Les bases sont fermees. !
! Type de l'exception : MatriceSinguliereError !


Was sollte mir

Si vous faites du contact, il ne faut pas que la structure ne "tienne" que par le contact.

sagen?


Gruß und Dank Markus

Dem Überflüssigen nachlaufen, heißt das Wesentliche verpassen.
Jules Saliège
Last edit: 6 years 6 months ago by MGolbs.

Please Log in or Create an account to join the conversation.

More
6 years 6 months ago - 6 years 6 months ago #8234 by RichardS
Hallo Markus,

MGolbs wrote: Kann es Probleme wegen des Auftreffens Ebene auf Ebene geben?

Nein, das ist der einfachste Kontaktfall und sollte keine speziellen Probleme machen.

MGolbs wrote: Der Solver bricht genau zu dem Zeitpunkt ab, wo der eine Körper durch freien Fall auf den anderen auftrifft. Wenn ich die Zeitschritte groß genug halte läuft er durch. Je näher ich an den tatsächlichen Auftreffzeitpunkt hinrechne, desto höher ist das Risiko des:

<S> Exception utilisateur levee mais pas interceptee. !
! Les bases sont fermees. !
! Type de l'exception : MatriceSinguliereError !

Das scheint wirklich ein problem mit der Lösung des Kontaktes zu sein. Ein paar Fragen dazu:

- Verwendest du ein lineares oder quadratisches netz?
- Welche elemente sind auf den Kontaktflächen (tria oder quad)?
- Hast du Penalty Kontakt versucht?
- Rechnest du mit Reibung?
- Nutzt du glätting der Kontaktnormalen?

Aber am wichtigsten:
- Ist die SLAVE seite des Kontaktes noch anderweitig eingespannt? Und wenn ja wie? Kann es sein das es Knoten gibt bei denen der Kontakt aktiv ist und gleichzeitig eine Randbedingung die Bewegung einschränkt?
Ich vermute du hast ein durch den Kontakt überbestimmtes System . (das wird erst sichtbar wenn der Kontakt tatsächlich aktiv ist, deshald der absturz erst zu diesem Zeitpunkt).

MGolbs wrote: Was sollte mir

Si vous faites du contact, il ne faut pas que la structure ne "tienne" que par le contact.

sagen?

Frei übersetzt: Falls Sie Kontakt nutzen, darf die Struktur nicht nur durch den Kontakt statisch bestimmt sein.
Ist im Fall einer dynaischen simulation nicht so tragisch (und da du auch schon Federn versucht hast).

Gruß,
Richard

SimScale - Engineering Simulation in your browser!
Last edit: 6 years 6 months ago by RichardS.

Please Log in or Create an account to join the conversation.

  • MGolbs
  • MGolbs's Avatar Topic Author
  • Offline
  • Platinum Member
  • Platinum Member
More
6 years 6 months ago #8235 by MGolbs
Hallo Richard,

vielen Dank für deine Rückmeldung. Aktuell habe ich mein Modell so konfiguriert:

Das scheint wirklich ein Problem mit der Lösung des Kontaktes zu sein. Ein paar Fragen dazu:
- Verwendest du ein lineares oder quadratisches netz?
# quadratisch
- Welche Elemente sind auf den Kontaktflächen (tria oder quad)?
# quad
- Hast du Penalty Kontakt versucht?
# wenn über diskreten Ansatz gemeint ist, Ja. Hat aber ich glaub auch nicht konvergiert und war ein Rechenzeitproblem.
- Rechnest du mit Reibung?
JA
- Nutzt du glätting der Kontaktnormalen?
# Muss ich erst mal lesen welche Option das wäre. Aktuell sind da die Defaults in DEFI_CONTACT drin.



Lagerbedingungen über AFFE_CHAR_CINE können doch nicht das Problem sein?

Aber am wichtigsten:
- Ist die SLAVE seite des Kontaktes noch anderweitig eingespannt? Und wenn ja wie? Kann es sein das es Knoten gibt bei denen der Kontakt aktiv ist und gleichzeitig eine Randbedingung die Bewegung einschränkt?
Ich vermute du hast ein durch den Kontakt überbestimmtes System . (das wird erst sichtbar wenn der Kontakt tatsächlich aktiv ist, deshald der absturz erst zu diesem Zeitpunkt).


Ich habe sowohl Master als auch Slave des Kontaktes, Knoten und Elemente, nicht in Lagerbedingungen. Meine Körper sind HEXA. Darauf liegen in den Kontaktzonen quad für den Kontakt. Für Tests habe ich noch mal ein feineres Coque Netz drüber gelegt und definiert. Der Fehler tritt aber auch ohne das Coque Netz auf.

Gruß und Dank Markus

Dem Überflüssigen nachlaufen, heißt das Wesentliche verpassen.
Jules Saliège

Please Log in or Create an account to join the conversation.

More
6 years 6 months ago #8236 by RichardS
Ok,
also dann würde ich mit den einfachsten Settings anfagnen und die Komplexität steigern. Also:

- lineares netz, keine Reibung und PENALTY Kontakt, nicht DISCRETE Formulierung sondern ALGO_CONT='PENALISATION' bei CONTINUE Formulierung.

Gruß,
Richard

SimScale - Engineering Simulation in your browser!

Please Log in or Create an account to join the conversation.

Moderators: catux
Time to create page: 0.121 seconds
Powered by Kunena Forum