Académique Documents
Professionnel Documents
Culture Documents
Analyse Numerique Université Du Sud Toulon-Var PDF
Analyse Numerique Université Du Sud Toulon-Var PDF
Analyse Numrique
Paola GOATIN
2 Systmes linaires.
1.1
1.2
1.3
2.1
2.2
2.3
4 Approximation polynmiale.
4.1
4.2
4.3
4.4
4.5
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
3
4
5
5
6
7
9
10
10
11
12
13
13
14
15
15
17
17
17
17
18
18
18
19
21
22
23
23
24
25
26
27
5 Intgration numrique.
5.1
5.2
Exemples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Evaluation de l'erreur. Noyau de Peano. . . . . . . . . . . . . . .
6 Equations direntielles.
6.1
6.2
6.3
6.4
Drive numrique. . . . . . . . . . . . . .
Mthodes d'Euler. . . . . . . . . . . . . .
Etude gnrale des mthodes un pas. . .
6.3.1 Consistance, stabilit, convergence.
Mthodes de Runge-Kutta d'ordre 2. . . .
Rfrences
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
28
28
30
31
31
32
33
33
34
36
x ' m bp ,
o b est la base de numration, m la mantisse, et p l'exposant. (Les calculs sont
gnralement eectus en base b = 2, les rsultats achs sont traduits en base
10.)
La mantisse m est un nombre crit avec virgule xe et possdant un nombre
maximum N de chires signicatifs (impos par la mmoire de l'ordinateur) :
m = 0, a1 a2 . . . aN =
N
X
ak bk ,
b1 m < 1.
k=1
La prcision relative dans l'approximation d'un nombre rel est donc donne
par
x
m
bN
=
1 = b1N .
x
m
b
L' exposant p est compris entre deux nombres entiers, L p U , ce qui veut
dire que les nombres rels qui peuvent tre reprsents en machine sont compris
entre deux valeurs xmin et xmax :
Exemple. La mme criture peut reprsenter des nombre dirents dans des
x = 8, 22 = 0, 82210,
y = 0, 00317 = 0, 317102 ,
3
z = 0, 00432 = 0, 432102 .
0 = 667487,
0 = 816, 9987760,
On voit qu'on a une perte de 5 chires signicatifs sur x2 . Ici le remde est
simple : il sut d'observer que x1 x2 = 2, d'o
x2 =
2
' 1, 223991125 103 .
x1
2 Systmes linaires.
On appelle systme linaire d'ordre n (n entier positif), une expression de la
forme
Ax = b,
o A = (aij ), 1 i, j n, dsigne une matrice de taille n n de nombres
rels ou complexes, b = (bi ), 1 i n, un vecteur colonne rel ou complexe
et x = (xi ), 1 i n, est le vecteur des inconnues du systme. La relation
prcdente quivaut aux quations
n
X
aij xj = bi ,
i = 1, . . . , n.
j=1
det(A) =
(1)()
n
Y
ai,(i)
i=1
2.1.1
aij = 0
i, j : 1 j < i n
5
et triangulaire infrieure si
aij = 0
i, j : 1 i < j n.
Suivant ces cas, le systme rsoudre est dit systme triangulaire suprieur ou
infrieur
. Si la matrice A est rgulire et triangulaire alors, comme det(A) =
Q
aii , on en dduit que aii 6= 0, pour tout i = 1, . . . , n.
Si A est triangulaire infrieure on a
x1 = b1 /a11 ,
et pour i = 2, 3, . . . , n
i1
X
1
xi =
bi
aij xj .
aii
j=1
Cet algorithme est appel mthode de descente.
Si A est triangulaire suprieure on a
xn = bn /ann ,
et pour i = n 1, n 2, . . . , 2, 1
n
X
1
bi
aij xj .
xi =
aii
j=i+1
Cet algorithme est appel mthode de remonte.
Le nombre de multiplications et de divisions ncessaires dans cet algorithme est
de n(n + 1)/2 et le nombre d'additions et de soustraction est de n(n 1)/2,
donc l'algorithme ncessite de n2 ops.
lik =
aik
(k+1)
aij
(k)
akk
,
(k)
i = k + 1, . . . , n;
(k)
i = k + 1, . . . , n.
uij = aij ,
tandis que les lments de la matrice L sont les termes lij engendrs par l'algorithme de Gauss. Le cot de cette mthode de factorisation est de l'ordre de
2n3 /3 ops. En fait, pour passer de A(k) A(k+1) on modie touts les elements
de A(k) sauf les premires k lignes et les premires k colonnes, qui ne changent
6
pas ; pour chaque lment de A(k+1) il faut faire une multiplication et une soustraction ; on a donc 2(n k)2 oprations faire. Au total, pour fabriquer A(n)
il faut
n1
n1
X
X
(n 1)n(2n 1)
2n3
2(n k)2 = 2
j2 = 2
.
6
3
j=1
k=1
Remarque. Pour que l'algorithme de Gauss puisse terminer, il faut que tous
(k)
(k)
les termes akk , qui correspondent aux termes diagonaux ukk de la matrice U et
qu'on appelle pivots, soient non nuls.
Le fait que la matrice A ait entres non nulles ne prvient pas l'apparition de
pivot nuls, comme on remarque dans l'exemple qui suit :
1 2 3
1 2
3
1
A= 2 4 5
A(2) = 0 0
7 8 9
0 6 12
Cependant on a :
n
Y
ukk ,
k=1
2.1.3
matrice qui a des lments gaux 1 partout sur la diagonale sauf prr = pkk = 0
et des lments gaux 0 partout ailleurs, sauf prk = pkr = 1 :
1
1 0 ... 0 0
..
.. ..
.
.
.
.. ..
P (k,r) = ...
.
.
.
.. ..
..
. .
...
LU = P A,
o P est le produit de toutes les matrices de permutation (des lignes) qu'on a
utilises.
Supposons donc qu'on a trouv une factorisation du type P A = LU . Alors le
, o b
= P b.
vecteur x, solution du systme Ax = b, vrie galement P Ax = b
x + y
x+y
=
=
1,
2.
x + y
1
1
y
1,
1
2 .
y=
1 2
' 1.
1
x=
1y
' 0.
Essayons maintenant l'limination aprs avoir chang les lignes dans le systme :
x+y
2,
x + y
1.
x+y
(1 )y
= 2,
= 1 2,
x+y
y
= 2,
= 1.
x = 1 et y = 1.
L'erreur qu'on faisait avec la premire limination venait de ce qu'on divisait
un nombre par le petit pivot , ce qui amplie considrablement les erreurs.
L'algorithme de dcomposition de Gauss avec pivotation par lignes permute
deux lignes de la matrice A(k) chaque pas de la dcomposition an que l'l(k)
ment diagonale akk de la matrice permute soit maximal (en valeur absolue).
Prcisment, au pas k de la dcomposition on trouve l'index r, avec r k , tel
que
(k)
(k)
|ark | = max |ask |
sk
2.1.4
Matrices tridiagonales.
a1 c1
0
b2 a2 . . .
..
.
cn1
0
bn
an
Dans ce cas, les matrices L et U de la factorisation LU de A sont des matrices
bidiagonales de la forme :
1 c1
0
1
0
.
2 1
2 . .
.
L=
U =
,
..
..
.
.
.. c
n1
0
n 1
0
n
Les coecients i et i peuvent tre calculs par les relations :
1 = a1 , 2 1 = b2 2 =
b2
, 2 c1 + 2 = a2 2 = a2 2 c1 , . . .
1
9
Donc, on a
1 = a1 , i =
bi
, i = ai i ci1 ,
i1
i = 2, . . . , n.
Ly = f
Ux = y
y1 = f1 , yi = fi i yi1 ,
yn
yi ci xi+1
xn =
, xi =
,
n
i
i = 2, . . . , n,
i = n 1, . . . , 1.
Av(k) = e(k) ,
1 k n,
e =
1
.
..
0
(1)
1
..
.
k .
..
.
n
Une fois connues les matrices L et U qui factorisent la matrice A, rsoudre les
n systmes (1) gouverns par la mme matrice A, cote n3 oprations.
Si la matrice A est triangulaire, la solution brute de ce systme s'avre inecient
puisque A1 a beaucoup d'entres nulles. En eet, le systme precedent quivaut
A(j) vj0 = 1j ,
o A(j) est la sous-matrice principale d'ordre j , vj0 = (v1j , . . . , vjj )T et 1j =
(0, 0, . . . , 0, 1)T sont des vecteurs de longueur j .
Dnition. On dnit le conditionnement d'une matrice M symtrique dnie positive comme le rapport entre la valeur maximale et la valeur minimale
de ses valeurs propres, i.e.
K2 (M ) =
max (M )
.
min (M )
10
Ax = b.
Si on rsout ce systme avec un ordinateur, cause des erreurs d'arrondis on
. On s'attend,
ne trouve pas la solution exacte mais une solution approche x
soir trs proche de x. Toutefois, on peut montrer la
alors, ce que la solution x
relation suivante :
k
krk
kx x
K2 (A)
kxk
kbk
o r est le rsidu r = b A
x ; on a not k k la norme euclidienne d'un vecteur.
k
On remarque que, si le conditionnement de A est grande, la distance kx x
entre la solution exacte et celle calcule numriquement peut tre trs grande
mme si le rsidu est trs petit.
Avec MATLAB on peut calculer le conditionnement d'une matrice avec la commande cond.
x = lim x(k) .
k
L'intrt des mthodes itratives, compares aux mthodes directes, est d'tre
simples programmer et de ncessiter moins de place en mmoire. En revanche
le temps de calcul est souvent plus long.
Une stratgie est de considrer la relation de rcurrence linaire
x(k+1) = Bx(k) + g,
(2)
x = Bx + g.
tant x = A1 b, on obtient g = (I B)A1 b ; la mthode itrative (2) est
donc compltement dnie par la matrice B .
En dnissant l'erreur au pas k comme
e(k) = x x(k) ,
on obtient la relation de rcurrence
P x(k+1) = N x(k) + b,
(3)
k 0.
(4)
k 0,
(5)
k 0,
n
X
1
xi =
bi
aij xj ,
i = 1, . . . , n.
aii
j=1,j6=i
n
X
1
(k+1)
(k)
xi
=
bi
aij xj ,
i = 1, . . . , n.
aii
j=1,j6=i
A
D
=
:
DEF
diagonale de A
E
F
:
:
BJ = D1 (E + F ) = I D1 A.
(k)
(k+1)
et xj
2.2.2
La mthode de Gauss-Seidel.
i1
n
X
X
1
(k+1)
(k+1)
(k)
xi
=
bi
aij xj
aij xj ,
aii
j=1
j=i+1
Il s'crit aussi
i = 1, . . . , n.
P = D E,
N = F,
BGS = (D E)1 U.
L'algorithme de Gauss-Seidel ne ncessite qu'un vecteur de stockage, x(k) tant
remplac par x(k+1) au cours de l'itration. Il est en gnral plus rapide que
l'algorithme de Jacobi, donc prfrable.
2.2.3
xi
xi =
1 X
(n)
aik xk xk
aii
k6=i
donc
(n+1)
max xi
xi
i
1 X
(n)
|aik | max xk xk
k
aii
k6=i
(n)
car A est diagonale strictement dominante. De plus maxi |yi | = kyk est une
norme sur RN . On a ainsi montr que
(n+1)
x K x(n) x
x
Si A est une matrice symtrique dnie positive, alors la mthode de GaussSeidel converge (la mthode de Jacobi pas forcment).
13
k =
hr(k) , z(k) i
,
hAz(k) , z(k) i
k 0,
e(k+1) () = I P 1 A e(k) ,
r(k+1)
r(k) () Az(k) .
Ainsi, en notant avec k kA la norme vectorielle issue du produit scalaire hx, yiA =
hAx, yi, c'est--dire kxkA = hAx, xi1/2 on tire que
ke(k+1) k2A
=
=
d
= 0.
ke(k+1) k2A
d
=k
On obtient donc
k =
hr(k) , z(k) i
.
hAz(k) , z(k) i
kx(k+1) xkA
K2 (P 1 A) 1
K2 (P 1 A) + 1
k
kx(0) xkA ,
K2 (P 1 A) << K2 (A).
En consquence,
K2 (P 1 A) 1
K2 (A) 1
<<
.
K2 (P 1 A) + 1
K2 (A) + 1
14
k 0,
(6)
2.2.5
Une mthode encore plus rapide dans le cas o P et A sont symtriques dnies
positives est celle du gradient conjugu prconditionn. On pose cette fois-ci
k 0,
k =
hr(k) , p(k) i
hAp(k) , p(k) i
p
kx
(k+1)
xkA 2
K2 (P 1 A) 1
K2 (P 1 A) + 1
!k
kx(0) xkA ,
k 0.
2.3 Exercices.
Exercice 1. On veut rsoudre le systme linaire Ax = b o
1
A= 2
4
1
2
6
1
5
8
1
b= 2
5
et
Exercice 2. 1) Pour une matrice quelconque A montrer que (A) kAk pour
toute norme matricielle. Donner l'expression de kAk .
2) On suppose A symtrique dnie positive. Montrer que (A) = kAk2 .
Soit
1 a
A= a 1
a a
a
a
1
A=
..
D
E
..
.
D
1
E x(k+1) =
D + F x(k) + b R .
3
A = 1
0
1
3
1
0
1
3
16
an = an1 ,
bn = xn1 ;
an = xn1 ,
bn = bn1 ;
xn+1 = xn
f (xn )
,
f 0 (xn )
n 0.
(7)
f (b) f (a)
, dans le cas
ba
= () ssi f () = 0.
x, y, E,
et K < 1 x1 = x2 .
2. Existence : puisque est KLipschitzienne, on a
d(xn+1 xn ) Kd(xn xn1 )
donc
d(xn+1 xn ) K n d(x1 x0 )
(8)
xk xk1 = xp xn
k=n+1
p
X
K k1 d(x1 x0 ) K n d(x1 x0 )
k=n+1
Kk
k=0
Kn
=
d(x1 x0 ) 0 quand (n, p) .
1K
18
La suite {xn } est donc de Cauchy dans E , donc convergente dans E . De plus,
soit la limite de cette suite ; par continuit de , () = , d'o l'existence
du point xe.2
Il est important de disposer d'un critre pratique assurant qu'une fonction est
K -Lipschitzienne, avec K < 1.
pour tout x dans [a, b], alors est K -Lipschitzienne sur [a, b].
Dmonstration. Soient x et y dans [a, b]. Puisque le segment [x, y] est inclus dans
[a, b], on a
(y) (x) =
donc
Z
k(y) (x)k
(x + t(x y))(x y) dt
K kx yk .
3.5.2
x0 E,
lim xn = .
n+
(x)
= () + (x )0 () +
=
1
+ 00 (c)(x )2 ,
2
(x )2 00
(c)
2!
c ], x[,
2n
1
1
M |xn |
M |x0 |
,
2
2
2n
2 1
M |x0 |
.
|xn |
M 2
19
2 M |x
2
| .
x [ h, + h] \ {},
|(x) | > |x |.
On dit alors que est un point xe rpulsif. Dans ce cas, 0 est de signe
constant au voisinage de , donc il existe h > 0 tel que la restriction
|[h,+h] admette une application rciproque 1 dnie sur ([
h, + h]), qui est un intervalle contenant () = . L'quation (x) = x
peut se rcrire x = 1 (x) au voisinage de , et comme (1 )0 () =
1/0 (), le point est un point xe attractif pour 1 .
3. |0 ()| = 1.
On est ici dans un cas douteux, comme le montrent les deux exemples
suivants dans lesquels = 0, 0 () = 1 :
Exemple 1. (x) = sin x, x [0, /2]. On a ici sin x < x pour tout
x ]0, /2]. Pour tout x0 ]0, /2] la suite {xn } est strictement dcroissante minore, donc convergente vers l = sin l, d'o l = 0.
Exemple 2. (x) = sinh x, x [0, +]. Comme sinh x > x pour tout
x > 0, on voit que le point xe 0 est rpulsif.
En gnral, la mthode du point xe, quand elle converge, est une mthode
d'ordre 1. C'est dire que, en gros, chaque itration l'erreur est multiplie par
un coecient (plus petit que un). Voici un nonc plus prcis.
(x) = x
f (x)
.
f 0 (x)
et
f (p) () 6= 0.
Remarque. Si f 0 () = 0, la convergence de la mthode de Newton est seulement linaire. On considre alors la mthode de Newton modie :
xn+1 = xn p
f (xn )
,
f 0 (xn )
n0
avec p la multiplicit de .
Quand faut-il terminer les itrations de l'algorithme de Newton ? Un bon critre
d'arrt est le contrle de l'incrment : les itrations s'achvent ds que
|xn+1 xn | <
(9)
en xn+1 xn .
L'erreur qu'on commet lorsque l'on adopte le critre (9) est donc plus petite que
la tolrance xe.
21
f1 (x1 , x2 ) = 0,
f2 (x1 , x2 ) = 0.
Ce systme peut s'crire sous la forme f = 0, o f = (f1 , f2 ). On veut gnraliser
la mthode de Newton ce cas. Pour cela on dnit la matrice Jacobienne du
vecteur f :
"
#
Df (x = (x1 , x2 )) =
f1
x1
f2
x1
f1
x2
f2
x2
Alors la mthode de Newton pour systmes non linaires s'crit : tant donn
(0)
(0)
x(0) = (x1 , x2 ), on calcule pour n 0 :
22
4 Approximation polynmiale.
Les fonctions les plus faciles valuer numriquement sont les polynmes. Il est
donc important de savoir approximer une fonction arbitraire par des polynmes.
Dans la suite, on dsignera par Pn l'espace vectoriel des fonctions polynmes sur
R coecients rels, de degr infrieur ou gal n. On a donc dimPn = n + 1.
Soit f C 0 ([a, b]) et x0 , x1 , . . . , xn [a, b] n + 1 points distincts (n 0 est un
nombre entier). On cherche un polynme p de degr n tel que
p(xi ) = f (xi ),
0 i n.
i (xj ) = ij ,
i, j = 0, . . . , n,
o ij = 1 si i = j et ij = 0 si i 6= j . Explicitement on a
i (x) =
Y (x xj )
,
(xi xj )
0 i n.
i6=j
pn (x) =
n
X
(10)
f (xi )(x).
i=0
1 x0 xn0
a0
f (x0 )
1 x1 xn1 a1 f (x1 )
..
.
.. .. =
..
.
.
.
.
xN
xnn
an
f (xn )
La matrice
Q de ce systme linaire est une matrice de Vandermonde de dterminant i<j (xi xj ) 6= 0 car les points xi sont distincts. La rsolution de ce
23
cond(A) = kAk A1
o kk est une norme matricielle quelconque. On a toujours cond(A) 1, et plus
ce nombre est grand plus la rsolution du systme est dicile. Si par exemple
xi = 2i 0, i = 0, . . . , 20, on a cond(A) = 356551625901350880. Par ailleurs,
cond(A) = 1 ssi A est une matrice orthogonale (A1 = AT ). Les systmes
linaires les mieux conditionns sont donc ceux dans lesquels intervient une
matrice orthogonale.
pn (x) = f (x0 ) +
n
X
(11)
k=1
f [x0 , x1 , . . . , xk ] =
(12)
x1 , x2 , . . . , xk , on a
pk =
dcroissantes :
Tableau
Etape 0
TAB[n]
f (xn )
TAB[n 1] f (xn1 )
TAB[n 2] f (xn2 )
..
..
.
.
TAB[2]
f (x2 )
TAB[1]
f (x1 )
f (x0 )
TAB[0]
Etape 1
Etape 2
f [xn1 , xn ]
f [xn2 , xn1 , xn ]
f [xn2 , xn1 ]
..
.
f [x1 , x2 ]
f [x0 , x1 ]
...
...
Etape n
f [x0 , . . . , xn ]
..
.
f [x0 , x1 , x2 ]
un
= TAB[n]
uk
= TAB[k] + (x xk )uk+1 ,
0 k < n,
o n+1 (x) =
i (x
1
n+1 (x)f (n+1) ()
(n + 1)!
xi ), [a, b].
des points xi , soit pn+1 (t) le polynme d'interpolation de f aux points x, x0 , . . . , xn+1 .
Par construction f (x) pn (x) = pn+1 (x) pn (x). Or le polynme pn+1 pn est de
degr n + 1 et s'annule aux n + 1 points x0 , . . . , xn+1 . On a donc
pn+1 (t) pn (t) = cn+1 (t),
c R.
Considrons la fonction
g(t) = f (t) pn+1 (t) = f (t) pn (t) cn+1 (t).
(n+1)
n+1
= (n + 1)!
kf pn k
1
kn+1 k kf (n+1) k.
(n + 1)!
25
n+1
1
ba
kf pn k
kf (n+1) k.
4(n + 1)
n
Dmonstration. On peut montrer que le maximum de |n+1 (x)| est atteint toujours
dans un de deux intervalles extrmes [x0 , x1 ] ou [xn1 , xn ]. On prend alors x [x0 , x1 ]
(l'autre cas est similaire) ; on a
|(x x0 )(x x1 )|
(x1 x0 )2
h2
=
4
4
Donc
max
x[a,b]
|(x xi )|
h2
n!
2h3h . . . nh =
4
4
ba
n
n+1
d'o la conclusion. 2
ba
n
n+1
=0
x [1, 1].
tn (x)
tn+1 (x) + tn1 (x)
cos(n),
t0 (x) = 1,
t1 (x) = x,
x
i = cos
2i + 1
] 1, 1[,
2n
0 i n 1.
Les points x
i sont rpartis symtriquement autour de 0 (x
ni =
xi ) de faon
plus dense au voisinage de 1 et 1.
Pour se ramener un intervalle [a, b] quelconque, on utilisera le changement de
variable suivant
a+b ba
+
x
i .
xi =
2
2
Le polynme n+1 est donn par
n+1 (x) =
n
Y
(x xi ) =
i=0
ba
2
(n+1) Y
n
(
xx
i )
i=0
Qn
o i=0 (
xx
i ) = 1/2n tn+1 est le polynme n+1 (
x) correspondant [1, 1].
Donc on a ici
(n+1)
ba
kn+1 k = 2
.
4
Cette valeur est plus petite que l'estimation
n+1
n+1
n! b a
2 e b a
4
n
e
4 n
(13)
obtenue pour kn+1 k avec des points xi quidistants, surtout lorsque n est
assez grand : le rapport entre les deux est de l'ordre O( n (e/4)n+1 ), qui tend
vers 0quand n . L'approximation (13) repose sur la formule de Stirling
n! 2n (n/e)n .
H=
ba
.
N
H (n+1)
kf (n+1) k.
4(n + 1)nn+1
27
5 Intgration numrique.
Rb
On souhaite disposer d'un moyen d'valuer numriquement I(f ) = a f (t)dt o
f est une fonction continue sur un intervalle [a, b] avec a < b. En eet, dans
de nombreuses applications, cette intgrale ne se ramne pas des fonctions
simples, et mme si c'est le cas, on cherche une mthode simple et utilisable
dans le cas gnral. Pour cela, nous chercherons une approximation de I(f ),
note J(f ) sous la forme
J(f ) = (b a)
n
X
i f (i )
i=0
Pn
o les points i sont dans l'intervalle [a, b] et i=0 i = 1. Les i sont appels
les points d'intgration et les coecients i les poids d'intgration.
5.1 Exemples.
(a) Un seul point. On choisit un seul point [a, b] et on remplace f sur [a, b]
par le polynme de degr 0 : p0 (x) = f (). On a alors
p1 (x) =
f (x)dx ' (b a)
a
f (a) + f (b)
.
2
i = a + i
28
ba
.
n
Pour dterminer la formule de quadrature lmentaire, on se ramne par changement de variable l'intervalle [1, 1], subdivis par les points i = 1 + i n2 .
Le polynme d'interpolation d'une fonction f C([1, 1]) est donn par
pn (x) =
n
X
f (i )i (x),
i=0
Y x j
. On a donc
i j
j6=i
f (x)dx '
1
1
avec i =
2
a
pl (x)dx = 2
1
n
X
i f (i )
i=0
ni (x) = i (x),
ni = i .
i=0
f (x)dx = 0 = 2
1
n
X
i f (i ).
i=0
Si n est pair, les formules sont donc encore exactes pour f (x) = xn+1 , et plus
gnralement pour f Pn+1 par linarit. On dmontre en fait le rsultat
suivant que nous admettrons :
0 = 1 =
1
2
0 = 2 =
1
,
6
1 =
2
3
0 = 4 =
7
,
90
1 = 3 =
29
16
,
45
2 =
2
15
0 = 6 =
41
,
840
1 = 5 =
9
,
35
2 = 4 =
9
,
280
3 =
34
.
105
f (x)dx (b a)
E(f ) =
a
n
X
i f (xi ) =
i=0
1
N!
o KN est une fonction sur [a, b], appele noyau de Peano associ la mthode,
dnie par
KN (t) = E x 7 (x t)N
t [a, b].
+ ,
Z
Z
E x 7
g(x, t)dt =
E (x 7 g(x, t)) dt.
I
Z b
1
N (N +1)
E(f ) = E x 7
(x t)+ f
(t)dt
a N!
Z b
1
(N +1)
=
E x 7
(x t)N
f
(t)
dt
+
N!
a
Z b
1 (N +1)
=
f
(t) E x 7 (x t)N
+ dt
a N!
Z b
1
=
KN (t)f (N +1) (t)dt.
N! a
2
On dduit la majoration
E(f )
1
kf (N +1) k
N!
30
|KN (t)|dt.
a
6 Equations direntielles.
On considre une fonction continue f : R+ R R. Pour y0 R donn, on
cherche y : t R+ y(t) R qui satisfait le problme suivant, appel problme
de Cauchy :
0
y (t) = f (t, y(t)) si t > 0
(14)
y(0) = y0 .
x1 , x2 R, t > 0,
alors le problme de Cauchy (14) admet une solution globale (c'est--dire pour
tout t > 0) et elle est unique.
y 0 (ti )
=
=
=
y(ti + h) y(ti )
,
h0+
h
y(ti ) y(ti h)
lim
,
h0+
h
y(ti + h) y(ti h)
lim
.
h0+
2h
lim
(Dy)P
i =
y(ti+1 ) y(ti )
,
h
i = 0, . . . , n 1;
(Dy)R
i =
y(ti ) y(ti1 )
,
h
i = 1, . . . , n;
(Dy)C
i =
y(ti+1 ) y(ti1 )
,
2h
i = 1, . . . , n 1.
y 00 ()
(t ti )2 .
2
31
h 00
y (),
2
|y 0 (ti ) (Dy)P
i | Ch,
o C = 12 maxt[ti ,ti+1 ] |y 00 (t)|.
Pour t = ti1 on obtient pour la dirence nie retrograde
0
(Dy)R
i = y (ti )
h 00
y (),
2
|y 0 (ti ) (Dy)R
i | Ch,
o C = 12 maxt[ti1 ,ti ] |y 00 (t)|.
Pour t = ti+1 et t = ti1 avec un dveloppement d'ordre 2 (si y C 3 )
y(ti+1 )
y(ti1 )
y 00 (ti ) 2 y 000 (1 ) 3
h +
h ,
2
6
y 00 (ti ) 2 y 000 (2 ) 3
= y(ti ) y 0 (ti )h +
h
h ,
2
6
= y(ti ) + y 0 (ti )h +
on obtient
0
(Dy)C
i = y (ti ) +
y 000 (1 ) + y 000 (2 ) 2
h ,
12
o C =
1
6
yn+1 yn
h
y0 .
= f (tn , yn ) pour n = 0, 1, 2, . . .
yn+1 yn
h
y0 .
= f (tn+1 , yn+1 )
32
pour n = 0, 1, 2, . . .
yn+1 = yn + hn (tn , yn , hn ),
0 n < N,
6.3.1
l'erreur
en = y(tn+1 ) yn+1 ,
0 n < N,
Denition. On dit que la mthode est stable s'il existe une constante S 0
telle que pour toutes suites (yn ), (
yn ) dnies par
yn+1 = yn + hn (tn , yn , hn ),
yn+1 = yn + hn (tn , yn , hn ) + n ,
on ait
max |
yn yn | S
n
|
y0 y0 | +
0 n < N,
0 n < N,
X
!
|n |
yn+1 = yn + hn (tn , yn , hn ) + en .
Si la mthode est stable, de constante S , l'erreur globale est donc
!
X
|en | .
max |yn y(tn )| S |y0 y(0)| +
n
33
(t, y) R+ R.
Thorme (CS de stabilit). Pour que la mthode soit stable, il sut que la
fonction soit Lipschitzienne en y , de constante :
pour tout t [0, T ], tout (y1 , y2 ) R2 , tout h R. Alors on peut prendre pour
constante de stabilit
S = eT
On termine ce paragraphe avec une denition.
Denition. On dit qu'un mthode 1 pas est d'ordre p si pour toute solution
exacte y d'une quation direntielle
0 n < N.
yn+1 yn =
h
[f (tn , yn ) f (tn+1 , yn+1 )],
2
n 0.
yn+1 yn =
h
[f (tn , yn ) f (tn+1 , yn + hf (tn , yn ))].
2
1
yn+ 12 = yn + f (tn , yn ),
2
on trouve la mthode d'Euler modie :
1
yn+1 yn = hf tn+ 12 , yn + f (tn , yn ) .
2
Les mthodes de Heun et d'Euler modie sont des cas particuliers dans la
famille des mthodes de Runge-Kutta d'ordre 2. Il existe d'autres mthodes
plus compliques, comme par exemple la mthode de Runge-Kutta d'ordre 4
suivante, qui est obtenue en considrant la mthode d'intgration de Simpson.
yn+1 = yn +
h
(K1 + 2K2 + 2K3 + K4 ),
6
K1
K2
K3
K4
f (tn , yn )
h
h
f (tn + , yn + K1 )
2
2
h
h
f (tn + , yn + K2 )
2
2
f (tn+1 , yn + hK3 )
35
Rfrences
[1] J.P. Demailly, Analyse numrique et quations direntielles, Presses
universitaires de Grenoble.
[2] Quarteroni, Sacco, Saleri, Numerical Mathematics, Sprigler.
[3] M. Schatzman, Analyse numrique, Masson.
36