Está en la página 1de 17

I.P.

N
Instituto Politécnico Nacional
“ESIQIE”
Escuela Superior de Ingeniería Química e
Industrias Extractivas
METODOS NUMERICOS

Profesor: Márquez Nuño Rogelio


Alumnos:
 García Rivera Miriam Vianey
 Herrera García Ricardo
 Minila Pérez María Fernanda
 Servín Quintero Roberto Ignacio
Grupo: 1IM44

Trabajo de investigación: “Spline”


SPLINE
El propósito de realizar interpolaciones polinomicas es sustituir una tabla de valores por
un polinomio que tome dichos valores. Cuando se tiene una gran cantidad de puntos
también aumenta el grado del polinomio. Uno de los problemas que esto presenta es
que el polinomio se hace más oscilante por lo que a menudo no responde al fenómeno
debido al gran número de extremos e inflexiones. Por otro lado, el cálculo de estos
polinomios es muy complicado lo que limita su utilidad en el análisis numérico.
Por lo tanto a menudo es más conveniente dividir el intervalo de interés en
subintervalos más pequeños y aplicar en cada subintervalo un polinomio de grado
relativamente bajo, tratando que la función a trozos definida tenga un aspecto adecuada
al fenómeno representado.

Los splines (ranuras en español) se definen como curvas definidas en intervalos


mediante polinomios. Su teoría fundamental fue desarrollada en la década de 1940 por
Isaac Jacob Schoenberg (1903-1990). La idea central es que en vez de utilizar un solo
polinomio para interpolar los datos, se pueden utilizar segmentos de polinomios y
unirlos adecuadamente para formar la interpolación.
Los splines de tercer grado o cubicas han resultado ser los más adecuados aunque
existen varios tipos de splines.
TIPOS DE SPLINE:
o Spline lineal C0
o Spline parabólico C1
o Spline cúbico C1
o Spline cúbico C2

El tipo de Spline viene dado por el grado de polinomio en cada intervalo y la regularidad
en los puntos/nodos interiores.
SPLINE LINEAL C0
o Función polinómica lineal a trozos
o Continua (en los puntos base xi )

Base del espacio de splines lineales C0:


o Depende de los puntos base {x0, x1,...,xn}
o De todas las bases posibles escogemos la que permite variar con facilidad
los valores fi.
o Con la base que cumple:

interpolante (spline) se escribe:

Observación: El espacio de Splines lineales C0 es un espacio vectorial de


dimensión n+1 (número de puntos base).
SPLINE C1 PARABOLICO
En cada intervalo:

o Número de coeficientes: 3n
o Número de condiciones: continuidad del spline y de la primera derivada en
los n-1 puntos interiores.

o DIFERENCIA: 3n 2(n-1) 3n – 2(n-1) = n+2 parámetros libres, dimensión del


espacio.
EJEMPLO SPLINE C1 PARABÓLICO (RECURRENTE)
Fijando el valor de la derivada en el punto inicial, Sʼ(0)=0, y los n+1 valores de la
función.

LA BASE DE SPLINES PARABOLICOS C1 ES NO LOCAL


Elección de s’0:
o Dejar s’0 libre y modificar interactivamente.
o Interpolar polinomio con N+1 puntos en el entorno de x0: s’0 = pendiente
del polinomio en x0.
o Tomar s’1 = (f2 – f0)/(x2 – x0) (diferencia centrada) e interpolar un
subintervalo en sentido contrario.

SPLINE C1 CÚBICO
Se conoce como: interpolación de Hermite
En cada intervalo:

o Número de coeficientes: 4n
o Número de condiciones: continuidad del spline y de la primera derivada en
los n-1 puntos interiores.
o DIFERENCIA: 4n 2(n-1) 4n – 2(n-1) = 2(n+1) parámetros libres, dimensión
del espacio.
En cada subintervalo, dados los 2 valores de la función y los 2 valores de la
derivada hay un único polinomio de grado 3 que cumple las 4 condiciones.

POLINOMIO DE GRADO 3 QUE CUMPLE LAS 4 CONDICIONES:

Aproximación de las derivadas:


Si las derivadas sʼ i no son conocidas, se pueden aproximar a partir de los valores
de la función.

SPLINE C1 PARABÓLICO (NO LOCAL):


SPLINE C1 CÚBICO (LOCAL):

SPLINE C2 CÚBICO
En cada intervalo:

o Número de coeficientes: 4n
o Número de condiciones: continuidad del spline y de la primera y segunda
derivada en los n-1 puntos interiores.

