TD Corriges
TD Corriges
Analyse Numérique
Exercice 1 :
Soit la fonction f ( x ) = e − x − 2
x
Exercice 2 :
12
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
Exercice 3 :
13
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
Corrigé de l’exercice 1
et h( x )= x + 2
f=
( x ) g( x ) − h( x ) =0 d’où g( x ) = h( x ) les racines de f sont tous les points x d’intersection de
f possède deux racines réelles qui existent respectivement dans le intervalles [-2,1] et [1,2]
Dichotomie :
𝑏𝑏 0−𝑎𝑎 0
ln( )
n min = 𝑙𝑙𝑙𝑙2ε
2
= 5.55 ≈6 itérations
14
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
i ai bi xi f(x i ) εi
0 0 1.5 0.75 -0.633 0.75
1 0.75 1.5 1.125 -0.00447 0.375
2 1.125 1.5 1.3125 0.4029 0.1875
3 1.125 1.3125 1.21875 0.16420 0.09375
4 1.125 1.21875 1.1718 0.0559 0.0468
5 1.125 1.1718 1.14843 0.0048 0.0234
6 1.125 1.14843 1.13671 -0.02 0.01171
Tout l’intervalle final [1.13671,1.14843] est solution du problème. On peut choisir la milieu
de cet intervalle comme solution, donc la solution est : x=(a+b)/2=1.1425
1. 𝑖𝑖 = 0
2. 𝑎𝑎𝑖𝑖 = 0 ; 𝑏𝑏𝑖𝑖 = 1.5
3. 𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶 𝑥𝑥𝑖𝑖 = (𝑎𝑎𝑖𝑖 + 𝑏𝑏𝑖𝑖 )/2 𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐𝑐 𝑓𝑓(𝑥𝑥𝑖𝑖 )
4. 𝑠𝑠𝑠𝑠 𝑓𝑓(𝑎𝑎). 𝑓𝑓(𝑥𝑥𝑖𝑖) < 0 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎
𝑏𝑏𝑖𝑖 = 𝑥𝑥𝑖𝑖 𝑒𝑒𝑒𝑒 𝑎𝑎 𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟 𝑙𝑙𝑙𝑙 𝑚𝑚ê𝑚𝑚𝑚𝑚
sinon
𝑎𝑎𝑖𝑖 = 𝑥𝑥 𝑖𝑖 𝑒𝑒𝑒𝑒 𝑏𝑏 𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟 𝑙𝑙𝑙𝑙 𝑚𝑚ê𝑚𝑚𝑚𝑚
𝑓𝑓𝑓𝑓𝑓𝑓 𝑠𝑠𝑠𝑠
5. 𝑆𝑆𝑆𝑆 𝑎𝑎𝑎𝑎𝑎𝑎(𝑎𝑎𝑖𝑖 − 𝑏𝑏𝑖𝑖 )≥ε 𝑖𝑖 = 𝑖𝑖 + 1
𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 à 3 , 𝑠𝑠𝑠𝑠𝑠𝑠 = (𝑏𝑏𝑛𝑛 + 𝑎𝑎𝑛𝑛 )/2
6. 𝑓𝑓𝑓𝑓𝑓𝑓
Méthode de Newton :
1
Pour x 0 =1 : f(1)*f’’(1)=( e1 -1-2) e = -0.76579 <0 condition non vérifiée. On ne peut
rien dire sur la convergence de la méthode pour x 0 =1 car la condition est suffisante mais non
nécessaire.
15
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
𝑒𝑒 𝑥𝑥 𝑛𝑛 −1 − 𝑥𝑥𝑛𝑛−1 − 2
𝑥𝑥𝑛𝑛 = 𝑥𝑥𝑛𝑛−1 −
𝑒𝑒 𝑥𝑥 𝑛𝑛 −1 − 1
i xi |x i -x i-1 |
0 0
1 1.16395 0.16
2 1.14642 0.017
3 1.146193 0.00033
1. 𝑥𝑥0 = 1
2. 𝑖𝑖 = 1
(𝑒𝑒 𝑥𝑥 𝑖𝑖−1 −𝑥𝑥 𝑖𝑖−1 −2)
3. 𝑥𝑥𝑖𝑖 = 𝑥𝑥𝑖𝑖−1 −
(𝑒𝑒 𝑥𝑥 𝑖𝑖−1 −1)
4. 𝑠𝑠𝑠𝑠 |𝑥𝑥𝑖𝑖 − 𝑥𝑥𝑖𝑖−1 | ≥ 𝜀𝜀 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑥𝑥𝑖𝑖−1 = 𝑥𝑥𝑖𝑖
𝑖𝑖 = 𝑖𝑖 + 1 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 à 3
𝑠𝑠𝑠𝑠 𝑛𝑛𝑛𝑛𝑛𝑛
5. 𝑓𝑓𝑓𝑓𝑓𝑓
La méthode de newton est plus rapide (convergence quadratique) que celle de la dichotomie
(convergence linéaire) elle est aussi plus précise
Corrigé de l’exercice 2
Program DICHOTOMIE BISSECTION
EPS=0.001
write(*,*) ' donner le domaine de la racine'
read(*,*) a, b
if(f(a)*f(b).lt.0.0) then
write(*,*) 'bonnes valeurs initiales'
else
write(*,*) 'changer les valeurs '
goto 20
endif
10 xm=(a+b)/2.
if((f(xm)*f(a).lt.0.0) then
b=xm
else
a=xm
endif
err=abs(a-b)
if(err.le.eps) then
xm=(a+b)/2.
write(*,*) 'La solution est :',xm
else
goto 10
endif
20 end
function f(x)
f=x*exp(x)+3*exp(x)-1
return
end
16
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique
Interpolation Numérique
Exercice 1 :
Exercice 2 :
Exercice 3 :
x 0 1 3 4
f(x) -1 1 3 5
x -1 0 2 3 5
f(x) 0 1 0 -1 0
x -2 -1 0 1 2 3
f(x) -3 -2 -2 0 1 2
26
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
Corrigé de l’exercice 1 :
Rappelons que le polynôme de Lagrange basé sur les points d’appui d’abscisses X 0 , X 1 , X 2 ,
X n est d’ordre n et il s’écrit :
avec
(𝑥𝑥−𝑥𝑥 𝑗𝑗 )
𝐿𝐿𝑖𝑖 (𝑥𝑥 ) = ∏𝑛𝑛𝑗𝑗=0,𝑗𝑗 ≠𝑖𝑖 (𝑥𝑥 −𝑥𝑥
𝑖𝑖 𝑗𝑗 )
(𝑥𝑥−𝑥𝑥 1 ) (𝑥𝑥−0.7) 7
L 0 (x) = (𝑥𝑥 = = −5𝑥𝑥 +
0 −𝑥𝑥 1 ) (0.5−0.7) 2
(𝑥𝑥−𝑥𝑥 0 ) (𝑥𝑥−0.5) 5
L 1 (x)= (𝑥𝑥 = = 5𝑥𝑥 −
1 −𝑥𝑥 0 ) (0.7−0.5) 2
n+1=2 ⇒ n=1 ⇒ Cette interpolation est d’ordre 1 elle est dite linéaire.
3- On ne peut pas utiliser ce polynôme pour calculer f(2) car le contexte de l’interpolation
exige que l’approximation de f dans tout point d’abscisse x par un polynôme est valide si et
seulement si x∈ [x 0 , x n ] et dans ce cas 2 ∉[0.5,0.7] (dans le cas où x< x 0 ou x> x n c’est
une extrapolation).
27
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
4- On cherche le polynôme d’interpolation de f avec 3 points d’appui : (𝑥𝑥0 , 𝑓𝑓(𝑥𝑥0 ))= (0.4,-
0.916) ; (𝑥𝑥1 , 𝑓𝑓(𝑥𝑥1 )) = (0.5,-0.693) ; (𝑥𝑥2 , 𝑓𝑓(𝑥𝑥2 )) = (0.7,-0.357) cette interpolation est dite
quadratique
𝒇𝒇(𝒙𝒙)≅𝑷𝑷𝟐𝟐 (𝒙𝒙) = −𝟎𝟎. 𝟗𝟗𝟗𝟗𝟗𝟗𝑳𝑳𝟎𝟎 (𝒙𝒙) − 𝟎𝟎. 𝟔𝟔𝟔𝟔𝟔𝟔𝑳𝑳𝟏𝟏 (𝒙𝒙) − 𝟎𝟎. 𝟑𝟑𝟑𝟑𝟑𝟑𝑳𝑳𝟐𝟐 (𝐱𝐱)
𝒇𝒇(𝒙𝒙)≅𝑷𝑷𝟐𝟐 (𝒙𝒙) = −𝟏𝟏. 𝟖𝟖𝟖𝟖𝟖𝟖𝒙𝒙𝟐𝟐 + 𝟑𝟑. 𝟖𝟖𝟖𝟖𝟖𝟖𝟖𝟖 − 𝟐𝟐. 𝟏𝟏𝟏𝟏
5- Ln(0.6) approché = 𝑓𝑓(0.6)≅𝑃𝑃2 (0.6) = −1.813 ∗ 0.62 + 3.865 ∗ 0.6 − 2.17 = −0.50368
Ln(0.6) exacte = - 0.5108
Err_abs = 0.00714
6- Plus le nombre de points d’appui augmente est plus l’interpolation est meilleure.
Corrigé de l’exercice 2 :
On veut calculer √115 par interpolation et le comparer avec sa valeur exacte : l’écart entre la
valeur approchée et la valeur exacte représente la précision de l’interpolation.
𝑓𝑓 (𝑥𝑥 ) = √𝑥𝑥 ; points d’appui (𝑥𝑥0 , 𝑓𝑓(𝑥𝑥0 )) = (100,10); (𝑥𝑥1 , 𝑓𝑓(𝑥𝑥1 ))=(121,11) ;
(𝑥𝑥2 , 𝑓𝑓(𝑥𝑥2 ))=(144,12) ; n+1=3 ⇒ interpolation d’ordre 2 (quadratique )
On nous demande pas de déterminer le polynôme mais plutôt calcul directe de √115 par
application numérique dans les différents Li et par la suite la valeur final de √115
28
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
√115 = 𝒇𝒇(𝟏𝟏𝟏𝟏𝟏𝟏)≅𝑷𝑷𝟐𝟐(𝟏𝟏𝟏𝟏𝟏𝟏) = 𝟏𝟏𝟏𝟏 ∗ 𝑳𝑳𝟏𝟏 (𝟏𝟏𝟏𝟏𝟏𝟏) + 𝟏𝟏𝟏𝟏 ∗ 𝑳𝑳𝟏𝟏 (𝟏𝟏𝟏𝟏𝟏𝟏) + 𝟏𝟏𝟏𝟏 ∗ 𝑳𝑳𝟐𝟐 (𝟏𝟏𝟏𝟏𝟏𝟏)
√115 = 𝒇𝒇(𝟏𝟏𝟏𝟏𝟏𝟏)≅𝑷𝑷𝟐𝟐(𝟏𝟏𝟏𝟏𝟏𝟏) = 𝟏𝟏𝟏𝟏 ∗ 𝟎𝟎. 𝟏𝟏𝟏𝟏𝟏𝟏𝟏𝟏𝟏𝟏 + 𝟏𝟏𝟏𝟏 ∗ 𝟎𝟎. 𝟗𝟗𝟗𝟗𝟗𝟗𝟗𝟗𝟗𝟗 + 𝟏𝟏𝟏𝟏 ∗ −𝟖𝟖. 𝟖𝟖𝟖𝟖𝟖𝟖𝟖𝟖 × 10⁻²
On peut obtenir une Précision = 1.0499 × 10−3 avec une interpolation quadratique basée sur
les 3 points d’appui : (𝑥𝑥0 , 𝑓𝑓(𝑥𝑥0 )) = (100,10); (𝑥𝑥1 , 𝑓𝑓(𝑥𝑥1 ))=(121,11) ; (𝑥𝑥2 , 𝑓𝑓(𝑥𝑥2 ))=(144,12)
Corrigé de l’exercice 3 :
x 0 1 3 4
f(x) -1 1 3 5
(𝑥𝑥−1)(𝑥𝑥−3)(𝑥𝑥−4) 1
L 0 (x) = = − (𝑥𝑥 − 1)(𝑥𝑥 − 3)(𝑥𝑥 − 4)
(0−1)(0−3)(0−4) 12
(𝑥𝑥−0)(𝑥𝑥−3)(𝑥𝑥−4) 1
L 1 (x) = (1−0)(1−3)(1−4)
= 𝑥𝑥 (𝑥𝑥 − 3)(𝑥𝑥 − 4)
12
(𝑥𝑥−0)(𝑥𝑥−1)(𝑥𝑥−4) 1
L 2 (x) = (3−0)(3−1)(3−4)
= − 𝑥𝑥 (𝑥𝑥 − 1)(𝑥𝑥 − 4)
6
(𝑥𝑥−0)(𝑥𝑥−1)(𝑥𝑥−3) 1
L 3 (x) = (4−0)(4−1)(4−3)
= 𝑥𝑥 (𝑥𝑥 − 1)(𝑥𝑥 − 3)
12
𝑓𝑓 (𝑥𝑥 )≅𝑃𝑃1 (𝑥𝑥 ) = 𝑓𝑓 (𝑥𝑥0 )𝐿𝐿0 (𝑥𝑥 ) + 𝑓𝑓 (𝑥𝑥1 )𝐿𝐿1 (𝑥𝑥 ) + 𝑓𝑓 (𝑥𝑥2 )𝐿𝐿2 (𝑥𝑥 ) + 𝑓𝑓 (𝑥𝑥3 )𝐿𝐿3 (𝑥𝑥 )
Calcul à compléter.
29
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
x -1 0 2 3 5
f(x) 0 1 0 -1 0
(𝑥𝑥−0)(𝑥𝑥−2)(𝑥𝑥−3)(𝑥𝑥−5) 1
L 0 (x) = (−1−0)(−1−2)(−1−3)(−1−5) = 𝑥𝑥 (𝑥𝑥 − 2)(𝑥𝑥 − 3)(𝑥𝑥 − 5)
72
(𝑥𝑥+1)(𝑥𝑥−2)(𝑥𝑥−3)(𝑥𝑥−5) 1
L 1 (x) = (0+1)(0−2)(0−3)(0−5)
= − (𝑥𝑥 + 1)(𝑥𝑥 − 2)(𝑥𝑥 − 3)(𝑥𝑥 − 5)
30
(𝑥𝑥+1)(𝑥𝑥−0)(𝑥𝑥−3)(𝑥𝑥−5) 1
L 2 (x) = (2+1)(2−0)(2−3)(2−5)
= − 𝑥𝑥(𝑥𝑥 + 1)(𝑥𝑥 − 3)(𝑥𝑥 − 5)
18
(𝑥𝑥+1)(𝑥𝑥−0)(𝑥𝑥−2)(𝑥𝑥−5) 1
L 3 (x) = (3+1)(3−0)(3−2)(3−5)
= − 𝑥𝑥(𝑥𝑥 + 1)(𝑥𝑥 − 2)(𝑥𝑥 − 5)
48
(𝑥𝑥+1)(𝑥𝑥−0)(𝑥𝑥−2)(𝑥𝑥−3) 1
L 4 (x) = (5+1)(5−0)(5−2)(5−3)
= − 𝑥𝑥(𝑥𝑥 + 1)(𝑥𝑥 − 2)(𝑥𝑥 − 3)
180
𝑓𝑓 (𝑥𝑥 )≅𝑃𝑃1 (𝑥𝑥 ) = 𝑓𝑓 (𝑥𝑥0 )𝐿𝐿0 (𝑥𝑥 ) + 𝑓𝑓 (𝑥𝑥1 )𝐿𝐿1 (𝑥𝑥 ) + 𝑓𝑓 (𝑥𝑥2 )𝐿𝐿2 (𝑥𝑥 ) + 𝑓𝑓 (𝑥𝑥3 )𝐿𝐿3 (𝑥𝑥 ) + 𝑓𝑓 (𝑥𝑥4 )𝐿𝐿4 (𝑥𝑥 )
Calcul à compléter.
x -2 -1 0 1 2 3
f(x) -3 -2 -2 0 1 2
(𝑥𝑥+1)(𝑥𝑥−0)(𝑥𝑥−1)(𝑥𝑥−2)(𝑥𝑥−3) 1
L 0 (x) = (−2+1)(−2−0)(−2−1)(−2−2)(−2−3) = − 𝑥𝑥 (𝑥𝑥 + 1)(𝑥𝑥 − 1)(𝑥𝑥 − 2)(𝑥𝑥 − 3)
120
(𝑥𝑥+2)(𝑥𝑥−0)(𝑥𝑥−1)(𝑥𝑥−2)(𝑥𝑥−3) 1
L 1 (x) = (−1+2)(−1−0)(−1−1)(−1−2)(−1−3) = 𝑥𝑥 (𝑥𝑥 + 2)(𝑥𝑥 − 1)(𝑥𝑥 − 2)(𝑥𝑥 − 3)
24
(𝑥𝑥+2)(𝑥𝑥+1)(𝑥𝑥−1)(𝑥𝑥−2)(𝑥𝑥−3) 1
L 2 (x) = = − (𝑥𝑥 + 2)(𝑥𝑥 + 1)(𝑥𝑥 − 1)(𝑥𝑥 − 2)(𝑥𝑥 − 3)
(0+2)(0+1)(0−1)(0−2)(0−3) 12
(𝑥𝑥+2)(𝑥𝑥+1)(𝑥𝑥−0)(𝑥𝑥−2)(𝑥𝑥−3) 1
L 3 (x) = (1+2)(1+1)(1−0)(1−2)(1−3)
= 𝑥𝑥 (𝑥𝑥 + 2)(𝑥𝑥 + 1)(𝑥𝑥 − 2)(𝑥𝑥 − 3)
12
(𝑥𝑥+2)(𝑥𝑥+1)(𝑥𝑥−0)(𝑥𝑥−1)(𝑥𝑥−3) 1
L 4 (x) = (2+2)(2+1)(2−0)(2−1)(2−3)
= − 𝑥𝑥 (𝑥𝑥 + 2)(𝑥𝑥 + 1)(𝑥𝑥 − 1)(𝑥𝑥 − 3)
24
(𝑥𝑥+2)(𝑥𝑥+1)(𝑥𝑥−0)(𝑥𝑥−1)(𝑥𝑥−2) 1
L 5 (x) = (3+2)(3+1)(3−0)(3−1)(3−2)
= 𝑥𝑥(𝑥𝑥 + 2)(𝑥𝑥 + 1)(𝑥𝑥 − 1)(𝑥𝑥 − 2)
120
Calcul à compléter.
30
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique
Exercice 1 :
1- Calculer les valeurs de la dérivée de f aux points : -5, -2, 0.25, 2.25, 3.5, 4, pour h=0.0015
en utilisant :
a- La méthode des différences excentrées en avant.
b- La méthode des différences excentrées en arrière.
c- La méthode des différences centrées.
2- Comparer les résultats avec les valeurs obtenues par la formule analytique de la fonction
dérivée f’, commenter (critère de comparaison : erreur absolue en moyenne).
3- Calculer la valeur de la dérivée de f au point 3.5 par les différences centrées pour les
différentes valeurs de h : 0.00015, 0.0015, 0.015, 0.5.
4- Comparer les résultats avec la valeur f’ (3.5) obtenue par la formule analytique de la
fonction dérivée f’, commenter.
5- Calculer f’’ au point -3 avec h=0.015, comparer le résultat avec celui obtenu en utilisant la
formule analytique de f’’.
Exercice 2 :
1
Soit à déterminer l’intégrale de 𝑓𝑓 (𝑥𝑥 ) = sur l’intervalle [1,4] en utilisant :
𝑥𝑥
18
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
Exercice 3 :
X -0.3 0 0.3 0.6 0.9 1.2 1.5 1.8 2.1 2.4 2.7
Y 0.373 1.0 1.627 2.416 3.529 5.128 7.375 10.433 14.461 19.624 26.083
1- Calculer les valeurs de la dérivée de f dans tous les points Xi par la méthode des
différences centrée. Utiliser le schéma excentré (en avant ou en arrière) dans les bornes de
l’intervalle de définition de f.
2- sur la base du tableau résultant (valeurs de f’ sur l’intervalle [-0.3, 2.7]), calculer, par la
méthode de trapèze, les intégrales suivantes :
3- comparer les résultats obtenus en 2 par les valeurs exactes des différents intégrales sachant
𝑏𝑏
que ∫𝑎𝑎 𝑓𝑓 ′ (𝑥𝑥) = f(b)-f(a), en utilisant comme critère.
19
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
Corrigé de l’exercice 1 :
𝑓𝑓(𝑥𝑥0+ℎ)−𝑓𝑓(𝑥𝑥0)
1-Schéma excentré avant : 𝑓𝑓 ′ (𝑥𝑥0) = ℎ
𝑓𝑓(𝑥𝑥0)−𝑓𝑓(𝑥𝑥0−ℎ)
2-Schéma excentré arrière : 𝑓𝑓 ′ (𝑥𝑥0) =
ℎ
𝑓𝑓(𝑥𝑥0+ℎ)−𝑓𝑓(𝑥𝑥0−ℎ)
3-Schéma centré 𝑓𝑓 ′ (𝑥𝑥0) =
2ℎ
1/ calculer f’(x0) dans les différents points pour h=0.0015 par les différents schémas :
2/ On remarque que le schéma centré est celui qui donne une meilleur approximation de la
dérivée : quantité d’erreur absolue minimale par rapport aux 2 autres schéma.
En moyenne : erreur absolue moyenne pour les 3 schéma sur l’échantillon de 6 points =
Erreur absolue moyenne par le schéma excentré avant = 0.0223
Erreur absolue moyenne par le schéma excentré arrière = 0.0244
Erreur absolue moyenne par le schéma centré = 0.0012
4/ L’écart entre la valeur exacte et la valeur approchée de la dérivée dans un point donnée
tend à s’accroitre quant h est trop grand ou même relativement trop petit. La valeur de h doit
être bien ajustée car elle influe sur la qualité du résultat.
20
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
err_abs=0.00095.
L’approximation de la dérivée par des différences (centrées ou excentrées) est trop sensible
d’une part au paramètre de discrétisation h et d’autre part à l’allure de la fonction elle-même.
Si l’écart entre f(x0) et la valeur de f dans les points adjacents x0+h ou x0-h (f(x0+h) et f(x0-
h)) est important, les 3 schémas risquent d’engendrer des erreurs d’approximation
importantes. Il faut adapter le h selon cet écart.
Corrigé de l’exercice 2 :
Méthode exacte :
En sachant la formule analytique de la fonction qui résulte de l’intégral de 1/x qui est ln
41
∫1 = ln(4) − ln(1) = 1.38629
𝑥𝑥
Pour i=0 : x i =a ; pour i=n-1 : x i+1 =b c’est les borne elles sont présentent une fois dans la
somme ; chaque xi (hors a et b) est présent 2 fois (une fois sous la forme de x i et une fois sous
la forme de x i+1 ce qui justifie que le facteur ½ ne ce multiplie qu’avec a et b)
𝑏𝑏 ℎ
∫𝑎𝑎 𝑓𝑓 (𝑥𝑥 ) = 2 (𝑓𝑓(𝑎𝑎) + 𝑓𝑓(𝑏𝑏)) + ℎ ∑𝑛𝑛−1
𝑖𝑖=1 𝑓𝑓 (𝑥𝑥𝑥𝑥 ) h=x i+1 – x i =(b-a) / n avec n nombre de
4 0.375
∫1 1/𝑥𝑥 = �𝑓𝑓(1) + 𝑓𝑓(4)� + 0.375 ∑𝑛𝑛−1
𝑖𝑖=1 𝑓𝑓 (1 + 𝑖𝑖 ∗ ℎ)=1.3971
2
21
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
𝑏𝑏 ℎ
∫𝑎𝑎 𝑓𝑓(𝑥𝑥) = 3 ∑𝑛𝑛−2
𝑖𝑖=0 (𝑓𝑓 (𝑥𝑥𝑖𝑖 ) + 4𝑓𝑓 (𝑥𝑥𝑖𝑖+1 ) + 𝑓𝑓(𝑥𝑥𝑖𝑖+2 )) i vari avec
un pas de 2
4 8−2
0.375 1 1 1
� 𝑓𝑓(𝑥𝑥) = �( +4 + )
1 3 𝑋𝑋𝑋𝑋 𝑥𝑥𝑖𝑖+1 𝑥𝑥𝑖𝑖+2
𝑖𝑖=0,2
0.375
= (f(x0)+4f(x1)+f(x2) +f(x2)+4f(x3)+f(x4) +f(x4)+4f(x5)+f(x6) +f(x6)+4f(x7)+f(x8))
3
0.375
= (f(a) + 4*(f(x1)+f(x3)+f(x5)+f(x7) + 2 *(f(x2)+f(x4)+f(x6)) + f(b))
3
0.375
= (f(a)+f(b)+ 4* ∑𝑛𝑛−1 𝑛𝑛−2
𝑖𝑖=1,2 𝑓𝑓(𝑥𝑥𝑥𝑥) + 2*∑𝑖𝑖=2,2 𝑓𝑓(𝑥𝑥𝑥𝑥)) =1.386805
3
Début
Lire (a,b,n)
h←(b-a)/n
s←0
pour i←1,n-1,1
s←s+f(a+i*h)
finpour
s←s*h + (f(a)+f(b))*(h/2)
ecrire(s)
fin
22
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique
Début
Lire (a,b,n)
h←(b-a)/n
s_pair←0
s_imp←0
s←0
pour i←1,n-1,2
s_imp←s_imp+f(a+i*h)
finpour
pour i←2,n-2,2
s_pair←s_pair+f(a+i*h)
finpour
Corrigé de l’exercice 3
1- h=0.3
𝑓𝑓(𝑥𝑥0+ℎ)−𝑓𝑓(𝑥𝑥0−ℎ)
Schéma centré 𝑓𝑓 ′ (𝑥𝑥0) =
2ℎ
X -0.3 0 0.3 0.6 0.9 1.2 1.5 1.8 2.1 2.4 2.7
Y 2.1 2.09 2.36 3.17 4.52 6.41 8.839 11.81 15.32 19.37 21.54
1.5
∫0 𝑓𝑓 ′ (𝑥𝑥 ) = exacte : f(1.5)-f(0) = 6.375
Trapèze =6.57735
Erreur absolue =0.20235
Il existe 5 trapèzes :
erreur par trapèze = 0.20235/5 = 0.040
2.1
∫0 𝑓𝑓 ′ (𝑥𝑥 ) = exacte : f(2.1)-f(0) = 13.461
Trapèze =13.7442
Erreur absolue =0.2832
Il existe 7 trapèzes
23
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique
Conclusion
On remarque que l’erreur d’approximation est stable (0.04) dans chaque trapèze cela est
logique puisque h=0.3 est fixe. Néanmoins dans le calcul du dernier intégral l’erreur par
trapèze est relativement doublée. Cela est dû à l’erreur dans le calcul initial de f’(2.7) calculé
par le schéma des différences excentrées en arrière et pas le schéma centré(effet de bord).
Programmes de calcul:
Les programmes sont écrits en langage de programmation Fortran.
Program derivation
ana1=3*x**2-2*exp(x)
davant=(f(x+h)-f(x))/h
darrir=(f(x)-f(x-h))/h
dcentr=(f(x+h)-f(x-h))/(2*h)
erravant=abs(davant-ana1)
errarrir=abs(darrir-ana1)
errcentr=abs(dcentr-ana1)
ana2=6*x-2*exp(x)
dsecon=(f(x-h)-2*f(x)+f(x+h))/h**2
errsecon=abs(dsecon-ana2)
function f(x)
f=x**3-2*exp(x)+1
return
end
24
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique
Exercice 1 :
y−x
y' =
Soit le problème de Cauchy : y+x
y (0) = 1
Résoudre l’équation différentielle en utilisant la méthode à un seul pas d’Euler sur l’intervalle
[0-1] en utilisant un pas h = 0.1
Résoudre l’équation différentielle en utilisant la méthode à un seul pas d’Euler sur l’intervalle
[0-1] en utilisant un pas h = 0.2
Exercice 2 :
2x
y' = y −
Soit le problème de Cauchy : y
y (0) = 1
31
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
Comparer les résultats numériques avec ceux de la solution analytique donnés par :
y = 2 x +1
Exercice 3 :
y' = y + x
Soit le problème de Cauchy :
y (0) = 1
Il faut lire le point initial et le point final où la solution finale doit être calculée.
Il faut lire le nombre d’intervalles
Programmer la méthode d’Euler
Programmer la méthode de Taylor
Programmer la méthode de Runge Kutta d’ordre 2
Programmer la méthode Runge Kutta d’ordre 4
Calculer la solution analytique donnée par y ( x) = −2e x − x − 1
Comparer l’erreur des quatre méthodes
Calculer la constante k figurant dans les équations de calcul des erreurs
Il faut généraliser le programme par l’utilisation des sous programmes de type function pour
la définition de la fonction f(x)=y+x
32
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
Corrigé de l’exercice 1 :
y−x
y' =
Soit le problème de Cauchy : y+x
y (0) = 1
La méthode à un seul pas d’Euler sur l’intervalle [0,1] en utilisant un pas h = 0.1
x y
0.000000E+00 1.000000
1.000000E-01 1.100000
2.000000E-01 1.183333
3.000000E-01 1.254418
4.000000E-01 1.315818
5.000000E-01 1.369193
6.000000E-01 1.415694
7.000000E-01 1.456161
8.000001E-01 1.491231
9.000001E-01 1.521399
1.000000 1.547062
33
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
x h=0.1 h=0.2
6.000E-01 1.415694 1.451054
Il est évident que la solution avec le pas h=0.1 soit plus précise que celle avec le pas h=0.2
Corrigé de l’exercice 2 :
2x
y' = y −
Soit le problème de Cauchy : y
y (0) = 1
Processus d’Euler :
Donc le processus de résolution des équations différentielles (EDPs) par Taylor est donné
par :
Étant donnée 𝑦𝑦(0) = 1
2𝑥𝑥
Sachant que 𝑦𝑦 ′(𝑥𝑥𝑖𝑖 ) = 𝑦𝑦(𝑥𝑥𝑖𝑖 ) − 𝑦𝑦(𝑥𝑥𝑖𝑖 ) =F(𝑥𝑥𝑖𝑖 ,𝑦𝑦(𝑥𝑥𝑖𝑖 ))
𝑖𝑖
ℎ2
Alors 𝑦𝑦(𝑥𝑥𝑖𝑖 + ℎ) = 𝑦𝑦(𝑥𝑥𝑖𝑖 ) + h ∗ y′ (𝑥𝑥𝑖𝑖 ) + 𝐹𝐹 ′ (𝑥𝑥𝑥𝑥, 𝑦𝑦(𝑥𝑥𝑖𝑖 ))
2
2𝑥𝑥 2𝑥𝑥
Avec 𝐹𝐹 ′(𝑥𝑥, 𝑦𝑦(𝑥𝑥)) = −2/𝑦𝑦 + �1 + � ∗ (𝑦𝑦 − )
𝑦𝑦 2 𝑦𝑦
34
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
35
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
Euler
1,8
Taylor
RK2
RK4
1,6
Analytique
Soulution de l'EDPs
1,4
1,2
1,0
Il est clair que la méthode de Runge Kutta d’ordre 4 est la plus précise pour la résolution des
équations différentielles.
36
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique
Exercices
Méthode de Gauss :
2 5 8 1
A= 6 7 3 B= 2
9 2 4 3
0 5 8 1
A= 6 1 3 B= 2
9 2 4 3
Expliquez le résultat, que doit vérifier la matrice A pour éviter cette erreur.
2 5 8 1
A= 6 7 3 B= 2
9 2 4 3
2- Calculer l’écart entre B ancien et B nouveau. Qu’appelle –t-on cet écart : erreur d’arrondi
ou de troncature ?
3- Comparer ce résultat avec celui de Gauss.
4- Exécutez le programme de Gauss Seidel pour ε vaut respectivement 0.01, 0.001 , 0.0001,
0.00001 et iter= 200 000. Puis ré-exécutez le même programme pour iter vaut
respectivement 100, 200, 1000, 20000, 100000 et ε = 0.00001 (porter sur la feuille les valeurs
de X, B_ancien et B_nouveau).
5- Que peut on déduire sur l’évolution de l’écart entre B_ancien et B_nouveau par rapport à ε
et à iter.
6- reprenant maintenant le programme source de la méthode de Gauss Seidel
a/ dresser l’organigramme de cet partie (réarrangement de la matrice A)
b/ qu’elle est l’utilité de la partie réarrangement dans ce programme. Expliquer brièvement
son principe (d’après le programme).
44
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
45
ANALYSE NUMERIQUE Pr DJANNA - Pr MOUNGNUTOU - Dr NKAPKOP
Analyse Numérique L. Izidi
3.00000000000
6.00000000000 7.00000000000
3.00000000000
2.00000000000
2.00000000000 5.00000000000
8.00000000000
1.00000000000
système convergent
le vecteur solution:
0.313564383229 1.694481437490E-02
3.601839520837E-02
ancien b :
3.00000000000 2.00000000000
1.00000000000
nouveau b :
3.00004265865 2.10805518563
1.00000000000
46