You are on page 1of 58

A.

Taik Cours AN3 LST-MI


Cours: Equations aux D eriv ees Partielles
M ethodes des Diff erences Finies
Pr eface. Ce cours est une enqu ete de pratique des techniques de r esolution num erique des diff erentes
classes d equations aux d eriv ees partielles (elliptiques, paraboliques et hyperboliques). Laccent
sera mis sur la programmation de sch emas num eriques ` a des probl` emes pratiques dans ling enierie
et les sciences physiques. La r esolution comprendra la m ethode des diff erences nies et la m ethode
des caract eristique pour les EDP hyperboliques. Pratiquement, elles seront pleinement utilis ees
en MATLAB et ses fonctionnalit es de programmation.
D epartement de Math ematiques
FST-Mohammedia, (2008)
1
Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Introduction 5
2. D enition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1 R esolution dune EDP elliptique 9
1. Discr etisation de lEDP: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1. M ethode des diff erences nies: . . . . . . . . . . . . . . . . . . . . . . . 9
1.2. Approximation de l equation diff erentielle partielle . . . . . . . . . . . . . 10
2. R esolution de lEDP par la m ethode directe: . . . . . . . . . . . . . . . . . . . . . 12
2.1. Cas o` u h = 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2. Cas o` u h = 2.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3. M ethode de relaxation de Liebmann . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.1. M ethode: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2. Id ee de Relaxation: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2 R esolution dune EDP parabolique 20
1. Discr etisation de lespace et du temps: . . . . . . . . . . . . . . . . . . . . . . . . 21
1.1. Discr etisation de lespace: . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.2. Discr etisation du temps: . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2. Programmation de la solution analytique: . . . . . . . . . . . . . . . . . . . . . . 21
3. Discr etisation de l equation diff erentielle: . . . . . . . . . . . . . . . . . . . . . . 22
3.1. Rappel de la notation spatiale et temporelle: . . . . . . . . . . . . . . . . . 22
3.2. Discr etisation des d eriv ees partielles: . . . . . . . . . . . . . . . . . . . . 23
3.3. Equation aux d eriv ees partielles discr` etis ee: . . . . . . . . . . . . . . . . . 23
3.4. R esolution num erique du syst` eme: . . . . . . . . . . . . . . . . . . . . . . 24
4. M ethode de Crank - Nicolson ou m ethode implicite: . . . . . . . . . . . . . . . . . 27
4.1. M ethode: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.2. R esolution num erique de lEDP . . . . . . . . . . . . . . . . . . . . . . . 27
4.3. Programmation de la solution . . . . . . . . . . . . . . . . . . . . . . . . 28
5. Comparaison des m ethodes: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.1. Comparaison de u
exact
(0.25, t) et u
app
(0.25, t), u
exact
(0.75, t) et u
app
(0.75, t) 31
2
A. Taik Cours AN3 LST-MI
5.2. Comparaison de u
exact
(x, 0.99) et u
app
(x, 0.99), u
exact
(x, 1.98) et u
app
(x, 1.98) 32
6. Etudes th eoriques de la m ethode explicite . . . . . . . . . . . . . . . . . . . . . . 32
6.1. Convergence num erique . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.2. Stabilit e num erique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3 R esolution dune EDP hyperbolique 37
1. Enonc e: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
1.1. R esolution par la m ethode des diff erences nies: . . . . . . . . . . . . . . 37
2. M ethode des caract eristiques: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.1. Pourquoi la m ethode des caract eristiques? . . . . . . . . . . . . . . . . . . 39
2.2. Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.3. M ethode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3. Exercices dapplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.1. Exercice 1: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.2. Exercice 2: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.3. Exercice 3: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4. Exercice 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
R ef erence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
D epartement de Math ematiques
FST-Mohammedia, (2008)
3
List of Figures
1.1 Evolution de la courbe u = 0 en fonction de h avec la m ethode directe . . . . . . 16
1.2 Evolution de la courbe u = 0 en fonction de h pour la m ethode de relaxation . . 19
2.1 Repr esentation graphique de la solution analytique u
exact
(x
i
, t
j
) . . . . . . . . . . 23
2.2 Courbe de la solution num erique, m ethode explicite pour r <
1
2
. . . . . . . . . . . 26
2.3 Courbe de la solution num erique, m ethode explicite pour r >
1
2
. . . . . . . . . . . 26
2.4 Courbe de la solution num erique, m ethode implicite pour r <
1
2
. . . . . . . . . . 30
2.5 Courbe de la solution num erique, m ethode implicite pour r >
1
2
. . . . . . . . . . 30
2.6 Comparaison graphique de u
exact
(0.25, t) et u
app
(0.25, t) . . . . . . . . . . . . . . 31
2.7 Comparaison graphique de u
exact
(0.75, t) et u
app
(0.75, t) . . . . . . . . . . . . . . 31
2.8 Comparaison graphique de u
exact
(x, 0.9281) et u
app
(x, 0.9281) . . . . . . . . . . . 32
2.9 Comparaison graphique de u
exact
(x, 1.9594) et u
app
(x, 1.9594) . . . . . . . . . . . 32
3.1 Repr esentation graphique des caract eristiques . . . . . . . . . . . . . . . . . . . . 41
3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4
A. Taik Cours AN3 LST-MI
1. Introduction
Les equations aux d eriv ees partielles (EDP) sont omnipr esentes dans toutes les sciences, puisquelles
apparaissent aussi bien en dynamique des structures, m ecanique des uides que dans les th eories de
la gravitation ou de l electromagn etisme (Exemple: les equations de Maxwell). Elles sont primor-
diales dans des domaines tels que la simulation a eronautique, la synth` ese dimages, la pr evision
m et eorologique, la d emographie, ou les nances. Enn, les equations les plus importantes de la
relativit e g en erale et de la m ecanique quantique sont egalement des EDP. Ce sont des equations
indispensables pour la r esolution de presque la totalit e des probl` emes dans ces domaines.
Nous pouvons citer par exemple:
1. l equation de Schrdinger indispensable ` a la m ecanique quantique:

2
2m

2
u
x
2
+
u
t
U(x)u = 0
2. l equation dadvection qui d ecrit comment une quantit e est transport ee dans un courant (par
exemple un poluant dans de leau):
u
t
(x, t)+c
u
x
(x, t) = f(x, t), c etant la vit` esse du milieu
qui est souvent une constante.
3. l equation de Black-Scholes utilis ee en nances:
c
t
+ S

2
2

2
c
S
2
+rS
c
S
rc = 0 o` u c = c(t, S) est un prix et , r des constantes.
4. L equation dondes decrivant les ph enom` enes de propagation des ondes sonores et des ondes
electromagn etiques comme la lumi` ere dans des milieux comme lair ou le vide physique:
u
1
c
2

2
u
t
2
= 0

2
u
x
2
+

2
u
y
2
+

2
u
z
2
=
1
c
2

2
u
t
2
. Le nombre c repr esente la c el erit e pour le cas
de la lumi` ere ou la vitesse de propagation de londe u.
5. L equation de Fourrier ou equation de la chaleur qui decrit l evolution de la temp erature en
fonction du temps et de lespace:

2
u
x
2
+

2
u
y
2
+

2
u
z
2
=
1

u
t
. Le nombre est appel e diffusivit e
thermique du milieu.
Certaines de ces EDP ont et e r esolues analytiquement et leurs solutions sont connues. Toute-
fois, un nombre important dautres existent sans solutions analytiques. Cest dans cette optique
que les recherches se sont pench ees sur les m ethodes num eriques pour arriver ` a approximer les
solutions de ces equations.
Notons que malgr e ces efforts ind eniables, il nexiste pas de m ethodes universelles pour la
r esolution num erqiue des EDP. Lalgorithme de r esolution d epend tr` es etroitement du type de
probl` eme pos e. Cest pour cela que nous allons restreindre notre champs d etude. On exigera
que l equation satisfasse quelques propri` et es comme la lin earit e pour que la r esolution soit possi-
ble.
2. D enition
En math ematiques, plus pr ecis ement en calcul diff erentiel, une equation aux d eriv ees partielles
ou equation diff erentielle partielle (EDP) est une equation dont les solutions sont les fonctions
inconnues v eriant certaines conditions concernant leurs d eriv ees partielles. Cest une equation
D epartement de Math ematiques
FST-Mohammedia, (2008)
5
A. Taik Cours AN3 LST-MI
math ematique contenant en plus de la variable d ependante (u dans les cas suivants) des variables
ind ependantes (x, y, ...) R
n
et une ou plusieurs d eriv ees partielles quon peut ecrire sous la
forme:
F(x, y, ..., u,
u
x
,
u
y
,

2
u
x
2
,

2
u
y
2
, ...) = 0,
Exemple
l equation aux d eriv ees partielles

2
u
x
2


2
u
y
2
= 0 qui admet comme solutions: u(x, y) =
(x + y)
3
, u(x, y) = sin(x y),. . .
l equation de la Laplace u = 0, en dimensions 2 2D, qui admet aussi au moins deux
solutions dont u(x, y) = x
2
y
2
et v(x, y) = e
x
sin(y)
les conditions etant moins strictes que dans le cas dune equation diff erentielle ordinaire; les
probl` emes incluent souvent des conditions aux limites qui restreignent lensemble des solutions.
Pour assurer donc lunicit e de la solution, comme on le fait avec les equations diff erentielles or-
dinaires, EDO, on tiendra compte des conditions pr edonn ees comme les conditions aux limites et
les conditions initiales.
Classication des EDP lin eaires du s econd ordre
Comme il est dit haut, il nexiste pas de m ethodes universelles pour la r esolution des EDP, nous
allons nous contenter de celles qui sont lin eaires et du s econd ordre.
Quand on pose X = (x
1
, x
2
, ..., x
n
) R
n
, une equation aux d eriv ees partielles du s econd ordre
sera de la forme:
n

i=1
n

j=1
A
i,j
(X)

2
u
x
i
x
j
(X) +
n

i=1
B
i
(X)
u
x
i
(X) + Cu = G(X)
avec A
i,j
, B
i
, C, G des fonctions ind ependantes de u ne sannulant pas toutes simultan ement dans
R
n
. Si nous nous limitons dans R
2
, cest ` a dire X = (x, y) R
2
l egalit e pr ec edemment pos ee
prend la forme de:
A

2
u
x
2
+ B

2
u
xy
+ C

2
u
y
2
+ D
u
x
+ E
u
y
+Fu = G(x, y) (2.1)
La classe dune telle equation est d et ermin ee par le calcul de
= B
2
(x
0
, y
0
) 4A(x
0
, y
0
)C(x
0
, y
0
)
Si < 0, on parle dune equation elliptique,
D epartement de Math ematiques
FST-Mohammedia, (2008)
6
A. Taik Cours AN3 LST-MI
Si = 0, lEDP est dite parabolique,
Si > 0, on a une equation hyperbolique.
R esoudre num eriquement un exemple pour chaque type d equation aux d eriv ees partielles sus-
mentionn es constituera nos projets dans ce rapport.
Remarque:
Notons que les m ethodes num eriques passent toujours par des discr etisations des probl` emes an-
alytiques en des probl` emes num eriques et quil existe une innit e des m ethodes de discr etisation
dune equation. Nous ne pouvons jamais les enumerer toutes mais les plus couramment utilis ees
pour la r esolution des equations aux d eriv ees partielles sont:
1. La m ethode des diff erences nies,
2. La m ethode des el ements nis,
3. la m ethode des volumes nis,
4. la m ethode des caract eristiques.
Mais sachez que nous nutiliserons ici que la m ethode des diff erences nies.
La m ethode consiste ` a remplacer les d eriv ees partielles par des diff erences divis ees ou combi-
naisons de valeurs ponctuelles de la fonction en un nombre ni de points discrets ou noeuds
du maillage. Lavantage de cette m ethode est quil y a une grande simplicit e d ecriture et un
faible cot de calcul. Elle est couramment pratique et facile dacc` es. Elle repose sur deux no-
tions : la discr etisation des op erateurs de d erivation ou diff erentiation et la convergence du sch ema
num erique ainsi obtenu. Son inconv enient est quon se limite ` a des g eom etries simples, et quil y
a des difcult es de prise en compte des conditions aux limites de type Neumann.
Maillage:
Puisquon a evoqu e le mot maillage dans le paragraphe pr ec edent et quon en aura tout le temps
besoin, d enissons-le ici.
On appelle maillage un ensemble de points du domaine de d enition sur lequel on va appliquer
la m ethode des diff erences nies. Pour une application d enie sur un segment de R, on ajoutera
en g en eral les deux extr emit es du segment; pour un maillage en dimension sup erieure, on sera
amen e ` a choisir, eventuellement, des points du contours du domaine de d enition. On appelle
le pas du maillage la distance entre deux points successifs du maillage voisins. En dimension 1,
cela se simplie en diff erence des abscisses. Ce pas nest pas n ecessairement constant, il peut
m eme etre judicieux de ne pas le xer comme tel. Le pas (global) de lapproximation peut etre
d eni comme le plus grand pas du maillage. Ainsi, si ce pas global tend vers 0, cela veut dire
D epartement de Math ematiques
FST-Mohammedia, (2008)
7
A. Taik Cours AN3 LST-MI
que la r epartition des points du maillage dans lintervalle choisi tend ` a se faire sur tout le domaine
d etude par densit e.
Exemple: Pour un intervalle de validit e [0, 2], avec n le nombre des pas, on aura n + 1 points qui
sont donn es par la relation x
i
= i h avec h =
2
n
constant, 0 i n.
Notation indicielle:
Durant ces projets nous utiliserons souvent la notation indicielle. Cest pourquoi nous voulons
en rappeler le principe. si x est un des vecteurs de base du rep` ere (quadrillage) discr etis e, nous
noterons le point x(i), qui est la i
eme
abscisse par x
i
et de m eme la j
eme
ordonn ee y(j) sera not e
y
j
et si u est maintenant la fonction, ici la solution de l equation aux d eriv ees partielles d ependant
seulement des variables de lespace, on remplacera u(x
i
, y
j
) par u
i,j
. Si, en plus des variables de
lespace, il existe une variable temprelle t(k) = t
k
, alors la fonction u(x
i
, y
j
, t
k
) sera not ee u
k
i,j
.
En r esum e, les indices des variables spatiales resteront en indices et celui du temps sera en ex-
posant. Cest ce quon appelera la notation indicielle.
D epartement de Math ematiques
FST-Mohammedia, (2008)
8
Chapitre 1
R esolution dune EDP elliptique
1. Discr etisation de lEDP:
Soit :

