• Aucun résultat trouvé

Repr´esentation et stockage

Dans le document The DART-Europe E-theses Portal (Page 26-29)

Stocker le maillage implique de repr´esenter et stocker sa topologie. En plus d’un stockage compact des points, arˆetes ou mailles, la structure de donn´ees doit fournir les primitives d’acc`es et de modifi-cation des relations d’incidences enO(1). Dans notre cas, c’est un aspect important car le stockage du maillage, ainsi que les motifs d’insertion et de mise `a jour des donn´ees topologiques doivent tenir compte des contraintes hardware (pr´eserver le placement m´emoire, minimiser les indirections lors des requˆetes de voisinage etc.). En r´ealit´e le choix d’une repr´esentation repose sur quatre crit`eres :

• ledomaine repr´esent´e : avec ou sans bord, donn´ees associ´ees ou non;

• le type derequˆetes : acc`es en ´ecriture ou non, type et degr´e de voisinage;

• lestockage et acc`es aux donn´ees : empreinte m´emoire, m´emoire partag´ee ou distribu´ee;

• lag´en´ericit´e.

La repr´esentation choisie devrait id´ealement permettre de v´erifier les invariants topologiques avant validation des op´erations effectu´ees. De nombreuses structures de donn´ees de maillages existent dans la litt´erature r´epondant plus ou moins `a l’ensemble de ces crit`eres. Cette section n’a pas pour but de les lister et de les comparer, mais plutˆot de donner une synth`ese des mod`eles de repr´esentations et les structures de donn´ees qui en d´ecoulent. Elle s’appuie essentiellement sur les travaux d´ecrits dans [2].

mod`eles explicites. Ici, la topologie est vue comme une connexion de cellules diff´erentes (points, arˆetes ou mailles). Elle d´epend de la dimension du maillage et est repr´esent´ee par un graphe d’incidence au sens de la d´efinition14.

D´efinition 14 (graphe d’incidence).SoitTh un maillage de dimensiond.

Le graphe d’incidence associ´e `aTh d´ecrit les connectivit´es des cellules deTh. Il s’agit d’un graphe orient´eG= (V,A) tel que:

• V= (V1,· · ·,Vn), n≤d, o`u Vk d´esigne l’ensemble des k-cellules de M.

• A= (A1,· · · ,An), o`uAk d´esigne les relations d’incidence entre paires de cellules deVi×Vj. Un exemple de graphe d’incidence d’un maillage non structur´e est donn´e `a la figure 1.8. Une notion qui en est tr`es proche est celle des diagrammes dehassequi servent `a repr´esenter les relations entre ´el´ements d’ensembles partiellement ordonn´es.

f1

f3

f2

e1 e6

e7

e9

e3

e2

e4

e5

e8

n1 n2

n3

n4

n5

n7

n6

f2 f3

e1 e2 e3 e4 e5 e6 e7 e8 e9

n1 n2 n3 n4 n5 n6 n7

f1 2

1

0

(a) cellules (b) relations d’incidence

Figure 1.8: Exemple de topologie d’un maillage non-structur´e [2].

10A proprement parler, la m´` etriquegpest une forme bilin´eaire sym´etrique. La diff´erence entre vari´et´e riemannienne et pseudo-riemannienne (Γ, gp)p∈Γ est qu’une m´etrique pseudo-riemanniennegpn’est pas forc´ement d´efinie positive.

c2018.HOBYRAKOTOARIVELO

26 1.1. Notions de topologie

En fait, on peut distinguer plusieurs mod`eles de repr´esentation, selon le type et la richesse des connectivit´es que l’on veut disposer. L’id´ee est de ne pas stocker toutes les cellules et leurs relations mais seulement celles n´ecessaires `a l’algorithme. En supposant qu’on stocke les points et les mailles et que chaque maille est d´efinie par par un triplet de points, les mod`eles les plus basiques sont :

• 0→0: chaque point connait ses points voisins. Sans donn´ee suppl´ementaire, il ne permet pas de retrouver directement le voisinage d’une maille.

• 0→3: chaque point connait ses mailles incidentes. Le voisinage d’une maille K s’obtient en intersectant les mailles incidentes `a chaque sommetp0, p1, p2 deK;

• 3→3 : chaque maille connait ses mailles voisines. Le voisinage d’un point p s’obtient en

´enum´erant les voisins Kj∈N[Ki] tel quep∈Ki∩Kj. Un exemple est donn´e `a la figure1.9.

−→

listes d’indicences

i points voisins mailles incidentes mailles voisines 1 [2,3,4,8,7,6] [1,4,5,6,7,2] [2,3,4]

2 [1,3,5,12,13,6] [1,3,11,12,13,4] [1,7,8]

3 [1,2,5,10,9,4] [1,2,8,9,10,3] [1,11,10]

4 [1,3,9,14,8] [7,2,8,16,17] [1,5,13]

5 [2,3,10,15,12] [11,3,10,18,19] [4,6,15]

6 [1,2,13,11,7] [5,4,13,14,15] [5,7,·]

· · · ·

