*ERROR in e_c3d: nonpositive jacobian determinant in element

Forum destiné aux questions et discussions en français
Forum rules
Règles du forum et informations utiles.

VEUILLEZ LIRE CECI AVANT DE DEMANDER DE L'AIDE
lena22
Posts: 18
Joined: Tue Sep 10, 2019 8:08 pm

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby lena22 » Sun Oct 13, 2019 5:15 pm

Bonsoir Alex, merci de ta réponse!

J'ai essayé Abaqus, mais sur mon ordinateur impossible d'importer le fichier...
La version étudiante de Nastran ne me permet pas de faire cette analyse, et Freecad me paraissait être un logiciel "simple" d'utilisation...
En effet j'ai les caractéristiques mécaniques liées à l'os, et je souhaiterai une déformation plastique afin d'étudier la rupture du modèle.

Je vais continuer à le retoucher (sans tomber dans l'excès) sur Meshlab, mais j'ai l'impression que les outils sont aussi limités....
User avatar
flachyjoe
Posts: 631
Joined: Sat Mar 31, 2012 12:00 pm
Location: Limoges, France

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby flachyjoe » Sun Oct 13, 2019 8:55 pm

Quelques notes pour le nettoyage d'un maillage avec Meshlab, tout ce passe dans le menu Filters / Cleaning and Repairing :

Code: Select all

- Unify duplicate vertices
- Merge Close Vertices
	Merging distance 1% (default)
- Remove Face from Non Manifold Vertices
- Remove isolated pieces (wrt Diameter)
	max diameter 10% (default)
- Remove unreferenced vertices
Il peut sans doute être intéressant de tester les algo du menu Remeshing, Simplification and Reconstruction mais beaucoup sont bugués...
- Flachy Joe -
alias FFW @ irc.freenode.net #freecad et #freecad-fr
"Puisqu’on ne peut changer la direction du vent, il faut apprendre à orienter les voiles." Anonyme
lena22
Posts: 18
Joined: Tue Sep 10, 2019 8:08 pm

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby lena22 » Sun Oct 13, 2019 9:04 pm

Merci Flachyjoe,

J'avais déjà utilisé ces paramètres et en plus "close holes" et "simplification: quadric edge collapse decimation" (pour alléger mon fichier) dans "remeshing, simplifaction and reconstruction".
User avatar
-alex-
Posts: 242
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby -alex- » Sun Oct 13, 2019 9:13 pm

lena22 wrote:
Sun Oct 13, 2019 5:15 pm
Freecad me paraissait être un logiciel "simple" d'utilisation...
Oui Freecad est plutôt simple pour modéliser des objets simples, mais il demande tout de même un temps d'apprentissage pour une utilisation avancée. Je dis ça de façon généraliste, car dans ton cas le problème n'est pas là.
La difficulté c'est que tu dois travailler un maillage, et Freecad n'est pas vraiment adapté pour cela, il permet plutôt de modéliser des formes Brep, des surfaces entières et exactes mathématiquement. Il est plutôt orienté modélisation engenierie.
Alors qu'un maillage est une approximation, une discrétisation par facettes multiples, qui va approcher une forme 3D.
Chaque technique a ses avantages et ses inconvénients.
De toute façon tu n'as pas le choix de la technologie, tes données d'entrée sont un nuage de points ou un maillage.
Ceci dit, comme Freecad est très polyvalent, il permet de traiter les maillages aussi, mais de façon limité autant que je sache.

lena22 wrote:
Sun Oct 13, 2019 5:15 pm
Je vais continuer à le retoucher (sans tomber dans l'excès) sur Meshlab, mais j'ai l'impression que les outils sont aussi limités....
Essai peut-être Blender et son outil lowpoly, je ne l'ai pas essayer encore, mais peut-être que tu obtiendra un maillage de meilleure qualité : https://m.youtube.com/watch?v=Mm4X6_XjSBs

lena22 wrote:
Sun Oct 13, 2019 5:15 pm
..., et je souhaiterai une déformation plastique afin d'étudier la rupture du modèle.
La plastification de la matière et l'approche de la rupture est un domaine où il est plus délicat d'être précis avec des outils numériques. L'écart avec le réel peut être significatif, surtout pour les matériaux fragiles. En tout cas c'est fort intéressant.
Là ça dépasse mes connaissances, j'aurais du mal à t'aider, mais je sais que Ccx permets de faire des analyses de ce type. Des exemples ici: https://github.com/mkraska/CalculiX-Examples/
Particulièrement l'exemple de cintrage du fil, où celui de la striction d'éprouvette.

Enfin, et pour revenir à Freecad, un des avantages du module FEM utilisé sur modèles Brep, c'est qu'il est possible d'appliquer des efforts sur des surfaces entières très rapidement, idem pour les conditions aux limites.
Alors que sur un modèle maillé, avec Ccx ou Z88 par exemple, il faudra sélectionner des groupes de noeuds ou de faces, ce qui est long, délicat et fastidieux.
Je te dis cela pour mettre en évidence que si ton modèle 3D est un maillage ou un solide à multiples facettes, tu sera de toute façon obligée de sélectionner un grands nombres de faces pour appliquer tes contraintes. Donc le module FEM ne te sera pas forcément d'un grand secours pour cela.
En revanche il peut te permettre d'avancer la préparation de ton fichier inp (data input) en vue de l'utiliser dans Calculix directement. Ici des liens utiles pour faire le lien entre modélisation Freecad et l'exploitation des résultats dans Ccx launcher: https://forum.freecadweb.org/viewtopic.php?f=36&t=35576
Bon développement, tiens nous au courant. J'essaierai de traiter les modèles que tu as envoyé si j'ai un moment.
Last edited by -alex- on Mon Oct 14, 2019 8:13 pm, edited 1 time in total.
lena22
Posts: 18
Joined: Tue Sep 10, 2019 8:08 pm

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby lena22 » Mon Oct 14, 2019 11:07 am

Bonjour,

Merci beaucoup Alex, je vais télécharger Blender et essayer...

J'ai tenté une nouvelle analyse sur la mandibule de bébé, un nouveau message d'erreur s'est affiché, si ca se trouve c'est pire...

Je joins le fichier
mdbbfreecad.FCStd
(878.04 KiB) Downloaded 14 times
dxp.dev
Posts: 103
Joined: Tue Dec 11, 2018 12:57 pm

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby dxp.dev » Mon Oct 14, 2019 5:05 pm

Si tu as accès à Windows 10, apparement leur logiciel intégré dans cette version, "3D Builder", donne de bon résultats pour la réparation des maillage
Imperial system makes no sense, go metric ! ! !
lena22
Posts: 18
Joined: Tue Sep 10, 2019 8:08 pm

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby lena22 » Tue Oct 15, 2019 6:50 am

Bonjour à tous,

Merci dxp.dev, j'ai essayé avec 3D builder mais les résultats ne sont pas meilleurs qu'avec Meshlab...
Mon modèle ne s'ouvre pas sur Blender, je ne sais pas pourquoi, le format du fichier et la version du logiciel sont pourtant bons...

Sinon j'ai comblé mon modèle lors de la segmentation, les trous (formés par les cavités) sont bouchés et le modèle est plein.
Pourtant le même message d'erreur s'affiche "nonpositive jacobian determinant in element"
Est ce que c'est un modèle qui vous semble "mieux" exploitable?

https://mon-partage.fr/f/sr0sIdmZ/

Merci d'avance!
User avatar
-alex-
Posts: 242
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby -alex- » Wed Oct 16, 2019 9:41 pm

lena22 wrote:
Tue Oct 15, 2019 6:50 am
..
Mon modèle ne s'ouvre pas sur Blender, je ne sais pas pourquoi, le format du fichier et la version du logiciel sont pourtant bons...
C'est due à la position de ton modèle dans l'espace, il est éloigné de l'origine générale.
- nouveau fichier
- suppression du cube présent par défaut
- fichier-> import-> stl
- selection de l'objet dans l'arbre
- clic droit sur la scene -> menu contextuel -> set origin -> Geometry to origin
- si tu ne vois toujours rien -> menu view -> Frame all
Tu dois voir ensuite l'objet
Puis tu suis le tuto low poly -> il me semble que les paramètres smouth + octree=8 + scale=0.8 donnent un résultat correct, mais assez lourd en nombres de faces...
Blender-set-geom-origin-view-frame-all.png
Blender-set-geom-origin-view-frame-all.png (619.17 KiB) Viewed 478 times


lena22 wrote:
Tue Oct 15, 2019 6:50 am
..
Sinon j'ai comblé mon modèle lors de la segmentation, les trous (formés par les cavités) sont bouchés et le modèle est plein.
Pourtant le même message d'erreur s'affiche "nonpositive jacobian determinant in element"
Est ce que c'est un modèle qui vous semble "mieux" exploitable?
J'ai pu mailler ton nouveau fichier 'solide", et celui que j'avais "réduit" (mais plus lourd que le tiens):
maillages-Gmsh-mandibule-inf.png
maillages-Gmsh-mandibule-inf.png (174.55 KiB) Viewed 478 times

Mais ne te réjouies pas trop vite, ces résultats ne sont pas exploitables.
Que ce soit avec le stl détaillé de 30Mo, ou ton fichier allégé "solide", le maillage comporte toujours des trous, pas des cavités, je veux dire des trous de facettes ou des coques disjointes.
Lorsque tu convertis ton maillage en solide dans Part -> mesh to solid ensuite tu peux vérifier la géométrie de la forme avec l'outil Check geom (le cône bleu) et tu verra qu'il ne trouve que des coques (3!), et 0 solide. Donc ton "solide" n'en est pas un, et c'est un problème, tu n'aura pas de maillage FEM volumique sans solide.
Bref, ensuite j'ai maillé avec Gmsh, et ça a fonctionné, mais ça fait une coque, percée en de multiples endroits: inexploitable.
J'ai quand même attribué une épaisseur et un matériau, puis lancé une analyse fréquentielle -> erreur chez moi
Je soupçonne un manque de mémoire de ma machine, d'ailleurs ça a été un point critique pratiquement à chaque étape du process avec des modèles comportant un grand nombre de faces...

Quand tu dis "j'ai comblé mon modèle lors de la segmentation", tu as une marge de manœuvre importante à cette étape?
Il faut que tu trouves un moyen d'améliorer grandement la qualité de tes données d'entrée, moins de trous, moins de micro jonctions.
Last edited by -alex- on Thu Oct 31, 2019 11:42 pm, edited 1 time in total.
lena22
Posts: 18
Joined: Tue Sep 10, 2019 8:08 pm

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby lena22 » Wed Oct 16, 2019 11:07 pm

Merci beaucoup alex, pour le temps que tu as pu consacrer à tout ça!!

Je ne sais pas comment améliorer mon modèle pour enlever tout ces trous et micro-jonctions...
J'ai essayé, en effet lors de la segmentation de "combler" la partie interne de l'os (corticale interne, moins dense et donc non segmentée par le logiciel qui ne la reconnait pas) mais même si malgré cette étape manuelle, des trous persistent, je ne vois plus comment faire.
Capture d’écran 2019-10-17 à 00.49.18.png
Capture d’écran 2019-10-17 à 00.49.18.png (134.58 KiB) Viewed 465 times
Si je réduis trop mon nombre de faces, le modèle ressemble à une poutre, certes analysable, mais non exploitable dans mon cas...

Tu mailles systématiquement avec Gmsh, ou netgen est tout aussi utilisable?

Je vais tenter d'améliorer mon modèle grâce au logiciel Blender et à tes étapes (merci encore!)

Je n'arrive même pas à convertir mon modèle en solide car "Cannot convert (...) because Shape is not a shell." (on part de très loin avec moi...)
User avatar
-alex-
Posts: 242
Joined: Wed Feb 13, 2019 9:42 pm
Location: France

Re: *ERROR in e_c3d: nonpositive jacobian determinant in element

Postby -alex- » Tue Oct 22, 2019 10:40 pm

lena22 wrote:
Wed Oct 16, 2019 11:07 pm
Tu mailles systématiquement avec Gmsh, ou netgen est tout aussi utilisable?
Netgen est très bien aussi, mais avec son maillage adaptatif il peut faire ramer sévèrement la machine suivant le modèle. Et là je le sens mal.

Bon je crois que j'ai un flux de travail qui fonctionne :D
En tout cas ça marche avec ton modèle simplifié mad_ad.
C'est un peu délicat, il faut retoucher le modèle sous blender puis bidouiller un peu sous Freecad.
Je ne garantis pas que ça fonctionne sur le modèle détaillé, il est tellement complexe avec ses cavités et paroies internes multiples, très très hétérogène...
J'en dirait plus demain quand j'aurai du temps.
Last edited by -alex- on Wed Oct 23, 2019 4:56 pm, edited 1 time in total.