2
u
x
2
+

2
x
2
= 0, (x, y) [a, b] [c, d]
On prendra h
x
et h
y
les pas de discr etisation des intervalles [a, b] et [c, d]
1. Discr etisation de lintervalle [a, b]
h
x
=
ba
n
x
(n
x
etant le nombre dintervalles dans [a, b])
x(i) = x
i
= a + i h
x
, i = 0, 1, , n
x
2. Discr etisation de lintervalle [c, d]
h
y
=
dc
ny
(n
y
etant le nombre dintervalles dans [c, d])
y(j) = y
j
= c + j h
y
, j = 0, 1, , n
y
Remark 1. : Constatons que x
i+1
= a + ( + 1)h
x
= (a + h
x
) + h
x
= x
i
+ h
x
. Dans la suite,
nous remplacerons chaque fois x
i
+ h
x
, x
i
h
x
, y
j
+ h
y
, y
j
h
y
succ essivement par x
i+1
, x
i1
,
y
i+1
, y
i1
.
1.1. M ethode des diff erences nies:
Cette m ethode consiste ` a approximer les d eriv ees partielles dune equation au moyen des devel-
oppemets de Taylor et ceci se d eduit directement de la d enition de la d eriv ee.
Soit f(x, y) une fonction continue et d erivable de classe C

, alors la d eriv ee partielle pr emi` ere de


f par rapport ` a x est calcul ee par la formule:
f

x
(x, y) = lim
h
x
0
f(x + h
x
, y) f(x, y)
h
x
9
A. Taik Cours AN3 LST-MI
Si h
x
<<< 1, le d eveloppement de Taylor au voisinage de 0 de f(x + h
x
, y) donne:
f(x + h
x
, y) = f(x, y) + h
x
f
x
+ (h
x
) f(x, y) +h
x
f
x
avec une erreur de lordre de h
x
.

f(x, y)
x

f(x + h
x
, y) f(x, y)
h
x
Ceci est appel e le sch ema avant.
De la m eme mani` ere, nous pouvons aussi donner le sch ema arri` ere qui est de la forme:
f(x, y)
x
= lim
hx0
f(x, y) f(x h
x
, y)
h
x
Avec la formule de Taylor, ceci nous donne:
f(x, y) = f(x h
x
, y) +h
f(x,y)
x
+ (h
x
) f(x h
x
, y) + h
f(x,y)
x
avec une erreur de h
x
.

f(x, y)
x

f(x, y) f(x h
x
, y)
h
x
La somme de ces deux sch emas nous donne le sch ema centr e suivant:
f(x, y)
x

f(x +h
x
, y) f(x h
x
, y)
2h
x
.
En r esum e, on a les trois approximations suivantes pour la d eriv ee partielle premi` ere de f(x, y)
par rapport ` a x avec la formule de Taylor:
f

x
(x, y) = lim
h
x
0
f(x + h
x
, y) f(x, y)
h
x

_
f(x+h
x
,y)f(x,y)
h
x
sch ema avant
f(x,y)f(xh
x
,y)
h
x
sch ema arri` ere
f(x+h
x
,y)f(xh
x
,y)
2h
x
sch ema centr e
La d eriv ee s econde f

x
de f(x, y) sera alors de la forme:

2
f
x
2

f(x
i+1
,y
j
)f(x
i
,y
j
)
h
x

f(x
i
,y
j
)f(x
i1
,y
j
)
h
x
h
x

2
f
x
2

f(x
i+1
, y
j
) 2f(x
i
, y
j
) + f(x
i1
, y
j
)
h
2
x
(1.1)
Nous utiliserons tour ` a tour ces egalit es dans la suite pour approximer les d eriv ees partielles.
1.2. Approximation de l equation diff erentielle partielle
Soit l equation de Laplace:
u = 0

2
u
x
2
+

2
u
y
2
= 0 (1.2)
D epartement de Math ematiques
FST-Mohammedia, (2008)
10
A. Taik Cours AN3 LST-MI
Posons u(x
i
, y
j
) = u
i,j
(en notation indicielle). Compte t enu de la relation 1.1 du paragraphe
pr ec ecdent,

2
u
x
2

u
i+1,j
2u
i,j
+ u
i1,j
h
2
x
Puisque x
i
et y
j
jouent un rle sym etrique dans l equation du potentiel (de Laplace), un raison-
nement analogue ` a celui de lapproximation de f

x
nous donne:

2
u
y
2

u
i,j+1
2u
i,j
+ u
i,j1
h
2
y
rapportons ces aproximations dans lEDP 1.2:
u
u
i+1,j
2u
i,j
+u
i1,j
h
2
x
+
u
i,j+1
2u
i,j
+ u
i,j1
h
2
y
= 0
Dans ce cas particulier o` u h
x
= h
y
= h, donc, nous avons nalement:
_
u = 0
u
i+1,j
+u
i,j+1
4u
i,j
+u
i1,j
+u
i,j1
h
2
= 0
i = 0, 1, , n
x
et j = 0, 1, , n
y
Remark 2. : A chaque etape, nous r emarquons que pour calculer la valeur de u
i,j
au point (x
i
, y
j
)
nous avons besoin de connatre les points u
i1,j
, u
i,j1
, u
i+1,j
et u
i+1,j
comme lindique le dessin
suivant:
-
6
j
i
u
i,j
u
i1,j
u
i+1,j
u
i,j1
u
i,j+1

@
@
@
@
@
@
@
@
@
@
Cest pour cela que nous appelons cette formule la formule ` a 5 points qui peut etre represent ee
comme suit:
u = 0 =
1
h
2
_
_
_
1
1 4 1
1
_
_
_
u
i,j
= 0
D epartement de Math ematiques
FST-Mohammedia, (2008)
11
A. Taik Cours AN3 LST-MI
2. R esolution de lEDP par la m ethode directe:
Exemple:
Soit ` a r esoudre l equation de Laplace
_
_
_
u = 0 dans le domaine (x, y) [0, 20] [0, 10]
u(x, 0) = u(x, 10) = u(0, y) = 0 et u(20, y) = 100
h
x
= h
y
= h {5, 2.5, 1.25, 0.625, 0.3125}
Tout en variant h, r esoudre cette EDP:
1. En utilisant la m ethode directe.
2. En utilisant la m ethode de relaxation de Liebmann.
3. Conclure.
2.1. Cas o` u h = 5
On a: h
x
=
ba
n
x
n
x
=
ba
h
x
=
200
5
= 4 et n
y
=
dc
h
y
=
100
5
= 2 La grille maill ee contient alors
(n
x
+1)(n
y
+1) mailles vu que nous avons ` a rajouter les points o` u x
i
= 0 et ceux o` u y
j
= 0 cest ` a
dire les points intersection de la courbe avec les axes. Mais comme les conditions aux limites nous
donnent les images sur les bords, alors les points inconnus restent seulement ceux de lint erieur du
cadrillage. Ce qui fait donc que le nombre dinconnues est alors (n
x
1) (n
y
1) = 3 1 = 3
Nous obtenons le syst` eme de trois equations ` a trois inconnues suivant:
_
_
_
4u
1,1
+u
2,1
+ 0u
3,1
= 0
u
1,1
4u
2,1
+ u
3,1
= 0
0u
1,1
+ u
2,1
4u
3,1
= 100
Il nous reste maintenant ` a r esoudre le syst` eme matriciel: A U = B Avec:
A =
_
_
4 1 0
1 4 1
0 1 4
_
_
, B =
_
_
0
0
100
_
_
et U =
_
_
u
1,1
u
2,1
u
3,1
_
_
Avec une des m ethodes vues en Analyse Num erique II (r esolution des syst` emes lin eaires), nous
obt enons la solution:
U =
_
_
1.786
7.143
26.786
_
_
D epartement de Math ematiques
FST-Mohammedia, (2008)
12
A. Taik Cours AN3 LST-MI
2.2. Cas o` u h = 2.5
Nous avons aussi: n
x
=
ba
h
=
200
2.5
= 8 et n
y
=
dc
h
=
100
2.5
= 4, ce qui nous donne un syst` eme
` a n = (n
x
1) (n
y
1) = 7 3 = 21 equations ` a 21 inconnues de la forme:
_

_
4u
1,1
+u
2,1
+ + u
1,2
+ = 0
u
1,1
4u
2,1
+ u
3,1
+ + u
2,2
+ = 0
.
.
.
+ u
6,1
4u
7,1
+ = 100
u
1,1
+ 4u
2,1
+ u
2,2
+ = 0
.
.
.
Les conditions aux limites nous ont ramen e ` a avoir la grille suivante dans laquelle nous allons
chercher les inconnus de l equation:
-
6
0
0
0
0
0
0
0 0 0 0 0 0 0 0 x
y
0 0 0 0 0 0 0 0
100
100
100
u
1,1
u
2,1
u
3,1
u
1,2
u
1,3
u
1,4
u
1,5
u
1,6
u
1,7
u
2,2
u
3,2
u
2,3
u
2,4
u
2,5
u
2,6
u
2,7
u
2,3
u
3,4
u
3,5
u
3,6
u
3,7
Avec un petit programme sur Matlab, nous transformons la matrcie U en un vecteur v pour
pouvoir bien r esoudre le syst` eme sans erreur puisque la r esolution du syst` eme AU = B exige que
U soit un vecteur. Voici le programme qui a assur e la transformation:
********************************************
for j=1:ny-1
for i=1:nx-1
v(k)=u(i,j);
k=k+1;
end
end
**********************************************
D epartement de Math ematiques
FST-Mohammedia, (2008)
13
A. Taik Cours AN3 LST-MI
Ce qui nous donne apr` es, le syst` eme:
_

_
4v
1
+v
2
+ +v
8
+ = 0
v
1
4v
2
+v
3
+ +v
9
+ = 0
.
.
.
+v
6
4v
7
+ = 100
v
1
+ 4v
8
+ v
9
+ = 0
.
.
.
Il nous reste maintenant ` a r esoudre le syst` eme matriciel suivant: A v = B, avec
A =
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
4 1 1
1 4 1 1
0 1 4 1 1
.
.
.
.
.
.
.
.
.
1 4 0 1
1 0 4 1 1
0
.
.
.
.
.
. 1
.
.
.
.
.
.
.
.
.
.
.
.
0 1 1 4
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
et B =
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
0
.
.
.
.
.
.
100
.
.
.
.
.
.
100
.
.
.
.
.
.
100
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
Lutilisation de la m ethode de Jacobi ou Gauss-Seidel pourrait nous donner les solutions du
syst` eme. Toutefois, nous allons adapter la r esolution directe comme le titre lindique pour r esoudre
ce syst` eme. voici le programme complet, expliqu e, saisi en Matlab qui nous a permis davoir la
matrice U ` a partir des calculs des elements du vecteur v.
*************************************************
clc;clear
h=2.5;
a=0;
b=20;
c=0; d=10;
nx=(b-a)/h;
ny=(d-c)/h;
n=(nx-1)*(ny-1);
%%% (remplissage des el ements de la matrice A)
A=zeros(n);
for i=1:(n-1)
A(i,i)=-4;
A(i+1,i)=1;
A(i,i+1)=1;
D epartement de Math ematiques
FST-Mohammedia, (2008)
14
A. Taik Cours AN3 LST-MI
if (mod(i,(nx-1))==0)
A(i+1,i)=0;
A(i,i+1)=0;
end
end
for i=1:n-nx+1
A(nx-1+i,i)=1;
A(i,nx-1+i)=1;
end
A(n,n)=-4;
%%% (remplissage des el ements de la matrice B)
for i=1:n
B(i)=0;
if (mod(i,nx-1)==0)
B(i)=-100;
end
end
%%% (r esolution du syst` eme Av=B et transformation du vecteur v en la matrice U).
V = A\B

