Vous êtes sur la page 1sur 31

Chapitre 1 : généralités

Les mathématiques standards (standard mathematics) nous fournissent des


méthodes qui permettent d’obtenir des solutions exactes (exact solutions) ou
analytiques (analytical) d’un certain nombre de problèmes en utilisant
certaines théories ou notions (intégration, dérivation, résolution d’équations ou
de systèmes d’équations algébriques ou différentielles). Cependant, la plupart
des problèmes physiques (physical problems) conduisent à des équations dont les
solutions exactes ou analytiques n’existent ou difficilement accessibles.

L’analyse numérique (numerical analysis) est une branche des mathématiques


appliquées ayant pour but le développement d’outils et de méthodes numériques
(numerical methods) pour trouver des solutions approchées de problèmes de
physiques dont les solutions analytiques (exactes) n’existent pas. Etant donné
que les solutions ne sont pas exactes, il existe, donc, une erreur par rapport à la
solution exacte. Cette erreur doit être la plus faible possible. Ces erreurs ont
différentes origines et sont générées pendant le processus de résolution.

Bien que cette branche existe depuis longtemps, ce n’est que vers la fin des années
quarante, avec l’apparition des premiers ordinateurs, qu’elle prit son envole et
devint une branche à part entière des mathématiques.

Différentes sources d’erreurs :

Comme mentionné plus haut, les solutions des problèmes physiques obtenus par
une approche numérique sont affectées d’un certain nombre d’erreurs que nous
pouvons classer en trois catégories :
• Les erreurs de modélisation : Elles sont dues à l’étape de modélisation
mathématique du phénomène physique étudié. Où on est amené à formuler
un certain nombre d’hypothèses visant à simplifier la modélisation en
faisant ressortir les effets prépondérants. Les équations qui seront obtenus
ne vont plus reflétés le phénomène réel, il en va de même pour la solution
qui sera obtenu.

• Les erreurs de troncature : Elles sont introduites par les schémas de


résolutions qu’on va utiliser. Elles sont générées en grande partie per
l’utilisation du développement en série de Taylor d’une fonction. C’est
l’outil principal en analyse numérique. Il faut donc le maitriser.

𝝏𝒇 𝝏𝟐 𝒇 ∆𝒙𝟐
𝒇𝒊+𝟏 = 𝒇𝒊 + ( ) ∆𝒙 + ( 𝟐 ) + 𝑶(∆𝒙)𝟑
𝝏𝒙 𝒊 𝝏𝒙 𝒊 𝟐!

𝝏𝒇 𝝏𝟐 𝒇 ∆𝒙𝟐
𝒇𝒊−𝟏 = 𝒇𝒊 − ( ) ∆𝒙 + ( 𝟐 ) + 𝑶(∆𝒙)𝟑
𝝏𝒙 𝒊 𝝏𝒙 𝒊 𝟐!
A l’aide de ces deux formules on peut obtenir trois approximations de la
dérivée première :
𝝏𝒇 𝒇𝒊+𝟏 −𝒇𝒊
(𝝏𝒙) = + 𝑶(∆𝒙)𝟏 forward difference
𝒊 ∆𝒙

𝝏𝒇 𝒇𝒊 −𝒇𝒊−𝟏
(𝝏𝒙) = + 𝑶(∆𝒙)𝟏 backword difference
𝒊 ∆𝒙

𝝏𝒇 𝒇𝒊+𝟏 −𝒇𝒊−𝟏
(𝝏𝒙) = + 𝑶(∆𝒙)𝟐 central difference
𝒊 𝟐∆𝒙

• Les erreurs d’arrondi : sont dues au fait qu’on travaille avec une précision
donnée et finie en négligeant un certain nombre de chiffres significatifs
(après la virgule).
• Les erreurs sur les données : elles sont imputables aux données physiques
du problème qu’on étudie, qui sont souvent issues de mesures réalisées avec
une instrumentation donnée. (introduction d’erreurs de l’appareil et de
lecture entre autres)

• Erreurs liées à l’utilisation d’ordinateurs : Les machines fonctionnent avec


un système binaire qui peut introduire des erreurs qui risque de
s’accumuler avec le calcul. Ainsi, la fraction 2/3 n’a pas de représentation
binaire et décimale finies.

Quelques notions sur les erreurs :

Soit 𝒙, un réel, et 𝒙∗ , une valeur approchée de ce réel. On définit l’erreur absolue


par :

∆𝒙 = |𝒙 − 𝒙∗ |

D’un autre côté, on définit l’erreur relative par :

|𝒙 − 𝒙∗ | ∆𝒙 ∆𝒙
𝑬𝒓 = = ≈ ∗
|𝒙| |𝒙| |𝒙 |

En pratique, l’évaluation de ces deux grandeurs est difficile, car on ne connait


