Vous êtes sur la page 1sur 8

Département de mathématiques et de génie industriel

École Polytechnique de Montréal

CALCUL SCIENTIFIQUE POUR INGÉNIEURS


AIDE MÉMOIRE

Définitions, développement de Taylor et erreur de troncature

• Erreur absolue : ∆x = |x − x ? |

• Erreur relative : er (x) = ∆x


|x|

• Chiffres significatifs :

Le chiffre de x ? associé à la puissance de m et les chiffres associés aux puissances supérieures


tels que ∆x ≤ 0,5 × 10m .

• f (x0 + h) = Pn (h) + Rn (h) :



1 00 1 000 1 (n)
Pn (h) = f (x0 ) + f 0 (x0 )h +

2! f (x0 )h
2
+ 3! f (x0 )h
3
+ ··· + n! f (x0 )hn
1 (n+1)
Rn (h) =
(n+1)! f (ξ(h))hn+1 pour ξ(h) entre x0 et x0 + h

• f (x) = Pn (x) + Rn (x) :



1 00 1 (n)
Pn (x) = f (x0 ) + f 0 (x0 )(x − x0 ) +

2! f (x0 )(x − x 0 )2 + · · · + n! f (x0 )(x − x0 )n
1 (n+1)
Rn (x) =
(n+1)! f (ξ(x))(x − x0 )n+1 pour ξ(x) entre x0 et x

• f (h) = O(hn ) :

f (h)
Il existe une constante C > 0 t.q. hn ≤ C pour h près de 0.

• Développement de Taylor pour les fonctions de plusieurs variables f (x, y) :

∂f (x0 , y0 ) ∂f (x0 , y0 )
f (x0 + h, y0 + k) = f (x0 , y0 ) + h+ k+
∂x ∂y
( )
1 ∂ 2 f (x0 , y0 ) 2 ∂ 2 f (x0 , y0 ) ∂ 2 f (x0 , y0 ) 2
+ h +2 hk + k + ···
2! ∂x 2 ∂x∂y ∂y 2
Norme IEEE et erreur de représentation

• Représentation IEEE en simple précision :

(d1 d2 d3 · · · d31 d32 ) = (−1)d1 × 2(d2 d3 ···d9 )2 × 2−127 × (1, d10 d11 · · · d32 )2

• Représentation IEEE en double précision :

(d1 d2 d3 · · · d63 d64 ) = (−1)d1 × 2(d2 d3 ···d12 )2 × 2−1023 × (1, d13 d14 · · · d64 )2

• Représentation par excès (selon la norme IEEE) :

L’excès : d = 2k−1 − 1 où k est le nombre de bits utilisés pour l’exposant.

• Précision machine ε :

ε = β−t , où t est le nombre de bits utilisés pour la mantisse si le premier bit de la mantisse
normalisée n’est pas mis en mémoire et β est la base.
Interpolation polynomiale

• Forme générale : trouver les aj t.q.


n
X
f (x) ' fh (x) := aj ϕj (x)
j=0

où f (xi ) = fh (xi ) pour i = 0, 1, · · · , n et où les (n + 1) points (xi , f (xi )) sont donnés.

• Technique de la matrice de Vandermonde :


1 x0 x02 x0n
    
··· a0 f (x0 )
1 x
1 x12 ··· x1n 
  a1   f (x1 ) 
   
ϕj (x) = x j et les aj sont t.q. 

 .. .. .. ..
   =
..   ..   .. 

. . . . .  .   . 

2 n an f (xn )
1 xn xn ··· xn
• Interpolation de Lagrange :
(x − x0 )(x − x1 ) · · · (x − xj−1 )(x − xj+1 ) · · · (x − xn )
ϕj (x) = et aj = f (xj )
(xj − x0 )(xj − x1 ) · · · (xj − xj−1 )(xj − xj+1 ) · · · (xj − xn )

• Erreur d’interpolation :

