commit:2017:01_09
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
commit:2017:01_09 [2017/01/09 11:17] – wautelet | commit:2017:01_09 [2017/01/09 13:30] (current) – [Cas tests ajoutés/supprimés] wautelet | ||
---|---|---|---|
Line 4: | Line 4: | ||
==== Robustesse Opération de Projection ==== | ==== Robustesse Opération de Projection ==== | ||
+ | |||
+ | Jusqu' | ||
+ | |||
+ | * Assessment of methods for computing the closest point projection, penetration and gap functions in contact searching problems, Kopacka J. et al., 2015. | ||
+ | * On the solvability of closest point projection procedures in contact analysis: Analysis and solution strategy for surfaces of arbitrary geometry, Knoyukhov A. and Schweizerhof K., 2008. | ||
+ | |||
+ | Bien que négligé par les auteurs du premier papier, l' | ||
+ | |||
+ | Pour ne pas changer et comme d' | ||
Dans le cas de la projection sur une surface ou une courbe, le problème revient à minimiser une fonction distance. | Dans le cas de la projection sur une surface ou une courbe, le problème revient à minimiser une fonction distance. | ||
+ | Dans le cas de la projection orientée sur une surface ou une courbe, le problème revient à résoudre une équation non linéaire (distance d'un point de la courbe/de la surface à la droite vaut zéro). | ||
+ | |||
+ | En relisant une x fois les opérations de projection orientée, j'ai constaté qu' | ||
=== Méthode Hybride - Inexact Line Search === | === Méthode Hybride - Inexact Line Search === | ||
+ | |||
+ | Si la matrice hessienne n'est pas définie positive, nous avons dès lors d'une direction de croissance de la fonction objective. Il suffit tout simplement de prendre l' | ||
+ | Si la direction obtenue est presque perpendiculaire au gradient ou si la matrice hessienne est semi-définie positive (singulière), | ||
Dans le cas d'une minimisation d'une fonction non linéaire, l' | Dans le cas d'une minimisation d'une fonction non linéaire, l' | ||
- | Deux line search inexactes sont disponibles et implémentées : | + | Deux line search inexactes sont disponibles et implémentées |
- | Backtracking line search (Utiliser en général pour la résolution d' | + | * Backtracking line search (Utiliser en général pour la résolution d' |
- | + | ||
- | More Thuente line search (State of the art) (Utiliser en général pour la minimisation d'une fonction non linéaire) : il requiert juste l' | + | |
- | + | ||
+ | * More Thuente line search (State of the art) (Utiliser en général pour la minimisation d'une fonction non linéaire) : il requiert juste l' | ||
Finalement, j'ai du réécrire la procédure utilisée pour l' | Finalement, j'ai du réécrire la procédure utilisée pour l' | ||
- | Pour la projection sur les NURBS, il serait peut être intéressant de faire un BFGS pour calculer les projections, | + | Pour la projection sur les NURBS, il serait peut être intéressant de faire un BFGS method |
=== Modification de la matrice hessienne === | === Modification de la matrice hessienne === | ||
- | Afin de continuer à utiliser la procédure de Newton-Raphson et toujours garantir une diminution de la fonction objective, j'ai implémenté une méthode qui rend la matrice définie positive tout en conservant une matrice bien conditionnée. L' | + | Afin de continuer à utiliser la procédure de Newton-Raphson et toujours garantir une diminution de la fonction objective, j'ai implémenté une méthode qui rend la matrice définie positive tout en conservant une matrice bien conditionnée. L' |
=== Résumé === | === Résumé === | ||
Que soit avec l'une ou l' | Que soit avec l'une ou l' | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | ==== Normale sur un patch de Coon bilinéaire ==== | ||
+ | |||
+ | J'ai corrigé l' | ||
+ | |||
+ | Sinon, il y avait une différence si on calculait la normale à partir des deux tangentes locales ! | ||
==== Projection Nurbs Surface ==== | ==== Projection Nurbs Surface ==== | ||
Line 50: | Line 73: | ||
On peut demander aussi à calculer les tangentes et les normales par la même occasion. | On peut demander aussi à calculer les tangentes et les normales par la même occasion. | ||
+ | |||
+ | ==== Line Search Exact ==== | ||
+ | |||
+ | J'ai juste ajouté un interface pour modifier les paramètres du line search exacte. L' | ||
==== Cas Test ==== | ==== Cas Test ==== | ||
Line 59: | Line 86: | ||
< | < | ||
- | [a]: | + | [a]:mtMath/ |
+ | [a]: | ||
[r]: | [r]: | ||
</ | </ | ||
Line 66: | Line 94: | ||
< | < | ||
- | [a]: | + | [a]:mtMath/ |
+ | [a]: | ||
+ | [a]: | ||
+ | [a]: | ||
+ | [a]: | ||
[r]: | [r]: | ||
</ | </ |
commit/2017/01_09.1483957035.txt.gz · Last modified: by wautelet