généralement pas la valeur de 𝒙. L’erreur absolue quantifie l’erreur commise et
l’erreur relative donne son importance.

Deux notions à manipuler avec précaution :

Exemple : supposons qu’on veuille mesurer la vitesse d’un coureur pour de types
de courses : un marathon et un 100 m. Pour cela on utilise un chronomètre dont
la précision absolue est de 0.1s.
Pour le marathon les meilleurs athlètes couvrent la distance en 2h20min environ.
L’erreur relative est estimée à :

𝟎. 𝟏
𝑬𝒓 = = 𝟎. 𝟎𝟎𝟎𝟎𝟏𝟏𝟗
𝟐 ∗ 𝟔𝟎 ∗ 𝟔𝟎 + 𝟐𝟎 ∗ 𝟔𝟎

Par contre pour le sprint la durée de la course est approximativement de 10s, dans
ce cas, l’erreur relative est de :

𝟎. 𝟏
𝑬𝒓 = = 𝟎. 𝟎𝟏
𝟏𝟎

On constate une erreur de 1% et vue la nature de la course on ne pourra


probablement pas distinguer le premier du derniers coureur ou du moins pour les
trois premiers.

Opérations arithmétiques sur machines

Chaque jour, on fait des opérations arithmétiques dont les résultats sont souvent
exacts. Ainsi, quand on règle nos achats on a souvent à faire à des entiers ou à
des réels avec peu de décimales. Cependant, dans certaines situations, on est
confronté à du calcul approché. Supposons que sur votre facture d’électricité vous
avez une consommation de 662 kWh et qui reviens à 2466.5 DA. Question à
quel degré tout ça est exact ? Pour cela analysant le détail de la facture.

Données :
Ancien Index : 17602, Nouveau Index : 18264 ce qui donne une consommation
de 662.

Déjà au niveau du relevé il y’a une approximation dans le sens où les chiffres
après la virgule dans les index ont été négligés, donc votre consommation n’est
pas exacte. De plus, l’appareil de mesure lui-même donne la consommation avec
une certaine erreur.

La consommation est divisée en deux tranches pour des prix unitaires différents

1er Tranche Prix unitaire 1ème Tranche Prix unitaire Total


125 1.779 537 4.179 2466.5
2466.498

La facture à payer est normalement de 2466.498 DA au lieu de 2466.5 DA

Dans cet exemple la facture est entachée de deux types d’erreurs : une de mesure et
l’autre d’arrondi.

Les machines de calcul sont elles aussi confronté au problème d’arrondi. Il existe
deux types d’arithmétiques : Entière et à virgule flottante.

Arithmétique entière :

Un ordinateur possède des limites de calcul dus essentiellement à ces capacités de


stockage. Ainsi, pour les entiers, bien que les résultats des opérations soient exacts
(sauf division) la machine ne peut manipuler qu’un nombre limité d’entiers.
L’ensemble des entiers sur lesquels nous pouvons opérer est donc borné. Si le
résultat d’un calcul est, par exemple 9115900897765123908322 il ne sera pas
accessible à la majorité des calculettes ni à de nombreux ordinateurs.

Arithmétique en virgule flottante

Lorsque la machine traite des réels ou des opérations dont le résultat est réel, la
machine travail en virgule flottante. Un réel peut etre écrit sous la forme
standardisée suivante :

𝒀 = ±. 𝒂𝟏 𝒂𝟐 . . .. 𝒂𝒏 𝒃𝑵

Il se compose du signe + ou -, du point représentant la virgule, d’une mantisse


a1a2 . . . . an, d’une base de numération et d’un exposant N qui sont soumis aux
contraintes :

• La base est un entier ≥ 2.


• Les ai sont des entiers tels que 0 ≤ ai ≤ b
• L’exposant N doit être Nmin ≤ N ≤ Nmax
Un réel est dit écrit sous forme normalisée si a1 est différent de zéro.
Y=0.00207 *105 n’est pas normalisé, alors que 0.207*103 est normalisé.
Exemple 1
b=10, m=3, Nmin=-15, Nmax =16
x=.135*106, y=-.139*106, z=.523*1012, t=.215*10-10
x+z=(0.000000135+0.523)*1012=0.523000135*1012=0.523*1012 (valeur
affichée)= z !!!!
x+y=(0.135-0.139)*106=-0.004*106=-0.4*104 (normalisation)
x*z=0.135*106*.523*1012=0.070605*1018=0.706*1017 l’exposant ‘17’ est
supérieur à sa valeur maximale, de ce fait le produit est > au plus grand réel
représentable (0.999*1016). Dans ce cas, on dit a un surdépassement et lors de
l’exécution du programme, on aura un message d’erreur ‘Overflow’.

t/x=.215*10-10 /0.139*106=1.5467*10-16=0.155*10-15 , ce résultat est