f (n+1) (ξ(x))
eh (x) = f (x) − fh (x) = (x − x0 )(x − x1 ) · · · (x − xn ) pour ξ(x) ∈ ]x0 , xn [
(n + 1)!
• Borne de l’erreur d’interpolation :

hn+1
|en (x)| ≤ max |f (n+1) (ξ(x))| pour h = xi − xi−1 où i = 1, 2, . . . , n
ξ(x)∈ ]x0 ,xn [ 4(n + 1)

• Interpolation par splines cubiques sur l’intervalle [xi−1 , xi ] :

00
fi−1 f 00
fhi (x) = (xi − x)3 + i (x − xi−1 )3 +
6hi 6hi
00
f (xi ) fi00 hi
( ) ( )
f (xi−1 ) fi−1 hi
+ − (xi − x) + − (x − xi−1 )
hi 6 hi 6


hi 00 1 hi+1 00 f (xi+1 ) − f (xi ) f (xi ) − f (xi−1 )
   
f + (hi + hi+1 )fi00 + f = −
6 i−1 3 6 i+1 hi+1 hi
pour i = 1, 2, . . . , n − 1 et où hi = xi − xi−1

Page 2
Différentiation et intégration numériques

• Différentiation numérique :

formule de différence finie terme d’erreur


f (x+h)−f (x) f 00 (ξ)
f 0 (x) ' h − 2 h
f (x)−f (x−h) f 00 (ξ)
f 0 (x) ' h 2 h
−f (x+2h)+4f (x+h)−3f (x) f 000 (ξ) 2
f 0 (x) ' 2h 3 h
f (x+h)−f (x−h) f 000 (ξ) 2
f 0 (x) ' 2h − 6 h
3f (x)−4f (x−h)+f (x−2h) f 000 (ξ) 2
f 0 (x) ' 2h 3 h
f (x+2h)−2f (x+h)+f (x)
f 00 (x) ' h2 f 000 (ξ)h
f (x+h)−2f (x)+f (x−h) f 0000 (ξ) 2
f 00 (x) ' h2 12 h
f (x−2h)−2f (x−h)+f (x)
f 00 (x) ' h2 f 000 (ξ)h
−f (x+2h)+16f (x+h)−30f (x)+16f (x−h)−f (x−2h) 1 (6)
f 00 (x) ' 12h2 90 f (ξ)h4

• Quadratures de Newton-Cotes :

nombre
méthode formule de quadrature terme d’erreur de points

h f 00 (ξ) 3
trapèze 2 (f (x0 ) + f (x1 )) − 12 h 2
h
trapèze 2 (f (x0 ) + 2[f (x1 ) + · · ·
− (b−a) 00
12 f (ξ)h
2 n+1
composés · · · + f (xn−1 )] + f (xn ))
1 h f (4) (ξ)
Simpson 3 3 (f (x0 ) + 4f (x1 ) + f (x2 )) − 90 h5 3
1 h
Simpson 3 3 (f (x0 ) + 4f (x1 ) + 2f (x2 ) + · · ·
− (b−a)
180 f
(4) (ξ)h4 2n+1
composée · · · + 2f (x2n−2 ) + 4f (x2n−1 ) + f (x2n ))
3 3h 3f (4) (ξ) 5
Simpson 8 8 (f (x0 ) + 3f (x1 ) + 3f (x2 ) + f (x3 )) − 80 h 4
3 3h
Simpson 8 8 (f (x0 ) + 3f (x1 ) + 3f (x2 ) + 2f (x3 ) + 3f (x4 ) + · · ·
− (b−a)
80 f
(4) (ξ)h4 3n+1
composée · · · + 2f (x3n−3 ) + 3f (x3n−2 ) + 3f (x3n−1 ) + f (x3n ))
2h 8f (6) (ξ) 7
Boole 45 (7f (x0 ) + 32f (x1 ) + 12f (x2 ) + 32f (x3 ) + 7f (x4 )) − 945 h 5
2h
Boole 45 (7f (x0 ) + 32f (x1 ) + 12f (x2 ) + 32f (x3 )+
composée +14f (x4 ) + · · · + 32f (x4n−5 ) + 14f (x4n−4 )+ − 2(b−a)
945 f
(6) (ξ)h6 4n + 1
+32f (x4n−3 ) + 12f (x4n−2 ) + 32f (x4n−1 ) + 7f (x4n ))

Page 3
• Intégration de Gauss :

Zb Z1 Z1 n
(b − a) (b − a)t + (a + b) (b − a) (b − a) X
 
f (x) dx = f dt = g(t) dt ' ωi g(ti )
a 2 −1 2 2 −1 2 i=1

points de Gauss poids de Gauss


nb de pts (n) degré de précision (2n − 1)
ti ωi
1 +0, 000 000 000 2, 000 000 000 1
−0, 577 350 269 1, 000 000 000
2 3
+0, 577 350 269 1, 000 000 000
−0, 774 596 669 0, 555 555 556
3 +0, 000 000 000 0, 888 888 889 5
+0, 774 596 669 0, 555 555 556
−0, 861 136 312 0, 347 854 845
−0, 339 981 044 0, 652 145 155
4 7
+0, 339 981 044 0, 652 145 155
+0, 861 136 312 0, 347 854 845
−0, 906 179 846 0, 236 926 885
−0, 538 469 310 0, 478 628 670
5 +0, 000 000 000 0, 568 888 889 9
+0, 538 469 310 0, 478 628 670
+0, 906 179 846 0, 236 926 885

Page 4
Équations différentielles ordinaires

• Pour le problème avec condition initiale y 0 (t) = f (t, y(t)) où y(t0 ) = y0 :

- pour (t0 , y0 ) et h donnés et pour n = 0, 1, 2, . . . :

Zt
i +h stabilité numérique
méthode algorithme f (s, y(s)) ds
y 0 = λy, y(t0 ) = y0 où λ < 0

ti

Euler explicite yn+1 =yn +hf (tn ,yn )


yn+1 =(1+hλ)n+1 y0
(O(h)) tn+1 =tn +h

Euler implicite yn+1 =yn +hf (tn+1 ,yn+1 ) Wednesday, August 5, 2009

1
n+1
yn+1 = 1−hλ y0
(O(h)) tn+1 =tn +h

yn+1 =yn + h2 (f (tn ,yn )+f (tn+1 ,yn+1 ))


!n+1
Crank-Nicolson Wednesday, August 5, 2009

1+ hλ
2
yn+1 = hλ y0
2
(O(h )) tn+1 =tn +h 1− 2

Euler modifié y=yn +hf (tn ,yn ) Wednesday, August 5, 2009  n+1
yn+1 = 1+hλ+ 12 (hλ)2
e
y0
2 h
Runge-Kutta O(h ) yn+1 =yn + 2 (f (tn ,yn )+f (tn+1 ,y))
e

tn+1 =tn +h

Point milieu k1 =hf (tn ,yn ) Wednesday, August 5, 2009  n+1


k
yn+1 = 1+hλ+ 12 (hλ)2 y0
2
Runge-Kutta O(h ) yn+1 =yn +hf (tn + h2 ,yn + 21 )

tn+1 =tn +h

Runge-Kutta O(h2 ) k1 =f (tn ,yn ) Wednesday, August 5, 2009

(forme générale) k2 =f (tn +αh,yn +βhk1 )

yn+1 =yn +h(ω1 k1 +ω2 k2 )

tn+1 =tn +h

Runge-Kutta O(h4 ) k1 =f (tn ,yn )  n+1


yn+1 = 1+hλ+ 12 (hλ)2 + 61 (hλ)3 + 24
1
(hλ)4 y0
k2 =f (tn + h2 ,yn + h2 k1 )
h h
k3 =f (tn + 2 ,yn + 2 k2 )

k4 =f (tn +h,yn +hk3 )

yn+1 =yn + h6 (k1 +2k2 +2k3 +k4 )


Wednesday, August 5, 2009

tn+1 =tn +h

• Erreur de troncature pour la méthode d’Euler :

h2 00
- Erreur locale : 2 y (ξ) pour ξ ∈]tn , tn+1 [
h2 00
n o
∂f (tn ,yn ) 1
- Erreur globale : en+1 = 1+h ∂y en + 2 y (ξ) ≤ 2 (tn − t0 ) h y 00 (ξ)

Page 5
Équations algébriques non linéaires
|x−x ? | |xk −r | b−a
• Critère d’arrêt pour la méthode de la bissection : er = |x| ' |xk | ≤ 2k |xk |

• Problème « de racine » : chercher r t.q. f (r ) = 0

• Problème de point fixe : chercher r t.q. r = g(r )

• Algorithme de point fixe : pour x0 donné, xn+1 = g(xn ) pour n = 0, 1, 2, . . .

• Développement pour l’analyse de la méthode des points fixes :


1 2 1 3
en+1 := xn+1 − r = {g(r ) + g 0 (r )en + 2 g 00 (r )en + 6 g 000 (r )en + · · · } − g(r )

f (xn )
• Méthode de Newton : pour x0 donné, xn+1 = xn − pour n = 0, 1, 2, . . .
f 0 (xn )

• Une racine r de f (x) est de multiplicité m si on peut écrire f (x) = (x − r )m h(x) pour h(x) t.q.
h(r ) 6= 0 ou encore si :

f (r ) = f 0 (r ) = f 00 (r ) = · · · = f (m−1) (r ) = 0 et f (m) (r ) 6= 0

1
• Taux de convergence de la méthode de Newton dans le cas d’une racine multiple : 1 −
m
• Méthode de la sécante : pour x0 et x1 donnés,

f (xn )(xn − xn−1 )


xn+1 = g(xn , xn−1 ) = xn − pour n = 1, 2, 3, . . .
(f (xn ) − f (xn−1 ))

• Méthode de l’interpolation quadratique inverse : pour x0 et x1 et x2 donnés,

xn−2 f (xn−1 )f (xn )


xn+1 = g(xn , xn−1 , xn−2 ) =
(f (xn−2 ) − f (xn−1 ))(f (xn−2 ) − f (xn ))
xn−1 f (xn−2 )f (xn )
+
(f (xn−1 ) − f (xn−2 ))(f (xn−1 ) − f (xn ))
xn f (xn−2 )f (xn−1 )
+
(f (xn ) − f (xn−2 ))(f (xn ) − f (xn−1 ))

pour n = 2, 3, . . .

• Analyse de convergence pour les méthodes à k points, xn+1 = g(xn , xn−1 , . . . , xn−k+1 ) :

en+1 ' K(r )en en−1 · · · en−k+1 où f (r ) = 0

et 
2
p − p − 1 = 0 pour k = 2 (p ' 1,61)


p 3 2
en+1 ' Cen où p − p − p − 1 = 0 pour k = 3 (p ' 1,84)

p k − p k−1 − · · · − p − 1 = 0 dans le cas général

Page 6
Systèmes d’équations algébriques

• La factorisation matricielle de Doolittle (sans permutations) :


  
1 0 0 ··· 0 u11 u12 u13 ··· u1n
 . .. . 
..  u22 u23

u2n 
 `21 1 0  0 ···
 

.. u33 u3n 
  
 0 0 ···
A = LU =  `31 l32

1 . 0  
  .. .. .. .. .. 
  
 . .. .. ..
 . . .
 . . . . 0  . . . 


`n1 `n2 · · · `nn−1 1 0 0 ··· 0 unn

• La résolution des systèmes linéaires (avec permutations) :

1◦ ) Ly ~
(
~ = P b;
Ax ~
~ = b a LU x ~
~ = Pb ⇒ ◦ ~ = y.
~
2 ) Ux

~ plutôt que la matrice de permutation P .


Note : On peut utiliser le vecteur de permutation O

• La méthode de Thomas pour la factorisation des matrices tridiagonales :


    
a1 c 1 0 ··· 0 1 0 0 ··· 0 α1 c1 0 ··· 0
 .. ..   .. ..   .. .. 
b1 a2 c2 . .  β1 1 0 . .   0 α2 c2 . . 
    
.. . ..
    
A=0

b2 a3 . 0  =
 
β2 .. 
α3 .

 0 1 0  0 0 0 

 
 .
  .
.. .. .. .. .. ..  . .. .. ..
 .
cn−1   ..
 .
  
 . . . . . . . 0  . . . . cn−1 

0 ··· 0 bn−1 an 0 · · · 0 βn−1 1 0 0 ··· 0 αn

• Normes vectorielles :
q n
X
~ 2 = x12 + x22 + · · · + xn
kxk 2
~ 1=
kxk |xi | ~ ∞=
kxk max |xi |
i=1,2,...,n
i=1
• Normes matricielles : v
n
X n
X
u n
u X
kAk1 = max |aij | kAk∞ = max |aij | kAkF = t a2ij
u
j=1,2,...,n i=1,2,...,n
i=1 j=1 i,j=1

• Conditionnement matriciel : cond A = kAkkA−1 k


~ − Ax
• Bornes de l’erreur : pour r~ = b ~?,

1 rk
k~ ~−x
kx ~?k rk
k~ ~−x
kx ~?k kEk
≤ ≤ cond A et ?
≤ cond A
~
cond A kbk ~
kxk ~
kbk ~ k
kx kAk

• Problème de points fixes pour les systèmes d’équations algébriques :





x1 = g1 (x1 , x2 , . . . , xn )

x2 = g2 (x1 , x2 , . . . , xn )


x ~ x)
~ = G( ~ ⇐⇒ ..
.





x = g (x , x , . . . , x )

n n 1 2 n

~ x)
• La matrice jacobienne associée à G( ~ :
 ∂g ∂g1

1
(x) ~ ··· ~
∂xn (x)
 ∂x1
.. ..
~ =
J(x)
 
 . . 

∂gn ∂gn
∂x1 (x)
~ ··· ∂xn (x)
~

Page 7
~ r ), alors
• Critère pour la convergence de l’algorithme des points fixes : soit r~ tel que r~ = G(~

ρ(J(~
r )) < 1 où ρ(J(~
r )) = max |λi |
i=1,2,...,n

• Propriété du rayon spectral : ρ(A) ≤ kAk


n
X
• Matrice à diagonale strictement dominante : |aii | > |aij | pour i = 1, 2, . . . , n
j=1
j6=i

~ = (D + TI + TS )x
• La méthode de Jacobi : soit Ax ~ et pour x
~=b ~ 0 donné,

x ~ x
~ k+1 = G( ~ k + c~J = −D −1 (TI + TS ) x
~ k ) = TJ x ~
~ k + D −1 b

⇐⇒
n
(
1 X i = 1, 2, . . . , n;
xik+1 aij xjk

= bi − pour
aii j=1
k = 0, 1, 2, . . .
j6=i

~ = (D + TI + TS )x
• La méthode de Gauss-Seidel : soit Ax ~ et pour x
~=b ~ 0 donné,

x ~ x
~ k+1 = G( ~ k ) = TGS x
~ k + c~GS = −(TI + D)−1 TS x ~
~ k + (TI + D)−1 b

⇐⇒
i−1 n
(
1 X X i = 1, 2, . . . , n;
xik+1 aij xjk+1 − aij xjk

= bi − pour
aii j=1 j=i+1
k = 0, 1, 2, . . .

• La méthode de Newton pour résoudre F~(x) ~ : pour x


~ =0 ~ 0 donné, résoudre

~k)
    
∂f1 ∂f1 ∂f1 δx1 f1 (x
~k)
(x ~k
∂x2 (x ) ··· ~k
∂xn (x ) 
 ∂x1
 ∂f2 (x ∂f2 ∂f2
  
k 
 ∂x1 ~ k ) ~k k
 δx2   2 ~ )
~  f (x
∂x2 (x ) ··· ∂xn (x )
  
k~ = −R(
~ )δx
J(x ~ x~ ) ⇐⇒  k
.. .. .. ..   ..  = −  ..
    
.  .  .


 . . .  




∂fn ∂fn ∂fn
~k
∂x1 (x )
~k
∂x2 (x ) ··· ~k
∂xn (x ) δxn fn (x ~k)

~ k+1 = x
puis x ~ pour k = 0, 1, 2, . . .
~ k + δx

Steven Dufour

Vous aimerez peut-être aussi