Vous êtes sur la page 1sur 3

INSAT 2022/2023

Analyse numérique - TP 03
Intégration Numérique
IMI3 Octave

Soit f une fonction réelle intégrable sur [a, b]. On se propose de calculer une valeur approchée de
Z b
I= f (x) dx. (1)
a

On utilisera des formules de quadratures à n + 1 points de la forme

ft Jn (f ) =
n
X

i=0
wi f (xi ) (2)
ra
ou des formules d’intégration composées, Jnh (f ), définies sur la subdivision de [a, b] en N sous intervalles
uniformes.

Exercice 1

1. (a) Écrire une fonction permettant d’approcher I à l’aide de l’une des formules du rectangles (droite,
gauche, point-milieu).
D

val_integ=integ_composite(f,a,b,N,Meth)
avec f est la fonction à intégrer, [a, b] l’intervalle d’intégration, N le nombre de sous-intervalle de
[a, b] et "Meth" est du type caractère qui peut être égale à ’L’ si on veut utiliser la méthode du
rectangle à gauche, ’R’ pour la méthode du rectangle à droite et ’M’ pour la formule du point
milieu.
(b) Étendre cette dernière fonction pour pouvoir utiliser les formules de trapèze et de Simpson
composites lorsque la variable Meth prend les valeurs respectives ’T’ et ’S’.
On rappelle que:
N −1
!
b−a X
JnT (f ) = f (x0 ) + f (xN ) + 2 f (xk ) (3)
2N
k=1
N −1 N −1
!
b−a X X xk + xk+1
JnS (f ) = f (x0 ) + f (xN ) + 2 f (xk ) + 4 f( ) (4)
6N 2
k=1 k=0

1√
b−a
Z
2. Soit h = et soit I = x dx.
N 0

(a) Sur le même graphe, tracer la courbe d’évolution de l’erreur (relative) d’intégration en fonction
de h pour toutes les méthodes. On prendra N = 2k avec 3 ≤ k ≤ 16.
(b) Vérifier que, pour chaque méthode, l’erreur est proportionnelle à hδ (δ est à déterminer).

3. Écrire un script pour déterminer le degrés de chacune des formules utilisées.


2 Mathématique appliquées – Tp 3

Z 2
¯ On se propose de calculer une valeur approchée de I = f (x) dx avec
−1
 √ √ √
2 2 3
si

f (x) = 1 x∈[ , + ] (5)
 0 sinon 4 2 5

(a) Étudier le comportement des méthodes d’intégrations pour approcher I en fonction de N .


(b) Expliquer le résultat.

Exercice 2
Soit T > 0, on considère le problème de Cauchy suivant:
 ′
y (t) = f (t, y(t)) t ∈ [0, T ]
(6)
y(0) = y0

On a pour t ∈ [0, T ]

fty(t) − y0 =
Z

0
t
y ′ (s) ds =
Z

0
t
f (s, y(s)) ds = I(f ).

Résoudre (6) nécessite le calcul de la primitive de I(f ) ce qui n’est pas toujours possible. Dans ce cas, on a
recours à l’intégration numérique et donc on obtiendra une approximation de y(t).
Soit un entier N ≥ 1 et δt = N T
le pas de temps. On pose tn = nδt pour n = 1, · · · , N alors on a
ra
−1
N[
[0, T ] = [tn , tn+1 ]. On note par yn ≃ y(tn ) pour 0 ≤ n ≤ N .
n
La résolution numérique de (6) consiste à calculer (yn )1≤n≤N .
On a
Z T N
X −1 Z tn+1 N
X −1 Z tn+1 N
X −1
′ ′
y (s) ds = y (s) ds = f (s, y(s))ds = In (f ).
D

0 n=0 tn n=0 tn n=0


Selon la formule d’intégration utilisée pour calculer In (f ), on aura un schéma d’intégration en temps différent.
1. On applique la formule du rectangle à gauche pour calculer In (f ). Dans ce cas (yn )1≤n≤N sera définie
par: 
yn+1 = yn + δtf (tn , yn ) n ≥ 0
(7)
y0 donnée.
On remarque qu’il s’agit d’une formule explicite de yn+1 en fonction de termes d’instants antérieurs. Il
s’agit du schéma d’Euler explicite.
2. Montrer que lorsqu’on applique la méthode du rectangle à droite, yn+1 est la solution de l’équation
g(t) = 0 où g est une fonction scalaire réelle à déterminer. Le schéma résultant s’appelle schéma
d’Euler implicite.
3. Le schéma de Crank - Nicholson peut être déduit par l’application de la méthode du trapèze pour
calculer In (f ). Déterminer alors l’expression de yn+1 .
4. (a) Ecrire trois scripts de fonctions pour intégrer (6) par les trois schémas définie ci-dessus:
ysol=eulerExplicite(T0,T,dt,f)
ysol=eulerImp(T0,T,dt,f,df,y0,nitMax)
ysol=CrankNocholson(T0,T,dt,f,df,y0,nitMax)

avec "ysol" est le vecteur des (yn )0≤n≤N , "T0" et "T" sont les instants initial et final, "dt" le pas
de temps, "f(t,y)" est une fonction à deux variables, "df(t,y)" est la dérivée de f par rapport
à la deuxième variable, "y0" est la condition initiale c-à-d y(T0 ), "nitMax" est le nombre maximal
d’itérations permises dans le cas où on va utiliser une méthode itérative pour résoudre g(y) = 0.
Mathématiques appliquées – TP 3 3

(b) On considère le problème (6) avec f (t, y) = −ty(t), y0 ∈ R et t ∈ [0, 1]. La solution exacte dans
ce cas est
t2
y(t) = y0 exp(− ).
2
Valider les trois scripts développés dans la question précédente. On prendra dt = 10−2 .
(c) Un schéma d’intégration en temps est dit d’ordre κ > 0 s’il existe une constante C ≥ 0
indépendante de δt tel que
||y(tn ) − yn || ≤ Cδtκ
i. Pour δt ∈ 10−1 , 0.05, 0.025, 10−2 , 0.005, 10−3 , 10−4 , 10−5 , calculer l’erreur maximale


emax définie par


emax = max |y(tn ) − yn |.
0≤n≤N

Dresser un tableau.
ii. Tracer la courbe d’évolution de emax en fonction de δt pour les trois schémas.
iii. Déterminer alors l’ordre de chaque schéma.

Remarques ft
Quelques consignes concernant les documents à rendre:

• Mettre tous les scripts développés ainsi que le rapport dans un seul fichier compressé et l’envoyer par
ra
courriel avant la date limite. Le titre du courriel doit être impérativement:

"IMI3_Tp03_Prénom1_Nom1_&_Prénom2_Nom2"

dans le cas où le travail est fait par deux étudiants: "Pénom1 Nom1" et "Pénom2 Nom2" et
D

"IMI3_Tp03_Prénom1_Nom1"

dans le cas où le travail est fait par un seul étudiant.

• Le fichier compressé doit respecter la règle ci-dessous concernant le nom:

"IMI3_Tp03_Prénom1_Nom1_&_Prénom2_Nom2.zip" ou
"IMI3_Tp03_Prénom1_Nom1.zip"

• Chaque script doit contenir obligatoirement les noms des étudiants qui l’ont développé.

• Il est préférable, d’écrire pour chaque question un script indépendant qui éventuellement fait appel à
une ou plusieurs fonctions. Par exemple, le nom du script réponse à la question (ii) de l’exercice 2 doit
être:

"Tp03_Ex2_Q4_c_ii.m"

Vous aimerez peut-être aussi