supérieur à la plus petite valeur (0.100*10-15 ).

t/z=.215*10-10 /.523*1012=0.411*10-22, ce résultat est inférieur à la plus


petite valeur (0.100*10-15) ce qui se traduira par un message d’erreur
‘Underflow). Dans ce cas la machine remplace le résultat par zéro ou par une
valeur proche de zéro (pour matlab sur Pc cette valeur vaut
4.940656458412465 × 10−324). Cela peut avoir des conséquences
désastreuses si ce résultat est utilisé dans d’autres calculs.

Exemple 2

b=10, m=3, x=0.63*104, t=z=0.3*101

x+t=0.63*104+0.3*101=0.63*104+0.0003*104=0.63*104, z+(x+t)=
0.63*104=z

t+z=0.6*101, x+(t+z)= 0.63*104+0.0006*104=0.6306*104=0.631*104.

L’ordre dans lequel sont réalisées les opérations sur des machines peut influer
considérablement sur le résultat. Il est conseillé de commencer par les plus
petits nombre lors des additions.

Représentation binaire
Chapitre 2 :

Résolution des équations non linéaires

Les ingénieurs, dans leurs calculs, sont souvent confrontés à la résolution


d’équations à une inconnue sous la forme f(x)=0. L’équation à résoudre est,
d’une manière générale, non linaire, et ces racines (roots) ne peuvent être obtenus
par des méthodes exactes. De ce fait, on a recours à des algorithmes de résolutions
approchés. L’objectif de ce chapitre est d’exposer l’essentiel des méthodes utilisées
pour résoudre de telles équations.

Différentes varientes

F(x)=0
F(x)=ax
F(x)=H(x)

Méthode de bissection ou dichotomie


La méthode de la bissection repose sur une idée simple : en général, de part et
d’autre d’une racine de l’équation f(x)=0, la fonction continue f(x) change de
signe et passe du positif au négatif ou vice versa (fig. 1.a). Cependant, un cas
particulier existe quand la fonction est tangente à l’axe des x en ce point. Nous
reviendrons plus loin sur ces situations particulières.

Supposons que la condition du changement de signe autour d’une racine x0 est


vérifiée pour un intervalle [a, b], c’est-à-dire :

f(a)*f(b)<0

on partage alors l’intervalle en deux partie égales soit : [a, (a+b)/2] , [(a+b)/2,
b], on détermine ensuite l’intervalle pour lequel la condition est vérifiée. La
solution est forcément dans cet intervalle. On divise encore, l’intervalle où la
condition est vérifiée et on refait les mêmes tests pour avoir le nouvel intervalle.
A chaque étape la différence entre les bornes de l’intervalle diminue et à terme
elle va tendre vers zéro et on aura alors atteint la solution.
Algorithme 2.2 : Algorithme de la bissection

1. Soit un intervalle [a0, b0] pour lequel f(a0)*f(b0)<0


2. Soit Er, le critère d’arrêt (Erreur admissible), et N, le nombre maximal
d’itérations
3. On pose : x0 = (a0+ b0)/2
4. Si |x2 − x1|< Er
5. convergence atteinte, écrire la racine x0, écrire f(x0) et arrêt
6. Si f(a0) × f(x0) < 0, alors b0 = x0
7. Si f(x0) × f(b0) < 0, alors a0 = x0
8. Si le nombre maximal d’itérations N est atteint : convergence non
atteinte en N itérations et arrêt
9. Retour à l’étape 3
Cet algorithme peut être condensé dans une boucle tel que :

Read: a, b > a, ε, f : [a,b] → R


k=0
ak = a
bk = b
xk ← (ak +bk)/2
while abs(bk – ak)> ε ou |f (xk )| > ε do
if f(ak )*f(xk ) < 0 then
ak+1 = ak
bk+1 = xk
else
ak+1 = xk
bk+1 = bk
end if
xk+1← (ak+1 + bk+1)/2
k ← k +1
end while

Methode regula falsi (fausse position)


C’est une méthode qui dérive directement de la dichotomie. En effet, au lieu de
tenir compte uniquement du signe des valeurs de la fonction aux bords de
l’intervalle, on va tenir compte aussi aux valeurs. Supposons que la condition du
signe soit vérifiée. Au lieu de fractionner l’intervalle en deux intervalles égaux,
on suppose que la fonction sur cet intervalle est une droite qui joint les extrémités
(a, f(a)) et (b, f(b)). Le point où cette droite coupe l’axe des abscisses est considéré
comme une racine approchée de la fonction f(x). Soit u l’abscisse de ce point et on
montre facilement :
𝒃−𝒂 𝒃−𝒂
𝒖 = 𝒃 − 𝒇(𝒃) = 𝒂 − 𝒇(𝒂)
𝒇(𝒃) − 𝒇(𝒂) 𝒇(𝒃) − 𝒇(𝒂)