o DIFERENCIA: 4n 3(n-1) 4n – 3(n-1) = (n+1) + 2 parámetros libres, dimensión


del espacio.
CONDICIONES ADICIONALES
Curvaturas prescritas en los extremos: s’’0 y s’’n dadas formulación en curvaturas.
Caso particular: s’’0=s’’n=0 (spline natural).
Pendientes prescritas en los extremos: s’0 y s’n dadas formulación en pendientes
(derivadas).
Imposición de una pendiente y una curvatura.
Spline periódico: Si se verifica f0=fn puede ser interesante exigir s’0=s’n y
s’’0=s’’n.
Interpolación cuadrática en los dos subintervalos extremos: s’’0=s’’1 y s’’n-1=s’’n.
Interpolación con la misma cúbica en los dos primeros subintervalos y en los dos
últimos subintervalos.
FORMULACIÒN EN DERIVADAS

o Spline cúbico (de momento con continuidad C1)

o Sólo podemos imponer el valor de S(xi )=fi y dos condiciones adicionales.


o Las pendientes s’i no son datos, son parámetros a determinar imponiendo
continuidad de S’’(x) y las dos condiciones adicionales.

FORMULACIÒN EN CURVATURAS
Se expresa el spline en función de fi y de las segundas derivadas en los puntos
base si ’’

Las curvaturas s’’i no son datos, son parámetros a determinar imponiendo


continuidad de S’(x) y las dos condiciones adicionales.
SPLINE NATURAL
El Spline natural es el spline C2 cúbico con s’’0=s’’n=0.

La suavidad de una función se mide con el funcional

PROCEDIMIENTO PARA UN SPLINE DE SEGUNDO GRADO


Si tenemos una tabla con n puntos nos podemos dar cuenta de que se forman n-1
intervalos:
X Y
X1 Y1
X2 Y2
X3 Y3
⁞ ⁞
Xn Yn

[X1, X2], [X2, X3],…, [Xn-1, Xn]


