Interpolation Polynomiale

download Interpolation Polynomiale

of 34

Transcript of Interpolation Polynomiale

  • 8/3/2019 Interpolation Polynomiale

    1/34

    1

    Mthodes numriques

    pour lingnieur

    Interpolation

    f(x)

  • 8/3/2019 Interpolation Polynomiale

    2/34

    20 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8

    -4

    -3

    -2

    -1

    0

    1

    2

    Approximation de fonctions

    Soit une fonctionf(inconnue explicitement)

    connue seulement en certains pointsx0,x1xn

    ou valuable par un calcul coteux.

    Principe : reprsenterfpar une fonction simple, facile valuer

    Problme :

    il existe une infinit de solutions !

  • 8/3/2019 Interpolation Polynomiale

    3/34

    3

    0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8

    -4

    -3

    -2

    -1

    0

    1

    2

    Approximation de fonctions

    Il faut se restreindre une famille de fonctions

    polynmes,

    exponentielles,

    fonctions trigonomtriques

  • 8/3/2019 Interpolation Polynomiale

    4/34

    4

    Quelques mthodes d'approximation

    Interpolation polynomiale

    polynmes de degr au plus n

    polynmes de Lagrange diffrences finies de Newton

    Interpolation par splines

    polynmes par morceaux

    Interpolation d'Hermite

    informations sur les drives de la fonction approche

  • 8/3/2019 Interpolation Polynomiale

    5/34

    5

    ab ab

    f(x)

    P(x)

    f(x)+e

    f(x)-e

    f(x)

    P(x)

    f(x)+e

    f(x)-e

    Thorme dapproximation de Weierstrass

    baxxPxf

    baxPbaf

    ,)()(

    :quetel,surdfinit,)(polynmeunexisteil,0Alors,,intervallel'surcontinueetdfiniefonctionunesoit

    e

    e

    )(xf

    )(xP

    e)(xf

    e)(xf

    grandestpolynomeduordrel'pluspetit,est,pluse

    Interpolation :

    nnnnn ordre:inconnues1quations,1s,contrainte1points,1

  • 8/3/2019 Interpolation Polynomiale

    6/34

    6

    Interpolation polynomiale

    Le problme : les donnes, la solution recherche

    mauvaise solution : rsoudre le systme linaire

    la combinaison linaire de polynmes est un polynme

    nixfxPxP

    xfyxxfyxxfyx

    ii

    iiiiii

    ,0),()(quetel)(

    )(,,...,)(,,...,)(, 000

    010

    )()(...)()(ainsi

    0)(et1)(quetel

    )()(...)()(

    00

    00

    inniiiii

    jiii

    nnii

    xPyxPyxPyxP

    ijxPxP

    xPyxPyxPyxP

    eVandermonddematrice:)(0

    VyVaxaxPn

    i

    ii

  • 8/3/2019 Interpolation Polynomiale

    7/347

    Interpolation polynomiale : Lagrange

    Thorme

    Soient n+1 points distinctsxi rels et n+1 relsyi,

    il existe un unique polynmepPn tel que

    p(xi) = yi pour i = 0 n

    Construction dep :

    avecLi polynme de Lagrange

    Proprits deLi

    Li(xi)=1

    Li(x

    j)=0 (j i)

    n

    0i

    ii )x(Ly)x(p

    n

    ij0j ji

    j

    ixx

    xx

    )x(L

    L est un polynme dordre n

    dmonstration

  • 8/3/2019 Interpolation Polynomiale

    8/348

    01

    0

    1

    10

    10

    10

    0

    1

    10

    10

    10

    0110

    10

    10

    xx

    xxy

    xx

    xxy

    xx

    xxy

    xx

    xxyy

    xx

    yxyxx

    xx

    yyy

    Exemple avec n=1

    on connat 2 points (x0,y0) et (x1,y1)

    on cherche la droitey=ax+b (polynme de degr 1)

    qui passe par les 2 points : y0 = a x0 + b a = (y0 - y1) / (x0 - x1)

    y1 = a x1 + b b = (x0 y1 - x1 y0) / (x0 - x1)

    Lagrange : exemple n1

    L0(x) L1(x)

    x0

    x1

    y1

    y0

  • 8/3/2019 Interpolation Polynomiale

    9/349

    Lagrange : exemple n2

    Exemple avec n=2

    on connat 3 points (0,1), (2,5) et (4,17)

    polynmes de Lagrange associs :

    8

    4x2x)x(L0

    8

    2xx)x(L2

    4

    4xx)x(L1

    0 2 4

    -

    0 2 4 0 2 4

  • 8/3/2019 Interpolation Polynomiale

    10/3410

    -1 0 1 2 3 4 50

    5

    10

    15

    20

    25

    30

    Lagrange : exemple n2

    calcul du polynme d'interpolation

    p(x)=L0(x) + 5 L1(x) + 17 L2(x)

    en simplifiant, on trouve p(x)=x2+1

  • 8/3/2019 Interpolation Polynomiale

    11/3411

    Lagrange : lalgorithme

    Complexit du calcul : n2

    fait*

    fait)()(

    )(*

    ;,jusqu'1pourjusqu'1pour

    lyyy

    jxix

    jxxll

    ijnjni

    i

    ii

    i

    Fonctiony = lagrange(x,xi,yi)

  • 8/3/2019 Interpolation Polynomiale

    12/3412

    -1 0 1 2 3 4 5

    -10

    0

    10

    20

    30

    40

    50

    60

    Lagrange : exemple n3

    Exemple avec n=2 (fonction approchery=ex)

    on connat 3 points (0,1), (2,7.3891) et (4,54.5982)

    Polynme d'interpolation

    p(x) =L0(x) + 7.3891 L1(x) + 54.5982 L2(x)

  • 8/3/2019 Interpolation Polynomiale

    13/3413

    Lagrange : exemple n3

    Erreur d'interpolation e(x) = f(x) - p(x)

    -1 0 1 2 3 4 5-20

    -10

    0

    10

    20

    30

    40

    50

    60

  • 8/3/2019 Interpolation Polynomiale

    14/3414

    Lagrange : erreur d'interpolation

    Thorme :

    sifest n+1 drivable sur [a,b], x [a,b], notons :

    Ile plus petit intervalle ferm contenantx et lesxi f(x)=(x-x0)(x-x1)(x-xn)

    alors, il existe I tel que

    NB : dpend dex

    Utilit = on contrle lerreur dapproximation donc .

    la qualit de lapproximation

    x

    !1n

    fxe

    )1n(

    f

  • 8/3/2019 Interpolation Polynomiale

    15/3415

    Lagrange : choix de n

    Supposons que l'on possde un nb lev de points pour

    approcherf faut-il tous les utiliser ?

    (calculs lourds)

    Mthode de Neville :

    on augmente progressivement n

    on calcule desLi de manire rcursive

    on arrte ds que l'erreur est infrieure un seuil

    (dou lutilit du calcul de lerreur)

  • 8/3/2019 Interpolation Polynomiale

    16/3416

    La mthode de Neuville Dfinition

    Thorme

    Dmonstration

    Application systmatique

    kk

    k

    mmmmmm

    mmm

    yxyxyxk

    xP

    ,,...,,,,pointsles

    surcalculLagrangedepolynme)(

    2211

    21 ,...,,

    ji

    niiinjjj

    xx

    xPxxxPxxxP

    )()()(

    ,...,1,1,...,1,0,...,1,1,...,1,0

    )()(et)()();()( kkjjii xfxPxfxPxfxP

    3,34,2,1,02,33,2,11,33,20,333

    2,22,1,01,22,10,222

    1,11,00,111

    0,000

    QPQPQPQPx

    QPQPQPx

    QPQPx

    QPx

    iijijiji PQ ,1,...,1,,

  • 8/3/2019 Interpolation Polynomiale

    17/3417

    Lalgorithme de Neuville

    Complexit du calcul : n2

    fait),(

    fait)()(

    11)(1)(

    jusqu'1pourjusqu'1pour

    fait)()0,(

    jusqu'1pour

    nnQy

    jixix

    ),jQ(iixx)Q(i,jjixxQ(i,j)

    ijni

    iyiQni

    ii

    ii

    i

    Fonctiony = Neuville(x,xi,yi)

  • 8/3/2019 Interpolation Polynomiale

    18/3418

    Interpolation polynomiale : Newton

    Polynmes de Newton :

    base = {1, (x-x0), (x-x0)(x-x1), , (x-x0)(x-x1)(x-xn-1)}

    on peut r-crirep(x) :p(x)=a0 + a1(x-x0) + a2(x-x0)(x-x1)++ an(x-x0)(x-x1)(x-xn-1)

    calcul des ak: mthode des diffrences divises

  • 8/3/2019 Interpolation Polynomiale

    19/3419

    Newton : diffrences divises

    Dfinition :

    Soit une fonctionfdont on connat les valeurs en des points

    distincts a, b, c, On appelle diffrence divisedordre 0, 1, 2,...,n

    les expressions dfinies par rcurrence sur lordre k:

    k=0 f [a] = f (a)

    k=1 f [a,b] = ( f [b] - f [a] ) / ( b - a ) k=2 f [a,b,c] = ( f [a,c] - f [a,b] ) / ( c - b )

    f [X,a,b] = ( f [X,b] - f [X,a] ) / ( b - a )

    a X , b X , a b

  • 8/3/2019 Interpolation Polynomiale

    20/3420

    Newton : diffrences divises

    Thormes :

    dtermination des coefficients dep(x) dans la base de

    Newton :

    f [x0, x1,, xk] = ak avec k = 0 n

    erreur d'interpolation :

    e(x) = f [x0, x1,, xn, x] f(x)

  • 8/3/2019 Interpolation Polynomiale

    21/3421

    Newton : diffrences divises

    a0

    a1

    a2

    an

    Calcul pratique des coefficients :

    x0 f [x0]

    x1 f [x1] f [x0, x1]

    x2 f [x2] f [x1, x2] f [x0, x1, x2]

    ...

    f [xn-3, xn-2, xn-1]

    xn f [xn] f [xn-1, xn] f [xn-2, xn-1, xn] f [x0, ..., xn]

  • 8/3/2019 Interpolation Polynomiale

    22/34

    22

    Newton : exemple

    a

    0

    a2

    p(x)=1+ 2x + x(x-2) (et on retombe surp(x) = 1 + x2)

    a1

    (ex. n2) : n=2 (0,1), (2,5) et (4,17)

    0 f [x0]=1

    2 f [x1]=5 f [x0, x1]

    =(1-5)/(0-2)=2

    4 f [x2]=17 f [x1, x2] f [x0, x1, x2]

    =(5-17)/(2-4)=6 = (2-6)/(0-4)=1

  • 8/3/2019 Interpolation Polynomiale

    23/34

    23

    Newton : lalgorithme

    Complexit du calcul : n2

    fait),((i)jusqu'1pour

    faitfait

    )()(

    111

    jusqu'1pour

    jusqu'1pourfait

    )()0,(jusqu'1pour

    inFani

    jixix

    ),jF(i)F(i,jF(i,j)

    ij

    ni

    iyiFni

    ii

    i

    Fonction a = Newton(xi,yi)

  • 8/3/2019 Interpolation Polynomiale

    24/34

    24

    -6 -4 -2 0 2 4 6

    -6

    -4

    -2

    0

    2

    4

    6

    A bas les polynmes

    Ex :y=2(1+tanh(x)) - x/10 avec 9 points

    entre les points, le polynme fait ce qu'il veut

    et plus son degr est lev plus il est apte osciller !

  • 8/3/2019 Interpolation Polynomiale

    25/34

    25

    Interpolation par splines cubiques

    Principe :

    on approche la courbe par morceaux (localement)

    on prend des polynmes de degr faible (3) pour viter lesoscillations

  • 8/3/2019 Interpolation Polynomiale

    26/34

  • 8/3/2019 Interpolation Polynomiale

    27/34

    27

    Splines : illustration

    P1(x)=a1x3+b1x

    2+c1x+d1

    =a1 (x-x1)3+b1 (x-x1)

    2+c1 (x-x1)+d1

    P2(x)=a2 (x-x2)3+b2 (x-x2)

    2+c2 (x-x2)+d2

  • 8/3/2019 Interpolation Polynomiale

    28/34

    28

    Splines cubiques : dtermination

    Dtermination de la spline dinterpolation

    g concide sur chaque intervalle [xi; xi+1] avec un polynme de

    degr infrieur ou gal 3

    g" est de degr 1 et est dtermin par 2 valeurs: mi = g"(xi) et mi+1 = g"(xi+1) (momentau noeud ni)

    Notations :

    hi = xi+1 - xi pour i = 0 n-1 di= [xi; xi+1]

    gi(x) le polynme de degr 3 qui concide avec g sur lintervalle di

  • 8/3/2019 Interpolation Polynomiale

    29/34

    29

    Splines cubiques : dtermination

    g"i(x) est linaire :

    x di

    on intgre

    (ai constante)

    on continue

    (bi constante)

    gi(xi) = yi

    gi(xi+1) = yi+1

    i

    1ii

    i

    i1ii

    h

    xxm

    h

    xxmxg

    iiii

    31i

    ii

    3i

    1ii bxxah6

    xxm

    h6

    xxmxg

    i

    i

    21i

    i

    i

    2i

    1ii a

    h2

    xxm

    h2

    xxmxg

    i

    2ii

    i b6

    hmy

    iii

    2i1i

    1i bha6

    hmy

    1

    2

  • 8/3/2019 Interpolation Polynomiale

    30/34

    30

    Splines cubiques : dtermination

    g'(x) est continue :

    et

    on remplace les ai dans :

    Rappel : on cherche les mi (n+1 inconnues) on a seulement n-1 quations grce

    il faut rajouter 2 conditions, par exemple

    m0 = mn =0 (spline naturelle)

    i1i1i1i

    iii

    iii xga2

    hma

    2

    hmxg

    i1ii

    i1i

    i

    i mm6

    hyy

    h

    1a

    3

    1 2

    3

    1ii

    1i

    i1i

    i

    1iii1ii1i1i yyh

    1yy

    h

    16mhmhh2mh4

    4

  • 8/3/2019 Interpolation Polynomiale

    31/34

    31

    Splines cubiques : dtermination

    Ex de rsolution avec hi = xi+1 - xi constant :

    forme matricielle :

    Tm=f

    Tinversible (diagonale strictement dominante)

    1ii1i

    i1ii

    1iii1ii1i1i yyh

    1yy

    h

    16mhmhh2mh4

    i1ii1i21ii1i fyy2yh1

    mm4m

    1n

    1

    1n

    1

    f

    f

    m

    m

    41

    141

    141

    014

  • 8/3/2019 Interpolation Polynomiale

    32/34

    32

    Splines cubiques : lalgorithme

    Complexit du calcul : complexit du solveur

    fait6

    )()(

    6

    1)(

    1;1pour]0,,0[

    \1212

    fait

    6)1(

    2)1,()1,(

    2),(1;2pour

    11

    1

    11

    1

    1

    ii

    ii

    i

    iii

    i

    ii

    i

    ii

    i

    i

    ii

    hmiyib

    mmh

    yyh

    ia

    nimmfTm

    :n-,:n-TT

    h

    yy

    h

    yyif

    hiiThiiT

    hhiiTni

  • 8/3/2019 Interpolation Polynomiale

    33/34

    33

    Splines cubiques : exemple

    Ex :y=2(1+tanh(x)) - x/10 avec 9 points

    -6 -4 -2 0 2 4 6

    -6

    -4

    -2

    0

    2

    4

    6

    spline

    polynme de degr 8

  • 8/3/2019 Interpolation Polynomiale

    34/34

    Conclusion

    Interpolation polynomiale

    valuer la fonction en un point : Polynme de Lagrange ->

    mthode de Neville

    compilerla fonction : Polynme de Newton Interpolation polynomiale par morceau : splines

    spline cubique dinterpolation

    spline cubique dapproximation (on rgularise)

    b spline

    spline gnralise : splines gausinnes (multidimensionelle)

    approximation - apprentissage