i
i
“mathL3” — 2009/6/17 — 11:37 — page 161 — #180 i
i
i
i
i
i
Chapitre 3
R´
ESOLUTION NUM ´
ERIQUE DES ´
EQUATIONS
DIFF ´
ERENTIELLES ET DES ´
EQUATIONS
AUX D ´
ERIV ´
EES PARTIELLES
Les équations différentielles interviennent dans de nombreux domaines comme la méca-
nique, l’astronomie, la biologie, la médecine, etc. Généralement, on ne peut pas calculer
la solution de ces équations de manière exacte. Il est alors nécessaire d’utiliser des mé-
thodes numériques qui donneront des bonnes approximations des solutions pour un coût de
calcul qui ne soit pas trop important. La première de ces méthodes est la méthode d’Euler
(due au mathématicien suisse Leonhard Euler [1707-1783]) ; mais l’étude de ces méthodes s’est
surtout développée à partir des années cinquante avec l’apparition des ordinateurs .
Leonhard Euler
(1707-1783)
Pour calculer une approximation de la solution d’une équation dif-
férentielle avec condition initiale sur un intervalle [t0,t0+T],on
subdivise cet intervalle en sous-intervalles d’extrémités t0<t
1<
... <t
N=t0+Tet on cherche une valeur approchée de la solution
en ces points tn,n=0...N. On étudiera dans ce chapitre deux types
de méthodes : les méthodes à un pas où la valeur approchée de la
solution au temps tn+1est obtenue à partir de la valeur au temps
tn, et les méthodes multipas où le calcul de la valeur approchée en
tn+1fait intervenir plusieurs valeurs approchées antérieures. Cepen-
dant, les problèmes issus de la physique font généralement intervenir
plusieurs variables d’espace et une variable de temps.
On présente dans ce chapitre des exemples simples des trois types
d’équations aux dérivées partielles. Les problèmes elliptiques, qui
modélisent par exemple l’équation de la chaleur en stationnaire,
sont résolus par des méthodes d’éléments finis ; le principe de ces
méthodes est de déterminer une solution approchée dans un espace de dimension finie dont les
fonctions de base possèdent des propriétés d’orthogonalité et sont faciles à intégrer ou dériver;
le calcul de la solution approchée se ramène alors à la résolution d’un système linéaire dont la
matrice est creuse. L’exemple type de problèmes paraboliques est l’équation de la chaleur en
évolution, qui fait intervenir cette fois une variable supplémentaire : le temps. Ces problèmes
sont semi-discrétisés en espace par une méthode d’éléments finis, ce qui conduit à un système
d’équations différentielles, qui est ensuite discrétisé en temps par une méthode adaptée à ce
type de problème. Enfin, la propagation d’ondes est envisagée dans le cadre des équations non
linéaires du premier ordre en temps et en espace, qui sont des équations de type hyperbolique.
La notion de caractéristique est introduite, permettant la résolution explicite de ces équations
sous forme d’ondes de choc ou de détente, dans le cadre particulier du problème de Riemann,
puis la construction de schémas numériques adaptés à l’approximation de ce type de problème.
i
i
“mathL3” — 2009/6/17 — 11:37 — page 162 — #181 i
i
i
i
i
i
Partie I. Analyse numérique
162
I. La méthode d’Euler
I.1.Généralités
Soit [t0,t0+T]un intervalle fermé de R,fune fonction continue de [t0,t0+T]×Rpdans Rp,y0
un élément de Rp; on cherche une fonction yC1([t0,t0+T];Rp)qui vérifie
t[t0,t0+T],y(t)=f(t,y(t)) (3.1)
y(t0)=y0. (3.2)
Ce problème est le problème de Cauchy pour l’équation différentielle (3.1) et la condition (3.2)
est une condition de Cauchy.Souventtreprésente le temps ; t0est alors appelé instant initial
et y0condition initiale. La donnée de fest équivalente à la donnée de pfonctions f1,f2,...,fp
continues de [t0,t0+T]×Rpdans Ret l’équation différentielle est équivalente au système
différentiel :
y
1(t)=f1(t,y1(t),...,yp(t))
.
.
.
y
p(t)=fp(t,y1(t),...,yp(t))
.
Les équations différentielles précédentes sont du premier ordre car elles ne font intervenir que
les dérivées premières de y. On peut plus généralement considérer des équations différentielles
d’ordre supérieur, mais elles se ramènent aux équations du premier ordre ; en effet, considérons
l’équation différentielle
y(q)(t)=f(t,y(t),y(t),...,y(q1)(t)) , (3.3)
fC([t0,t0+T]×(Rp)q;Rp), et cherchons en une solution yCq([t0,t0+T];Rp).Sionpose
z1=y,z2=y,...,zq=y(q1), le problème (3.3) devient équivalent au système différentiel
z
1(t)=z2(t)
.
.
.
z
q(t)=f(t,z1(t),...,zq(t))
qui peut s’écrire sous la forme z(t)=F(t,z(t)) z=t(z1,...,zq)et
F(t,z)=t(z2,...,zq,f(t,z1,...,zq)) ,
la notation t(·)désignant ici la transposition. La condition de Cauchy pour le problème (3.3)
s’écrit alors
y(t0)=y0,...,y(q1)(t0)=y(q1)
0,(y0,...,y(q1)
0)(Rp)q.
Des résultats d’existence (locale ou globale) ont été vus au chapitre 16 de l’ouvrage Mathé-
matiques L2, Pearson Education, 2007. Rappelons ici le résultat le plus important, à savoir
le théorème de Cauchy-Lipschitz, qui assure l’existence d’une solution maximale lorsque fest
lipschitzienne par rapport à la deuxième variable y.
i
i
“mathL3” — 2009/6/17 — 11:37 — page 163 — #182 i
i
i
i
i
i
163
Chapitre 3. Résolution numérique des équations différentielles et des équations aux dérivées partielles
Rappel Le théorème de Cauchy-Lipschitz
On suppose que la fonction fest continue sur [t0,t0+T]×Rpet vérifie
R>0, LRtel que t[t0,t0+T],y,zB(y0,R),f(t,y)−f(t,z)LRyz,
.désigne une norme sur Rpet B(y0,R)labouledecentrey0et de rayon R. Alors le
problème de Cauchy ((3.1),(3.2)) admet une unique solution maximale.
Nous nous placerons toujours dans le cadre de ce théorème lorsque nous définirons les méthodes
numériques.
I.2.Définition de la méthode d’Euler
Il n’est en général pas possible de calculer une solution exacte du problème de Cauchy. On doit
alors utiliser des méthodes numériques. Dans toute la suite, pour simplifier les notations, nous
nous restreindrons au cas des équations scalaires (p=1, Rp=R). La plupart des résultats se
généralisent de façon immédiate au cas p>1 en remplaçant les valeurs absolues par des normes.
Dans cette section, nous étudions la plus simple des méthodes numériques : la méthode d’Euler
explicite (ou Euler progressive). On considère donc le problème de Cauchy
y(t)=f(t,y(t))
y(t0)=γdonn´e. (3.4)
On se donne une subdivision σ:t0<t
1<···<t
n<t
n+1<···<t
N=t0+Tde l’intervalle
[t0,t0+T]. On note pour n=0, ..., N1, hn=tn+1tnle pas et h=h(σ):=maxnhn.La
solution du problème de Cauchy vérifie
y(tn+1)=y(tn)+tn+1
tn
f(t,y(t))dt .
Si y0est une approximation de y(t0), on calcule l’approximation ynde y(tn)par
yn+1=yn+hnf(tn,yn),0nN1, (3.5)
ce qui revient à remplacer f(t,y(t)) par f(tn,yn)pour t]tn,tn+1[. Cette méthode est la mé-
thode d’Euler 1. Le problème essentiel est l’estimation de l’erreur de discrétisation
en:= y(tn)−yn(3.6)
en fonction de h. Nous ferons l’hypothèse que fC([t0,t0+T]×R)(en abrégé C([t0,t0+T]))
et vérifie
L>0, t[t0,t0+T],y,zR,|f(t,y)−f(t,z)|L|yz|, (3.7)
ce qui implique que le problème admet une solution globale sur [t0,t0+T]. Dans la sous-section
suivante, nous donnerons une majoration de l’erreur de discrétisation. Nous étudierons ensuite
le comportement asymptotique de cette erreur ; ceci nous permettra d’obtenir une meilleure
approximation de y(tn)en utilisant le procédé d’extrapolation à la limite de Richardson. Enfin,
nous décrirons une méthode de contrôle du pas qui permet d’assurer que l’erreur locale reste
voisine d’un seuil de tolérance fixé.
1. Elle fut introduite par le mathématicien suisse Leonhard Euler (1707-1783), sans doute dès 1768.
i
i
“mathL3” — 2009/6/17 — 11:37 — page 164 — #183 i
i
i
i
i
i
Partie I. Analyse numérique
164
I.3.Majoration de l’erreur de discrétisation
On définit l’erreur de troncature à l’instant tn+1par
n+1=1
hn
(y(tn+1)−y(tn)−hnf(tn,y(tn))). (3.8)
Pour estimer cette erreur de troncature, on introduit le module de continuité d’une fonction.
Définition 3.1. Soit gC([t0,t0+T]). Pour tout δ>0, on définit le module de continuité
ω(g;δ)par
ω(g;δ)= max
t1,t2[t0,t0+T]
|t1t2|δ
|g(t1)−g(t2)|.
L’erreur de troncature peut se majorer en
|n+1|=1
hntn+1
tn
(y(t)−y(tn))dtω(y;h),n=0, ..., N1. (3.9)
Comme yC0([t0,t0+T]), nous avons lim
h−→0ω(y;h)=0. Si on suppose de plus que fappartient
àC1([t0,t0+T]×R),alorsyC2([t0,t0+T]) et
y(t)= ∂f
∂t (t,y(t)) + ∂f
∂y (t,y(t))f(t,y(t)) .
En utilisant la formule de Taylor, on en déduit
|n+1|=1
hntn+1
tn
(tn+1t)y(t)dttn+1
tn
|y(t)|dt .
On déduit de (3.5) et (3.8) la relation
en+1=en+hn(f(tn,y(tn)) − f(tn,yn)) + hnn+1, (3.10)
d’où, en utilisant l’inégalité (3.7), |en+1|(1+hnL)|en|+hn|n+1|. Donnons maintenant un
résultat sur la majoration des solutions d’inégalités récurrentes.
Lemme 3.2. Soit (θn)n0et (μn)n0deux suites de réels positifs ou nuls qui vérifient
θn+1(1+hnL)θn+μn+1,n0
pour une certaine constante positive L. On a alors la majoration
θneL(tnt0)θ0+
n
i=1
eL(tnti)μi,n0. (3.11)
Preuve.On vérifie facilement par récurrence sur nque pour tout n0,
θn(1+hn1L)···(1+h0L)θ0+
n1
i=1
(1+hn1L)···(1+hiL)μi+μn.
D’autre part, pour x0, on a l’inégalité (1+x)ex, d’où l’on déduit
θneL(h0+···+hn1)θ0+
n1
i=1
eL(hn1+···+hi)μi+μn,n0.
i
i
“mathL3” — 2009/6/17 — 11:37 — page 165 — #184 i
i
i
i
i
i
165
Chapitre 3. Résolution numérique des équations différentielles et des équations aux dérivées partielles
D’après la définition de hn, on a l’égalité hn1+···+hi=tntiet l’inégalité précédente
implique immédiatement la majoration (3.11). n
Nous pouvons alors énoncer le théorème :
Théorème 3.3. Si fest continue sur [t0,t0+T]×Ret vérifie l’hypothèse (3.7), alors l’erreur
de discrétisation de la méthode d’Euler satisfait
|en|eL(tnt0)|y(t0)−y0|+eL(tnt0)1
Lω(y;h). (3.12)
Preuve.En appliquant le lemme précédent aux suites (|en|)n0et (hn|n+1|)n0, et en utili-
sant (3.9), on obtient
|en|eL(tnt0)|e0|+
n
i=1
eL(tnti)hi1|i|eL(tnt0)|e0|+ω(y;h)
n
i=1
eL(tnti)ti
ti1
dt
eL(tnt0)|e0|+ω(y;h)
n
i=1ti
ti1
eL(tnt)dt
eL(tnt0)|y(t0)−y0|+ω(y;h)eL(tnt0)1
L.
n
Remarque. Si yC2([t0,t0+T]), on obtient de la même façon
|en|eL(tnt0)|e0|+
n
i=1
eL(tnti)ti
ti1
(tit)|y(t)|dt
eL(tnt0)|e0|+htn
t0
eL(tnt)|y(t)|dt .
Si on choisit y0tel que limh0y0=y(t0), on obtient limh0|y(tn)−yn|=0etonditque
la méthode d’Euler est convergente; si on suppose de plus que yC2([t0,t0+T]),onobtient
|y(tn)−yn|=O(h)lorsque e0=O(h).
Proposition 3.4. Définissons une subdivision σétant donnée, yhC([t0,t0+T]) par
yh(t)=yn+yn+1yn
hn
(ttn),t[tn,tn+1],n=0, ..., N1,
alors la famille yhconverge vers ydans C([t0,t0+T]) lorsque htend vers 0.
Preuve.Si t[tn,tn+1],|yh(t)−y(t)||yh(t)−yn|+|yny(tn)|+|y(tn)−y(t)|,doù
|yh(t)−y(t)||yh(t)−yn|+|en|+ω(y;h). De plus, d’après (3.5), |yh(t)−yn|h|f(tn,yn)|.
Comme |f(tn,yn)|est bornée indépendamment de het n, on en déduit que maxn|yh(t)−y(t)|
tend vers 0 lorsque htend vers 0. n
1 / 27 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !