6.2.3.1 : Que sont les octree et les quadtree ?
Les octree permettent de trier des objets dans un espace à 3 dimensions (on parle de quadtree à 2 dimensions).
Un octree décrit généralement un espace sous la forme d'un cube, ou d'un parallélépipède rectangle.
La construction d'un octree repose sur des rêgles simples :
- Un octree peut être vide
- Un octree ne peut pas contenir plus d'un objet à trier à la fois
- Lorsque l'on doit ajouter un objet à trier dans un octree déjà plein, on le coupe en 8 ($2\times2\times2$
), ou 4 dans le cas d'un quadtree, puis on replace les deux objets dans leurs sous-octree ou sous-quadtree respectif.
La figure 15 illustre le remplissage d'un quadtree.
La figure 16 illustre le remplissage d'un octree.
Nous devons adapter l'utilisation des cellules (octree ou quadtree) à notre problème à $N$
corps :
- mettre à jour la masse de la cellule en fonction des particules qu'elle contient
- mettre à jour le centre de gravité de la cellule en fonction des particules qu'elle contient
Cela nous permettra de traiter une cellule comme une particule.