;
k=1;
for j=1:ny-1
for i=1:nx-1
u(j,i)=V(k);
k=k+1;
end
end
%%% (d ecallage des elements pour ins erer les conditions aux limites)
for j=ny:-1:2
for i=nx:-1:2
u(j,i)=u((j-1),i-1);
end
end
for i=1:nx
for j=1:ny
u(1,i)=0;
u(j,1)=0;
u(ny+1,i)=0;
u(j,nx+1)=100;
end
end
u(1,nx+1)=0;
%%% les vecteurs x et y
D epartement de Math ematiques
FST-Mohammedia, (2008)
15
A. Taik Cours AN3 LST-MI
x=0:h:b; y=0:h:d;
%%% (afchage la courbe en tenant compte des vecteurs x ,y et de la matrice U)
mesh(x,y,u)
**********************************************
Remark 3. : Pour evaluer le syst` eme avec les autres valeurs de h, il suft de remplacer 2.5 par
les autres valeurs et compiler le programme, cela donnera la courbe correspondante pour chaque
valeur de h.
Voici en r esum e, les courbes quon obtient en variant h:
Figure 1.1: Evolution de la courbe u = 0 en fonction de h avec la m ethode directe
Malgr e que cette m ethode ait pu nous donner une solution approch ee ` a lEDP u = 0, celle-ci
est obt enue par une approximation des

2
u
x
2
et