Le nouvel intervalle sera donc soit [a, f(u)] soit [f(u), b] en fonction du signe de
f(a), f(b) et f(u).

f(x)
f(a)

X0
a u b

f(b)
Méthode de Newton
La méthode de Newton est basée sur le développement en série de Taylor d’une
fonction. Ceci va nous permettre de faire une approximation de la dérivée de la
fonction.
Soit le développement de la fonction au voisinage de x0 :
𝒅𝒇
𝒇(𝒙) = 𝒇(𝒙𝟎 ) + ( ) ∆𝒙 + 𝑶(∆𝒙)𝟐
𝒅𝒙 𝒙𝟎
En négligeant l’erreur, on peut écrire une approximation de la dérivée par :
𝒇(𝒙) − 𝒇(𝒙𝟎 )
𝒇′ (𝒙𝟎 ) =
𝒙 − 𝒙𝟎

f(r0) A

r1 r2 r0
X0
f(r2) C

f(r1) B
Procédure
Soit r0 une valeur approchée de x0. La tangente au point A d’équation
g(x)=f(r0)+(x-r0)f’(r0) va couper l’axe des abscisses en r1 qui vérifie :
0= f(r0)+(r1-r0)f’(r0) qui peut être écrite de la manière suivante :

r1=r0- f(r0)/f’(r0)

En considérant maintenant le point r1 comme nouvelle solution


approchée de l’équation, on recommence la procédure précédente jusqu’à
la convergence. On obtient ainsi une suite numérique qui va nous
donner la solution finale. Cette suite est de la forme :

rn+1=rn- f(rn)/f’(rn)

Application:
Soit à calculer 51/3
Indication résoudre l’équation f(x)=x3 – 5 avec r0 = 1
Chapitre 3
Interpolations

Il fut un temps où les étudiants utilisaient des tables pour déterminer les valeurs

des fonctions sinus, logarithmes et bien d’autres. Ces tables donnent les valeurs de

ces fonctions en des points finis uniformément espacés. Alors comment faisaient-ils

quand ils leurs fallait la valeur de la fonction en un point qui n’est pas sur la table ?

Ils opéraient alors une interpolation, en supposant que la fonction est linéaire entre

deux points consécutifs.

Aujourd’hui les étudiants utilisent des calculettes pour faire le travail alors

pourquoi ce chapitre ?

Lors d’une expérience de travaux pratiques, un étudiant a constaté que la

conductivité thermique de l’eau variait avec la température et il a construit le tableau

suivant :

T(°k) 298 308 318 328 338 348 358 368 378

Cp(W/kmK) 200 204 210 216 221 225 229 233.5 241
Valeur des Y
250

240

230

220

210

200

190
290 300 310 320 330 340 350 360 370 380 390

En analysant ces données, il se demande est ce qu’il peut estimer une valeur

raisonnable de la conductivité thermique, par exemple à 353K ou à 287K. Les

estimations de ce type peuvent être obtenues en utilisant des fonctions qui imposent

un type de variation entre deux points consécutifs. Les fonctions les plus utilisées

sont les polynômes. Ce processus est appelé l’interpolation.

Méthodes des moindres carrées

En revenant au graphe précèdent, on remarque facilement que les points

expérimentaux suggère une variation linéaire de la conductivité thermique en

fonction de la température de la forme :

K(T)=aT+b

Les coefficients a et b peuvent être obtenus à partir des données.

Si on demande à différents étudiants de tracer cette droite, ils ne vont

probablement pas tracer la même droite et de ce fait les valeurs de a et b seront


différentes. Il est clair que la droite ne va passer par tous les points. Il s’agira donc

de déterminer cette droite en minimisant la déviation qui existe entre la valeur

expérimentale de la conductivité et la valeur qui sera donné par la droite. La méthode

usuelle utilisée pour ce type de problème est la méthode des moindres carrés.

Supposant en première approche qu’on va minimiser la somme des déviations entre le

point expérimental et la valeur donnée par la fonction, mais il n’est pas bon. Soit le

cas représenté

sur la figure suivante :

Ainsi si la droite passe exactement au milieu, entre deux points consécutifs, la somme

des erreurs va être nulle. Le critère utilisé habituellement est la minimisation de la

somme des carrés des erreurs, d’où le nom de la méthode des moindres carrés.

Soit 𝑌𝑖 les valeurs expérimentales et 𝑦𝑖 la valeur donnée par l’equation

𝑦𝑖 = 𝑎𝑥𝑖 + 𝑏

Où 𝑥𝑖 est valeur de la variable exempt d’erreur. On va déterminer les meilleurs

valeurs de a et b de telle sorte que les 𝑦𝑖 prédisent les valeurs qui correspondent aux

