• Aucun résultat trouvé

CHAPITRE 4 MÉTHODES PROPOSÉES

4.2 Méthode proposée pour la simulation du régime permanent

4.2.3 Décomposition de domaine

Les méthodes de décomposition de domaine (Saad, 2003) sont basées sur le célèbre principe « diviser pour régner ». Ces méthodes tentent de résoudre un problème défini sur un domaine Ω = S

ii à partir des solutions calculées sur les sous-domaines Ωi.

Plusieurs raisons motivent une décomposition de domaine. Premièrement, la résolution du problème sur un sous-domaine Ωi de dimension plus réduite est souvent plus rapide et moins coûteuse en mémoire. Deuxièmement, lorsque le problème implique des phénomènes physiques de nature différente, il est généralement plus simple de le décomposer sur des domaines sé- parés où les équations à résoudre sont de même nature. Troisièmement, le calcul dans les différents sous-domaines peut souvent être effectué en parallèle, ce qui permet d’exploiter le parallélisme des architectures informatiques modernes. Aujourd’hui, la popularité des mé- thodes de décomposition de domaine est principalement due à l’émergence des technologies de calcul parallèle.

On distingue deux familles de méthodes de décomposition de domaine : les méthodes basées sur la procédure alternative de Schwarz et les méthodes basées sur le complément de Schur. La méthode proposée est basée sur le complément de Schur, utilisé avec un coloriage « rouge- noir ».

Complément de Schur :

Le complément de Schur (Saad, 2003) est une matrice qui apparaît naturellement lors d’une décomposition de domaine. Pour illustrer cette méthode, considérons le problème de conduc- tion thermique bidimensionnel discrétisé à l’aide d’un maillage orthogonal, représenté à la figure 4.6. Le cas bidimensionnel est considéré seulement afin d’alléger la représentation de la méthode. L’extension au cas tridimensionnel est immédiate. La figure 4.6 présente la numé-

(a) Discrétisation (b) Matrice associée

Figure 4.6 Problème original

rotation des cellules du maillage et la matrice de conductance associée au problème original. Une décomposition de domaine possible est illustrée sur la figure 4.7. Le maillage est divisé en quatre sous-domaines (repérés par des ellipses) séparés par des interfaces (colorées en rouge).

(a) Discrétisation (b) Matrice associée

Figure 4.7 Décomposition de domaine

La décomposition de domaine se traduit par une numérotation différente des cellules du maillage. Les cellules situées dans les sous-domaines sont numérotées en premier, puis viennent les cellules situées sur les interfaces. Il est important de numéroter les cellules d’un même sous-domaine consécutivement afin de faire apparaître une structure par bloc dans la matrice associée au problème. On note B la matrice associée aux sous-domaines, C la matrice asso- ciée aux interfaces, E et F les matrices de couplage entre les sous-domaines et les interfaces. L’équation Ax = b initiale peut se mettre sous la forme du système :

  B E F C     u v  =   f g   (4.17)

Le vecteur u représente les variables associées aux sous-domaines et v les variables associées aux interfaces. Le vecteur u s’exprime en fonction des variables d’interface par :

u = B−1(f − Ev) (4.18)

En substituant 4.18, dans l’équation 4.17, on obtient :

(C − F B−1E)v = g − F B−1f (4.19)

La résolution de l’équation 4.19 donne accès aux variables d’interfaces, qui permettent de calculer les variables restantes en les injectant dans l’équation 4.18. La matrice

est appelée « complément de Schur ». La méthode de calcul basée sur le complément de Schur est résumée par l’algorithme 6.

Algorithme 6 : Méthode du complément de Schur

Input : B ∈ Rp×p, C ∈ Rq×q, E ∈ Rq×p, F ∈ Rp×q, f ∈ Rp, g ∈ Rq Output : u ∈ Rp, v ∈ Rq 1 u ← B−1f ; 2 v ← g − F u; 3 v ← S−1v; 4 u ← u − B−1Ev ;

Les étapes délicates de cet algorithme sont les étapes 1 et 3, impliquant la résolution des systèmes matriciels B et S. La méthode de calcul proposée exploite un coloriage rouge-noir afin que la matrice B issue de la décomposition de domaine, ait une structure permettant une résolution rapide.

Coloriage rouge-noir :

Le coloriage rouge-noir est la version à deux couleurs du célèbre problème de coloriage. Le principe est de colorier les cellules du maillage à l’aide de deux couleurs (rouge et noir) de sorte que deux cellules voisines n’aient jamais la même couleur. La figure 4.8 illustre la décomposition de domaine rouge-noir sur le problème bidimensionnel considéré à titre d’exemple.

(a) Discrétisation (b) Matrice associée

Figure 4.8 Coloriage rouge-noir du problème

Lorsque le maillage est orthogonal, il est toujours possible de trouver un coloriage rouge-noir, quelle que soit la dimension, un, deux ou trois, du problème. La méthode proposée exploite le

coloriage rouge-noir pour effectuer une décomposition de domaine. Les cellules noires consti- tuent les domaines tandis que les cellules rouges jouent le rôle des interfaces. Il s’agit d’une décomposition de domaine très particulière avec des domaines de taille 1 et autant d’inter- faces que de domaines à peu de chose près. Comme illustrée sur la figure 4.8, les matrices

B et C associées respectivement aux domaines et aux interfaces sont devenues diagonales.

Leur inversion est donc immédiate ! Toutes les méthodes discutées jusqu’ici peuvent mainte- nant être réunies pour proposer une méthode de calcul performante pour simuler le régime permanent des circuits intégrés.

4.2.4 Algorithme de la méthode proposée

La méthode proposée pour simuler le régime permanent résout efficacement l’équation 4.12 en combinant une décomposition de domaine rouge-noir, la méthode du complément de Schur et une méthode de projection avec un préconditionnement incomplet LU. Les étapes de la méthode proposée sont détaillées dans l’algorithme 7.

Algorithme 7 : Méthode proposée pour le calcul du régime permanent Input : A ∈ Rn×n, b ∈ Rn,  (précision)

Output : x ∈ Rn tel que kb − Axk < 

1 Trouver la matrice de permutation P correspondant au coloriage rouge-noir 2 Calculer la décomposition P AP−1 = B E F C ! et P b = f g ! ; 3 S ← C − F B−1E ; 4 Calculer un préconditionnement S ' LU ; 5 u ← B−1f ; 6 w ← g − F u; 7 if S = ST then

8 Résoudre Sv = w par la méthode du gradient conjugué préconditionnée avec L, U ; 9 else

10 Résoudre Sv = w par la méthode GMRES préconditionnée avec L, U ; 11 end

12 u ← u − B−1Ev ; 13 x ← P−1[u v]T ;

4.2.5 Bilan

La méthode proposée permet de simuler efficacement le régime permanent avec une bonne précision et une complexité qui augmente linéairement avec la taille du problème. Pour cela, les méthodes du gradient conjugué et GMRES sont combinées à un préconditionnement LU

incomplet, afin d’améliorer leur vitesse de convergence, ainsi qu’à une technique de décom- position de domaine basée sur la méthode du complément de Schur. Un coloriage rouge-noir est également utilisé pour trouver une décomposition de domaine efficace.