Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2017:08_10

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
commit:2017:08_10 [2017/08/11 15:43] – [Commit 2017-06-07] wauteletcommit:2017:08_10 [2017/08/11 16:43] (current) wautelet
Line 9: Line 9:
 Pour pouvoir utiliser les nouveaux schémas d'augmentation avec Metafor, je vous indique les différents commandes :  Pour pouvoir utiliser les nouveaux schémas d'augmentation avec Metafor, je vous indique les différents commandes : 
  
 +<code> 
 +parameters['extrapolationMethod'] = ALM_NESTREROV_EXTRAPOLATION #ALM_BARZILAIBORWEIN_EXTRAPOLATION|ALM_NESTREROV_EXTRAPOLATION|ALM_CLASSICAL_EXTRAPOLATION 
 +augLagAugmentation = AugLagExtrapolationAugmentation(alm) 
 +augLagAugmentation.setExtrapolationMethod(parameters['extrapolationMethod']) 
 +</code>
  
 Parmi ces schémas, celui qui semble le plus efficace à l'heure actuelle est le schéma de Nesterov.  Parmi ces schémas, celui qui semble le plus efficace à l'heure actuelle est le schéma de Nesterov. 
Line 33: Line 37:
 Clairement là, il y a un problème suite à l'absence d'une épaisseur (artificielle) des courbes entre deux faces. Puisque nous résolvons notre calcul de projection à une tolérance près, il est fort probable, si la projection doit être sur la courbe entre les deux faces, que l'on ne trouve pas de projection suite au fait que nous sommes à chaque fois du côté extérieur de la face lors du calcul de la projection. En ajoutant une tolérance Out non nulle, le problème est en effet résolu puisque nous trouvons bel et bien une projection dans ce cas-là. Cette problématique est bel et bien connue des logiciels de CAO (notamment Parasolid). Clairement là, il y a un problème suite à l'absence d'une épaisseur (artificielle) des courbes entre deux faces. Puisque nous résolvons notre calcul de projection à une tolérance près, il est fort probable, si la projection doit être sur la courbe entre les deux faces, que l'on ne trouve pas de projection suite au fait que nous sommes à chaque fois du côté extérieur de la face lors du calcul de la projection. En ajoutant une tolérance Out non nulle, le problème est en effet résolu puisque nous trouvons bel et bien une projection dans ce cas-là. Cette problématique est bel et bien connue des logiciels de CAO (notamment Parasolid).
  
-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.+Sans tolérance Out, on observe que des points ne sont pas en contact sur le coin de la boîte.
  
-=== Projection Informations ===+{{:commit:2017:notoleranceout0000.png?800|}}
  
-Finalement, j'ai ajouté la possibilité de faire des statistiques sur les projections sur une courbe ou une surface (un peu comme les EAS) :+Avec tolérance Out de 1E-3,  on observe que ces points sont en contact sur le coin de la boîte.
  
 +{{:commit:2017:toleranceout0000.png?800|}}
  
-Ce qui donne par exemple pour le cas de la squareBox : +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.
  
 +<code>
 +skinsetPunchTool = ContactTool(skinsetPunch)
 +skinsetPunchTool.setOuterTolerance(parameters['outerTolerance'])
 +skinsetPunchTool.setInnerTolerance(parameters['innerTolerance'])
 +</code>
  
 +=== 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) :
  
 +<code>
 +skinsetPunchTool = ContactTool(skinsetPunch)
 +skinsetPunchTool.setProjectionInfoVerbose(True)
 +</code>
 +
 +Ce qui donne par exemple pour le cas de la squareBox (Première détection de contact) : 
 +
 +<code>
 +Projection Infos: 2897/3924 effective projections and 25/3924 failed projections 
 +(average nbNRIt = 3.59372; average nbLSIt = 2.74042; average effective nbLSIt = 2.6236)
 +</code>
  
 ===== Divers ===== ===== Divers =====
Line 82: Line 104:
 </code> </code>
  
- --- //[[gwautelet@ulg.ac.be|gaëtan]] 2017/08/10 21:59//+ --- //[[gwautelet@ulg.ac.be|gaëtan]] 2017/08/11 21:59//
  
commit/2017/08_10.1502459018.txt.gz · Last modified: 2017/08/11 15:43 by wautelet

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki