09.08.2015 Views

Etude de méthodes de pas de temps local dans un schéma Galerkin ...

Etude de méthodes de pas de temps local dans un schéma Galerkin ...

Etude de méthodes de pas de temps local dans un schéma Galerkin ...

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Etu<strong>de</strong></strong> <strong>de</strong> métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong><strong>dans</strong> <strong>un</strong> schéma <strong>Galerkin</strong> Discontinu d’ordreélevé pour résoudre les équations <strong>de</strong> Maxwell3D <strong>dans</strong> le domaine temporelEMMANUEL MONTSENYMémoire M2R SAIDSous la responsabilité scientifique <strong>de</strong>Xavier FerrieresONERA - DEMR, ToulouseSeptembre 2006


Table <strong>de</strong>s matièresIntroduction 31 Contexte 41.1 Equations <strong>de</strong> Maxwell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2 Métho<strong>de</strong>s <strong>de</strong> résolution classiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2.1 Métho<strong>de</strong> basée sur le schéma <strong>de</strong> Yee (FDTD) . . . . . . . . . . . . . . . . . . . 41.2.2 Métho<strong>de</strong> <strong>de</strong> type volumes finis (FVTD) . . . . . . . . . . . . . . . . . . . . . . 51.2.3 Métho<strong>de</strong> hybri<strong>de</strong> FVTD/FDTD . . . . . . . . . . . . . . . . . . . . . . . . . . 81.2.4 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 La formulation <strong>Galerkin</strong> Discontinu considérée (GD) 102.1 Formulation variationnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2 Approximation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.2.1 Description <strong>de</strong>s fonctions <strong>de</strong> base . . . . . . . . . . . . . . . . . . . . . . . . . 132.2.2 Formulation semi-discrète en espace . . . . . . . . . . . . . . . . . . . . . . . . 142.2.3 Réécriture <strong>de</strong> la formulation semi-discrète . . . . . . . . . . . . . . . . . . . . . 172.2.4 Une discrétisation en <strong>temps</strong> : le schéma <strong>de</strong> leap-frog . . . . . . . . . . . . . . . 192.3 Avantages du schéma GD : illustration . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 Stratégies <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> 213.1 Métho<strong>de</strong>s explicites à 2 classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.1.1 Métho<strong>de</strong> à base d’interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.1.2 Métho<strong>de</strong> avec conditions <strong>de</strong> raccord à l’interface . . . . . . . . . . . . . . . . . 243.1.3 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.2 Métho<strong>de</strong>s explicites à N classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.2.1 Schéma <strong>de</strong> type Verlet récursif . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.2.2 Schéma <strong>de</strong> type leap-frog récursif . . . . . . . . . . . . . . . . . . . . . . . . . 283.2.3 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.3 Métho<strong>de</strong>s implicites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313.4 <strong>Etu<strong>de</strong></strong> et correction énergétiques du leap-frog récursif à <strong>de</strong>ux classes . . . . . . . . . . . 333.4.1 Expression <strong>de</strong>s énergies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343.4.2 Correction énergétique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 Résultats numériques - Confrontation 395 Conclusion et perspectives 45Annexes 46A Schémas symplectiques pour les systèmes différentiels Hamiltoniens 46A.1 Systèmes différentiels Hamiltoniens . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46A.2 Schémas symplectiques à <strong>un</strong> <strong>pas</strong> pour les systèmes Hamiltoniens . . . . . . . . . . . . . 47A.3 Maxwell semi-discrétisé par <strong>Galerkin</strong> Discontinu sous forme d’<strong>un</strong> système Hamiltonien . 48A.4 Une métho<strong>de</strong> symplectique : schéma <strong>de</strong> Verlet . . . . . . . . . . . . . . . . . . . . . . . 50B Notations 51Bibliographie 521


IntroductionLa modélisation électromagnétique connaît <strong>de</strong>puis déjà plusieurs années <strong>un</strong> essor important <strong>dans</strong><strong>un</strong> grand nombre <strong>de</strong> domaines tels que la compatibilité électromagnétique ou la détection. Elle apportenotamment <strong>de</strong>s avantages significatifs <strong>dans</strong> la conception <strong>de</strong>s systèmes sous forme <strong>de</strong> problèmes <strong>de</strong>contrôles comme le positionnement <strong>de</strong>s sources ou la caractérisation d’<strong>un</strong>e géométrie (forme, nature)en vue <strong>de</strong> minimiser ou maximiser <strong>de</strong>s champs électromagnétiques. Parmi ces problèmes, on peut citerpar exemple la conception d’<strong>un</strong>e cavité <strong>de</strong> four électrique garantissant <strong>un</strong>e répartition optimale <strong>de</strong> lachaleur, la caractérisation d’<strong>un</strong>e forme d’avion, ou encore le placement optimal d’antennes sur celuiciafin <strong>de</strong> diminuer sa SER (surface équivalente radar). Dans le domaine civil, l’étu<strong>de</strong> <strong>de</strong> la position<strong>de</strong>s câblages <strong>dans</strong> <strong>un</strong>e structure ainsi que la position <strong>de</strong>s sources sur ceux-ci en respectant <strong>de</strong>s critèresd’encombrement et <strong>de</strong> poids en diminuant autant que possible les perturbations induites reste <strong>un</strong> enjeuimportant en aéronautique.Dans ce contexte, la modélisation <strong>de</strong> l’état électromagnétique et <strong>de</strong> son adjoint nécessite <strong>de</strong>s métho<strong>de</strong>sprenant en compte <strong>de</strong>s aspects physiques complexes tels que <strong>de</strong> forts contrastes ou <strong>de</strong>s discontinuités <strong>de</strong>matériaux qui conduisent à <strong>de</strong>s problèmes rai<strong>de</strong>s (mal conditionnés, peu robustes). En outre, les aspectsnon linéaires tels que les claquages <strong>dans</strong> le cas <strong>de</strong> la foudre ou encore les matériaux intrinsèquementnon linéaires sont également à prendre en compte <strong>dans</strong> la phase <strong>de</strong> modélisation. Dans l’état actuel <strong>de</strong>sconnaissances, les métho<strong>de</strong>s <strong>Galerkin</strong> Discontinu sont celles qui offrent la plus gran<strong>de</strong> souplesse pourla modélisation <strong>de</strong>s phénomènes physiques complexes. De plus, la possibilité d’utiliser <strong>de</strong>s maillagesnon structurés permet <strong>un</strong> raffinement spatial naturel lorsque cela est nécessaire (proximité <strong>de</strong> parois,présence <strong>de</strong> matériaux à forts contrastes etc). Cependant, la stabilité du schéma numérique ne peut avoirlieu qu’avec <strong>un</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> d’autant plus petit que le raffinement spatial est important, ce qui peutconduire à <strong>un</strong>e forte perte d’efficacité <strong>de</strong> la métho<strong>de</strong> en cas <strong>de</strong> maillage très hétérogène. Il peut alorsparaître judicieux d’adapter le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> aux cellules en les regroupant <strong>dans</strong> différentes classes : cesont <strong>de</strong>s métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>. Certaines solutions ont été proposées <strong>dans</strong> la littérature maiselles sont soit peu efficaces (résolution <strong>de</strong> gros systèmes), soit instables à long terme, et la question d’<strong>un</strong>choix <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> stable et efficace reste d’actualité.Dans ce mémoire, on rappelle <strong>dans</strong> <strong>un</strong> premier <strong>temps</strong> les équations du problème à résoudre et lesdifférentes métho<strong>de</strong>s classiques <strong>de</strong> résolution existantes. On s’intéresse plus particulièrement à <strong>un</strong>emétho<strong>de</strong> <strong>de</strong> type <strong>Galerkin</strong> Discontinu particulière [5] dont le choix <strong>de</strong>s espaces d’approximation nonnaturel conduit à <strong>de</strong>s matrices <strong>de</strong> masse, rigidité et saut ne nécessitant que très peu <strong>de</strong> stockage, et ce quelque soit l’ordre d’approximation spatial choisi. L’intérêt <strong>de</strong>s stratégies <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> en découlenaturellement et on présente certaines métho<strong>de</strong>s que l’on peut envisager tout en mettant en évi<strong>de</strong>nce leursavantages mais aussi leurs limites. On présente tout d’abord <strong>de</strong>s métho<strong>de</strong>s explicites à 2 classes, puis <strong>de</strong>smétho<strong>de</strong>s explicites récursives à N classes, pour enfin brièvement parler <strong>de</strong> métho<strong>de</strong>s implicites. Uneétu<strong>de</strong> et <strong>un</strong>e proposition <strong>de</strong> correction énergétique seront proposées pour l’<strong>un</strong> <strong>de</strong>s schémas. Finalement,certaines métho<strong>de</strong>s précé<strong>de</strong>mment mises au point sont illustrées (et confrontées) en <strong>de</strong>rnière partie par<strong>un</strong>e série <strong>de</strong> résultats numériques. Certains résultats techniques non triviaux établis pour les besoins <strong>de</strong>l’étu<strong>de</strong> sont rassemblés en annexe.3


