Splines (2)

  • Upload
    vizxo

  • View
    262

  • Download
    0

Embed Size (px)

Citation preview

  • 7/21/2019 Splines (2)

    1/25

    1

    Splines

    AO DE LA PROMOCIN DE LA INDUSTRIA

    RESPONSABLE Y DEL COMPROMISO CLIMTICO

    UNIVERSIDAD NACIONAL DE PIURA

    FACULTAD DE INGENIERIA INDUSTRIAL

    TEMA :

    SPLINES

    DOCENTE :

    ING. NSTOR CASTILLOBURGOS

    ALUMNOS:GARCA COELLO VICTORLPEZ SANDOVAL KEVINMORI SNCHEZ FAVIO

    RAYMUNDO TIMAN YHONSNCHEZ NIZAMA VERSS

    PIURA, 2014

  • 7/21/2019 Splines (2)

    2/25

    2

    Splines

    DEDICATORIADedicamos Este Trabajo A Nuestros Padres Que

    Con Su Esfuerzo Y Dedicacin, Nos Dan El Valor Para

    Seguir Adelante Estudiando, Ellos Son Nuestra Motivacin.

  • 7/21/2019 Splines (2)

    3/25

    3

    Splines

    AGRADECIMIENTOS

    El presente trabajo de investigacin pudo hacerse gracias a las bases acadmicasestudiadas en el curso de mtodos numricos. A la colaboracin de mis todos los

    miembros del grupo que en un inalcanzable afn de lograr el conocimiento del tema apresentar siempre se mostr dispuesto al estudio y compresin para darles un mayor

    entendiendo.

  • 7/21/2019 Splines (2)

    4/25

    4

    Splines

    INDICE

    1. Introduccin.5

    2. Representaciones de splines...6

    3. Interpolacin y aproximacin de splines7

    4. Interpolacin segmentaria o splines8

    5. Funciones splines de grado 1..9

    6. Funciones splines de grado 2....10

    7. Funciones splines cubicas .13

    8. Ejemplo 1...13

    9. anexos26

    10. bibliografa.25

  • 7/21/2019 Splines (2)

    5/25

    5

    Splines

    INTRODUCCIN

    En este informe se intenta dar una introduccin al estudio de las curvas de

    interpolacin generadas por computadora. El estudio de las curvas ysuperficies data de la poca de las primeras computadoras. Se intentabasimular los fenmenos fsicos reales con la mayor perfeccin posible.

    Lo que menos impera en el mundo real son las lneas rectas. Tanto la forma delos objetos que nos rodean, como las trayectorias de los mviles, obedecen alneas y superficies curvas.

    La dimensin que alcanza el trabajo con curvas en el mundo de lascomputadoras es enorme, todos los programas de dibujo vectorial soportan eltrabajo con varios tipos de curva e interpolacin (y aproximacin), comopueden ser Splines, B-Splines, curvas de Bizer Incluso algunos programascomerciales tpicos de diseos con imgenes de mapas de pxeles (comoPhotoshop), estn incluyendo en sus ltimas versiones herramientas para eltrabajo con este tipo de curvas.

    A nivel industrial, desde hace aos se trabaja con curvas Splines y B-Splines.Un ingeniero de Renault, dio nombre a un tipo de curvas ampliamenteutilizadas hoy en da, las curvas de Bizer. Desde el diseo de carroceras paraautomviles, pasando por cascos para embarcaciones hasta llegar a zapatillas

    deportivas de competicin, se poda decir que todo el sector del diseo utilizaeste tipo de curvas. Incluso se utilizan en las imprentas actuales, en proyectosde Robtica Industrial, y micro-robtica que utilizan Splines para calculartrayectorias ptimas en movimientos.

    En el modelado de objetos tridimensionales se utilizan NURBS, que sonsuperficies generadas mediante Splines y B-Splines. Prcticamente todos lospaquetes de diseo y animacin tridimensional soportan este tipo de trabajo.

  • 7/21/2019 Splines (2)

    6/25

    6

    Splines

    REPRESENTACIONES DE SPLINES

    Hace aos en dibujo tcnico, una spline era una banda flexible de madera quese utilizaba para hacer pasar una curva por un conjunto de puntos. Para ello, eldibujante colocaba una serie de puntos sobre esta regla y trazaba luego la

    curva deseada.

    Esa curva obtenida podemos expresarla de forma matemtica con una funcinpolinmica cbica cuyas primera y segunda derivada son continuas a travs delas distintas secciones de la curva.

    Muchas veces en el diseo asistido por computadora, el trmino curva de

    spline se refiere a cualquier curva compuesta que se forma con seccionespolinmicas que satisfacen ciertas condiciones especficas de continuidad en lafrontera de cada intervalo.

    Recordemos que una funcin de n-ensimo grado se define como:

    Donde n es un entero no negativo y son constantes. Siendo , si n = 2la funcin es cuadrtica; si n = 3 la funcin que tenemos es un polinomiocbico. (Si n = 1 tendremos la ecuacin de una recta).

    Dado un conjunto de puntos, podemos ajustar una curva que pase por ellos. Seconstruye una seccin curva (con un polinomio cbico) entre cada par de

    puntos de puntos dado.

    As cada seccin de curva se define como:

    Que de forma equivalente se podra escribir de esta manera:

    Donde vara entre 0 y 1. Los valores de se determinan segn lascondiciones de frontera en las secciones curvas.

    Dos secciones de curva adyacentes deben tener igual coordenada enlos extremos.

    Tendremos que adaptar la pendiente de cada par de curvas adyacentespara obtener una curva global (formada por la unin de varias secciones

    de curvas) continua y suave.

  • 7/21/2019 Splines (2)

    7/25

    7

    Splines

    INTERPOLACIN Y APROXIMACIN DE SPLINES

    Especificamos una curva spline al proporcionar un conjunto de puntos (queser una serie de coordenadas) a los que denominaremos puntos de control.

    Estos puntos de control se ajustarn despus con funciones polinmicascontinas de una de las siguientes maneras:

    a) La curva realiza interpolacin del conjunto de puntos de control cuandolas secciones polinmicas se ajustan de modo que la curva pasa atravs de cada punto de control.

    b) La curva realiza aproximacin al conjunto de puntos de control cuandolos polinomios se ajustan a la trayectoria general del punto de control sinpasar necesariamente a travs de ningn punto de control.

    Una curva spline se define y se modifica con operaciones sobre sus puntos decontrol. Los paquetes de AutoCAD pueden insertar puntos de controladicionales para ayudar al diseador en el modelado.

    A) INTERPOLACIN

    B) APROXIMACIN

  • 7/21/2019 Splines (2)

    8/25

    8

    Splines

    INTERPOLACIN SEGMENTARIA O SPLINES

    La construccin de polinomios de interpolacin de grado alto aunquejustificable tericamente plantea muchos problemas. Por un lado, la forma dela funcin polinmica de grado alto a menudo no responde al fenmeno debido

    al gran nmero de extremos e inflexiones. Por otro lado, su clculo es muycomplicado, lo que limita su utilidad en anlisis numrico. Es a menudo msconveniente dividir el intervalo de inters en subintervalos ms pequeos yusar en cada subintervalo polinomios de grado relativamente bajo, tratando deque la funcin a trozos definida de este modo tenga un aspecto final adecuadoal fenmeno que estamos representando.

    La idea central es que en vez de usar un solo polinomio para interpolar losdatos, podemos usar segmentos de polinomios y unirlos adecuadamente paraformar nuestra interpolacin.

    CONSTRUCCIN DE POLINOMIOS DE INTERPOLACIN

    La construccin de polinomios de interpolacin de grado alto aunquejustificable tericamente plantea muchos problemas. Por un lado, la forma dela funcin polinmica de grado alto a menudo no responde al fenmeno debidoal gran nmero de extremos e inflexiones. Por otro lado, su clculo es muycomplicado, lo que limita su utilidad en anlisis numrico. Es a menudo msconveniente dividir el intervalo de inters en subintervalos ms pequeos yusar en cada subintervalo polinomios de grado relativamente bajo, tratando de

    que la funcin a trozos definida de este modo tenga un aspecto final adecuadoal fenmeno que estamos representando.

    La idea central es que en vez de usar un solo polinomio para interpolar losdatos, podemos usar segmentos de polinomios y unirlos adecuadamente paraformar nuestra interpolacin.

    Podemos decir, que una funcin spline est formada por varios polinomios,cada uno definido en un intervalo y que se unen entre si bajo ciertascondiciones de continuidad.

    Cabe mencionar que entre todas, las splines cbicas han resultado ser las msadecuadas.

    Podemos decir, que una funcin spline est formada por varios polinomios,cada uno definido en un intervalo y que se unen entre si bajo ciertascondiciones de continuidad.

    Cabe mencionar que entre todas, las splines cbicas han resultado ser las ms

    adecuadas.

  • 7/21/2019 Splines (2)

    9/25

    9

    Splines

    Definicin. (Splines de grado k)

    Dada nuestra tabla de datos,

    Donde suponemos que , y dado k un nmero entero positivo,una funcin de interpolacin spline de grado k, para la tabla de datos, es unafuncin tal que:i)

    , para toda

    .

    ii) es un polinomio de grado k en cada subintervalo iii) tiene derivada continua hasta de orden k 1 en FUNCIONES SPLINES DE GRADO 1

    Dados los n +1 puntos

    Una funcin spline de grado 1 que interpole los datos es simplemente unircada uno de los puntos mediante segmentos de recta, como sigue:

    Claramente esta funcin cumple con las condiciones de la spline de grado 1.As, tenemos que para este caso:

  • 7/21/2019 Splines (2)

    10/25

    10

    Splines

    Donde:

    i), es un polinomio de grado menor o igual que 1ii) tiene derivada continua de orden k-1=0.iii) para Por lo tanto, la spline de grado 1 queda definida como:

    Donde[ ]es la diferencia divida de Newton.FUNCIONES SPLINES DE GRADO 2

    Veamos un ejemplo concreto, consideremos los siguientes datos:

    procedamos a calcular la interpolacin por splines de grado 2.

    Primero que nada, vemos que se forman tres intervalos: En cada uno de estos intervalos, debemos definir una funcin polinomial degrado 2, como sigue:

    Hacemos que la spline pase por los puntos de la tabla de datos, es decir, sedebe cumplir que:

  • 7/21/2019 Splines (2)

    11/25

    11

    Splines

    Hasta aqu, tenemos un total de 6 ecuaciones con 9 incgnitas.

    El siguiente paso es manejar la existencia de las derivadas continuas. En el

    caso de las splines de grado 2, necesitamos que la spline tenga derivadacontinua de orden k-1 = 1, es decir, primera derivada continua.

    Calculamos primera derivada:

    Vemos que esta derivada est formada por segmentos de rectas, que pudieranpresentar discontinuidad en los cambios de intervalo. Es decir, las posiblesdiscontinuidades son = 4.5 y = 7. Por lo tanto para que sea continua,se debe cumplir que:

    Tambin debe cumplirse que:

    As, tenemos un total de 8 ecuaciones vs. 9 incgnitas; esto nos da un gradode libertad para elegir alguna de las incgnitas. Elegimos por simpleconveniencia De esta forma, tenemos un total de 8 ecuaciones con 8 incgnitas. Estas sonlas siguientes:

  • 7/21/2019 Splines (2)

    12/25

    12

    Splines

    Este sistema de ecuaciones tiene la siguiente forma matricial:

    Se obtiene la siguiente solucin:

    Sustituyendo estos valores (junto con ), obtenemos la funcin splinecuadrtica que interpola la tabla de datos dada:

    La grfica que se muestra a continuacin, contiene tanto los puntos iniciales dela tabla de datos, as como la spline cuadrtica.

  • 7/21/2019 Splines (2)

    13/25

    13

    Splines

    El siguiente caso, que es el ms importante en las aplicaciones, sigueexactamente los mismos pasos del ejemplo que acabamos de resolver,solamente que en vez de trabajar con polinomios cuadrticos, lo hace conpolinomios cbicos

    FUNCIONES SPLINES CUBICAS

    Dados n +1 datos:

    Una spline cbica que interpola estos datos, es una funcin S(x) definida comosigue:

    Donde cada es un polinomio cbico; para toda i = 1,0,...,ytal que tiene primera y segunda derivadas continuas en .Ejemplo 1.

    Interpolar los siguientes datos mediante una splinecbica:

    Solucin.

  • 7/21/2019 Splines (2)

    14/25

    14

    Splines

    Definimos un polinomio cbico en cada uno de los intervalos que se forman:

    A continuacin, hacemos que se cumpla la condicin de que la spline debepasar por los puntos dados en la tabla. As, tenemos que:

    Ahora calculamos la primera derivada de s(x):

    Al igual que en el caso de las splines cuadrticas, se presentan ecuaciones quepueden presentar discontinuidad en los cambios de intervalo; las posibles

    discontinuidades son los puntos donde se cambia de intervalo, en este caso x =3. Para evitar esta discontinuidad, evaluamos x = 3 en los dos polinomios eigualamos:

    Anlogamente procedemos con la segunda derivada:

    Para lograr que sea contina

    En este punto contamos con 6 ecuaciones y 8 incgnitas, por lo tanto tenemos2 grados de libertad; en general, se agregan las siguientes 2 condiciones:

  • 7/21/2019 Splines (2)

    15/25

    15

    Splines

    De lo cual vamos a obtener:

    Con lo cual, hemos completado un juego de 8 ecuaciones vs. 8 incgnitas, elcual es el siguiente:

    Cuya forma

    matricial es lasiguiente:

    Obtenemos la siguiente solucin:

  • 7/21/2019 Splines (2)

    16/25

    16

    Splines

    Sustituyendo estos valores en nuestra funcin inicial, vemos que la splinecbica para la tabla de datos dada, queda definida como sigue:

    Mostramos la grfica correspondiente a este ejercicio:

    Prcticamente ni se nota que se trata de dos polinomios diferentes. Esto esdebido a las condiciones que se impusieron sobre las derivadas de la funcin.Esta finura casi artstica, es la que permite aplicar las splines cbicas, paracuestiones como el diseo de letras por computadoras, o bien a problemas deaplicacin donde la interpolacin que se necesita es de un carcter bastantedelicado, como podra tratarse de datos mdicos sobre algn tipo deenfermedad.

  • 7/21/2019 Splines (2)

    17/25

    17

    Splines

    Ejemplo 2.

    Interpolar los siguientes datos utilizando splines cbicas:

    X -1 1 2 4

    Y -1 1 5 2

    Solucin:

    Nuevamente, definimos un polinomio cbico en cada uno de los intervalos:

    S(x)=

    Despus, hacemos que la spline pase por los puntos dados en 1 la tabla. As,tenemos que:

    S (-1)=-1 esto implica que,

    S (1)=1 implica que,

    S (2)=5 Implica que,

    Y finalmente S (4)=-2 Implica que,

  • 7/21/2019 Splines (2)

    18/25

    18

    Splines

    Enseguida, calculamos la primera derivada:

    S(X)=

    Vemos entonces, que las posibles discontinuidades de S(X) son X=1, X=2 Porlo tanto, para hacer que S(X) sea continua, igualamos las ecuacionescorrespondientes en ambos valores:

    Ahora procedemos a calcular la segunda derivada:

    S(X)=

    Nuevamente, las posibles discontinuidades son y X=1, X=2 Por lo tanto, paraque S(X) sea continua, se igualan las ecuaciones en ambos valores:

    Finalmente, se agregan las condiciones de que la doble derivada se anule enlos puntos inicial y final de la tabla. En este caso:

    S (-1) = 0 S (4)= 0

  • 7/21/2019 Splines (2)

    19/25

    19

    Splines

    Con esto tenemos un juego de doce ecuaciones con doce incgnitas:

    = 0

    Este sistema tiene la siguiente forma matricial:

    Obtenemos la solucin:

  • 7/21/2019 Splines (2)

    20/25

    20

    Splines

    Por lo tanto, la spline cbica es:

    {

    Finalmente, mostramos la grfica correspondiente

  • 7/21/2019 Splines (2)

    21/25

    21

    Splines

    En forma general

    Dada una funcin f a, bnodos

    un interpolante cubico de trazador, S, para

    es una funcin que satisface las siguientes condiciones:

    a) Ses un polinomio cubico, denotado , en el subintervalo [ ] para cadaj=0, 1,, n-1;

    b)

    (

    ) (

    ) para cadaj= 0, 1,, n;

    c) () ()para cadaj= 0, 1,, n-2;d)() ()para cadaj= 0, 1,, n-2;e)

    () ()para cadaj= 0, 1,, n-2;

    f) Se satisface una del siguiente conjunto de condiciones de frontera:

    (Frontera libre) y (frontera sujeta)La ecuacin b) indica que el spline cbico se ajusta a cada uno de los puntos,que es continua c), y que es continua en pendiente y curvatura d) y e), a lolargo de toda la regin generada por los puntos. Para construir el interpolantecbico de trazador para una funcin f dada, se pueden aplicar las condicionesde la definicin a los polinomios cbicos.

    (

    )

    (

    )

    (

    )para cada j = 0, 1,, n-1.

    Para ()

  • 7/21/2019 Splines (2)

    22/25

    22

    Splines

    Y si se aplica la condicion (c),

    () ()=

    ( ) ( )

    ( )

    Para cadaj=0, 1,, n-2

    Introducimos la notacin para cada .Si, adems definimos , se puede ver que esto implica que laecuacin para cada De una manera similar, definimos y observamos ( ) ( )Para () para cada Aplicando condicin (d),

    () ()

    Para cada Otra relacin entre los coeficientes se puede obtener

    ( )Para () para cada Aplicando la condicin (e) y definiendo :

    (

    )

    (

    )

    Para cada

  • 7/21/2019 Splines (2)

    23/25

    23

    Splines

    Despejando de la ecuacin anterior y sustituyendo este valor (1) (2) (3)Para cada j n

    y luego con una reduccin del ndice, para, (4)De (2) despejo - (5)Con una reduccin del ndice

    - (6)Reemplazando (5) y (6) en (4), tenemos

    (4) Operando algebraicamente, nos queda

    ( ) ( ) ( ) (7)Para cadaj 1, 2,..., n } que los valores } y } estn dados por el espaciamiento entre losnodos } y los valores de f en los nodos.Ntese que una vez que se conocen los valores de

    encontrar las constantes

    restantes de la ecuacin (4) y de la ecuacin (1) y construir los polinomioscbicos es una cuestin sencilla.

  • 7/21/2019 Splines (2)

    24/25

    24

    Splines

    Si se cumplen las condiciones de frontera libre, implicanque:

    Las dos ecuaciones y junto con las ecuaciones en (7) producenun sistema lineal descripto por la ecuacin vectorial , donde A es lamatriz de (n+1) por (n+1)

  • 7/21/2019 Splines (2)

    25/25

    BIBLIOGRAFA

    Ing. Adriana M. Apaza, Clculo NumricoProgramacin Aplicada.

    Steven C. Chapra-Raymond P. Canale, Mtodos numricos, quinta edicin.

    CARLOS GONZLEZ MORCILLO,Splines, curvas y superficies.