Projet

Général

Profil

Anomalie #219

pas de détection de jacobien négatif sur élément quadrangle

Ajouté par Julien Troufflard il y a presque 5 ans. Mis à jour il y a presque 5 ans.

Statut:
Nouveau
Priorité:
Normal
Assigné à:
Début:
15/01/2020
Echéance:
% réalisé:

0%

Temps estimé:

Description

Gérard,

Herezh ne détecte pas de jacobien négatif pour les éléments quadrangle linéaire. Je suis tombé par hasard sur ce problème mais j'imagine que ça pourrait poser des soucis sur les résultats de calcul et sans qu'on soit prévenu car pas de warning ou erreur.

En pièce jointe, j'ai mis un exemple d'élement "retourné" qui normalement devrait poser problème. Mais Herezh trouve un volume aux pti égal aux 4 pti et positif. Dans le .maple, les volumes aux pti sont en colonne 9, 17, 25 et 33.

A voir comment cela fonctionne la notion de Jacobien pour un élément 2D. Voilà ce que j'en ai compris en fouillant à droite à gauche :
Pour un élément 2D, la matrice jacobienne est une matrice 2x3 (deux vecteurs g_i dans un espace 3D). La matrice n'est pas carrée. Donc la notion de déterminant n'existe pas. Herezh passe par le tenseur métrique G. Normalement, la relation entre G et la matrice jacobienne J est : G = t^J.J. En faisant sqrt(det(G)), on obtient le déterminant de J, et c'est ce qui est utilisé pour faire les intégrales de volume.
Tout ceci fonctionne sans souci tant que le déterminant de J est positif : det(t^J) = det(J) et donc det(G) = det(J)*det(J) => det(J) = racine(det(G))
Mais en conséquence, si det(J) est négatif => det(J)*det(J) > 0 et donc pas de jacobien négatif détecté et le calcul se poursuit en silence sur l'élément distordu.

J'ai "google"isé un peu pour voir comment c'est fait ailleurs => rien trouvé. Je sais juste que les autres codes savent détecter les éléments quadrangle distordus.


Fichiers

exemple_Jacobien.tar (3,97 ko) exemple_Jacobien.tar Julien Troufflard, 15/01/2020 14:24
#1

Mis à jour par Julien Troufflard il y a presque 5 ans

Suite à notre discussion, je met ici la piste de réflexion : détecter un élément distordu en comparant les normales des divers pro de l élément

#2

Mis à jour par Julien Troufflard il y a presque 5 ans

Erratum dans le message precedent : pti et pas pro

Formats disponibles : Atom PDF

Redmine Appliance - Powered by TurnKey Linux