7352_chap03

download 7352_chap03

of 27

description

edo

Transcript of 7352_chap03

  • mathL3 2009/6/17 11:37 page 161 #180

    Chapitre 3

    RESOLUTION NUMERIQUE DES EQUATIONSDIFFERENTIELLES ET DES EQUATIONS

    AUX DERIVEES PARTIELLES

    Les quations direntielles interviennent dans de nombreux domaines comme la mca-nique, lastronomie, la biologie, la mdecine, etc. Gnralement, on ne peut pas calculerla solution de ces quations de manire exacte. Il est alors ncessaire dutiliser des m-thodes numriques qui donneront des bonnes approximations des solutions pour un cot decalcul qui ne soit pas trop important. La premire de ces mthodes est la mthode dEuler(due au mathmaticien suisse Leonhard Euler [1707-1783]) ; mais ltude de ces mthodes sestsurtout dveloppe partir des annes cinquante avec lapparition des ordinateurs .

    Leonhard Euler(1707-1783)

    Pour calculer une approximation de la solution dune quation dif-frentielle avec condition initiale sur un intervalle [t0, t0 + T ], onsubdivise cet intervalle en sous-intervalles dextrmits t0 < t1 0, LR tel que t [t0, t0 + T ], y, z B(y0,R), f(t,y) f(t, z) LR y z ,

    o . dsigne une norme sur Rp et B(y0,R) la boule de centre y0 et de rayon R. Alors leproblme de Cauchy ((3.1),(3.2)) admet une unique solution maximale.

    Nous nous placerons toujours dans le cadre de ce thorme lorsque nous dnirons les mthodesnumriques.

    I.2. Dnition de la mthode dEuler

    Il nest en gnral pas possible de calculer une solution exacte du problme de Cauchy. On doitalors utiliser des mthodes numriques. Dans toute la suite, pour simplier les notations, nousnous restreindrons au cas des quations scalaires (p = 1,Rp = R). La plupart des rsultats segnralisent de faon immdiate au cas p > 1 en remplaant les valeurs absolues par des normes.Dans cette section, nous tudions la plus simple des mthodes numriques : la mthode dEulerexplicite (ou Euler progressive). On considre donc le problme de Cauchy{

    y (t) = f(t,y(t))y(t0) = donne

    . (3.4)

    On se donne une subdivision : t0 < t1 < < tn < tn+1 < < tN = t0 + T de lintervalle[t0, t0 + T ]. On note pour n = 0, ...,N 1, hn = tn+1 tn le pas et h = h() := maxn hn. Lasolution du problme de Cauchy vrie

    y(tn+1) = y(tn) +

    tn+1tn

    f(t, y(t))dt .

    Si y0 est une approximation de y(t0), on calcule lapproximation yn de y(tn) par

    yn+1 = yn + hnf(tn,yn), 0 n N 1 , (3.5)

    ce qui revient remplacer f(t, y(t)) par f(tn,yn) pour t ]tn, tn+1[. Cette mthode est la m-thode dEuler 1. Le problme essentiel est lestimation de lerreur de discrtisation

    en := y(tn) yn (3.6)

    en fonction de h. Nous ferons lhypothse que f C([t0, t0 + T ] R) (en abrg C([t0, t0 + T ]))et vrie

    L > 0, t [t0, t0 + T ], y, z R, |f(t, y) f(t, z)| L |y z| , (3.7)ce qui implique que le problme admet une solution globale sur [t0, t0 + T ]. Dans la sous-sectionsuivante, nous donnerons une majoration de lerreur de discrtisation. Nous tudierons ensuitele comportement asymptotique de cette erreur ; ceci nous permettra dobtenir une meilleureapproximation de y(tn) en utilisant le procd dextrapolation la limite de Richardson. Enn,nous dcrirons une mthode de contrle du pas qui permet dassurer que lerreur locale restevoisine dun seuil de tolrance x.

    1. Elle fut introduite par le mathmaticien suisse Leonhard Euler (1707-1783), sans doute ds 1768.

  • mathL3 2009/6/17 11:37 page 164 #183

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    164

    I.3. Majoration de lerreur de discrtisation

    On dnit lerreur de troncature linstant tn+1 par

    n+1 =1hn

    (y(tn+1) y(tn) hnf(tn,y(tn))) . (3.8)

    Pour estimer cette erreur de troncature, on introduit le module de continuit dune fonction.

    Dnition 3.1. Soit g C([t0, t0 + T ]). Pour tout > 0, on dnit le module de continuit(g; ) par

    (g; ) = maxt1,t2[t0,t0+T]

    |t1t2|

    |g(t1) g(t2)| .

    Lerreur de troncature peut se majorer en

    |n+1| = 1hn

    tn+1tn

    (y (t) y (tn))dt (y ;h), n = 0, ...,N 1. (3.9)

    Comme y C0([t0, t0+T ]), nous avons limh0

    (y ;h) = 0. Si on suppose de plus que f appartient

    C1([t0, t0 + T ] R), alors y C2([t0, t0 + T ]) et

    y (t) =f

    t(t,y(t)) +

    f

    y(t,y(t))f(t, y(t)) .

    En utilisant la formule de Taylor, on en dduit

    |n+1| = 1hn

    tn+1tn

    (tn+1 t)y(t)dt

    tn+1tn

    |y (t)|dt .

    On dduit de (3.5) et (3.8) la relation

    en+1 = en + hn(f(tn,y(tn)) f(tn,yn)) + hnn+1 , (3.10)

    do, en utilisant lingalit (3.7), |en+1| (1+ hnL) |en| + hn |n+1|. Donnons maintenant unrsultat sur la majoration des solutions dingalits rcurrentes.

    Lemme 3.2. Soit (n)n0 et (n)n0 deux suites de rels positifs ou nuls qui vrient

    n+1 (1+ hnL)n + n+1, n 0

    pour une certaine constante positive L. On a alors la majoration

    n eL(tnt0)0 +n

    i=1

    eL(tnti)i, n 0. (3.11)

    Preuve. On vrie facilement par rcurrence sur n que pour tout n 0,

    n (1+ hn1L) (1+ h0L)0 +n1i=1

    (1+ hn1L) (1+ hiL)i + n .

    Dautre part, pour x 0, on a lingalit (1+ x) ex, do lon dduit

    n eL(h0++hn1)0 +n1i=1

    eL(hn1++hi)i + n , n 0 .

  • mathL3 2009/6/17 11:37 page 165 #184

    165

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    Daprs la dnition de hn, on a lgalit hn1 + + hi = tn ti et lingalit prcdenteimplique immdiatement la majoration (3.11). n

    Nous pouvons alors noncer le thorme :

    Thorme 3.3. Si f est continue sur [t0, t0+T ]R et vrie lhypothse (3.7), alors lerreurde discrtisation de la mthode dEuler satisfait

    |en| eL(tnt0) |y(t0) y0|+eL(tn t0) 1

    L(y ;h). (3.12)

    Preuve. En appliquant le lemme prcdent aux suites (|en|)n0 et (hn |n+1|)n0, et en utili-sant (3.9), on obtient

    |en| eL(tnt0)|e0| +n

    i=1

    eL(tnti)hi1|i| eL(tnt0)|e0|+(y ;h)n

    i=1

    eL(tnti)titi1

    dt

    eL(tnt0)|e0| +(y ;h)n

    i=1

    titi1

    eL(tnt)dt

    eL(tnt0)|y(t0) y0| +(y ;h)eL(tnt0) 1

    L.

    n

    Remarque. Si y C2([t0, t0 + T ]), on obtient de la mme faon

    |en| eL(tnt0)|e0|+n

    i=1

    eL(tnti)titi1

    (ti t)|y(t)|dt

    eL(tnt0)|e0|+ h tnt0

    eL(tnt)|y (t)|dt .

    Si on choisit y0 tel que limh0 y0 = y(t0), on obtient limh0 |y(tn) yn| = 0 et on dit quela mthode dEuler est convergente ; si on suppose de plus que y C2([t0, t0 + T ]), on obtient|y(tn) yn| = O(h) lorsque e0 = O(h).

    Proposition 3.4. Dnissons une subdivision tant donne, yh C([t0, t0 + T ]) par

    yh(t) = yn +yn+1 yn

    hn(t tn), t [tn, tn+1] , n = 0, ...,N 1 ,

    alors la famille yh converge vers y dans C([t0, t0 + T ]) lorsque h tend vers 0.

    Preuve. Si t [tn, tn+1], |yh(t) y(t)| |yh(t) yn| + |yn y(tn)| + |y(tn) y(t)|, do|yh(t) y(t)| |yh(t) yn| + |en| +(y;h). De plus, daprs (3.5), |yh(t) yn| h |f(tn,yn)|.Comme |f(tn,yn)| est borne indpendamment de h et n, on en dduit que maxn |yh(t) y(t)|tend vers 0 lorsque h tend vers 0. n

  • mathL3 2009/6/17 11:37 page 166 #185

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    166

    I.4. Comportement asymptotique de lerreur

    La majoration de lerreur de discrtisation en donne une borne trs large, valable pour touteune classe dquations direntielles. Elle est en gnral beaucoup trop pessimiste lorsquon sin-tresse une quation direntielle particulire. Il est donc ncessaire dobtenir des estimationsplus ralistes. On fera une hypothse sur la suite de pas hn, n = 0, ...,N1, savoir quil existeune fonction continue et lipschitzienne sur [t0, t0 + T ], telle que t [t0, t0 + T ], 0 < (t) 1et hn = h((tn) + O(h)). On dmontre alors le thorme.

    Thorme 3.5. Si f C2([t0, t0 + T ]R) et y(t0) y0 = h + O(h2) avec R, lerreurde discrtisation peut se mettre sous la forme

    en = he(tn) + O(h2) , (3.13)

    o la fonction e est solution du problme

    e (t) =f

    y(t,y(t))e(t) +

    12(t)y (t) et e(t0) = . (3.14)

    Preuve. Si f C2([t0, t0 + T ]), alors y C3([t0, t0 + T ]) et

    n+1 =1hn

    (y(tn+1) y(tn) hnf(tn,y(tn))) =hn

    2y (tn) + O(h2n) =

    h

    2(tn)y

    (tn) + O(h2) .

    Dautre part, en utilisant la relation (3.10), on obtient

    en+1 = en + hn (f(tn,y(tn)) f(tn,y(tn) en)) + hnn+1

    = en + hnf

    y(tn,y(tn))en +

    hnh

    2(tn)y

    (tn) + hnO(h2) .

    De plus, si e est la solution du problme (3.14), e est lipschitzienne et donc

    e(tn+1) = e(tn)+hne(tn)+hnO(h) = e(tn)+hn

    f

    y(tn,y(tn))e(tn)+

    hn

    2(tn)y

    (tn)+hnO(h) .

    En posant zn = en he(tn), on obtient ainsi zn+1 = zn + hn fy (tn,y(tn))zn + hnO(h2). La

    fonction f vriant lhypothse (3.7), on peut en dduire |zn+1| |zn| (1 + hnL) + Ch2hn avecC > 0 puis, en utilisant le lemme 3.2, on obtient

    |zn| eL(tnt0) |z0|+ Ch2eL(tn t0) 1

    L.

    Comme z0 = e0 he(t0) = O(h2), on en dduit la relation (3.13). n

    Application Lextrapolation la limite de Richardson 1 On suppose que le pas hn estconstant, gal h, donc que (t) = 1 ; si on note y(t;h) la valeur approche de y obtenue enutilisant ce pas h, on a daprs (3.13) lgalit y(t;h) = y(t) he(t) + O(h2) ; si on refait lescalculs avec le nouveau pas rh, on obtient y(t; rh) = y(t) rhe(t) + O(h2), do

    y(t) =y(t; rh) ry(t;h)

    1 r+ O(h2) .

    Cela fournit une approximation de y(t) O(h2) prs.

    1. Lewis Fry Richardson, mathmaticien britannique (1881-1953), dont les travaux se sont en particulierorients vers la mtorologie.

  • mathL3 2009/6/17 11:37 page 167 #186

    167

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    I.5. Contrle du pas

    Quand on rsout une quation direntielle, on choisit gnralement le pas de faon ce quelerreur locale soit partout environ gale Tol (tolrance fournie par lutilisateur). Pour cela,il faut connatre une valeur approche de lerreur de troncature. Si y C2([t0, t0 + T ]), on a,pour n = 0, ...,N 1, les relations

    n+1 =hn

    2y (tn) + O(h2n) =

    12(y (tn+1) y (tn)) + O(h2n)

    =12(f(tn+1,y(tn+1)) f(tn,y(tn))) + O(h2n)

    et on prend pour approcher n+1 la quantit n+1 := (f(tn+1,yn+1)) f(tn,yn))/2, ce qui nencessite pas dvaluations supplmentaires de la fonction f. Par ailleurs, si on pose f(1)(t,y) =ft(t,y) + f

    y(t,y)f(t, y), on obtient facilement

    n+1 n+1 =hn

    2(f(1)(tn,y(tn)) f(1)(tn,yn)

    )+O(h2n)

    et, comme y(tn)yn = O(h), on en dduit n+1 n+1 = O(h2) et n+1 = O(h). Le pas optimalh chaque instant est alors choisi de faon que lerreur locale |n+1| = hn |n+1| soit prochede Tol , ce qui donne h hn

    Tol/|n+1|. On impose galement une condition de la forme

    hmin hn hmax pour viter de trop grandes variations du pas.

    Algorithme 3.1 Slection automatique du pas1: donnes : h0, t0,y0, , Tol, T2: T t0 + T3: tant que tn+1 < T, faire4: calcul de yn+1 et n+15: si (1 )Tol |n+1| (1+ )Tol, alors6: hn+1 = min(hn, T tn+1) {le pas est accept}7: sinon si |n+1| < (1 )Tol, alors8: hn+1 = min(max(h,hmax), T tn+1) {le pas est augment}9: sinon si (1+ )Tol < |n+1| (1+ 2)Tol, alors

    10: hn+1 = min(h, T tn+1) {le pas est diminu}11: sinon12: hn = hn

    9/10 Tol/|n+1|, puis calcul de yn avec le nouveau pas {le pas hn est rejet

    et on recommence le calcul de yn avec un pas plus petit}13: n si14: n tant que

    Test 3.1.

    Soit le problme de Cauchy : y = y, y(0) =1, t [0, 1]. (1) Calculer la solution exacteet la solution approche obtenue par la m-thode dEuler (on supposera le pas constant ety0 = 1). (2) Calculer e(tn) (a) en utilisant lesexpressions obtenues pour y(tn) et yn, (b) enutilisant la dnition (3.14).

    Test 3.2.

    On calcule une approximation de la solutiony(tn), avec n pair, du problme tudi au test

    3.1 avec un pas h, puis avec un pas 2h. Quelleest la valeur approche yn de y(tn) obtenue enutilisant lextrapolation la limite de Richard-son ? Calculer directement une majoration de|y(tn) yn|.

    Test 3.3.

    Dterminer analytiquement les valeurs yn ob-tenues en rsolvant le problme de Cauchyy (t) = t t3, y(0) = 0 par la mthodedEuler. Calculer lerreur en et la comparer he(tn). On rappelle que

    n1 k = n(n+ 1)/2,n

    1 k3 = (n(n+ 1)/2)2.

  • mathL3 2009/6/17 11:37 page 168 #187

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    168

    II. Les mthodes un pas

    II.1. Introduction

    On sintresse toujours la rsolution du problme de Cauchy{y (t) = f(t, y(t)), t [t0, t0 + T ]y(t0) = donn ,

    (3.15)

    o f est une fonction continue de [t0, t0 + T ] R dans R, vriant (3.7). Pour simplier lesnotations, nous nous restreignons comme dans le paragraphe prcdent au cas scalaire. Demme, nous supposerons le pas de temps constant ; il ny a aucune dicult gnraliser lethorme destimation derreur au cas o le pas est variable.

    Soit N N ; on pose h = 1/N et tn = t0 + nh, 0 n N. Nous nous intressons dans cettepartie la rsolution approche de (3.15) par des mthodes un pas, cest--dire des mthodesqui permettent de calculer la valeur approche yn+1 de y(tn+1) partir de tn,h, yn, valeurapproche de y(tn) uniquement. Ces mthodes scrivent sous la forme{

    yn+1 = yn + h(tn,yn;h)y0 = h ,

    (3.16)

    o est une fonction continue de [t0, t0+T ]R[0,h0], (h0 > 0) dans R qui dpend de la fonctionf. Par exemple, la mthode dEuler est une mthode un pas avec (t,y;h) = f(t,y) ; dans cecas, la fonction ne dpend pas de h. Nous avons vu, dans la premire partie, que lerreur dediscrtisation pour cette mthode (en = yny(tn)) est proportionnelle h (si la fonction f est declasse C2, voir le thorme 3.5). Nous tudions ici des mthodes un pas pour lesquelles lerreurde discrtisation est proportionnelle hp avec p 1 lorsque f est susamment rgulire. Nouscommencerons par introduire les notions fondamentales de consistance, stabilit, convergence,qui permettent ltude des mthodes un pas ; nous prsenterons ensuite des exemples de tellesmthodes, plus particulirement les mthodes de Runge-Kutta 1.

    II.2. Notions de consistance, stabilit, convergence

    On dnit de manire analogue celle de la partie prcdente lerreur de troncature.

    Dnition 3.6. Lerreur de troncature linstant tn+1, (n = 0, ...N 1) est dnie par

    n+1 :=1h(y(tn+1) y(tn)) (tn,y(tn);h). (3.17)

    Dnition 3.7. La mthode (3.16) est consistante avec lquation direntielle (3.15),si etseulement si

    limh0

    maxn=1,..,N

    |n| = 0 .

    1. Carl Runge, mathmaticien et physicien allemand (1856-1927) ; Martin Kutta, mathmaticien allemand(1867-1944), connu galement pour ses travaux en arodynamique.

  • mathL3 2009/6/17 11:37 page 169 #188

    169

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    La quantit n reprsente, dans un certain sens, lerreur que lon fait au pas n en remplaantlquation direntielle par le schma (3.16).

    La dnition suivante concerne une proprit de continuit uniforme en h de lapplication(h,(., .;h)) {yn,n = 0...N} qui aux donnes fait correspondre la solution du schma.Dnition 3.8. Soient {yn,n = 1, . . . ,N} et {zn,n = 1...N} les solutions respectives des sys-tmes

    yn+1 = yn + h(tn,yn;h) , n = 0, ...,N 1,zn+1 = zn + h ((tn, zn;h) + n+1) , n = 0, ...,N 1 ,

    y0, z0 tant donns dans R, (1, ..., N) dsignant une perturbation . On dit que la mthodeest stable sil existe deux constantes positives M1 et M2 indpendantes de h telles que

    maxn=1,..,N

    |yn zn| M1 |y0 z0|+M2 maxn=1,..,N

    |n| . (3.18)

    Cette notion de stabilit signie quune petite perturbation sur les donnes nentrane quunepetite perturbation sur la solution du schma, cela indpendamment de h.

    Dnition 3.9. On dit que la mthode un pas (3.16) est convergente si la proprit suivanteest vraie pour tout R :

    limh0

    h = = limh0

    maxn=0,..,N

    |yn y(tn)| = 0 ,

    o yn est la solution du schma (3.16) et y(t) la solution du problme de Cauchy (3.15).

    A partir de ces notions, on dmontre le thorme fondamental suivant.

    Thorme 3.10. Si la mthode un pas est stable et consistante, elle est convergente.

    Preuve. De la dnition de lerreur de troncature (3.17), on dduit

    y(tn+1) = y(tn) + h(tn,y(tn);h) + hn+1 , n = 0, ...,N 1 .

    Comme la mthode est consistante, nous avons limh0

    maxn=1..N

    |n| = 0. Daprs la dnition de la

    stabilit (3.18), on obtient alors

    maxn=1,..,N

    |yn y(tn)| M1 |h |+M2 maxn=1,..,N

    |n| ,

    ce qui dmontre, en combinant avec linformation prcdente, la convergence de la mthode. n

    II.3. Convergence des mthodes un pas

    Le thorme 3.10 nous conduit tudier sparment la consistance et la stabilit des mthodes un pas. La convergence en rsulte immdiatement. Nous donnons dans le lemme suivant unecondition ncessaire et susante de consistance de la mthode (3.16).

    Lemme 3.11. Une condition ncessaire et susante pour que la mthode (3.16) soit consis-tante avec lquation direntielle (3.15) scrit

    t [t0, t0 + T ], y R, (t,y; 0) = f(t,y). (3.19)

  • mathL3 2009/6/17 11:37 page 170 #189

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    170

    Preuve. On montre dabord que la condition est ncessaire. Si la mthode est consistante,pour toute solution y de lquation direntielle, on a lim

    h0max

    n=1,...,N|n| = 0, cest--dire

    limh0

    maxn=0,...,N1

    1htn+1tn

    f(s,y(s))ds(tn,y(tn);h) = 0 . (3.20)

    Soit t un point quelconque de [t0, t0 + T ] ; on peut construire une suite de points (tn)n quiconverge vers t quand h tend vers 0. Alors, daprs (3.20) et les proprits de continuit desfonctions f et , on obtient

    limh0

    1h

    tn+1tn

    f(s,y(s))ds (tn,y(tn);h) = f(t,y(t)) (t,y(t); 0) = 0 . (3.21)

    Par ailleurs, tant donn un couple (t, z) de [t0, t0 + T ] R, daprs le thorme de Cauchy-Lipschitz, il existe toujours une solution y C1([t0, t0+T ]) de lquation direntielle qui vriey(t) = z. Donc, dans (3.21), y(t) parcourt R lorsque y parcourt lensemble des solutions delquation direntielle et, nalement, la relation (3.19) est une condition ncessaire de consis-tance.

    On montre maintenant que la relation (3.19) est une condition susante de consistance. Ondduit de cette relation et de la dnition de lerreur de troncature que

    n+1 =1h

    tn+1tn

    ((s,y(s); 0) (tn,y(tn);h))ds .

    La fonction (t,h) (t,y(t);h) tant continue sur le compact [t0, t0 + T ] [0,h0], elle estuniformment continue ; nous avons donc pour tn s tn+1

    limh0

    maxn=0,..,N1

    |(s,y(s); 0) (tn,y(tn);h)| = 0 ,

    ce qui implique limh0

    maxn=1,...,N

    |n| = 0 et achve de prouver que la relation (3.19) est une condition

    susante de consistance. n

    Dans le lemme suivant, nous donnons une condition susante de stabilit.

    Lemme 3.12. Si la fonction vrie une condition de Lipschitz

    t [t0, t0 + T ], y, z R, h [0,h0], |(t, y;h) (t, z;h)| |y z| , (3.22)o est une constante positive indpendante de h, alors la mthode un pas (3.16) est stable.

    Preuve. Soient {yn, n = 0, . . . ,N 1} et {zn, n = 0, . . . ,N 1} deux suites qui vrientyn+1 = yn + h(tn,yn;h) (resp. zn+1 = zn +h((tn, zn;h) + n+1)) pour n = 0, . . . ,N 1. Enutilisant lingalit (3.22), on en dduit immdiatement

    |yn+1 zn+1| (1+h) |yn zn|+ h |n+1| , n = 0, . . . ,N 1 ,

    do, daprs le lemme (3.2),

    |yn zn| e(tnt0) |y0 z0| + h(

    ni=1

    e(tnti)

    )max

    i=1,...,n|i|

    e(tnt0) |y0 z0| +e(tnt0) 1

    max

    i=1,...,n|i|

  • mathL3 2009/6/17 11:37 page 171 #190

    171

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    et par consquent

    maxn=0,...,N

    |yn zn| eT |y0 z0|+eT 1

    max

    n=1,...,N|n| .

    La mthode est donc stable et on a M1 = eT et M2 = eT1

    . n

    Le thorme suivant se dduit immdiatement de ces deux lemmes ainsi que du thorme 3.10.

    Thorme 3.13. On suppose que la fonction vrie

    t [t0, t0 + T ], y R, (t, y; 0) = f(t, y),ainsi que la condition de Lipschitz

    t [t0, t0 + T ], y, z R, h [0,h0], |(t, y;h) (t, z;h)| |y z| ,o est une constante positive, indpendante de h. Alors la mthode un pas (3.16) estconvergente.

    Remarque. Si y est solution du problme (3.15) et yn, n = 0, . . . ,N, solution du schma (3.16),on obtient plus prcisment

    |en| e(tnt0) | h| +e(tnt0) 1

    max

    i=1,...,n|i| ,

    o en est lerreur de discrtisation (3.6) et n lerreur de troncature.

    Proposition 3.14. Si on dnit, tant donn la subdivision de pas constant h, la fonctionyh C([t0, t0 + T ]) par

    yh(t) = yn +yn+1 yn

    h(t tn) , t [tn, tn+1] ,

    la famille (yh)h converge vers y dans C([t0, t0 + T ]) lorsque h tend vers 0.

    Preuve. La dmonstration est la mme que celle de la proposition (3.4). n

    Test 3.4.

    Soit le problme de Cauchy y = y2/(1+ |y|),y(0) = 1 ; on calcule une approximation yn dey(tn) par

    yn+1 = yn +hynyn+11+ |yn|

    , y0 = 1 .

    (1) Montrer que cette approximation est dniede faon unique pour h < 1 ; crire cette m-thode sous la forme habituelle des mthodes un pas. (2) Montrer la consistance et la stabilitde la mthode et en dduire la convergence.

  • mathL3 2009/6/17 11:37 page 172 #191

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    172

    II.4. tude de lerreur de discrtisation

    II.4.1. Ordre dune mthode un pas

    Dnition 3.15. La mthode un pas (3.16) est dordre p, (p > 0) si lerreur de troncatureest en O(hp), cest--dire :

    maxn=1,...,N

    |n| = maxn=0,...,N1

    1h (y(tn+1) y(tn)) (tn,y(tn);h) Khp,

    o K est une constante positive ne dpendant que de y et de , cela pour toute solution y delquation direntielle, telle que y Cp+1([t0, t0 + T ]).

    Le thorme suivant se dduit immdiatement du thorme 3.10.

    Thorme 3.16. Si la mthode un pas est stable et dordre p et si f Cp([t0, t0 + T ]R),on a lestimation

    maxn=0,...,N

    |y(tn) yn| M1 | h | +M2Khp ,

    o y est la solution du problme de Cauchy (3.15) et yn, n = 0, . . . ,N la solution du schma(3.16).

    Corollaire 3.17. Si f Cp([t0, t0 + T ]R), si la mthode est dordre p et si la fonction vrie la condition de Lipschitz

    t [t0, t0 + T ], y, z R, h [0,h0], |(t,y;h) (t, z;h)| |y z| ,o est une constante positive indpendante de h, on a lestimation

    maxn=0,...,N

    |en| eT | h | + KeT 1

    hp.

    Preuve. Il sut dappliquer le thorme 3.13 et la remarque en n de section II.3. n

    Test 3.5.

    Montrer que la mthode un pas dnie par

    (t,y;h) = f(t,y)+12hf(1)(t+

    h

    3,y+

    h

    3f(t,y))

    est dordre 3.

  • mathL3 2009/6/17 11:37 page 173 #192

    173

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    II.4.2. Majoration a priori de lerreur de discrtisation

    Si f Cp([t0, t0 + T ] R), on peut dnir inductivement la fonction f(k), 0 k p, sur[t0, t0 + T ] R par

    f(0)(t,y) = f(t,y)

    f(1)(t,y) =f

    t(t,y) +

    f

    y(t,y)f(t, y)

    ...

    f(k)(t,y) =f(k1)

    t(t,y) +

    f(k1)

    y(t,y)f(t,y) .

    On vrie facilement que si y est solution de lquation direntielle, on a lgalit

    y(k+1)(t) = f(k)(t,y(t)) =dk

    dtkf(t,y(t)). (3.23)

    Thorme 3.18. On suppose que f Cp([t0, t0 + T ] R) et que les fonctions ,/h, . . . , p/hp existent et sont continues dans [t0, t0 + T ] R [0,h0]. Une conditionncessaire et susante pour que la mthode soit dordre p scrit

    (t,y) [t0, t0 + T ]R ,

    (t,y; 0) = f(t,y)h

    (t,y; 0) = 12 f(1)(t,y)

    ...p1hp1 (t,y; 0) =

    1pf(p1)(t,y)

    . (3.24)

    Preuve. Soit y une solution de lquation direntielle, y Cp+1([t0, t0 + T ]). Daprs laformule de Taylor, il existe n ]tn, tn+1[ tel que

    y(tn+1) y(tn) = hy(tn) + + h

    p

    p!y(p)(tn) +

    hp+1

    (p+ 1)!y(p+1)(n) ;

    en utilisant lgalit (3.23), on obtient

    y(tn+1) y(tn) = hf(tn,y(tn)) +h2

    2f(1)(tn,y(tn)) + . . .

    + hp

    p!f(p1)(tn,y(tn)) +

    hp+1

    (p+ 1)!f(p)(n,y(n)) .

    De mme, il existe h ]0,h0] tel que

    (tn,y(tn);h) = (tn,y(tn); 0) + h

    h(tn,y(tn); 0) + + h

    p1

    (p 1)!p1

    hp1(tn,y(tn); 0)

    +hp

    p!p

    hp(tn,y(tn); h) .

    On en dduit

    n+1 = (f(tn,y(tn)) (tn,y(tn); 0)) + h(12f(1)(tn,y(tn))

    h(tn,y(tn); 0)

    )+

    +hp1

    (p 1)!

    (1pf(p1)(tn,y(tn))

    p1

    hp1(tn,y(tn); 0)

    )+hp

    p!

    (1

    p+ 1f(p)(n,y(n))

    p

    hp(tn,y(tn); h)

    )

  • mathL3 2009/6/17 11:37 page 174 #193

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    174

    et donc la mthode est dordre p, si et seulement si

    (tn,y(tn); 0) = f(tn,y(tn))

    h(tn,y(tn); 0) = 12 f

    (1)(tn,y(tn))...

    p1

    hp1(tn,y(tn); 0) = 1p f

    (p1)(tn,y(tn))

    (3.25)

    pour toute solution y de lquation direntielle et pour tout n = 1, . . . ,N. Si le systme (3.24)est vri, la mthode est donc dordre p.

    Rciproquement, supposons la mthode dordre p ; le systme (3.25) est vri. Soit t un pointquelconque de [t0, t0+T ] ; on peut construire une suite de points (tn)n de [t0, t0+T ] qui convergevers t. En passant la limite dans (3.25) quand n tend vers linni, on obtient

    (t,y(t); 0) = f(t,y(t))

    h(t,y(t); 0) = 12 f

    (1)(t,y(t))...

    p1

    hp1(t,y(t); 0) = 1

    pf(p1)(t,y(t)) .

    Mais comme y(t) parcourt R lorsque y dcrit lensemble des solutions de lquation direntielle,on en dduit que les relations (3.24) sont vries. n

    Remarque. Lorsque f et satisfont les hypothses du thorme prcdent, il est possibledobtenir une estimation de la constante K intervenant dans lerreur de troncature en fonctiondes donnes. Si les relations (3.24) sont vries, lerreur de troncature scrit

    n+1 = hp

    (1

    (p+ 1)!f(p)(n,y(n))

    1p!

    p

    hp(tn,y(tn); h)

    ), n ]tn, tn+1[ .

    Lorsque y est solution du problme de Cauchy, le couple (t,y(t)) reste dans un ensemble compactD. En eet, il est possible dobtenir une majoration de y en fonction des donnes car, daprs(3.15), on a lgalit y(t) =

    tt0

    (f(s,y(s)) f(t0,))ds+ (t t0)f(t0,), t [t0, t0 + T ]. Lafonction f tant lipschitzienne par rapport y, on en dduit

    |y(t) | L tt0

    |y(s) |ds+ (t t0) |f(t0,)| , t [t0, t0 + T ] . (3.26)

    Considrons la fonction dnie sur [t0, t0+T ] par (t) := eL(tt0)tt0

    |y(s) |ds. Lingalit(3.26) peut scrire (t) |f(t0,)| (t t0)eL(tt0) pour t [t0, t0 + T ] et on en dduit

    (t) |f(t0,)|L

    (1 eL(tt0)

    L (t t0)e

    L(tt0)

    ).

    En reportant cette majoration dans (3.26), on obtient |y(t) | |f(t0,)| (eL(tt0)1)/L pourtout t [t0, t0+T ] et |y(t)| ||+ |f(t0,)| (eLT 1)/L. Finalement, si y est solution du problmede Cauchy (3.15), alors (t,y(t)) D := {(t,y) ; t [t0, t0 + T ], |y| ||+ |f(t0,)| (eLT 1)/L}.On en dduit immdiatement max

    n=1,...,N|n| Khp, o

    K =1

    (p+ 1)!max

    (t,y)D

    f(p)(t,y) + 1p!

    max(t,y)Dh[0,h0]

    php (t,y;h) . (3.27)

  • mathL3 2009/6/17 11:37 page 175 #194

    175

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    II.4.3. tude asymptotique de lerreur de discrtisation

    Nous avons dj remarqu dans la partie prcdente que les majorations a priori de lerreur dediscrtisation sont beaucoup trop larges en gnral. Nous allons donc chercher une estimationplus raliste en tudiant son comportement asymptotique.

    Thorme 3.19. Soit f Cp+1([t0, t0 + T ]R) et Cp+1([t0, t0 + T ]R [0,h0]). Si lamthode un pas est stable, dordre p, et si h = O(hp), lerreur de discrtisation vrie

    en = hpe1(tn) + ( h)e0(tn) + O(h

    p+1) , (3.28)

    o les fonctions e0 et e1 sont les solutions respectives de{e 0(t) =

    fy

    (t,y(t))e0(t), t [t0, t0 + T ]e0(t0) = 1

    (3.29)

    {e 1(t) =

    fy

    (t,y(t))e1(t) + (t, y(t)), t [t0, t0 + T ]e1(t0) = 0

    (3.30)

    avec (t, y) := 1(p+ 1)! f

    (p)(t,y) 1p!

    php

    (t,y; 0) pour tout t [t0, t0 + T ], pour tout y R.

    Preuve. Soit y Cp+2([t0, t0 + T ]) la solution du problme de Cauchy (3.15). Nous avons,en utilisant la formule de Taylor,

    y(tn+1) = y(tn) + hf(tn,y(tn)) +h2

    2f(1)(tn,y(tn)) + + h

    p+1

    (p+ 1)!f(p)(tn,y(tn))

    +hp+2

    (p+ 2)!f(p+1)(n,y(n)) ,

    o n ]tn, tn+1[ . Nous avons, de mme,

    (tn,y(tn);h) = (tn,y(tn); 0) + h

    h(tn,y(tn); 0) + + h

    p

    p!p

    hp(tn,y(tn); 0)

    +hp+1

    (p+ 1)!p+1

    hp+1(tn,y(tn); h) ,

    o h ]0,h0[. Comme la mthode est dordre p, on obtient daprs (3.24), pour n = 0, ...,N 1,y(tn+1) = y(tn) + h(tn,y(tn);h) + hp+1(tn,y(tn)) + O(hp+2) . (3.31)

    Dautre part, si yn, n = 0, . . . ,N est la solution du schma (3.16), on a lgalit

    (tn,yn;h) (tn,y(tn);h) = (tn,y(tn) en;h) (tn,y(tn);h)

    = en

    y(tn,y(tn);h) +

    12e2n

    2

    y2(tn, yn;h)

    avec yn compris entre y(tn) et yn, do

    (tn,yn;h) = (tn,y(tn);h) en

    y(tn,y(tn); 0) hen

    2

    yh(tn,y(tn); h)

    +12e2n

    2

    y2(tn, yn;h) , h ]0,h[ .

  • mathL3 2009/6/17 11:37 page 176 #195

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    176

    En remarquant que /y(t,y; 0) = f/y(t,y) car la mthode est consistante et en utilisantle fait que en = O(hp), on obtient

    yn+1 = yn + h(tn,y(tn);h) henf

    y(tn,y(tn)) + O(hp+2) . (3.32)

    On dduit de (3.31) et (3.32) en+1 = en + hen(f/y)(tn,y(tn)) + hp+1(tn,y(tn)) + O(hp+2).Introduisons maintenant, pour n 0, zn := en hpe1(tn) ( h)e0(tn), n 0. Daprs laformule de Taylor, on a les galits

    e0(tn+1) = e0(tn) + hf

    y(tn,y(tn))e0(tn) + O(h2),

    e1(tn+1) = e1(tn) + hf

    y(tn,y(tn))e1(tn) + h(tn,y(tn)) + O(h2) ,

    do zn+1 = zn+h(f/y)(tn,y(tn)) zn+O(hp+2). La fonction f tant lipschitzienne par rapport la variable y, on a la majoration |f/y(t,y)| L pour tout t [t0, t0 + T ], pour tout y R.On en dduit |zn+1| (1+ hL) |zn|+Chp+2, o C est une constante positive et donc, daprs lelemme 3.2, |zn| Chp+1(eLT 1)/L car z0 = 0, ce qui dmontre le thorme. n

    Application 1 Extrapolation la limite de Richardson On note, comme dans lapplica-tion propose dans la section I.4, y(t;h) lapproximation de y au temps t calcule avec le pas het y(t, rh) lapproximation calcule avec le pas rh. Daprs le thorme 3.19, on a les galits

    y(t;h) = y(t) hpe1(t) ( h)e0(t) + O(hp+1),y(t; rh) = y(t) (rh)pe1(t) ( h)e0(t) + O(hp+1) .

    On en dduit (y(t; rh) rpy(t;h))/(1 rp) = y(t) ( h)e0(t) + O(hp+1) et si h =O(hp+1), on obtient ainsi une approximation de y en O(hp+1).

    Application 2 Approximation de lerreur de discrtisation On cherche une approxima-tion de lerreur de discrtisation en en calculant des valeurs approches de e1(tn), e0(tn) et enngligeant le terme dordre p+ 1 dans (3.28). Pour cela, il parat ncessaire de connatre :

    1) la solution exacte y(t) du problme de Cauchy ;

    2) la fonction f/y ;

    3) la fonction .

    La premire condition peut tre leve en remarquant quon peut remplacer y(tn) par yn, ce quientrane sur e1(tn) et e0(tn) une erreur dordre p et donc pour en une erreur dordre p+ 1 quipeut tre nglige, tant donn quon a dj nglig des termes de cet ordre. On suppose que ladrive f/y se calcule facilement. Il reste alors obtenir une approximation de , ce que nousnous proposons de faire. Soient (t,y) [t0, t0 + T ] R et z la solution du problme de Cauchyz (s) = f(s, z(s)) , z(t) = y. Daprs (3.31), on a lgalit

    z(t+ h) = y+ h(t,y;h) + hp+1(t,y) + O(hp+2) . (3.33)

    On peut aussi exprimer z(t+ h) en fonction de y en utilisant deux fois le pas h/2 :

    z(t+h

    2) = y+

    h

    2(t, y;

    h

    2) +

    (h

    2

    )p+1(t, y) + O(hp+2),

    z(t+ h) = z(t+h

    2) +

    h

    2(t +

    h

    2, z(t+

    h

    2);

    h

    2) +

    (h

    2

    )p+1(t+

    h

    2, z(t+

    h

    2)) + O(hp+2) .

  • mathL3 2009/6/17 11:37 page 177 #196

    177

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    Si on limine z(t+ h2 ) entre ces deux quations, on obtient

    z(t+ h) = y+h

    2

    ((t,y;

    h

    2) +(t+

    h

    2,y+

    h

    2(t,y;

    h

    2);

    h

    2)

    )+ 2

    (h

    2

    )p+1(t,y) + O(hp+2) .

    (3.34)

    Les relations (3.33) et (3.34) permettent dobtenir une approximation de :

    (t,y) =hp

    1 2p

    (12(t,y;

    h

    2) +

    12(t +

    h

    2,y+

    h

    2(t, y;

    h

    2);

    h

    2) (t,y;h)

    )+ O(h) .

    Lquation (3.30) peut alors sintgrer en utilisant le schma

    en+11 = en1 + h

    f

    y(tn,yn)en1 + h(tn,yn) , e

    01 = 0 ,

    o

    (tn,yn) =hp

    1 2p

    (12(tn,yn;

    h

    2) +

    12(tn +

    h

    2,yn +

    h

    2(tn +

    h

    2,yn +

    h

    2(tn,yn;

    h

    2);

    h

    2) (tn,yn;h)

    ).

    De la mme faon, la solution approche de lquation (3.29) est donne par le schma{en+10 = e

    n0 + h

    fy

    (tn,yn)en0e00 = 1 .

    On obtient alors e1(tn) = en1 + O(h), e0(tn) = en0 + O(h) et nalement

    en = hpen1 + ( h)e

    n0 + O(h

    p+1) .

    II.5. Exemples de mthodes un pas

    II.5.1. Mthode du dveloppement de Taylor

    Lide la plus simple pour construire une mthode un pas consiste utiliser directement ledveloppement de Taylor de la solution y(t) en chaque point tn. Si f Cp([t0, t0 + T ] R), onpeut poser

    (t,y;h) = f(t, y) +h

    2f(1)(t,y) + + h

    p1

    p!f(p1)(t,y) .

    La mthode est videmment dordre p et, si p = 1, on retrouve la mthode dEuler. Calculonsla constante K qui intervient dans lerreur de troncature. Nous avons, daprs (3.27),

    K =1

    (p+ 1)!max

    (t,y)D|f(p)(t,y)| +

    1p!

    max(t,y)Dh[0,h0]

    php

    (t,y;h) .

    Comme p/hp(t,y;h) = 0, il reste donc

    K =1

    (p+ 1)!max

    (t,y)D|f(p)(t,y)| .

    tudions maintenant la stabilit de la mthode. Daprs le lemme 3.12, une condition susantede stabilit est que la fonction vrie une condition de Lipschitz en y. Nous supposons quechaque fonction f(k), (0 k p 1) satisfait une condition de la formef(k)(t,y) f(k)(t, z) Lk |y z| , t [t0, t0 + T ], y, z R , L0 = L .

  • mathL3 2009/6/17 11:37 page 178 #197

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    178

    Sous ces hypothses, la fonction vrie

    |(t,y;h) (t, z;h)| (L +

    h0

    2L1 + + h

    p10

    p!Lp1

    )|y z| , h [0,h0],

    et la constante de Lipschitz est alors donne par

    = L+h0

    2L1 + + h

    p10

    (p 1)!Lp1 .

    La mthode du dveloppement de Taylor satisfait les hypothses du corollaire 3.17 et est doncconvergente. Malheureusement, il est clair quelle prsente de graves inconvnients du pointde vue pratique. Elle ncessite lvaluation de p fonctions f, . . . , f(p1) et, par ailleurs, lorsquep crot, la complexit des expressions analytiques de ces fonctions augmente trs vite. Cettemthode est donc en gnral viter, sauf dans des cas trs simples.

    II.5.2. Mthodes de Runge-Kutta

    On cherche maintenant dterminer une mthode dordre p, ne ncessitant pas le calcul def(1), . . . , f(p1). La solution du problme de Cauchy vrie y(tn+1) = y(tn) +

    tn+1tn

    f(t,y(t))dt.La mthode dEuler explicite est obtenue en utilisant la formule dintgration des rectangles gauche pour le calcul de lintgrale. Lide, pour construire dautres mthodes, est dutiliserdautres formules de quadrature pour le calcul de cette intgrale.

    1) Si on utilise la mthode des rectangles droite, on obtient la mthode dEuler implicite(ou rtrograde)

    yn+1 = yn + hf(tn+1,yn+1) . (3.35)

    Cette mthode est implicite car le calcul de yn+1 ncessite la rsolution dune quationnon linaire. On montrera plus loin que si f satisfait une condition de Lipschitz en y,lquation (3.35) admet une solution unique si h est assez petit. Lerreur de troncaturescrit

    n+1 =1h(y(tn+1) y(tn)) f(tn+1,y(tn+1)) =

    h

    2y (n),

    avec n ]tn, tn+1[. Le schma est donc dordre 1.2) Si on utilise la mthode des trapzes pour le calcul de lintgrale, on obtient la mthode

    de Crank-Nicolson 1, savoir

    yn+1 = yn +h

    2(f(tn,yn) + f(tn+1,yn+1)) .

    Cest encore une mthode implicite, admettant une solution unique pour h assez petit.Lerreur de troncature est donne par

    n+1 =1h(y(tn+1) y(tn))

    12(f(tn,y(tn)) + f(tn+1,y(tn+1)))

    et, en utilisant la formule de Taylor, on vrie facilement que cette mthode est dordre 2.

    1. Mthode introduite vers 1947 pour la rsolution de lquation de la chaleur, par la mathmaticiennebritannique Phillis Nicolson (1917-1968), et son compatriote, le physicien John Crank (1916-2006).

  • mathL3 2009/6/17 11:37 page 179 #198

    179

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    3) Lintgrale peut tre approche en utilisant la rgle du point milieu tn+1tn

    f(t,y(t))dt h f(tn +h

    2,y(tn +

    h

    2))

    et on remplace la valeur inconnue y(tn+ h2 ) par son approximation obtenue par la mthodedEuler. On obtient ainsi une mthode explicite, la mthode dEuler modie :

    yn+1 = yn + hf(tn +h

    2,yn +

    h

    2f(tn,yn)).

    On vrie que cette mthode est dordre 2.

    4) Dans la formule des trapzes, pour obtenir un schma explicite, on remplace y(tn+1) parlapproximation obtenue par la mthode dEuler explicite. On obtient la mthode de Heun :

    yn+1 = yn +h

    2(f(tn,yn) + f(tn + h, yn + hf(tn,yn))) .

    On vrie encore que cette mthode est dordre 2.

    On peut tendre ces rsultats en utilisant des formules de quadrature plus gnrales. On sedonne q rels c1, ...cq (distincts ou non) et on dnit les formules de quadrature

    ci0

    (s)ds

    qj=1

    aij(cj), 1 i q10(s)ds

    qj=1

    bj(cj)

    . (3.36)

    On pose alors tn,i = tn + cih et lintgraletn+1tn

    f(t,y(t))dt est approche par

    h

    pj=1

    bjf(tn,j,y(tn,j)) ;

    les valeurs inconnues y(tn,j) sont remplaces par leurs approximations yn,j, obtenues en utilisantles formules dintgration (3.36). La mthode de Runge-Kutta est ainsi dnie par

    yn,i = yn + h

    qj=1

    aijf(tn,j,yn,j), 1 i q

    yn+1 = yn + h

    qj=1

    bjf(tn,j,yn,j). (3.37)

    Si on connat yn, les valeurs yn,i, 1 i q, sont solutions dun systme de q quations q inconnues qui peut tre implicite. Nous dmontrerons plus loin que ce systme admet unesolution unique pour h assez petit, lorsque f vrie une condition de Lipschitz en y. Ce schmapeut encore scrire sous la forme gnrale yn+1 = yn + h(tn,yn;h), o la fonction (t,y;h)est dnie par les quations

    yi = y+ h

    qj=1

    aijf(t+ cjh,yj) , 1 i q, (3.38)

    (t,y;h) =q

    j=1

    bjf(t + cjh,yj) . (3.39)

  • mathL3 2009/6/17 11:37 page 180 #199

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    180

    Une mthode de Runge-Kutta est donc compltement dnie si on connat les coecientsci, aij, bj, (1 i, j q). On la reprsente laide du tableau :

    c1 a11 . . . . . . . . . a1qc2 a21 . . . . . . . . . a2q. . . . . . . . . . . . . . . . . .cq aq1 . . . . . . . . . aqq

    b1 . . . . . . . . . bq

    Remarque. La mthode de Runge-Kutta peut galement scrire sous la forme suivante :

    kn,i = f(tn,i,yn + hq

    j=1

    aijkn,j), 1 i q, (3.40)

    yn+1 = yn + h

    qj=1

    bjkn,j. (3.41)

    On rsout alors le systme (3.40) de q quations q inconnues kn,i, 1 i q. Lquation(3.41) permet ensuite de calculer yn+1.

    Exemple 3.20. La mthode est reprsente dans le tableau suivant :

    0 0 01 1

    1

    Pour = 0, cest la mthode dEuler explicite, pour = 1, la mthode dEuler implicite et

    pour =12, on retrouve la mthode de Crank-Nicolson.

    Exemple 3.21. La mthode de Runge-Kutta classique est reprsente par le tableau suivant :

    0 0 0 0 012

    12 0 0 0

    12 0

    12 0 0

    1 0 0 1 016

    13

    13

    16

    En utilisant la forme ((3.40)-(3.41)), elle scrit donc

    kn,1 = f(tn,yn), kn,2 = f(tn +h

    2,yn +

    h

    2kn,1),

    kn,3 = f(tn +h

    2,yn +

    h

    2kn,2), kn,4 = f(tn + h, yn + hkn,3),

    yn+1 = yn +h

    6(kn,1 + 2kn,2 + 2kn,3 + kn,4) .

    Test 3.6.

    Montrer que le problme de Cauchy y (t) =2t, y(0) = 0 est rsolu exactement par lamthode dEuler modie.

    Test 3.7.

    1) Calculer la solution exacte du problme deCauchy y (t) = 2ty(t), y(1) = e1.

  • mathL3 2009/6/17 11:37 page 181 #200

    181

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    2) crire la mthode de Heun pour ce problme(y0 = e1) et calculer e1(t).

    Test 3.8.

    On considre le problme de Cauchy y =y, y(0) = 1. Calculer la solution exacte et

    la solution approche obtenue avec la mthodede Crank-Nicolson. Conclusion ?

    Test 3.9.

    On considre le problme de Cauchy y (t) =My(t), y(0) = y0 donne, y Rp, M

    Rp,p. crire les mthodes dEuler, Euler mo-die et Heun pour ce problme. Montrer quedans chacun des cas, la solution numrique estdonne par yn+1 = R(hM)yn et dterminerR.

    Test 3.10.

    Mettre lquation direntielle y (t) + y(t) =0, y(0) = 1, y (0) = 1 sous la forme dcritedans le test 3.9. Calculer la solution exacte et lasolution approche par la mthode de Heun sur[0, 1] avec le pas h = 12 et le pas h =

    13 .

    II.6. tude des mthodes de Runge-Kutta

    II.6.1. Existence de la solution et stabilit des mthodes de Runge-Kutta

    Nous allons maintenant tudier lexistence dune solution du systme (3.37), puis la stabilit desmthodes de Runge-Kutta. Introduisons les matrices A et C Rq,q et les vecteurs b et e Rq :

    A = (aij)1i,jq , C = diag(ci)1iq , b = (bi)1iq et e = (1, . . . , 1) ,

    les aij, les bi et les ci tant ceux dont dpend le schma (3.37).

    Si la matrice A est triangulaire infrieure strictement (i.e. i j=aij = 0), la mthode deRunge-Kutta est explicite et le systme (3.37) admet videmment une solution. Si A est trian-gulaire infrieure (i.e. i < j=aij = 0), la mthode est semi-implicite et lon rsout lune aprslautre q quations scalaires. Sinon, la mthode de Runge-Kutta est implicite.

    Le thorme suivant donne une condition sur h pour que la solution du systme (3.37) existe.Notons |A| la matrice de Rq,q dnie par |A| := (|aij|)1i,jq et (|A|) son rayon spectral.

    Thorme 3.22. On suppose que f satisfait la condition de Lipschitz (3.7). Si h vriehL(|A|) < 1, la mthode de Runge-Kutta admet une solution unique.

    Pour dmontrer ce rsultat, nous utiliserons un thorme du point xe que nous rappelons ici(voir le chapitre 6, section III, de Mathmatiques L2, Pearson Education, 2007).

    Rappel Le thorme du point xe

    Soit E un espace de Banach, une application continue de E dans E. On suppose quilexiste k [0, 1[, tel que

    u, v E, (u) (v) k u v ,alors lapplication admet un point xe unique.

    Nous utiliserons galement le lemme suivant.

  • mathL3 2009/6/17 11:37 page 182 #201

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    182

    Lemme 3.23. Soient E un espace de Banach et une application continue de E dans E telleque lune des itres m soit contractante. Alors lapplication admet un point xe unique.

    Preuve. Si m est contractante, elle admet un point xe unique. Si a est un point xe de ,il est aussi un point xe de m et il est donc unique. Si a est le point xe de m, on a lgalitm+1(a) = (m(a)) = (a) = m((a)), ce qui prouve que (a) est un point xe de m,donc (a) = a et admet un point xe unique. n

    Preuve. (du thorme 3.22). Notons Y le vecteur de Rq de composantes Y = (yi)1iq. Si(yi)1iq est solution du systme (3.38), on a lgalit Y = (Y), o est lapplication de Rq

    dans Rq dnie par (Y) = (i(Y))1iq , avec i(Y) = y+hq

    j=1 aijf(t+ cih, yi), i = 1, . . . ,q.La mthode de Runge-Kutta admet une solution unique si admet un point xe unique. SoientY et Z Rq. Comme la fonction f satisfait (3.7), on obtient

    |i(Y) i(Z)| hLq

    j=1

    |aij| |yj zj| .

    Si on munit Rq de la norme Y := maxi=1,..,q

    |yi|, et que lon note

    A := maxY =0

    AYY

    la norme matricielle associe, on en dduit (Y) (Z) hL |A| Y Z. Pour tout

    > 0, on peut trouver une matrice inversible H, telle que hL |A| = HBH1, o

    B =

    1 1 0 0 2 2 0 ...

    ......

    ... 0...

    ......

    ......

    ... 00 0 q1 q10 0 q

    ,

    les (i), 1 i q tant les valeurs propres de hL |A| et i = 0 ou . Ces valeurs propressont par hypothse de module strictement infrieur 1. On peut donc choisir > 0 tel queB < 1, do (hL |A|)n H Bn H1, et il existe n N tel que (hL |A|)n < 1.Lapplication n est alors contractante et admet un point xe unique daprs le lemme 3.23.La mthode de Runge-Kutta admet donc une solution unique si hL(|A|) < 1. n

    Thorme 3.24. Si f satisfait (3.7) et si h0L(|A|) < 1, la mthode de Runge-Kutta eststable pour h [0,h0].

    Preuve. Pour dmontrer la stabilit de la mthode de Runge-Kutta, il sut de montrer que vrie une condition de Lipschitz en y. Si y, z R, t [t0, t0 + T ], h [0,h0], on a lgalit

    (t, y;h) (t, z;h) =q

    j=1

    bj (f(t+ cjh,yj) f(t + cjh, zj)) .

  • mathL3 2009/6/17 11:37 page 183 #202

    183

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    On en dduit

    |(t, y;h) (t, z;h)| Lq

    j=1

    |bj| |yj zj| . (3.42)

    Il sut donc de majorer |yj zj| , 1 j q en fonction de |y z|. Daprs (3.38), on a lamajoration

    |yi zi| |y z| + hLq

    j=1

    |aij| |yj zj|, 1 i q .

    Si Y et Z sont les vecteurs de Rq dnis par Y = (yi)1iq et Z = (zi)1iq et que lonnote |Y Z| le vecteur (|yi zi|)1iq, lingalit prcdente scrit vectoriellement |Y Z| |y z| e+ h0L |A| |Y Z|. On en dduit par rcurrence que pour tout n 0

    |Y Z| |y z| (I+ h0L |A|+ + hn0 Ln |A|n)e+ hn+10 Ln+1 |A|n+1 |Y Z| .Comme (h0L |A|) < 1, par passage la limite lorsque n +, on obtient

    |Y Z| |y z| (I h0L |A|)1e

    et donc Y Z |y z| (I h0L|A|)1. On dduit de cette ingalit et de (3.42) que|(t,y;h) (t, z;h)| |y z| avec := L(I h0L|A|)1 qj=1 |bj|. nRemarque. Si la mthode de Runge-Kutta est explicite, (|A|) = 0 et donc la mthode eststable.

    II.6.2. Ordre dune mthode de Runge-Kutta

    Les thormes suivants sont consacrs ltude de lordre dune mthode de Runge-Kutta.

    Thorme 3.25. Une condition ncessaire et susante pour quune mthode de Runge-Kutta soit consistante est que tbe = 1. Une condition ncessaire et susante pour quunemthode de Runge-Kutta soit dordre 2 scrit

    tbe = 1 et tbCe = tbAe =12.

    Preuve. Daprs le lemme 3.11, une condition ncessaire et susante pour que la mthode deRunge-Kutta soit consistante est que (t,y; 0) = f(t,y), t [t0, t0 + T ], y R. Or, (t,y; 0) =q

    j=1 bjf(t,y). La mthode est donc consistante si et seulement siq

    j=1 bj = 1. La mthode deRunge-Kutta est dordre 2 si on a, de plus,

    h(t,y; 0) =

    12f(1)(t,y) . (3.43)

    Par drivation des relations (3.38) et (3.39), on obtient

    yi

    h(t,y;h) =

    qj=1

    aijf(t+ cjh, yj) + hq

    j=1

    aij

    (cj

    f

    t(t+ cjh,yj) +

    f

    y(t+ cjh,yj)

    yj

    h

    )et

    h(t,y;h) =

    qi=1

    bi

    (ci

    f

    t(t+ cih, yi) +

    f

    y(t+ cih,yi)

    yi

    h

    ),

  • mathL3 2009/6/17 11:37 page 184 #203

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    184

    do

    h(t,y; 0) =

    qi=1

    bi

    (ci

    f

    t(t,y) +

    f

    y(t,y)

    (q

    j=1

    aijf(t,y)

    )).

    La relation (3.43) sera donc vrie pour toute fonction f de classe C1 si et seulement si tbCe = 12et tbAe = 12 . n

    Pour dterminer des conditions ncessaires et susantes pour quune mthode de Runge-Kuttasoit dordre 3 ou 4, on suppose que les formules de quadrature (3.36) sont exactes pour lesfonctions constantes, cest--dire ci =

    qj=1 aij ou encore Ae = Ce.

    Thorme 3.26. Supposons que Ae = Ce. Une condition ncessaire et susante pour quunemthode de Runge-Kutta soit dordre 3 scrit

    tbe = 1, tbCe =12, tbC2e =

    13, tbACe =

    16. (3.44)

    Elle sera dordre 4 si et seulement si les conditions supplmentaires suivantes sont satisfaites :

    tbC3e =14, tbAC2e =

    112

    , tbA2Ce =124

    , tbCACe =18. (3.45)

    Preuve. La mthode est dordre 3 (resp. 4) si lerreur de troncature

    n+1 =1h(y(tn+1) y(tn)) (tn,y(tn);h)

    vrie n+1 = O(h3) (resp. O(h4)). Nous dveloppons la dmonstration pour lordre 4, lordre3 sen dduisant immdiatement. Daprs (3.39), on a (tn,y(tn);h) =

    qi=1 bif(tn,i, zn,i),

    o (zn,i)1iq sont solutions du systme zn,i = y(tn) + hq

    j=1 aijf(tn,j, zn,j), i = 1, . . . ,q (cesystme admet une solution unique pour hL(|A|) < 1). Lerreur de troncature peut alors scrire

    n+1 = 1,n+1 + 2,n+1, o

    1,n+1 :=1h

    (y(tn+1) y(tn) h

    qi=1

    biy(tn,i)

    ),

    2,n+1 :=

    qi=1

    bi (f(tn,i,y(tn,i)) f(tn,i, zn,i)) .

    En utilisant la formule de Taylor, on obtient

    1,n+1 =

    (1

    qi=1

    bi

    )y (tn) + h

    (12

    qi=1

    bici

    )y (tn) + h2

    (16

    12

    qi=1

    bic2i

    )y(3)(tn)

    +h3

    (124

    16

    qi=1

    bic3i

    )y(4)(tn) + O(h

    4) .

    Si on choisit f(t, y) = ktk1, k = 1, 2, 3, 4 , alors y(t) = tk et 2,n+1 = 0 car f ne dpend pas de y.Une condition ncessaire pour que la mthode soit dordre 4 scrit tbe = 1, tbCe = 1/2, tbC2e =1/3, tbC3e = 1/4. Lorsque lon suppose ces relations vries, on obtient n+1 = 2,n+1+O(h4).

  • mathL3 2009/6/17 11:37 page 185 #204

    185

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    Estimons maintenant la quantit y(tn,i) zn,i (1 i q). Daprs la formule de Taylor, enutilisant la relation Ae = Ce, on a

    y(tn,i) y(tn) h

    qj=1

    aijy(tn,j) = h2

    (12c2i

    qj=1

    aijcj

    )y (tn)

    +h3

    (16c3i

    12

    qj=1

    aijc2j

    )y(3)(tn) + O(h

    4) .

    On en dduit

    y(tn,i) zn,i = h

    qj=1

    aij (f(tn,j,y(tn,j)) f(tn,j, zn,j)) + h2(

    12c2i

    qj=1

    aijcj

    )y (tn)

    +h3

    (16c3i

    12

    qj=1

    aijc2j

    )y(3)(tn) + O(h

    4) (3.46)

    et, comme la fonction f est lipschitzienne par rapport y, on obtient

    y(tn,i) zn,i = h2

    (12c2i

    qj=1

    aijcj

    )y (tn) + O(h3) .

    En notant la fonction dnie par (t) = f/y(t,y(t)), on a alors

    f(tn,i,y(tn,i)) f(tn,i, zn,i) = (y(tn,i) zn,i)(tn) + O(h3)

    = h2

    (12c2i

    qj=1

    aijcj

    )y (tn)(tn) + O(h3) .

    En reportant cette expression dans (3.46), on obtient

    y(tn,i) zn,i = h2

    (12c2i

    qj=1

    aijcj

    )y (tn) + h3

    (16c3i

    12

    qj=1

    aijc2j

    )y(3)(tn)

    +h3q

    j=1

    (12aijc

    2j aij

    qk=1

    ajkck

    )y (tn)(tn) + O(h4) .

    On en dduit

    n+1 =

    qi=1

    bi(y(tn,i) zn,i)(tn,i) + O(h4)

    = (tn)

    qi=1

    bi(y(tn,i) zn,i) + h(tn)

    qi=1

    bici(y(tn,i) zn,i) + O(h4)

    = h2(tn)y(tn)

    qi=1

    bi

    (12c2i

    qj=1

    aijcj

    )+ h3(tn)y

    (3)(tn)

    qi=1

    bi

    (16c3i

    12

    qj=1

    aijc2j

    )

    +h32(tn)y(tn)

    qi=1

    bi

    (q

    j=1

    12aijc

    2j

    qj=1

    aij

    qk=1

    ajkck

    )

    +h3 (tn)y (tn)q

    i=1

    bici

    (12c2i

    qj=1

    aijcj

    )+ O(h4).

  • mathL3 2009/6/17 11:37 page 186 #205

    Part

    ieI.

    An

    aly

    sen

    um

    riq

    ue

    186

    Une condition susante pour que la mthode soit dordre 4 est donc

    tbACe =12tbC2e =

    16, tbAC2e =

    13tbC3e =

    112

    ,

    tbA2Ce =12tbAC2e =

    124

    , tbCACe =12tbC3e =

    18.

    Il reste montrer que cette condition est ncessaire. Si on prend f(t,y) = y + 2t t2, alors(t) = 1 et y(t) = t2, do n+1 = 2h2

    ( 12tbC2e tbACe

    )+ 2h3

    ( 12tbAC2e tbA2Ce

    )+ O(h4)

    et, pour que la mthode soit dordre 4, il faut tbC2e/2 = tbACe et tbAC2e/2 = tbA2Ce. Sion prend maintenant f(t,y) = y + 3t2 t3, alors y(t) = t3 et on a encore (t) = 1, do

    n+1 = h

    3 (tbC3e 3tbAC2e)+O(h4). Pour que la mthode soit dordre 4, il faut donc que lonait tbC3e/3 = tbAC2e. En choisissant maintenant f(t,y) = ty t3 + 2t, on obtient (t) = 1et y(t) = t2, do n+1 = h3 (tbC3e 2tbCACe) + O(h4). Les conditions (3.44) et (3.45) sontdonc ncessaires pour que la mthode soit dordre 4. On en dduit le thorme. n

    Exemple 3.27. La mthode de lexemple 3.21 est dordre 4.

    Test 3.11.

    On considre la mthode de Runge-Kutta semi-implicite dnie par

    01 1 2

    1/2 1/2

    Dterminer pour que la mthode soit dordre3.

    Test 3.12.

    Montrer que si la mthode de Runge-Kutta estdordre 4, la formule dintgration

    10(t)dt q

    j=1 bj(tj) est exacte pour les polynmes dedegr infrieur ou gal 3.

    II.6.3. Contrle du pas

    Comme pour la mthode dEuler, le contrle du pas ncessite une approximation de lerreur detroncature. On considre pour cela une autre mthode de Runge-Kutta dordre p + 1, dniepar la fonction , et on note n+1 son erreur de troncature n+1 = 1h (y(tn+1) y(tn))

    (tn,y(tn);h). On a donc

    n+1 n+1 = (tn,y(tn);h) (tn,y(tn);h)

    = (tn,yn;h) (tn,yn;h) + (y(tn) yn)

    (

    y(tn,n;h)

    y(tn, n;h)

    ),

    o n est compris entre yn et y(tn). Or y(tn) yn = O(hp). On en dduit

    n+1 n+1 = (tn,yn;h) (tn,yn;h)

    +(y(tn) yn)

    (

    y(tn, n; 0)

    y(tn,n; 0)

    )+ O(hp+1) .

    Mais les mthodes tant consistantes, on a (/y)(t,y; 0) = (/y)(t, y; 0) = (f/y)(t,y).De plus , n+1 = O(hp+1) et donc n+1 = (tn,yn;h) (tn,yn;h) + O(hp+1). La quantit

    n+1 = (tn,yn;h) (tn,yn;h) est donc une bonne approximation de n+1. On utilise alorsla mme technique de changement de pas que dans le cas de la mthode dEuler.

  • mathL3 2009/6/17 11:37 page 187 #206

    187

    Ch

    apit

    re3.

    Rs

    olu

    tion

    nu

    mr

    iqu

    edes

    qu

    ati

    ons

    dif

    fre

    nti

    elle

    set

    des

    qu

    ati

    ons

    au

    xdr

    ive

    spart

    ielles

    Pour que le cot de calcul ne soit pas trop important, il faut que ne demande pas tropdvaluations supplmentaires de la fonction f. On utilise pour cela des mthodes de Runge-Kutta embotes RKpp . Supposons que lon ait une mthode de Runge-Kutta dordre p :yn+1 = yn + h

    qi=1 bif(tn,i,yn,i), o les yn,i sont solutions du systme (3.37). On utilise pour

    le calcul de n+1 une mthode dordre p > p, telle que yn+1 = yn + hq

    i=1 bif(tn,i,yn,i) +bq+1f(tn+1,yn+1) . Cette mthode ne ncessite donc pas dvaluations supplmentaires de f. Cesmthodes peuvent tre reprsentes par le tableau suivant :

    c1 a11 . . . . . a1q 0...

    ... . . . . ....

    ......

    ... . . . . ....

    ...cq aq1 . . . . . aqq 01 b1 . . . . . bq 0

    b1 . . . . . bq bq+1

    Exemple 3.28. Mthode RK12 : la mthode dordre 1 est la mthode dEuler. La mthodedordre 2 est la mthode de Heun.

    0 0 01 1 0

    1/2 1/2

    Exemple 3.29. Mthode RK24 : la mthode dordre 4 est la mthode de Runge-Kutta clas-sique.

    0 0 0 0 01/2 1/2 0 0 01/2 0 1/2 0 01 0 0 1 0

    1/6 1/3 1/3 1/6

    III. Les mthodes multipas

    Comme dans les paragraphes prcdents, nous nous intressons la rsolution numrique du pro-blme de Cauchy ((3.1),(3.2)). Si N N, on pose, comme prcdemment, h = T/N, tn = t0+nh,0 n N. Dans le cas des mthodes un pas, la valeur approche yn+1 de y(tn+1) tait obtenue partir de la valeur approche yn de y(tn). Les mthodes multipas (ou mthodes pas mul-tiples) utilisent, elles, plusieurs valeurs approches antrieures yn,yn1, . . . Plus prcisment,une mthode q pas utilise les valeurs approches yn, . . . ,ynq+1 de la solution aux tempstn, . . . , tnq+1.