En cada uno de estos intervalos, se define una función polinomial de grado 2, como
sigue:
𝑎1 𝑥 2 + 𝑏1 𝑥 + 𝑐1 𝑠𝑖 𝑥 𝜖 [𝑋1 , 𝑋2 ]
𝑠(𝑥) = { 𝑎2 𝑥 2 + 𝑏2 𝑥 + 𝑐2 𝑠𝑖 𝑥 𝜖 [𝑋2 , 𝑋3 ]

2
𝑎𝑛−1 𝑥 + 𝑏𝑛−1 𝑥 + 𝑐𝑛−1 𝑠𝑖 𝑥 𝜖 [𝑋𝑛−1 , 𝑋𝑛 ]

Hacemos que un spline pase por los puntos de la tabla de dado de manera que se debe
cumplir:
𝑠(𝑋1 ) = 𝑌1, 𝑠(𝑋2 ) = 𝑌2 ,… , 𝑠(𝑋𝑛 ) = 𝑌𝑛
Por lo que se forman las ecuaciones:
𝑎1 (𝑋1 )2 + 𝑏1 (𝑋1 ) + 𝑐1 = 𝑌1
𝑠(𝑋1 ) = {
𝑎2 (𝑋1 )2 + 𝑏2 (𝑋1 ) + 𝑐2 = 𝑌1

𝑎𝑛−2 (𝑋𝑛−1 )2 + 𝑏𝑛−2 (𝑋𝑛−1 ) + 𝑐𝑛−2 = 𝑌𝑛−1
𝑠(𝑋𝑛−1 ) = {
𝑎𝑛−1 (𝑋𝑛−1 )2 + 𝑏𝑛−1 (𝑋𝑛−1 ) + 𝑐𝑛−1 = 𝑌𝑛−1
𝑠(𝑋𝑛 ) = 𝑎𝑛−1 (𝑋𝑛 )2 + 𝑏𝑛−1 (𝑋𝑛 ) + 𝑐𝑛−1 = 𝑌𝑛
El siguiente paso es que el spline tenga una derivada continua de orden k-1=1, es
decir, primera derivada continúa:
2𝑎1 𝑥 + 𝑏1 𝑠𝑖 𝑥 𝜖 [𝑋1 , 𝑋2 ]
2𝑎2 + 𝑏2 𝑠𝑖 𝑥 𝜖 [𝑋2 , 𝑋3 ]
𝑠′(𝑥) = {

2𝑎𝑛−1 𝑥 + 𝑏𝑛−1 𝑠𝑖 𝑥 𝜖 [𝑋𝑛−1 , 𝑋𝑛 ]
Para que s’(x) sea continua se debe cumplir que:
2𝑎1 𝑥 + 𝑏1 = 2𝑎2 + 𝑏2

2𝑎𝑛−2 𝑥 + 𝑏𝑛−2 = 2𝑎𝑛−1 𝑥 + 𝑏𝑛−1
De esta forma se tiene un sistema de ecuaciones que debe ser resuel
EJEMPLO UNO
Considerando los siguientes datos:
x 3 4.5 7 9
Y 2.5 1 2.5 0.5

Se forman tres intervalos: [3,4.5] [4.5, 7] [7,9]


En cada uno de los intervalos definir una función polinomial de segundo grado

Spline debe de pasar por los puntos:

Entonces, se forman las siguientes ecuaciones:

Hasta aquí se obtienen 6 ecuaciones con 9 incógnitas


En el caso de las splines de segundo grado
Calculamos la primera derivada:

Esta derivada está formada por segmentos de rectas, que pueden presentar
discontinuidad en los cambios de intervalo. Por lo tanto para que s’(x) sea continua
debe cumplir que:

Así tenemos un total de 8 ecuaciones con 9 incógnitas, nos da un grado de


libertad para elegir alguna de las incógnitas. Por conveniencia a 1=0
Se obtienen 8 ecuaciones con 8 incógnitas

Se obtiene la solución al sistema de ecuaciones


Sustituyendo valores junto con a1=0, se obtiene la función spline cuadrática que
interpola la tabla de datos

Graficando

EJEMPLO DOS
Realizar las interpolaciones cúbicas por medio del método de Splines.

t (s) V (m/s)
10 2
15 4
20 6
25 8
30 10
35 12
𝑎1 𝑥 2 + 𝑏1 𝑥 + 𝑐1 𝑠𝑖 𝑥 𝜖 [𝑋1 , 𝑋2 ]
𝑠(𝑥) = { 𝑎2 𝑥 2 + 𝑏2 𝑥 + 𝑐2 𝑠𝑖 𝑥 𝜖 [𝑋2 , 𝑋3 ]

𝑎𝑛−1 𝑥 2 + 𝑏𝑛−1 𝑥 + 𝑐𝑛−1 𝑠𝑖 𝑥 𝜖 [𝑋𝑛−1 , 𝑋𝑛 ]

Se define un polinomio en cada uno de los intervalos que se forman


𝑎1 𝑥 3 + 𝑏1 𝑥 2 + 𝑐1 𝑥 + 𝑑1 𝑠𝑖 𝑥 𝜖 [10, 15]
𝑎2 𝑥 3 + 𝑏2 𝑥 2 + 𝑐2 𝑥 + 𝑑2 𝑠𝑖 𝑥 𝜖 [15, 20]
𝑠(𝑥) = 𝑎3 𝑥 3 + 𝑏3 𝑥 2 + 𝑐3 𝑥 + 𝑑3 𝑠𝑖 𝑥 𝜖 [20, 25]
𝑎4 𝑥 3 + 𝑏4 𝑥 2 + 𝑐4 𝑥 + 𝑑4 𝑠𝑖 𝑥 𝜖 [25, 30]
{𝑎5 𝑥 3 + 𝑏5 𝑥 2 + 𝑐5 𝑥 + 𝑑5 𝑠𝑖 𝑥 𝜖 [30, 35]
Se hace que se cumpla la condición que el spline pase por los puntos de la tabla:
𝑠(𝑥) = 2 → 𝑎1 (2)3 + 𝑏1 (2)2 + 𝑐1 (2) + 𝑑1

𝑠(𝑥) = 4 → 𝑎1 (4)3 + 𝑏1 (4)2 + 𝑐1 (4) + 𝑑1

𝑠(𝑥) = 4 → 𝑎2 (4)3 + 𝑏2 (4)2 + 𝑐2 (4) + 𝑑2

𝑠(𝑥) = 6 → 𝑎2 (6)3 + 𝑏2 (6)2 + 𝑐2 (6) + 𝑑2

𝑠(𝑥) = 6 → 𝑎3 (6)3 + 𝑏3 (6)2 + 𝑐3 (6) + 𝑑3

𝑠(𝑥) = 8 → 𝑎3 (8)3 + 𝑏3 (8)2 + 𝑐3 (8) + 𝑑3

𝑠(𝑥) = 8 → 𝑎4 (8)3 + 𝑏4 (8)2 + 𝑐4 (8) + 𝑑4

𝑠(𝑥) = 10 → 𝑎4 (10)3 + 𝑏4 (10)2 + 𝑐4 (10) + 𝑑4

𝑠(𝑥) = 10 → 𝑎5 (10)3 + 𝑏5 (10)2 + 𝑐5 (10) + 𝑑5

𝑠(𝑥) = 12 → 𝑎5 (12)3 + 𝑏5 (12)2 + 𝑐5 (12) + 𝑑5

𝑠(𝑥) = 2 → 8 𝑎1 + 4 𝑏1 + 2 𝑐1 + 𝑑1

𝑠(𝑥) = 4 → 64 𝑎1 + 16 𝑏1 + 4 𝑐1 + 𝑑1

𝑠(𝑥) = 4 → 64 𝑎2 + 16 𝑏2 + 4 𝑐2 + 𝑑2

𝑠(𝑥) = 6 → 216 𝑎2 + 36 𝑏2 + 6 𝑐2 + 𝑑2

𝑠(𝑥) = 6 → 216 𝑎3 + 36 𝑏3 + 6 𝑐3 + 𝑑3

𝑠(𝑥) = 8 → 512 𝑎3 + 64 𝑏3 + 8 𝑐3 + 𝑑3

𝑠(𝑥) = 8 → 512 𝑎4 + 64 𝑏4 + 8 𝑐4 + 𝑑4

𝑠(𝑥) = 10 → 1000 𝑎4 + 100 𝑏4 + 10 𝑐4 + 𝑑4

𝑠(𝑥) = 10 → 1000 𝑎5 + 100 𝑏5 + 10𝑐5 + 𝑑5

𝑠(𝑥) = 12 → 1728 𝑎5 + 144 𝑏5 + 12 𝑐5 + 𝑑5


Calculando la primera derivada

3𝑎1 𝑥 2 + 2𝑏1 𝑥 + 𝑐1 𝑠𝑖 𝑥 𝜖 [10, 15]


3𝑎2 𝑥 2 + 2𝑏2 𝑥 + 𝑐2 𝑠𝑖 𝑥 𝜖 [15, 20]
𝑠′(𝑥) = 3𝑎3 𝑥 2 + 2𝑏3 𝑥 + 𝑐3 𝑠𝑖 𝑥 𝜖 [20, 25]
3𝑎4 𝑥 2 + 2𝑏4 𝑥 + 𝑐4 𝑠𝑖 𝑥 𝜖 [25, 30]
{3𝑎5 𝑥 2 + 2𝑏5 𝑥 + 𝑐5 𝑠𝑖 𝑥 𝜖 [30, 35]

Como se puede observar al igual que el caso de las splines cuadráticas, se


presentan ecuaciones que pueden presentar discontinuidad en los cambios de
intervalo. Es por ello que se evalúan estos puntos en los polinomios de la primera
derivada.
Para x=15
3𝑎1 (15)2 + 2𝑏1 (15) + 𝑐1 = 3𝑎2 (15)2 + 2𝑏2 (15) + 𝑐2
Para x= 20
3𝑎2 (20)2 + 2𝑏2 (20) + 𝑐2 = 3𝑎3 (20)2 + 2𝑏3 (20) + 𝑐3
Para x= 25
3𝑎3 (25)2 + 2𝑏3 (25) + 𝑐3 = 3𝑎4 (25)2 + 2𝑏4 (25) + 𝑐4
Para x= 30
3𝑎4 (30)2 + 2𝑏4 (30) + 𝑐4 = 3𝑎5 (30)2 + 2𝑏5 (30) + 𝑐5

Para x=15
675𝑎1 + 30 𝑏1 + 𝑐1 = 675 𝑎2 + 30 𝑏2 + 𝑐2
Para x= 20
1200 𝑎2 + 40 𝑏2 + 𝑐2 = 1200 𝑎3 + 40 𝑏3 + 𝑐3
Para x= 25
1875 𝑎3 + 50 𝑏3 + 𝑐3 = 1875 𝑎4 + 50 𝑏4 + 𝑐4
Para x= 30
2700 𝑎4 + 60 𝑏4 + 𝑐4 = 2700 𝑎5 + 60 𝑏5 + 𝑐5
Se calcula la segunda derivada
6𝑎1 𝑥 + 2𝑏1 𝑠𝑖 𝑥 𝜖 [10, 15]
6𝑎2 𝑥 + 2𝑏2 𝑠𝑖 𝑥 𝜖 [15, 20]
𝑠′′(𝑥) = 6𝑎3 𝑥 + 2𝑏3 𝑠𝑖 𝑥 𝜖 [20, 25]
6𝑎4 𝑥 + 2𝑏4 𝑠𝑖 𝑥 𝜖 [25, 30]
{ 6𝑎5 𝑥 + 2𝑏5 𝑠𝑖 𝑥 𝜖 [30, 35]
Para x=15
6𝑎1 (15) + 2𝑏1 = 6𝑎2 (15) + 2𝑏2
Para x= 20
6𝑎2 (20) + 2𝑏2 = 6𝑎3 (20) + 2𝑏3
Para x= 25
6𝑎3 (25) + 2𝑏3 = 6𝑎4 (25) + 2𝑏4
Para x= 30
6𝑎4 (30) + 2𝑏4 = 6𝑎5 (30) + 2𝑏5

Para lograr que s’’(x) sea continua se evalúa x


Para x=15
90 𝑎1 + 2𝑏1 = 90 𝑎2 + 2𝑏2
Para x= 20
120 𝑎2 + 2𝑏2 = 120 𝑎3 + 2𝑏3
Para x= 25
150 𝑎3 + 2𝑏3 = 150 𝑎4 + 2𝑏4
Para x= 30
180 𝑎4 + 2𝑏4 = 180 𝑎5 + 2𝑏5

De las dos condiciones siguientes


𝑠 ′′ (𝑋0 ) = 0
𝑠 ′′ (𝑋𝑛 ) = 0

Donde se obtiene:
𝑠 ′′ (10) = 0 → 6𝑎1 (10) + 2𝑏1 → 60 𝑎1 + 2𝑏1 = 0
𝑠 ′′ (35) = 0 → 6 𝑎5 (35) + 2𝑏5 → 210 𝑎5 + 2𝑏5 = 0
Con lo cual se hace un sistema de 20 ecuaciones con 20 incógnitas, donde se
forma la matriz para realizarla:

Donde al hacer las matrices da como resultado:


 a1= -0.00148
 b1= 0.04460
 c1= 0.77400
 d1= 0.28546
 a2= 0.00147
 b2= -0.08889
 c2= 2.77647
 d2= -5.77647
 a3= 1.53592x10-6
 b3= -1.96599x10-4
 c3= 1.00252
 d3= -0.00840
 a4= 2.36680
 b4= -2.58916
 c4= 1.00408
 d4= -0.01730
 a5= 3.06021x10-6
 b5= -3.21322x10-4
 c5= 1.00595
 d5= -0.030470
Donde sustituyendo estos valores en la ecuación inicial, vemos que el spline
cúbico queda queda:

(−0.00148)𝑥 3 + (0.04460)𝑥 2 + (0.77400)𝑥 + 0.28546 𝑠𝑖 𝑥 𝜖 [10, 15]


3 2
(0.00147)𝑥 + (−0.08889)𝑥 + ( 2.77647)𝑥 + (−5.77647) 𝑠𝑖 𝑥 𝜖 [15, 20]
−4 3 −4 2
𝑠(𝑥) = (1.535929x10 𝑥 + (−1.96599x10 )𝑥 + (1.00252)𝑥 + (−0.00840) 𝑠𝑖 𝑥 𝜖 [20, 25]
(2.36680)𝑥 3 + (−2.58916)𝑥 2 + (1.00408)𝑥 + (−0.01730) 𝑠𝑖 𝑥 𝜖 [25, 30]
{ 3.06021x10−6 𝑥 3 + (−3.21322x10−4 )𝑥 2 + (1.00595)𝑥 + (−0.030470) 𝑠𝑖 𝑥 𝜖 [30, 35]

BIBLIOGRAFÍA
(2018). Matematica Aplicada. Retrieved 10 March 2018, from
http://matematicaaplicada.jezasoft.co/jeza/material_de_apoyo/algebra_lineal/interp
olacion_con_splines.pdf
7.2 Interpolación de splines. (2018). Uv.es. Retrieved 10 March 2018, from
https://www.uv.es/~diaz/mn/node39.html
http://matematicaaplicada.jezasoft.co/jeza/material_de_apoyo/algebra_lineal/interp
olacion_con_splines.pdf

También podría gustarte