Résumé Analyse numérique

download Résumé Analyse numérique

of 9

Transcript of Résumé Analyse numérique

  • 8/22/2019 Rsum Analyse numrique

    1/9

    Analyse numerique : Resume

    Stefan Binder,selon le cours du Prof. Marco Picasso

    8 juin 2007

    Remarque importante :Je ne garantis pas lexactitude de ce document. Toute proposition de correction ou damelioration estbienvenue : [email protected].

    1 Problemes dinterpolation

    1.1 Position du probleme

    Nous cherchons un polynome p Pn(R) tel que

    p(tj) = pj 0 j n,

    ou les valeurs t0, , tn et p0, , pn sont donnees. La methode matricielle est deconseillee...

    1.2 Solution : Base de Lagrange, puis interpolation de Lagrange

    Si k [0, n], posons

    k(t) =

    (t

    t0)

    (t

    tk1)(t

    tk+1)

    (t

    tn)

    (tk t0) (tk tk1)(tk tk+1) (tk tn) =n

    j=0,j=k

    t

    tj

    tk tj ,

    avec les proprietes suivantes :

    k Pn(R), k(tj) = 0 si j = k, k(tk) = 1.

    Ainsi, le polynome cherche est donne par

    p(t) =

    n

    j=0

    pjj(t).

    1.3 Interpolation dune fonction continue par un polynome

    Soient f : R R une fonction continue donnee et t0, . . . , tn R , (n + 1) points donnes. On cherchep Pn(R) tel que p(tj) = f(tj), 0 j n. En posant pj = f(tj), 0 j n, on obtient, commeprecedemment,

    p(t) =n

    j=0

    f(tj)j(t), t R.

    Bien sur, ce polynome depend du n choisi.

    De plus on montre que si f Cn+1, alors maxt[a,b] |f(t)pn(t)| 12(n+1)ban

    n+1

    maxt[a,b] |f(n+1)(t)|.

    1

  • 8/22/2019 Rsum Analyse numrique

    2/9

    1.4 Interpolation par intervalles

    Exemple avec n = 2 : fh est linterpolant par intervalles de degre 2 de f si :

    fh|[xi,xi+1] P2(R)

    fh(xi) = f(xi) et

    fh(xi+ 12

    ) = f(xi+ 12

    ).

    On demontre le resultat suivant :Soit f Cn+1([a, b]) et soit fh son interpolant de degre n par intervalles. Alors il existe C (independantedu choix des xi) telle que maxx[a,b] |f(x) fh(x)| Chn+1.

    2 Derivation numerique

    Soit f : R R, f C1. Soit x0 R donne. Alors :f(x0) = limh0

    f(x0+h)f(x0)h = limh0

    hf(x0)h

    = limh0f(x0)f(x0h)

    h = limh0hf(x0)

    h

    = limh0 f(x0+h/2)f(x0h/2)h = limh0hf(x0)

    h

    Les operateurs h, h et h sont appeles respectivement operateur de difference (premiere) progressive,retrograde et centree. On montre que ces operateurs sont lineaires.

    2.1 Theoreme

    Soit f : R R, f Cm+1, soient x0 R et h0 > 0 fixes. Alors C > 0 telle quef(m)(x0) mh f(x0)

    hm

    Ch, h h0.Le resultat est le meme si mh =

    mh .

    Les erreurs de troncaturef(m)(x0) mh f(x0)hm et f(m)(x0) mh f(x0)hm sont donc dordre h.

    2.2 Theoreme

    Soit f : R R, f Cm+2, soient x0 R et h0 > 0 fixes. Alors C > 0 telle quef(m)(x0) mh f(x0)

    hm

    Ch2, h h0.

    Lerreur de troncaturef(m)(x0) mh f(x0)hm

    est donc dordre h2. Cette formule centree est donc plusprecise que les deux autres.

    2.3 Remarque

    Les operateurs de difference sont definis recursivement : mh = h(m1h f), mh = h(m1h f) et

    mh = h(m1h f).

    Exemple : 2hf(x) = f(x + h) 2f(x) + f(x h).

    2.4 Differents types derreurs

    Les erreurs darrondis augmentent lorsque h diminue. Les erreurs de troncature diminuent lorsque h diminue. Les erreurs darrondis augmentent lorsque m augmente.

    2

  • 8/22/2019 Rsum Analyse numrique

    3/9

    3 Integration numerique, formules de quadrature

    3.1 But

    Si f : [a, b] R est une fonction continue donnee, on veut approcher numeriquement ba f(x)dx.

    3.2 MethodePartitionner [a, b] en petits intervalles [xi, xi+1] , i = 0, . . . , N 1. Ainsi,

    ba

    f(x)dx =

    N1i=0

    xi+1xi

    f(x)dx.

    Ce sont ces integrales quil faut approcher par des formules de quadrature.

    3.3 Formule de quadrature

    Si g est une fonction sur [1, 1], la formule de quadrature est definie par

    J(g) =Mj=1

    jg(tj),

    ou 1 tj 1 sont les M points dintegration (a determiner) et 1, . . . , M sont les poids (a determiner)de la formule de quadrature.Exemple (formule du trapeze) : t1 = 1, t2 = 1, 1 = 1, 2 = 1.On dira que la formule de quadrature J(g) est exacte pour les polynomes de degre r si

    J(p) =

    11

    p(t)dt, p Pr(R).

    Si J(g) est exacte pour les polynomes de degre r, alors

    | b

    af(x)dx

    Lh(f)

    | Chr+1.

    Soient 1 t1 < < tM 1, M points donnes, et 1, . . . , M la base de Lagrange de PM1(R)associee a ces points. Alors la formule de quadrature J(g) est exacte pour les polynomes de degre M-1si et seulement si

    j =

    11

    j(t)dt, 1 j M.

    3.4 Autres formules et formules derivees

    Formule composite :On peut egalement approcher

    ba

    f(x)dx par la formule composite :

    Lh(f) =N1

    i=0

    h

    2

    M

    j=1

    jfxi + h tj + 12

    .

    Exmple (formule du trapeze) : Lh(f) =N1

    i=0 hf(xi)+f(xi+1)

    2.

    Formule du rectanlge (formule a un seul point, t1 = 0) :

    J(g) = 2g(0).

    Formule de Simpson (formule a trois points, t1 = 1, t2 = 0, t3 = 1) :

    J(g) =1

    3g(1) + 4

    3g(0) +

    1

    3g(1).

    La formule de Simpson donne une erreur dordre h4.

    3

  • 8/22/2019 Rsum Analyse numrique

    4/9

    Formules de Gauss-Legendre :Lidee est de placer au mieux les points dinegration de maniere a ce que la formule de quadraturesoit exacte pour les polynomes de degre aussi grand que possible. Le polynome de Legendre estdefini par :

    LM(t) =1

    2MM!

    dM

    dtM(t2 1)M.

    On dit que la formule de quadrature J(g) est la formule de Gauss-Legendre a M points si les

    points dintegration sont les zeros de LM et j =11 j(t)dt, 1 j M. Cette formule de

    Gauss-Legendre est exacte pour les polynomes de degre 2M 1.Exemple : Formule de Gauss a deux points (t1 = 13 , t2 =

    13

    ). On a

    J(g) = g1/

    3

    + g

    1/

    3

    .

    4 Elimination de Gauss, systemes surdetermines, ...

    Voir cours dalgebre lineaire.

    5 Decomposition LU, decompostion de Cholesky(LLT)

    Construire les algorithmes par soi-meme.Les matrices L et U seront le la forme suivante :

    L =

    l11 0 0l21 l22 0

    .... . .

    ...lN1 lN2 lNN

    et U =

    1 u12 u1N0 1

    ......

    . . . uN1N0 0 1

    .

    6 Resolution de systemes lineaires par des methodes iteratives

    7 Methodes numeriques pour le calcul des valeurs propres dunematrice symetrique

    8 Equations et systemes dequations non lineaires

    8.1 Probleme

    Soit f : R R une fonction continue donnee. On cherche numeriquement un ou plusieurs zeros x, i.e.f(x) = 0.

    8.2 Methode : generalites

    Il faut dabord transformer le probleme f(x) = 0 en un probleme du type x = g(x). (Exemple :g(x) = x f(x), ou, plus generalement g(x) = x + f(x)). Alors une methode de point fixe consiste a :

    evaluer (avec les doigts) une approximation x0 du point fixe x de g, puis calculer successivement xn+1 = g(xn), n = 0, 1, 2, . . . .

    Si cette methode converge vers x, et si g est continue, alors cette limite x est necessairement un pointfixe de g.

    4

  • 8/22/2019 Rsum Analyse numrique

    5/9

    8.3 Theoreme

    Soit g : R R, g C1(R) et soit x un point fixe de g. Si |g(x)| < 1, alors > 0 tel que si x0 satisfait|x x0| , alors la suite xn+1 = g(xn) converge vers x lorsque n . De plus, la convergence estlineaire.

    8.4 Methode de NewtonSoit f : R R, f C et soit x tel que f(x) = 0, mais f(x) = 0. En observant le graphe de ceschema, on obtient que f(xn) = f(xn)/(xn xn+1), qui donne, lorsque x0 est proche de x, la methodede Newton :

    xn+1 = xn f(xn)f(xn)

    .

    Ainsi, si on pose g(x) = x f(x)f(x) , on voit que la methode de Newton est une methode de point fixe.On montre que si x0 est suffisamment proche de x, alors la suite donnee par la methode de Newtonconverge de maniere quadratique.

    8.5 Systemes non lineaires

    Soit f : RN RN une application continue dont on cherche un ou des zeros, i.e. f(x) = 0. Cetteequation peut secrire sous la forme dun systeme de N equations a N inconnues x1, . . . , xN :

    f(x) =

    f1(x)f2(x)

    ...fN(x)

    =

    f1(x1, . . . , xN)f2(x1, . . . , xN)

    ...fN(x1, . . . , xN)

    =

    00...0

    .

    La methode de Newton se generalise aux systemes non lineaires de la maniere suivante :

    xn+1 = xn Df(xn)1f(xn),

    ou Df(x) est la matrice jacobienne de f au point x definie par (Df(x))ij =

    fi

    xj (x), 1 < i, j < N. Deplus, le vecteur de depart x0 doit etre choisi suffisamment proche du vecteur x pour que la methodeconverge. Concretement, pour calculer xn+1 partir de xn, on

    ecrit le probleme sous la forme Df(xn)(xn xn+1) = f(xn), construit le vecteur b = f(xn) (i.e. le seconde membre du systeme lineaire), construit la matrice jacobienne A = Df(xn), resout le systeme Ay = b (LU, LLT, . . . ), pose xn+1 = xn y.

    9 Equations differentielles

    Pour une introduction formelle a la notion dequation differentielle, voir le cours danalyse.

    9.1 Theoreme

    Soit une fonction continue f : R R+ R qui verifie la propriete suivante : il existe l : R+ R telleque x, y R, t R+, on ait (f(x, t) f(y, t))(x y) l(t)|x y|2. Alors le probleme de Cauchyadmet une solution globale unique.Remarque : Sil existe une constante K satisfaisant fx (x, t) K, x R, t 0, alors on peut appliquerce theoreme.

    5

  • 8/22/2019 Rsum Analyse numrique

    6/9

    9.2 Schemas dEuler

    Si le probleme est numeriquement bien pose (i.e. une erreur minime sur la condition initiale ne provoquepas dimmenses erreurs sur le resultat), on peut etablir des schemas dEuler pour approximer le problemede Cauchy. On partitionne laxe 0t, et, en posant hn = tn+1 tn et un une approximation de u(tn), onetablit les schemas suivants :

    1. Schema dEuler progressif (explicite) :

    un+1 unhn

    = f(un, tn), n = 0, 1, 2, . . . , avec u0 = u0.

    Ce schema est explicite car il permet dexpliciter un+1 en fonction de un : un+1 = un+hnf(un, tn).

    Cependant, il nest pas toujours stable(condition sur h).

    2. Schema dEuler retrograde (implicite) :

    un+1 unhn

    = f(un+1, tn+1), n = 0, 1, 2, . . . , avec u0 = u0.

    Ce schema est implicite car il ne permet pas dexpliciter directement un+1 en fonction de un.Pour calculer un+1, il faut definir la fonction g(x) = x hnf(x, tn+1) un et en chercher un zero(methode de Newton, par exemple). Lavantage de ce schema est quil est toujours stable (pas decondtion sur h).

    Les schemas dEuler convergent a lordre h. Il existe dautres methodes (Runge-Kutta, par exemple) quiconvergent a lordre h2.

    9.3 Systemes differentiels du premier ordre

    Ces schemas se generalisent a RM. Si un =

    un1 un2 unM

    Test une approximation de u(tn), alors

    on peut ecrire les schemas de la maniere suivante :

    un+1 unhn

    = f(un, tn) etun+1 un

    hn= f(un+1, tn+1).

    10 Differences finies pour des problemes aux limites unidimen-sionnels

    10.1 Probleme

    Soient c, f deux fonction continues sur [0, 1]. Trouver u C2 sur [0, 1] telle que

    u(x) + c(x)u(x) = f(x), si 0 < x < 1, avec u(0) = u(1) = 0.

    Exemple de situation physique : deplacement vertical dune corde tendue.Les deux conditions u(0) = u(1) = 0 sont appelees conditions aux limites.

    10.2 Methode (differences finies)

    Soit N > 0, on pose h = 1/(N + 1) et on note xj = jh, 0 j N + 1, les points de discretisation.Au chapitre 2, nous avons vu que u(x) =

    2hu(x)h2 + O(h

    2) = u(x+h)2u(x)+u(xh)h2 + O(h2).

    En notant uj lapproximation de u(xj), nous pouvons ecrire le probleme sous la forme suivante :

    uj1 + 2uj uj+1h2

    + c(xj)uj = f(xj), 1 j N, avec u0 = uN+1 = 0.

    6

  • 8/22/2019 Rsum Analyse numrique

    7/9

    Resoudre ce probleme revient exactement a chercher u tel que Au = f,

    ou u =

    u1 uNT

    , f =

    f(x1) f(xN)T

    et A = 1h2

    2 + c1h2 1 0

    1 . . . . . .. . .

    . . . 10

    1 2 + cNh

    2

    .

    Cette methode converge a lordre h2.

    10.3 Approximation (differences finies) dun probleme aux limites non lineaire

    Supposons maintenant que c depende aussi de linconnue u du probleme. Si nous posons uj une approx-imation de u(xj), le probleme secrit

    uj1 + 2uj uj+1h2

    + c(xj , uj) = f(xj), 1 j N, avec u0 = uN+1 = 0.

    Nous sommes en presence dun systeme non lineaire de N equations a N inconnues, que nous allonsresoudre a laide de la methode de Newton.Soit u le N-vecteur de composantes u1, . . . , uN. Resoudre ce systeme non-lineaire revient donc a chercher

    u tel que F(u) = 0, ou

    F(u) =

    2u1 u2h2

    + c(x1, u1) f(x1)u1 + 2u2 u3

    h2+ c(x2, u2) f(x2)...

    uN1 + 2uNh2

    + c(xN, uN) f(xN)

    .

    11 Methode delements finis pour lapproximation de problemeselliptiques

    12 Problemes paraboliques. Probleme de la chaleur

    12.1 Probleme

    Considerons un barreau metallique occupant lintervalle [0, L]. Au temps t0, sa temperature est connueet vaut w(x), x [0, L]. Supposons avoir place sous le barreau une source de chaleur f(x, t), donnee.Si , cp et k sont des constantes positives donnees (densite volumique, chaleur specifique et conductivitethermique), la temperature u(x, t) du barreau au point x et a linstant t est liee a f(x, t) par lequation

    cput (x, t) k

    2ux2 = f(x, t) x ]0, L[ , t > 0

    u(0, t) = u(L, t) = 0, t > 0 (conditions aux limites)u(x, 0) = w(x),

    x

    ]0, L[ (condition initiale).

    Cette equation est souvent appelee equation de la chaleur.

    12.2 Solutions

    Pour alleger les notations, nous choisissons , cp, L = 1. Il vient alors :

    Schema dEuler progressif, explicite (obtenu par FDF progressive en temps et FDF centree enespace) :

    un+1i uni

    k uni1 2uni + uni+1

    h2= f(xi, tn), 1 i N,

    avec un0 = unN+1 = 0.

    Ce schema est stable si h2

    2k.

    7

  • 8/22/2019 Rsum Analyse numrique

    8/9

    Schema dEuler retrograde, implicite (obtenu par FDF progressive en temps et FDF centree enespace) :

    un+1i uni

    k un+1i1 2un+1i + un+1i+1

    h2= f(xi, tn+1), 1 i N,

    avec un+10 = un+1N+1 = 0. Ce schema est inconditionnellement stable.

    13 Problemes hyperboliques. Equation de transport et equationdes ondes

    13.1 Probleme : Equation de transport

    Soient deux fonctions c : RR+ R et f : RR+ R continues donnees, et soit w : R R une autrefonction donnee.Nous posons le probleme de trouver u : RR+ R satisfaisant lequation :

    u

    t(x, t) + c(x, t)

    u

    x(x, t) = f(x, t), x R, t > 0,

    avec la condition initiale u(x, 0) = w(x), x R.(Exemple physique : u : concentration dun polluant, c : vitesse de transport(vent), f : quantite absorbeepar le milieu et w la condition initiale).

    13.1.1 Solutions

    Lorsque c = c0 est une constante, la solution est u(x, t) = w(x c0t). Schema explicite centre : Soient h > 0 un pas spatial et un pas temporel, avec xj = jh,j Z et

    tn = n,n > 0. Soi unj lapproximation de u(xj , tn). On peut alors choisir un schema numerique

    dordre 2 en espace O(h2) et 1 en temps O() :

    un+1j unj

    + c(xj , tn)unj+1 unj1

    2h= f(xj , tn), j Z, n > 0,

    avec u0j = w(xj), j Z (condition initiale).Cependant, on montre que ce schema explicite centre est toujours instable.

    Schema decentre (memes definitions pour h, et unj ) :Schema decentre en arriere :

    un+1j unj

    + c(xj , tn)unj unj1

    h= f(xj, tn), si c(xj , tn) > 0.

    Schema decentre en avant :

    un+1j unj

    + c(xj , tn)unj+1 unj

    h= f(xj , tn), si c(xj , tn) < 0.

    Dans le cas ou c = c0 et f 0, la condition de stabilite secrit h 1|c0| .

    13.2 Probleme : Equation des ondes

    Soit f : [0, 1] R+ R une fonction continue donnee et soient w : [0, 1] R et v : [0, 1] R deuxautres fonctions donnees. On cherche une fontion u : [0, 1] R+ R telle que

    2ut2 (x, t) c2

    2ux2 (x, t) = f(x, t), x ]0, 1[ , t > 0

    u(0, t) = u(1, t) = 0 t > 0 (conditions aux limites)u(x, 0) = w(x) et ut (x, 0) = v(x) x ]0, 1[ (conditions initiales).

    Ce probleme est un probleme hyperbolique dordre deux. Le probleme de la corde vibrante en est unexemple. Le deplacement vertical u de la corde vibrante est la somme de deux ondes se propageant dedroite a gauche et de gauche a droite a la vitesse c.

    8

  • 8/22/2019 Rsum Analyse numrique

    9/9

    13.2.1 Solution

    En ecrivant les FDF centrees en temps et en espace, on obtient le schema suivant :

    un1i 2uni + un+1i2

    c2 uni1 2uni + uni+1

    h2= f(xi, tn), pour n fixe, 1 i N,

    avec un0 = unN+1 = 0 (conditions aux limites).Il nous manque encore u0i et u

    1i ... Utilisons les conditions initiales :

    u0i = w(ih), 0 i N + 1.Pour obtenir u1i , on ecrit le schema pour n = 0, et on exprime u

    1i a laide dune FDF centree.

    14 Approximation de problemes de convection-diffusion

    14.1 Probleme

    Donnees : > 0 (diffusion), c0 > 0 (transport), w : [0, 1] R (concentration initiale).Inconnue : on cherche u : [0, 1] [0, ] R : (x, t) u(x, t) telle que :

    ut (x, t)

    2ux2 (x, t) + c0

    ux (x, t) = 0, 0 < x < 1, t > 0

    u(x, 0) = w(x) 0 < x < 1 (condition initiale)u(0, t) = u(1, t) = 0 t > 0 (conditions aux limites)

    Remarques :Si c0 = 0, on retrouve le probleme de lequation de la chaleur (diffusion) du chapitre 12.Si = 0, on retouve le probleme de lequation de transport(convection) du chapitre 13 (il faut alorssupprimer la condition u(1, t) = 0).

    14.2 Solutions

    Schema explicite centre :

    un+1i u

    ni

    u

    ni1 2u

    ni + u

    ni+1

    h2+ c0 u

    ni+1 u

    ni1

    2h= 0, 1 i N,

    avec un0 = unN+1 = 0.

    Ce schema est stable sous condition ( . . . ), consistant a lordre O( + h2) et satisfait lapropriete de positivite et la principe du maximum.

    Schema implicite decentre :

    un+1i uni

    un+1i1 2un+1i + un+1i+1

    h2+ c0

    un+1i un+1i1h

    = 0, 1 i N,

    avec un+10 = un+1N+1 = 0.

    Il sagit ensuite de resoudre le systeme lineaire suivant :

    . . .

    . . .

    . . .

    un+11un+12

    ...un+1N

    =

    un1un2

    ...unN

    ,

    ou = 1 + 2h2 +c0h , = h2 et = h2 c0h .

    Ce schema est inconditionnellement stable, consistant a lordre O( + h2) et satisfait la proprietede positivite et la principe du maximum.

    9