1 / 8

Résolution numérique des équations différentielles-ea

methodes pour resoudre numu00e9riquement des equations diffu00e9rentielles, <br>by: Elyass ARRAMA

Elyass
Download Presentation

Résolution numérique des équations différentielles-ea

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Résolution numérique des équations différentielles 1. 1. Méthode d’Euler Méthode d’Euler Notre problème est de résoudre Y ‘(t) =f(t,Y(t)) avec t∈ [?,?] (t)=50Y(t)+ Y(t)+√? Par exemple : Y’ Y’(t)=50 C’ad trouver Y(t)=∫f(x,Y(x)) dx Donc pour résoudre ça on peut approximer l’intégral par les méthodes d’intégrations numérique : On subdivise l’intervalled’un pas : h=?−? t0=a , t1 , t2 , …….. tn = b avec tk+1 – tk = h on choisit la la méthode méthode des rectangles des rectangles (gauche ) ∫ ?f f( (x x) )dx dx ≃ ≃(? − ? ) )f f( (a a) ) ? . (gauche ) : ? EA

  2. Y(t)=∫f(x,Y(x)) dx Y(tk+1)- Y(tk) = ∫ Y(tk+1)= Y(tk) + (tk+1-tk) f(tk,Y(tk)) avec tk+1 – tk =h Y(tk+1)= Y(tk) + h f(tk,Y(tk)) D’où : Y Yk+1 = Yk k + + h f(t Si on travaille avec la la méthode méthode de rectangle droite Y Yk+1 = Yk k + + h f(t tk+1 tk f(x,Y(x))dx = (tk+1-tk) f(tk,Y(tk)) k+1= Y h f(tk k,Y ,Yk k) avec Y ) avec Y0 0 =Y(0). de rectangle droite h f(tk+1 =Y(0). k+1= Y k+1,Y ,Yk+1 k+1) ) avec Y avec Y0 0 =Y(0). =Y(0). EA

  3. Revenant a notre exemple : Y’ Y’(t)=50 (t)=50Y(t)+ Avec : Y(0)=1 Y(t)+√? ; sur [0 : Y(0)=1 ; sur [0 ; 1 ; 1] ] h=0, h=0,1 1 (diviser l’intervalle en 10 sous intervalle) la formule c’est : Y Yk+1 f(tk k,Y ,Yk k) ) avec Y Y0 0=1 Y Y1 1=Y Y0 0+ h f(t0 ;Y Y0 0) =1+0,1(50*1+√0 )=6 6 Y Y2 2=Y Y1 1+ h f(t1 ;Y Y1 1) =6+0,1(50*6+√0,1 )=36,0316 Y Y3 3=Y Y2 2+ h f(t2 ;Y Y2 2) =36,0316+0,1(50*300,316+√0,2 )= 216,1343 . . . . . Y Y10 60146678,5926 ? Et avec c’est point on peut approcher la fonction (l’interpolation-DL). k+1= = Y Yk k + + h h f(t =1 ; f(t f(tk k,Y ,Yk k)= )= 50 50Y Yk k+ +√?k k 36,0316 216,1343 10=Y Y9 9+ h f(t9 ;Y Y9 9) =60146678,5926 EA

  4. Et gardons en mémoire qu’on a travaillé avec la méthode des rectangles approcher l’intégral ; donc ca sera très intéressant si on utilise les méthodes des trapèzes / Simpson / trapèzes / Simpson / Gauss Gauss qui vont évidemment nous donner des approximations plus exactes. la méthode des rectangles pour ? ?C’est RUNGE-KUTTA !!!!!!!!!! EA

  5. 2. 2. Méthode de Méthode de RUNGE Si on utilise la méthode du trapèze la méthode du trapèze : : RUNGE- -KUTTA KUTTA : : ? dx ≃ ≃?−? ∫ ?f f( (x x) )dx ? [ [f f( (a a) )+ +f f( (b b)] )] d′où ??+? ?? ≃ ≃? ?[( [(f f( (t tk k, ,y y( (t tk k)) ))+ +f f( (t tk k+ +1 1, ,y y( (t tk k+ +1 1) ))] )] = = ? ?(?,?(?))?? ? [ [Y Y(t (tk k) )+ +Y Y(t (tk+1 k+1) )] ] ∫ Le problème ici je n’aurais pas la forme d’une suite Un+1=f(Un),car 'intégrale dépend des valeurs de Yk et Yk+1 . pour résoudre ce problème ? on revient chez monsieur Euler d'estimer la valeur Yk+1 qui intervient dans f(tk+1,y(tk+1)) . On obtient : = Yk k + + ? Euler afin Y Yk+1 k+1= Y ? ( (A A1 1 + +A A2 2) ) avec   A A1 1= = f f( ( t tk k A A2 2= = f f( ( t tk k+h ; ; y y( (t tk k) ) +h ; ; y y( (t tk k) )+h ) ) +h* *A A1 1) ) On appel ça : Méthode de Méthode de RUNGE RUNGE- -KUTTA KUTTA d’ordre 2 d’ordre 2 EA

  6. Ettttt si on utilise Simpson Simpson??? C’est : Méthode de Méthode de RUNGE RUNGE- -KUTTA ? [ [ f f( (a a) ) + + 4 4 f( f(?+? d′où: KUTTA d’ordre 4 d’ordre 4 ? dx ≃ ≃?−? ∫ ?f f( (x x) )dx ?) ) + + f f( (b b) ) ] ] ??+? ?? ≃ ≃? = =? ?(?,?(?))?? ?[ [ ( ( f f( ( t tk k , , y y( (t tk k) ) ) ) + + 4 4 f f( ( t t(k+1)/2 ? [ [ Y Y( ( t tk k ) ) + + 4 4 Y( (k+1)/2 ; ; y y( ( t t(k 1)/2) ) ) ) + + f f( ( t tk k+ +1 1 ; ; y y( ( t tk k+ +1 1 ) ) ) ) ] ] ∫ (k+ +1)/2 Y( t t(k+1)/2 (k+1)/2 ) ) + + Y Y( ( t tk+1 k+1 ) ) ] ] Encore le problème ☹ Un+1 et U(n+1/2)  Euler On décompose le terme 4Y(t(k+1)/2)= 2Y(t(k+1)/2)+ 2Y(t(k+1)/2) Dans le premier, on remplace y(t(k+1)/2) par sa valeur déduite de la méthode d'Euler explicite explicite .Dans le deuxième terme, on la remplace par sa valeur déduite de la méthode d'Euler implicite d'Euler implicite . . Euler la méthode d'Euler la méthode EA

  7. Les méthodes d'Euler implicite et explicite produisant des erreurs quasi opposées, on a ainsi Les méthodes d'Euler implicite et explicite produisant des erreurs quasi opposées, on a ainsi l'espoir l'espoir de minimiser l'erreur sur le calcul de minimiser l'erreur sur le calcul ? ?  4Y(t(k+1)/2)= 2A A2 2+2A A3 3 On obtient : = Yk k + + ? ? ( (A A1 1+2 Avec A A1 1= = f f( ( t tk k A A2 2= = f f( ( t tk k + +? A A3 3= = f f( ( t tk k + +? A A4 4= = f f( ( t tk k + + h h ; ; y y( (t tk k) ) + + h h* *A A3 3) ) Y Yk+1 k+1= Y +2A A2 2+2 +2A A3 3+ +A A4 4) ) ; ; y y( (t tk k) ) ?h h ; ; y y( (t tk k) ) + +? ?h h ; ; y y( (t tk k) ) + +? ) ) ?h h* *A A1 1) ) ?h h* *A A2 2) ) EA

  8. Application: Application: Y’= Y’= 1 1 - - Y Y  Y Y ‘(t) = On connaît la solution Y=1-?−?  Quesque Quesque ça ça va nous donner RK4 va nous donner RK4 en Y A A1 1= f( 0; y(0) )=1 1 A A2 2= f(1 A A3 3= f(1 ‘(t) = f( t ; Y(t)) = 1 1 - - Y(t) Y(t) ; Y(0)=0 Y(0)=0 en Y1 1=Y(h) =Y(h) ? ? 2h ; y(0)+1 2h ; y(0)+1 2h*A A1 1)=1 1- -? 2h*A A2 2)= 1 1- -? ?h h ?(h h(1- -? (h- -? ?h²) h²) ?h+ h+? A A4 4= f( h ; y(0)+ h*A A3 3)= 1 1- - h(1 D’où Y Y1 1= Y0 + h Qui n'est rien d'autre que le le développement ?h²) h²) 6 (A1+2A2+2A3+A4 ) =h h - - ? h² +? ? h h3 3 - -? ? h² + ?? h h4 4 développement limité limité de la solution exacte Y(h) Y(h) à l'ordre l'ordre 4 4 ? ووووووووحرفنو EA

More Related