valeurs de 𝑥𝑖 . Soit 𝑒𝑖 = 𝑌𝑖 − 𝑦𝑖 . Le critère énoncé plus haut implique :


𝑆 = 𝑒12 + 𝑒12 + . . . . . +𝑒𝑛2
𝑛

𝑆 = ∑ 𝑒𝑖2
𝑖=1

𝑆 = ∑(𝑦𝑖 − 𝑎𝑥𝑖 − 𝑏)2


𝑖=1

Qu’il soit minimal. N est le nombre des points. Alors :

𝑛
𝜕𝑆
= 0 = ∑ −2𝑥𝑖 (𝑦𝑖 − 𝑎𝑥𝑖 − 𝑏)
𝜕𝑎
𝑖=1
𝑛
𝜕𝑆
= 0 = ∑ −2(𝑦𝑖 − 𝑎𝑥𝑖 − 𝑏)
𝜕𝑏
𝑖=1

Après arrangement, on obtient :

𝑎 ∑ 𝑥𝑖2 + 𝑏 ∑ 𝑥𝑖 = ∑ 𝑥𝑖 𝑌𝑖

𝑎 ∑ 𝑥𝑖 + 𝑏𝑛 = ∑ 𝑌𝑖

𝑛𝑆𝑥𝑦 − 𝑆𝑥 𝑆𝑦
𝑎=
𝑛𝑆𝑥𝑥 − 𝑆𝑥 𝑆𝑥
𝑆𝑦 − 𝑎𝑆𝑥
𝑏=
𝑛
Avec :

𝑆𝑥 = 𝑥1 + 𝑥2 + . . . . + 𝑥𝑛 ,
𝑆𝑌 = 𝑌1 + 𝑌2 + . . . . + 𝑌𝑛
𝑆𝑥𝑥 = 𝑥12 + 𝑥22 + . . . . + 𝑥𝑛2 ,
𝑆𝑥𝑌 = 𝑥1 𝑌1 + 𝑥2 𝑌2 + . . . . + 𝑥𝑛 𝑌𝑛
Données non linéaires

Souvent les données expérimentales ne sont pas linéaires, on sera donc ramener à

utiliser des fonctions autres que le polynôme du premier degré. Une des fonctions

les plus utilisées est la forme exponentielle


𝑦 = 𝑎𝑥 𝑏
Ou
𝑦 = 𝑎𝑒 𝑏𝑥
En prenant le logarithme, on obtient :
ln 𝑦 = ln 𝑎 + 𝑏 ln 𝑥
ln 𝑦 = ln 𝑎 + 𝑏𝑥
Par un changement de variable z = ln 𝑦 on obtient soit une fonction linéaire en ln 𝑥 ou

en 𝑥. On procédera ensuite de la même manière que précédemment.


Chapitre 4

DERIVATION NUMERIQUE

La dérivée d‘une fonction est une notion courante dans différentes branches de la

physique. Ainsi plusieurs grandeurs physiques sont des dérivées d’autres fonctions.

On peut citer, entre autres, la vitesse instantanée, la puissance, le flux de chaleur,

la contrainte de cisaillement etc …. Sa connaissance est essentielle lors de l’étude

des phénomènes physiques. La plus part du temps les fonctions dont on veut évaluer

les dérivées sont inconnues elles-mêmes. Ces fonctions sont soient données par des

données expérimentales en des points finis soient elles sont régies par des équations

différentielles ordinaires ou à dérivées partielles. A titre d’exemple, la contrainte

de cisaillement pour un fluide non-Newtonien est donnée par l’expression :

𝑑𝑢 𝑑𝑢
𝜏 = 𝜇( )∗
𝑑𝑦 𝑑𝑦
La viscosité dynamique, 𝜇, est une fonction de la dérivée de la vitesse selon

l’expression :

𝑑𝑢 𝑛−1
𝜇 = 𝜇𝑜 ( )
𝑑𝑥
Ces deux relations sont utilisées pour le calcul de la viscosité dynamique en traçant

le graphe de la contrainte en fonction de la vitesse de déformation (la dérivée). La

procédure qui sera utilisée consistera à calculer la dérivée numériquement à partir


des valeurs de la vitesse. Cette procédure va reposer essentiellement sur le

développement en série de Taylor d’une fonction.

Reppels dérivées
La définition mathématique de la dérivée commence par la formule de

différenciation suivante :

Δ𝑦 𝑓(𝑥𝑖 +∆𝑥)−𝑓(𝑥𝑖 )
= (4.1)
Δ𝑥 ∆𝑥

Sur la figure ci-dessus on voit comment évolue cette expression. Ainsi, quand Δx

tends vers zéro ce rapport exprime la tangente ou la pente de la fonction en xi.

C’est la définition de la dérivée.

