Taik Cours1 AN3

download Taik Cours1 AN3

of 58

Transcript of Taik Cours1 AN3

  • A. Taik Cours AN3 LST-MI

    Cours: Equations aux Derivees PartiellesMethodes des Differences Finies

    Preface. Ce cours est une enquete de pratique des techniques de resolution numerique des differentesclasses dequations aux derivees partielles (elliptiques, paraboliques et hyperboliques). Laccentsera mis sur la programmation de schemas numeriques a` des proble`mes pratiques dans lingenierieet les sciences physiques. La resolution comprendra la methode des differences finies et la methodedes caracteristique pour les EDP hyperboliques. Pratiquement, elles seront pleinement utiliseesen MATLAB et ses fonctionnalites de programmation.

    Departement de MathematiquesFST-Mohammedia, (2008)

    1

  • Contents

    1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    Introduction 52. Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    1 Resolution dune EDP elliptique 91. Discretisation de lEDP: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    1.1. Methode des differences finies: . . . . . . . . . . . . . . . . . . . . . . . 91.2. Approximation de lequation differentielle partielle . . . . . . . . . . . . . 10

    2. Resolution de lEDP par la methode directe: . . . . . . . . . . . . . . . . . . . . . 122.1. Cas ou` h = 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.2. Cas ou` h = 2.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    3. Methode de relaxation de Liebmann . . . . . . . . . . . . . . . . . . . . . . . . . 173.1. Methode: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.2. Idee de Relaxation: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    2 Resolution dune EDP parabolique 201. Discretisation de lespace et du temps: . . . . . . . . . . . . . . . . . . . . . . . . 21

    1.1. Discretisation de lespace: . . . . . . . . . . . . . . . . . . . . . . . . . . 211.2. Discretisation du temps: . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    2. Programmation de la solution analytique: . . . . . . . . . . . . . . . . . . . . . . 213. Discretisation de lequation differentielle: . . . . . . . . . . . . . . . . . . . . . . 22

    3.1. Rappel de la notation spatiale et temporelle: . . . . . . . . . . . . . . . . . 223.2. Discretisation des derivees partielles: . . . . . . . . . . . . . . . . . . . . 233.3. Equation aux derivees partielles discre`tisee: . . . . . . . . . . . . . . . . . 233.4. Resolution numerique du syste`me: . . . . . . . . . . . . . . . . . . . . . . 24

    4. Methode de Crank - Nicolson ou methode implicite: . . . . . . . . . . . . . . . . . 274.1. Methode: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.2. Resolution numerique de lEDP . . . . . . . . . . . . . . . . . . . . . . . 274.3. Programmation de la solution . . . . . . . . . . . . . . . . . . . . . . . . 28

    5. Comparaison des methodes: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315.1. Comparaison de uexact(0.25, t) et uapp(0.25, t), uexact(0.75, t) et uapp(0.75, t) 31

    2

  • A. Taik Cours AN3 LST-MI

    5.2. Comparaison de uexact(x, 0.99) et uapp(x, 0.99), uexact(x, 1.98) et uapp(x, 1.98) 326. Etudes theoriques de la methode explicite . . . . . . . . . . . . . . . . . . . . . . 32

    6.1. Convergence numerique . . . . . . . . . . . . . . . . . . . . . . . . . . . 326.2. Stabilite numerique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

    Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

    3 Resolution dune EDP hyperbolique 371. Enonce: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    1.1. Resolution par la methode des differences finies: . . . . . . . . . . . . . . 372. Methode des caracteristiques: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    2.1. Pourquoi la methode des caracteristiques? . . . . . . . . . . . . . . . . . . 392.2. Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392.3. Methode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

    3. Exercices dapplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.1. Exercice 1: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423.2. Exercice 2: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463.3. Exercice 3: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503.4. Exercice 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

    Departement de MathematiquesFST-Mohammedia, (2008)

    3

  • List of Figures

    1.1 Evolution de la courbe u = 0 en fonction de h avec la methode directe . . . . . . 161.2 Evolution de la courbe u = 0 en fonction de h pour la methode de relaxation . . 19

    2.1 Representation graphique de la solution analytique uexact(xi, tj) . . . . . . . . . . 232.2 Courbe de la solution numerique, methode explicite pour r < 1

    2. . . . . . . . . . . 26

    2.3 Courbe de la solution numerique, methode explicite pour r > 12

    . . . . . . . . . . . 262.4 Courbe de la solution numerique, methode implicite pour r < 1

    2. . . . . . . . . . 30

    2.5 Courbe de la solution numerique, methode implicite pour r > 12

    . . . . . . . . . . 302.6 Comparaison graphique de uexact(0.25, t) et uapp(0.25, t) . . . . . . . . . . . . . . 312.7 Comparaison graphique de uexact(0.75, t) et uapp(0.75, t) . . . . . . . . . . . . . . 312.8 Comparaison graphique de uexact(x, 0.9281) et uapp(x, 0.9281) . . . . . . . . . . . 322.9 Comparaison graphique de uexact(x, 1.9594) et uapp(x, 1.9594) . . . . . . . . . . . 32

    3.1 Representation graphique des caracteristiques . . . . . . . . . . . . . . . . . . . . 413.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    4

  • A. Taik Cours AN3 LST-MI

    1. IntroductionLes equations aux derivees partielles (EDP) sont omnipresentes dans toutes les sciences, puisquellesapparaissent aussi bien en dynamique des structures, mecanique des fluides que dans les theories dela gravitation ou de lelectromagnetisme (Exemple: les equations de Maxwell). Elles sont primor-diales dans des domaines tels que la simulation aeronautique, la synthe`se dimages, la previsionmeteorologique, la demographie, ou les finances. Enfin, les equations les plus importantes de larelativite generale et de la mecanique quantique sont egalement des EDP. Ce sont des equationsindispensables pour la resolution de presque la totalite des proble`mes dans ces domaines.Nous pouvons citer par exemple:

    1. lequation de Schrdinger indispensable a` la mecanique quantique: ~22m

    2ux2

    +~utU(x)u = 0

    2. lequation dadvection qui decrit comment une quantite est transportee dans un courant (parexemple un poluant dans de leau): u

    t(x, t)+cu

    x(x, t) = f(x, t), c etant la vite`sse du milieu

    qui est souvent une constante.

    3. lequation de Black-Scholes utilisee en finances:ct+ S

    2

    22cS2

    + rS cS rc = 0 ou` c = c(t, S) est un prix et , r des constantes.

    4. Lequation dondes decrivant les phenome`nes de propagation des ondes sonores et des ondeselectromagnetiques comme la lumie`re dans des milieux comme lair ou le vide physique:u 1

    c22ut2

    = 0 2ux2

    + 2uy2

    + 2uz2

    = 1c2

    2ut2

    . Le nombre c represente la celerite pour le casde la lumie`re ou la vitesse de propagation de londe u.

    5. Lequation de Fourrier ou equation de la chaleur qui decrit levolution de la temperature enfonction du temps et de lespace: 2u

    x2+

    2uy2

    + 2uz2

    = 1ut. Le nombre est appele diffusivite

    thermique du milieu.

    Certaines de ces EDP ont ete resolues analytiquement et leurs solutions sont connues. Toute-fois, un nombre important dautres existent sans solutions analytiques. Cest dans cette optiqueque les recherches se sont penchees sur les methodes numeriques pour arriver a` approximer lessolutions de ces equations.

    Notons que malgre ces efforts indeniables, il nexiste pas de methodes universelles pour laresolution numerqiue des EDP. Lalgorithme de resolution depend tre`s etroitement du type deproble`me pose. Cest pour cela que nous allons restreindre notre champs detude. On exigeraque lequation satisfasse quelques proprie`tes comme la linearite pour que la resolution soit possi-ble.

    2. DefinitionEn mathematiques, plus precisement en calcul differentiel, une equation aux derivees partiellesou equation differentielle partielle (EDP) est une equation dont les solutions sont les fonctionsinconnues verifiant certaines conditions concernant leurs derivees partielles. Cest une equation

    Departement de MathematiquesFST-Mohammedia, (2008)

    5

  • A. Taik Cours AN3 LST-MI

    mathematique contenant en plus de la variable dependante (u dans les cas suivants) des variablesindependantes (x, y, ...) Rn et une ou plusieurs derivees partielles quon peut ecrire sous laforme:

    F (x, y, ..., u,u

    x,u

    y,2u

    x2,2u

    y2, ...) = 0,

    Exemple lequation aux derivees partielles 2u

    x2 2u

    y2= 0 qui admet comme solutions: u(x, y) =

    (x+ y)3, u(x, y) = sin(x y),. . . lequation de la Laplace u = 0, en dimensions 2 2D, qui admet aussi au moins deux

    solutions dont u(x, y) = x2 y2 et v(x, y) = exsin(y)

    les conditions etant moins strictes que dans le cas dune equation differentielle ordinaire; lesproble`mes incluent souvent des conditions aux limites qui restreignent lensemble des solutions.Pour assurer donc lunicite de la solution, comme on le fait avec les equations differentielles or-dinaires, EDO, on tiendra compte des conditions predonnees comme les conditions aux limites etles conditions initiales.

    Classification des EDP lineaires du second ordreComme il est dit haut, il nexiste pas de methodes universelles pour la resolution des EDP, nousallons nous contenter de celles qui sont lineaires et du second ordre.

    Quand on pose X = (x1, x2, ..., xn) Rn, une equation aux derivees partielles du second ordresera de la forme:

    ni=1

    nj=1

    Ai,j(X)2u

    xixj(X) +

    ni=1

    Bi(X)u

    xi(X) + Cu = G(X)

    avec Ai,j, Bi, C,G des fonctions independantes de u ne sannulant pas toutes simultanement dansRn. Si nous nous limitons dans R2, cest a` dire X = (x, y) R2 legalite precedemment poseeprend la forme de:

    A2u

    x2+B

    2u

    xy+ C

    2u

    y2+D

    u

    x+ E

    u

    y+ Fu = G(x, y) (2.1)

    La classe dune telle equation est determinee par le calcul de = B2(x0, y0) 4A(x0, y0)C(x0, y0)

    Si < 0, on parle dune equation elliptique,

    Departement de MathematiquesFST-Mohammedia, (2008)

    6

  • A. Taik Cours AN3 LST-MI

    Si = 0, lEDP est dite parabolique, Si > 0, on a une equation hyperbolique.Resoudre numeriquement un exemple pour chaque type dequation aux derivees partielles sus-

    mentionnes constituera nos projets dans ce rapport.

    Remarque:Notons que les methodes numeriques passent toujours par des discretisations des proble`mes an-alytiques en des proble`mes numeriques et quil existe une infinite des methodes de discretisationdune equation. Nous ne pouvons jamais les enumerer toutes mais les plus couramment utiliseespour la resolution des equations aux derivees partielles sont:

    1. La methode des differences finies,

    2. La methode des elements finis,

    3. la methode des volumes finis,

    4. la methode des caracteristiques.

    Mais sachez que nous nutiliserons ici que la methode des differences finies.La methode consiste a` remplacer les derivees partielles par des differences divisees ou combi-naisons de valeurs ponctuelles de la fonction en un nombre fini de points discrets ou noeudsdu maillage. Lavantage de cette methode est quil y a une grande simplicite decriture et unfaible cot de calcul. Elle est couramment pratique et facile dacce`s. Elle repose sur deux no-tions : la discretisation des operateurs de derivation ou differentiation et la convergence du schemanumerique ainsi obtenu. Son inconvenient est quon se limite a` des geometries simples, et quil ya des difficultes de prise en compte des conditions aux limites de type Neumann.

    Maillage:Puisquon a evoque le mot maillage dans le paragraphe precedent et quon en aura tout le tempsbesoin, definissons-le ici.On appelle maillage un ensemble de points du domaine de definition sur lequel on va appliquerla methode des differences finies. Pour une application definie sur un segment de R, on ajouteraen general les deux extremites du segment; pour un maillage en dimension superieure, on seraamene a` choisir, eventuellement, des points du contours du domaine de definition. On appellele pas du maillage la distance entre deux points successifs du maillage voisins. En dimension 1,cela se simplifie en difference des abscisses. Ce pas nest pas necessairement constant, il peutmeme etre judicieux de ne pas le fixer comme tel. Le pas (global) de lapproximation peut etredefini comme le plus grand pas du maillage. Ainsi, si ce pas global tend vers 0, cela veut dire

    Departement de MathematiquesFST-Mohammedia, (2008)

    7

  • A. Taik Cours AN3 LST-MI

    que la repartition des points du maillage dans lintervalle choisi tend a` se faire sur tout le domainedetude par densite.Exemple: Pour un intervalle de validite [0, 2], avec n le nombre des pas, on aura n + 1 points quisont donnes par la relation xi = i h avec h = 2n constant, 0 i n.

    Notation indicielle:Durant ces projets nous utiliserons souvent la notation indicielle. Cest pourquoi nous voulonsen rappeler le principe. si x est un des vecteurs de base du repe`re (quadrillage) discretise, nousnoterons le point x(i), qui est la ieme abscisse par xi et de meme la jeme ordonnee y(j) sera noteyj et si u est maintenant la fonction, ici la solution de lequation aux derivees partielles dependantseulement des variables de lespace, on remplacera u(xi, yj) par ui,j . Si, en plus des variables delespace, il existe une variable temprelle t(k) = tk, alors la fonction u(xi, yj, tk) sera notee uki,j .En resume, les indices des variables spatiales resteront en indices et celui du temps sera en ex-posant. Cest ce quon appelera la notation indicielle.

    Departement de MathematiquesFST-Mohammedia, (2008)

    8

  • Chapitre 1

    Resolution dune EDP elliptique

    1. Discretisation de lEDP:Soit :

    2u

    x2+

    2

    x2= 0, (x, y) [a, b] [c, d]

    On prendra hx et hy les pas de discretisation des intervalles [a, b] et [c, d]

    1. Discretisation de lintervalle [a, b]hx =

    banx

    (nx etant le nombre dintervalles dans [a, b]) x(i) = xi = a+ i hx, i = 0, 1, , nx

    2. Discretisation de lintervalle [c, d]hy =

    dcny

    (ny etant le nombre dintervalles dans [c, d]) y(j) = yj = c+ j hy, j = 0, 1, , ny

    Remark 1. : Constatons que xi+1 = a + ( + 1)hx = (a+ hx) + hx = xi + hx. Dans la suite,nous remplacerons chaque fois xi + hx, xi hx, yj + hy, yj hy successivement par xi+1, xi1,yi+1, yi1.

    1.1. Methode des differences finies:Cette methode consiste a` approximer les derivees partielles dune equation au moyen des devel-oppemets de Taylor et ceci se deduit directement de la definition de la derivee.Soit f(x, y) une fonction continue et derivable de classe C, alors la derivee partielle premie`re def par rapport a` x est calculee par la formule:

    f x(x, y) = limhx0

    f(x+ hx, y) f(x, y)hx

    9

  • A. Taik Cours AN3 LST-MI

    Si hx

  • A. Taik Cours AN3 LST-MI

    Posons u(xi, yj) = ui,j (en notation indicielle). Compte tenu de la relation 1.1 du paragrapheprececdent,

    2u

    x2 ui+1,j 2ui,j + ui1,j

    h2x

    Puisque xi et yj jouent un rle symetrique dans lequation du potentiel (de Laplace), un raison-nement analogue a` celui de lapproximation de f x nous donne:

    2u

    y2 ui,j+1 2ui,j + ui,j1

    h2y

    rapportons ces aproximations dans lEDP 1.2:

    u ui+1,j 2ui,j + ui1,jh2x

    +ui,j+1 2ui,j + ui,j1

    h2y= 0

    Dans ce cas particulier ou` hx = hy = h, donc, nous avons finalement:{u = 0 ui+1,j+ui,j+14ui,j+ui1,j+ui,j1

    h2= 0

    i = 0, 1, , nx et j = 0, 1, , nyRemark 2. : A chaque etape, nous remarquons que pour calculer la valeur de ui,j au point (xi, yj)nous avons besoin de connatre les points ui1,j , ui,j1, ui+1,j et ui+1,j comme lindique le dessinsuivant:

    -

    6

    j

    i

    ui,jui1,j ui+1,j

    ui,j1

    ui,j+1

    @@

    @@

    @@

    @@

    @@

    Cest pour cela que nous appelons cette formule la formule a` 5 points qui peut etre representeecomme suit:

    u = 0 = 1h2

    1

    1 4 11

    ui,j = 0Departement de Mathematiques

    FST-Mohammedia, (2008)11

  • A. Taik Cours AN3 LST-MI

    2. Resolution de lEDP par la methode directe:

    Exemple:Soit a` resoudre lequation 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) = 100hx = hy = h {5, 2.5, 1.25, 0.625, 0.3125}

    Tout en variant h, resoudre cette EDP:

    1. En utilisant la methode directe.

    2. En utilisant la methode de relaxation de Liebmann.

    3. Conclure.

    2.1. Cas ou` h = 5On a: hx = banx nx = bahx = 2005 = 4 et ny = dchy = 1005 = 2 La grille maillee contient alors(nx+1)(ny+1)mailles vu que nous avons a` rajouter les points ou` xi = 0 et ceux ou` yj = 0 cest a`dire les points intersection de la courbe avec les axes. Mais comme les conditions aux limites nousdonnent les images sur les bords, alors les points inconnus restent seulement ceux de linterieur ducadrillage. Ce qui fait donc que le nombre dinconnues est alors (nx 1) (ny 1) = 3 1 = 3Nous obtenons le syste`me de trois equations a` trois inconnues suivant:

    4u1,1 + u2,1 + 0u3,1 = 0u1,1 4u2,1 + u3,1 = 00u1,1 + u2,1 4u3,1 = 100

    Il nous reste maintenant a` resoudre le syste`me matriciel: A U = B Avec:

    A =

    4 1 01 4 10 1 4

    , B = 00100

    et U = u1,1u2,1

    u3,1

    Avec une des methodes vues en Analyse Numerique II (resolution des syste`mes lineaires), nousobtenons la solution:

    U =

    1.7867.14326.786

    Departement de MathematiquesFST-Mohammedia, (2008)

    12

  • A. Taik Cours AN3 LST-MI

    2.2. Cas ou` h = 2.5Nous avons aussi: nx = bah =

    2002.5

    = 8 et ny = dch =1002.5

    = 4, ce qui nous donne un syste`mea` n = (nx 1) (ny 1) = 7 3 = 21 equations a` 21 inconnues de la forme:

    4u1,1 + u2,1 + + u1,2 + = 0u1,1 4u2,1 + u3,1 + + u2,2 + = 0.

    .

    .

    + u6,1 4u7,1 + = 100u1,1 + 4u2,1 + u2,2 + = 0.

    .

    .

    Les conditions aux limites nous ont ramene a` avoir la grille suivante dans laquelle nous allonschercher les inconnus de lequation:

    -

    6

    00

    0

    0

    0

    0

    0 0 0 0 0 0 0 0 ~x

    ~y

    0 0 0 0 0 0 0 0

    100

    100

    100u1,1

    u2,1

    u3,1

    u1,2 u1,3 u1,4 u1,5 u1,6 u1,7

    u2,2

    u3,2

    u2,3 u2,4 u2,5 u2,6 u2,7

    u2,3 u3,4 u3,5 u3,6 u3,7

    Avec un petit programme sur Matlab, nous transformons la matrcie U en un vecteur ~v pourpouvoir bien resoudre le syste`me sans erreur puisque la resolution du syste`me AU = B exige queU soit un vecteur. Voici le programme qui a assure la transformation:********************************************

    for j=1:ny-1for i=1:nx-1v(k)=u(i,j);k=k+1;endend**********************************************

    Departement de MathematiquesFST-Mohammedia, (2008)

    13

  • A. Taik Cours AN3 LST-MI

    Ce qui nous donne apre`s, le syste`me:

    4v1 + v2 + + v8 + = 0v1 4v2 + v3 + + v9 + = 0.

    .

    .

    + v6 4v7 + = 100v1 + 4v8 + v9 + = 0.

    .

    .

    Il nous reste maintenant a` resoudre le syste`me matriciel suivant: A ~v = B, avec

    A =

    4 1 11 4 1 10 1 4 1 1

    ...

    ...

    ...

    1 4 0 11 0 4 1 10

    ...

    ... 1

    ...

    ...

    ...

    .

    .

    .

    0 1 1 4

    et B =

    0.

    .

    .

    .

    .

    .

    100.

    .

    .

    .

    .

    .

    100.

    .

    .

    .

    .

    .

    100

    Lutilisation de la methode de Jacobi ou Gauss-Seidel pourrait nous donner les solutions dusyste`me. Toutefois, nous allons adapter la resolution directe comme le titre lindique pour resoudrece syste`me. voici le programme complet, explique, saisi en Matlab qui nous a permis davoir lamatrice U a` partir des calculs des elements du vecteur ~v.*************************************************

    clc;clearh=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 elements 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;

    Departement de MathematiquesFST-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;endendfor i=1:n-nx+1A(nx-1+i,i)=1;A(i,nx-1+i)=1;endA(n,n)=-4;%%% (remplissage des elements de la matrice B)for i=1:nB(i)=0;if (mod(i,nx-1)==0)B(i)=-100;endend%%% (resolution du syste`me Av=B et transformation du vecteur ~v en la matrice U ).V = A\B;k=1;for j=1:ny-1for i=1:nx-1u(j,i)=V(k);k=k+1;endend%%% (decallage des elements pour inserer les conditions aux limites)for j=ny:-1:2for i=nx:-1:2u(j,i)=u((j-1),i-1);endendfor i=1:nxfor j=1:nyu(1,i)=0;u(j,1)=0;u(ny+1,i)=0;u(j,nx+1)=100;endendu(1,nx+1)=0;%%% les vecteurs x et y

    Departement de MathematiquesFST-Mohammedia, (2008)

    15

  • A. Taik Cours AN3 LST-MI

    x=0:h:b; y=0:h:d;%%% (affichage la courbe en tenant compte des vecteurs x ,y et de la matrice U)mesh(x,y,u)**********************************************

    Remark 3. : Pour evaluer le syste`me avec les autres valeurs de h, il suffit de remplacer 2.5 parles autres valeurs et compiler le programme, cela donnera la courbe correspondante pour chaquevaleur de h.

    Voici en resume, les courbes quon obtient en variant h:

    Figure 1.1: Evolution de la courbe u = 0 en fonction de h avec la methode directe

    Malgre que cette methode ait pu nous donner une solution approchee a` lEDP u = 0, celle-ciest obtenue par une approximation des 2u

    x2et

    2uy2

    par lutilisation de la formule de Taylor tronqueea` lordre 2. Nous avons donc commis une erreur de lordre de h2.Non seulement cette erreur commise est considerable mais le calcul des elements du vecteur ~vest de plus en plus couteux en memoire. Par exemple pour hx = hy = h = 1.25, la matriceA M(105). La resolution de ce syste`me matriciel avec A une matrice carree (105, 105) necessiteune memoire de 14000 bytes (octets) dans la machine. Or, pour affiner beaucoup plus la solutionnumerique vers la solution analytique, nous devons faire tendre h vers zero pour quil soit tre`sproche de la limite approximee par la methode de Taylor. Ce qui augmentera encore la necessite

    Departement de MathematiquesFST-Mohammedia, (2008)

    16

  • A. Taik Cours AN3 LST-MI

    de memoire et qui risquera de planter la machine sinon nous devons avoir des machines a` memoiresgigantesques (qui ne sont pas a` la portee de tout le monde!).

    3. Methode de relaxation de LiebmannPour reme`dier le proble`me precedement pose, Liebmann a pense a` la methode iterative de Gauss-Seidel puisque la matrice A est a` diagonales dominantes, cest a` dire:

    | Ai,i |>n

    j=1,j 6=i| Ai,j |, 1 i n

    3.1. Methode:Le schema numerique obtenu dans la partie 1 de ce projet nous donne:

    ui1,j + ui,j1 4ui,j + ui+1,j + ui,j+1 = 0

    ui,j = ui1,j + ui,j1 + ui+1,j + ui,j+14

    uk+1i,j =uk+1i1,j + u

    k+1i,j1 + u

    ki+1,j + u

    ki,j+1

    4(3.1)

    Cette methode est appelee methode iterative de Liebmann. Une condition initiale est exigee,comme pour toute autre methode iterative, pour pouvoir commencer le processus.Pour cette methode, on a besoin de seulement 6000 bytes (octets) pour resoudre le syste`me au lieude 14000 bytes pour la methode directe, pour h = 1.25.On peut aussi ecrire:

    uk+1i,j = uki,j +

    [uk+1i1,j + u

    k+1i,j1 + u

    ki+1,j + u

    ki,j+1

    4

    ]

    le terme entre crochets est appele residus conu comme un ajustement de la valeur precedente uki,jpour avoir la valeur uk+1i,j

    3.2. Idee de Relaxation:Au lieu dajouter exactement le residus, on ajoute un terme un peu plus grand en introduisant unfacteur de relaxation w compris entre 1 et 2 pour avoir la nouvelle relation :

    uk+1i,j = uki,j + w

    [uk+1i1,j + u

    k+1i,j1 + u

    ki+1,j + u

    ki,j+1

    4

    ]

    Departement de MathematiquesFST-Mohammedia, (2008)

    17

  • A. Taik Cours AN3 LST-MI

    w est appele un optimum, et il est obtenu, dans les conditions de Dirichlet, par une estimation plusraisonnable comme etant la plus petite valeur des solutions de lequation

    (cospi

    nx+ cos

    pi

    ny)2w2 16w + 16 = 0

    La resolution de cette equation du second degre nous donne:

    wopt =4

    2 +4 (cos pi

    nx+ cos pi

    ny)2

    Nous reprenons ici le meme exercice enonce au debut du projet et le resoudre en utilisant cettenouvelle relation. voici, en Matlab, le programme a` compiler avec h = 0.625. Pour avoir les autrescourbes, il suffit 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:nyu(j,nx+1)=100;endwhile (abs(norm(u-v) 1e-6))v=u;for j=2:nxfor i=2:nyu(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));endendendmesh(x,y,u)*************************************************

    Voici les courbes representatives pour chaque valeur de h.

    Departement de MathematiquesFST-Mohammedia, (2008)

    18

  • A. Taik Cours AN3 LST-MI

    Figure 1.2: Evolution de la courbe u = 0 en fonction de h pour la methode de relaxation

    ConclusionNous remarquons que les deux methodes convergent et tendent a` former une vraie courbe spatialequand h tend vers zero. Ce qui est en commun accord avec les approximations car si h

  • Chapitre 2

    Resolution dune EDP parabolique

    Enonce:Soit a` resoudre lequation de la chaleur u

    t=

    2ux2

    avec R fixe. Considerons le syste`me:ut

    = c

    2ux2

    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/cm3, x = 0.25. t sera donne par les conditions destabilite definies par linequation: r =

    ctx2

    < 12. La solution analytique est donnee par:

    uexact(x, t) = 800n=0

    1

    pi2(2n+ 1)2 cos pi(2n+ 1)(x 1)

    2 e0.3738(2n+1)2t

    1. Utiliser la methode directe (methode explicite) en supposant r > 12

    puis r < 12. Que

    constatez-vous?

    2. Utiliser maintenant la methode de Crank- Nicolson et faites varier le r. Que constatez-vous?3. Comparaisons des methodes:

    (a) Comparer, en fonction de r, graphiquement uexact(0.25, t) et uapp(0.25, t) puis uexact(0.75, t)et uapp(0.75, t)

    (b) Meme question pour uexact(x, 0.99) et uapp(x, 0.99) puisuexact(x, 1.98) et uapp(x, 1.98)

    4. Conclure.

    20

  • A. Taik Cours AN3 LST-MI

    1. Discretisation de lespace et du temps:

    1.1. Discretisation de lespace:Nous devons resoudre notre equation aux derivees partielles dans lespace compris entre 0 et 2avec un pas x. Pour passer donc trouver le point xi a` partir du point xi1, nous devons ajouter a`ce dernier le terme x, de sorte que nous avons:

    xi = xi1 +xxi1 = xi2 +x.

    .

    .

    x2 = x1 +xx1 = x0 +x

    En sommant membres a` membres les equations ainsi obtenues et apre`s simplifications, nous trou-vons:

    xi = x0 + (i 1 + 1)x = x0 + ix or x0 nest autre que le point a de lintervalle [a, b], donc,finalement:

    xi = a+ ix, 1 i nxavec nx =

    bax

    = 2x

    1.2. Discretisation du temps:Notre equation, cest a` dire le processus de resolution doit se refaire dans un intervalle de tempsegal a` t jusqua` arriver a` Tmax. Pour passer de tj a` tj+1 nous devons a` chanque fois ajouter t a`tj . Par un raisonnement par recurence comme precedemment, nous tirons: tj = jt car t0 = 0 etcorrespond a` linstan t = 0.tj = jt, 1 j nt avec nt = Tmaxt

    2. Programmation de la solution analytique:Soit:

    uexact(x, t) = 800n=0

    1

    pi2(2n+ 1)2 cos pi(2n+ 1)(x 1)

    2 e0.3738(2n+1)2t

    Puisque nous sommes en analyse numerique et non en analyse fondamentale nous devons savoirque nous ne travaillons quavec des points dun maillage et non dans tout le domaine comme onaurait cru le faire. Pour evaluer la valeur numerique de uexact pour tout point appartenant dans lagrille, nous devons faire une boucle qui, pour chaque point (xi, tj), calcule uexact(xi, tj).Posons = 100 acceptable en analyse numerique, nous avons donc le programme suivant qui cal-cule les elements de la matrice v representant exactement les valeurs de u(xi, tj) dans le cadrillage.

    Departement de MathematiquesFST-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/4dt=dx*dx*c*p*r/k;Tmax=100*dt;%%(Nous avons fait Tmax un multiple de dt pour quen le divisant par dt, nt soittoujours 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+1for j=1:nt+1u(i, j) = v(i, j)+8001/(pi2 (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);endendn=n+1;endmesh(t,x,v)*****************************

    Voici la courbe que nous avons obtenue pour r = 14:

    3. Discretisation de lequation differentielle:

    3.1. Rappel de la notation spatiale et temporelle:Si la fonction u prend comme variables le temps tj et de lesapce xi, yj, , par commodite dulangage, on notera u(xi, tj) par uji et en dimension 2D de lespace et 1D en temps, u(xi, yj, tk)sera notee par uki,j

    Departement de MathematiquesFST-Mohammedia, (2008)

    22

  • A. Taik Cours AN3 LST-MI

    Figure 2.1: Representation graphique de la solution analytique uexact(xi, tj)

    3.2. Discretisation des derivees partielles:Dapre`s les approximations vues dans le projet 1, pargraphe 1.1.1, nous pouvons approximer 2u

    x2

    par:2u

    x2(xi, tj) u

    ji+1 2uji + uji+1

    (x)2(3.1)

    Puisque ut

    est une derivee simple cest a` dire une derivee premie`re, nous utilisons ici lune destrois formules vues en projet 1, paragraphe 1.1.1. Prenons la formule avale (droite):

    u

    t(xi, tj) u

    j+1i ujit

    (3.2)Nous avons remplace hx par x et ht par t.

    3.3. Equation aux derivees partielles discre`tisee:

    Remplaons 3.1 et 3.2 dans lEDP donnee en enonce. On aura: uj+1i ujit

    c u

    ji+12uji+uji1

    (x)2

    uj+1i uji = t(x)2 c (uji+1 2uji + uji1)Posons r = t

    (x)2

    c, lequation devient:

    uj+1i = ruji+1 + (1 2r)uji + ruji1

    Ceci est lequation discretisee de lequation de la chaleur avec la methode des differences finies.On lappelle equation de la methode directe.

    Departement de MathematiquesFST-Mohammedia, (2008)

    23

  • A. Taik Cours AN3 LST-MI

    Remark 4. :

    1. r regroupe les constantes physiques du proble`me et celles de la discretisation de lespace[a, b] et du temps [0, Tmax]. Donc les pas de discretisations influencent lequation discretisee.

    2. Pour j = 0, t = 0 et u1i = ru0i+1+(12r)u0i+ru0i1 lequation necessite la connaissancede la condition initiale pour demarrer le processus.Cette condition nest autre que f(x, 0) =f(xi) donnee par lenonce du proble`me.

    3.4. Resolution numerique du syste`me:Quand on fixe j et on varie i de 1 a` nx 1, on obtient le syste`me lineaire de nx 1 equations a`nx 1 inconnues suivant:

    uj+11 = ruj2 + (1 2r)uj1 + ruj0

    uj+12 = ruj3 + (1 2r)uj2 + ruj1

    .

    .

    . {

    U j+1 =M U j +N0 j nt 1

    .

    .

    .

    uj+1nx1 = rujnx + (1 2r)ujnx1 + rujnx2

    Avec: uj0 la condition aux limites en a, on la notera dans la programmation uj0 = cla et u

    jnx la

    condition aux limites en b qui sera notee ujnx = clb. Nous avons donc:

    M =

    1 2r r 0 0r 1 2r r . . . ...0 r 1 2r r . . . ....

    .

    .

    ...

    ...

    ...

    ... 0

    .

    .

    .

    ... r 1 2r r

    0 0 r 1 2r

    et N =

    rU j00.

    .

    .

    .

    .

    .

    .

    .

    .

    0rU jnx

    La matrice M est une matrice tridiagonale ou trigonale et la resolution est dautant plus simplea` programmer avec une des methodes iteratives ou directes vues en analyse numerique II. Mais,encore une fois, nous allons nous suffire de la resolution directe par la division matricielle. Cesta` dire si on a a` resoudre le syste`me Au = B alors on ecrira en Matlab x = A \ B et nous auronsautomatiquement la reponse.Attention: B doit etre un vecteur colonne de meme nombre delements que le nombre des lignesde A et le vecteur ~u sera donne en un vecteur colonne. Il ne nous est pas nouveau de donner latransposee dune matrice pour avoir tout ce que nous voulons.

    Departement de MathematiquesFST-Mohammedia, (2008)

    24

  • A. Taik Cours AN3 LST-MI

    Nous avons pris r = 14

    pour le cas ou` r < 12

    et r = 0.625 pour le cas ou` r > 12, on a le programme

    suivant qui nous calcule les valeurs du vecteur ~u, remplace par le vecteur ~h dans le programmepour pouvoir lier le programme avec le premier calculant les elements 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 valeursinitiales qui ne sont dautres que les conditions initiales. Pour avoir la courbe du deuxie`me cas, ilsuffit 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-1N(i)=0;endN(1)=r*cla;N(nx-1)=r*clb;for i=1:nx-2M(i,i)=1-2*r;M(i,i+1)=r;M(i+1,i)=r;endM(nx-1,nx-1)=1-2*r;for i=1:nx+1if x(i) < 1Ci(i)=100*x(i);elseCi(i)=100*(2-x(i));endendfor i=1:nx-1h(i)=Ci(i+1);endj=1;

    Departement de MathematiquesFST-Mohammedia, (2008)

    25

  • A. Taik Cours AN3 LST-MI

    h=h;while(j < nt+ 2)for i=1:nx-1w(i,j)=h(i);endh=M*h+N;j=j+1;endfor i=nx:-1:2for j=nt+1:-1:1w(i,j)=w(i-1,j);endendfor j=1:nt+1w(1,j)=0;w(nx+1,j)=0;endmesh(t,x,w);*********************************

    Voici les courbes obtenues apre`s compilation pour les deux cas:

    Figure 2.2: Courbe de la solution numerique,methode explicite pour r < 1

    2

    Figure 2.3: Courbe de la solution numerique,methode explicite pour r > 1

    2

    Constatations:Nous avons remarque, dapre`s les deux graphes corresondantes a` r < 1

    2et r > 1

    2, que la methode

    presente deux regions de stabilite. Si r < 12

    la methode est stable et converge vers la solution

    Departement de MathematiquesFST-Mohammedia, (2008)

    26

  • A. Taik Cours AN3 LST-MI

    analytique. Nous avons une courbe semblable a` celle de la solution analytiquement etablie. Plusj saccroit, plus les valeurs du vecteur ~u deviennent nulles. Ce qui est en entier accord avec lasolution exacte qui est une serie des fonctions convergente, alors son terme general doit tendreforcement vers 0.Mais si r > 1

    2, la methode presente des failles et la courbe ne converge meme pas. Lallure obtenue

    dans ce cas est totalement en desaccord avec celle de la solution exacte.Pour avoir un bon resultat dans cette methode, il faut donc tenir compte de la valeur de r car elleinfluencera le resultat.

    4. Methode de Crank - Nicolson ou methode implicite:En mathematiques, en analyse numerique, la methode de Crank-Nicolson est un algorithme sim-ple permettant de resoudre des syste`mes dequations aux derivees partielles. Cette methode utiliseles differences finies pour approcher une solution du proble`me : elle est numeriquement stable,et quadratique pour le temps. On peut facilement la generaliser a` des proble`mes a` deux ou troisdimensions.Cette methode, publiee en 1947, est le resultat des travaux de la mathematicienne britanniquePhyllis Nicolson(1917 1968) et du physicien John Crank (1916 2006). Ils lutilise`rent dansla resolution de lequation de la chaleur. Mais, peu apre`s la methode est devenue usuelle dansplusieurs proble`mes numeriques.

    4.1. Methode:Pour assurer une resolution numerique stable et ce dans toute la region de letude, Crank et Nicol-son ont propose de prendre la moyenne des derivees partielles spatiales de u entre les instants tj ettj+1 au lieu de considerer seulement la derivee spatiale a` linstant tj , cest a` dire:

    u

    t(xi, tj) =

    2

    [2u

    x2(xi, tj) +

    2u

    x2(xi, tj+1)

    ]

    4.2. Resolution numerique de lEDPNous remplaons les derivees partielles par leurs approximations deja` etablies pour avoir lequationnumerique suivante:12

    (uji+12uji+uji1

    (x)2+

    uj+1i+12uj+1i +uj+1i1(x)2

    )= c

    uj+1i uji

    t

    2 (uj+1i uji) = t(x)2 c (uji+1 2uji + uji1 + uj+1i+1 2uj+1i + uj+1i+11).Posons r = t

    (x)2c

    , on trouve lequation:

    ruj+1i1 + (2 + 2r)uj+1i ruj+1i+1 = ruji1 + (2 2r)uji + ruji+1

    Departement de MathematiquesFST-Mohammedia, (2008)

    27

  • A. Taik Cours AN3 LST-MI

    Ceci est le schema numerique de Crank - Nicolson.Lorsque nous fixons j et faisons varier i, nous obtenons le syste`me lineaire suivant:

    ruj+10 + (2 + 2r)uj+11 ruj+12 = ruj0 + (2 2r)uj1 + ruj2ruj+11 + (2 + 2r)uj+12 ruj+13 = ruj1 + (2 2r)u2i + ruj3ruj+12 + (2 + 2r)uj+13 ruj+14 = ruj2 + (2 2r)uj3 + ruj4

    .

    .

    .

    .

    .

    .

    ruj+1nx2 + (2 + 2r)uj+1nx1 ruj+1nx = rujnx1 + (2 2r)ujnx + rujnx=M1U j+1 +N1 =M2U j +N2

    Avec:

    M1 =

    2 + 2r r 0 0r 2 + 2r r . . . ...0 r 2 + 2r r . . . ....

    .

    .

    ...

    ...

    ...

    ... 0

    .

    .

    .

    ... r 2 + 2r r

    0 0 r 2 + 2r

    , N1 =

    rU j+100.

    .

    .

    .

    .

    .

    .

    .

    .

    0rU j+1nx

    M2 =

    2 2r r 0 0r 2 2r r . . . ...0 r 2 2r r . . . ....

    .

    .

    ...

    ...

    ...

    ... 0

    .

    .

    .

    ... r 2 2r r

    0 0 r 2 2r

    , N2 =

    rU j00.

    .

    .

    .

    .

    .

    .

    .

    .

    0rU jnx

    = U j+1 =M11 [M2U j + (N2 N1)]

    Ce syste`me matriciel est lineaire dordre nx 1.

    4.3. Programmation de la solutionVoici le programme qui sert a` donner la courbe de la solution numerique de la methode de Crank- Nicolson. Pour avoir la solution (la courbe) pour le deuxie`me cas, il suffit de remplacer r par 0.25:

    *********************************

    clc; clear;k=0.13;c=0.11;

    Departement de MathematiquesFST-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-1N1(i)=0;N2(i)=0;endN2(1)=-r*cla;N2(nx-1)=-r*clb;for i=1:nx-2M1(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;endM1(nx-1,nx-1)=2+2*r;M2(nx-1,nx-1)=2-2*r;for i=1:nx+1if x(i)

  • A. Taik Cours AN3 LST-MI

    j=j+1;endfor i=nx:-1:2for j=nt+1:-1:1w(i,j)=w(i-1,j);endendfor j=1:nt+1w(1,j)=0;w(nx+1,j)=0;endmesh(t,x,w);******************************************

    Voici les courbes representatives de w dans les deux situations:

    Figure 2.4: Courbe de la solution numerique,methode implicite pour r < 1

    2

    Figure 2.5: Courbe de la solution numerique,methode implicite pour r > 1

    2

    ConstatationsNous remarquons ici que la methode de Crank - Nicolson est inconditionnellement stable ( cest a`dire quel que soit r R). Toutefois, quand r > 1

    2la methode converge plus vite vers 0 que si cest

    le cas contraire. Il faut aussi savoir quon paie cette stabilite par la resolution, a` chaque instant tj ,dun syste`me lineaire qui necessite une inversion de la matrice M1 tridiagonale, soit:

    M1Uj+1 +N1 =M2U

    j +N2

    = U j+1 =M11 [M2U j + (N2 N1)]

    Departement de MathematiquesFST-Mohammedia, (2008)

    30

  • A. Taik Cours AN3 LST-MI

    5. Comparaison des methodes:En fonction de r, nous voulons comparer graphiquement la methode numerique explicite (directe)avec la solution analytique pour voir comment la solution approchee se rapproche a` la solutionexacte.

    5.1. Comparaison de uexact(0.25, t) et uapp(0.25, t), uexact(0.75, t) et uapp(0.75, t)Nous combinons le programme de la solution analytique avec celui de la solution numerique di-recte pour pouvoir faire la comparaison, puis on ajoute a` la fin du nouveau programme, la partiesuivante:Remarquons que xi = 0.25 si i = 2 et xi = 0.75 pour i = 4.

    **************************

    Sa1=v(2,:);Sn1=w(2,:);plot(t,Sa1,r,t,Sn1,g);Sa2=v(4,:);Sn2=w(4,:)figure(2)plot(t,Sa2,r,t,Sn2,g);**************************

    Voici donc les courbes comparatives de ces deux methodes aux points 0.25 et 0.75:

    Figure 2.6: Comparaison graphique deuexact(0.25, t) et uapp(0.25, t)

    Figure 2.7: Comparaison graphique deuexact(0.75, t) et uapp(0.75, t)

    Departement de MathematiquesFST-Mohammedia, (2008)

    31

  • A. Taik Cours AN3 LST-MI

    5.2. Comparaison de uexact(x, 0.99) et uapp(x, 0.99), uexact(x, 1.98) et uapp(x, 1.98)Remarquons quavec r = 1

    4, on na pas un point j tel que tj = 0.99 ni tj = 1.98 mais on voit que

    pour j = 10, tj = 0.9281 0.99 et pour j = 20, tj = 1.9594 1.98. On refait ensuite la memechose mais on ajoute a` present la partie suivate a` la fin de la combinaison:

    %%********************************Sa1=v(:,10);Sn1=w(:,10);plot(t,Sa1,r,t,Sn1,g);Sa2=v(:,20);Sn2=w(:,20)figure(2) plot(t,Sa2,r,t,Sn2,g);*******************************

    Voici donc les courbes comparatives des solutions pour les deux methodes a` tj = 0.9281 et tj =1.9594:

    Figure 2.8: Comparaison graphique deuexact(x, 0.9281) et uapp(x, 0.9281)

    Figure 2.9: Comparaison graphique deuexact(x, 1.9594) et uapp(x, 1.9594)

    6. Etudes theoriques de la methode explicite

    6.1. Convergence numeriqueLa notion de Convergence signifie que la solution numerique (donnee par le schema numerique)approche la solution exacte (analytique) quand x 0 et t 0, ce qui signifie que la mailledevient tre`s petite.

    Departement de MathematiquesFST-Mohammedia, (2008)

    32

  • A. Taik Cours AN3 LST-MI

    Considerons uji la solution numerique approchee et Uji la solution exacte de lequation:

    U

    t=

    k

    c

    2U

    x2

    Au point x = xi et t = tj , notons: eji = Uji uji Pour r = kc t(x)2 , uj+1i = r(uji+1+ uji1)+

    (1 2r)uji .eji = U

    ji uji uji = U ji eji que lon remplace dans le schema numerique precedente:

    U j+1i ej+1i = r(U ji+1 eji+1 + U ji1 eji1) + (1 2r)(U ji eji ) ej+1i =

    [r(eji+1 + e

    ji1) + (1 2r)eji

    ]+ U j+1i r(U ji+1 + U ji1) (1 2r)U ji .

    Avec la methode de Taylor, nous trouvons:U j+1i = U

    ji +t Ut (xi, ), tj tj+1

    U ji+1 = Uji +x Ux (xi, tj) + (x)

    2

    2 2U

    x2(1, tj), xi 1 xi+1

    U ji1 = Uji x Ux (xi, tj) + (x)

    2

    2 2U

    x2(2, tj), xi1 2 xi

    que lon remplace dans lequation precedemment trouvee pour avoir:

    ej+1i =[r(eji+1 + e

    ji1) + (1 2r)eji

    ]+ U ji +t

    U

    t(xi, ) r(U ji +x

    U

    x(xi, tj)

    +(x)2

    2

    2U

    x2(1, tj)) r(U ji x

    U

    x(xi, tj) +

    (x)2

    2

    2U

    x2(2, tj)) (1 2r)U ji .

    Apre`s simplification des quantites en couleurs, lequation devient:

    ej+1i =[r(eji+1 + e

    ji1) + (1 2r)eji

    ]+tU

    t(xi, )r((x)

    2

    2

    2U

    x2(1, tj)+

    (x)2

    2

    2U

    x2(2, tj))

    Dans un maillage tre`s fin, les points de la discretisation sont tre`s proches les uns des autres. Nousavons donc xi 1 xi+1, xi1 2 xi ainsi que tj tj+1. Pour ce, nous allonsremplacer 1 et 2 par xi et par tj puis r par kc

    t(x)2

    pour avoir lequation sous la forme:

    ej+1i =[r(eji+1 + e

    ji1) + (1 2r)eji

    ]+t U

    t(xi, tj) k

    c

    t

    (x)2((x)2

    2

    2U

    x2(xi, tj)

    +(x)2

    2

    2U

    x2(xi, tj)).

    Apre`s simplification de la quatite (x)2, factorisons t:

    ej+1i =[r(eji+1 + e

    ji1) + (1 2r)eji

    ]+t

    [U

    t(xi, tj) k

    c

    2U

    x2(xi, tj)

    ].

    Departement de MathematiquesFST-Mohammedia, (2008)

    33

  • A. Taik Cours AN3 LST-MI

    Le deuxie`me crochet, qui nest autre que lequation de la chaleur initialement posee dans lenonce,est nul. Ce qui nous done legalite finale:

    ej+1i = reji+1 + re

    ji1 + (1 2r)eji

    ej+1 = reji+1 + reji1 + (1 2r)eji Si r < 1/2, on a: 1 2r > 0 |1 2r| = 1 2r, alors:ej+1 r eji+1+ r eji1+ (1 2r) eji Posons

    Ej = max1inx1

    eji ej+1 rEj + rEj + (1 2r)Ej ej+1 Ej, 1 j nt 1

    Par recurence, ej+1 Ej E1 E0

    E0 = U0 u0 a` t = 0, or, dapre`s les conditions initiales, U0 u0 = 0, donc E0 = 0.ej+1 0 ej = 0, j et r < 12

    Donc, la methode explicite converge vers zero quand r < 1/2.

    6.2. Stabilite numeriqueOn dit quun schema numerique est stable si et seulement si au cours des calculs, lerreur com-mise dune iteration a` lautre (dune maille a` lautre) ninfecte pas le calcul suivant. Dans le cascontraire, le calcul peut exploser et on naura pas une bonne convergence. soit lequation de lachaleur:

    U

    t=

    k

    c

    2U

    x2

    La numerisation de cette equation nous donne la relation matricielle:

    U j+1 = AU j U1 = AU0

    U0 etant donnee par les conditions initiales.

    U1 = AU0

    U2 = AU1 = A2U0

    U3 = AU2 = A3U0

    .

    .

    .

    U j = AU j1 = AjU0

    Departement de MathematiquesFST-Mohammedia, (2008)

    34

  • A. Taik Cours AN3 LST-MI

    Supposons quon introduit U0 par une certaine erreur et on donne U0

    U1= AU

    0

    U2= AU

    1= A2U

    0

    U3= AU

    2= A3U

    0

    .

    .

    .

    Uj= AU

    j1= AjU

    0

    Avec e0 = U0 U0 ej = U j U j = AjU0 AjU0 = Aj(U0 U0)

    ej = Aje0

    A admet N valeurs propores distinctes (Ref: cours sur les valeurs propres), donc ses vecteurspropres associes forment une basse (Cf Alge`bre 1):

    AX1 = 1X1AX2 = 2X2AX3 = 3X3.

    .

    .

    AXn = nXn

    i est la valeur propore associee au vecteur propre Xi. Il existe alors c1, c2 , cn tels que:e0 = c1X1 + c2X2 + + cnXn

    ej = Aj(Ni=1

    ciXi) =Ni=1

    AjciXi =Ni=1

    ciAjXi =

    Ni=1

    cijiXi

    ej =Ni=1

    cijiXi

    ej = Ni=1

    cijiXi

    ji=1

    |ci| ji |Xi|

    Lerreur est matrisable si , |i| < 1. Ceci est verifie si et seulement si:

    max1iN

    |i| < 1

    Pour la matrice A de cet exemple, les valeurs propres sont donnees par (voir le cours sur les valeurset vecteurs propres):

    i = 1 4r sin2 ipi2(N + 1)

    , i = 1, , N

    Departement de MathematiquesFST-Mohammedia, (2008)

    35

  • A. Taik Cours AN3 LST-MI

    Alors:|i| < 1 |1 4r sin

    2 ipi

    2(N + 1)| < 1, avec r = k

    c tx

    1 < 1 4r sin2 ipi

    2(N + 1)< 1

    pour:

    1 < 1 4r sin2 ipi

    2(N + 1) r < 1

    2[

    sin2 ipi

    2(N + 1)

    ]1, i = 1, 2, , N

    r < 12 min

    i=1, ,N

    [sin2 ipi

    2(N + 1)

    ]1Or x, sin2 x 1 sin2 x

    a 1, a > 1

    [sin2 xa

    ]1 1, donc:

    mini=1, , N

    [sin2 ipi

    2(N + 1)

    ]1 1 r < 1

    2

    On tire encore une fois que la methode directe (explicite) est stable si r < 12. Ce qui est en parfait

    commun accord avec lexperience realisee.

    ConclusionIl est interessant de remarquer que lequation de la chaleur, introduite initialement pour decrire laconduction thermique, apparat egalement dans dautres branches de la physique theorique. Ellepermet par exemple de decrire :

    1. Le phenome`ne de diffusion ;

    2. Certains aspects probabilistes du mouvement brownien

    Les methodes de resolution de cette equation sont multiples et diversifiees. Toutefois, il fautfaire attention a` la stabilite et la convergence de la methode choisie car, simple et facile a` manipulerquelle soit, elle pourrait causer des instabilites inattendues et si on na pas la solution analytiquepour faire la comparaison, des confusions pourraient sengendrer. Il serait sage de payer le cotde resolution et avoir une methode stable et convergente inconditionnellement que de se contenterdune resolution aleatoire ( valable pour quelques valeurs particulie`res) vue quelle soit maniablefacilement.

    Departement de MathematiquesFST-Mohammedia, (2008)

    36

  • Chapitre 3

    Resolution dune EDP hyperbolique

    1. Enonce:Soit a` resoudre une equation hyperbolique donnee par:

    A2u

    t2+B

    2u

    xt+ C

    2u

    x2+ E = 0 (1.1)

    1.1. Resolution par la methode des differences finies:Schema numerique simplifie

    Posons a = c1 (la celerite), b = 0, c = 1 et e = 0, ce qui nous donne: = b2 4ac = 0 4(c1)(1) = 4c1 > 0 car c1 > 0. Cest bien donc une equation hyperboliquequi nest autre que lequation dondes:

    2u

    t2 c1

    2u

    x2= 0.

    Comme les deux derivees sont des derivees secondes, nous utilisons les approximations de Taylortrouvees dans les equations 1.1 pour etablir le schema numerique de cette EDP. Nous avons donc:

    uj+1i 2uji + uj1i(t)2

    = c1uji+1 2uji + uji1

    (x)2

    uj+1i = c1(t)2

    (x)2(uji+1 + u

    ji1) 2(1 c1

    (t)2

    (x)2)uji uj1i .

    Ceci est lequation numerique de lequation dondes. Pour simplifier le schema, posons:

    c1(t)2

    (x)2= 1 t = x

    c1.

    uj+1i = uji+1 + uji1 uj1i . (1.2)

    37

  • A. Taik Cours AN3 LST-MI

    Remark 5. Avec les differences finies, lequation 1.2 est le schema numerique utilisee pour laresolution de lequation dondes 2u

    t2= c1

    2ux2

    .

    Mais, il se pose un proble`me de mise en oeuvre de ce schema vu que u est connu a` t = t0 = 0 quiest la condition initiale. Or, pour calculer u a` t = t = t1, nous devons connaitre la valeur de ua` t = t1 = t.

    Conditions mixtes:

    Connatre les valeurs de u a` t = t nest plus un proble`me quand nous avons des conditions deNewmann, de type derivee ( une condition sur la vite`sse de propagation): u

    t(x, 0) = g(x), a` t = 0

    u(xi, 0)

    t=u(xi,t) u(xi,t)

    2t= g(x)

    u1i u1i2t

    = g(xi) u1i = u1i 2t g(xi).Remplaons-le alors dans lequation 1.2 il vient:

    u1i = u0i+1 + u

    0i1 u1i + 2t g(xi) u1i =

    1

    2(u0i+1 + u

    0i1) + t g(xi).

    Limite de la methode de differences finies

    Cest avec une condition sur la vite`sse, une approximation de quelques variables comme b = 0 ete = 0, une simplification de lexpression c1 tx par 1, que nous avons pu resoudre cette equationhyperbolique. Toutefois et malheureusement, ce nest pas tout le temps pareil et la donnee dunetelle condition de type Newmann nest pas usuelle. On sera donc souvent bloque sur la resolutiondune eqaution hyperbolique si nous nous inspirons seulement de la methode des differences finies.

    2. Methode des caracteristiques:Il existe une classe dequations aux derivees partielles dont on peut obtenir les solutions en utilisantune methode du type geometrique, la methode des caracteristique.Cest une des plus grandes methodes enumerees en introduction utilisees pour la resolution desequations differentielles partielles.Cette methode des caracteristiques est une technique qui est particulie`rement adaptee aux proble`mesde transport, elle est utilisee dans de nombreux domaines tels que la mecanique des fluides ou en-core le transport de particules.Dans certains cas particuliers, cette methode peut permettre la resolution purement analytique delEDP. Dans des cas plus complexes comme en modelisation des syste`mes physiques, la methodedes caracteristiques peut etre utilisee comme une methode de resolution numerique du proble`me.la methode de resolution que nous presentons sapplique aux equations du premier et deuxie`me

    Departement de MathematiquesFST-Mohammedia, (2008)

    38

  • A. Taik Cours AN3 LST-MI

    ordres avec un nombre des variables superieur a` deux, mais pour la clarte du rapport nous nouslimitons a` une equation aux derivees partielles de deux variables.

    2.1. Pourquoi la methode des caracteristiques?la methode des caracteristique est simple a` appliquer, et demande peu de calculs et le resultatobtenu est remarquablement precis, contrairement a` ceux des methodes classiques des differencesfinies et de Galerkin.

    2.2. PrincipeEn mathematique, la methode des caracteristique est une technique pour resoudre les equationsaux derivees partielles, plus generalement la methode des caracteristiques est valable pour toutesles equations les equations aux derivees partielles hyperboliques.La methode consiste a` reduire une equation aux derivees partielles a` une famille dequations dif-ferntielles ordinaires, le long de laquelle la solution peut etre integree a` partir des donnees initiales .Elle cherche des courbes appelees les courbes caracteristiques ou tout simplement les caracteristiquesle long desquelles lequation aux derivees partielles se reduit en une equation simple a` resoudre.La resolution de cette simple equation sur les caracteristiques nous permet de retrouver la solutionglobale du proble`me originale sur tout le maillage. comment pouvons-nous trouver les courbescaracteristiques ?

    2.3. MethodeEn posant 2u

    x2= uxx,

    2ut2

    = utt et 2u

    xt= uxt et en considerant que uxt = utx, lequation 1.1 prend

    la forme:auxx + buxt + cutt + e = 0. (2.1)

    Ou` a, b, c, e sont des fonctions ne dependant pas de u et non toutes nulles. Posons:

    p =u

    x= ux, et q =

    u

    t= ut.

    = dp = px

    dx+p

    tdt = uxxdx+ uxtdt. (2.2)

    et dq =q

    xdx+

    q

    tdt = utxdx+ uttdt. (2.3)

    Ce qui nous donne, apre`s addition et soustraction:

    (2.2) uxx = dpdx uxt dt

    dx,

    Departement de MathematiquesFST-Mohammedia, (2008)

    39

  • A. Taik Cours AN3 LST-MI

    (2.3) utt = dqdt uxtdx

    dt.

    Substituons ces egalites dans lequations 2.1 il vient:

    auxt dtdx

    + buxt cuxtdxdt

    + adp

    dx+ c

    dq

    dt+ e = 0.

    En multipliant cette equation par dtdx

    , elle devient:

    uxt

    [a(dt

    dx)2 b( dt

    dx) + c

    ][adp

    dx dtdx

    + cdq

    dx+ e

    dt

    dx

    ]= 0. (2.4)

    Grce aux transformations precedentes, la resolution de lequation 2.1 revient a` ne resoudre 2.4.On suppose que, dans le plan x, t, on definit les courbes de sorte que le premier crochet soit nul.Sur ces courbes 2.1, il est equivalent a` prendre le deuxie`me crochet aussi egal a` 0.Posons m = dt

    dx, donc si am2 bm + c = 0, alors la solution de lEDP 2.1 peut-etre trouvee en

    resolvant:amdp+ cdq + edt = 0.

    Les courbes donnees par am2 bm+ c = 0 sont appelees les caracteristiques de lequation 2.1.On se limite dans le cas ou` b2 4ac > 0, ce qui fait donc que lequation susmentionnee admetdeux racines distinctes. Chaque point possedera deux courbes caracteristiques dont les pentes sontles racines de lequation precedente.

    Comment resoudre une EDP hyperbolique par la methode des caracteristiques ?.

    Strategie generale

    Nous allons maintenant donner les grandes lignes pour resoudre lEDP 2.1 par une integrationnumerique le long des caracteristiques. On conside`re deux points P et Q (voir figure1), lequationaux derivees partielles 2.1 etant hyperbolique, il y a deux caracteristiques en chaque point. Lacourbe caracteristique a` droite de P , de pente m+, intersecte celle de gauche de Q, de pente mau point R.La solution du proble`me 2.1 peut-etre trouvee en resolvant amdp + cdq + edt = 0 le long de cescaracteristiques.

    Exemple

    Soit a` resoudre lequation:utt = c

    21uxx

    On a: a = c21, b = e = 0 et c = 1 b2 4ac = 4c21 > 0.

    am2 bm+ c = c21 + 1 = 0 m = 1c1 m1 = 1c1 et m2 = 1c1 .

    Departement de MathematiquesFST-Mohammedia, (2008)

    40

  • A. Taik Cours AN3 LST-MI

    On a pose m = dtdx

    = 1c1 dt = 1

    c1dx

    = t = 1c1x

    a` t = t, on a alors t 0 = t = 1c1(x xi)

    -

    6

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @

    -

    R

    t = t

    t = 0 ~x

    ~t

    P Q

    m+q

    m+p

    mpmq

    Figure 3.1: Representation graphique des caracteristiques

    La premiere etape sera de trouver les coordonnees du pointR, pour cela, nous resolvons lequation:t = ( dt

    dx)av x = mavx sur les arcs PR et QR.

    Ecrivons lequation amdp+ cdq + edt = 0 sous la forme:

    aavmavp+ cavq + eavt = 0. (2.5)Commenons par le point P et puis par Q en utilisant les valeurs de m appropriees. Ceci va estimerp et q au point R.Finalement, on evaluera u en R de du = u

    xdx+ u

    tdt, en utilisant la forme:

    u = pavx+ qavt. (2.6)

    Departement de MathematiquesFST-Mohammedia, (2008)

    41

  • A. Taik Cours AN3 LST-MI

    3. Exercices dapplication

    3.1. Exercice 1:Soit a` resoudre:

    2ut2

    = 22ux2

    4ut

    = 0, 0 x 1

    u(x, 0) =

    {12x, 0 x 0.254 4x, 0.25 x 1

    u(0, t) = u(1, t) = 0

    Prendre x = 0.25 et t = 0.1768

    Corrige

    On a a = 2, b = 0, c = 1 et e = 4,

    Donc: b2 4ac = 0 4(2)(1) = 8 > 0, m1 = +22

    4=

    22

    et m2 = 22

    .

    Pour chaque point, nous avons deux caracteristiques:

    t =22x et t =

    22x (voir figure 2).

    Calculons u au point R2(0.5, 0.1768): On a lequation

    amp+ cq + et = 0,

    suivant la droite PR2 puis la droite QR2 on trouve:2

    22(pR2 pP ) + (qR2 qP ) + 4t = 0,

    222(pR2 pQ) + (qR2 qQ) + 4t = 0.

    On prend: pP = (ux)P = 4 (car on est a` droite du point P ), pQ = (ux)Q = 4, et qP = (ut )P =qQ = (

    ut)Q = 0 et on les remplace dans le syste`me pour avoir:{ 2(pR2 + 4) + qR2 + 4t = 0,

    2(pR2 + 4) + qR2 + 4t = 0.

    Apre`s resolution de ce syste`me, on obtient: pR2 = 4 et qR2 = 22

    Departement de MathematiquesFST-Mohammedia, (2008)

    42

  • A. Taik Cours AN3 LST-MI

    -

    6

    @@

    @@

    @

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @

    -

    R2R1 R3

    R4 R5 R6

    t = t

    t = 0 ~x

    ~t

    P Q

    m+q

    m+p

    mp

    mq

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @@

    @

    Figure 3.2:

    Maintenant, on evalue u au point R2 a` travers ces variations le long de de P R2.

    u = pavx+ qavt,

    uR2 uP = (pP + pR2

    2) 0.25 + (qP + qR2

    2) 0.1768,

    uR2 = (4 4

    2) 0.25 + (0

    22

    2) 0.1768 + 3.

    uR2 = 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 1u(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.0u(t = 0.3535) 0.0 -1.1875 -0.2500 0.8125 0.0u(t = 0.5303) 0.0 -1.3125 -2.4375 -1.3125 0.0

    Table 3.1: Tableau 1

    Departement de MathematiquesFST-Mohammedia, (2008)

    43

  • A. Taik Cours AN3 LST-MI

    Implementation numerique

    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

  • A. Taik Cours AN3 LST-MI

    for j=1:n+1if(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);

    elseif(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);

    endend

    endend 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 lexpressionde B de m\eme pour lexpression de u

    Execution du code:

    x 0 0.25 0.5 0.75 1u(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.0u(t = 0.3535) 0.0 -1.1875 -0.2500 0.8750 0.0u(t = 0.5303) 0.0 -1.3125 -2.3750 -1.3125 0.0

    Table 3.2: tableau 1

    Constat

    Dans ce cas les caracteristiques donnees par lequation am2 bm + c sont des droites.ici nousavons pris un pas de discretisation egal a` 0.25.

    Departement de MathematiquesFST-Mohammedia, (2008)

    45

  • A. Taik Cours AN3 LST-MI

    3.2. Exercice 2:Soit a` resoudre:

    2ut2

    = (1 + 2x)2ux2

    , x [0, 1]

    u(x, 0) = 0

    ut(x, 0) = x(1 x)

    u(0, t) = u(1, t) = 0

    Corrige

    Pour ce proble`me, a = (1+2x), b = 0, c = 1, e = 0. La resolution de lequation am2+bm+c =0 donne:

    m =

    1

    (1 + 2x)

    Les courbes caracteristiques sont obtenues en resolvant les equations differentielles:dtdx

    =

    11+2x

    ,

    dtdx

    =

    11+2x

    .

    En inte`grant a` partir du point initial de coordonnees (x0, t0), on trouve:t = t0 +

    1 + 2x1 + 2x0, pour m+,

    t = t0 1 + 2x+

    1 + 2x0, pour m.

    La figure suivante nous montre les differentes courbes caracteristiques que nous obtenons aveccette equation.

    On choisit deux points P (0, 0.25) et Q(0, 0.75) et on se propose de chercher la valeur de u dansleur intersection R qui, apre`s resolution du syste`me, donne les coordonnees R(0.4841, 0.1782).

    En suite , on resout lequation 2.5 pour avoir p = ux

    et q = ut

    .

    Apre`s utilisation de deux valeurs de m en chaque point, lequation 2.5 donne le syste`me suiv-ant:

    1.77341(0.45015)(pR 0) + (1)(qR 0.1875) = 0; P R,

    2.22341(0.6726)(pR 0) + (1)(qR 0.1875) = 0; Q R.Apre`s la resolution de ce syste`me, on obtient pR = 0 et qR = 0.1875.

    Departement de MathematiquesFST-Mohammedia, (2008)

    46

  • A. Taik Cours AN3 LST-MI

    Au point P : x = 0.25, t = 0, u = 0; p = (ux)P = 0;

    q = (ut)P = x x2 = 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 = (ut)P = x x2 = 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 caracteristiquesen utilisant lequation 2.6.

    P R : u = 0(0.2341) + 0.1875(0.1783) = 0.0334

    Q R : u = 0 + 0.0334 = 0.0334

    uR = 0.0334 + uP = 0.0334 + uQ = 0.0334Avec u = uR uP .

    La representation graphique precedente resume les autres valeurs de u dans le maillage.

    Implementation numerique

    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: );

    Departement de MathematiquesFST-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:nM=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));

    Departement de MathematiquesFST-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+1if(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);

    elseif(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

    Departement de MathematiquesFST-Mohammedia, (2008)

    49

  • A. Taik Cours AN3 LST-MI

    endend

    end

    Execution du code:

    0.0 0.0 0.0 0.0 0.00.0 0.00235 0.0334 0.0209 0.00.0 0.0297 -0.0205 0.0017 0.00.0 -0.0010 -0.0187 -0.0329 0.0

    Table 3.3: tableau de u

    Constat:

    Dans ce cas les caracteristiques ne sont pas des droites ,la pente m est une fonction en x. Nousavons pris un pas egal a` 0.25.

    3.3. Exercice 3:Soit a` resoudre le syste`me dequations:

    2ux2

    u2ut2

    + (1 x2) = 0, x [0, 1]

    u(x, 0) = x(1 x), ut(x, 0) = 0,

    u(0, t) = u(1, t) = 0.

    Corrige

    On conside`re le point R donne par lintersection de la caracteristique de pente positive du pointP (0.2, 0) et la caracteristique de pente negative du point Q(0.4, 0). Comparons cette equation avecla forme standard:

    auxx + buxt + cutt + e = 0,

    On trouve a = 1, b = 0, c = u, e = 1 x2. On calcule, avant tout, la valeur numerique de u, pet q au point P et Q:avec les conditions initiales,

    u = x(1 x),donc,

    uP = 0.2(1 0.2) = 0.16,uQ = 0.4(1 0.4) = 0.24;

    Departement de MathematiquesFST-Mohammedia, (2008)

    50

  • A. Taik Cours AN3 LST-MI

    De plus, avec les differentiation des conditions initiales,

    p =u

    x= 1 2x,

    ce qui nous donnepP = 1 2(0.2) = 0.6,pQ = 1 2(0.4) = 0.2;

    et enfin,q =

    u

    t= 0.

    Alors:qP = 0 et qQ = 0

    pour avoir les coordonnees du point R, nous devons connatre la pente m des caracteristiques.En utilisant lequation : am2 bm+ c = 0, on obtient:

    m =bb2 ac

    2a=4u2

    = u.

    Puisque m depend 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 prendm+ = +mP et m = mQ:

    m+ =uP =

    0.16 = 0.4,

    m =uq =

    0.24 = 0.490.

    A present, on peut estimer les coordonnees de R en resolvant le syste`me:tR = m+(xR xP ) = 0.4(xR 0.2)

    tR = m(xR xQ) = 0.49(xR 0.4).Ce qui nous donne xR = 0.310 et tR = 0.044.Puisquon ne connait pas m au point R, on utilise sa valeur initiale le long de chanque car-acteristique pour approximer p et q au point R en utilisant lequation 2.5:

    amp+ cq + et = 0,

    Nous remplacons les contantes connues par leurs valeurs pour chaque caracteristique pour avoir lesyste`me suivant:

    (1)(0.4)(pR 0.6) + (0.16)(qR 0) +(1 0.04 + 0.096

    2

    )(0.044) = 0

    (1)(0.490)(pR 0.2) + (0.24)(qR 0) +(1 0.16 + 0.096

    2

    )(0.044) = 0

    Departement de MathematiquesFST-Mohammedia, (2008)

    51

  • A. Taik Cours AN3 LST-MI

    Apre`s resolution, on obtient pR = 0.399 et qR = 0.246.Pour une premie`re approximation de u au point R, on a:

    u = px+ qt,

    uR 0.16 = 0.6 + 0.3992

    (0.310 0.2) + 0 0.2462

    (0.044 0),uR = 0.2095

    Cette approximation a ete etablie en tenant compte de la courbe PR, en utilisant les differentesvaleurs de p et q. Toutefois, on pourrait alternativement proceder par la caracteristique QR. Ce quinous donnerait:

    uR 0.24 = 0.2 + 0.3992

    (0.310) +0 0.246

    2(0.044 0),

    uR = 0.2076 0.2095

    Implementation numerique

    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));

    endj=1;for i=2:N+1

    u(i,j)=0;u(i,n+1)=0;if(mod(i,2)==0)

    for j=2:n+1A=[1 -m(i-1,j-1) ; 1 m(i-1,j)];

    Departement de MathematiquesFST-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);

    endfor 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);

    elseif(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);

    Departement de MathematiquesFST-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);

    endend

    endelse

    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);

    endend

    endend

    Execution du code:

    Constat:

    On constate que m est une fonction qui depend de la solution u. Nous avons pris un pas dediscretisation egal a` 0.2.

    Departement de MathematiquesFST-Mohammedia, (2008)

    54

  • A. Taik Cours AN3 LST-MI

    0.0 0.1600 0.2400 0.2400 0.1600 0.00.0 0.1600 0.2096 0.2435 0.2049 0.16000.0 0.2096 0.2228 0.2166 0.2049 0.00.0 0.0415 0.02346 0.2233 0.2166 0.18310.0 0.0636 0.2143 0.2233 0.1897 0.00.0 0.149 0.0594 0.2143 0.2289 0.1880

    Table 3.4: valeurs de u

    3.4. Exercice 4Soit a` resoudre le syste`me dequation :

    2ut2

    = c2 2ux2

    , x [0, 2] ,

    u(0, t) = u(2, t) = 0,

    ut(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 donnee par :

    u(x, t) =16

    pi2

    n=1

    (1)n1sin((2n 1)pix2)cos((2n 1)pict

    2)

    (2n 1)2 .

    Implementation numerique

    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

    Departement de MathematiquesFST-Mohammedia, (2008)

    55

  • A. Taik Cours AN3 LST-MI

    d(i,j)=y(i,j);if(1

  • 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;

    endend

    endendmesh(t,d,double(u))

    Execution du code:

    0.0 0.5000 1.0000 1.5000 2.0000 1.5000 1.0000 0.5000 0.00.0 0.5000 1.0000 1.0000 1.5000 1.5000 1.0000 0.5000 0.00.0 0.5000 0.5000 1.0000 0.5000 1.0000 1.0000 0.5000 0.00.0 0.0 0.5000 0.0 0.5000 0.0 0.5000 0.5000 0.00.0 0.0 -0.5000 0 -0.5000 0.0 -0.5000 0.0 0.00.0 -0.5000 -0.5000 -1.0000 -0.500 -1.0000 -0.5000 -1.0000 0.00.0 -0.5000 -1.0000 -1.0000 -1.5000 -1.0000 -1.5000 -0.5000 0.00.0 -0.5000 -1.0000 -1.5000 -1.5000 -2.0000 -1.0000 -1.5000 0.00.0 -0.5000 -1.0000 -1.5000 -2.0000 -1.5000 -2.0000 -0.5000 0.0

    Table 3.5: valeurs de u

    4. ConclusionLa resolution numerique des equations aux derivees partielles restent un defit a` relever, il ex-iste des methodes numeriques qui permettent la resolution des EDPs telles que la methode desdifferences finies et la methode des caracteristiques, nous avons remarque que pour quelquesequations aux derivees partielles lequations donde par exemple, la methode des differences finiesposait proble`me, il fallait simplifier certains termes et ajouter une condition supplementaire (con-dition mixte ou de Neumann) et la donnee dune telle condition nest pas usuelle, on sera sou-vent bloquer sur la resolution dune equations hyperbolique si nous nous inspirons seulementde la methode de differences finies; il fallait trouver une autre methode entre autre la methodedes caracteristiques, cette dernie`re est simple a` appliquer et donne une bonne approximation con-trairement a` la methode des differences finies. Nos resultats obtenus correspondaient a` ceux desmanuels utilises tandis que le graphe de la solution exacte netait pas identique a` celui des valeursapprochees, ce qui met en doute nos resultats numeriques. Mis a` part ces desagrements, nous avonstrouve ce travail tre`s interessant et fructueux, par ce travail nous avons maitrise loutil Matlab, nousavons su que les EDPs hyperboliques sont utilisees en acoustique, oceanographie, meteorologie.En plus de cela ce travail nous a permis de connaitre quil existe plusieurs methodes numeriques

    Departement de MathematiquesFST-Mohammedia, (2008)

    57

  • A. Taik Cours AN3 LST-MI

    qui permettent dapprocher une equation aux derivee partielles mais quelles sont limitees, ce quinous conduit a` affirmer quil nexiste pas une methode numerique universelle pour approcher lasolution exacte.

    Reference[1] Curtis F. Gerald, Patrick O. Wheatley, Applied Numerical Analysis. Third Edition, Addison-Wesley Publishing Company.

    Departement de MathematiquesFST-Mohammedia, (2008)

    58