2
u
y
2
par lutilisation de la formule de Taylor tronqu ee
` a lordre 2. Nous avons donc commis une erreur de lordre de h
2
.
Non seulement cette erreur commise est consid erable mais le calcul des el ements du vecteur v
est de plus en plus couteux en m emoire. Par exemple pour h
x
= h
y
= h = 1.25, la matrice
A M(105). La r esolution de ce syst` eme matriciel avec Aune matrice carr ee (105, 105) n ec essite
une m emoire de 14000 bytes (octets) dans la machine. Or, pour afner beaucoup plus la solution
num erique vers la solution analytique, nous d evons faire tendre h vers zero pour quil soit tr` es
proche de la limite approxim ee par la m ethode de Taylor. Ce qui augmentera encore la n ec essit e
D epartement de Math ematiques
FST-Mohammedia, (2008)
16
A. Taik Cours AN3 LST-MI
de m emoire et qui risquera de planter la machine sinon nous devons avoir des machines ` a m emoires
gigantesques (qui ne sont pas ` a la port ee de tout le monde!).
3. M ethode de relaxation de Liebmann
Pour r em` edier le probl` eme pr ec edement pos e, Liebmann a pens e ` a la m ethode it erative de Gauss-
Seidel puisque la matrice A est ` a diagonales dominantes, cest ` a dire:
| A
i,i
|>
n

j=1,j=i
| A
i,j
|, 1 i n
3.1. M ethode:
Le sch ema num erique obtenu dans la partie 1 de ce projet nous donne:
u
i1,j
+ u
i,j1
4u
i,j
+ u
i+1,j
+ u
i,j+1
= 0
u
i,j
=
u
i1,j
+u
i,j1
+ u
i+1,j
+ u
i,j+1
4
u
k+1
i,j
=
u
k+1
i1,j
+ u
k+1
i,j1
+ u
k
i+1,j
+u
k
i,j+1
4
(3.1)
Cette m ethode est appel ee m ethode it erative de Liebmann. Une condition initiale est exig ee,
comme pour toute autre m ethode it erative, pour pouvoir commencer le proc essus.
Pour cette m ethode, on a besoin de seulement 6000 bytes (octets) pour r esoudre le syst` eme au lieu
de 14000 bytes pour la m ethode directe, pour h = 1.25.
On peut aussi ecrire:
u
k+1
i,j
= u
k
i,j
+
_
u
k+1
i1,j
+ u
k+1
i,j1
+ u
k
i+1,j
+u
k
i,j+1
4
_
le terme entre crochets est appel e r esidus conu comme un ajustement de la valeur pr ec edente u
k
i,j
pour avoir la valeur u
k+1
i,j
3.2. Id ee de Relaxation:
Au lieu dajouter exactement le r esidus, on ajoute un terme un peu plus grand en introduisant un
facteur de relaxation w compris entre 1 et 2 pour avoir la nouvelle relation :
u
k+1
i,j
= u
k
i,j
+ w
_
u
k+1
i1,j
+ u
k+1
i,j1
+u
k
i+1,j
+ u
k
i,j+1
4
_
D epartement de Math ematiques
FST-Mohammedia, (2008)
17
A. Taik Cours AN3 LST-MI
w est appel e un optimum, et il est obtenu, dans les conditions de Dirichlet, par une estimation plus
raisonnable comme etant la plus petite valeur des solutions de l equation
(cos

n
x
+ cos

n
y
)
2
w
2
16w + 16 = 0
La r esolution de cette equation du s econd d egr e nous donne:
w
opt
=
4
2 +
_
4 (cos

nx
+ cos

ny
)
2
Nous reprenons ici le m eme exercice enonc e au d ebut du projet et le r esoudre en utilisant cette
nouvelle relation. voici, en Matlab, le programme ` a compiler avec h = 0.625. Pour avoir les autres
courbes, il suft de changer la valeur de h par les autres valeurs.
************************************************
clear; clc;
a=0; b=20;
c=0; d=10;
h=0.625 ;
%%% les vecteurs ox, oy x=0:h:b; y=0:h:d;
nx=(b-a)/h; ny=(d-c)/h;
c=cos(pi/nx)+cos(pi/xy);
w=4/(2+sqrt(4-C*C));
u=zeros(ny+1,nx+1);
v=zeros(ny+1,nx+1);
for j=2:ny
u(j,nx+1)=100;
end
while (abs(norm(u-v) 1e-6))
v=u;
for j=2:nx
for i=2:ny
u(i,j)= u(i,j)+w/4*(u(i+1,j)+u(i-1,j)+u(i,j+1)+u(i,j-1)-4*u(i,j));
end
end
end
mesh(x,y,u)
*************************************************
Voici les courbes r epresentatives pour chaque valeur de h.
D epartement de Math ematiques
FST-Mohammedia, (2008)
18
A. Taik Cours AN3 LST-MI
Figure 1.2: Evolution de la courbe u = 0 en fonction de h pour la m ethode de relaxation
Conclusion
Nous remarquons que les deux m ethodes convergent et tendent ` a former une vraie courbe spatiale
quand h tend vers zero. Ce qui est en commun accord avec les approximations car si h <<< 1,
les approximations de Taylor sont presque egales aux d eriv ees partielles respectives. Il faut donc
tenir compte de la valeur de h et ne lui attribuer une valeur ` a son gr e. Il est aussi ` a noter quavec
la m ethode de relaxation le probl` eme de m emoire qui a et e un eau dans la m ethode explicite est
r esolu puisquon est pass e dun besoin en m emoire de 14000 bytes pour la m ethode directe ` a 6000
bytes pour la m ethode de Liebmann avec h = 1.25. Cette m eme m ethode de relaxation de Lieb-
mann converge vite que la m ethode directe, ceci se voit par comparaison simple des gures.
Le choix de la m ethode compte aussi plus pour mieux mener la r esolution num erique dune
equation aux d eriv ees partielles.
D epartement de Math ematiques
FST-Mohammedia, (2008)
19
Chapitre 2
R esolution dune EDP parabolique
Enonc e:
Soit ` a r esoudre l equation de la chaleur
u
t
=

2
u
x
2
avec R xe. Consid erons le syst` eme:
_

_
u
t
=

c

2
u
x
2
u(x, 0) =
_
100x si x [0, 1]
100(2 x) si x [1, 2]
u(0, t) = u(2, t) = 0
Prendre = 0.13, c = 0.11, = 7.8g/cm
3
, x = 0.25. t sera donn e par les conditions de
stabilit e d enies par lin equation: r =

c
t
x
2
<
1
2
. La solution analytique est donn ee par:
u
exact
(x, t) = 800

n=0
1

2
(2n + 1)
2
cos
(2n + 1)(x 1)
2
e
0.3738(2n+1)
2
t
1. Utiliser la m ethode directe (m ethode explicite) en supposant r >
1
2
puis r <
1
2
. Que
constatez-vous?
2. Utiliser maintenant la m ethode de Crank- Nicolson et faites varier le r. Que constatez-vous?
3. Comparaisons des m ethodes:
(a) Comparer, en fonction de r, graphiquement u
exact
(0.25, t) et u
app
(0.25, t) puis u
exact
(0.75, t)
et u
app
(0.75, t)
(b) M eme question pour u
exact
(x, 0.99) et u
app
(x, 0.99) puis
u
exact
(x, 1.98) et u
app
(x, 1.98)
4. Conclure.
20
A. Taik Cours AN3 LST-MI
1. Discr etisation de lespace et du temps:
1.1. Discr etisation de lespace:
Nous devons r esoudre notre equation aux d eriv ees partielles dans lespace compris entre 0 et 2
avec un pas x. Pour passer donc trouver le point x
i
` a partir du point x
i1
, nous devons ajouter ` a
ce dernier le terme x, de sorte que nous avons:

_
x
i
= x
i1
+ x
x
i1
= x
i2
+ x
.
.
.
x
2
= x
1
+ x
x
1
= x
0
+ x
En sommant membres ` a membres les equations ainsi obtenues et apr` es simplications, nous trou-
vons:
x
i
= x
0
+ (i 1 + 1)x = x
0
+ ix or x
0
nest autre que le point a de lintervalle [a, b], donc,
nalement:
x
i
= a + ix, 1 i n
x
avec n
x
=
ba
x
=
2
x
1.2. Discr etisation du temps:
Notre equation, cest ` a dire le proc essus de r esolution doit se refaire dans un intervalle de temps
egal ` a t jusqu` a arriver ` a T
max
. Pour passer de t
j
` a t
j+1
nous devons ` a chanque fois ajouter t ` a
t
j
. Par un raisonnement par r ecurence comme pr ec edemment, nous tirons: t
j
= jt car t
0
= 0 et
correspond ` a linstan t = 0.
t
j
= jt, 1 j n
t
avec n
t
=
Tmax
t
2. Programmation de la solution analytique:
Soit:
u
exact
(x, t) = 800

n=0
1

2
(2n + 1)
2
cos
(2n + 1)(x 1)
2
e
0.3738(2n+1)
2
t
Puisque nous sommes en analyse num erique et non en analyse fondamentale nous devons savoir
que nous ne travaillons quavec des points dun maillage et non dans tout le domaine comme on
aurait cru le faire. Pour evaluer la valeur num erique de u
exact
pour tout point appartenant dans la
grille, nous devons faire une boucle qui, pour chaque point (x
i
, t
j
), calcule u
exact
(x
i
, t
j
).
Posons = 100 acceptable en analyse num erique, nous avons donc le programme suivant qui cal-
cule les el ements de la matrice v repr esentant exactement les valeurs de u(x
i
, t
j
) dans le cadrillage.
D epartement de Math ematiques
FST-Mohammedia, (2008)
21
A. Taik Cours AN3 LST-MI
***********************************
clc; clear;
k=0.13;c=0.11; p=7.8;dx=0.25;
r=1/4
dt=dx*dx*c*p*r/k;
Tmax=100*dt;%%(Nous avons fait Tmax un multiple de dt pour quen le divisant par dt, nt soit
toujours un entier, car sinon le programme ne compilera pas)%
cla=0; clb=0;
a=0;b=2;
nx=(b-a)/dx;
nt=Tmax/dt;
x=0:dx:b; t=0:dt:Tmax;
% *********** la solution analytique ********************
v=zeros(nx+1,nt+1);
n=0;
while(n 100)
for i=1:nx+1
for j=1:nt+1
u(i, j) = v(i, j) +8001/(pi
2
(2n+1)
2
) cos(pi (2n+1) (x(i) 1)/2) exp(0.3738
(2 n + 1)
2
t(j));
v(i,j)=u(i,j);
end
end
n=n+1;
end
mesh(t,x,v)
*****************************
Voici la courbe que nous avons obt enue pour r =
1
4
:
3. Discr etisation de l equation diff erentielle:
3.1. Rappel de la notation spatiale et temporelle:
Si la fonction u prend comme variables le temps t
j
et de lesapce x
i
, y
j
, , par commodit e du
langage, on notera u(x
i
, t
j
) par u
j
i
et en dimension 2D de lespace et 1D en temps, u(x
i
, y
j
, t
k
)
sera not ee par u
k
i,j
D epartement de Math ematiques
FST-Mohammedia, (2008)
22
A. Taik Cours AN3 LST-MI
Figure 2.1: Repr esentation graphique de la solution analytique u
exact
(x
i
, t
j
)
3.2. Discr etisation des d eriv ees partielles:
Dapr` es les approximations vues dans le projet 1, pargraphe 1.1.1, nous pouvons approximer

2
u
x
2
par:

2
u
x
2
(x
i
, t
j
)
u
j
i+1
2u
j
i
+ u
j
i+1
(x)
2
(3.1)
Puisque
u
t
est une d eriv ee simple cest ` a dire une d eriv ee pr emi` ere, nous utilisons ici lune des
trois formules vues en projet 1, paragraphe 1.1.1. Prenons la formule avale (droite):
u
t
(x
i
, t
j
)
u
j+1
i
u
j
i
t
(3.2)
Nous avons remplac e h
x
par x et h
t
par t.
3.3. Equation aux d eriv ees partielles discr` etis ee:
Remplaons 3.1 et 3.2 dans lEDP donn ee en enonc e. On aura:
u
j+1
i
u
j
i
t


c

u
j
i+1
2u
j
i
+u
j
i1
(x)
2
u
j+1
i
u
j
i
=
t
(x)
2


c
(u
j
i+1
2u
j
i
+ u
j
i1
)
Posons r =
t
(x)
2


c
, l equation devient:
u
j+1
i
= ru
j
i+1
+ (1 2r)u
j
i
+ ru
j
i1
Ceci est l equation discr etis ee de l equation de la chaleur avec la m ethode des diff erences nies.
On lappelle equation de la m ethode directe.
D epartement de Math ematiques
FST-Mohammedia, (2008)
23
A. Taik Cours AN3 LST-MI
Remark 4. :
1. r regroupe les constantes physiques du probl` eme et celles de la discr etisation de lespace
[a, b] et du temps [0, T
max
]. Donc les pas de discr etisations inuencent l equation discr etis ee.
2. Pour j = 0, t = 0 et u
1
i
= ru
0
i+1
+(12r)u
0
i
+ru
0
i1
l equation n ec essite la connaissance
de la condition initiale pour d emarrer le proc essus.Cette condition nest autre que f(x, 0) =
f(x
i
) donn ee par l enonc e du probl` eme.
3.4. R esolution num erique du syst` eme:
Quand on xe j et on varie i de 1 ` a n
x
1, on obtient le syst` eme lin eaire de n
x
1 equations ` a
n
x
1 inconnues suivant:
_

_
u
j+1
1
= ru
j
2
+ (1 2r)u
j
1
+ ru
j
0
u
j+1
2
= ru
j
3
+ (1 2r)u
j
2
+ ru
j
1
.
.
.
_
U
j+1
= M U
j
+ N
0 j n
t
1
.
.
.
u
j+1
n
x
1
= ru
j
nx
+ (1 2r)u
j
n
x
1
+ru
j
n
x
2
Avec: u
j
0
la condition aux limites en a, on la notera dans la programmation u
j
0
= cla et u
j
n
x
la
condition aux limites en b qui sera not ee u
j
n
x
= clb. Nous avons donc:
M =
_
_
_
_
_
_
_
_
_
_
_
1 2r r 0 0
r 1 2r r
.
.
.
.
.
.
0 r 1 2r r
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
. r 1 2r r
0 0 r 1 2r
_
_
_
_
_
_
_
_
_
_
_
et N =
_
_
_
_
_
_
_
_
_
_
_
_
rU
j
0
0
.
.
.
.
.
.
.
.
.
0
rU
j
n
x
_
_
_
_
_
_
_
_
_
_
_
_
La matrice M est une matrice tridiagonale ou trigonale et la r esolution est dautant plus simple
` a programmer avec une des m ethodes it eratives ou directes vues en analyse num erique II. Mais,
encore une fois, nous allons nous sufre de la r esolution directe par la division matricielle. Cest
` a dire si on a ` a r esoudre le syst` eme Au = B alors on ecrira en Matlab x = A \ B et nous aurons
automatiquement la r eponse.
Attention: B doit etre un vecteur colonne de m eme nombre d el ements que le nombre des lignes
de A et le vecteur u sera donn e en un vecteur colonne. Il ne nous est pas nouveau de donner la
transpos ee dune matrice pour avoir tout ce que nous voulons.
D epartement de Math ematiques
FST-Mohammedia, (2008)
24
A. Taik Cours AN3 LST-MI
Nous avons pris r =
1
4
pour le cas o` u r <
1
2
et r = 0.625 pour le cas o` u r >
1
2
, on a le programme
suivant qui nous calcule les valeurs du vecteur u, remplac e par le vecteur

h dans le programme
pour pouvoir lier le programme avec le premier calculant les el ements de la matrice v pour la solu-
tion exacte, ` a chaque instant j et qui les stocke dans une matrice w, en commanant par les valeurs
initiales qui ne sont dautres que les conditions initiales. Pour avoir la courbe du deuxi` eme cas, il
suft de remplacer r par 0.625
******************************************
clc; clear;
k=0.13;c=0.11;
p=7.8;dx=0.25;
r=1/4; dt=dx*dx*c*p*r/k;
Tmax=100*dt;
a=0;b=2;
cla=0;clb=0;
nx=(b-a)/dx;
nt=Tmax/dt;
x=0:dx:b; t=0:dt:Tmax;
for i=1:nx-1
N(i)=0;
end
N(1)=r*cla;
N(nx-1)=r*clb;
for i=1:nx-2
M(i,i)=1-2*r;
M(i,i+1)=r;
M(i+1,i)=r;
end
M(nx-1,nx-1)=1-2*r;
for i=1:nx+1
if x(i) < 1
Ci(i)=100*x(i);
else
Ci(i)=100*(2-x(i));
end
end
for i=1:nx-1
h(i)=Ci(i+1);
end
j=1;
D epartement de Math ematiques
FST-Mohammedia, (2008)
25
A. Taik Cours AN3 LST-MI
h=h;
while(j < nt + 2)
for i=1:nx-1
w(i,j)=h(i);
end
h=M*h+N;
j=j+1;
end
for i=nx:-1:2
for j=nt+1:-1:1
w(i,j)=w(i-1,j);
end
end
for j=1:nt+1
w(1,j)=0;
w(nx+1,j)=0;
end
mesh(t,x,w);
*********************************
Voici les courbes obtenues apr` es compilation pour les deux cas:
Figure 2.2: Courbe de la solution num erique,
m ethode explicite pour r <
1
2
Figure 2.3: Courbe de la solution num erique,
m ethode explicite pour r >
1
2
Constatations:
Nous avons r emarqu e, dapr` es les deux graphes corresondantes ` a r <
1
2
et r >
1
2
, que la m ethode
pr esente deux r egions de stabilit e. Si r <
1
2
la m ethode est stable et converge vers la solution
D epartement de Math ematiques
FST-Mohammedia, (2008)
26
A. Taik Cours AN3 LST-MI
analytique. Nous avons une courbe semblable ` a celle de la solution analytiquement etablie. Plus
j saccroit, plus les valeurs du vecteur u deviennent nulles. Ce qui est en entier accord avec la
solution exacte qui est une s erie des fonctions convergente, alors son terme g en eral doit tendre
forcement vers 0.
Mais si r >
1
2
, la m ethode pr esente des failles et la courbe ne converge m eme pas. Lallure obt enue
dans ce cas est totalement en d esaccord avec celle de la solution exacte.
Pour avoir un bon r esultat dans cette m ethode, il faut donc t enir compte de la valeur de r car elle
inuencera le r esultat.
4. M ethode de Crank - Nicolson ou m ethode implicite:
En math ematiques, en analyse num erique, la m ethode de Crank-Nicolson est un algorithme sim-
ple permettant de r esoudre des syst` emes d equations aux d eriv ees partielles. Cette m ethode utilise
les diff erences nies pour approcher une solution du probl` eme : elle est num eriquement stable,
et quadratique pour le temps. On peut facilement la g en eraliser ` a des probl` emes ` a deux ou trois
dimensions.
Cette m ethode, publi ee en 1947, est le r esultat des travaux de la math ematicienne britannique
Phyllis Nicolson(1917 1968) et du physicien John Crank (1916 2006). Ils lutilis` erent dans
la r esolution de l equation de la chaleur. Mais, peu apr` es la m ethode est devenue usuelle dans
plusieurs probl` emes num eriques.
4.1. M ethode:
Pour assurer une r esolution num erique stable et ce dans toute la r egion de l etude, Crank et Nicol-
son ont propos e de prendre la moyenne des deriv ees partielles spatiales de u entre les instants t
j
et
t
j+1
au lieu de consid erer seulement la d eriv ee spatiale ` a linstant t
j
, cest ` a dire:
u
t
(x
i
, t
j
) =

2
_

2
u
x
2
(x
i
, t
j
) +

2
u
x
2
(x
i
, t
j+1
)
_
4.2. R esolution num erique de lEDP
Nous remplaons les d eriv ees partielles par leurs approximations d ej` a etablies pour avoir l equation
num erique suivante:
1
2
_
u
j
i+1
2u
j
i
+u
j
i1
(x)
2
+
u
j+1
i+1
2u
j+1
i
+u
j+1
i1
(x)
2
_
=
c


u
j+1
i
u
j
i
t
2
_
u
j+1
i
u
j
i
_
=
t
(x)
2

c
_
u
j
i+1
2u
j
i
+ u
j
i1
+ u
j+1
i+1
2u
j+1
i
+ u
j+1
i+11
_
.
Posons r =
t
(x)
2

c
, on trouve l equation:
ru
j+1
i1
+ (2 + 2r)u
j+1
i
ru
j+1
i+1
= ru
j
i1
+ (2 2r)u
j
i
+ ru
j
i+1
D epartement de Math ematiques
FST-Mohammedia, (2008)
27
A. Taik Cours AN3 LST-MI
Ceci est le sch ema num erique de Crank - Nicolson.
Lorsque nous xons j et faisons varier i, nous obt enons le syst` eme lin eaire suivant:
_

_
ru
j+1
0
+ (2 + 2r)u
j+1
1
ru
j+1
2
= ru
j
0
+ (2 2r)u
j
1
+ ru
j
2
ru
j+1
1
+ (2 + 2r)u
j+1
2
ru
j+1
3
= ru
j
1
+ (2 2r)u
2
i
+ ru
j
3
ru
j+1
2
+ (2 + 2r)u
j+1
3
ru
j+1
4
= ru
j
2
+ (2 2r)u
j
3
+ ru
j
4
.
.
.
.
.
.
ru
j+1
n
x
2
+ (2 + 2r)u
j+1
n
x
1
ru
j+1
nx
= ru
j
n
x
1
+ (2 2r)u
j
nx
+ ru
j
nx
=M
1
U
j+1
+ N
1
= M
2
U
j
+ N
2
Avec:
M
1
=
_
_
_
_
_
_
_
_
_
_
_
2 + 2r r 0 0
r 2 + 2r r
.
.
.
.
.
.
0 r 2 + 2r r
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0
.
.
.
.
.
.
r 2 + 2r r
0 0 r 2 + 2r
_
_
_
_
_
_
_
_
_
_
_
, N
1
=
_
_
_
_
_
_
_
_
_
_
_
_
rU
j+1
0
0
.
.
.
.
.
.
.
.
.
0
rU
j+1
nx
_
_
_
_
_
_
_
_
_
_
_
_
M
2
=
_
_
_
_
_
_
_
_
_
_
_
2 2r r 0 0
r 2 2r r
.
.
.
.
.
.
0 r 2 2r r
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0
.
.
.
.
.
.
r 2 2r r
0 0 r 2 2r
_
_
_
_
_
_
_
_
_
_
_
, N
2
=
_
_
_
_
_
_
_
_
_
_
_
_
rU
j
0
0
.
.
.
.
.
.
.
.
.
0
rU
j
nx
_
_
_
_
_
_
_
_
_
_
_
_
=U
j+1
= M
1
1
[M
2
U
j
+ (N
2
N
1
)]
Ce syst` eme matriciel est lin eaire dordre n
x
1.
4.3. Programmation de la solution
Voici le programme qui sert ` a donner la courbe de la solution num erique de la m ethode de Crank
- Nicolson. Pour avoir la solution (la courbe) pour le deuxi` eme cas, il suft de remplacer r par 0.25:
*********************************
clc; clear;
k=0.13;c=0.11;
D epartement de Math ematiques
FST-Mohammedia, (2008)
28
A. Taik Cours AN3 LST-MI
p=7.8;dx=0.25;
r=0.625;
dt=dx*dx*c*p*r/k;
Tmax=100*dt;
a=0;b=2;
cla=0;clb=0;
nx=(b-a)/dx; nt=Tmax/dt;
x=0:dx:b; t=0:dt:Tmax;
for i=1:nx-1
N1(i)=0;
N2(i)=0;
end
N2(1)=-r*cla;
N2(nx-1)=-r*clb;
for i=1:nx-2
M1(i,i)=2+2*r;
M1(i,i+1)=-r;
M1(i+1,i)=-r;
M2(i,i)=2-2*r;
M2(i,i+1)=r;
M2(i+1,i)=r;
end
M1(nx-1,nx-1)=2+2*r;
M2(nx-1,nx-1)=2-2*r;
for i=1:nx+1
if x(i)<1
Ci(i)=100*x(i);
else
Ci(i)=100*(2-x(i));
end
end
for i=1:nx-1
h(i)=Ci(i+1);
end
j=1;
h=h;
I=eye(nx-1)
while(j<nt+2)
for i=1:nx-1
w(i,j)=h(i);
end
h=(M1\I)*(M2*h+(N2-N1));
D epartement de Math ematiques
FST-Mohammedia, (2008)
29
A. Taik Cours AN3 LST-MI
j=j+1;
end
for i=nx:-1:2
for j=nt+1:-1:1
w(i,j)=w(i-1,j);
end
end
for j=1:nt+1
w(1,j)=0;
w(nx+1,j)=0;
end
mesh(t,x,w);
******************************************
Voici les courbes r epresentatives de w dans les deux situations:
Figure 2.4: Courbe de la solution num erique,
m ethode implicite pour r <
1
2
Figure 2.5: Courbe de la solution num erique,
m ethode implicite pour r >
1
2
Constatations
Nous remarquons ici que la m ethode de Crank - Nicolson est inconditionnellement stable ( cest ` a
dire quel que soit r R). Toutefois, quand r >
1
2
la m ethode converge plus vite vers 0 que si cest
le cas contraire. Il faut aussi savoir quon paie cette stabilit e par la r esolution, ` a chaque instant t
j
,
dun syst` eme lin eaire qui n ec essite une inversion de la matrice M
1
tridiagonale, soit:
M
1
U
j+1
+ N
1
= M
2
U
j
+ N
2
=U
j+1
= M
1
1
[M
2
U
j
+ (N
2
N
1
)]
D epartement de Math ematiques
FST-Mohammedia, (2008)
30
A. Taik Cours AN3 LST-MI
5. Comparaison des m ethodes:
En fonction de r, nous voulons comparer graphiquement la m ethode num erique explicite (directe)
avec la solution analytique pour voir comment la solution approch ee se rapproche ` a la solution
exacte.
5.1. Comparaison de u
exact
(0.25, t) et u
app
(0.25, t), u
exact
(0.75, t) et u
app
(0.75, t)
Nous combinons le programme de la solution analytique avec celui de la solution num erique di-
recte pour pouvoir faire la comparaison, puis on ajoute ` a la n du nouveau programme, la partie
suivante:
R emarquons que x
i
= 0.25 si i = 2 et x
i
= 0.75 pour i = 4.
**************************
Sa1=v(2,:);
Sn1=w(2,:);
plot(t,Sa1,r,t,Sn1,g);
Sa2=v(4,:);
Sn2=w(4,:)
gure(2)
plot(t,Sa2,r,t,Sn2,g);
**************************
Voici donc les courbes comparatives de ces deux m ethodes aux points 0.25 et 0.75:
Figure 2.6: Comparaison graphique de
u
exact
(0.25, t) et u
app
(0.25, t)
Figure 2.7: Comparaison graphique de
u
exact
(0.75, t) et u
app
(0.75, t)
D epartement de Math ematiques
FST-Mohammedia, (2008)
31
A. Taik Cours AN3 LST-MI
5.2. Comparaison de u
exact
(x, 0.99) et u
app
(x, 0.99), u
exact
(x, 1.98) et u
app
(x, 1.98)
Remarquons quavec r =
1
4
, on na pas un point j tel que t
j
= 0.99 ni t
j
= 1.98 mais on voit que
pour j = 10, t
j
= 0.9281 0.99 et pour j = 20, t
j
= 1.9594 1.98. On refait ensuite la m eme
chose mais on ajoute ` a pr esent la partie suivate ` a la n de la combinaison:
%%********************************
Sa1=v(:,10);
Sn1=w(:,10);
plot(t,Sa1,r,t,Sn1,g);
Sa2=v(:,20);
Sn2=w(:,20)
gure(2) plot(t,Sa2,r,t,Sn2,g);
*******************************
Voici donc les courbes comparatives des solutions pour les deux m ethodes ` a t
j
= 0.9281 et t
j
=
1.9594:
Figure 2.8: Comparaison graphique de
u
exact
(x, 0.9281) et u
app
(x, 0.9281)
Figure 2.9: Comparaison graphique de
u
exact
(x, 1.9594) et u
app
(x, 1.9594)
6. Etudes th eoriques de la m ethode explicite
6.1. Convergence num erique
La notion de Convergence signie que la solution num erique (donn ee par le schema num erique)
approche la solution exacte (analytique) quand x 0 et t 0, ce qui signie que la maille
devient tr` es petite.
D epartement de Math ematiques
FST-Mohammedia, (2008)
32
A. Taik Cours AN3 LST-MI
Considerons u
j
i
la solution num erique approch ee et U
j
i
la solution exacte de l equation:
U
t
=
k
c

2
U
x
2
Au point x = x
i
et t = t
j
, notons: e
j
i
= U
j
i
u
j
i
Pour r =
k
c

t
(x)
2
, u
j+1
i
= r(u
j
i+1
+u
j
i1
) +
(1 2r)u
j
i
.
e
j
i
= U
j
i
u
j
i
u
j
i
= U
j
i
e
j
i
que lon remplace dans le schema num erique pr ec edente:
U
j+1
i
e
j+1
i
= r(U
j
i+1
e
j
i+1
+ U
j
i1
e
j
i1
) + (1 2r)(U
j
i
e
j
i
)
e
j+1
i
=
_
r(e
j
i+1
+ e
j
i1
) + (1 2r)e
j
i

+ U
j+1
i
r(U
j
i+1
+ U
j
i1
) (1 2r)U
j
i
.
Avec la m ethode de Taylor, nous trouvons:
_

_
U
j+1
i
= U
j
i
+ t
U
t
(x
i
, ), t
j
t
j+1
U
j
i+1
= U
j
i
+ x
U
x
(x
i
, t
j
) +
(x)
2
2


2
U
x
2
(
1
, t
j
), x
i

1
x
i+1
U
j
i1
= U
j
i
x
U
x
(x
i
, t
j
) +
(x)
2
2


2
U
x
2
(
2
, t
j
), x
i1

2
x
i
que lon remplace dans l equation pr ec edemment trouv ee pour avoir:
e
j+1
i
=
_
r(e
j
i+1
+ e
j
i1
) + (1 2r)e
j
i

+ U
j
i
+ t
U
t
(x
i
, ) r(U
j
i
+ x
U
x
(x
i
, t
j
)
+
(x)
2
2


2
U
x
2
(
1
, t
j
)) r(U
j
i
x
U
x
(x
i
, t
j
) +
(x)
2
2


2
U
x
2
(
2
, t
j
)) (1 2r)U
j
i
.
Apr` es simplication des quantit es en couleurs, l equation devient:
e
j+1
i
=
_
r(e
j
i+1
+ e
j
i1
) + (1 2r)e
j
i

+t
U
t
(x
i
, )r(
(x)
2
2

2
U
x
2
(
1
, t
j
)+
(x)
2
2

2
U
x
2
(
2
, t
j
))
Dans un maillage tr` es n, les points de la discr etisation sont tr` es proches les uns des autres. Nous
avons donc x
i

1
x
i+1
, x
i1

2
x
i
ainsi que t
j
t
j+1
. Pour ce, nous allons
remplacer
1
et
2
par x
i
et par t
j
puis r par
k
c
t
(x)
2
pour avoir l equation sous la forme:
e
j+1
i
=
_
r(e
j
i+1
+ e
j
i1
) + (1 2r)e
j
i

+ t
U
t
(x
i
, t
j
)
k
c
t
(x)
2
(
(x)
2
2


2
U
x
2
(x
i
, t
j
)
+
(x)
2
2


2
U
x
2
(x
i
, t
j
)).
Apr` es simplication de la quatit e (x)
2
, factorisons t:
e
j+1
i
=
_
r(e
j
i+1
+ e
j
i1
) + (1 2r)e
j
i

+ t
_
U
t
(x
i
, t
j
)
k
c

2
U
x
2
(x
i
, t
j
)
_
.
D epartement de Math ematiques
FST-Mohammedia, (2008)
33
A. Taik Cours AN3 LST-MI
Le deuxi` eme crochet, qui nest autre que l equation de la chaleur initialement pos ee dans l enonc e,
est nul. Ce qui nous done l egalit e nale:
e
j+1
i
= re
j
i+1
+ re
j
i1
+ (1 2r)e
j
i

e
j+1

re
j
i+1
+ re
j
i1
+ (1 2r)e
j
i

Si r < 1/2, on a: 1 2r > 0 |1 2r| = 1 2r, alors:

e
j+1

e
j
i+1

+ r

e
j
i1

+ (1 2r)

e
j
i

Posons
E
j
= max
1inx1

e
j
i

e
j+1

rE
j
+rE
j
+ (1 2r)E
j

e
j+1

E
j
, 1 j n
t
1
Par recurence,

e
j+1

E
j
E
1
E
0
E
0
= U
0
u
0
` a t = 0, or, dapr` es les conditions initiales, U
0
u
0
= 0, donc E
0
= 0.

e
j+1

0 e
j
= 0, j et r <
1
2
Donc, la m ethode explicite converge vers z ero quand r < 1/2.
6.2. Stabilit e num erique
On dit quun schema num erique est stable si et seulement si au cours des calculs, lerreur com-
mise dune it eration ` a lautre (dune maille ` a lautre) ninfecte pas le calcul suivant. Dans le cas
contraire, le calcul peut exploser et on naura pas une bonne convergence. soit l equation de la
chaleur:
U
t
=
k
c

2
U
x
2
La num erisation de cette equation nous donne la relation matricielle:
U
j+1
= AU
j
U
1
= AU
0
U
0
etant donn ee par les conditions initiales.
_

_
U
1
= AU
0
U
2
= AU
1
= A
2
U
0
U
3
= AU
2
= A
3
U
0
.
.
.
U
j
= AU
j1
= A
j
U
0
D epartement de Math ematiques
FST-Mohammedia, (2008)
34
A. Taik Cours AN3 LST-MI
Supposons quon introduit U
0
par une certaine erreur et on donne U
0
_

_
U
1
= AU
0
U
2
= AU
1
= A
2
U
0
U
3
= AU
2
= A
3
U
0
.
.
.
U
j
= AU
j1
= A
j
U
0
Avec e
0
= U
0
U
0
e
j
= U
j
U
j
= A
j
U
0
A
j
U
0
= A
j
(U
0
U
0
)
e
j
= A
j
e
0
A admet N valeurs propores distinctes (Ref: cours sur les valeurs propres), donc ses vecteurs
propres associ es forment une basse (Cf Alg` ebre 1):
_

_
AX
1
=
1
X
1
AX
2
=
2
X
2
AX
3
=
3
X
3
.
.
.
AX
n
=
n
X
n

i
est la valeur propore associ e e au vecteur propre X
i
. Il existe alors c
1
, c
2
, c
n
tels que:
e
0
= c
1
X
1
+ c
2
X
2
+ +c
n
X
n
e
j
= A
j
(
N

i=1
c
i
X
i
) =
N

i=1
A
j
c
i
X
i
=
N

i=1
c
i
A
j
X
i
=
N

i=1
c
i

j
i
X
i
e
j
=
N

i=1
c
i

j
i
X
i

e
j

i=1
c
i

j
i
X
i

i=1
|c
i
|

j
i

|X
i
|
Lerreur est matrisable si , |
i
| < 1. Ceci est v eri e si et seulement si:
max
1iN
|
i
| < 1
Pour la matrice Ade cet exemple, les valeurs propres sont donn ees par (voir le cours sur les valeurs
et vecteurs propres):

i
= 1 4r sin
2
i
2(N + 1)
, i = 1, , N
D epartement de Math ematiques
FST-Mohammedia, (2008)
35
A. Taik Cours AN3 LST-MI
Alors:
|
i
| < 1 |1 4r
sin
2
i
2(N + 1)
| < 1, avec r =
k
c

t
x
1 < 1 4r
sin
2
i
2(N + 1)
< 1
pour:
1 < 1 4r
sin
2
i
2(N + 1)
r <
1
2

_
sin
2
i
2(N + 1)
_
1
, i = 1, 2, , N
r <
1
2
min
i=1, ,N
_
sin
2
i
2(N + 1)
_
1
Or x, sin
2
x 1
sin
2
x
a
1, a > 1
_
sin
2
x
a
_
1
1, donc:
min
i=1, , N
_
sin
2
i
2(N + 1)
_
1
1 r <
1
2
On tire encore une fois que la m ethode directe (explicite) est stable si r <
1
2
. Ce qui est en parfait
commun accord avec lexp erience r ealis ee.
Conclusion
Il est int eressant de remarquer que l equation de la chaleur, introduite initialement pour d ecrire la
conduction thermique, apparat egalement dans dautres branches de la physique th eorique. Elle
permet par exemple de d ecrire :
1. Le ph enom` ene de diffusion ;
2. Certains aspects probabilistes du mouvement brownien
Les m ethodes de r esolution de cette equation sont multiples et diversi ees. Toutefois, il faut
faire attention ` a la stabilit e et la convergence de la m ethode choisie car, simple et facile ` a manipuler
quelle soit, elle pourrait causer des instabilit es inattendues et si on na pas la solution analytique
pour faire la comparaison, des confusions pourraient sengendrer. Il serait sage de payer le cot
de r esolution et avoir une m ethode stable et convergente inconditionnellement que de se contenter
dune r esolution al eatoire ( valable pour quelques valeurs particuli` eres) vue quelle soit maniable
facilement.
D epartement de Math ematiques
FST-Mohammedia, (2008)
36
Chapitre 3
R esolution dune EDP hyperbolique
1. Enonc e:
Soit ` a r esoudre une equation hyperbolique donn ee par:
A

2
u
t
2
+ B

2
u
xt
+ C

2
u
x
2
+ E = 0 (1.1)
1.1. R esolution par la m ethode des diff erences nies:
Sch ema num erique simpli e
Posons a = c
1
(la c el erit e), b = 0, c = 1 et e = 0, ce qui nous donne:
= b
2
4ac = 0 4(c
1
)(1) = 4c
1
> 0 car c
1
> 0. Cest bien donc une equation hyperbolique
qui nest autre que l equation dondes:

2
u
t
2
c
1

2
u
x
2
= 0.
Comme les deux d eriv ees sont des d eriv ees secondes, nous utilisons les approximations de Taylor
trouv ees dans les equations 1.1 pour etablir le sch ema num erique de cette EDP. Nous avons donc:
u
j+1
i
2u
j
i
+ u
j1
i
(t)
2
= c
1
u
j
i+1
2u
j
i
+ u
j
i1
(x)
2
u
j+1
i
= c
1
(t)
2
(x)
2
(u
j
i+1
+ u
j
i1
) 2(1 c
1
(t)
2
(x)
2
)u
j
i
u
j1
i
.
Ceci est l equation num erique de l equation dondes. Pour simplier le sch ema, posons:
c
1
(t)
2
(x)
2
= 1 t =
x

c
1
.
u
j+1
i
= u
j
i+1
+ u
j
i1
u
j1
i
. (1.2)
37
A. Taik Cours AN3 LST-MI
Remark 5. Avec les diff erences nies, l equation 1.2 est le sch ema num erique utilis ee pour la
r esolution de l equation dondes

2
u
t
2
= c
1

2
u
x
2
.
Mais, il se pose un probl` eme de mise en oeuvre de ce sch ema vu que u est connu ` a t = t
0
= 0 qui
est la condition initiale. Or, pour calculer u ` a t = t = t
1
, nous devons connaitre la valeur de u
` a t = t
1
= t.
Conditions mixtes:
Connatre les valeurs de u ` a t = t nest plus un probl` eme quand nous avons des conditions de
Newmann, de type d eriv ee ( une condition sur la vit` esse de propagation):
u
t
(x, 0) = g(x), ` a t = 0
u(x
i
, 0)
t
=
u(x
i
, t) u(x
i
, t)
2t
= g(x)

u
1
i
u
1
i
2t
= g(x
i
) u
1
i
= u
1
i
2t g(x
i
).
Remplaons-le alors dans l equation 1.2 il vient:
u
1
i
= u
0
i+1
+ u
0
i1
u
1
i
+ 2t g(x
i
) u
1
i
=
1
2
(u
0
i+1
+ u
0
i1
) + t g(x
i
).
Limite de la m ethode de diff erences nies
Cest avec une condition sur la vit` esse, une approximation de quelques variables comme b = 0 et
e = 0, une simplication de lexpression c
1
t
x
par 1, que nous avons pu r esoudre cette equation
hyperbolique. Toutefois et malheureusement, ce nest pas tout le temps pareil et la donn ee dune
telle condition de type Newmann nest pas usuelle. On sera donc souvent bloqu e sur la r esolution
dune eqaution hyperbolique si nous nous inspirons seulement de la m ethode des diff erences nies.
2. M ethode des caract eristiques:
Il existe une classe d equations aux deriv ees partielles dont on peut obtenir les solutions en utilisant
une m ethode du type g eometrique, la m ethode des caract eristique.
Cest une des plus grandes m ethodes enumer ees en introduction utilis ees pour la r esolution des
equations diff erentielles partielles.
Cette m ethode des caract eristiques est une technique qui est particuli` erement adapt ee aux probl` emes
de transport, elle est utilis ee dans de nombreux domaines tels que la m ecanique des uides ou en-
core le transport de particules.
Dans certains cas particuliers, cette m ethode peut permettre la r esolution purement analytique de
lEDP. Dans des cas plus complexes comme en mod elisation des syst` emes physiques, la m ethode
des caract eristiques peut etre utilis ee comme une m ethode de r esolution num erique du probl` eme.
la m ethode de r esolution que nous pr esentons sapplique aux equations du premier et deuxi` eme
D epartement de Math ematiques
FST-Mohammedia, (2008)
38
A. Taik Cours AN3 LST-MI
ordres avec un nombre des variables sup erieur ` a deux, mais pour la clart e du rapport nous nous
limitons ` a une equation aux deriv ees partielles de deux variables.
2.1. Pourquoi la m ethode des caract eristiques?
la m ethode des caract eristique est simple ` a appliquer, et d emande peu de calculs et le r esultat
obtenu est r emarquablement pr ecis, contrairement ` a ceux des methodes classiques des diff erences
nies et de Galerkin.
2.2. Principe
En math ematique, la m ethode des caract eristique est une technique pour r esoudre les equations
aux deriv ees partielles, plus gen eralement la m ethode des caract eristiques est valable pour toutes
les equations les equations aux deriv ees partielles hyperboliques.
La m ethode consiste ` a r eduire une equation aux d eriv ees partielles ` a une famille d equations dif-
ferntielles ordinaires, le long de laquelle la solution peut etre integr ee ` a partir des donn ees initiales .
Elle cherche des courbes appel ees les courbes caract eristiques ou tout simplement les caract eristiques
le long desquelles l equation aux d eriv ees partielles se r eduit en une equation simple ` a r esoudre.
La r esolution de cette simple equation sur les caract eristiques nous permet de retrouver la solution
globale du probl` eme originale sur tout le maillage. comment pouvons-nous trouver les courbes
caract eristiques ?
2.3. M ethode
En posant

2
u
x
2
= u
xx
,

2
u
t
2
= u
tt
et

2
u
xt
= u
xt
et en consid erant que u
xt
= u
tx
, l equation 1.1 prend
la forme:
au
xx
+ bu
xt
+ cu
tt
+ e = 0. (2.1)
O` u a, b, c, e sont des fonctions ne dependant pas de u et non toutes nulles. Posons:
p =
u
x
= u
x
, et q =
u
t
= u
t
.
=dp =
p
x
dx +
p
t
dt = u
xx
dx + u
xt
dt. (2.2)
et dq =
q
x
dx +
q
t
dt = u
tx
dx + u
tt
dt. (2.3)
Ce qui nous donne, apr` es addition et soustraction:
(2.2) u
xx
=
dp
dx
u
xt
dt
dx
,
D epartement de Math ematiques
FST-Mohammedia, (2008)
39
A. Taik Cours AN3 LST-MI
(2.3) u
tt
=
dq
dt
u
xt
dx
dt
.
Substituons ces egalit es dans l equations 2.1 il vient:
au
xt
dt
dx
+ bu
xt
cu
xt
dx
dt
+ a
dp
dx
+c
dq
dt
+e = 0.
En multipliant cette equation par
dt
dx
, elle devient:
u
xt
_
a(
dt
dx
)
2
b(
dt
dx
) + c
_

_
a
dp
dx

dt
dx
+c
dq
dx
+ e
dt
dx
_
= 0. (2.4)
Grce aux transformations pr ec edentes, la r esolution de l equation 2.1 revient ` a ne r esoudre 2.4.
On suppose que, dans le plan x, t, on d enit les courbes de sorte que le premier crochet soit nul.
Sur ces courbes 2.1, il est equivalent ` a prendre le deuxi` eme crochet aussi egal ` a 0.
Posons m =
dt
dx
, donc si am
2
bm + c = 0, alors la solution de lEDP 2.1 peut- etre trouv ee en
r esolvant:
amdp + cdq + edt = 0.
Les courbes donn ees par am
2
bm +c = 0 sont appel ees les caract eristiques de l equation 2.1.
On se limite dans le cas o` u b
2
4ac > 0, ce qui fait donc que l equation susmentionn ee admet
deux racines distinctes. Chaque point poss edera deux courbes caract eristiques dont les pentes sont
les racines de l equation pr ec edente.
Comment r esoudre une EDP hyperbolique par la m ethode des caract eristiques ?.
Strat egie g en erale
Nous allons maintenant donner les grandes lignes pour r esoudre lEDP 2.1 par une int egration
num erique le long des caract eristiques. On consid` ere deux points P et Q (voir gure1), l equation
aux d eriv ees partielles 2.1 etant hyperbolique, il y a deux caract eristiques en chaque point. La
courbe caract eristique ` a droite de P, de pente m
+
, intersecte celle de gauche de Q, de pente m

au point R.
La solution du probl` eme 2.1 peut- etre trouv ee en r esolvant amdp + cdq + edt = 0 le long de ces
caract eristiques.
Exemple
Soit ` a r esoudre l equation:
u
tt
= c
2
1
u
xx
On a: a = c
2
1
, b = e = 0 et c = 1 b
2
4ac = 4c
2
1
> 0.
am
2
bm +c = c
2
1
+ 1 = 0 m =
1
c
1
m
1
=
1
c
1
et m
2
=
1
c
1
.
D epartement de Math ematiques
FST-Mohammedia, (2008)
40
A. Taik Cours AN3 LST-MI
On a pos e m =
dt
dx
=
1
c
1
dt =
1
c
1
dx
=t =
1
c
1
x
` a t = t, on a alors t 0 = t =
1
c
1
(x x
i
)
-
6
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@


-
R

t = t
t = 0
x

t
P Q
m
+
q
m
+
p
m

p
m

q
Figure 3.1: Repr esentation graphique des caract eristiques
La premiere etape sera de trouver les coordonn ees du point R, pour cela, nous r esolvons l equation:
t = (
dt
dx
)
av
x = m
av
x sur les arcs PR et QR.
Ecrivons l equation amdp + cdq + edt = 0 sous la forme:
a
av
m
av
p + c
av
q +e
av
t = 0. (2.5)
Commenons par le point P et puis par Q en utilisant les valeurs de m appropri ees. Ceci va estimer
p et q au point R.
Finalement, on evaluera u en R de du =
u
x
dx +
u
t
dt, en utilisant la forme:
u = p
av
x + q
av
t. (2.6)
D epartement de Math ematiques
FST-Mohammedia, (2008)
41
A. Taik Cours AN3 LST-MI
3. Exercices dapplication
3.1. Exercice 1:
Soit ` a r esoudre:
_

2
u
t
2
= 2

2
u
x
2
4
u
t
= 0, 0 x 1
u(x, 0) =
_
12x, 0 x 0.25
4 4x, 0.25 x 1
u(0, t) = u(1, t) = 0
Prendre x = 0.25 et t = 0.1768
Corrig e
On a a = 2, b = 0, c = 1 et e = 4,
Donc: b
2
4ac = 0 4(2)(1) = 8 > 0, m
1
=
+2

2
4
=

2
2
et m
2
=

2
2
.
Pour chaque point, nous avons deux caract eristiques:
t =

2
2
x et t =

2
2
x (voir gure 2).
Calculons u au point R
2
(0.5, 0.1768): On a l equation
amp + cq + et = 0,
suivant la droite PR
2
puis la droite QR
2
on trouve:
_
_
_
2

2
2
(p
R
2
p
P
) + (q
R
2
q
P
) + 4t = 0,
2

2
2
(p
R
2
p
Q
) + (q
R
2
q
Q
) + 4t = 0.
On prend: p
P
= (
u
x
)
P
= 4 (car on est ` a droite du point P), p
Q
= (
u
x
)
Q
= 4, et q
P
= (
u
t
)
P
=
q
Q
= (
u
t
)
Q
= 0 et on les remplace dans le syst` eme pour avoir:
_

2(p
R
2
+ 4) + q
R
2
+ 4t = 0,

2(p
R
2
+ 4) + q
R
2
+ 4t = 0.
Apr` es r esolution de ce syst` eme, on obtient: p
R
2
= 4 et q
R
2
=

2
2
D epartement de Math ematiques
FST-Mohammedia, (2008)
42
A. Taik Cours AN3 LST-MI
-
6
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@
@


-
R
2
R
1
R
3
R
4
R
5
R
6

t = t
t = 0
x

t
P Q
m
+
q
m
+
p
m

p
m

q
@
@
@
@
@
@
@
@
@
@

@
@
@
@
@
@
@
@
@
@
@
@
@
@
@

Figure 3.2:
Maintenant, on evalue u au point R
2
` a travers ces variations le long de de P R
2
.
u = p
av
x + q
av
t,
u
R
2
u
P
= (
p
P
+p
R
2
2
) 0.25 + (
q
P
+q
R
2
2
) 0.1768,
u
R
2
= (
4 4
2
) 0.25 + (
0

2
2
2
) 0.1768 + 3.
u
R
2
= 1.9375
En continuant de la sorte ` a calculer les autres valeurs de u, on remplit le tableau suivant:
x 0 0.25 0.5 0.75 1
u(t = 0) 0.0 3.0 2.0 1.0 0.0
u(t = 0.1768) 0.0 0.9375 1.9375 0.9375 0.0
u(t = 0.3535) 0.0 -1.1875 -0.2500 0.8125 0.0
u(t = 0.5303) 0.0 -1.3125 -2.4375 -1.3125 0.0
Table 3.1: Tableau 1
D epartement de Math ematiques
FST-Mohammedia, (2008)
43
A. Taik Cours AN3 LST-MI
Implementation num erique
code:
clear all;clc;
syms a b c e x u;
a=input(donner la valeur de a:);
b=input(donner la valeur de b: );
c=input(donner la valeur de c: );
e=input(donner la valeur de e: );
dx=input(entrer le pas de la discretisation: );
delta=b*b-4*a*c; m=(b-sqrt(delta))/(2*a); n=1/dx; N=n;
d=zeros(N+1,n+1); t=zeros(N+1,n+1); p=zeros(N+1,n+1);
q=zeros(N+1,n+1); u=12*x; f=diff(u);
u=4-4*x; g=diff(u); y=0:dx:1;
i=1;
for j=1:n+1
d(i,j)=y(i,j);
if(0.25<=d(i,j))
u(i,j)=4-4*d(i,j);
p(i,j)=subs(g,x,d(i,j));
q(i,j)=0;
else
if(d(i,j)==0)
u(i,j)=12*d(i,j);
p(i,j)=subs(f,x,d(i,j));
q(i,j)=0;
end
end
end for i=2:N+1
for j=2:n
d(i,j)=(d(i-1,j-1)+d(i-1,j+1))/(2);
t(i,j)=t(i-1,j-1)+m*(d(i,j)-d(i-1,j-1));
A=[a*m c ; -a*m c];
B=[a*m*p(i-1,j-1)+c*q(i-1,j-1)-e*(t(i,j)-t(i-1,j-1)) ;
-a*m*p(i-1,j+1)+c*q(i-1,j+1)-e*(t(i,j)-t(i-1,j+1))];
V=A\B;
p(i,j)=V(1);
q(i,j)=V(2);
u(i,j)=((p(i,j)+p(i-1,j-1))/2)*(d(i,j)-d(i-1,j-1))
+((q(i,j)+q(i-1,j-1))/2)*(t(i,j)-t(i-1,j-1))+u(i-1,j-1);
end
D epartement de Math ematiques
FST-Mohammedia, (2008)
44
A. Taik Cours AN3 LST-MI
for j=1:n+1
if(j==1)
d(i,j)=0;
t(i,j)=t(i-1,j+1)-m*(d(i,j)-d(i-1,j+1));
q(i,j)=0;
A=[-a*m];
B=[-a*m*p(i-1,j+1)+c*q(i-1,j+1)-e*(t(i,j)-t(i-1,j+1))];
V=A\B;
p(i,j)=V(1);
else
if(j==n+1)
d(i,j)=1;
t(i,j)=t(i-1,j-1)+m*(d(i,j)-d(i-1,j-1));
A=[a*m];
B=[a*m*p(i-1,j-1)+c*q(i-1,j-1)-e*(t(i,j)-t(i-1,j-1))];
V=A\B;
p(i,j)=V(1);
end
end
end
end mesh(t,d,double(u))
Remarque: B est une matrice qui s\ecrit sous la forme B=[v;w]
suite \a la longueur du code nous avons tronqu\es lexpression
de B de m\eme pour lexpression de u
Execution du code:
x 0 0.25 0.5 0.75 1
u(t = 0) 0.0 3.0 2.0 1.0 0.0
u(t = 0.1768) 0.0 0.9375 1.9375 0.9375 0.0
u(t = 0.3535) 0.0 -1.1875 -0.2500 0.8750 0.0
u(t = 0.5303) 0.0 -1.3125 -2.3750 -1.3125 0.0
Table 3.2: tableau 1
Constat
Dans ce cas les caract eristiques donn ees par lequation am
2
bm + c sont des droites.ici nous
avons pris un pas de discr etisation egal ` a 0.25.
D epartement de Math ematiques
FST-Mohammedia, (2008)
45
A. Taik Cours AN3 LST-MI
3.2. Exercice 2:
Soit ` a r esoudre:
_

2
u
t
2
= (1 + 2x)

2
u
x
2
, x [0, 1]
u(x, 0) = 0
u
t
(x, 0) = x(1 x)
u(0, t) = u(1, t) = 0
Corrig e
Pour ce probl` eme, a = (1+2x), b = 0, c = 1, e = 0. La r esolution de l equation am
2
+bm+c =
0 donne:
m =

1
(1 + 2x)
Les courbes caract eristiques sont obtenues en r esolvant les equations diff erentielles:
_

_
dt
dx
=
_
1
1+2x
,
dt
dx
=
_
1
1+2x
.
En int` egrant ` a partir du point initial de coordonn ees (x
0
, t
0
), on trouve:
_
_
_
t = t
0
+

1 + 2x

1 + 2x
0
, pour m
+
,
t = t
0

1 + 2x +

1 + 2x
0
, pour m

.
La gure suivante nous montre les diff erentes courbes caract eristiques que nous obtenons avec
cette equation.
On choisit deux points P(0, 0.25) et Q(0, 0.75) et on se propose de chercher la valeur de u dans
leur int ersection R qui, apr` es r esolution du syst` eme, donne les coordonn ees R(0.4841, 0.1782).
En suite , on r esout l equation 2.5 pour avoir p =
u
x
et q =
u
t
.
Apr` es utilisation de deux valeurs de m en chaque point, l equation 2.5 donne le syst` eme suiv-
ant:
_
_
_
1.77341(0.45015)(p
R
0) + (1)(q
R
0.1875) = 0; P R,
2.22341(0.6726)(p
R
0) + (1)(q
R
0.1875) = 0; Q R.
Apr` es la r esolution de ce syst` eme, on obtient p
R
= 0 et q
R
= 0.1875.
D epartement de Math ematiques
FST-Mohammedia, (2008)
46
A. Taik Cours AN3 LST-MI
Au point P: x = 0.25, t = 0, u = 0; p = (
u
x
)
P
= 0;
q = (
u
t
)
P
= x x
2
= 0.8175;
m =
_
1/(1 + 2x) = 0.18765;
a = (1 + 2x) = 1.5, b = 0, c = 1, e = 0
Au point Q: x = 0.75, t = 0, u = 0; p = 0;
q = (
u
t
)
P
= x x
2
= 0.1875;
m =
_
1/(1 + 2x) = 0.6325;
a = (1 + 2x) = 2.5, b = 0, c = 1, e = 0
Au point R: x = 0.4841, t = 0.1783;
m
+
=
_
1/(1 + 2x) = 0.7128;
m

=
_
1/(1 + 2x) = 0.7128
a = (1 + 2x) = 1.9682, b = 0, c = 1, e = 0
Pour trouver sa valeur au point R, on calcule la variation de u le long de deux caract eristiques
en utilisant l equation 2.6.
P R : u = 0(0.2341) + 0.1875(0.1783) = 0.0334
Q R : u = 0 + 0.0334 = 0.0334
u
R
= 0.0334 + u
P
= 0.0334 + u
Q
= 0.0334
Avec u = u
R
u
P
.
La repr esentation graphique pr ec edente r esume les autres valeurs de u dans le maillage.
Impl ementation num erique
clear all; clc;
syms a b c e x u z h;
a=input(donner la valeur de a: );
%
b=input(donner la valeur de b: );
D epartement de Math ematiques
FST-Mohammedia, (2008)
47
A. Taik Cours AN3 LST-MI
%
c=input(donner la valeur de c: );
%
e=input(donner la valeur de e: );
%
dx=input(entrer le pas de la discretisation: );
%
n=1/dx; N=n; d=zeros(N+1,n+1); t=zeros(N+1,n+1);
%
w=x.((1:n+1)*(1:n+1)); v=x.((1:n+1)*(1:n+1));
p=zeros(N+1,n+1); q=zeros(N+1,n+1); u=zeros(N+1,n+1);
delta=b*b-4*a*c; k=(b-sqrt(delta))/(2*a); g=simplify(k);
f=int(g,x); i=1; y=0:dx:1;
%
for j=1:n+1
d(i,j)=y(i,j);
w(i,j)=z-t(i,j);
v(i,j)=int(g,d(i,j),h);
q(i,j)=d(i,j)*(1-d(i,j));
p(i,j)=0;
r(i,j)=subs(a,x,d(i,j));
m(i,j)=subs(g,x,d(i,j));
u(i,j)=0;
end
%
j=1;
%
for i=2:N+1
u(i,j)=0;
q(i,j)=0;
u(i,n+1)=0;
q(i,n+1)=0;
end
%
for i=2:N+1
for j=2:n
M=w(i-1,j-1)-v(i-1,j-1);
T=w(i-1,j+1)+v(i-1,j+1);
[d(i,j),t(i,j)]=solve(M,T);
v(i,j)=int(g,d(i,j),h);
w(i,j)=z-t(i,j);
r(i,j)=subs(a,x,d(i,j));
D epartement de Math ematiques
FST-Mohammedia, (2008)
48
A. Taik Cours AN3 LST-MI
m(i,j)=subs(g,x,d(i,j));
S1=((r(i,j)+r(i-1,j-1))/2)*((m(i,j)+m(i-1,j-1))/2);
S2=((r(i,j)+r(i-1,j+1))/2)*((-m(i,j)-m(i-1,j+1))/2);
A=[S1 c ; S2 c];
B=[S1*p(i-1,j-1)+c*q(i-1,j-1)-e*(t(i,j)-t(i-1,j-1)) ;
S2*p(i-1,j+1)+c*q(i-1,j+1)-e*(t(i,j)-t(i-1,j+1))];
V=A\B;
p(i,j)=V(1);
q(i,j)=V(2);
u(i,j)=((p(i,j)+p(i-1,j-1))/2)*(d(i,j)-d(i-1,j-1))
+((q(i,j)+q(i-1,j-1))/2)*(t(i,j)-t(i-1,j-1))+u(i-1,j-1);
end
%
for j=1:n+1
if(j==1)
d(i,j)=0;
t(i,j)=t(i-1,j+1)-subs(sqrt(1+2*x),d(i,j))...
+subs(sqrt(1+2*x),d(i-1,j+1));
r(i,j)=subs(a,x,d(i,j));
m(i,j)=subs(g,x,d(i,j));
v(i,j)=int(g,d(i,j),h);
w(i,j)=z-t(i,j);
S2=((r(i,j)+r(i-1,j+1))/2)*((-m(i,j)-m(i-1,j+1))/2);
A=[S2];
B=[S2*p(i-1,j+1)+c*q(i-1,j+1)-e*(t(i,j)-t(i-1,j+1))];
V=A\B;
p(i,j)=V(1);
else
if(j==n+1)
d(i,j)=1;
t(i,j)=t(i-1,j-1)+subs(sqrt(1+2*x),d(i,j))...
-subs(sqrt(1+2*x),d(i-1,j-1));
r(i,j)=subs(a,x,d(i,j));
m(i,j)=subs(g,x,d(i,j));
v(i,j)=int(g,d(i,j),h);
w(i,j)=z-t(i,j);
S1=((r(i,j)+r(i-1,j-1))/2)*((m(i,j)+m(i-1,j-1))/2);
A=[S1];
B=[S1*p(i-1,j-1)+c*q(i-1,j-1)-e*(t(i,j)-t(i-1,j-1))];
V=A\B;
p(i,j)=V(1);
end
D epartement de Math ematiques
FST-Mohammedia, (2008)
49
A. Taik Cours AN3 LST-MI
end
end
end
Execution du code:
0.0 0.0 0.0 0.0 0.0
0.0 0.00235 0.0334 0.0209 0.0
0.0 0.0297 -0.0205 0.0017 0.0
0.0 -0.0010 -0.0187 -0.0329 0.0
Table 3.3: tableau de u
Constat:
Dans ce cas les caract eristiques ne sont pas des droites ,la pente m est une fonction en x. Nous
avons pris un pas egal ` a 0.25.
3.3. Exercice 3:
Soit ` a r esoudre le syst` eme d equations:
_

2
u
x
2
u

2
u
t
2
+ (1 x
2
) = 0, x [0, 1]
u(x, 0) = x(1 x), u
t
(x, 0) = 0,
u(0, t) = u(1, t) = 0.
Corrig e
On consid` ere le point R donn e par lintersection de la caract eristique de pente positive du point
P(0.2, 0) et la caract eristique de pente n egative du point Q(0.4, 0). Comparons cette equation avec
la forme standard:
au
xx
+ bu
xt
+ cu
tt
+ e = 0,
On trouve a = 1, b = 0, c = u, e = 1 x
2
. On calcule, avant tout, la valeur num erique de u, p
et q au point P et Q:
avec les conditions initiales,
u = x(1 x),
donc,
u
P
= 0.2(1 0.2) = 0.16,
u
Q
= 0.4(1 0.4) = 0.24;
D epartement de Math ematiques
FST-Mohammedia, (2008)
50
A. Taik Cours AN3 LST-MI
De plus, avec les diff erentiation des conditions initiales,
p =
u
x
= 1 2x,
ce qui nous donne
p
P
= 1 2(0.2) = 0.6,
p
Q
= 1 2(0.4) = 0.2;
et enn,
q =
u
t
= 0.
Alors:
q
P
= 0 et q
Q
= 0
pour avoir les coordonn ees du point R, nous devons connatre la pente m des caract eristiques.
En utilisant l equation : am
2
bm + c = 0, on obtient:
m =
b

b
2
ac
2a
=

4u
2
=

u.
Puisque m d epend de la solution u, nous aurons besoin de trouver le point R par des approxima-
tions. Pour un premier essai, on utilise des valeurs initiales le long de tout larc; i.e, on prend
m
+
= +m
P
et m

= m
Q
:
m
+
=

u
P
=

0.16 = 0.4,
m

u
q
=

0.24 = 0.490.
A pr esent, on peut estimer les coordonn ees de R en r esolvant le syst` eme:
_
_
_
t
R
= m
+
(x
R
x
P
) = 0.4(x
R
0.2)
t
R
= m

(x
R
x
Q
) = 0.49(x
R
0.4).
Ce qui nous donne x
R
= 0.310 et t
R
= 0.044.
Puisquon ne connait pas m au point R, on utilise sa valeur initiale le long de chanque car-
act eristique pour approximer p et q au point R en utilisant l equation 2.5:
amp + cq + et = 0,
Nous remplacons les contantes connues par leurs valeurs pour chaque caract eristique pour avoir le
syst` eme suivant:
(1)(0.4)(p
R
0.6) + (0.16)(q
R
0) +
_
1
0.04 + 0.096
2
_
(0.044) = 0
(1)(0.490)(p
R
0.2) + (0.24)(q
R
0) +
_
1
0.16 + 0.096
2
_
(0.044) = 0
D epartement de Math ematiques
FST-Mohammedia, (2008)
51
A. Taik Cours AN3 LST-MI
Apr` es r esolution, on obtient p
R
= 0.399 et q
R
= 0.246.
Pour une premi` ere approximation de u au point R, on a:
u = px +qt,
u
R
0.16 =
0.6 + 0.399
2
(0.310 0.2) +
0 0.246
2
(0.044 0),
u
R
= 0.2095
Cette approximation a et e etablie en tenant compte de la courbe PR, en utilisant les diff erentes
valeurs de p et q. Toutefois, on pourrait alternativement proc eder par la caract eristique QR. Ce qui
nous donnerait:
u
R
0.24 =
0.2 + 0.399
2
(0.310) +
0 0.246
2
(0.044 0),
u
R
= 0.2076 0.2095
Impl ementation num erique
clear all; syms a b c e u x;
a=input(donner la valeur de a: );
b=input(donner la valeur de b: );
u=input(donner la valeur de u:);
c=input(donner la valeur de c: );
e=input(donner la valeur de e: );
dx=input(entrer le pas de la discretisation: );
n=1/dx; N=n; delta=b*b-4*a*c; m=(b+sqrt(delta))/(2*a);
d=zeros(N+1,n+1); t=zeros(N+1,n+1); q=zeros(N+1,n+1);
p=zeros(N+1,n+1); f=diff(u); i=1; y=0:dx:1; for j=1:n+1
d(i,j)=y(i,j);
u(i,j)=d(i,j)*(1-d(i,j));
m(i,j)=sqrt(u(i,j));
p(i,j)=subs(f,x,d(i,j));
q(i,j)=0;
h(i,j)=subs(e,x,d(i,j));
r(i,j)=subs(c,x,d(i,j));
end
j=1;
for i=2:N+1
u(i,j)=0;
u(i,n+1)=0;
if(mod(i,2)==0)
for j=2:n+1
A=[1 -m(i-1,j-1) ; 1 m(i-1,j)];
D epartement de Math ematiques
FST-Mohammedia, (2008)
52
A. Taik Cours AN3 LST-MI
B=[t(i-1,j-1)-m(i-1,j-1)*d(i-1,j-1)...
+ t(i-1,j)+m(i-1,j)*d(i-1,j)];
K=A\B;
t(i,j)=K(1);
d(i,j)=K(2);
u(i,j)=d(i,j)*(1-d(i,j));
m(i,j)=sqrt(u(i,j));
h(i,j)=subs(e,d(i,j));
r(i,j)=subs(c,x,d(i,j));
S1=(h(i,j)+h(i-1,j-1))/(2);
S2=(h(i,j)+h(i-1,j))/(2);
A=[a*m(i-1,j-1) r(i-1,j-1)-a*m(i-1,j) r(i-1,j)];
B=[a*m(i-1,j-1)*p(i-1,j-1)+r(i-1,j-1)*q(i-1,j-1)...
-S1*(t(i,j)-t(i-1,j-1))-a*m(i-1,j)*p(i-1,j)...
+r(i-1,j)*q(i-1,j)-S2*(t(i,j)-t(i-1,j))];
K=A\B;
p(i,j)=K(1);
q(i,j)=K(2);
u(i,j)=((p(i,j)+p(i-1,j-1))/2)*(d(i,j)-d(i-1,j-1)) ...
+((q(i,j)-q(i-1,j-1))/2)*(t(i,j)-t(i-1,j-1))+u(i-1,j-1);
end
for j=1:n+1
if(j==1)
d(i+1,j)=0;
t(i+1,j)=t(i,j+1)-m(i,j+1)*(d(i+1,j)-d(i,j+1));
m(i+1,j)=0;
r(i+1,j)=subs(c,x,d(i+1,j));
h(i+1,j)=subs(e,x,d(i+1,j));
S2=((h(i+1,j)+h(i,j+1))/2);
A=[-a*m(i,j+1)];
B=[-a*m(i,j+1)*p(i,j+1)+r(i,j+1)*q(i,j+1)...
-S2*(t(i+1,j)-t(i,j+1))];
K=A\B;
p(i,j)=K(1);
else
if(j==n+1)
d(i+1,j)=1;
t(i+1,j)=t(i,j)+m(i,j)*(d(i+1,j)-d(i,j));
m(i+1,j)=0;
r(i+1,j)=subs(c,x,d(i+1,j));
h(i+1,j)=subs(e,x,d(i+1,j));
S1=((h(i+1,j)+h(i,j))/2);
D epartement de Math ematiques
FST-Mohammedia, (2008)
53
A. Taik Cours AN3 LST-MI
A=[a*m(i,j)];
B=[a*m(i,j)*p(i,j)+r(i,j)*q(i,j)...
-S1*(t(i+1,j)-t(i,j))];
K=A\B;
p(i,j)=K(1);
end
end
end
else
if(mod(i,2)=0)
for j=2:n
A=[1 -m(i-1,j) ; 1 m(i-1,j+1)];
B=[t(i-1,j)-m(i-1,j)*(d(i-1,j))...
+ t(i-1,j+1)+m(i-1,j+1)*(d(i-1,j+1))];
K=A\B;
t(i,j)=K(1);
d(i,j)=K(2);
u(i,j)=d(i,j)*(1-d(i,j));
m(i,j)=sqrt(u(i,j));
h(i,j)=subs(e,x,d(i,j));
r(i,j)=subs(c,x,d(i,j));
S1=(h(i,j)+h(i-1,j))/2;
s2=(h(i,j)+h(i-1,j+1))/2;
A=[a*m(i-1,j) r(i-1,j) -a*m(i-1,j+1) r(i-1,j+1)];
B=[a*m(i-1,j)*p(i-1,j)+r(i-1,j)*q(i-1,j)...
-S1*(t(i,j)-t(i-1,j))-a*m(i-1,j+1)*p(i-1,j+1)...
+r(i-1,j+1)*q(i-1,j+1)-S2*(t(i,j)-t(i-1,j+1))];
K=A\B;
p(i,j)=K(1);
q(i,j)=K(2);
u(i,j)=((p(i,j)+p(i-1,j))/2)*(d(i,j)-d(i-1,j))...
+((q(i,j)+q(i-1,j))/2)*(t(i,j)-t(i-1,j))+u(i-1,j);
end
end
end
end
Execution du code:
Constat:
On constate que m est une fonction qui d epend de la solution u. Nous avons pris un pas de
discr etisation egal ` a 0.2.
D epartement de Math ematiques
FST-Mohammedia, (2008)
54
A. Taik Cours AN3 LST-MI
0.0 0.1600 0.2400 0.2400 0.1600 0.0
0.0 0.1600 0.2096 0.2435 0.2049 0.1600
0.0 0.2096 0.2228 0.2166 0.2049 0.0
0.0 0.0415 0.02346 0.2233 0.2166 0.1831
0.0 0.0636 0.2143 0.2233 0.1897 0.0
0.0 0.149 0.0594 0.2143 0.2289 0.1880
Table 3.4: valeurs de u
3.4. Exercice 4
Soit ` a r esoudre le syst` eme d equation :
_

2
u
t
2
= c
2
2
u
x
2
, x [0, 2] ,
u(0, t) = u(2, t) = 0,
u
t
(x, 0) = x(1 x), 0 < x < 2,
u(x, 0) = 2x 0 < x < 1,
u(x, 0) = 2(2 x) 1 < x < 2,
La solution exacte est donn ee par :
u(x, t) =
16

n=1
(1)
n1
sin((2n 1)
x
2
)cos((2n 1)
ct
2
)
(2n 1)
2
.
Impl ementation num erique
Code:
clear all; clc;
syms a b c e x k; cla=0;clb=2;
k=input(donner lavaleur de k: );
a=input(donner la valeur de a: );
b=input(donner la valeur de b: );
c=input(donner la valeur de c: );
e=input(donner la valeur de e: );
dx=input(entrer le pas de discretisation: );
n=(clb-cla)/dx N=n; delta=b*b-4*a*c; m=(b-sqrt(delta))/(2*a);
d=zeros(N+1,n+1); t=zeros(N+1,n+1); p=zeros(N+1,n+1);
q=zeros(N+1,n+1); y=0:dx:2; u=2*x; f=diff(u); u=2*(2-x);
g=diff(u); i=1; for j=1:n+1
D epartement de Math ematiques
FST-Mohammedia, (2008)
55
A. Taik Cours AN3 LST-MI
d(i,j)=y(i,j);
if(1<=d(i,j))
p(i,j)=subs(g,x,d(i,j));
u(i,j)=2*(2-d(i,j));
q(i,j)=0;
else
if(d(i,j)<1)
p(i,j)=subs(f,x,d(i,j));
u(i,j)=2*d(i,j);
q(i,j)=0;
end
end
end j=1;
for i=2:N+1
u(i,j)=0;
q(i,j)=0;
u(i,n+1)=0;
q(i,n+1)=0;
end
for i=2:N+1
for j=2:n
d(i,j)=(d(i-1,j-1)+d(i-1,j+1))/(2);
t(i,j)=t(i-1,j-1)+m*(d(i,j)-d(i-1,j-1));
A=[a*m c ; -a*m c];
B=[a*m*p(i-1,j-1)+c*q(i-1,j-1)-e*(t(i,j)-t(i-1,j-1)) ;
-a*m*p(i-1,j+1)+c*q(i-1,j+1)-e*(t(i,j)-t(i-1,j+1))];
V=A\B;
p(i,j)=V(1);
q(i,j)=V(2);
u(i,j)=(((p(i,j)+p(i-1,j-1))*(d(i,j)-d(i-1,j-1)))/2)...
+(((q(i,j)+q(i-1,j-1))*(t(i,j)-t(i-1,j-1)))/2)+u(i-1,j-1);
end
for j=1:n+1
if(j==1)
d(i,j)=0;
t(i,j)=t(i-1,j+1)-m*(d(i,j)-d(i-1,j+1));
A=[-a*m];
B=[-a*m*p(i-1,j+1)+c*q(i-1,j+1)-e*(t(i,j)-t(i-1,j+1))];
p(i,j)=A\B;
else
if(j==n+1)
d(i,j)=2;
D epartement de Math ematiques
FST-Mohammedia, (2008)
56
A. Taik Cours AN3 LST-MI
t(i,j)=t(i-1,j-1)+m*(d(i,j)-d(i-1,j-1));
A=[a*m];
B=[a*m*p(i-1,j-1)+c*q(i-1,j-1)-e*(t(i,j)-t(i-1,j-1))];
p(i,j)=A\B;
end
end
end
end
mesh(t,d,double(u))
Execution du code:
0.0 0.5000 1.0000 1.5000 2.0000 1.5000 1.0000 0.5000 0.0
0.0 0.5000 1.0000 1.0000 1.5000 1.5000 1.0000 0.5000 0.0
0.0 0.5000 0.5000 1.0000 0.5000 1.0000 1.0000 0.5000 0.0
0.0 0.0 0.5000 0.0 0.5000 0.0 0.5000 0.5000 0.0
0.0 0.0 -0.5000 0 -0.5000 0.0 -0.5000 0.0 0.0
0.0 -0.5000 -0.5000 -1.0000 -0.500 -1.0000 -0.5000 -1.0000 0.0
0.0 -0.5000 -1.0000 -1.0000 -1.5000 -1.0000 -1.5000 -0.5000 0.0
0.0 -0.5000 -1.0000 -1.5000 -1.5000 -2.0000 -1.0000 -1.5000 0.0
0.0 -0.5000 -1.0000 -1.5000 -2.0000 -1.5000 -2.0000 -0.5000 0.0
Table 3.5: valeurs de u
4. Conclusion
La r esolution num erique des equations aux d eriv ees partielles restent un d et ` a relever, il ex-
iste des m ethodes num eriques qui permettent la r esolution des EDPs telles que la m ethode des
diff erences nies et la m ethode des caract eristiques, nous avons remarqu e que pour quelques
equations aux d eriv ees partielles l equations donde par exemple, la m ethode des diff erences nies
posait probl` eme, il fallait simplier certains termes et ajouter une condition suppl ementaire (con-
dition mixte ou de Neumann) et la donn ee dune telle condition nest pas usuelle, on sera sou-
vent bloquer sur la r esolution dune equations hyperbolique si nous nous inspirons seulement
de la m ethode de diff erences nies; il fallait trouver une autre m ethode entre autre la m ethode
des caract eristiques, cette derni` ere est simple ` a appliquer et donne une bonne approximation con-
trairement ` a la m ethode des diff erences nies. Nos r esultats obtenus correspondaient ` a ceux des
manuels utilis es tandis que le graphe de la solution exacte n etait pas identique ` a celui des valeurs
approch ees, ce qui met en doute nos r esultats num eriques. Mis ` a part ces d esagr ements, nous avons
trouv e ce travail tr` es int eressant et fructueux, par ce travail nous avons maitris e loutil Matlab, nous
avons su que les EDPs hyperboliques sont utilis ees en acoustique, oc eanographie, m et eorologie.
En plus de cela ce travail nous a permis de connaitre quil existe plusieurs m ethodes num eriques
D epartement de Math ematiques
FST-Mohammedia, (2008)
57
A. Taik Cours AN3 LST-MI
qui permettent dapprocher une equation aux d eriv ee partielles mais quelles sont limit ees, ce qui
nous conduit ` a afrmer quil nexiste pas une m ethode num erique universelle pour approcher la
solution exacte.
R ef erence
[1] Curtis F. Gerald, Patrick O. Wheatley, Applied Numerical Analysis. Third Edition, Addison-
Wesley Publishing Company.
D epartement de Math ematiques
FST-Mohammedia, (2008)
58

You might also like