d𝑦 𝑓(𝑥𝑖 +∆𝑥)−𝑓(𝑥𝑖 )
= 𝑓 ′ (𝑥𝑖 ) = lim (4.2)
d𝑥 ∆𝑥→0 ∆𝑥
La dérivée seconde va nous renseigner sur l’évolution de la dérivée, elle est notée

𝑑 𝑑𝑦 𝑑2 𝑦
f’’(xi), ( ) ou . Comme exemple on peut citer : la position, la vitesse et
𝑑𝑥 𝑑𝑥 𝑑𝑥 2

l’accélération.

Pour des fonctions à plusieurs variables, on introduit les dérivées partielles. Pour

une fonction deux variables x et y, on écrit :

𝜕𝑓(𝑥𝑖 ,𝑦𝑗 ) 𝑓(𝑥𝑖 +∆𝑥,𝑦𝑗 )−𝑓(𝑥𝑖 ,𝑦𝑗 )


= lim (4.3)
𝜕𝑥 ∆𝑥→0 ∆𝑥

𝜕𝑓(𝑥𝑖 ,𝑦𝑗 ) 𝑓(𝑦𝑗 +∆𝑦,𝑥𝑖 )−𝑓(𝑦𝑗 ,𝑥𝑖 )


= lim (4.4)
𝜕𝑦 ∆𝑦→0 ∆𝑦

Dérivation numérique
L’utilisation du développement en série de Taylor d’une fonction est l’outil principal

pour la dérivation numérique.

x0 x1 xi-1 xi xi+1
Le développement en série de Taylor d’une fonction f(x) au point xi et dérivable

(n+1) s’écrit :

𝑓(𝑥𝑖+1 ) = 𝑃𝑛 (𝑥𝑖 ) + 𝑅𝑛+1 (𝑥𝑖 ) (4.5)

(𝑥𝑖+1 −𝑥𝑖 )2 (𝑥𝑖+1 −𝑥𝑖 )𝑛


𝑃𝑛 (𝑥𝑖 ) = 𝑓(𝑥𝑖 ) + (𝑥𝑖+1 − 𝑥𝑖 )𝑓 ′ (𝑥𝑖 ) + 𝑓 ′′ (𝑥𝑖 ) + ⋯ . + 𝑓 𝑛 (𝑥𝑖 )
2! 𝑛!
(4.6)

(𝑥𝑖+1 −𝑥𝑖 )𝑛+1


𝑅𝑛+1 (𝑥𝑖 ) = 𝑓 𝑛+1 (𝑥𝑖 ) (4.7)
(𝑛+1)!

Si on arrête la série de Taylor à l’ordre 2 :

𝑃1 (𝑥𝑖 ) = 𝑓(𝑥𝑖 ) + (𝑥𝑖+1 − 𝑥𝑖 )𝑓 ′ (𝑥𝑖 ) (4.8)

(𝑥𝑖+1 −𝑥𝑖 )2
𝑅2 (𝑥𝑖 ) = 𝑓 2 (𝑥𝑖 ) (4.9)
2!
On peut donner une approximation de la dérivée première :

𝜕𝑓 𝑓𝑖+1 −𝑓𝑖
( ) = + 𝑂(∆𝑥 1 ) forward difference (schéma progressif) (4.10)
𝜕𝑥 𝑖 ∆𝑥

La question à laquelle il faut apporter une réponse est : comment choisir ∆x ?

Cet intervalle doit être plus grand que le plus petit réel que la machine peut

manipuler (10-38) en simple précision. Dans le cas contraire la machine affichera

erreur (division par zéro). Par ailleurs, il doit être assez grand pour que xi+1 et xi

soient vus comme étant différent par la machine. De plus, l’intervalle doit être

suffisamment petit pour que l’erreur de troncature soit faible. On dira que

l’expression de ldérivée première est d’ordre 1. Pour une fonction linéaire

l’expression donne le résultat exact car la dérivée seconde est nulle.

𝜕𝑓 𝜕2 𝑓 ∆𝑥 2
𝑓𝑖+1 = 𝑓𝑖 + ( ) ∆𝑥 + ( 2) + 𝑂(∆𝑥 3 ) (4.11)
𝜕𝑥 𝑖 𝜕𝑥 𝑖 2!
𝜕𝑓 𝜕2 𝑓 ∆𝑥 2
𝑓𝑖−1 = 𝑓𝑖 − ( ) ∆𝑥 + ( 2) + 𝑂(∆𝑥 3 ) (4.12)
𝜕𝑥 𝑖 𝜕𝑥 𝑖 2!
A l’aide de ces deux formules on peut obtenir deux autres approximations de la

dérivée première :
𝜕𝑓 𝑓𝑖 −𝑓𝑖−1
(𝜕𝑥 ) = + 𝑂(∆𝑥 2 ) backword difference, schema regressif (4.13)
𝑖 ∆𝑥