1 Contexte1.1 Equations <strong>de</strong> MaxwellLes modèles physiques abordés <strong>dans</strong> ce stage sont décrits par les équations <strong>de</strong> l’électromagnétisme.Plus précisément, il s’agit d’évaluer l’ambiance électromagnétique d’<strong>un</strong> système, i.e les champs électriqueset magnétiques qui apparaissent autour ou à l’intérieur du système suite à la perturbation <strong>de</strong> celui-ci par<strong>un</strong>e source. Parmi les problèmes pouvant être abordés, on peut citer l’étu<strong>de</strong> <strong>de</strong>s perturbations induites par<strong>un</strong> foudroiement (avion en vol par exemple), les perturbations du fonctionnement d’<strong>un</strong> système électrique<strong>dans</strong> <strong>un</strong>e voiture positionnée sous <strong>de</strong>s lignes à très haute tension, ou encore les effets du téléphone portablesur le cerveau. Pour tous ces problèmes, les équations qui régissent les champs produits sont décritespar les équations <strong>de</strong> Maxwell :{ε(x) ∂t E(x, t) + σ(x) E(x, t) = rot H(x, t) = ∇ × H(x, t),(1)µ(x) ∂ t H(x, t) = −rot E(x, t) = −∇ × E(x, t),où (E, H) désigne le champ électromagnétique, ε, µ et σ désignent respectivement la permittivité électrique,magnétique et la conductivité. La simulation <strong>de</strong> telles équations impose évi<strong>de</strong>mment la définition <strong>de</strong>conditions initiales sur les champs et <strong>de</strong> conditions aux limites. Dans le cas <strong>de</strong> simulations en espacelibre, <strong>de</strong>s conditions aux limites absorbantes <strong>de</strong> type PML [7] sont utilisées et <strong>un</strong>e condition <strong>de</strong> conducteurparfait est posée sur la frontière : n × E = 0, où n désigne la normale sortante.1.2 Métho<strong>de</strong>s <strong>de</strong> résolution classiquesDiverses métho<strong>de</strong>s ont été proposées pour la résolution numérique <strong>de</strong>s équations <strong>de</strong> Maxwell <strong>dans</strong>le domaine temporel. On va brièvement en présenter certaines parmi les plus classiques en mentionnantleurs avantages et inconvénients.1.2.1 Métho<strong>de</strong> basée sur le schéma <strong>de</strong> Yee (FDTD)Dans le domaine temporel, <strong>un</strong>e <strong>de</strong>s premières et <strong>de</strong>s plus populaires métho<strong>de</strong> est basée sur <strong>un</strong>eapproche <strong>de</strong> type différences finies, connue sous le nom <strong>de</strong> schéma <strong>de</strong> Yee [1]. Avec cette approche,la géométrie <strong>de</strong>s objets est représentée sous forme d’<strong>un</strong> maillage cubique dont les inconnues sont lesvaleurs <strong>de</strong>s champs électrique et magnétique positionnés sur la cellule du maillage, comme indiqué surla figure 1.HyEzHxExHzEyFIG. 1 – Localisation <strong>de</strong>s inconnues sur <strong>un</strong>e cellule du maillage pour le schéma <strong>de</strong> YeeLe schéma <strong>de</strong> Yee est <strong>un</strong> schéma numérique <strong>de</strong> type Leap-frog (saute-mouton) en espace et en <strong>temps</strong>.Supposons que les nœuds du maillage soient définis par (i, j, k) ; avec les schéma <strong>de</strong> Yee, les champs4


sont évalués <strong>dans</strong> chaque cellule en E x (i + 1 2 , j, k), E y(i, j + 1 2 , k), E z(i, j, k + 1 2 ), H x(i, j + 1 2 , k + 1 2 ),H y (i + 1 2 , j, k + 1 2 ) et H z(i + 1 2 , j + 1 2, k). Les dérivées spatiales présentes <strong>dans</strong> le rotationnel sont alorsapprochées par <strong>de</strong>s différences finies avec <strong>un</strong> décalage <strong>de</strong> position entre le champ E et le champ H. Onobtient par exemple pour les composantes en z :∂H z∂y ≃ H z(i + 1 2 , j + 1 2 , k) − H z(i + 1 2 , j − 1 2 , k) ,∆y∂E z∂y ≃ E z(i, j + 1, k + 1 2 ) − E z(i, j, k + 1 2 ) ,∆yDe même, les dérivées temporelles sont approchées par <strong>de</strong>s différences finies centrées avec <strong>un</strong> décalageen <strong>temps</strong> entre E et H : {∂ t H ≃ 1 Hn+ 2 −H n− 21∆t∂ t E ≃ En+1 −E n∆t.Cette métho<strong>de</strong> est rapi<strong>de</strong>, robuste, simple à mettre en œuvre et conservative (i.e : on peut exhiber <strong>un</strong>equantité énergétique qui se conserve au cours du <strong>temps</strong>). Toutefois, l’utilisation <strong>de</strong> maillages cartésienscrée, près <strong>de</strong>s objets, <strong>de</strong>s diffractions parasites qui ren<strong>de</strong>nt ce type <strong>de</strong> schéma peu précis à proximité <strong>de</strong>sparois courbes, et le caractère centré <strong>de</strong>s approximations spatiales entraîne <strong>un</strong> phénomène <strong>de</strong> dispersion(ce qui induit <strong>un</strong> décalage <strong>de</strong>s solutions numériques au cours du <strong>temps</strong>).1.2.2 Métho<strong>de</strong> <strong>de</strong> type volumes finis (FVTD)Pour pallier les inconvénients du schéma <strong>de</strong> Yee, plusieurs auteurs ont proposé différentes améliorationsparmi lesquelles la métho<strong>de</strong> <strong>de</strong>s volumes finis (FVTD) qui permet d’effectuer <strong>un</strong> maillage conforme àla géométrie du domaine en utilisant <strong>de</strong>s cellules <strong>de</strong> formes quelconque (tétraèdres, hexaèdres, prismes,etc). La métho<strong>de</strong> <strong>de</strong>s volumes finis est fondamentale du fait qu’elle constitue la forme la plus simple<strong>de</strong>s métho<strong>de</strong>s <strong>de</strong> type <strong>Galerkin</strong> Discontinu. Dans cette métho<strong>de</strong>, les champs sont approchés par <strong>de</strong>sconstantes sur chaque cellule et évalués en utilisant les flux qui traversent leurs surfaces. Le principed’<strong>un</strong> schéma volumes finis utilisé à l’ONERA est décrit ci-après (pour plus <strong>de</strong> détails, on pourra seréférer à [2]).Les équations <strong>de</strong> Maxwell, définies par :{∂t E − ∇ × H ε 0= 0,peuvent être réécrites sous la forme conservative :∂ t H + ∇ × E µ 0= 0,∂ t U + div(F (U)) = 0, (2)avec U = (E x , E y , E z , H x , H y , H z ) T vecteur du champ électromagnétique et F (U) = (F 1 (U), F 2 (U), F 3 (U))défini par :⎛0 − Hz H y⎞ε 0 ε 0H zε 00 − Hxε 0− HyF (U) =ε 0− Hxε 00E 0zµ− Ey.⎜0 µ 0⎝ − EzEµ0z ⎟0 µ 0⎠E yµ− E x0 µ00On suppose le domaine partitionnée en n cellules élémentaires C i <strong>de</strong> forme quelconque, <strong>de</strong> volume V i ,délimitée par n i surfaces.5


n kSurface SkVolume VLe principe <strong>de</strong> la métho<strong>de</strong> volumes finis consiste alors à intégrer la forme conservative <strong>de</strong>s équations<strong>de</strong> Maxwell (2) sur chaque cellule élémentaire. On obtient, sur chaque cellule C i , la relation :∫∫∂ t U dv = − div(F (U)) dv,C i C iqui <strong>de</strong>vient, après application <strong>de</strong> la formule d’Ostrogradski ( −→ n k étant la normale à la surface S k ) :∫∑n i ∫∂ t U = − F (U) · −→ n k dσ.C i face kEn supposant U (resp. F (U)) constante sur C i (resp. sur les faces), on obtient :k=1n∂UiiV i∂t = − ∑S k F (Uk ∗ ) · −→ n kk=1où U i est la valeur <strong>de</strong>s champs au centre <strong>de</strong> la cellule C i <strong>de</strong> volume V i et Uk ∗sur la surface S k .Le flux numérique F (U ∗ ) · −→ n est alors défini par :( )F (U ∗ ) · −→ n×H ∗εn =0.− n×E∗µ 0la valeur <strong>de</strong>s champs priseuLu**u* <strong>un</strong> RLe choix <strong>de</strong> l’approximation <strong>de</strong>s valeurs <strong>de</strong> flux définira <strong>un</strong>e approximation spatiale dite centrée oudécentrée :- <strong>un</strong> schéma centré (non dissipatif mais dispersif) est défini par : E ∗ ≃ EL +E R2, H ∗ ≃ HL +H R2;- les schémas décentrés (dissipatifs mais peu dispersifs) sont définis par : E ∗ ≃ f 1 (E L,R , H L,R ),H ∗ ≃ f 2 (E L,R , H L,R ).Dans le cas du schéma centré, on utilise généralement comme discrétisation temporelle <strong>un</strong> leap-frogalors que pour les schémas décentrés on utilise plutôt <strong>de</strong>s métho<strong>de</strong>s <strong>de</strong> type R<strong>un</strong>ge-Kutta.6


En exprimant U L et U ∗ en tant qu’on<strong>de</strong> plane, on détermine entre les champs <strong>de</strong> part et d’autre d’<strong>un</strong>esurface et les champs à l’intérieur <strong>de</strong>s volumes, les <strong>de</strong>ux relations :⎧ √⎨ ε0µn × (E ∗ − E L ) − n × n × (H ∗ − H L ) = 0,√ 0⎩ ε0µn × (E ∗∗ − E R ) + n × n × (H ∗∗ − H R ) = 0.0Afin <strong>de</strong> définir précisément les valeurs U ∗ en fonction <strong>de</strong>s valeurs U, on ajoute aux équations précé<strong>de</strong>ntes<strong>de</strong>s relations provenant <strong>de</strong> conditions <strong>de</strong> continuité aux frontières <strong>de</strong> chaque cellule, données par :→ <strong>dans</strong> le cas <strong>de</strong> l’espace libre{ n × E ∗ = n × E ∗∗ ,→ <strong>dans</strong> le cas d’<strong>un</strong>e frontière métalliquen × H ∗ = n × H ∗∗ .n × E ∗ = n × E ∗∗ = 0.→ <strong>dans</strong> le cas d’<strong>un</strong>e frontière composée d’<strong>un</strong> matériau mince <strong>de</strong> conductivité finie{ n × E ∗ = n × E ∗∗ ,n × (H ∗∗ − H ∗ ) = −σ d n × n × E ∗ ,où Z s = 1σ ddéfinit l’impédance <strong>de</strong> surface.En ce qui concerne la discrétisation temporelle, on utilisera <strong>un</strong> schéma <strong>de</strong> type prédicteur/correcteur(R<strong>un</strong>ge-Kutta d’ordre 2) :U n+ 1 2i− Uin = 1 ∑n iS k F (Uk n ∆t/2 V ) n k,iU n+1i− Uin∆tk=1= 1 ∑n iS k F (U n+ 1 2Vk) n k .ik=1)VLe schéma volume finis est astreint à la condition <strong>de</strong> stabilité : ∆t ≤ min ∑ iik S .kConcernant la discrétisation spatiale, <strong>un</strong>e approche MUSCL est utilisée pour améliorer la précision duschéma. Cette approche consiste à évaluer numériquement, à l’intérieur <strong>de</strong> chaque cellule, le gradient∇U <strong>de</strong> la manière suivante :∫∑n i∇Udx =C ik=1Uk ∫S ∗ ds = ∑n ikk=1U L k + U R k2ceci afin d’améliorer la précision aux limites du domaine du calcul. En effet, on utilisera <strong>dans</strong> les calculs<strong>de</strong>s flux non plus les valeurs au centre <strong>de</strong>s cellules adjacentes, mais les valeurs U L et U R telles queU L = U + ∇U · (x s − x c ) (U étant la valeur au centre <strong>de</strong> la cellule, x s et x c respectivement centres <strong>de</strong>gravité <strong>de</strong> la surface <strong>de</strong> la cellule).Par rapport au schéma <strong>de</strong> Yee, la métho<strong>de</strong> volumes finis permet <strong>de</strong> raffiner <strong>local</strong>ement le maillage etdonc <strong>de</strong> bénéficier <strong>dans</strong> certains cas d’<strong>un</strong> gain important en <strong>temps</strong> CPU et mémoire pour <strong>un</strong>e meilleureprécision, comme illustré sur la figure 2.(1cS k ,7


1.2.4 BilanDans toutes ces approches, les schémas numériques sont d’ordre spatial égal à 1 ou 2 et présententpar conséquent <strong>de</strong>s erreurs <strong>de</strong> dissipation ou <strong>de</strong> dispersion qui peuvent être conséquentes. On peutalors chercher à utiliser <strong>de</strong>s métho<strong>de</strong>s d’ordre plus élevé, plus précises et permettant ainsi <strong>de</strong> réduireconsidérablement les erreurs liées à la dispersion et à la dissipation numérique.Les schémas <strong>de</strong> <strong>Galerkin</strong> discontinu font parti <strong>de</strong> ces métho<strong>de</strong>s. Basées sur <strong>un</strong>e approximation polynomialed’ordre supérieur à 1 <strong>de</strong>s champs, elles offrent <strong>un</strong>e plus gran<strong>de</strong> précision et permettent <strong>de</strong>ssimulations plus fiables sur <strong>de</strong>s <strong>temps</strong> longs ou <strong>dans</strong> <strong>de</strong>s cavités. Ces métho<strong>de</strong>s constituent <strong>un</strong> sujet <strong>de</strong>recherche actif [4], [5], [6]. Le stockage mémoire et le <strong>temps</strong> CPU restent d’importants points à optimiser; c’est le but <strong>de</strong> la métho<strong>de</strong> <strong>Galerkin</strong> discontinu présentée <strong>dans</strong> la section suivante.9


2 La formulation <strong>Galerkin</strong> Discontinu considérée (GD)La formulation <strong>Galerkin</strong> Discontinu considérée pour la résolution <strong>de</strong>s équations <strong>de</strong> Maxwell <strong>dans</strong> ledomaine temporel est <strong>un</strong>e formulation non dissipative, basée sur <strong>un</strong>e approximation centrée <strong>de</strong>s flux, utilisant<strong>un</strong>e technique <strong>de</strong> compression <strong>de</strong>s matrices <strong>de</strong> masse basée sur <strong>de</strong>s intégrations par formule <strong>de</strong> quadrature<strong>de</strong> Gauss et <strong>de</strong>s maillages constitués <strong>un</strong>iquement <strong>de</strong> cellules hexaédriques. Par <strong>un</strong> choix judicieuxd’espace d’approximation, elle permet aussi d’éviter le stockage <strong>de</strong>s matrices <strong>de</strong> rigidité. On présente<strong>dans</strong> ce chapitre <strong>un</strong> peu technique les principes <strong>de</strong> cette métho<strong>de</strong>. Certains résultats sont démontrés,d’autres non du fait <strong>de</strong> leur complexité. On pourra se référer à [5] pour plus <strong>de</strong> détails.2.1 Formulation variationnelleSoit le problème défini sur Ω :⎧ε ∂ t E + σE = ∇ × H <strong>dans</strong> Ω,⎪⎨µ ∂ t H = −∇×E <strong>dans</strong> Ω,E(x, 0) = E ⎪⎩0 (x), H(x, 0) = H 0 (x) <strong>dans</strong> Ω,E × n = 0 sur ∂Ω,(3)avec (E, H) le champ électromagnétique appartenant à [H rot (Ω)] 6 pour que (3) soit bien posé. Poursimuler l’espace libre, on utilise <strong>de</strong>s couches PML autour du domaine.Soit T <strong>un</strong> maillage hexaédrique <strong>de</strong> Ω tel que Ω =⋃ K et soit l’espace <strong>de</strong> fonctions test H(T ) ={v ∈ [L 2 (Ω)] 3 ; ∀K ∈ T , v |K ∈ [H 1 (K)] 3 }. Pour chaque K ∈ T , on considère <strong>un</strong>e formulation faible<strong>de</strong>s équations <strong>de</strong> maxwell en additionnant <strong>de</strong>s termes <strong>de</strong> saut <strong>de</strong>s composantes tangentielles <strong>de</strong>s champsélectrique et magnétique aux surfaces <strong>de</strong>s éléments :∀ K ∈ T , ∀ ψ, φ ∈ H(T ) :⎧ ∫∫∫ε ∂ t E · ψ dx + σE · ψ dx = ∇ × H · ψ dx∫KKK(⎪⎨ + αK∂K[n × (E × n)]] K ∂K + βK ∂K [H × ) n]K ∂K · ψ ds,∫ ∂K∫(4)µ ∂ t H · φ dx = − ∇ × E · φ dx∫KK(⎪⎩ + γK∂K[[E × n]] K ∂K + δK ∂K [[n × (H × ) n)]]K ∂K · φ ds,∂Koù α K ∂K , βK ∂K , γK ∂K , δK ∂Ksont <strong>de</strong>s paramètres constants par faces (et donc définis pour chaque face <strong>de</strong>chaque K ∈ T ) et [[v]] K ∂Kest le saut d’<strong>un</strong>e fonction vectorielle v à travers la frontière <strong>de</strong> K, défini par :– Si Γ = K ∩ K ′ (i.e Γ face interne), alors [[v]] K ∂K = (v| )K ′ Γ− (v| K) Γoù v| Kest la restriction <strong>de</strong>v sur K.– Si Γ = K ∩ ∂Ω (i.e Γ face frontière), alors [[v]] K ∂K = − (v| ) K ΓRemarque 1 Les sauts tangentiels <strong>de</strong>s champs sont naturels <strong>dans</strong> la mesure où ils apparaissent lorsquel’on écrit les équations <strong>de</strong> Maxwell au sens <strong>de</strong>s distributions. Les <strong>de</strong>ux autres termes [[n × (E × n)]] K ∂Ket [[n × (H × n)]] K ∂Ksont <strong>de</strong>s termes dissipatifs qui apparaissent lors d’approximations décentrées <strong>de</strong>sflux.Les coefficients α K ∂K , βK ∂K , γK ∂K , δK ∂Ksont alors utilisés pour avoir <strong>un</strong>e équivalence entre les problèmes(3) et (4) (continuité <strong>de</strong>s champs aux interfaces <strong>de</strong>s cellules et conditions aux limites vérifiées) mais aussipour avoir <strong>un</strong>e certaine stabilité (via <strong>un</strong>e conservation d’énergie) au cours du <strong>temps</strong>.K∈TProposition 2 Il y a équivalence entre les problèmes (3) et (4) si :10


– ∀ Γ = K ∩ K ′ , α K Γ = αK′ Γ , δK Γ = δK′ Γ , βK Γ + βK′ Γ ≠ 0 et γK Γ + γK′ Γ ≠ 0,– ∀ Γ = K ∩ ∂Ω, β K Γ = 0, δK Γ = 0 et γK Γ ≠ 0 (ou αK Γ ≠ 0).Démonstration. On admettra le lemme suivant :Lemme 3 Soient Ω 1 et Ω 2 <strong>de</strong>ux ouverts formant <strong>un</strong>e partition <strong>de</strong> Ω, avec Γ = Ω 1 ∩ Ω 2 . Soit <strong>de</strong> plus <strong>un</strong>efonction v telle que v |Ω1 ∈ [H rot (Ω 1 )] 3 et v |Ω2 ∈ [H rot (Ω 2 )] 3 . Alors v ∈ H(rot, Ω) si et seulement si[v × n]] Γ = 0.• On montre tout d’abord que (3)⇒(4)Soit (E, H) solution <strong>de</strong> (3). Les hypothèses <strong>de</strong> régularité <strong>de</strong>s champs E et H (appartenance à H rot (Ω))permettent d’affirmer, d’après le lemme 3, que :∀ Γ ⊂ ∂K face interne,[[H × n]] K ∂K = 0,[[E × n]] K ∂K = 0,ce qui, injecté <strong>dans</strong> (4), après décomposition <strong>de</strong> ∫ ∂Ken faces internes et externes et en utilisant lesconditions aux limites, donne :⎧ ∫∫∫⎪⎨ε ∂ t E · ψ dx + σE · ψ dx = ∇ × H · ψ dx +∑β K ∂K [[H × n]]K ∂K · ψ ds,KKK∫∫Γ=K∩∂Ω⎪⎩µ ∂ t H · φ dx = − ∇ × E · φ dx +∑δ K ∂K [n × (H × n)]]K ∂K · φ ds.KKΓ=K∩∂ΩOn voit sans difficulté que, sous l’hypothèse β K Γ = 0 = δK Γ ∀ Γ ⊂ ∂Ω, cette expression est exactement(3) que l’on a multiplié par (ψ, φ) et intégré sur K, ce qui démontre l’implication.• On s’intéresse maintenant à la réciproque (3)⇐(4)Soit (E, H) solution <strong>de</strong> (4). On considère <strong>dans</strong> <strong>un</strong> premier <strong>temps</strong> ψ, φ ∈ [D(K)] 3 (fonctions infinimentdifférentiables à support compact <strong>dans</strong> K), les termes <strong>de</strong> bord ∫ ∂Kseront par conséquent nuls. Lesystème (4) s’écrit alors :∀ K ∈ T , ∀ ψ, φ ∈ [D(K)] 3 ,c’est-à-dire :{ 〈ε ∂t E, ψ〉 D ′ ,D + 〈σE, ψ〉 D ′ ,D = 〈∇ × H, ψ〉 D ′ ,D〈µ ∂ t H, φ〉 D ′ ,D = − 〈∇ × E, φ〉 D ′ ,D{ ε ∂t E + σE = ∇ × H <strong>dans</strong> D ′ (K),µ ∂ t H = −∇ × E <strong>dans</strong> D ′ (K),qui entraîne, du fait <strong>de</strong> la régularité <strong>de</strong> E et H (appartenance à L 2 (Ω) et à rotationnel <strong>dans</strong> L 2 (Ω)), lesrelations :∀ K ∈ T , { ε ∂t E + σE = ∇ × H presque partout <strong>dans</strong> K,(5)µ ∂ t H = −∇ × E pp <strong>dans</strong> K.On retrouve donc les équations <strong>de</strong> maxwell (3) <strong>dans</strong> Ω.Pour démontrer qu’il y a continuité tangentielle aux interfaces Γ = K ∩ K ′ , on considère cette foisψ, φ ∈ [D(K ∪K ′ )] 3 , ce qui aura pour effet d’annuler tous les termes <strong>de</strong> bords autre que celui sur Γ <strong>dans</strong>(4). Sachant que [[v]] K Γ = −[[v]]K′ Γet que la normale nK′Γ= −nK Γ, et en utilisant (5), le système (4) écritsur K et sur K ′ donne alors les quatre équations :11


ψ, φ ∈ [D(K ∪ K ′ )] 3 ,⎧ ∫∫α K Γ [[n × (E × n)]]K Γ∫· ψ ds + Γ∫⎪⎨ δ K Γ [[n × (H × n)]K Γ∫· φ ds + Γ∫− α K′Γ [[n × (E × n)]]K Γ∫· ψ ds + Γ∫⎪⎩ − δ K Γ [[n × (H × n)]]K Γ · φ ds +Γβ K Γ [[H × n]]K ΓΓγ K Γ [[E × n]]K ΓΓβ K′Γ [[H × n]]K ΓΓγ KjΓ [E × n]]K ΓΓ· ψ ds = 0,· φ ds = 0,· ψ ds = 0,· φ ds = 0,où on a noté n la normale n K′Γpour alléger l’écriture. La régularité L2 <strong>de</strong>s traces <strong>de</strong>s champs sur lesbords permet alors d’écrire :⎧α K Γ⎪⎨[[n × (E × n)]]K Γ + βK Γ [[H × n]]K Γ= 0 pp sur Γ,δ K Γ [n × (H × n)]]K Γ + γK Γ [[E × n]]K Γ= 0 pp sur Γ,−α K′Γ⎪⎩[[n × (E × n)]]K Γ + βK′ Γ [[H × (6)n]]K Γ= 0 pp sur Γ,−δ K Γ [n × (H × n)]]K Γ + γKj Γ [[E × n]]K Γ = 0 pp sur Γ.Pour retrouver la continuité tangentielle <strong>de</strong> E et H, on choisit α K Γ = αK′ Γ , δK Γ = δK′ Γ et on additionne(6a) avec (6c) et (6b) avec (6d), ce qui donne :⎧ ( )⎨ β K Γ + βK′ Γ [[H × n]] K Γ( )= 0,⎩ γ K Γ + γK′ Γ[[E × n]] K Γ = 0.La continuité est donc assurée si β K Γ + βK′ Γ≠ 0 et γK Γ + γK′ Γ ≠ 0.Enfin, les conditions aux limites sur les faces Γ = K ∩ ∂Ω s’obtiennent en considérant <strong>de</strong>s fonctionstest ψ, φ ∈ [D(K ∪ Γ)] 3 <strong>dans</strong> (4). On obtient alors :{−αKΓ(n × (E × n))−β K Γ (H × n) = 0 pp sur Γ,−δ K Γ (n × (H × n))−γK Γ(E × n) = 0 pp sur Γ.La nécessité d’avoir β K Γ = 0, δK Γ = 0 et γK Γ ≠ 0 (ou αK Γalors immédiate, ce qui termine la preuve.≠ 0) sur Γ ⊂ ∂Ω pour retrouver E × n = 0 estL’énergie <strong>de</strong> (4) est donnée par ∫ Ω εE · E dx + ∫ ΩµH · H dx. L’étu<strong>de</strong> <strong>de</strong> cette énergie pour σ = 0est donnée <strong>dans</strong> le théorème suivant.Théorème 4 Il y a conservation d’énergie au cours du <strong>temps</strong> si :• ∀ Γ = K ∩ K ′ , α K Γ = αK′ Γ= 0, δK Γ = δK′ Γ = 0, βK Γ = −γK′• ∀ Γ = K ∩ ∂Ω, β K Γ = 0, δK Γ = 0 et γK Γ = 0, αK Γ ≥ 0.Γ , βK′ Γ= −γK Γ , γK Γ + γK′ Γ = 1,Par la suite, il a été choisi :• ∀ Γ = K ∩ K ′ , α K Γ = αK′ Γ= 0, δK Γ = δK′ Γ = 0, βK Γ = βK′ Γ = − 1 2 , γK Γ = γK′ Γ = 1 2• ∀ Γ = K ∩ ∂Ω, β K Γ = 0 = δK Γ = αK Γ , γK Γ = 1,ce qui correspond à la formulation variationnelle :⎧ ∫∫∫⎪⎨ (ε ∂ t E + σE) · ψ dx = ∇ × H · ψ dx + β K ∂K [[H × n]]K ∂K∫ K∫· ψ ds,K ∫ ∂K(7)⎪⎩ µ ∂ t H · φ dx = − ∇ × E · φ dx + γ K ∂K [E × n]]K ∂K · φ ds.KK∂K12


Remarque 5 On pourrait tout aussi bien déterminer le jeu <strong>de</strong> coefficients à utiliser lorsque l’on impose,par exemple, <strong>de</strong>s conditions aux limites absorbantes <strong>de</strong> type Silver-Müller, c’est là la richesse <strong>de</strong> cetteformulation variationnelle.Remarque 6 Le jeu <strong>de</strong> coefficients choisi correspond à <strong>un</strong>e approximation centrée <strong>de</strong>s flux (i.e : lesvaleurs <strong>de</strong>s champs aux frontières <strong>de</strong>s cellules sont approchées par la <strong>de</strong>mi-somme <strong>de</strong>s traces <strong>de</strong>s champs<strong>de</strong> part et d’autre <strong>de</strong> la frontière). On considère ainsi <strong>dans</strong> ce mémoire <strong>un</strong>e formulation <strong>Galerkin</strong> centrée,et les métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> présentées par la suite ne sont valables que pour ce type <strong>de</strong>schéma. Il est bien sûr possible d’utiliser <strong>de</strong>s formulations décentrées mais les discrétisations temporellestraditionnellement utilisées sont plutôt <strong>de</strong> type R<strong>un</strong>ge-Kutta <strong>dans</strong> ce cas (et non leap-frog).2.2 ApproximationOn cherche maintenant à discrétiser en espace, puis en <strong>temps</strong>, cette formulation variationnelle. Ondoit pour cela définir <strong>un</strong>e espace d’approximation <strong>de</strong>s champs et <strong>un</strong>e base <strong>de</strong> celui-ci.2.2.1 Description <strong>de</strong>s fonctions <strong>de</strong> baseLa définition <strong>de</strong>s fonctions <strong>de</strong> base adaptées se fait moyennant <strong>un</strong> cadre <strong>de</strong> référence : on considèrele cube <strong>un</strong>ité ˆK = [0, 1] 3 et on met en correspondance chaque cellule hexahédrique K avec ce cube <strong>un</strong>itéau moyen d’<strong>un</strong>e transformation géométrique notée F K , i.e : F K ( ˆK) = K, ceci du fait que tout hexaèdrepeut être vu comme la déformation d’<strong>un</strong> cube. Ainsi, on peut définir <strong>un</strong> ensemble <strong>de</strong> fonctions <strong>de</strong> basepolynomiales <strong>de</strong> ˆK et se ramener, via F K , à l’ensemble <strong>de</strong>s fonctions <strong>de</strong> base sur les éléments K ∈ T .On définit alors l’espace d’approximation auquel appartiendrons les solutions numériques :V r = {v ∈ [L 2 (Ω)] 3 tel que ∀ K ∈ T , DF ∗ K v| K◦ F K ∈ [Q r ( ˆK)] 3 }, (8)où Q r ( ˆK) est l’ensemble <strong>de</strong>s polynômes d’ordre inférieur ou égal à r sur chaque variable et DF K lamatrice jacobienne <strong>de</strong> F K , dont le déterminant sera noté J i . Dans la suite du rapport, on parlera d’<strong>un</strong>eapproximation Q r pour la métho<strong>de</strong> <strong>Galerkin</strong> Discontinu lorsque l’approximation spatiale sera basée surV r .Remarque 7 En général, <strong>dans</strong> les métho<strong>de</strong>s <strong>de</strong> type <strong>Galerkin</strong> discontinu, on choisit comme espace d’approximation<strong>un</strong> espace polynomial, ie les champs sont approchées par <strong>de</strong>s polynômes sur chaque K. Ici,c’est <strong>un</strong> espace <strong>un</strong> peu particulier que l’on utilise, ceci afin <strong>de</strong> permettre l’obtention <strong>de</strong> matrices <strong>de</strong>masse con<strong>de</strong>nsées et <strong>de</strong>s matrices <strong>de</strong> sauts indépendantes <strong>de</strong> l’élément K.Remarque 8 On peut bien sûr prendre <strong>un</strong> ordre d’approximation r i dépendant <strong>de</strong> la cellule ; ici, on apris r pour simplifier les notations.Pour définir les fonctions <strong>de</strong> bases <strong>de</strong> V r , on commence par définir <strong>de</strong>s fonctions <strong>de</strong> bases sur ˆK.On construit (r + 1) points <strong>de</strong> quadrature <strong>de</strong> Gauss sur chaque intervalle [0, 1] qui serviront au calculnumérique <strong>de</strong>s intégrales, et on a ainsi <strong>un</strong> ensemble <strong>de</strong> (r + 1) 3 nœuds <strong>de</strong> ˆK = [0, 1] 3 , qui seront notésξ i,j,k . On définit ensuite (r +1) 3 polynômes <strong>de</strong> Lagrange θ i,j,k ∈ Q r tels que θ i,j,k (ξ l,m,n ) = δ il δ jm δ kn ,avec δ symbole <strong>de</strong> Kronecker (en d’autres termes, la fonction θ i,j,k vaut 1 sur le nœud i, j, k et vaut 0 surles autres nœuds). Par commodité, on utilisera désormais <strong>un</strong>e notation multi-indice l ∈ {1... (r + 1)} 3pour représenter les nœuds (i, j, k).L’ensemble <strong>de</strong>s 3(r+1) 3 fonctions θ (1,2,3)l<strong>de</strong> la base ̂B sur ˆK sera alors défini par : θ 1 l = (θ l, 0, 0) T =θ−→l e1 , θ 2 l = θ−→l e2 , θ 3 l = θ−→l e3 . Par exemple, la figure 4 montre la position <strong>de</strong>s <strong>de</strong>grés <strong>de</strong> liberté sur ˆKpour <strong>un</strong>e approximation Q 3 . Il sera utile par la suite <strong>de</strong> remarquer que θ i l (ξ n) = δ−→l,n ei .13


FIG. 4 – Degrés <strong>de</strong> liberté pour <strong>un</strong>e approximation Q 3 sur le cube <strong>un</strong>itéEnfin, on définit la base B <strong>de</strong> V r par :Ψ ∈ B ⇔ ∃ K tel que supp(Ψ) = K, ∃ l ∈ {1, ..., (r + 1)} 3 , ∃ i ∈ [[1; 3]] tels que :Ψ ◦ F K = DF ∗−1Kθi l(9)La décomposition du champ E (i<strong>de</strong>m pour H) sur la base B se fait alors après changement <strong>de</strong> variablespour se ramener sur ˆK, auquel cas on peut écrire :∀ K ∈ T , E ◦ F K =3∑∑EK,l ii=1 l∈{1,...,(r+1)} 3DF∗−1K θi l . (10)Les approximations d’intégrales seront faites par la formule <strong>de</strong> quadrature :∫∑f(̂x)d̂x ≃ω l f(ξ l )ˆKl∈{1,...,(r+1)} 3où ω l sont les poids <strong>de</strong> quadrature <strong>de</strong> Gauss associés aux points ξ l .2.2.2 Formulation semi-discrète en espaceIl s’agit maintenant <strong>de</strong> décomposer les champs <strong>dans</strong> la base B et <strong>de</strong> parcourir l’ensemble <strong>de</strong>s fonctions<strong>de</strong> la base B avec les fonctions test <strong>dans</strong> la formulation variationnelle (7) pour obtenir <strong>un</strong> systèmediscret que l’on met sous forme matricielle. Chaque terme <strong>de</strong> la formulation (7) est isolé et discrétisé.Certains calculs, dont l’absence n’altère <strong>pas</strong> la compréhension globale <strong>de</strong> la démarche, ne seront <strong>pas</strong>détaillés car trop lourds.∫Calcul <strong>de</strong>s matrices <strong>de</strong> masse Il s’agit <strong>de</strong>s matrices issues <strong>de</strong>s termes ∂ t K ε E · ψ dx + ∫ ∫ KσE · ψ dxet ∂ t K µ H · φ dx <strong>dans</strong> (7). Seul le terme ∫ Kε E · ψ dx sera explicité, les autres étant similaires. Soitψ 0 ∈ B, supp(ψ 0 ) = K ∈ T . Après changement <strong>de</strong> variables on obtient :∫∫ε E · ψ 0 dx = |J K | (ε ◦ F K E ◦ F K ) · (ψ 0 ◦ F K ) d̂x.KˆKOr, d’après (9), ∃ l 0 , i 0 tels que ψ 0 ◦ F K = DF ∗−1K θi 0l0, d’où :∫∫ε E · ψ 0 dx = |J K | (ε ◦ F K E ◦ F K ) · DF ∗−1K θi 0l0d̂xKˆK14


===3∑∑EK,lii=1 l∈{1,...,(r+1)} 33∑∑EK,lii=1 l∈{1,...,(r+1)} 33∑∑EK,lii=1 l∈{1,...,(r+1)} 3∫∫ˆKˆK|J K | ( ε ◦ F K DF ∗−1 )Kθi l · DF∗−1K θi 0l0d̂x d’après (10)|J K | ( DF −1K ε ◦ F K DF ∗−1 )Kθi l · θi 0l0d̂x∑ω n |J K (ξ n )| ( DF −1K ε ◦ F K DF ∗−1Kn∈{1,...,(r+1)} 3)(ξn ) θ i l (ξ n) · θ i 0l0(ξ n ).Comme θ i l (ξ n) = δ l,n−→ ei et θ i 0l0(ξ n ) = δ l0 ,n −→ e i0 , cette expression est non nulle lorsque l = n = l 0 , d’où :∫Kε E · ψ dx =3∑EK,l i 0ω l0i=1∣ ∣ J K (ξ l0) ∣ ∣ ( DF −1K ε ◦ F K DF ∗−1K (ξ l 0) −→ e i)· −→ ei0 .En écrivant cette expression pour i 0 = 1, 2, 3 on obtient, en regroupant les trois scalaires {EK,l i 0} i0 =1,2,3<strong>dans</strong> <strong>un</strong> vecteur E K,l0 , <strong>un</strong> produit matrice-vecteur M K,l 0ε {EK,l i 0} i0 =1,2,3 <strong>de</strong> taille 3 × 3. En faisant <strong>de</strong>même avec tous les l 0 ∈ {1, ..., (r + 1)} 3 (i.e : ψ 0 parcourt toutes les fonctions <strong>de</strong> base <strong>de</strong> K), on obtient<strong>un</strong> produit matrice-vecteur Mε K E K dont la matrice Mε K =diag(M K,l 0ε ) l0 ∈{1,...,(r+1)} 3 est bloc-diagonaleet dont les inconnues sont regroupées <strong>dans</strong> <strong>un</strong> vecteur E K contenant tous les {E K,l0 } l0 ∈{1,...,(r+1)} 3.Enfin, en faisant ainsi pour toutes les cellules K ∈ T , on obtient <strong>un</strong>e matrice globale bloc-diagonaleM ε =diag(Mε K ) K∈T dont chaque bloc (correspondant à chaque cellule) est lui-même bloc-diagonal(blocs 3 × 3), cette <strong>de</strong>rnière propriété étant due au choix <strong>de</strong>s espaces d’approximation particuliers.Les∫inconnues sont <strong>dans</strong> <strong>un</strong> vecteur E qui contient tous les vecteurs {E K } K∈T . Au final, le terme∂ t K ε E · ψ dx est donc discrétisé en M ε ∂ t E. On peut également remarquer que M ε est symétrique :en effet, il est facile <strong>de</strong> voir que chaque bloc M K,l 0ε est symétrique.La démarche est similaire pour ∫ K σE · ψ dx (resp. ∂ ∫t K µ H · φ dx) et on obtient M σE (resp.M µ ∂ t H). Par la suite, les calculs se déroulant plus ou moins <strong>de</strong> la même manière, ils seront <strong>un</strong> peumoins détaillés, et les notations utilisées seront les mêmes.Calcul <strong>de</strong>s matrices <strong>de</strong> rigidité Elles sont obtenues en discrétisant ∫ K ∇ × E · φ dx et ∫ K ∇ × H · ψ dx<strong>dans</strong> la formulation (7). Soit φ 0 ∈ B, supp(φ 0 ) = K ∈ T , alors ∃ l 0 , i 0 tels que φ 0 ◦ F K = DF ∗−1K θi 0l0.On admettra que :∫K∇ × E · φ dx = signe(J K)= signe(J K)= signe(J K)3∑∑EK,lii=1 l∈{1,...,(r+1)} 33∑∑EK,lii=1 l∈{1,...,(r+1)} 33∑i=1∑∫ˆKl∈{1,...,(r+1)} 3 E i K,l ω n̂∇ × θ i l · θi 0l0d̂x∑ ( )ω n ̂∇ × θiln∈{1,...,(r+1)} 3(̂∇ × θil)(ξ l0) · −→ e i0(ξ n ) · θ i 0l0(ξ n )En faisant <strong>de</strong> même pour i 0 = 1, 2, 3 et l 0 ∈ {1, ..., (r + 1)} 3 (i.e ψ 0 parcourt toutes les fonctions <strong>de</strong>base <strong>de</strong> K), on obtient <strong>un</strong>e formulation <strong>de</strong> la forme R K E K . Enfin, la même démarche pour toutes lescellules K ∈ T donne <strong>un</strong>e discrétisation <strong>de</strong> la forme RE où R =diag(R K ) K∈T est bloc diagonale. Onpeut remarquer que le calcul <strong>de</strong> la matrice <strong>de</strong> rigidité sur les cellules K ∈ T ne dépend que du signe dujacobien J K , ce qui implique <strong>un</strong> très faible stockage par rapport aux métho<strong>de</strong>s <strong>de</strong> <strong>Galerkin</strong> discontinuclassiques.Il en est <strong>de</strong> même pour la discrétisation du terme ∫ K∇ × H · ψ dx qui donne RH.15


Calcul <strong>de</strong>s matrices <strong>de</strong> saut On s’intéresse tout d’abord au terme ∫ ∂K βK ∂K [[H × n]]K ∂K · ψ ds quel’on décompose en flux venant <strong>de</strong>s faces internes ∂K ∩ ∂K ′ et <strong>de</strong> la face frontière ∂K ∩ ∂Ω. Commeβ K ∂K = − 1 2sur les faces internes et 0 sur les faces frontière, on a :∫β K ∂K [[H × n]]K ∂K · ψ ds = −∑ ∫1∂K∂K∩∂K ′ 2 [[H × n]]K ∂K · ψ ds + 0,K ′ ∈V(K)où V(K) l’ensemble cellules voisines à K. Par <strong>un</strong>e démarche globalement similaire (mais plus technique)à celles employée pour les autres matrices, l’intégrale ∫ 1 ∂K∩∂K ′ 2 [H × n]]K ∂K ·ψ ds conduit à <strong>un</strong>e matriceSK i <strong>de</strong> flux entre les cellules K ′ et K : S i ∑′KH. La somme <strong>de</strong>vient donc <strong>un</strong>e somme <strong>de</strong> flux′K ′ ∈V(K)∑provenant <strong>de</strong>s cellules voisines à la cellule K considérée : SK i H. Au final, en faisant <strong>de</strong> même′K ′ ∈V(K)pour chaque cellule K, on obtient <strong>un</strong>e matrice <strong>de</strong> flux globale S i dont les blocks (i, j) correspond auflux <strong>de</strong> K ′ vers K. On a donc −S i H.Remarque 9 Lorsque l’on a dit que ∫ ∂K∩∂K− 1 ′ 2 [[H × n]]K ∂K · ψ ds conduit à <strong>un</strong>e matrice S K ′ <strong>de</strong> fluxentre les cellules K ′ et K, il eut été plus rigoureux <strong>de</strong> dire que cela conduit à <strong>un</strong>e matrice dont <strong>un</strong>e partieest due aux flux provenant <strong>de</strong> K ′ . En effet, [[H × n]] K ∂K = (H| × n)K ′ Γ− (H| K× n) Γ; c’est la partie(H| K ′ × n) Γqui correspond au flux provenant <strong>de</strong>s cellules voisines K ′ , l’autre partie étant <strong>un</strong> terme <strong>de</strong>rotationnel propre à la cellule K.Concernant le terme ∫ ∂K γK ∂K [[E × n]]K ∂K · ψ ds, comme γK ∂K prend la valeur 1 2sur les faces interneset 1 sur les faces frontière, on a :∫γ K ∂K [[E × n]]K ∂K · ψ ds =∑ ∫1∂K∂K∩∂K ′ 2 [[E × n]]K ∂K∫∂K∩∂Ω· ψ ds + [E × n]] · ψ ds.K ′ ∈V(K)Le premier terme donne, comme précé<strong>de</strong>mment, S i E. Concernant le second terme : soit ψ 0 ∈ B (i.e∃ l 0 , i 0 tels que ψ 0 ◦ F K = DF ∗−1K θi 0l0). On admettra alors que :∫3∑ ∑∫[[E × n]] · ψ ds = −signe(J K )(θ i l × ̂n) · θi 0∂K∩∂ΩEK,lii=1 l∈{1,...,(r+1)} 3où ̂Γ est la face du cube <strong>un</strong>ité correspondante à ∂K ∩ ∂Ω. En faisant <strong>de</strong> même pour i 0 = 1....3 etl 0 ∈ {1....(r + 1)} 3 , on obtient <strong>un</strong>e formulation S b K E K. Il est évi<strong>de</strong>nt que si K ne possè<strong>de</strong> <strong>pas</strong> <strong>de</strong> facefrontière, ce terme n’existe <strong>pas</strong>. Ainsi, cette démarche pour tout K conduit à <strong>un</strong>e matrice bloc-diagonaleS b =diag({S b K , O}) suivant si K possè<strong>de</strong> <strong>un</strong>e face frontière ou <strong>pas</strong> ; l’approximation est donc : Sb E. Onpeut noter qu’ici encore, seul le signe du jacobien J K a besoin d’être stocké pour chaque cellule.Système semi-discrétisé Au final, on obtient le système semi-discrétisé en espace :{Mε ∂ t E + M σ E = RH − S i H,M µ ∂ t H = −RE + S i E + S b E,avec, du fait du choix <strong>de</strong> l’espace d’approximation :– les matrices <strong>de</strong> masse M ε , M σ , M µ sont symétriques bloc-diagonales (comme <strong>dans</strong> toutes lesmétho<strong>de</strong>s <strong>de</strong> <strong>Galerkin</strong>), mais dont chaque bloc est également 3 × 3 bloc-diagonal.– les matrices <strong>de</strong> rigidité et <strong>de</strong> sauts sont très creuses et ne nécessitent que le stockage du signe dujacobien <strong>de</strong> F K .On obtient ainsi <strong>un</strong>e métho<strong>de</strong> rapi<strong>de</strong> et ne nécessitant qu’<strong>un</strong> faible stockage et ce quel que soit l’ordred’approximation spatial choisi. Les avantages <strong>de</strong> cette métho<strong>de</strong> sont liés à l’utilisation <strong>de</strong> maillageshexaédriques qui peuvent être obtenues facilement à partir <strong>de</strong> cellules tétraédriques comme le montre lafigure 5.̂Γl0,(11)16


0000000011111111000000000000111111111111000000001111111100000000000011111111111100000000111111110000000000001111111111110000000011111111000000000000111111111111000000001111111100000000000011111111111100000000111111110000000000001111111111110000000011111111000000000000111111111111000000001111111100000000000000000000111111110000000000000000000011111111000000000000000000001111111100000000000000000000111111111111111111111111111111111111111111111111111111110 0 1 100000000000000000000111111110000000000000000000011111111000000000000000000001111111111111111111111111111111111111111111100000000000011111111111100000000111111110000000000001111111111110 1 000000001111111100000000000011111111111100000000000000000000000000000000000000000 1 1 0000 11110111111111111111111110110000 111111111111111111111111010000000000000000000011111111111111111111010000000000000000000011111111111111111111000000000000000000001111111111111111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111010101010000000000000000000000000000000000000000111111111111111111111111111111111111111100000000000000000000000000000000000000000000000011111111111111111111111111111111111111111111111100000000000000000000111111111111111111110000000000000000000011111111111111111111000000001111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111111111111111111111111111111111111111111111111111100000000111111110000000000000111111110000000000000111111110000000000000111111110000000000000111111110000000000000111111110000000000000000000001111111111111111000000001111111100000centre <strong>de</strong> la celluleFIG. 5 – Découpage d’<strong>un</strong>e cellule tétraédrique en 4 cellules hexaédriques2.2.3 Réécriture <strong>de</strong> la formulation semi-discrèteOn va par la suite manipuler, par commodité, <strong>un</strong>e autre écriture du schéma semi-discrétisé (11), quipeut se décomposer d’<strong>un</strong>e autre manière :{Mε ∂ t E + M σ E = KH − AH − BH = SH,M µ ∂ t H = −KE + AE − BE = −S T E,où les matrices <strong>de</strong> masse ne changent <strong>pas</strong>, la matrice <strong>de</strong> rigidité K est bloc-diagonale symétrique, Aest symétrique et B est bloc-diagonale anti-symétrique. Sans trop entrer <strong>dans</strong> les détails (car c’est <strong>un</strong>raisonnement classique en <strong>Galerkin</strong> Discontinu mais assez technique à développer), on va brièvementexpliquer pourquoi cette décomposition est toujours possible. On considère la première équation <strong>de</strong> (7)(le principe est exactement le même pour la secon<strong>de</strong> équation) :∫∫∫(ε ∂ t E + σE) · ψ dx = ∇ × H · ψ dx + β K ∂K [[H × n]]K ∂K · ψ ds. (12)KKLe membre <strong>de</strong> gauche a aboutit aux <strong>de</strong>ux matrices <strong>de</strong> masse M ε et M σ . Le premier terme du membre <strong>de</strong>droite donne la matrice <strong>de</strong> rigidité, dont on peut ”symboliquement” dire que chaque bloc K est constitué{ ∫ }<strong>de</strong> termes ˆK̂∇ × θil · θ i l,l0 ∈{1,...,(r+1)} 30l0et le second conduisait aux matrices <strong>de</strong> saut. On va chercherà répartir ces termes différemment pour obtenir la formulation voulue. On notera (E K , H K ) lei,i 0 =1,2,3champ sur la cellule K. Après application d’<strong>un</strong>e formule <strong>de</strong> Green, (12) <strong>de</strong>vient :∫∫∫∫(ε ∂ t E K +σE K ) · ψ = ∇ × ψ · H K − (H K × n) · ψ + β K ∂K [[H × n]]K ∂K · ψKK∂K∫∫∫= ∇ × ψ · H K − (H K × n) · ψ + β K ∂K [[H × n]]K ∂K · ψ∫K∂K∂K= ∇ × ψ · H K − 1 ∫K × n) · ψ −K 2 ∂K(H 1 ∫∫(H K × n) · ψ + β K ∂K2[[H × n]]K ∂K · ψ.∂K∂KAprès application <strong>de</strong> la formule <strong>de</strong> Green : 1 ∫2 ∂K (H K × n) · ψ = 1 ∫2 K ∇ × ψ · H K − ∇ × H K · ψ, celadonne :∫(ε ∂ t E K +σE K )·ψ = 1 ∫(∇ × ψ · H K + ∇ × H K · ψ)+ 1 ∫∫β K ∂KK2 K2[[H×n]]K ∂K·ψ−1 (H K ×n)·ψ.∂K 2 ∂K∩∂Ω17∂K∂K


Sachant que β K ∂K est nul sur ∂Ω et vaut − 1 2sur les faces internes, et en décomposant l’intégrale sur ∂K,on obtient :∫K∫∑∫(ε ∂ t E K +σE K ) · ψ = 1 2(∇ × ψ · H K + ∇ × H K · ψ) + 1 2[H × n] K ∂K · ψKK ′ ∈V(K)∂K∩∂K ′∑∫∫− 1 2(H K × n) · ψ − 1K ′ ∈V(K)∂K∩∂K ′ 2(H K × n) · ψ∂K∩∂Ω= 1 ∫(∇ × ψ · H K + ∇ × H K · ψ) + 1 ∑∫(H K ′ × n − H K × n) · ψ2 K2K ′ ∈V(K) ∂K∩∂K ′− 1 ∑∫(H K × n) · ψ − 1 ∫(H K × n) · ψ22K ′ ∈V(K)∂K∩∂Ω∂K∩∂K ′= 1 ∫(∇ × ψ · H K + ∇ × H K · ψ) − 1 ∑∫22K− 1 2∫∂K∩∂Ω(H K × n) · ψ.K ′ ∈V(K)∂K∩∂K ′ (H K ′ × n) · ψCette écriture <strong>de</strong> la formulation variationnelle aboutit, après discrétisation, au système (13) annoncé.En effet, le terme 1 ∫2 K (∇ × ψ · H K + ∇ × H K · ψ) conduit à <strong>un</strong>e matrice <strong>de</strong> rigidité K symétrique{ ∫dont les blocs sont constitués <strong>de</strong> termes ˆK̂∇ × θil · θ i 0l0+ ̂∇}× θ i 0l0 · θ i l,l0 ∈{1,...,(r+1)} 3l. Le terme∫i,i 0 =1,2,312 ∂K∩∂Ω (H K × n) · ψ conduit à <strong>un</strong>e matrice anti-symétrique car construite à partir <strong>de</strong> termes <strong>de</strong> la{ ∫ } i,lforme ̂Γ(θ i K,l × n′ K ) · θi 0K,l0, sur lesquels on voit bien que changer le rôle <strong>de</strong> i, l et <strong>de</strong> i 0 , l 0 (i.ei 0 ,l 0permuter les indices <strong>de</strong> lignes avec les indices colonnes) fait apparaître <strong>un</strong> changement <strong>de</strong> signe <strong>dans</strong>l’expression. Cela donne <strong>un</strong>e matrice <strong>de</strong> bord anti-symétrique et bloc diagonale (car ne faisant <strong>pas</strong> intervenir<strong>de</strong> fonctions <strong>de</strong> bases <strong>de</strong>s cellules voisines) notée B. Enfin, à chaque terme ∫ ∂K∩∂K(H ′ K ′ × n) · ψest associée <strong>un</strong>e matrice <strong>de</strong> flux entre K et K ′ , et on obtient donc <strong>un</strong>e matrice <strong>de</strong> flux symétrique carla matrice A KK ′ <strong>de</strong> flux sur K pour la cellule voisine K ′ est la même (à <strong>un</strong>e transposition près) que lamatrice A K ′ K <strong>de</strong> flux sur K ′ pour la cellule voisine K. En effet, du fait que n K ′ = −n K , on aura <strong>de</strong>s{ ∫ } i,l{termes génériques ̂Γ(θ i K ′ ,l × n K) · θ i 0∫ } i,lK,l0<strong>dans</strong> le premier cas, et ̂Γ(θ i K,l × i 0 ,l n′ K ) · θi 0K ′ ,l 0 0 i 0 ,l{ 0∫ i,l{équivalent à −(θ ̂Γ i 0∫ i,lK,l0× −n K ) · θ i K ,l} ′ soit encore ̂Γ(θ i 0K,l0× n K ) · θ i K ,l} ′ <strong>dans</strong> le secondcas. On obtient donc <strong>un</strong>e matrice <strong>de</strong> flux A symétrique.Le même raisonnement appliqué à la secon<strong>de</strong> équation permet d’écrire :{Mε ∂ t E + M σ E = KH − AH − BH,M µ ∂ t H = −KE + AE − BE.i 0 ,l 0De plus, du fait <strong>de</strong>s propriétés <strong>de</strong> symétrie et d’anti-symétrie <strong>de</strong> ces matrices, et en notant S = K−A−B,on a : −K + A − B = −K T + A T + B T = −S T . On a alors le système :{Mε ∂ t E + M σ E = SH,M µ ∂ t H = −S T (13)E.Remarque 10 Il est important <strong>de</strong> rappeler que ce qui a été fait <strong>dans</strong> ce paragraphe n’est <strong>pas</strong> parfaitementrigoureux. Ce qui a été appelé terme générique <strong>de</strong> la matrice n’est qu’<strong>un</strong>e représentation simplifiéepermettant <strong>de</strong> bien saisir l’essentiel : les interactions entre les fonctions <strong>de</strong> base, qui sont à l’origine <strong>de</strong>spropriétés <strong>de</strong> symétrie (ou d’anti-symétrie) et <strong>de</strong> structure bloc (bloc-diagonale ou <strong>pas</strong>) <strong>de</strong>s différentesi 0 ,l 018


matrices. L’écriture rigoureuse <strong>de</strong> ces termes <strong>de</strong>man<strong>de</strong>rait <strong>de</strong>s calculs plus techniques comme ceux effectués<strong>dans</strong> le paragraphe (2.2.2).On a alors la propriété suivante <strong>de</strong> conservation d’énergie du schéma semi-discret lorsque σ = 0 :Proposition 11 Le schéma semi-discret (13) conserve l’énergie :E = 1 2 (M εE |E ) + (M µ H |H )au cours du <strong>temps</strong>, où (·|·) désigne le produit scalaire euclidien usuel.Démonstration. On a :∂ t E = 1 2 ∂ E(M ε E |E ) · ∂ t E + 1 2 ∂ H(M µ H |H ) · ∂ t H= (M ε E |∂ t E ) + (M µ H |∂ t H ) = (E |M ε ∂ t E ) + (H |M µ ∂ t H )= (E |SH ) + (H ∣ ∣−S T E ) = (E |SH ) − (E |SH ) = 0.L’énergie E est donc conservée au cours du <strong>temps</strong>.2.2.4 Une discrétisation en <strong>temps</strong> : le schéma <strong>de</strong> leap-frogLa métho<strong>de</strong> <strong>de</strong> discrétisation temporelle la plus utilisée en électromagnétisme pour résoudre leséquations <strong>de</strong> Maxwell est incontestablement le schéma <strong>de</strong> leap-frog. Explicite, d’ordre <strong>de</strong>ux, facile àmettre en œuvre, elle permet <strong>de</strong> plus <strong>de</strong> respecter le caractère conservatif du schéma semi-discrétisé, etassure ainsi sa stabilité. Le schéma (11) discrétisé en <strong>temps</strong> par le schéma <strong>de</strong> leap-frog <strong>de</strong> <strong>pas</strong> ∆t s’écrit :⎧⎨ HM n+ 1 2 −H n− 1 2µ ∆t= −S T E n ,(14)⎩ EM n+1 −E nε ∆t+ M σ E = SH n+ 1 2 .Afin d’alléger les formules, on considère désormais <strong>dans</strong> toute la suite du rapport, sans que cela soit <strong>un</strong>erestriction, qu’il n’y a <strong>pas</strong> <strong>de</strong> terme <strong>de</strong> dissipation, i.e : σ = 0 (le terme en M σ disparaît). On a alors lapropriété <strong>de</strong> conservation du leap-frog qui suit.Proposition 12 Le schéma (14) conserve l’énergie discrète E n = (M ε E n |E n ) + (M µ H n+ 1 ∣2 ∣H n− 1 2 ) ;il est, par conséquent, stable.Démonstration. En utilisant les équations du schéma (14), on a :E n+1 = ( M ε E n+1 ∣ ∣E n+1 ) ()+ M µ H n+ 3 ∣2 ∣H n+ 1 2= ( M ε E n ∣ En+1 ) (+ ∆t SH n+ 1 2 ∣ E n+1) (+ M µ H n+ 1 2= ( M ε E n ∣ ∣E n+1 ) ()+ M µ H n+ 1 ∣2 ∣H n+ 1 2()= (M ε E n |E n ) + M µ H n+ 1 ∣2 ∣H n− 1 2 + ∆t= E n .) ( ∣ )∣∣H n+ 1 2 − ∆t S T E n+1 ∣∣H n+ 1 2( ∣ ) (E n ∣∣SH n+ 1 2 − ∆tH n+ 1 2∣ S T E n)De plus, E n est <strong>un</strong>e forme quadratique <strong>de</strong>s inconnues numériques (E n ∣ ∣∣H n− 1 2 ) (il suffit d’exprimerH n+ 1 2 en fonction <strong>de</strong> H n− 1 2 et <strong>de</strong> E n ). On peut alors montrer que la conservation <strong>de</strong> E n entraîne <strong>un</strong>estabilité au sens L 2 du schéma numérique, en faisant jouer le rôle d’<strong>un</strong>e fonction <strong>de</strong> Lyap<strong>un</strong>ov à E n [21].19


2.3 Avantages du schéma GD : illustrationPour montrer l’intérêt <strong>de</strong> cette métho<strong>de</strong> <strong>Galerkin</strong> discontinu, on la compare à <strong>un</strong> schéma <strong>de</strong> Yeeclassique. La simulation consiste à calculer le champs en <strong>un</strong> point A, situé à proximité d’<strong>un</strong>e sphèremétallique recouverte d’<strong>un</strong>e couche diélectrique comme indiqué sur la figure 6, cette sphère étant illuminéepar <strong>un</strong>e on<strong>de</strong> plane. Sur la figure 7, on observe clairement la dispersion du schéma <strong>de</strong> Yee (qui setraduit par <strong>un</strong> déphasage flagrant <strong>de</strong>s <strong>de</strong>ux courbes obtenues par FDTD), alors que les métho<strong>de</strong>s <strong>Galerkin</strong>discontinu (d’ordre 3 et 5) se comportent bien. Dans cet exemple, les solutions FDTD et <strong>Galerkin</strong> Discontinusont obtenues pour <strong>un</strong> <strong>temps</strong> CPU équivalent, mais avec <strong>un</strong> gain mémoire <strong>de</strong> 10 pour la métho<strong>de</strong><strong>Galerkin</strong> discontinu.A(-0.76,0.,0.)O(0,0,0)r=0.75mr=0.5mFIG. 6 – Configuration <strong>de</strong> l’expériencepoint : (−0.76,0,0)point (−0.76,0,0)200100100500Ey(V/m)−100−200DG Q3DG Q5FDTD : Lambda/10FDTD : Lambda/20Ey(V/m)0−50DG Q3DG Q5FDTD : Lambda/10FDTD : Lambda/20−3000 1e−08 2e−08 3e−08 4e−08 5e−08t(s)(a)−1001e−07 1.2e−07 1.4e−07 1.6e−07 1.8e−07 2e−07t(s)(b)FIG. 7 – Champs évalués au point A à différentes plages d’observation pour les métho<strong>de</strong>s différencesfinies et <strong>Galerkin</strong> discontinu.20


3 Stratégies <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>On a vu <strong>dans</strong> la précé<strong>de</strong>nte section que la métho<strong>de</strong> <strong>de</strong> <strong>Galerkin</strong> Discontinu possè<strong>de</strong> <strong>de</strong> nombreuxavantages sur les métho<strong>de</strong>s plus classiques <strong>de</strong> type différences finies ou volumes finis. Cependant, <strong>un</strong>problème comm<strong>un</strong> à toutes les métho<strong>de</strong>s se pose : la nécessité d’avoir recours à <strong>de</strong>s maillage raffinés(proximité <strong>de</strong> parois, présence <strong>de</strong> matériaux à forts contrastes etc.) conduit à <strong>de</strong> fortes hétérogénéité <strong>de</strong>tailles <strong>de</strong> cellules, les contraintes <strong>de</strong> stabilité imposant par conséquent l’utilisation d’<strong>un</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> globald’autant plus petit que le maillage est déstructuré, entraînant <strong>de</strong>s <strong>temps</strong> <strong>de</strong> calcul parfois rédhibitoires.Il peut alors paraître judicieux d’adapter le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> aux cellules en les regroupant <strong>dans</strong> différentesclasses d’intégration. On pourra ainsi utiliser <strong>de</strong> petits <strong>pas</strong> <strong>de</strong> <strong>temps</strong> lorsque cela est strictement nécessaire(”petites” cellules) et se permettre l’utilisation d’<strong>un</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> moins contraignant sur les cellules <strong>de</strong>taille plus importante, économisant par ce biais <strong>de</strong> nombreux calculs. C’est là l’essence <strong>de</strong>s schémas à<strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>.Partant <strong>de</strong> la formulation semi-discrétisé en espace, il s’agit alors <strong>de</strong> développer <strong>de</strong>s discrétisationstemporelles permettant <strong>un</strong>e intégration <strong>local</strong>e <strong>de</strong>s cellules. Les critères classiques <strong>de</strong> consistance et <strong>de</strong>convergence <strong>de</strong>s schémas <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> restent <strong>un</strong>e question ouverte et difficile à développer,ce qui explique que souvent les schémas sont proposés sans démonstration mathématique rigoureuse <strong>de</strong>consistance. Le critère <strong>de</strong> stabilité est, lorsque c’est possible, étudié via la conservation d’<strong>un</strong>e énergiediscrète ; c’est même ce critère qui motive la plupart du <strong>temps</strong> la définition du schéma.De nombreux schémas ont étés proposés pour les problème à N corps [17], [16] comme les systèmesmoléculaires, planétaires etc., mais les métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> appliquées aux équations <strong>de</strong>Maxwell (et aux schémas <strong>de</strong> <strong>Galerkin</strong>) relèvent d’<strong>un</strong> développement plus récent. On va présenter <strong>de</strong>smétho<strong>de</strong>s explicites à 2 puis à N classes <strong>de</strong> cellules, intéressantes pour la simplicité <strong>de</strong> leur mise enœuvre et les performances qu’elles offrent, mais possè<strong>de</strong>nt bien sûr leurs limites. Un court paragraphesera également consacré aux métho<strong>de</strong>s implicites. Enfin, <strong>un</strong>e étu<strong>de</strong> énergétique du schéma <strong>de</strong> type leapfrogrécursif à <strong>de</strong>ux classes est faite, et il en découle <strong>un</strong>e stratégie <strong>de</strong> correction énergétique pour stabiliserle schéma si nécessaire.3.1 Métho<strong>de</strong>s explicites à 2 classesUne première approche consiste à effectuer plusieurs intégrations (<strong>de</strong> type leap-frog par exemple)sur les petites cellules (notées 1) pour <strong>un</strong>e intégration sur les grosses cellules (notées 2). Ainsi, les petitescellules sont associées à <strong>un</strong> petit <strong>pas</strong> <strong>de</strong> <strong>temps</strong> et les grosses cellules sont intégrées avec <strong>un</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong>plus grand, multiple du premier. Un problème inhérent à cette démarche est que les schémas nécessitentalors les valeurs du champ à certains <strong>temps</strong> inconnus (car non calculés, par définition même du <strong>pas</strong> <strong>de</strong><strong>temps</strong> <strong>local</strong>) ; il faut alors envisager <strong>un</strong> moyen <strong>de</strong> pallier ce défaut.3.1.1 Métho<strong>de</strong> à base d’interpolationUne première idée est d’utiliser <strong>un</strong>e approximation <strong>de</strong>s champs inconnus par interpolation. Commeon l’a vu, la discrétisation temporelle leap-frog est donnée par :{HM + −H −µ δt= −S T E − ,EM + −E −ε δt= SH + .avec S = K − A − B (et −S T = −K + A − B) et + (resp. −) la valeur du champ calculée (resp. lavaleur du champ au <strong>temps</strong> précé<strong>de</strong>nt), en gardant à l’esprit que les champs E et H sont calculés à <strong>de</strong>s<strong>temps</strong> décalés (n pour E, n + 1 2pour H). La distinction <strong>de</strong>s cellules 1 et 2 entraîne <strong>un</strong>e partition sur les21


cellules et <strong>un</strong>e réorganisation <strong>de</strong>s vecteurs et <strong>de</strong>s matrices :( ) ( ) (E1 H1MεE = , H = , M ε = 1 0E 2 H 2 0 M2ε ( )K1 0K =, A =0 K 2( )A11 A 12, B =A 21 A 22) ( Mµ, M µ =1 00 M µ 2( )B1 0.0 B 2)On pose enfin S 1 = K 1 − A 11 − B 1 et S 2 = K 2 − A 22 − B 2 , qui correspon<strong>de</strong>nt aux calculs internes auxcellules, par opposition aux flux venant <strong>de</strong>s autres cellules représentés par A 12 et A 21 (avec A 12 = A T 21 ,propriété qui sera largement utilisée lors <strong>de</strong> manipulations énergétiques) 1 . On peut alors proposer leschéma à <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> (dont les étapes peuvent être symbolisées sur la figure 8), adapté à lastructure leap-frog :⎧M µ 2M µ 1H n+ 212 −H n− 1 22∆t= −S T 2 En 2 + A 21E n 1 ,H n+ 1 61 −H n− 1 61∆t/3= −S T 1 En 1 + A 12E n 2 ,M ε 1E n+ 2 61 −E n 1∆t/3= S 1 H n+ 1 61 − A 12 ˜Hn+ 1 62 ,⎪⎨M µ 1M2εH n+ 1 21 −H n+ 1 61∆t/3= −S1 T 2 En+ 61 + A 12 Ẽ n+ 2 6E n+12 −E n 2∆t= S 2 H n+ 1 22 − A 21 H n+ 1 21 ,2 ,(15)M ε 1E n+ 4 61 −E n+ 2 61∆t/3= S 1 H n+ 1 21 − A 12 H n+ 1 22 ,M µ 1H n+ 5 61 −H n− 1 21∆t/3= −S1 T 4 En+ 61 + A 12 Ẽ n+ 4 62 ,⎪⎩M ε 1E n+11 −E n+ 4 61∆t/3= S 1 H n+ 5 61 − A ˜Hn+ 5 6 122 ,EE 2Cellules 2 Cellules 1nn2H n+1/22n+121346578EHEHE1n+1/61n+2/61n+1/21n+4/61H n+5/61En+11FIG. 8 – Pas <strong>de</strong> <strong>temps</strong> <strong>local</strong> à base <strong>de</strong> leap-frog1 Ces notations seront systématiquement utilisées par la suite. Elle restent valables <strong>dans</strong> le cas <strong>de</strong>s schémas à N classes <strong>de</strong>cellules, avec les mêmes conventions et propriétés.22


Comme cela a été mentionné, <strong>un</strong> tel schéma nécessite parfois les champs à <strong>de</strong>s <strong>temps</strong> inconnus (surles cellules 2), notés ˜ <strong>dans</strong> le schéma (15). Ces inconnues sont alors approchées au moyen d’interpolations<strong>de</strong>s champs entre les <strong>temps</strong> calculés. En effet, on remarque par exemple que ˜H n+ 1 62 pourra êtreobtenu par interpolation entre H n− 1 22 et H n+ 1 22 dont on dispose. Les interpolations en H 2 permettronsalors le calcul <strong>de</strong>s champs E 2 inconnus, à condition d’avoir effectué cette interpolation sur <strong>de</strong>ux couches<strong>de</strong> cellules à l’interface (notées 3 et 4).Remarque 13 La notation par bloc du schéma 15 masque <strong>un</strong> point qui mérite d’être souligné. En fait,seules les cellules à l’interface entre les domaines 1 et 2 posent problème. En effet, pour les cellulesinternes à la classe (i.e : sans voisin appartenant à l’autre classe), les blocs <strong>de</strong> A 12 et A 21 mis en jeusont nuls et le schéma se résume à <strong>un</strong> leap-frog classique. Les interpolations ne sont donc nécessaire quesur les cellules frontières, là où les flux entre les cellules 1 et 2 sont non nuls (<strong>de</strong>s <strong>temps</strong> non disponiblesétant alors requis).Dans le schéma proposé, on effectue 3 étapes sur les cellules 1 pour <strong>un</strong>e étape sur les cellules 2. Ceraisonnement peut se généraliser à 2n + 1 étapes sur les cellules 1 pour <strong>un</strong>e étape sur les cellules 2. Pourcela, on définit <strong>un</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> ∆t min pour les cellules 1, et <strong>un</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> ∆t c = (2n+1)∆t min pourles cellules 2, ∆t min étant choisi pour assurer la stabilité globale : ∆t min = minK∈T ∆t K (avec n 1).La stratégie permettant d’obtenir coïnci<strong>de</strong>nce <strong>de</strong> <strong>temps</strong> sur le schéma leap-frog est la suivante (onpourra s’ai<strong>de</strong>r <strong>de</strong> la figure 8 pour saisir le principe avec n = 1) :– marquer 1 les ”petites” cellules– marquer 2 les ”grosses” cellules– marquer 3 les cellules 2 qui sont voisines <strong>de</strong>s cellules marquées 1– marquer 4 les cellules 2 qui sont voisines <strong>de</strong>s cellules marquées 3. On a alors la configuration <strong>de</strong>cellules comme décrite sur la figure 9.222222222222 2 2 2 2 2 2 2 2 2 2 22222222222244444442 2 2222222223 3 3 3 3 3 3 33433334441 1 1 1 11 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1111 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 11 11 1 1 1 1 1 1 11 1 1 1 1 1 1 11 1 111 1 1 1 1 13 3 3 3 3 32222 2 2 2 2 2 2 2 2 2222211114 4 4 4 4 4 4 4 4 4444242333332444444422222222222FIG. 9 – Exemple <strong>de</strong> marquage <strong>de</strong>s cellules <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>Supposons le champs électrique (resp. magnétique) connu au <strong>temps</strong> t m = m ∆t c (resp. ( m − 1 2)∆tc ).L’avancement du schéma d’<strong>un</strong> <strong>pas</strong> ∆t c se fait alors comme suit :– t m = m ∆t c– évaluer H pour les cellules marqués 2,3 et 4 au <strong>temps</strong> t m + ∆t c2– t loc = t m23


– pour chaque <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> <strong>de</strong> 1 à n– évaluer H pour les cellules marquées 1 au <strong>temps</strong> t loc + ∆t min2– interpoler H pour les cellules marquées 3 et 4 au <strong>temps</strong> t loc + ∆t min2– évaluer E pour les cellules marquées 1 et 3 au <strong>temps</strong> t loc + ∆t min– t loc = t loc + ∆t min– évaluer H pour les cellules marquées 1 au <strong>temps</strong> t m + ∆t c2– évaluer E pour les cellules marquées 2,3 et 4 au <strong>temps</strong> t m + ∆t c– t loc = t m + ∆t c2– pour chaque <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> <strong>de</strong> 1 à n– évaluer les champs électriques E pour les cellules marquées 1 au <strong>temps</strong> t loc + ∆t min2– interpoler E pour les cellules marquées 3 et 4 au <strong>temps</strong> t loc + ∆t min2– évaluer H pour les cellules marquées 1 et 3 au <strong>temps</strong> t loc + ∆t min– t loc = t loc + ∆t min– évaluer les champs E sur les cellules marquées 1 au <strong>temps</strong> t loc + ∆t min2– t m = t m + ∆t cCette métho<strong>de</strong> est simple à mettre en œuvre et donne <strong>de</strong> très bons résultats : on retrouve bien lasolution numérique attendue et le gain <strong>de</strong> <strong>temps</strong> calcul est significatif. Toutefois, la propriété <strong>de</strong> stabilitédu schéma leap-frog n’est plus assurée et peut entraîner <strong>un</strong>e explosion du schéma sur <strong>de</strong> longs <strong>temps</strong> <strong>de</strong>calcul : il faut d’ailleurs souvent diminuer la condition CFL pour arriver au terme <strong>de</strong>s longues simulations.Par exemple, <strong>dans</strong> les résultats numériques données <strong>dans</strong> la section 4, la contrainte à été durcied’<strong>un</strong> facteur 0.8 afin d’être stable sur les <strong>temps</strong> <strong>de</strong> simulation considérés. Ce phénomène a été étudié<strong>dans</strong> d’autres stratégies [9], [12], et semble dû à <strong>un</strong> cumul d’on<strong>de</strong>s parasites apparaissant à l’interface.Ce problème, que l’on rencontre souvent lors d’utilisation <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>, peut se comprendreintuitivement : lors d’<strong>un</strong> leap-frog classique, on a vu que l’énergie associée est conservée ce qui rendle schéma stable. Cette conservation d’énergie est due à <strong>un</strong>e simplification <strong>de</strong>s flux lorsque l’on sommeles énergies sur toutes les cellules. Lors <strong>de</strong> l’utilisation <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>, cette simplification n’a engénéral plus lieu. En effet, à l’interface entre les classes <strong>de</strong> cellules, elle ne peut avoir lieu pour la simpleraison que, <strong>de</strong> part et d’autre <strong>de</strong> cette interface, <strong>de</strong>s schémas différents sont appliqués (certains champssont calculés et d’autres non), ce qui empêche la simplification <strong>de</strong>s flux lors <strong>de</strong> l’écriture <strong>de</strong> l’énergieglobale du schéma. Ces flux parasites sont alors <strong>un</strong>e source d’énergie superflue qui à long terme peutprovoquer <strong>un</strong>e explosion si ces termes ne sont <strong>pas</strong> dissipatifs.Une autre approche consiste alors à utiliser les champs inconnus comme <strong>de</strong>grés <strong>de</strong> liberté pour forcer<strong>un</strong>e conservation d’énergie et ainsi garantir la stabilité du schéma : c’est ce qui est brièvement expliqué<strong>dans</strong> la section suivante.3.1.2 Métho<strong>de</strong> avec conditions <strong>de</strong> raccord à l’interfaceUne autre approche, développée entre autres <strong>dans</strong> [9] et [10], consiste à créer <strong>un</strong>e séparation entre les<strong>de</strong>ux domaines (cellules 1 et 2) et ainsi considérer les <strong>de</strong>ux algorithmes indépendamment, chac<strong>un</strong> avec <strong>un</strong><strong>pas</strong> <strong>de</strong> <strong>temps</strong> associé. Pour ce, on définit <strong>de</strong>s inconnues correspondant aux champs inconnus à l’interface,pour le domaine 1 et pour le domaine 2 (il y a donc redondance <strong>de</strong>s inconnues à la frontière). L’idée est<strong>de</strong> ne <strong>pas</strong> imposer <strong>un</strong>e continuité forte entre ces inconnues (égalité) mais <strong>de</strong> leur permettre d’avoir <strong>de</strong>svaleurs différentes. On écrit alors la variation d’énergie du système entre <strong>de</strong>ux instants successifs, qui nedépend que <strong>de</strong> ces inconnues. En effet, comme évoqué précé<strong>de</strong>mment, les énergies <strong>de</strong> cellules n’ayantque <strong>de</strong>s voisins <strong>de</strong> même classe (par sur l’interface) se simplifient car le schéma leap-frog est conservatif.On peut donc imposer <strong>un</strong>e condition <strong>de</strong> raccord entre ces inconnues permettant d’avoir conservation <strong>de</strong>cette énergie, et ainsi assurer la stabilité du schéma global.Cette stratégie a déjà été utilisée et donne <strong>de</strong> bons résultats. Cependant, ces conditions <strong>de</strong> raccord nesont autre qu’<strong>un</strong> système linéaire liant les inconnues qu’il faut résoudre à chaque itération temporelle ;24


si leur exploitation est envisageable en 1D, elle <strong>de</strong>vient lour<strong>de</strong> lors du <strong>pas</strong>sage en dimension supérieure.L’intérêt <strong>de</strong> la stratégie <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> en est alors réduit d’autant.3.1.3 ApplicationPour montrer l’intérêt <strong>de</strong> la stratégie <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> à <strong>de</strong>ux classes avec interpolation, onl’a appliquée à la diffraction d’<strong>un</strong>e on<strong>de</strong> plane par <strong>un</strong> cône plat et l’on observe les champs en <strong>un</strong> pointA (voir la figure 10 (a)). Dans le maillage <strong>de</strong> l’exemple étudié, seulement 20% <strong>de</strong>s cellules requièrentl’utilisation du <strong>pas</strong> <strong>de</strong> <strong>temps</strong> minimal (classe 1). On constate sur la figure 10 (c) <strong>un</strong>e coïnci<strong>de</strong>nce <strong>de</strong>scourbes obtenues avec et sans <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>, pour <strong>un</strong> <strong>temps</strong> <strong>de</strong> calcul divisé par 1.5 avec utilisationdu <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>.AZZXXYY(a) Maillage avec PML(b) Maillage du cône100Schema classiqueAvec interpolation0Ey (V/m)−100−200−3000 1e−08 2e−08 3e−08<strong>temps</strong> (s)(c) Champs E y au point AFIG. 10 – Maillage volumique et surfacique <strong>de</strong> l’objet et solutions obtenuesIl est important <strong>de</strong> rappeler le fait que cette métho<strong>de</strong> peut souffrir <strong>de</strong> problèmes <strong>de</strong> stabilité à <strong>temps</strong>long : il faut alors contraindre plus fortement la condition CFL pour que la simulation arrive à terme.De plus, on n’est <strong>pas</strong> en mesure pour le moment d’affirmer (ou d’infirmer) que cette métho<strong>de</strong> est stablesi l’on contraint suffisamment le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>. D’autres résultats numériques sont donnés <strong>dans</strong> lasection 4.Des résultats numériques concernant la métho<strong>de</strong> avec conditions <strong>de</strong> raccord peuvent être trouvés<strong>dans</strong> [9], [10].25


3.2 Métho<strong>de</strong>s explicites à N classesL’efficacité <strong>de</strong>s métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> à 2 classes ne peut que conduire à la recherche <strong>de</strong>métho<strong>de</strong>s implémentables pour N classes <strong>de</strong> cellules, dont la nécessité se révèle lorsque l’on travailleavec <strong>de</strong>s maillages fortement hétérogènes. On comprend aisément qu’<strong>un</strong>e telle métho<strong>de</strong> se doit d’êtrerécursive <strong>de</strong> manière à être utilisable <strong>dans</strong> <strong>un</strong> cadre général. On présente <strong>dans</strong> la suite <strong>de</strong>ux métho<strong>de</strong>srécursives explicites, <strong>un</strong>e basée sur <strong>un</strong> schéma <strong>de</strong> Verlet et l’autre sur <strong>un</strong> schéma <strong>de</strong> type leap-frog.NB : L’approfondissement <strong>de</strong> certaines notions comme les schémas symplectiques pour les systèmesHamiltoniens a été nécessaire pour étudier le schéma <strong>de</strong> type Verlet récursif proposé. Les résultats correspondantsétablis durant ce stage, essentiels mais relativement techniques, ont été regroupés en annexe.3.2.1 Schéma <strong>de</strong> type Verlet récursifOn peut tout d’abord citer <strong>un</strong>e métho<strong>de</strong> proposée par S. Piperno [8] , annoncée comme symplectique,et ainsi supposée conserver <strong>un</strong>e énergie discrète, basée sur <strong>un</strong> schéma symplectique développé pourles problèmes à N-corps. Ce schéma, développé par Hardy [16], est basé sur <strong>un</strong>e intégration <strong>de</strong> typeVerlet, et utilise <strong>un</strong>e décomposition du potentiel en ”tranches” <strong>de</strong> forces d’interactions, induisant alors<strong>un</strong>e décomposition <strong>de</strong> l’Hamiltonien. Lors <strong>de</strong>s intégrations, certaines tranches sont prises en compteplus souvent que d’autres, permettant ainsi d’alléger le nombre d’évaluations du potentiel. Le caractèresymplectique du schéma <strong>de</strong> Verlet est conservé par ces décompositions et la métho<strong>de</strong> <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong><strong>local</strong> obtenue est donc elle aussi symplectique.S. Piperno s’est inspiré <strong>de</strong> ce papier pour proposer <strong>un</strong> schéma à <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> pour les équations<strong>de</strong> Maxwell, lui aussi basé sur le schéma <strong>de</strong> Verlet et utilisant <strong>un</strong>e répartition <strong>de</strong>s cellules en différentesclasses. On répartit les cellules selon leur taille <strong>dans</strong> N classes d’intégration 1, 2, ..., N − 1, N, <strong>de</strong> <strong>pas</strong> <strong>de</strong>∆t ∆t<strong>temps</strong> respectifs , , ..., ∆t2 N−1 2 N−2 2, ∆t. Les plus petites cellules (avec les plus petits <strong>pas</strong> <strong>de</strong> <strong>temps</strong>) sontdonc <strong>dans</strong> la classe 1, les plus grosses <strong>dans</strong> la classe N 2 . Cette structure conduit à <strong>un</strong>e réorganisation<strong>de</strong>s matrices et <strong>de</strong>s vecteurs (comme <strong>dans</strong> la section 3.1). On note alors R N (∆t) le schéma numériqued’intégration <strong>de</strong>s classes 1 : N <strong>de</strong> <strong>pas</strong> ∆t, récursivement défini par :⎧t = t n⎪⎨⎪⎩1. Intégrer les cellules 1...N − 1 avec le schéma R N−1 ( ∆t22. Intégrer les cellules N d’<strong>un</strong> <strong>pas</strong> ∆t avec le schéma <strong>de</strong> Verlet noté V N (∆t) (16)3. Intégrer les cellules 1...N − 1 avec le schéma R N−1 ( )∆t2t = t n+1avec comme convention que l’étape R 0 (∆t) est ignorée. On remarque que toutes les intégrations numériques<strong>de</strong> ce schéma sont faites avec la métho<strong>de</strong> <strong>de</strong> Verlet, appelée récursivement sur les différentes classes avec<strong>de</strong>s <strong>pas</strong> d’intégration successivement divisé par <strong>de</strong>ux. La caractère symplectique <strong>de</strong> ce schéma semblealors basé sur le fait que la composition d’applications symplectiques est symplectique ; le schéma <strong>de</strong>Verlet étant symplectique, il en serait alors <strong>de</strong> même pour tout schéma n’utilisant que <strong>de</strong>s intégrations <strong>de</strong>Verlet.Cependant, on peut remarquer que le schéma ainsi définit est irréalisable. En effet, l’application duschéma <strong>de</strong> Verlet sur <strong>un</strong>e cellule <strong>de</strong> classe n fait intervenir les champs <strong>de</strong>s cellules voisines qui peuventêtre <strong>de</strong> classe différente et donc, si la classe est plus gran<strong>de</strong> que n, intégrées moins souvent, rendant certainschamps indisponibles au <strong>temps</strong> souhaité, par définition même d’<strong>un</strong>e stratégie <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>.Il s’agit exactement du même problème que celui rencontré <strong>dans</strong> la section 3.1, concernant les champs2 En pratique, la détermination du nombre <strong>de</strong> classes et la répartition <strong>de</strong>s cellules se font <strong>de</strong> manière automatique : les cellulesdont le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> est compris entre ∆t min et 2∆t min sont <strong>dans</strong> la classe 1, entre 2∆t min et 4∆t min <strong>dans</strong> la classe 2, entre4∆t min et 8∆t min <strong>dans</strong> la classe 3 et ainsi <strong>de</strong> suite jusqu’à ce que toute les cellules soient <strong>dans</strong> <strong>un</strong>e classe.)26


notés ˜ <strong>dans</strong> (15) que l’on avait approchés par <strong>de</strong>s interpolations. L’auteur remplace alors ces champsinconnus par les <strong>de</strong>rniers champs connus. De ce fait, la métho<strong>de</strong> d’intégration appelée récursivementn’est <strong>pas</strong> exactement la métho<strong>de</strong> <strong>de</strong> Verlet et le schéma global peut ainsi perdre le caractère symplectiqueinitialement annoncé basé sur ce fait (ce qui semble confirmé numériquement) ; la stabilité et/ou lecaractère symplectique <strong>de</strong> ce schéma à N classes reste donc <strong>un</strong> problème ouvert.Remarque 14 La terminologie Verlet récursif sera employée pour désigner ce schéma, bien qu’il s’agissed’<strong>un</strong> abus <strong>de</strong> langage pour les raisons évoquées ci-<strong>de</strong>ssus.Cette stratégie n’en reste <strong>pas</strong> moins très intéressante, à plusieurs points <strong>de</strong> vue. Elle est totalementexplicite, ne nécessite auc<strong>un</strong> stockage supplémentaire, et est, du fait <strong>de</strong> sa nature récursive, très simple àmettre en œuvre quel que soit le nombre <strong>de</strong> classes N. Les résultats obtenus sont <strong>de</strong> plus très satisfaisant :les solutions calculées sont i<strong>de</strong>ntiques à celles obtenues avec <strong>un</strong> schéma classique pour <strong>un</strong> volume <strong>de</strong>calcul significativement réduit.Afin <strong>de</strong> mieux appréhen<strong>de</strong>r la manière dont fonctionne la métho<strong>de</strong>, les figures 11 et 12 montrent lesétapes <strong>de</strong>s schémas obtenus avec <strong>de</strong>ux et trois classes. L’algorithme du cas N = 2 est également donnéci-<strong>de</strong>ssous, les champs notés avec <strong>un</strong>e ∗ représentant les champs dont les <strong>temps</strong> étaient indisponibles etqui ont été remplacés par la <strong>de</strong>rnière valeur connue :⎧M µ 1H n+ 1 41 −H n 1∆t/4= −S T 1 En 1 + A 12E n 2 ,⎪⎨M1εM µ 1M µ 2M2εM µ 2E n+ 1 21 −E n 1∆t/2= S 1 H n+ 1 41 − A 12 H n∗2 ,H n+ 1 21 −H n+ 1 412 ,∆t/4= −S1 T 1 En+ 21 + A 12 E n∗H n+ 1 22 −H n 2∗1 ,∆t/2= −S T 2 En 2 + A 21E n+ 1 2E n+12 −E n 2∆t= S 2 H n+ 1 22 − A 21 H n+ 1 21 ,H n+12 −H n+ 1 22∆t/2= −S2 T En+1 2 + A 21 E n+ 1 ∗21 ,⎪⎩M µ 1M ε 1M µ 1H n+ 431 −H n+ 1 21∆t/4= −S1 T 1 En+ 21 + A 12 E n+1∗E n+11 −E n+ 1 21∆t/2= S 1 H n+ 3 41 − A 12 H n+1∗H n+11 −H n+ 431∆t/42 ,2 ,= −S T 1 En+1 1 + A 12 E n+12 ,27


HEH1 1 2E2n+1t94826274531442242ntFIG. 11 – Etapes du schéma Verlet récursif à 2 classesH 1 E 1 H 221191513973188882014184 4416417E 2884 64852 10282 4 448n212H2E3 311n+1ttFIG. 12 – Etape du schéma Verlet récursif à 3 classesL’évolution <strong>de</strong> l’énergie du système n’a <strong>pas</strong> encore été quantifiée, sauf pour N = 2 où <strong>un</strong>e démonstration<strong>de</strong> stabilité a été faite sous <strong>un</strong>e certaine majoration du <strong>pas</strong> <strong>de</strong> <strong>temps</strong>. Pour N > 2, l’argument invoqué<strong>dans</strong> [8] (caractère symplectique du schéma) n’est a priori <strong>pas</strong> valable. De ce fait, on constate que,numériquement, on rencontre les mêmes problèmes d’instabilité à <strong>temps</strong> long qu’avec le schéma avecinterpolation : <strong>un</strong>e restriction <strong>de</strong> la contrainte CFL sur le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> est nécessaire pour ”stabiliser” leschéma sur les simulations à <strong>temps</strong> long. Bien sûr, plus la contrainte CFL est durcie, moins le schéma à<strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> sera efficace (jusqu’à ne plus l’être si on doit trop diminuer le <strong>pas</strong> <strong>de</strong> <strong>temps</strong>). On peutdéjà remarquer que plus le <strong>temps</strong> <strong>de</strong> simulation sera long, plus il faudra contraindre le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> etplus faible sera le gain offert par les métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> proposées3.2.2 Schéma <strong>de</strong> type leap-frog récursifLe coté pratique et les résultats obtenus avec cette formulation récursive ont conduit à essayer <strong>de</strong>mettre le schéma à <strong>de</strong>ux classes avec interpolation (15) sous la même forme que (16), c’est-à-dire lerendre utilisable pour N classes via <strong>un</strong>e formulation récursive. Cette métho<strong>de</strong> <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> sera28


alors basée sur le schéma <strong>de</strong> leap-frog (et non Verlet) dont on rappelle l’expression :{HM + −H −µ δt= −S T E − ,EM + −E −ε δt= SH + .On note LeapF rogH(δt, n) (resp. LeapF rogE(δt, n)) la première étape (resp. la secon<strong>de</strong> étape)du schéma ci-<strong>de</strong>ssus appliquée aux cellules <strong>de</strong> la classe n avec <strong>un</strong> <strong>pas</strong> δt. Pour aboutir à <strong>un</strong>e formulationrécursive à partir <strong>de</strong> (15), on n’effectue plus les interpolations <strong>de</strong>s champs aux <strong>temps</strong> inconnus (ce quifinalement semble ne rien apporter), et on utilise simplement les champs aux <strong>de</strong>rniers <strong>temps</strong> disponiblescomme <strong>dans</strong> la métho<strong>de</strong> (16). On aboutit alors sur <strong>un</strong> schéma récursif généralisable à N classes <strong>de</strong>cellules, qui s’écrit :⎧On dispose <strong>de</strong>s champs (H n− 1 2 , E n ) sur tout le domaine⎪⎨ 1. avanceH(∆t, N)(17)2. avanceE(∆t, N)⎪⎩Les champs (H n+ 1 2 , E n+1 ) ont été calculés sur tout le domaine,les routines récursives avanceH(∆t, N) et avanceE(∆t, N) étant respectivement définies par :⎧⎧− LeapF rogH (∆t, N)⎪⎨− avanceH ( − LeapF rogE (∆t, N)∆t3 , N − 1)⎪⎨− avanceE ( − avanceE ( ∆t∆t⎪⎩3 , N − 1) et3 , N − 1)− avanceH ( − avanceH ( ∆t∆t3 , N − 1) ⎪⎩3 , N − 1)− avanceE ( ∆t3 , N − 1)avec pour convention avanceH (δt, 1) = LeapF rogH (δt, 1) et avanceE (δt, 1) = LeapF rogE (δt, 1) .Les étapes du schéma obtenu pour <strong>de</strong>ux et trois classes sont visibles sur les figures 8 et 13. On peutremarquer que le schéma <strong>de</strong> type leap-frog récursif étant basé sur l’utilisation récursive du ”leap-frog”(cf remarque 15), il sera 33% plus rapi<strong>de</strong> que la métho<strong>de</strong> <strong>de</strong> type Verlet récursif ; on se rappelle en effetque le schéma <strong>de</strong> Verlet est composé <strong>de</strong> trois étapes alors que le leap-frog n’en comporte que <strong>de</strong>ux.Ici encore, on rencontre les mêmes problèmes d’instabilité à <strong>temps</strong> long et <strong>un</strong>e restriction <strong>de</strong> lacontrainte CFL sur le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> est parfois nécessaire lors <strong>de</strong> simulations à <strong>temps</strong> long. Une étu<strong>de</strong>énergétique du schéma à <strong>de</strong>ux classes est faite <strong>dans</strong> le paragraphe 3.4, suivie d’<strong>un</strong>e métho<strong>de</strong> <strong>de</strong> correctionénergétique.Remarque 15 De même que l’expression ”Verlet récursif” précé<strong>de</strong>mment utilisée, l’expression ”leapfrogrécursif” est abusive, pour <strong>de</strong>s raisons similaires : il ne s’agit <strong>pas</strong> réellement d’<strong>un</strong> leap-frog puisquecertains champs à <strong>de</strong>s <strong>temps</strong> indisponibles sont remplacés par le <strong>de</strong>rnier champs connus.Remarque 16 Un sujet <strong>de</strong> confusion potentiel mérite d’être souligné : si l’on compte le nombre d’étapesdu schéma <strong>de</strong> Verlet à 3 classes (par exemple) et qu’on le compare au nombre d’étapes du leap-frogrécursif à 3 classes, on trouve 21 étapes pour le Verlet et 26 pour le leap-frog, et on peut ainsi être tenté<strong>de</strong> remettre en cause ce qui a été dit concernant le fait que le leap-frog récursif est plus performantque le Verlet récursif. Si le leap-frog récursif effectue 26 étapes, il faut aussi remarquer qu’après ces 26itérations, il sera allé plus loin en <strong>temps</strong> que le Verlet au terme <strong>de</strong> ses 21 étapes.Pour préciser cela, il faut comprendre comment fonctionnent les schémas et leurs différences (on pourras’ai<strong>de</strong>r <strong>de</strong>s figures 12 et 13). Pour le Verlet comme pour le leap-frog, le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> minimal imposépar la CFL, noté ∆t min , est affecté comme <strong>pas</strong> d’intégration <strong>de</strong> la classe <strong>de</strong>s plus petites cellules, notée1. Au terme <strong>de</strong>s 21 itérations, le Verlet récursif à trois classes aura intégré toutes les cellules d’<strong>un</strong> <strong>pas</strong>global ∆t = 4∆t min , alors que le leap-frog les aura intégrées <strong>de</strong> ∆t = 9∆t min . Ceci est dû à lastructure même <strong>de</strong>s schémas <strong>de</strong> base utilisés, le leap-frog imposant, du fait <strong>de</strong> l’alternance temporelle<strong>de</strong>s champs, d’effectuer trois leap-frog sur <strong>un</strong>e classe pour <strong>un</strong> leap-frog sur la classe supérieure, alorsque la coïnci<strong>de</strong>nce <strong>de</strong>s champs du Verlet permet <strong>de</strong> faire <strong>de</strong>ux verlet sur <strong>un</strong>e classe pour <strong>un</strong> verlet sur laclasse supérieure.29


HECellules 3 Cellules 2Cellules 1nnE 2E n 133 H24 En+1/65n+1/23n+1E 31146EE2n+2/621110H n+1/2121321615 17n+4/6181923HE2H n+5/62n+12789202122242526H n+1/61EHE n+2/61HEH n+1/21EHE n+4/61HEH n+5/61EHE n+11FIG. 13 – Etapes du schéma leap-frog récursif à 3 classes3.2.3 ApplicationOn présente les résultats obtenus sur le cône 2D <strong>dans</strong> les même conditions que celles du paragraphe3.1.3, en utilisant les schémas <strong>de</strong> type leap-frog et Verlet récursifs, respectivement à trois et quatreclasses 3 . Les solutions numériques obtenues avec et sans <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> sont i<strong>de</strong>ntiques et le <strong>temps</strong><strong>de</strong> calcul est significativement réduit : celui-ci est divisé par 1.4 avec le Verlet récursif et par 2 avec leleap-frog récursif.200100Schéma classiqueVerlet recursifLeap−frog recursif0−100−2000 1e−08 2e−08 3e−08 4e−08FIG. 14 – Champs E y obtenue sans <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> et avec les schémas <strong>de</strong> type leap-frog et VerletrécursifsIl est intéressant <strong>de</strong> noter que, pour cet exemple, la métho<strong>de</strong> à <strong>de</strong>ux classes avec interpolation et3 Il est normal que, pour <strong>un</strong> même maillage, le nombre <strong>de</strong> classes diffère entre les <strong>de</strong>ux schémas, la définition <strong>de</strong>s classes sefaisant différemment : d’<strong>un</strong>e classe à l’autre, le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> est multiplié par 2 pour le Verlet et par 3 pour le leap-frog.30


le leap-frog récursif sont tous <strong>de</strong>ux plus performants que la métho<strong>de</strong> <strong>de</strong> Verlet à cause du nombred’opérations mises en jeu. Le schéma <strong>de</strong> type leap-frog récursif sera toujours plus performant que leVerlet récursif pour les raisons déjà évoquées. En revanche, lorsque les maillages sont très déstructuréset nécessitent <strong>un</strong> grand nombre <strong>de</strong> classes, la métho<strong>de</strong> à <strong>de</strong>ux classes avec interpolation pourra <strong>de</strong>venirmoins performante que la métho<strong>de</strong> <strong>de</strong> type Verlet récursif (voir par exemple les résultats numériquesdonnés <strong>dans</strong> la section 4).3.3 Métho<strong>de</strong>s implicitesLorsqu’on considère <strong>de</strong>ux classes <strong>de</strong> cellules, on sait que le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> global <strong>de</strong>vra être celui<strong>de</strong>s plus petites cellules. L’idée [8] est alors d’utiliser <strong>un</strong> schéma implicite sur ces petites cellules : lapropriété <strong>de</strong> stabilité inconditionnelle inhérente à ce type <strong>de</strong> schéma autorise alors l’emploi du même <strong>pas</strong><strong>de</strong> <strong>temps</strong> que sur les grosses cellules. On partitionne donc le domaine en cellules explicites (indicées pare) et implicites (indicées par i), et on réordonne les vecteurs et les matrices selon cette partition :E =K =(EeE i), H =(He( )Ke 0, A =0 K iH i), M ε =( Mεe 00 Miε ( )Aee A ei, B =A ie A ii), M µ =( Mµe 0( )Be 0.0 B i0 M µ iEn posant <strong>de</strong> plus S e = K e − A ee − B e et S i = K i − A ii − B i , le système (13) <strong>de</strong>vient :),(e)(i){ Mεe ∂ t E e = S e H e − A ei H i ,{M e µ ∂ t H e = −Se T E e + A ei E i ,Mεi ∂ t E i = S i H i − A ie H e ,M µ i ∂ tH i = −Si T E i + A ie E e .(18)Une métho<strong>de</strong> proposée consiste alors à utiliser <strong>un</strong> schéma implicite du point milieu sur les cellules (i) :⎧⎨ M ε E n+1i −Ein Hi ∆t= S n+1i +Hin i 2− A ie H n+ 1 2e ,⎩M µ H n+1i −Hini ∆t= −SiT E n+1i +Ein2+ A ie E n+ 1 2e ,qui nécessite les valeurs H n+ 1 2e et E n+ 1 2e .On peut utiliser <strong>de</strong>ux schémas d’Euler explicites <strong>de</strong> <strong>pas</strong> ∆t2 surles cellules (e) pour obtenir ces valeurs. On a finalement le schéma numérique suivant :⎧⎪⎨⎪⎩⎧⎨⎩⎧⎪⎨⎪⎩M e µ 1 Hn+ 2e −Hen∆t/2= −Se T Ee n + A ei Ei n,M ε eM ε iM µ iE n+ 1 2e −Een∆t/2= S e H n+ 1 2e − A ei Hi n,−Ein H∆t= S n+1i +Hin i 2− A ie H n+ 1 2E n+1iH n+1i −Hin∆tMe ε En+1 e −E n+ 1 2e= −S T iE n+1i +Eine ,e ,2+ A ie E n+ 1 2∆t/2= S e H n+ 1 2e − A ei H n+1M e µ Hn+1 e −H n+ 1 2ei,∆t/2= −Se T Ee n+1 + A ei E n+1Remarque 17 On peut constater que si les <strong>de</strong>ux domaines sont disjoints (<strong>pas</strong> <strong>de</strong> flux entre eux, i.e :A ie = 0), ce schéma revient à faire <strong>un</strong> schéma <strong>de</strong> Verlet sur les grosses cellules et <strong>un</strong> schéma implicitedu point milieu sur les petites.i.(19)31


Remarque 18 Soit l’EDO :ẋ(t) = f(x, t).Le schéma implicite du point milieu, basée sur la métho<strong>de</strong> d’intégration qui porte le même nom, estdonné par :x n+1 = x n + ∆t f(x n+1 , t2 n+1 )2avec x n+12= xn+x N+12.Remarque 19 Les <strong>de</strong>ux schémas utilisés ne sont <strong>pas</strong> tout à fait <strong>de</strong>s schémas d’Euler : les <strong>temps</strong> utiliséssont les <strong>de</strong>rniers <strong>temps</strong> disponibles, ceci afin d’éviter tout stockage supplémentaire.On a alors la propriété <strong>de</strong> stabilité du schéma suivante :Proposition 20 Le schéma (19) conserve la forme quadratique suivante :⎧⎪⎨ EE n = Ee n + Ein + Ec n e n = (Me ε Ee n |Ee n ) + (M e µ H n+ 1 2 ∣e, avecEi n = (Mi εEn i |En i ) + (M µ i Hn i |Hn i )=⎪⎩E n c = − ∆t24(Mε−1e A ei H n i |A eiH n i ).1 ∣ Hn− 2e )Démonstration. On calcule tout d’abord Ee n+1 . On a :)(Mεe Een+1 ∣∣Een+1 )=(M e ε Een+1∆t∣ 2 M e ε−1 (S e H n+ 1 2e − A ei Hi n+1 ) + E n+ 1 2e(M ε e E n+1e(= ∆t S e H n+ 1 2(= ∆t S e H n+ 1 2∆t∣ 2 M e ε−1 (S e H n+ 1 2e − A ei Hin+1 ) + ∆t)2 M e ε−1 (S e H n+ 1 2e − A ei Hi n ) + EenHi n + H n+1)ie − A ei 2 ∣ En+1 e + ( Me ε Een+1 , Een )Hi n + H n+1)(ie − A ei 2 ∣ En+1 e + (Me ε Ee n , Ee n ) + ∆t S e H n+ 1 H2i n + H n+1ie − A ei∣2Hi n + H n+1)ie − A ei 2 ∣ En e + Een+1 .(= (Me ε Ee n | Ee n ) + ∆t S e H n+ 1 2∣ En e)Des calculs similaires donnent :()M e µ H n+ 3 2 ∣e e =∣ Hn+ 1 2(M e µ H n+ 1 2 ∣e e(+∆t A ie H n+ 1 2e∣ Hn− 1 2))∣ En i + Ein+1(− ∆tS e H n+ 1 2e)∣ En e + Een+1 .On a donc :E n+1e(= Ee n + ∆t A ie H n+ 1 2e∣ En i + Ein+1)− ∆t(A eiH n i + H n+1i2De même, pour le calcul <strong>de</strong> l’énergie implicite :(Mεi Ein+1)∣ En+1i =(M i ε Ein+1Hε−1 i n + Hin+1∣∆t Mi (S i2= (Mi ε Ei n |Ei n Hi ) + ∆t(S n + Hin+1i232)∣ En e + Een+1 .− A ie H n+ 1 2e ) + Ein∣− A ie H n+ 1 2e))∣ En i + Ein+1 ,


et :(Mµi Hn+1 i)∣ Hn+1i = (Mµi Hn i | Hi n )(+∆t A ie E n+ 1 2e)∣ Hn i + Hin+1 − ∆t(S iH n i + H n+1i2∣ En i + Ein+1),d’où :()Ei n+1 = Ei n + ∆t A ie E n+ 1 2e ∣ Hn i + Hin+1(− ∆tA ie H n+ 1 2e∣ En i + Ein+1).L’évolution <strong>de</strong>s <strong>de</strong>ux énergies est donc donnée par :Ee n+1 + Ei n+1 = Ee n + Ei n Hi − ∆t(A n + H n+1)iei 2 ∣ En e − 2E n+ 1 2e + Een+1 .Or, en additionnant la secon<strong>de</strong> et la 5 ième équation <strong>de</strong> (19), on obtient :d’où :Ee n − 2E n+ 1 2e + Een+1 = ∆t2 M (e ε−1 A ei Hni + Hin+1 ),Ee n+1 + Ei n+1 = Ee n + Ei n + ∆t24(M ε−1= E n e + E n i − E n+1c + E n c ,e Hin+1∣ A ei H n+1i)− ∆t24()Meε−1 Hin ∣ A ei Hince qui termine la preuve.La stabilité du schéma proposé est ainsi assurée. Cette métho<strong>de</strong> combinant l’implicite et l’expliciteest donc mathématiquement très intéressante. Toutefois, l’utilisation d’<strong>un</strong> schéma implicite nécessite <strong>un</strong>einversion <strong>de</strong> matrice qui peut s’avérer très lour<strong>de</strong> voire rédhibitoire sur <strong>un</strong> problème à trois dimensions.L’utilisation <strong>de</strong> métho<strong>de</strong>s d’inversion itératives peut éventuellement être envisagée pour <strong>un</strong> faible nombre<strong>de</strong> cellules, mais le coût que cela peut représenter, associé aux problèmes <strong>de</strong> convergence <strong>de</strong>s métho<strong>de</strong>sitératives, risquent <strong>de</strong> fortement diminuer l’intérêt <strong>de</strong> l’utilisation du <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>.3.4 <strong>Etu<strong>de</strong></strong> et correction énergétiques du leap-frog récursif à <strong>de</strong>ux classesUne étu<strong>de</strong> énergétique du leap-frog récursif à <strong>de</strong>ux classes est faite <strong>dans</strong> cette partie. Comme onva le voir, il est difficile d’établir <strong>de</strong>s résultats quant au caractère dissipatif (et donc stable) du schéma.On propose alors <strong>un</strong> moyen <strong>de</strong> forcer <strong>un</strong>e énergie à rester dissipative lorsque cela est nécessaire eneffectuant <strong>un</strong>e correction <strong>de</strong> certains champs. Les calculs énergétiques étant assez lourds, ils ne seront<strong>pas</strong> complètement détaillés.33


3.4.1 Expression <strong>de</strong>s énergiesLe schéma du type leap-frog récursif à <strong>de</strong>ux classes est donné par :⎧⎪⎨M µ 2M µ 1M ε 1M µ 1M ε 2H n+ 1 22 −H n− 1 22∆t= −S T 2 En 2 + A 21E n 1 ,H n+ 1 61 −H n− 1 61∆t/3= −S T 1 En 1 + A 12E n 2 ,E n+ 2 61 −E n 1∆t/3= S 1 H n+ 1 61 − A 12 H n+ 1 22 ,H n+ 1 21 −H n+ 1 61∆t/3= −S1 T 2 En+ 61 + A 12 E2 n,E n+12 −E n 2∆t= S 2 H n+ 1 22 − A 21 H n+ 1 21 ,M1ε E n+ 4 61 −E n+ 2 61∆t/3= S 1 H n+ 1 21 − A 12 H n+ 1 22 ,⎪⎩M µ 1M ε 1H n+ 5 61 −H n− 1 21∆t/3= −S1 T 4 En+ 61 + A 12 E n+1E n+11 −E n+ 4 61∆t/3= S 1 H n+ 5 61 − A 12 H n+ 1 22 .2 ,dont on rappelle les étapes schématiquement sur la figure 15 :EE 2Cellules 2 Cellules 1nn2H n+1/22n+121346578EHEHE1n+1/61n+2/61n+1/21n+4/61H n+5/61En+11FIG. 15 – Etapes du schéma leap-frog récursif à 2 classesComme évoqué précé<strong>de</strong>mment, il n’est <strong>pas</strong> possible <strong>de</strong> déduire facilement les propriétés <strong>de</strong> stabilité<strong>de</strong>s schémas récursifs. On va pour y parvenir expliciter les énergies mises en jeu au cours <strong>de</strong>sdifférentes étapes et exhiber les termes énergétiques parasites qui apparaissent du fait <strong>de</strong> l’utilisationd’<strong>un</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>. L’énergie E que l’on considère est celle utilisée pour le schéma <strong>de</strong> leap-frog (cfparagraphe 2.2.4), que l’on exprime comme étant la somme <strong>de</strong>s énergies successives <strong>de</strong>s petites celluleset <strong>de</strong> l’énergie <strong>de</strong>s grosse cellules, respectivement notées E 1 et E 2 .34


On s’intéresse tout d’abord à la classe <strong>de</strong> petites cellules. On a :() ()E n+ 2 61 = M1 ε E n+ 2 62 1 ∣ En+ 61 + M µ 1 1 Hn+ 21 1 ∣ Hn+ 61()= M1 ε E1n 2 ∣ En+ 61 − 2∆t () (S 12 H n+ 1 22 26∣ En+ 61 + M µ 1 1 Hn+ 6 ∣1 1= (M1 ε E1 n |E1 n ) − 2∆t ()S 12 H n+ 1 22 26∣ En+ 61 − 2∆t ()S 12 H n+ 1 22 |E1n 6()+ M µ 1 1 Hn+ 61 1 ∣ Hn− 61 + 2∆t ()S 12 E2n 16 ∣ Hn+ 61 + 2∆t (S 12 E2n ∣6= E1 n − 2∆t ()S 12 H n+ 1 226∣ En 1 + E n+ 2 61 + 2∆t ()S 21 H n+ 1 616∣ 2En 2 .Des calculs similaires donnent :(E n+ 4 61 = M1E ε n+ 4 6 ∣1 1= E n+ 2 61 − 2∆t6∣ En+ 4 6() (+S 12 H n+ 1 22M µ 1 Hn+ 5 21∣∣ En+ 2 6∣1 ∣ Hn+ 211 + E n+ 4 61))+ 2∆t (6∣ Hn+ 1 6S 21 H n+ 1 21)+ 2∆t (S 12 E2n 61∣ Hn+ 61)∣ En 2 + E2n+1).∣(21)1 ∣ Hn+ 61)(20)et enfin :1 = ( (M1 ε E1n+1∣ E1n+1 )+= E n+ 4 61 − 2∆t (S 12 H n+ 1 226E n+1M µ 1 Hn+ 7 61∣∣ En+1∣5 ∣ Hn+ 611 + E n+ 4 61))+ 2∆t (6S 21 H n+ 5 61∣∣ 2En+1 2Sur les cellules <strong>de</strong> la classe 2, on peut écrire :E2 n+1 = ( ()M2E ε 2n+1∣ E2n+1 )+ M µ 1 2 Hn+ 21 2 ∣ Hn− 22() ()= E2 n − ∆t S 21 H n+ 1 21 ∣ En 2 + E2n+1 + ∆t S 12 H n+ 1 22 ∣ En 1 + E1n+1 .).(22)(23)En utilisant (20), (21), (22) et (23), on a donc l’expression <strong>de</strong> l’énergie totale :E n+1 = E1 n+1 + E2n+1= E1 n + E2 n − 2∆t6(− 2∆t6− 2∆t (6(−∆tS 12 H n+ 1 22S 12 H n+ 1 22S 21 H n+ 1 21()S 12 H n+ 1 22 ∣ En+1 1 + E n+ 4 61 + 2∆t (S 21 H n+ 5 6 ∣1 26)2 ∣ En+ 61 + E n+ 4 61 + 2∆t ()S 21 H n+ 1 216∣ En 2 + E2n+1)∣ En 1 + E n+ 2 61 + 2∆t ()S 21 H n+ 1 616∣ 2En 2) ()∣ En 2 + E2n+1 + ∆t S 12 H n+ 1 22 ∣ En 1 + E1n+1∣ 2En+1)qui <strong>de</strong>vient, après simplifications :E n+1 = E n + 2∆t (3(S 12 E2n+ 2∆t3S 12 H n+ 1 22∣∣)∣ En 1 − E n+ 2 61 − E n+ 4 61 + E1n+1)1 − H n+ 1 21 + 2∆t (S 12 E2n+153∣ Hn+ 61 − H n+ 1 21∣ Hn+ 1 6).(24)35


On voit clairement sur l’expression (24) les termes <strong>de</strong> flux parasites qui ne s’annulent <strong>pas</strong> entre cellules<strong>de</strong> classe différente. Dans le cas d’<strong>un</strong>e métho<strong>de</strong> sans <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>, ces termes n’apparaissent<strong>pas</strong> et l’énergie est conservée. Si ces termes <strong>de</strong> flux étaient dissipatifs, sous d’éventuelles majorations du<strong>pas</strong> <strong>de</strong> <strong>temps</strong>, le schéma serait stable, car on aurait alors <strong>un</strong>e énergie dissipative. Il n’a <strong>pas</strong> été pour lemoment possible d’établir <strong>un</strong>e telle propriété. Ces flux sont donc susceptibles <strong>de</strong> faire accroître l’énergieet <strong>de</strong> faire exploser le schéma numérique à long terme. Une idée envisageable serait alors d’introduire<strong>de</strong>s facteurs correctifs <strong>dans</strong> le schéma afin d’annuler ces termes 4 .3.4.2 Correction énergétiquePour forcer le schéma à être dissipatif, on peut envisager l’introduction <strong>de</strong> facteurs correctifs sur leschamps. Cependant, on ne peut les introduire <strong>de</strong> n’importe quelle manière. Pour <strong>de</strong>s raisons évi<strong>de</strong>ntesd’efficacité <strong>de</strong> la métho<strong>de</strong>, on ne peut se permettre <strong>de</strong> corriger tous les champs intermédiaires <strong>de</strong>s petitescellules ; on cherche donc plutôt à corriger <strong>un</strong>iquement les champs sur les grosses cellules, soit <strong>un</strong>ecorrection pour E2 n+1 et <strong>un</strong>e pour H n+ 1 22 . Mais <strong>un</strong>e autre raison, plus subtile, a guidé notre choix. Eneffet, il ne sera raisonnablement possible <strong>de</strong> corriger les champs qu’après avoir effectué toutes les étapesdu schéma, car sinon les calculs énergétiques effectuée <strong>dans</strong> le précé<strong>de</strong>nt paragraphe, sur lesquels serontbasés les calculs <strong>de</strong>s corrections, ne seraient plus valables puisque les champs sont modifiés par cettemême correction ; on aurait alors à déterminer <strong>de</strong>s facteurs par <strong>un</strong> problème implicite.Le meilleur moyen semble donc d’effectuer les huit étapes du schéma normalement (ainsi les résultatsétablis <strong>dans</strong> le paragraphe précé<strong>de</strong>nt sont utilisables) et, <strong>un</strong>e fois que tous les champs sont calculés,d’apporter <strong>un</strong>e correction sur les champs calculés sur les grosses cellules <strong>de</strong> manière à annuler les termes<strong>de</strong> flux <strong>dans</strong> (24). Au final, les champs sur les grosses cellules auront été calculés par les expressionssuivantes 5 :⎧⎨M µ H n+ 1 22 −H n− 1 222 ∆t= −S2 T En 2 + A 21E1 n + α,(25)⎩M2ε E n+12 −E2n∆t= S 2 H n+ 1 22 − A 21 H n+ 1 21 + β,avec α, β vecteurs <strong>de</strong> correction <strong>de</strong> taille le nombre d’inconnues <strong>de</strong>s cellules <strong>de</strong> la classe 2. On refaitalors le calcul <strong>de</strong> l’énergie <strong>de</strong>s grosses cellules <strong>de</strong> la même manière que (23), et on obtient :(2 = E2 n − ∆t S 21 H n+ 1 21( ∣ )E n+1+2∆tα ∣1 ∣ Hn+ 22)∣ En 2 + E2n+1(+ ∆t+ ∆t ( β ∣ ∣E 2 n + E2n+1 ).S 12 H n+ 1 22)∣ En 1 + E1n+1L’énergie totale du schéma (24) <strong>de</strong>vient alors, tous calculs faits :E n+1 = E n + 2∆t ()H n+ 1 223 ∣ S 21(E1 n − E n+ 2 61 − E n+ 4 61 + E1 n+1 ) + α+ 2∆t (E2n 3 ∣ S 21(H n+ 1 61 − H n+ 1 21 ) + 3 )2 β + 2∆t (E2n+13 ∣ S 21(H n+ 5 61 − H n+ 1 21 ) + 3 )2 β .On peut constater que le paramètre α peut servir à annuler toute la première partie <strong>de</strong>s flux parasites ;il suffit pour cela que :α = − 1 3 S 21(E n 1 − E n+ 2 61 − E n+ 4 61 + E n+11 ). (26)4 Bien sûr, rien ne dit que ce schéma n’est <strong>pas</strong> lui aussi, <strong>de</strong> la même manière que le Verlet récursif à <strong>de</strong>ux classes, stable souscondition sur le <strong>pas</strong> <strong>de</strong> <strong>temps</strong>. Il n’a <strong>pas</strong> été possible d’aboutir à <strong>un</strong>e telle conclusion pour le moment.5 En gardant à l’esprit qu’en pratique, la phase <strong>de</strong> correction se fera à la fin.36


En revanche, le même raisonnement ne peut s’appliquer sur β, celui-ci étant présent <strong>dans</strong> les <strong>de</strong>uxautres flux et ne pouvant les annuler en même <strong>temps</strong> ; on ne peut donc <strong>pas</strong> lui attribuer <strong>un</strong>e valeurdépendant <strong>de</strong>s champs <strong>de</strong> manière évi<strong>de</strong>nte comme ce fut le cas pour α. On peut cependant le cherchertel que la somme <strong>de</strong>s flux restant soit nulle, c’est-à-dire tel que :2∆t3(E n 2∣ S 21(H n+ 1 61 − H n+ 1 21 ) + 3 )2 β+ 2∆t3(E n+12∣ S 21(H n+ 5 61 − H n+ 1 21 ) + 3 )2 β = 0,soit encore, en regroupant les termes en β et en posant a = E2 n + En+1 2 et b = (E2 n| S 21(H n+ 1 6H n+ 1 21 )) + (E2n+1∣ S21 (H n+ 5 61 − H n+ 1 21 )), chercher β tel que :( ∣ 3 ∣∣∣a)2 β + b = 0.1 −Le problème <strong>de</strong> la détermination <strong>de</strong> β est donc largement surdéterminé. On peut donc chercher la correctionβ qui minimise l’écart entre les champs E2 n+1 avant et après correction, afin <strong>de</strong> conserver <strong>un</strong>esolution numérique la plus fidèle possible. En pratique, on corrigera le champ E2 n+1 en ajoutant M2 ε−1 β(d’après la définition <strong>de</strong> β <strong>dans</strong> (25)). On définit ainsi le problème d’optimisation :Trouver β solution du problème :⎧ ∥ ⎨ ∥∥Mminε −12 β∥ 2β⎩s.c : ( 32 β∣ ∣ a ) + b 0Remarque 21 Plutôt que considérer la contrainte ( 32 β∣ ) (∣ a + b = 0, on choisit 32 β∣ )∣ a + b 0 quitraduit le fait que la correction doit annuler les flux restants ou les rendre dissipatifs, ce qui est suffisant∥pour stabiliser le schéma. La fonction coût ∥M2 ε−1 β∥ 2 traduit quant à elle l’écart entre les champsavant et après correction. Ce problème admet <strong>un</strong>e <strong>un</strong>ique solution, la contrainte étant linéaire et lecritère quadratique.On définit le Lagrangien du problème :(L(β, µ) = M ε−1∣ M ε−12 β2 β) (( ∣ ) )3 ∣∣∣+ µ2 β a + b ,µ ∈ R étant le paramètre KKT associé à la contrainte. Les conditions d’optimalité du 1 er ordre donnentle système d’équations :⎧⎪⎨⎪⎩∂ β L = 0( 32 β∣ ∣ a)+ b 0µ (( 32 β∣ ∣ a ) + b ) = 0⎧⎪⎨⇐⇒⎪⎩2M ε−22 β + µa = 0 (1)( 32 β∣ ∣ a)+ b 0 (2)µ (( 32 β∣ ∣ a ) + b ) = 0 (3)– Si b 0 (i.e : les flux sont dissipatifs) : alors la contrainte est relaxée pour la solution globaleβ = 0 ; <strong>pas</strong> <strong>de</strong> correction. C’est <strong>un</strong> résultat logique puisque si les flux sont dissipatifs il n’y a <strong>pas</strong><strong>de</strong> correction à faire.– Si b > 0 : Alors la contrainte est saturée, car si µ = 0, alors β = 0 par (1) et la contrainte (2) n’estplus vérifiée. On a donc µ ≠ 0 (et donc ( 32 β∣ )∣ a + b = 0). En multipliant à gauche (1) par Mε 22 eten multipliant scalairement par a, on obtient :( ∣ )2 (β| a) + 3 ∣∣2 µ M2 ε2aa = 0( ∣ )⇐⇒ − 4 3 b + 3 ∣∣2 µ M2 ε2aa = 08⇒ µ =9( M2 εa|M 2 εa)b⇒ β = − 2 b3 ( M2 εa|M 2 εa)Mε22 a.37(27)


On a donc l’expression du correcteur M ε−12 β optimal :2 β = − 2 b3 (M2 εa| M 2 εa)Mε 2 a.M ε−1On peut finalement écrire le schéma à <strong>de</strong>ux classes avec correction énergétique :⎧M µ 2M µ 1M ε 1H n+ 1 22 −H n− 1 22∆t= −S T 2 En 2 + A 21E n 1 ,H n+ 1 61 −H n− 1 61∆t/3= −S T 1 En 1 + A 12E n 2 ,E n+ 2 61 −E n 1∆t/3= S 1 H n+ 1 61 − A 12 H n+ 1 22 ,⎪⎨M µ 1M ε 2M ε 1H n+ 1 21 −H n+ 1 61∆t/3= −S1 T 2 En+ 61 + A 12 E2 n,E n+12 −E n 2∆t= S 2 H n+ 1 22 − A 21 H n+ 1 21 ,E n+ 4 61 −E n+ 2 61∆t/3= S 1 H n+ 1 21 − A 12 H n+ 1 22 ,avec :⎪⎩M µ 1H n+ 5 61 −H n− 1 21M1ε E n+11 −E n+ 4 61(a = E2 n + E2 n+1 , b = E2n∆t/3= −S1 T 4 En+ 61 + A 12 E n+1∆t/3= S 1 H n+ 5 61 − A 12 H n+ 1 2H n+ 1 22 = H n+ 1 22 + M µ−12 α,E2 n+1 = E2 n+1 + M2 ε−1 β.∣ S 21(H n+ 1 61 − H n+ 1 2)1 )(+2 ,2 ,E n+12M µ−12 α = − 1 3 M µ−12 S 21 (E1 n − E n+ 2 61 − E n+ 4 61 + E1 n+1 ) et M2 ε−1 β = − 2 3∣ S 21(H n+ 5 61 − H n+ 1 2)1 )(28)b(M2 εa |M 2 ε 2a.a)MεCe schéma n’a <strong>pas</strong> encore été implémenté. Techniquement, la correction <strong>de</strong>vra être faite lorsque lesflux parasites seront positifs (non dissipatifs) ou supérieurs à <strong>un</strong> nombre positif. Bien sûr, ces correctionsont <strong>un</strong> coût : l’évaluation <strong>de</strong>s corrections M µ−12 α et M2 ε−1 β correspondants aux expressions (28).Cependant, cela reste raisonnable et beaucoup moins couteux que la résolution <strong>de</strong> systèmes linéaires.Si les résultats sont probants, il peut être envisagé d’étendre ce procédé aux schémas récursifs : ilfaudra pour cela que la répartition <strong>de</strong>s classes soit faite <strong>de</strong> manière à ce qu’il n’y ai <strong>pas</strong> <strong>de</strong> saut <strong>de</strong> classeentre cellules voisines. Autrement dit, chaque cellule ne <strong>de</strong>vra avoir que <strong>de</strong>s voisins appartenant à <strong>de</strong>sclasses immédiatement supérieures ou inférieures. Ainsi, pour chaque cellule on pourra se ramener aucas élémentaire N = 2 et appliquer ce type <strong>de</strong> correction.38


4 Résultats numériques - ConfrontationOn présente <strong>dans</strong> cette section plusieurs résultats numériques obtenus avec les métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong><strong>temps</strong> <strong>local</strong> à <strong>de</strong>ux classes avec interpolation et récursives à N classes. On donne pour chaque simulationla définition <strong>de</strong> la géométrie et les solutions obtenues par les différents schémas. On compare ensuite <strong>dans</strong><strong>un</strong> tableau les gains en <strong>temps</strong> CPU que l’on obtient par rapport au schéma <strong>de</strong> leap-frog sans <strong>pas</strong> <strong>de</strong> <strong>temps</strong><strong>local</strong> et enfin la répartition du nombre <strong>de</strong> cellules <strong>dans</strong> les différentes classes pour chaque métho<strong>de</strong>.Les schémas développés ont initialement été testés sur <strong>un</strong> cas test <strong>de</strong> cône plat. On les a ensuite misen œuvre sur <strong>de</strong>s objets <strong>de</strong> plus en plus complexes, dont les maillages sont <strong>de</strong> plus en plus déstructurésafin <strong>de</strong> mettre en évi<strong>de</strong>nce l’apport <strong>de</strong>s stratégies multi-classses. Il est important <strong>de</strong> préciser que pourtoutes les métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> utilisées <strong>dans</strong> ces simulations, la contrainte CFL sur le <strong>pas</strong> <strong>de</strong><strong>temps</strong> à été multipliée par <strong>un</strong> facteur 0.8 afin <strong>de</strong> permettre les simulations sur <strong>de</strong>s <strong>temps</strong> suffisammentlongs.On peut noter d’<strong>un</strong>e part que, conformément à <strong>un</strong>e remarque précé<strong>de</strong>nte, le schéma <strong>de</strong> type leapfrogrécursif est toujours plus performant que le Verlet récursif, d’autre part qu’avec <strong>de</strong>s maillages peudéstructurés, le schéma à <strong>de</strong>ux classes avec interpolation est plus performant que le Verlet récursif. Enrevanche, plus les maillages sont déstructurés, plus le besoin d’<strong>un</strong> nombre <strong>de</strong> classes élevé se fait sentir,et l’écart entre les métho<strong>de</strong>s récursives et la métho<strong>de</strong> à <strong>de</strong>ux classe avec interpolation se creuse, et l’onobtient <strong>de</strong>s gains <strong>de</strong> <strong>temps</strong> plus que conséquents 6 . Pour la <strong>de</strong>rnière simulation par exemple, il est important<strong>de</strong> souligner le fait que la durée d’<strong>un</strong>e simulation ”typique” sans <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> est <strong>de</strong> <strong>de</strong>ux joursminimum sur <strong>un</strong> ordinateur <strong>de</strong> bureau. Avec les métho<strong>de</strong>s présentées, ce <strong>temps</strong> <strong>de</strong> calcul tombe à moins<strong>de</strong> quatre heures ; <strong>de</strong>s simulations dont le <strong>temps</strong> CPU était rédhibitoire (ou du moins très contraignant)<strong>de</strong>viennent ainsi réalisables avec l’utilisation du <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>.Concernant les solutions numériques obtenues, on note qu’il y a coïnci<strong>de</strong>nce <strong>de</strong>s différentes courbespour toutes les simulations, ce qui confirme la pertinence <strong>de</strong>s schémas.6 Il est important <strong>de</strong> noter que les gains <strong>de</strong> <strong>temps</strong> <strong>de</strong> calcul dépen<strong>de</strong>nt du maillage utilisé. Il peut être nul si le maillage estparfaitement homogène (<strong>pas</strong> <strong>de</strong> classe <strong>de</strong> cellules) comme très important si le maillage est fortement déstructuré. On peut ainsiobtenir <strong>de</strong>s gains encore plus grands que 14 (plus gros gain obtenu au cours <strong>de</strong> cette étu<strong>de</strong>).39


Diffraction d’<strong>un</strong>e on<strong>de</strong> plane par <strong>un</strong> cône métalliqueOn s’intéresse à la diffraction d’<strong>un</strong>e on<strong>de</strong> plane <strong>de</strong> fréquence 300 MHz, <strong>de</strong> direction <strong>de</strong> propagation−→ x et d’amplitu<strong>de</strong> 377 en Ey , par <strong>un</strong> cône plat et l’on observe le champ E y diffracté en <strong>un</strong> point A.Comme le montre le tableau 1, le maillage est légèrement déstructuré et le nombre <strong>de</strong> classes est faible 7 ,et par conséquent la métho<strong>de</strong> à base d’interpolation est plus rapi<strong>de</strong> que la métho<strong>de</strong> <strong>de</strong> type Verlet récursif.200AZ100Schema classiqueVerlet recursifLeap−frog recursifAvec interpolationXYEy (V/m)0−100−200−3000 1e−08 2e−08 3e−08<strong>temps</strong> t (s)(a) Maillage du cône(b) Champs EyFIG. 16 – Maillage et solutions obtenuesSchéma\Classe 1 2 3 4schéma avec interpolation 1900 6200 X Xleap-frog récursif (N = 3) 1900 6000 200 XVerlet récursif (N = 4) 300 3200 4000 600TAB. 1 – répartition <strong>de</strong>s cellules <strong>dans</strong> les classesSchéma Schéma classique Interpolation Verlet récursif N = 4 leap-frog récursif (N = 3)Gain 1 1.5 1.4 2TAB. 2 – Gain en <strong>temps</strong> CPU par rapport au schéma classique (leap-frog)7 On rappelle que le schéma à base d’interpolation est <strong>un</strong> schéma à <strong>de</strong>ux classes.40


Diffraction d’<strong>un</strong>e on<strong>de</strong> plane par <strong>un</strong> avion métalliqueOn simule ici le champ diffracté par <strong>un</strong> avion parfaitement métallique agressé par <strong>un</strong>e on<strong>de</strong> plane<strong>de</strong> fréquence 300 MHz, <strong>de</strong> direction <strong>de</strong> propagation −→ x et d’amplitu<strong>de</strong> 377 en E y . On remarque, outrele grand nombre <strong>de</strong> cellules composant le maillage, <strong>un</strong> faible pourcentage <strong>de</strong> ”petites” cellules et <strong>un</strong>plus grand nombre <strong>de</strong> classes que <strong>dans</strong> la simulation précé<strong>de</strong>nte. Ceci explique l’efficacité <strong>de</strong>s métho<strong>de</strong>smulti-classes en comparaison avec le schéma à <strong>de</strong>ux classes avec interpolation, ainsi que le gain en <strong>temps</strong>CPU important.YXZ50Schema classiqueVerlet recursifLeap−frog recursifAvec interpolationEy (V/m)0−50−1000 2e−08 4e−08<strong>temps</strong> (s)(a) Maillage <strong>de</strong> l’avion(b) Champs EyFIG. 17 – Maillage et solutions obtenuesSchéma\Classe 1 2 3 4 5 6 7schéma avec interpolation 1000 179000 X X X X Xleap-frog récursif (N = 4) 1000 16600 110400 42200 8900 X XVerlet récursif (N = 5) 300 2300 10800 56200 67700 34000 8700TAB. 3 – répartition <strong>de</strong>s cellules <strong>dans</strong> les classesSchéma Schéma classique Interpolation Verlet récursif N = 7 leap-frog récursif N = 5Gain 1 2.5 4.5 5.5TAB. 4 – Gain en <strong>temps</strong> CPU par rapport au schéma classique (leap-frog)41


Diffraction d’<strong>un</strong>e on<strong>de</strong> plane par la navette HermèsOn s’intéresse <strong>dans</strong> cette simulation à la diffraction d’<strong>un</strong>e on<strong>de</strong> plane <strong>de</strong> fréquence 300 MHz, <strong>de</strong>direction <strong>de</strong> propagation −→ x et d’amplitu<strong>de</strong> 377 en E y par la navette spatiale Hermès. Ici encore, le faitque le maillage soit très hétérogène rend les métho<strong>de</strong>s récursives très efficaces.2XZY1Schema classiqueVerlet recursifLeap−frog recursifAvec interpolationEy (V/m)0−1−20 2e−08 4e−08 6e−08 8e−08 1e−07<strong>temps</strong> (s)(a) Maillage <strong>de</strong> la navette(b) Champs EyFIG. 18 – Maillage et solutions obtenuesSchéma\Classe 1 2 3 4 5 6schéma avec interpolation 200 105200 X X X Xleap-frog récursif (N = 4) 100 6600 91000 7700 X XVerlet récursif (N = 6) 70 500 4000 38100 57300 5500TAB. 5 – répartition <strong>de</strong>s cellules <strong>dans</strong> les classesSchéma Schéma classique Interpolation Verlet récursif N = 4 leap-frog récursif N = 6Gain 1 3, 6 4 6TAB. 6 – Gain en <strong>temps</strong> CPU par rapport au schéma classique (leap-frog)42


Diffraction d’<strong>un</strong>e on<strong>de</strong> plane par <strong>un</strong>e structure <strong>de</strong> missile génériqueLe but <strong>de</strong> cette <strong>de</strong>rnière simulation est d’étudier le comportement d’<strong>un</strong>e structure <strong>de</strong> missile génériquelorsqu’elle est soumise à <strong>un</strong>e on<strong>de</strong> plane <strong>de</strong> fréquence 4 GHz, <strong>de</strong> direction <strong>de</strong> propagation − −→ x et d’amplitu<strong>de</strong>377 en E z . Le maillage présente <strong>un</strong>e forte déstructuration comme en témoigne le tableau 7, avec<strong>un</strong> très faible pourcentage <strong>de</strong> cellules 1 ; cela explique le très fort gain que l’on obtient avec les métho<strong>de</strong>smulti-classe qui sont parfaitement adaptées à ce genre <strong>de</strong> maillage.Schema classiqueVerlet recursifLeap−frog recursifAvec interpolationEz (V/m)15YZX−450 5e−09<strong>temps</strong> (s)(a) Maillage du satellite(b) Champs EzFIG. 19 – Maillage et solutions obtenuesSchéma\Classe 1 2 3 4 5 6 7 8 9 10schéma avec interpolation 12 91000 X X X X X X X Xleap-frog récursif (N = 6) 10 200 1400 14300 71600 3500 X X X XVerlet récursif (N = 10) 8 16 160 550 1500 5800 46000 33500 3300 200TAB. 7 – répartition <strong>de</strong>s cellules <strong>dans</strong> les classesSchéma Schéma classique Interpolation Verlet récursif N = 10 leap-frog récursif N = 6Gain 1 2.7 11 15TAB. 8 – Gain en <strong>temps</strong> CPU par rapport au schéma classique (leap-frog)43


Courbes énergétiques <strong>de</strong>s schémas <strong>de</strong> type Verlet et leap-frog récursif à <strong>de</strong>ux classeA défaut <strong>de</strong> pouvoir quantifier les évolutions énergétiques mathématiquement, on donne <strong>un</strong>e courbeexpérimentale représentant l’évolution <strong>de</strong> l’énergie E n = (M ε E n |E n ) + (M µ H n+ 1 ∣2 ∣H n− 1 2 ) obtenue<strong>dans</strong> <strong>un</strong>e cavité métallique, sur <strong>un</strong> <strong>temps</strong> <strong>de</strong> simulation très long (plusieurs semaines <strong>de</strong> calcul). Onconstate que l’énergie est quasiment conservée <strong>dans</strong> les <strong>de</strong>ux cas, et l’évolution énergétique au cours du<strong>temps</strong> est faible. Avec le schéma <strong>de</strong> type Verlet récursif à <strong>de</strong>ux classes 8 , l’amplitu<strong>de</strong> <strong>de</strong>s oscillations estplus petite et l’évolution plus lente qu’avec le leap-frog récursif. Il serait cependant dangereux <strong>de</strong> tirer <strong>un</strong>equelconque conclusion <strong>de</strong> ce résultat : toutes les simulations que l’on a pu faire avec ces <strong>de</strong>ux schémasont présentées les même comportements, tant concernant les défauts <strong>de</strong> stabilité que la restriction <strong>de</strong> lacondition CFL pour éviter l’explosion sur le <strong>temps</strong> <strong>de</strong> simulation considéré.FIG. 20 – Energies <strong>de</strong>s leap-frog et Verlet récursifs à <strong>de</strong>ux classe8 dont il a été montré qu’il est stable sous condition sur le <strong>pas</strong> <strong>de</strong> <strong>temps</strong>44


5 Conclusion et perspectivesLorsqu’on manipule <strong>de</strong>s maillages <strong>de</strong> structures complexes, le nombre <strong>de</strong> cellules et la gran<strong>de</strong> disparitéentre les <strong>pas</strong> <strong>de</strong> <strong>temps</strong> propres à celles-ci peuvent rapi<strong>de</strong>ment conduire à <strong>de</strong>s <strong>temps</strong> <strong>de</strong> simulationsrédhibitoires. La nécessité <strong>de</strong>s métho<strong>de</strong>s à <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> se fait alors ressentir.Les solutions numériques obtenues avec les métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> étudiées <strong>dans</strong> ce mémoiresont semblables à celles que l’on obtient sans <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>, avec <strong>un</strong> gain en <strong>temps</strong> <strong>de</strong> calcul pouvantêtre très important : on a vu <strong>un</strong> cas où la métho<strong>de</strong> avec <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> peut être plus <strong>de</strong> quinze foisplus rapi<strong>de</strong> qu’<strong>un</strong> leap-frog classique. Cependant, l’étu<strong>de</strong> énergétique induite par ces stratégies est <strong>un</strong>problème difficile qui fait <strong>de</strong> la stabilité à long terme <strong>de</strong> ces schémas <strong>un</strong>e question ouverte qu’il estimportant d’étudier. La recherche <strong>de</strong> schémas symplectique pour les systèmes Hamiltoniens peut être<strong>de</strong> ce point <strong>de</strong> vue <strong>un</strong>e voie intéressante mais qui reste <strong>un</strong>e tâche assez difficile, nécessitant souvent <strong>un</strong>développement approfondi spécifique aux équations considérées.Plusieurs points pourraient (et <strong>de</strong>vraient) faire l’objet <strong>de</strong> travaux ultérieurs. Parmi les plus immédiats,on peut citer :– Poursuivre l’étu<strong>de</strong> énergétique <strong>de</strong>s schémas récursifs <strong>de</strong> type Verlet et Leap-frog, afin <strong>de</strong> pouvoiraffirmer (ou infirmer) si ceux-ci sont dissipatif, sous d’éventuelles majoration du <strong>pas</strong> <strong>de</strong> <strong>temps</strong>.Ces schémas originaux sont en effet très intéressants tant par leur simplicité que par la qualité<strong>de</strong>s résultats obtenus et sont actuellement les stratégies les plus performantes que l’on a mises enœuvre, malgré la nécessité <strong>de</strong> durcir la contrainte CFL pour éviter l’instabilité.– Approfondir et mettre en œuvre le concept <strong>de</strong> correction énergétique développée <strong>dans</strong> le paragraphe3.4, qui pourrait s’avérer bénéfique tout en ne nécessitant que <strong>de</strong>s modifications mineuresdu schéma à <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong> <strong>de</strong> type leap-frog récursif. Si cela aboutit <strong>dans</strong> le cas N = 2, lamétho<strong>de</strong> pourra s’étendre sans trop <strong>de</strong> difficultés au cas général et donner <strong>de</strong>s schémas stables. Laconsistance <strong>de</strong> tels schémas sera également à étudier.– Une autre voie, nécessitant <strong>de</strong>s modifications plus importantes, serait <strong>de</strong> décentrer les flux auxinterfaces. En effet, on a considéré <strong>dans</strong> ce mémoire <strong>un</strong>e métho<strong>de</strong> <strong>de</strong> <strong>Galerkin</strong> basée sur <strong>un</strong>eapproximation centrée <strong>de</strong>s flux. En décentrant les flux, on pourrait utiliser <strong>de</strong>s métho<strong>de</strong>s <strong>de</strong> typeR<strong>un</strong>ge-Kutta. Ces métho<strong>de</strong>s utilisent comme on le sait <strong>de</strong>s <strong>temps</strong> intermédiaires qui pourraient pallierles problèmes <strong>de</strong> champs indisponibles dont souffrent les métho<strong>de</strong>s explicites utilisées jusquelà (et que l’on remplaçait alors par <strong>de</strong>s interpolations ou par les <strong>de</strong>rniers champs disponibles). Deplus, <strong>de</strong>s métho<strong>de</strong>s <strong>de</strong> R<strong>un</strong>ge-Kutta symplectiques sont développées pour les schémas avec fluxdécentrés [20], [19] et peuvent servir <strong>de</strong> point <strong>de</strong> départ.Signalons enfin que, concernant le <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>, notamment pour les schémas symplectiquesdédiés aux systèmes Hamiltoniens, certains domaines font l’objet d’<strong>un</strong> développement très actif : problèmesà N-corps, dynamique moléculaire, etc. S’inspirer <strong>de</strong> ces travaux ou chercher à les adapter constituera<strong>un</strong>e étape importante pour le développement d’autres métho<strong>de</strong>s <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>.45


Annexe AASchémas symplectiques pour les systèmes différentiels HamiltoniensOn présente <strong>dans</strong> cette annexe les définitions et propriétés <strong>de</strong>s systèmes Hamiltoniens ainsi quequelques notions sur les schémas symplectiques développés pour ces systèmes. Pour étudier le schéma <strong>de</strong>S. Piperno, annoncé comme symplectique, il a fallu justifier l’assimilation <strong>de</strong>s équations semi-discrétiséesà <strong>un</strong> système Hamiltonien et comprendre ce que sont ces schémas. Ces concepts sont brièvement résumés<strong>dans</strong> cette première annexe.A.1 Systèmes différentiels HamiltoniensDe nombreux systèmes physiques peuvent être mis sous la forme d’<strong>un</strong> système différentiel Hamiltonien.Parmi les plus classiques, on peut citer l’oscillateur harmonique simple ou encore le problèmed’<strong>un</strong>e particule (non relativiste) soumise à <strong>un</strong> champ <strong>de</strong> force dérivant d’<strong>un</strong> potentiel (typiquement : lamécanique céleste). Un système est dit Hamiltonien lorsque sa dynamique est décrite par <strong>de</strong>s équationsdifférentielles <strong>de</strong> la forme :⎧⎨⎩˙q = ∇ p H(p, q),ṗ = − ∇ q H(p, q),(p(0), q(0)) = (p 0 , q 0 ),où (p(t), q(t)) ∈ R d × R d sont les inconnues du problème et H(p, q) l’Hamiltonien du système, <strong>un</strong>efonctionnelle à valeurs réelles supposée régulière. Les systèmes Hamiltoniens possè<strong>de</strong>nt structurellement<strong>de</strong>s propriétés remarquables. Par exemple, l’Hamiltonien du système est conservé au cours du <strong>temps</strong> :H(p, q) = H(p 0 , q 0 ), ∀ t 0;en effet, il est évi<strong>de</strong>nt que d dtH(p, q) = 0. Mais <strong>un</strong>e <strong>de</strong>s propriété essentielle est la conservation <strong>de</strong> la2-forme différentielle canonique sur R d × R d , dite forme symplectique ω :(29)ω = dp ∧ dq =d∑dp i ∧ dq i ,i=1avec {dp i , dq i } i=1:dla base duale <strong>de</strong> la base canonique sur R d × R d , cette conservation se traduisant pardωdt = 0.Remarque 22 Plus précisément, on a :ω :R d × R d −→ Λ 2 (R d × R d )∑(p, q) ↦−→ d (dp i ∧ dq i ) (p, q)i=1avec Λ 2 l’espace <strong>de</strong>s formes bilinéaires alternées sur R d ×R d et ∧ désigne aussi bien le produit extérieurclassique <strong>de</strong> formes différentielles que le produit exterieur <strong>de</strong>s formes k-linéaires alternées (par abus <strong>de</strong>notation). Donc ∀ (p, q) ∈ R d × R d , (dp i ∧ dq i ) (p, q) ∈ Λ 2 (R d × R d ) est <strong>un</strong>e forme bilinéaire alternée,définie par :(R d × R d) 2 −→ R(dp i ∧ dq i ) (p, q) :((p ′ , q ′ ), (p ′′ , q ′′ )) ↦−→ p ′ i q′′ i − p′′ i q′ i.46


Un autre moyen <strong>de</strong> traduire la conservation <strong>de</strong> la forme ω est <strong>de</strong> <strong>pas</strong>ser par le flot Hamiltonien <strong>de</strong>système. On définit pour cela le flot Hamiltonien du système (29) comme étant l’application :Ψ :R + × R d × R d −→ R d × R d(t, p 0 , q 0 ) ↦−→ (p(t), q(t))avec Ψ(t, ·) qui peut encore être vue comme <strong>un</strong>e fonctions à t fixé Ψ t définie par :∀ t 0, Ψ t :[R d ×]R d −→[R d × R dp0 Ψp↦−→t (p 0, q 0 )q 0 Ψ q t (p 0, q 0 )]=[ p(t)q(t)c’est-à-dire l’application qui <strong>pas</strong>se <strong>de</strong> l’état initial (p 0 , q 0 ) à l’état (p(t), q(t)).Dire que la forme symplectique ω est conservée revient à vérifier l’invariance <strong>de</strong> cette forme par Ψ t :Ψ ∗ t ω(p, q) = ω, (30)où Ψ ∗ t ω désigne la forme différentielle transposée <strong>de</strong> α par l’application Ψ t . On peut alors montrer quecela revient à vérifier la relation :[ ∂Ψpt∂p∂Ψ tq∂p∂Ψ p t∂q∂Ψ q t∂q] TJ[ ∂Ψpt∂p∂Ψ tq∂p∂Ψ p t∂q∂Ψ q t∂q]= J, avec J =][ ]0d I d, (31)−I d 0 dformulation <strong>dans</strong> laquelle on reconnaît la différentielle <strong>de</strong> l’application Ψ t . De manière générale, <strong>un</strong>efonction f sera <strong>un</strong>e transformation symplectique si :f ′T J f ′ = J. (32)Un[ cas]particulier (qui nous servira en discret) est le cas où f est <strong>un</strong>e fonction linéaire <strong>de</strong> la formepA (et donc <strong>de</strong> dérivée A), auquel cas la condition (32) <strong>de</strong>vient <strong>un</strong>e condition sur la matrice A quiq<strong>de</strong>vra vérifier A T JA = J. Une telle matrice est elle aussi qualifiée <strong>de</strong> symplectique.A.2 Schémas symplectiques à <strong>un</strong> <strong>pas</strong> pour les systèmes HamiltoniensL’idée <strong>de</strong> base <strong>de</strong>s schémas symplectiques est qu’ils doivent eux aussi conserver cette forme symplectiqueà chaque <strong>pas</strong> <strong>de</strong> <strong>temps</strong>, conférant ainsi aux métho<strong>de</strong>s symplectiques <strong>un</strong> bon comportement mêmesur <strong>de</strong>s <strong>temps</strong> longs [14], du fait d’<strong>un</strong>e propriété <strong>de</strong> conservation d’énergie assurée lorsqu’<strong>un</strong> schéma estsymplectique : ce sont donc <strong>de</strong>s schémas très intéressants.La construction <strong>de</strong> tels schémas peut-être différentes suivant les manières d’abor<strong>de</strong>r la théorie <strong>de</strong>sstructures symplectiques. Un moyen consiste à imposer au flot Hamiltonien discret <strong>de</strong> vérifier lui aussila condition <strong>de</strong> symplecticité (31). Ainsi, si l’on considère <strong>un</strong> schéma numérique linéaire pour (29) <strong>de</strong> laforme : [ ] [ ]pn+1pnq n+1 = Ψ ∆tq n ,le flot Hamiltonien discret n’est autre que l’application linéaire Ψ ∆t (car <strong>pas</strong>sant <strong>de</strong> l’état discret à l’instantn à l’état à l’instant n+1). Imposer à cette application d’être symplectique revient, comme cela a étédit précé<strong>de</strong>mment, à vérifier que la matrice Ψ ∆t est symplectique. Un schéma numérique <strong>de</strong> cette formesera donc qualifié <strong>de</strong> symplectique si et seulement si la matrice <strong>de</strong> transition Ψ ∆t est symplectique.Remarque 23 Il est important <strong>de</strong> noter que la composition <strong>de</strong> <strong>de</strong>ux transformations symplectiques estsymplectique. Cela se voit facilement en utilisant la relation (32). Soient A et B <strong>de</strong>ux matrices symplectiques,alors :(AB) T J(AB) = B T A T JAB = B T JB = J,donc (AB) est symplectique.47


A.3 Maxwell semi-discrétisé par <strong>Galerkin</strong> Discontinu sous forme d’<strong>un</strong> système HamiltonienAfin <strong>de</strong> justifier la recherche <strong>de</strong> schémas symplectique <strong>dans</strong> le cadre <strong>de</strong>s équations <strong>de</strong> Maxwell semidiscrétiséespar <strong>Galerkin</strong> Discontinu, il est important <strong>de</strong> chercher à mettre les équations (13) sous laforme d’<strong>un</strong> système Hamiltonien.Le cas générique auquel on s’intéresse est <strong>un</strong> système différentiel linéaire couplé <strong>de</strong> forme :{ ddtẼ = A ˜H,d ˜H dt= −BẼ, (33)avec A et B <strong>de</strong>s matrices symétriques. Ce système est bien <strong>un</strong> système Hamiltonien, l’Hamiltonienassocié étant alors donné par :H( ˜H, Ẽ) = 1 (A2˜H∣ ˜H)+ 1 (∣BẼ ∣Ẽ2Alors, d’après ce qui précè<strong>de</strong>, le flot Hamiltonien vérifie (31), à savoir :).˜Ψ T t J ˜Ψ t = J. (34)où ˜Ψ t désigne la matrice dérivée du flot Hamiltonien <strong>de</strong> (33) qui est linéaire <strong>dans</strong> cas (donc <strong>de</strong> dérivée<strong>un</strong>e matrice notée ˜Ψ t ).Le problème est <strong>de</strong> <strong>pas</strong>ser <strong>de</strong> la formulation obtenue par semi-discrétisation par <strong>Galerkin</strong> discontinuà la formulation (33) via <strong>de</strong>s changements <strong>de</strong> variables, utiliser la relation (34) et l’exprimer en fonction<strong>de</strong>s variables d’origine pour obtenir <strong>un</strong>e condition <strong>de</strong> symplecticité du flot manipulé.Système avec matrices <strong>de</strong> masse i<strong>de</strong>ntiquesOn considère <strong>un</strong> système semi-discrétisé <strong>de</strong> la forme :{Mddt E = SH,M d dt H = −SE, (35)avec M symétrique définie positive et S symétrique. Alors, ce système peut se mettre sous forme d’<strong>un</strong>système Hamiltonien. En effet, en posant le changement <strong>de</strong> variables :Ẽ = M 1 12 E, ˜H = M 2 H et en notantB = M − 1 2 SM − 1 2 ,on obtient le système :{ ddtẼ = B ˜H,ddt ˜H = −BẼ,dont on vient <strong>de</strong> dire qu’il est Hamiltonien. On a donc :˜Ψ T t J ˜Ψ t = J. (36)Or, on sait que :Ψ t[p0q 0]===[ ] [p(t) M − 1 2 0=q(t) 0 M − 1 2[]M − 1 [ ]2 0 ˜p0 ˜Ψ0 M − 1 t2 ˜q 0[] [M − 1 2 0 ˜Ψ0 M − 1 t2] [ ˜p(t)˜q(t)M 1 2 00 M 1 2]] [p0q 0],48


et doncΨ t =[M − 1 2 00 M − 1 2]˜Ψ t[M 1 2 00 M 1 2].De ce fait, la relation (36) s’écrit :[] [Ψ T M − 1 2 0t0 M − J 12M 1 2 00 M 1 2]Ψ t =[M − 1 2 00 M − 1 2]J[M 1 2 00 M 1 2].Or, <strong>de</strong> simples calculs donnent :[M − 1 2 00 M − 1 2]J[M 1 2 00 M 1 2]= J,donc finalement, la condition <strong>de</strong> symplecticité (31) reste inchangée pour le flot Ψ t :Ψ T t J Ψ t = J.Le système (35) peut être obtenu en discrétisant les équations <strong>de</strong> Maxwell <strong>dans</strong> le vi<strong>de</strong> par <strong>Galerkin</strong>Discontinu, ou encore en manipulant les équations <strong>de</strong> Maxwell adimensionnées.Système avec matrices <strong>de</strong> masse différentesCe cas est exactement la formulation semi-discrétisée <strong>de</strong>s équations <strong>de</strong> Maxwell que l’on a obtenuepar la métho<strong>de</strong> <strong>Galerkin</strong> discontinu. Le système s’écrit :{Mε Ė = SH,(37)M µ Ḣ = −SE.Dans ce cas, <strong>de</strong>s changements <strong>de</strong> variables i<strong>de</strong>ntiques à ceux effectués précé<strong>de</strong>mment, par exempleẼ = M 1 2 ε E et ˜H = M 1 2 µ H, et B = M − 1 2ε SM − 1 2µ , aboutissent à :{ ddtẼ = B ˜H,ddt ˜H = −B T Ẽ,qui ne permet <strong>pas</strong> <strong>de</strong> conclure, ce système n’étant <strong>pas</strong> Hamiltonien (car B n’est a priori <strong>pas</strong> symétrique) àmoins d’hypothèses supplémentaires. On peut toutefois remarquer que si Mε−1 S et Mµ −1 S sont symétriques(<strong>un</strong>e condition nécessaire et suffisante pour cela étant que S commute avec Mε−1 et Mµ −1 ), alors lesystème (37) est directement sous la forme d’<strong>un</strong> système Hamiltonien.Un moyen d’y parvenir formellement est le suivant. On réécrit le système sous la forme :{Ė = M−1ε SH,Ḣ = −Mµ −1 SE.(38)Soit alors √ S la racine carrée symétrique <strong>de</strong> S (existe toujours si S est symétrique positive). Ensupposant que S est inversible 9 , on obtient, par multiplication <strong>de</strong> (38) par √ S :{ √S Ė = √ √ √√SMε−1 S SHS Ḣ = − √ √ √SM −1 S SE.9 Dans le cas contraire, on peut par exemple décomposer en parties inversible et non inversible et procé<strong>de</strong>r aux adaptationstechniques ad hoc.µ49


On pose alors Ẽ := √ SE et ˜H := √ SH, et on obtient :{ ddtẼ = A ˜H,d˜H dt= −BẼ,avec A := √ √ √ √SMε−1 S et B := SM−1µ S symétriques. Ce système est bien <strong>de</strong> la forme générique(33) donc Hamiltonien. De la même manière que <strong>dans</strong> le cas A.3, on obtient :Ψ t =[S − 1 2 00 S − 1 2] [ √ ] S 0˜Ψ t√ ,0 Set on peut ainsi affirmer que le flot Ψ t vérifie lui aussi la condition :Ψ T t J Ψ t = J.A.4 Une métho<strong>de</strong> symplectique : schéma <strong>de</strong> VerletLe schéma <strong>de</strong> Verlet, initialement proposé pour la dynamique moléculaire [18] puis abondammentadapté par la suite, est <strong>un</strong>e réorganisation du Leap-frog en trois étapes, d’ordre <strong>de</strong>ux, réversibles en<strong>temps</strong> et permettant d’avoir coïnci<strong>de</strong>nce temporelle <strong>de</strong>s champs E et H. Ce schéma peut-être vu comme<strong>un</strong> schéma <strong>de</strong> type prédicteur-correcteur. Appliqué au système (13), il s’écrit :⎧⎪⎨⎪⎩H n+ 1 2 = H n − ∆t2 M µ −1 SE n ,E n+1 = E n + ∆t Mε −1 SH n+ 1 2 ,H n+1 = H n+ 1 2 − ∆t2 M −1µ SE n+1 .On peut remarquer qu’en substituant la troisième équation <strong>de</strong> (39) prise au <strong>temps</strong> n <strong>dans</strong> les <strong>de</strong>uxpremières, on retrouve le schéma <strong>de</strong> type leap-frog. Si l’on étudie les transformations <strong>de</strong> chac<strong>un</strong>e <strong>de</strong>sétapes, on remarque que (39) peut s’écrire comme composition <strong>de</strong>s trois étapes :⎧⎪⎨⎪⎩[Hn+ 1 2]E[ n ]Hn+ 1 2E[ n+1 Hn+1E n+1 ]==[ I −∆t[2 M µ −1 S0 II 0∆t Mε −1 S I= T H[Hn+ 1 2E n+1 ]] [ ] HnE] [ n ]Hn+ 1 2E nLe flot <strong>de</strong> ce schéma est alors donné par :[ Hn+1E n+1 ]= Ψ ∆t[ HnE n ]= T H[ HnE n ]= T E[Hn+ 1 2E n ]avec Ψ ∆t = T H T E T H . Des calculs simples montrent que T E et T H sont <strong>de</strong>s transformation symplectiques,les matrices T H et T E vérifiant la relation (31). On en déduit donc que Ψ ∆t est symplectique, cequi fait du schéma <strong>de</strong> Verlet <strong>un</strong> schéma numérique symplectique et donc, entre autres, stable.Remarque 24 Il est important <strong>de</strong> noter qu’à ce sta<strong>de</strong> il n’est <strong>pas</strong> question <strong>de</strong> <strong>pas</strong> <strong>de</strong> <strong>temps</strong> <strong>local</strong>. Leschéma <strong>de</strong> Verlet est, au même titre que le leap-frog, la métho<strong>de</strong> d’Euler etc., <strong>un</strong> schéma d’intégrationnumérique classique.(39)50


Annexe BBNotationsA T : matrice transposée <strong>de</strong> AA ∗ : matrice transconjuguée <strong>de</strong> Aδ ij : symbole <strong>de</strong> Kroenecker, égal à 1 si i = j, 0 sinonv |Γ : restriction <strong>de</strong> la fonction v à Γ∂Ω : frontière du domaine ΩV(K) : ensemble <strong>de</strong>s cellules voisines à la cellule K (i.e : ayant <strong>un</strong>e frontière comm<strong>un</strong>e avec K)[[v × n]] K ∂K : saut <strong>de</strong> la fonction v | K à travers la frontière ∂Kpp : presque partout (i.e : sauf sur <strong>un</strong> ensemble <strong>de</strong> mesure nulle)× : produit vectoriel entre vecteurs <strong>de</strong> R 3∧ : produit exterieur canonique <strong>de</strong> formes différentielles∇ p : gradient par rapport à la variable pṗ = dpdt∂ x = ∂∂x∇× : opérateur rotationnelH rot (Ω) : sous-espace vectoriel <strong>de</strong>s fonctions <strong>de</strong> L 2 (Ω) dont le rotationnel est également <strong>dans</strong> L 2 (Ω)D ′ (Ω) : espace <strong>de</strong> distributions, dual <strong>de</strong> D(Ω)(·|·) ou · : produit scalaire euclidien <strong>de</strong> vecteurs <strong>de</strong> R n〈·, ·〉 D ′ ,D : produit <strong>de</strong> dualité entre D′ (Ω) et D(Ω)◦ : produit <strong>de</strong> composition <strong>de</strong> fonctionsFDTD : Finite Difference Time Domain, utilisé pour dénommer les schémas <strong>de</strong> type différences finies(ex : schéma <strong>de</strong> Yee) pour résoudre les équations <strong>de</strong> Maxwell <strong>dans</strong> le domaine temporel (par oppositionà fréquentiel)FVTD : Finite Volume Time Domain, utilisé pour dénommer les schémas <strong>de</strong> type volumes finis <strong>dans</strong>le domaine temporelDGTD : Discontinued <strong>Galerkin</strong> Time Domain, utilisé pour dénommer les schémas <strong>de</strong> <strong>Galerkin</strong> Discontinu<strong>dans</strong> le domaine temporel51


Références[1] K.S. YEE, ”Numerical solution of initial bo<strong>un</strong>dary value problems involving Maxwell’s equationsin isotropic medium”, IEEE Trans. Antennas Propag., Vol.14, No.3, pp.302-307, 1966.[2] P. BONNET & AL, ”Numerical mo<strong>de</strong>ling of scattering problem using a time finite volume method”,JEWA, vol.11, pp.1165-1184, 1997.[3] X. FERRIERES & AL, ”Application of an Hybrid FDTD/FVTD method to solve an AutomaticeEMC problem”, IEEE Trans. on EMC, Vol.46, No.4, pp.624-634, Nov.2004.[4] J.S. HESTHAVEN, T.C. Warburton, ”Nodal high-or<strong>de</strong>r methods on <strong>un</strong>structured grids. I. Timedomainsolution of Maxwell’s equations”, Journal of Computational Physics, 181, no 1, pp 186-221,2002.[5] S. PERNET, ”Étu<strong>de</strong> <strong>de</strong> métho<strong>de</strong>s d’ordre élevé pour résoudre les équations <strong>de</strong> Maxwell <strong>dans</strong> ledomaine temporel. Application à la détection et à la compatibilité électromagnétique”, Thèse <strong>de</strong>l’<strong>un</strong>iversité <strong>de</strong> Paris IX–Dauphine, Nov. 2004.[6] S. PIPERNO, L. FEZOUI, ”A centered Discontinuous <strong>Galerkin</strong> finite volume scheme for the 3Dheterogeneous Maxwell equations on <strong>un</strong>structured meshes”, INRIA Research Report No. 4733,Feb. 2003.[7] J.P. BERENGER, ”A Perfectly Matched Layer for the Absorption of Electromagnetic Waves”, J.Comput. Phys. 114,185-200 (1994).[8] S. PIPERNO, ”Symplectic <strong>local</strong> time-stepping in non dissipative DGTD methods applied to wavepropation problems”, Rapport INRIA, No 5643, juillet 2005.[9] T. FOUQUET, ”Raffinement <strong>de</strong> maillage spatio-temporel pour les équations <strong>de</strong> Maxwell”, Thèse <strong>de</strong>l’<strong>un</strong>iversité <strong>de</strong> Paris Dauphine, 2000.[10] JERONIMO RODRIGUEZ GARCIA,”Raffinement <strong>de</strong> maillage spatio-temporel pour les équations <strong>de</strong>l’Elastodynamique”, Thèse <strong>de</strong> l’<strong>un</strong>iversité <strong>de</strong> Paris Dauphine, 2004.[11] P-A. MAZET, ”Convexity in hyperbolic problems. Application to a discontinuous method for the resolutionof the polydimensional Euler equations”, Non linear hyperbolic equations. Aachen, 1988.[12] F. COLLINO, T. FOUQUET, P. Joly, ”A conservative space-time mesh refinement method for the1-D wave equation”. II. Analysis. Numer. Math., 95(2) :223-251,2003.[13] S. PIPERNO, ”Schémas en éléments finis discontinus <strong>local</strong>ement raffinés en espace et en <strong>temps</strong> pourles équations <strong>de</strong> Maxwell 1D”, rapport <strong>de</strong> recherche INRIA N˚4986, 2003.[14] D. DONNELLY, E. ROGERS, ”Symplectic integrators : An introduction”, American Association ofPhysics Teachers, 2005.[15] J.M SANZ-SERNA, ”Symplectic intgrators for Hamiltonian problems : an overview”, Acta Numerica1, 243-286, 1992.[16] DAVID J. HARDY, ”Symplectic variable step-size integration for N-body problems”, proceedingsof the NSF/CBMS Regional Conference on Numerical Analysis of Hamiltonian Differential Equations,volume 29, p. 19-30, 1999.[17] M. DIXON, S. REICH, ”Symplectic Time-Stepping for particle methods”, GAMM, Berlin 27, N. 1,pp. 9–24, 2004.[18] L. VERLET, ”Computer experiments on classical fluids I. Thermodynamical properties of Lennard-Jones molecules”, Phus. Rev 159, 98-103, 1967.[19] X. TAN, ”Almost symplectic R<strong>un</strong>ge–Kutta schemes for Hamiltonian systems”, Journal of ComputationalPhysics 203, 250-273, 2005.52


[20] J. HONG & AL, ”The multi-symplecticity of partitionned R<strong>un</strong>ge-Kutta methods for hamiltonianPDEs”, Mathematics of Computation, volume 75, number 253, p. 167-181, 2005.[21] S. PIPERNO, M. REMAKI, L. FEOUI, ”A nondiffusive finite volume scheme for the threedimensionalMaxxwell’s equations on <strong>un</strong>structured meshes”, SIAM J. Numer. Anal, vol 39, No.6, pp. 2089-2108, 2002.53

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!