Figure 1.9: Repr´esentation d’une surface triangul´ee par un graphe d’incidence.

mod`eles implicites. Ici, la topologie est port´ee par un seul type d’´el´ement sur lesquels les re-lations d’adjacence et d’incidence des cellules seront ensuite construites. L’avantage est que toutes les cellules de type et dimension diff´erentes sont repr´esent´eesimplicitementet identiquement. Parmi les repr´esentations les plus r´epandues, l’´el´ement abstrait de base est l’arˆete(ou partie d’arˆete). Les mod`eles implicites usuels sont donn´es `a la figure1.10pour le cas des maillages surfaciques :

e e1

e2

e3

e4

s1

s2

f1 f2 e eopp

esuiv s

f e

esuiv

ssuiv

eprev sprev

q1

org(q2) org(q1)

next(q1)

rot(q1)=q2

arˆetes ail´ees demi-arˆetes arˆetes orient´ees quad-edge Figure 1.10: Repr´esentation implicite de maillages surfaciques `a base d’arˆetes [2]. Ici, les points et les

mailles sont pr´esentes mais leurs connectivit´es sont port´ees exclusivement par les arˆetes.

• arˆetes ail´ees: ici chaque arˆete r´ef´erence les nœuds et faces incidents, ainsi que les quatre arˆetes partageant une face et un point avec elle.

• demi-arˆetes: cette fois, une arˆete est dupliqu´ee pour chaque face incidente. Chaque demi-arˆete r´ef´erence la face qui la contient, le point vers lequel elle pointe, la demi-arˆete oppos´ee et la demi-arˆete suivante dans la mˆeme face.

• arˆetes orient´ees: d´eriv´e de (b), chaque arˆete est ´egalement dupliqu´ee. Une arˆete orient´ee appar-tient `a une face, et r´ef´erence uniquement les arˆetes pr´ec´edente et suivante, ainsi que les points pr´ec´edents et suivants.

• quad-edge: plus g´en´eral que les trois autres, il permet de repr´esenter des vari´et´es orientables ou non. En fait il permet de repr´esenter le maillage primal et dualM1,M2 d’une surface. Ici une

c2018.HOBYRAKOTOARIVELO

arˆete est d´ecompos´ee en quatre brins, chacun pointant sur une face et un sommet incident au brin. Si un brinepointe sur respectivement une face et un point dansM1, alorsM2se construit en faisant pointeresur respectivement un point et une face.

mod`eles ordonn´es. L’inconv´enient de ces repr´esentations `a base d’arˆetes est qu’elles sont difficiles

`

a g´en´eraliser. Cela est dˆu au fait que l’´el´ement de base (arˆete) est d´ependant de la dimension. Les mod`eles ordonn´es comme les cartes combinatoires de dimension nau sens de la d´efinition 15, et les cartes g´en´eralis´eesfournissent le degr´e d’abstraction n´ecessaire permettant de repr´esenter des vari´et´es orientables constitu´ees de cellules quelconques en dimension quelconque.

D´efinition 15 (carte combinatoire).Uned-carte, ou carte combinatoire de dimensiond≥0, est une alg`ebre C= (B, β1,· · ·, βd)telle que :

• Best un ensemble fini d’´el´ements appel´esbrins;

• β1 est une permutation sur B;

• βi est une involution surBavec 2≤i≤d;

• βi◦βj sont des involutions sur B, avec1≤i < i+ 2≤j≤d.

Dans uned-carte,

• β1 permet de parcourir les brins qui composent une face commune ; elle relie les demi-arˆetes d’une face entre elles.

• β2 permet de passer d’un brin d’une face au brin d’une autre face ; elle relie les faces d’un plan ou d’une surface entre elles.

• β3permet de passer d’un brin appartenant `a une maille volumique (hexa`edre, prisme, t´etra`edre, pyramide etc.) au brin appartenant `a une maille voisine. (voir figure1.11)

β1 β1 β1 β1

β1

β1

β1

β1 β1

β1

β1

β1

β2

β2

β2

β1 β2 β3 (en bleu)

Figure 1.11: Relations d’incidence dans une carte combinatoire [2].

arˆete =hβ2i[b]

b

nœud =hβ2◦β−11 i[b]

b

face =hβ1i[b]

b

Figure 1.12: Reconstitution des cellules `a partir d’un brin dans une 2-carte [2].

en pratique. Ici, la topologie est enti`erement port´ee par les brins. En calcul num´erique, il est n´eanmoins utile d’acc´eder aux relations d’incidence des autres cellules (reconstruction de valeurs sur un point, transfert de flux `a travers une arˆete etc.). Ainsi, la d-carte est souvent enrichie des autres cellules (points, faces et mailles). Ces derni`eres ainsi que leurs voisinages sont d´efinies par composition judicieuse desβi donn´ee `a la d´efinition16. Leur reconstitution au sein d’une2-carte est illustr´ee `a la figure1.12.

c2018.HOBYRAKOTOARIVELO

Dans le document The DART-Europe E-theses Portal (Page 26-29)