Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2017:12_17

Differences

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

Link to this comparison view

Next revision
Previous revision
commit:2017:12_17 [2017/12/17 12:21] – created wauteletcommit:2017:12_17 [2017/12/17 18:34] (current) wautelet
Line 3: Line 3:
 Ce commit est pour ajouter les parcours avancées des hiérarchies de volume frontière dans le but de rapatrier mes derniers développements.  Ce commit est pour ajouter les parcours avancées des hiérarchies de volume frontière dans le but de rapatrier mes derniers développements. 
  
-==== DdContactInteraction - Double Passe - Boundary Volume Hierarchy ====+==== Boundary Volume Hierarchy - K-DOP ====
  
-Au lieu de passer séquentiellement chaque hiérarchie de volume frontière, d'abord celle du maître avec les points de l'esclave et puis celle de l'esclave avec les points du maîtreIl peut être plus intéressant de parcourir ensemble les deux hiérarchies et répertorier l'ensemble des candidats (segment ou face) pour la recherche du contact local. Cette procédure ne se fait pas en parallèle (recherche globale), mais la recherche locale se fait bel et bien en parallèle via la routine TBB !+J'ai ajouté la possibilité d'utiliser un autre type de volume frontière pour la hiérarchie de volume frontière : ce sont les discrete oriented polytope'sIls permettent une meilleure approximation des entités géométriques maîtres en contact comparée au boite alignée sur les axes cartésiens et ils peuvent dès lors éviter des calculs de détection de contact local, tout en restant relativement raisonnable du point de cout de calcul pour leur construction et leur mise à jour.
  
-==== ScContactInteraction Self Boundary Volume Hierarchy ====+Exemples de visualisation des K-DOPs :
  
-Dans le cas de l'auto-contact, puisque chaque point à projeter fait partie de l'hiérarchie de volume frontière, nous avons toujours une sortie triviale, qui consiste en les courbes adjacentes ou les faces adjacentes au pointDonc sous sa forme classique, l'algorithme produit toujours une sortie puisque le point appartient toujours dans les boites imbriquées les unes dans les autres. Ainsi, il pourrait être intéressant de parcourir cette hiérarchie de volume frontière sous forme globale pour tenir compte d'un critère de courbure et d'un critère d'adjacence. Ainsi, si on a une surface plane initialement, on n'a pas de recherche de contact dès le test sur le sommet de l'hiérarchie de volume frontière (car pas de courbure dedans), et cela tant que l'on a pas la présence d'un pli (post-flambement d'un longeron). Le critère d'adjacence permet justement d'éviter des tests triviaux pour l'intersection des boites+{{:commit:2017:kdop2d0000.png?600|}} 
 + 
 +{{:commit:2017:kdop3d0000.png?600|}}
  
 ==== Tests ==== ==== Tests ====
  
-J'ai ajouté des tests pour la recherche globale du contact en auto-contact et en contact avec une hiérarchie de volume frontière. +J'ai ajouté des tests pour 
  
 Pour pouvoir utiliser cette fonctionnalité, il suffit de générer un BVHOptions et le transmettre à l'interaction de contact :  Pour pouvoir utiliser cette fonctionnalité, il suffit de générer un BVHOptions et le transmettre à l'interaction de contact : 
 <code> <code>
-ci = Sc|DdContactInteraction(1)+ci = Rd|FdRd|Sc|DdContactInteraction(1)
 option = BVHOptions() option = BVHOptions()
-option.setUseGlobalSearch(True|False)+option.setBoundingVolumeCellType(AAOB|KDOP)
 ci.setBVHOptions(option)  ci.setBVHOptions(option) 
 </code> </code>
  
-<note important> La recherche globale n'est pas fonctionnelle si on se trouve dans le cas d'un contact déformable-déformable en simple passe car on a qu'une seule hiérarchie de volume frontière. Dans le cas de l'auto-contact, +
- la recherche globale est activée uniquement si on utilise une hiérarchie de volume frontière de type auto-contact (Volume Frontière + Critère de courbure + Critère d'adjacence) </note>+
  
 ==== Références ==== ==== Références ====
commit/2017/12_17.1513509666.txt.gz · Last modified: 2017/12/17 12:21 by wautelet

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki