Interpolacion

31
INTERPOLACIÓN C. Guerra PUCP

description

Interpolacion

Transcript of Interpolacion

  • INTERPOLACIN

    C. Guerra

    PUCP

  • Dado el conjunto de puntos: , una funcin interpolante es una funcin que pasa por todos los puntos

    Funcin Interpolante

  • Las funciones ms usadas para interpolar son las polinomiales. Estos

    fciles de evaluar diferenciar e integrar.

    Su utilidad principal es la de estimar para

    Interpolacin

    Extrapolacin

    Generalmente no se tiene control de los valores xi dados.

    Se debe utilizar pocos puntos para realizar la interpolacin, para evitar las oscilaciones polinmicas.

    El nmero de puntos dados menos uno nos da el mayor orden que puede tener el polinomio.

    Observaciones

  • Interpolacin Polinomial

    Dado el conjunto de puntos: se busca un polinomio cuya grfica pase por todos los puntos

    Teorema

    Para un conjunto cualquiera de N puntos dados en el espacio, existe un nico polinomio interpolante P(x) de grado menor que N

    Existen diversos algoritmos para determinar P(x)

    Algoritmo de Vandermonde

    Algoritmo de Newton

    Algoritmo de Lagrange

    Algoritmo de Neville

  • Algoritmo de Vandermonde

    Sea el polinomio de grado N-1

    Esta funcin pasa por los N puntos, luego los coeficientes quedan

    determinados de:

  • Este sistema de ecuaciones lineal se puede escribir en la forma matricial:

    Este mtodo de resolver para los coeficientes indeterminados no es el

    ms eficiente desde el punto de vista algortmico.

    Algoritmo de Vandermonde

  • Algoritmo de Lagrange

    Formalmente:

    Lagrange generaliz esta formulacin:

    Ecuacin de la recta:

    Interpolacin lineal de Lagrange:

  • En efecto, el problema se puede generalizar definiendo los polinomios

    de Lagrange, piezas bsicas para el construir el interpolante:

    El polinomio de interpolacin est dado por:

    Usando el algoritmo de Lagrange no es necesario resolver un sistema lineal de ecuaciones.

    Algoritmo de Lagrange

    *

  • El contorno de una pieza mecnica tiene la forma que se muestra en la

    figura. Usando los datos medidos de esta pieza (ver tabla), determinar

    el polinomio interpolante respectivo.

    Ejemplo: Polinomio de orden 6

    Sheet1Puntox(cm)y(cm)12.2021.280.8830.661.14401.25-0.61.046-1.040.67-1.20Sheet10000000xyCam Profile0000000Sheet22.21.280.660-0.6-1.04-1.2xyCam Profile00.881.141.21.040.60Sheet3Chart12.21.280.660-0.6-1.04-1.2xyContorno00.881.141.21.040.60Sheet1Pointxy12.2021.280.8830.661.14401.25-0.61.046-1.040.67-1.20Sheet10000000xyCam Profile0000000Sheet22.21.280.660-0.6-1.04-1.2xyCam Profile00.881.141.21.040.60Sheet3
  • Ejemplo: Polinomio de orden 6

  • Ejemplo: Polinomio de orden 6

    Chart42.21.280.660-0.6-1.04-1.2xyContorno00.881.141.21.040.60Sheet1Pointxy12.2021.280.8830.661.14401.25-0.61.046-1.040.67-1.20Sheet10000000xyCam Profile0000000Sheet20000000xyCam Profile0000000Sheet3
  • Algoritmo de Neville

    Sean los puntos , el polinomio de interpolacin de orden

    N-1 puede ser determinado a partir de la relacin recursiva

    donde las cantidades con m = {1, N-1} subscripts son

    polinomios de x de orden m-1 y dependen de Ps de menos ndices

  • El punto de partida de la relacin de recurrencia es:

    Con el propsito de mejorar el algoritmo definimos las diferencias

    hacia abajo (C) y hacia arriba (D)

    con las relaciones de partida:

  • Usando estas definiciones y la frmula general de Neville se tiene:

    Algoritmo de Neville

    Algoritmo Optimizado de Neville:

    Determinar el valor de ms cercano a x.

    Si x>ix comenzamos por Pi y alternamos D y C para correcciones de mayor orden.

    Cuando se usa un decremento D, decrecer el valor del ndice i en una unidad. El otro ndice siempre aumenta.

    Si x

  • Notas sobre Extrapolacin

    Se puede usar los algoritmos para interpolacin con unos

    pequeos ajustes.

    El punto a extrapolar no debe estar alejado ms que la distancia

    tpica entre datos tabulados.

    3. Para extrapolar al infinito, encontrar fi vs 1/xi y extrapolar hacia

    el cero.

  • Interpolacin por Segmentos

    Buscamos una polinomio interpolante P(x) para f(x)

    que nos de una buena estimacin de f(x)

  • Oscilaciones polinmicas

    Aumentar el grado del polinomio no es una buena idea

  • No siempre es el caso

    Para la funcin error, polinomios de

    alto grado, tienen error pequeo:

  • Una solucin al problema de oscilaciones es interpolar por segmentos:

    Interpolacin por Segmentos

  • Interpolacin por Segmentos Cbicos

    Consideremos el intervalo [xj , xj+1). Una interpolacin lineal nos da

    donde

    Construccin de un polinomio interpolante de tercer grado

    Continua en las fronteras en su primera derivada.

    La segunda derivada varia linealmente en cada intervalo.

  • Interpolacin por Segmentos Cbicos

    Para determinar los coeficientes funcionales C y D usamos la segunda

    condicin de la construccin del P.I.

    que implica que se deben cumplir

    estas condiciones se satisfacen si escogemos:

    C y D son de primer orden!

  • Integrando las ecuaciones anteriores y usando las siguientes relaciones

    para calcular las constantes de integracin

    obtenemos los coeficientes

    Interpolacin por Segmentos Cbicos

    C(x) y D(x) no aportan en los extremos!

  • Esto nos da n-2 ecuaciones para las n segundas derivadas

    desconocidas.

    Las segundas derivadas de los datos primero y ltimo

    quedan como parmetros.

    Para calcular las segundas derivadas usamos la primera condicin

    de la construccin del P.I.

    donde

    Luego tenemos:

    Interpolacin por Segmentos Cbicos

  • donde

    Las ecuaciones resultantes pueden escribirse matricialmente como

    Interpolacin por Segmentos Cbicos

  • Esta ecuacin matricial puede resolverse usando el mtodo

    tridiagonal.

    Una vez calculadas las segundas derivadas se pueden usar estos resultados para realizar la interpolacin.

    Interpolacin por Segmentos Cbicos

  • Interpolacin Cbica de Hermite

    Informacin distante de una funcin no es de gran ayuda para aproximarla en una regn localizada, tal como lo muestran las oscilaciones polinmicas

    Esto debe mejorar si se incluye mayor informacin, por ejemplo

    si incluimos derivadas

    Si tenemos dos puntos y sus derivadas, podemos usar un polino-

    mio de orden 3:

    Y determinar los coeficientes, requiriendo

  • Interpolacin Cbica de Hermite

    El polinomio resultante y su derivada sern continuos, tenemos:

    Si en vez de conocer la fucin y su derivada en 2 puntos, cono-

    cemos estos datos en n puntos, podemos construir un polinomio

    de orden 2n-1, continuo y con primera derivada continua.

  • Interpolacin General de Hermite

    La solucin general se puede escibir usando dos polinomios que

    los nombramos hn,j(x) y gn.j(x):

    que a su vez se pueden escribir en terminos de los polinomios de

    Lagrange y su primera derivada:

  • Interpolacin cbica de Hermite por segmentos

    Si tenemos n puntos dados y no conocemos sus derivadas, usamos

    la interpolacin de Hermite por segmentos.

    Entre tres puntos consecutivos, usamos dos polinomios cbicos de

    Hermite, y determinamos la derivada en el punto comn de la sgte.

    manera:

    Definamos el paso y la pendiente entre dos puntos como:

  • Interpolacin cbica de Hermite por segmentos

    Si k y k+1 tienen signos opuestos definimos:

    Si k y k+1 tienen el mismo signo y los intervalos tienen la misma

    longitud, definimos:

    Si k y k+1 tienen el mismo signo y los intervalos no tienen la misma

    longitud, definimos

  • Interpolacin cbica de Hermite por segmentos

    Las derivadas en los extremos se calculan usando frmulas

    de tres puntos para las derivadas

    FIG. Pendientes en la interseccin de dos puntos

    (,()) /{1,}

    iiii

    PxyfxiN

    ==

    i

    P

    11

    (,)

    xy

    22

    (,)

    xy

    33

    (,)

    xy

    22

    (,)

    NN

    xy

    --

    11

    (,)

    NN

    xy

    --

    (,)

    NN

    xy

    L

    X

    Y

    ()

    fx

    1

    *{,,}

    N

    xxx

    L

    (*)

    fx

    *

    i

    xx

    1

    *{,,}

    N

    xxx

    L

    (,()) /{1,}

    iiii

    PxyfxiN

    ==

    111

    12

    1

    ()

    --

    =

    ==+++

    L

    N

    kN

    kN

    k

    Pxaxaaxax

    11

    11211

    11

    21222

    11

    12

    ()

    -

    -

    -

    =+++

    =+++

    =

    =+++

    L

    L

    MM

    L

    N

    N

    N

    N

    ii

    N

    NNNN

    yaaxax

    yaaxax

    yPx

    yaaxax

    21

    11

    111

    21

    22

    222

    21

    33

    333

    21

    1

    1

    1

    1

    -

    -

    -

    -

    =

    L

    L

    L

    MM

    MMMOM

    L

    N

    N

    N

    N

    NN

    NNN

    ay

    xxx

    ay

    xxx

    ay

    xxx

    ay

    xxx

    1,

    1

    ()()

    -

    =

    =

    N

    NkNk

    k

    PxyLx

    1,,

    ()

    d

    -

    =

    Nkiik

    Lx

    1

    121

    21

    21

    12

    1221

    ()

    xx

    yyyy

    xx

    xxxx

    yyy

    xxxx

    -

    =+-

    -

    --

    =+

    --

    2

    1,1

    2

    12

    1,11,121,2

    1

    1

    1,2

    21

    ()

    ()()()()

    ()

    =

    -

    =

    -

    ==+

    -

    =

    -

    kk

    k

    xx

    Lx

    xx

    PxyLxyLxyLx

    xx

    Lx

    xx

    1,11,11,

    1

    ()()()()

    ---

    =

    ==++

    L

    N

    NkNkNNNN

    k

    PxyLxyLxyLx

    1

    111

    1,

    111

    1

    ()

    ()()()()

    ()

    ()()()()

    ()

    =

    -+

    -

    -+

    =

    -

    ----

    ==

    ----

    -

    LLL

    LLL

    N

    j

    j

    jk

    kkN

    Nk

    N

    kkkkkkN

    j

    kj

    jk

    xx

    xxxxxxxx

    Lx

    xxxxxxxx

    xx

    Puntox(cm)y(cm)

    1

    2.20

    2

    1.280.88

    3

    0.661.14

    4

    01.2

    5

    -0.61.04

    6

    -1.040.6

    7

    -1.20

    Contorno

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    1.4

    -2-10123

    x

    3567

    24

    1

    121314151617

    3567

    14

    2

    212324252627

    1

    31

    ()

    ----

    --

    =

    ------

    ----

    --

    +

    ------

    -

    +

    -

    xxxxxxxx

    xxxx

    yxy

    xxxxxxxxxxxx

    xxxxxxxx

    xxxx

    y

    xxxxxxxxxxxx

    xx

    xx

    567

    24

    3

    3234353637

    3567

    12

    4

    414243454647

    12

    515

    ---

    --

    -----

    ----

    --

    +

    ------

    --

    +

    --

    xxxxxx

    xxxx

    y

    xxxxxxxxxx

    xxxxxxxx

    xxxx

    y

    xxxxxxxxxxxx

    xxxx

    xxxx

    367

    4

    5

    253545657

    357

    124

    6

    616263646567

    3

    12

    61626

    ---

    -

    ----

    ---

    ---

    +

    ------

    -

    --

    +

    ---

    xxxxxx

    xx

    y

    xxxxxxxx

    xxxxxx

    xxxxxx

    y

    xxxxxxxxxxxx

    xx

    xxxx

    xxxxx

    56

    4

    7

    3646566

    --

    -

    ---

    xxxx

    xx

    y

    xxxxxxx

    23

    456

    ()1.20.251110.272560.56764

    0.072010.452400.17103,1.202.20

    yxxxx

    xxxx

    =+--

    ++--

    Contorno

    -1.2-0.20.81.8

    x

    y

    11

    12

    22123

    231234

    33234

    34

    44

    yP

    P

    yPP

    PP

    yPP

    P

    yP

    =

    =

    =

    =

    /{1,}

    i

    xiN

    =

    ,(1),,()

    iiim

    P

    ++

    K

    (1)(1)(1)(i2)()

    (1)()

    ()()

    +++-+++

    ++

    +

    -+-

    =

    -

    LL

    L

    imiiimiiim

    iiim

    iim

    xxPxxP

    P

    xx

    ()

    ii

    Pfx

    =

    1,1,

    iiii

    CyDy

    ==

    ,()(1)

    ,()(1)()

    miiimiim

    miiimiim

    CPP

    DPP

    ++-

    +++

    =-

    =-

    LL

    LL

    ix

    xi

    1,1,

    1,

    1

    ,1,

    1,

    1

    ()()

    ()()

    immimi

    mi

    iim

    imimi

    mi

    iim

    xxCD

    D

    xx

    xxCD

    C

    xx

    +++

    +

    ++

    +

    +

    ++

    --

    =

    -

    --

    =

    -

    2

    251

    1

    )(

    x

    xf

    Table

    : Six equidistantly spaced points in [

    -

    1, 1]

    Figure

    :

    5

    th

    order polynomial vs. exact function

    x

    2

    25

    1

    1

    x

    y

    +

    =

    -

    1.0

    0.038461

    -

    0.6

    0.1

    -

    0.2

    0.5

    0.2

    0.5

    0.6

    0.1

    1.0

    0.038461

    Original

    Function

    17

    th

    Order

    Polynomial

    9

    th

    Order

    Polynomial

    5

    th

    Order

    Polynomial

    2

    0

    2

    ()

    x

    t

    erfxedt

    p

    -

    =

    1

    ()() [,){1,,1}

    +

    ==-

    K

    iii

    Pxqxxxxin

    1

    ()

    qx

    2

    ()

    qx

    1

    ()

    N

    qx

    -

    2

    ()

    N

    qx

    -

    1

    ()()

    jj

    yAxyBxy

    +

    =+

    1

    11

    () ()1

    jj

    jjjj

    xxxx

    AxBxA

    xxxx

    +

    ++

    --

    ==-=

    --

    11

    ()()()()()

    jjjj

    yxAxyBxyCxyDxy

    ++

    =+++

    2

    1

    2

    ()

    ()()

    jj

    dyx

    CxyDxy

    dx

    +

    =+

    1

    1

    ()1()0

    ()0()1

    jj

    jj

    CxCx

    DxDx

    +

    +

    ==

    ==

    ()()()()

    CxAxDxBx

    ==

    32

    1

    1

    6

    32

    1

    1

    6

    ()()

    ()()

    jj

    j

    CAAxx

    DBBxx

    +

    +

    =--

    =--

    1

    1

    ()0()0

    ()0()0

    jj

    jj

    CxCx

    DxDx

    +

    +

    ==

    ==

    11

    [,][,]

    ()()

    jjjj

    jj

    xxxx

    yxyx

    -+

    =

    22

    1

    111

    1

    3131

    ()()

    66

    jj

    jjjjjj

    jj

    yy

    dyAB

    xxyxxy

    dxxx

    +

    +++

    +

    -

    --

    =--+-

    -

    2222

    33333

    44444

    22222

    1111

    000

    00

    00

    00

    000

    nnnnn

    nnnn

    bcyd

    abcyd

    abcyd

    abcyd

    abyd

    -----

    ----

    =

    K

    K

    K

    MMMOMMMM

    K

    K

    1

    0 2

    3,,1

    i

    ii

    i

    a

    xxin

    -

    =

    =

    -=-

    K

    1

    2,,2

    0 1

    ii

    i

    xxin

    c

    in

    +

    -=-

    =

    =-

    K

    11

    2()

    iii

    bxx

    +-

    =-

    32

    21

    211

    3221

    11

    11

    112

    1

    112

    6() 2

    6 3,,2

    6()

    iiii

    i

    iiii

    nnnn

    nnn

    nnnn

    yy

    yy

    xxyi

    xxxx

    yyyy

    din

    xxxx

    yyyy

    xxyi

    xxxx

    +-

    +-

    ---

    -

    ---

    -

    -

    ---=

    --

    --

    =-=-

    --

    --

    ---

    --

    K

    1

    n

    =-

    32

    ()

    pxaxbxcxd

    =+++

    1122

    1122

    ()()

    ()()

    pxypxy

    pxypxy

    ==

    ==

    22

    1221

    12

    22

    1212

    22

    1221

    12

    22

    1212

    (12())()(12())()

    ()

    ()()

    ()()()()

    ()()

    xxxxxxxx

    pxyy

    xxxx

    xxxxxxxx

    yy

    xxxx

    ------

    =+

    --

    ----

    ++

    --

    ,,

    11

    ()()()

    nn

    njjnjj

    jj

    pxhxygxy

    ==

    =+

    2

    ,,,

    ()[12()()]()

    njjnjjnj

    hxxxLxLx

    =--

    2

    ,,

    ()()()

    njjnj

    gxxxLx

    =-

    1

    1

    kkk

    kk

    k

    k

    hxx

    yy

    h

    d

    +

    +

    =-

    -

    =

    1

    0

    k

    y

    +

    =

    11

    1111

    ()

    2

    kkk

    y

    dd

    ++

    =+

    11

    1212

    21

    11

    2

    2

    kk

    kk

    kkk

    whh

    wwww

    whh

    y

    dd

    +

    +

    ++

    =+

    +

    =+

    =+