commit:2017:08_10
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
commit:2017:08_10 [2017/08/11 15:11] – [Méthode d'augmentations alternatives] wautelet | commit:2017:08_10 [2017/08/11 16:43] (current) – wautelet | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== Commit 2017-06-07 ====== | + | ===== Commit 2017-08-11 ====== |
Ce commit est pour améliorer quelques routines liées au contact et pour mettre progressivement mes développements sur la version courante. | Ce commit est pour améliorer quelques routines liées au contact et pour mettre progressivement mes développements sur la version courante. | ||
Line 9: | Line 9: | ||
Pour pouvoir utiliser les nouveaux schémas d' | Pour pouvoir utiliser les nouveaux schémas d' | ||
+ | < | ||
+ | parameters[' | ||
+ | augLagAugmentation = AugLagExtrapolationAugmentation(alm) | ||
+ | augLagAugmentation.setExtrapolationMethod(parameters[' | ||
+ | </ | ||
Parmi ces schémas, celui qui semble le plus efficace à l' | Parmi ces schémas, celui qui semble le plus efficace à l' | ||
Line 15: | Line 19: | ||
===== Robustesse des projections ===== | ===== Robustesse des projections ===== | ||
- | Après | + | === Critère de divergence des itérations === |
+ | Afin d' | ||
+ | === Critère de convergence === | ||
- | Clairement là, il y a un problème | + | J'ai constaté que le terme de droite dans les critères normés sur les angles étaient trop stricts lorsque le résidu était faible ou les normes de tangentes étaient trop faibles. J'ai ajouté tout simplement une opération maximale entre la valeur 1.0 et la valeur actuelle de la norme pour passer automatiquement d'une norme relative à une norme absolue. |
+ | === Inexact Line Search === | ||
- | Finalement, j' | + | J' |
+ | === Interface des tolérances In/Out pour les outils de contact === | ||
- | Ce qui donne par exemple pour le cas de la squareBox | + | Après avoir lancé une série |
+ | |||
+ | Clairement là, il y a un problème suite à l' | ||
+ | Sans tolérance Out, on observe que des points ne sont pas en contact sur le coin de la boîte. | ||
+ | {{: | ||
- | + | Avec tolérance Out de 1E-3, on observe que ces points sont en contact sur le coin de la boîte. | |
+ | {{: | ||
+ | |||
+ | Il reste malheureusement à choisir la valeur de cette tolérance par cas-test ou pour tous les cas tests (1E-6?). Il faut savoir que les tests du type SurroundednessTest2D ou SurroundednessTest3D utilise une tolérance de 1E-6 pour le IN et OUT. | ||
+ | |||
+ | < | ||
+ | skinsetPunchTool = ContactTool(skinsetPunch) | ||
+ | skinsetPunchTool.setOuterTolerance(parameters[' | ||
+ | skinsetPunchTool.setInnerTolerance(parameters[' | ||
+ | </ | ||
+ | |||
+ | === Projection Informations === | ||
+ | |||
+ | Finalement, j'ai ajouté la possibilité de faire des statistiques sur les projections sur une courbe ou une surface (un peu comme les EAS) : | ||
+ | |||
+ | < | ||
+ | skinsetPunchTool = ContactTool(skinsetPunch) | ||
+ | skinsetPunchTool.setProjectionInfoVerbose(True) | ||
+ | </ | ||
+ | |||
+ | Ce qui donne par exemple pour le cas de la squareBox (Première détection de contact) : | ||
+ | |||
+ | < | ||
+ | Projection Infos: 2897/3924 effective projections and 25/3924 failed projections | ||
+ | (average nbNRIt = 3.59372; average nbLSIt = 2.74042; average effective nbLSIt = 2.6236) | ||
+ | </ | ||
===== Divers ===== | ===== Divers ===== | ||
Line 67: | Line 104: | ||
</ | </ | ||
- | --- // | + | --- // |
commit/2017/08_10.1502457118.txt.gz · Last modified: by wautelet