𝜕𝑓 𝑓𝑖+1 −𝑓𝑖−1
(𝜕𝑥 ) = + 𝑂(∆𝑥 2 ) central différence, schéma centré (4.14)
𝑖 2∆𝑥

Dérivée seconde
En faisant la somme des relations 4.11 et 4.12, on obtient la relation suivante pour

la dérivée seconde :

𝜕2 𝑓 𝑓𝑖+1 −2𝑓𝑖 + 𝑓
= 2
𝑖−1
+ 𝑂(∆𝑥2 ) (4.15)
𝜕𝑥 2 ∆𝑥

Si on veut améliorer la précision en diminuant l’erreur de troncature, il faut utiliser

un nombre de point plus élevé.

Méthode des coefficients indéterminés


Les expressions qu’on vient d’établir sont appelées différence finies. Pour la

dérivée première elles ne font intervenir que deux points du domaine et pour

améliorer la précision, il faut ajouter des points. La procédure normale consiste à

écrire une série de Taylor entre le point où la dérivée est à calculer et tous les

autres points qui doivent intervenir dans l’expression finale. Ainsi, si on veut la

dérivée première en xi tout en faisant intervenir fi, fi+1, et fi+2, on écrit :


𝜕𝑓 𝜕2 𝑓 ∆𝑥 2
𝑓𝑖+1 = 𝑓𝑖 + ( ) ∆𝑥 + ( 2) + 𝑂(∆𝑥 3 ) (4.16)
𝜕𝑥 𝑖 𝜕𝑥 𝑖 2!
𝜕𝑓 𝜕2 𝑓 (2∆𝑥)2
𝑓𝑖+2 = 𝑓𝑖 + ( ) 2∆𝑥 + ( 2) + 𝑂(∆𝑥 3 ) (4.17)
𝜕𝑥 𝑖 𝜕𝑥 𝑖 2!

Faisant :

𝜕𝑓
4𝑓𝑖+1 − 𝑓𝑖+2 = 3𝑓𝑖 + 2∆𝑥 (𝜕𝑥) + 𝑂(∆𝑥 3 ) (4.18)
𝑖

𝜕𝑓 4𝑓𝑖+1 −3𝑓𝑖 −𝑓𝑖+2


(𝜕𝑥) = + 𝑂(∆𝑥 2 ) (4.19)
𝑖 2∆𝑥

Application :
Montrer que :

𝜕𝑓 𝑓𝑖−2 −8𝑓𝑖−1 +8𝑓𝑖+1 −𝑓𝑖+2


(𝜕𝑥) = + 𝑂(∆𝑥 4 ) (4.20)
𝑖 12∆𝑥

Dérivée seconde

Les expressions pour la dérivée seconde peuvent être

obtenues d’une manière similaire que pour la dérivée première.

Ainsi, en faisant la somme des relations (4.11 et 4.12) on

obtient l’expression suivante :

𝜕2 𝑓 𝑓𝑖+1 −2𝑓𝑖 −𝑓𝑖+1


(𝜕𝑥 2 ) = + 𝑂(∆𝑥 2 ) (4.21)
𝑖 ∆𝑥 2
Calcul des dérivées sur des intervalles non uniforme :
La procédure est identique à la précédente elle est basée sur les séries de Taylor.

Soit à évaluer le relation 4.19 sur des intervalles non uniformes.


𝜕𝑓 𝜕2 𝑓 ∆𝑥12
𝑓𝑖+1 = 𝑓𝑖 + ( ) ∆𝑥1 + ( 2) + 𝑂(∆𝑥 3 ) (4.22)
𝜕𝑥 𝑖 𝜕𝑥 𝑖 2!
𝜕𝑓 𝜕2 𝑓 (∆𝑥1 +∆𝑥2 )2
𝑓𝑖+2 = 𝑓𝑖 + ( ) (∆𝑥1 + ∆𝑥2 ) + ( ) + 𝑂(∆𝑥 3 ) (4.23)
𝜕𝑥 𝑖 𝜕𝑥 2 𝑖 2!

Soit ∆x2=a*∆x1, (4.23) devient :


2
𝜕𝑓 𝜕2 𝑓 ((1+𝑎)∆𝑥1 )
𝑓𝑖+2 = 𝑓𝑖 + ( ) (1 + 𝑎)∆𝑥1 + ( ) + 𝑂(∆𝑥 3 ) (4.24)
𝜕𝑥 𝑖 𝜕𝑥 2 𝑖 2!

Maintenant multipliant par exemple 4.22 par (1+a) et faisant (1+a)fi+1

-fi+2, on obtient :

𝜕2 𝑓 (1+𝑎) (1+𝑎)2
(1 + 𝑎)𝑓𝑖+1 − 𝑓𝑖+2 = 𝑎𝑓𝑖 + ( ) [ − ] ∆𝑥12 + 𝑂(∆𝑥 3 )(4.25)
𝜕𝑥 2 𝑖 2! 2!

𝜕2 𝑓 (1+𝑎)𝑓𝑖+1 −𝑎𝑓𝑖 −𝑓𝑖+2


( ) =2 + 𝑂(∆𝑥 2 ) (4.26)
𝜕𝑥 2 𝑖 (1+𝑎)(2+𝑎)∆𝑥 2

Déterminer l’expression de la dérivée première.


Chapitre 4

Intégration numérique

Dans les méthodes d’intégration numérique, l’intégrale d’une fonction continue sur un

intervalle borné [a,b] est remplacée par une somme finie. Le choix de l’intervalle

d’intégration et celui des coefficients intervenant dans la somme approchant l’intégrale

sont des critères importants afin de minimiser l’erreur. Ces méthodes se répartissent en

deux grandes catégories : les méthodes composées dans lesquelles la fonction f(x) est

remplacée par un polynôme d’interpolation sur chaque intervalle élémentaire [xi, xi+1] et les

méthodes de Gauss fondées sur les polynômes orthogonaux pour lesquelles les points de la

subdivision sont imposés.

Principes
𝑏
Soit une fonction continue sur un intervalle [a,b]. Soit à calculer l’intégrale ∫𝑎 𝑓(𝑥)𝑑𝑥 en

discrétisant l’intervalle d’intégration en n points.

𝑎 = 𝑥1 < 𝑥2 < . . . . . < 𝑥𝑛−1 < 𝑥𝑛 = 𝑏


et en approchant la fonction f sur chaque intervalle par une somme finie de la

forme

𝑏
∫𝑎 𝑓(𝑥)𝑑𝑥 ≅ ∑𝑛−1
𝑖=1 𝛼𝑖 𝑓(𝑥𝑖 ) (4.1)

Méthode des rectangles


Dans la méthode des rectangles, on remplace la fonction à intégrer f par une

fonction constante par morceaux g(x) sur chaque intervalle élémentaire [xi, xi+1],

soit par les rectangles à gauche : g(x) = f(xi) pour x appartenant à [xi, xi+1]
𝑏
∫𝑎 𝑓(𝑥)𝑑𝑥 ≅ ∑𝑛−1
𝑖=1 (𝑥𝑖+1 − 𝑥𝑖 )𝑓(𝑥𝑖 ) (4.2)

soit par les rectangles à gauche : g(x) = f(xi+1) pour x appartenant à [xi, xi+1]

𝑏
∫𝑎 𝑓(𝑥)𝑑𝑥 ≅ ∑𝑛−1
𝑖=1 (𝑥𝑖+1 − 𝑥𝑖 )𝑓(𝑥𝑖+1 ) (4.3)
Méthodes des trapèzes
Dans la méthode des trapèzes, on remplace la fonction à intégrer f par une

fonction lineaire reliant les points (xi, f(xi)) et (xi+1, f(xi+1)) sur chaque intervalle

élémentaire [xi, xi+1],

(𝑥 − 𝑥𝑖 )𝑓(𝑥𝑖+1 ) − (𝑥 − 𝑥𝑖+1 )𝑓(𝑥𝑖 )


𝑔(𝑥) =
(𝑥𝑖+1 − 𝑥𝑖 )
En remplaçant on obtient :

𝑏 𝑓(𝑥𝑖+1 )+𝑓(𝑥𝑖 )
∫𝑎 𝑓 (𝑥 )𝑑𝑥 ≅ ∑𝑛−1
𝑖=1 (𝑥𝑖+1 − 𝑥𝑖 ) 2
(4.3)
Méthode de Simpson
Dans la méthode de Thomas Simpson (1710-1761), la fonction f(x) est remplacée

par un polynôme du second degré définissant un arc de parabole passant par les

points d’ordonnées xi, xi+1, xi+2 . La méthode s’écrit :

𝑏 𝑓(𝑎) + 4 ∑𝑛−1 𝑛−2


1,3,5 𝑓 (𝑥𝑖 ) + 2 ∑2,4,6 𝑓(𝑥𝑗 ) + 𝑓 (𝑏 )
∫ 𝑓(𝑥 )𝑑𝑥 ≅ (𝑏 − 𝑎)
𝑎 3𝑛

𝑏 (𝑥𝑖+1 −𝑥𝑖 ) 𝑥𝑖+1 +𝑥𝑖


∫𝑎 𝑓 (𝑥 )𝑑𝑥 ≅ ∑𝑛−1
𝑖=1 6
(𝑓(𝑥𝑖+1 ) + 𝑓(𝑥𝑖 ) + 4𝑓 (
2
)) (4.3)

Vous aimerez peut-être aussi