Documentos de Académico
Documentos de Profesional
Documentos de Cultura
TEMA 5.
INTERPOLACION
1. Introducción
2. Nomenclatura
3. Interpolación lineal
4. Interpolación cuadrática
5. Interpolación por splines cúbicos
6. RESUMEN
7. Programación en Matlab®
Cálculo numérico en Ingeniería
Tema 5: Interpolación
1. Introducción
•
Es por ello más correcto usar las técnicas de interpolación para la estimación
de puntos intermedios a otros puntos experimentales. Analizaremos tres
métodos de interpolación: la interpolación lineal, la interpolación cuadrática, con
su posible extensión a otros órdenes y el spline cubico, equivalente al ajuste
por secciones utilizando una aproximación cúbica cada 3 puntos.
2. Nomenclatura
3. Interpolación lineal
Esta es la forma más sencilla de interpolación existente. Usa dos puntos con el
fin de desarrollar una aproximación lineal de la función. Estos dos puntos
usados en el proceso serán los más próximos al punto de interés, debiendo ser
uno menor y otro mayor que este. Por tanto, entre cada pareja de valores de
(xk, yk) y (xk+1, yk+1), se calcula la recta existente entre ambos para calcular y al
valor de x dado.
y = y k + (x − x k )y 'k +
(x − x k )2 y '' + ....... ((IN.1)
k
2
y k +1 − y k
y 'k ≅
x k +1 − x k
((IN.2)
y − yk
y = y k + k +1 (x − x k )
x k +1 − x k
4. Interpolación cuadrática
En este caso se usaran 3 puntos, (xk-1, yk-1), (xk, yk) y (xk+1, yk+1), para el
proceso de interpolación en lugar de dos, obteniendo una aproximación a la
función de mayor orden.
y = y k + (x − x k )f ′(x k ) +
(x − x k ) 2
f ′′(x k ) ((IN.3)
2
y = yk +
(x − x k )[y k+1 − y k −1 ] + (x − x k )2 [y k+1 − 2 y k + y k −1 ] ((IN.4)
2(∆x )
2
2 ∆x
Tema 5: Interpolación
Se deben cumplir los siguientes puntos para poder aplicar la técnica de división
de funciones:
f i ( x ) = ai x 3 + bi x 2 + ci x + d i − − > cúbica
f i ' ( x ) = 3 ai x + 2bi x + ci
2
fi fi+1
xk
xk+1 fi+2
xk-1
xk+2
f i " (x k ) − f i " (x k −1 )
f i " ( x ) = f i " ( x k −1 ) + (x − xk −1 )
x k − x k −1 ((IN.6)
Cálculo numérico en Ingeniería
Esta ecuación puede ser integrada dos veces, obteniendo una expresión que
nos da el valor de la función en el segmento. Esta expresión contendrá dos
constantes de integración que pueden ser evaluadas usando la primera de las
condiciones: la aproximación debe pasar por los puntos conocidos:
f i (x k ) = y k
((IN.7)
f i (x k −1 ) = y k −1
f i " (x k −1 )
f i (x ) = (x k − x )3 + f i " (x k ) (x − x k −1 )3
6(x k − x k −1 ) 6(x k − x k −1 )
y k −1 f " (x k −1 )(x k − x k −1 )
+ − i (x k − x ) ((IN.8)
(x k − x k −1 ) 6
yk f " (x k )(x k − x k −1 )
+ − i (x − x k −1 )
(x k − x k −1 ) 6
Pero en esta expresión los valores de la segunda derivadas siguen sin ser
conocidos. Estos valores pueden conocerse haciendo uso de la condición que
dice que la primera derivada debe ser continua de un segmento a otro.
Por lo que, al ser iguales las funciones colindantes en el mismo punto, puede
eliminarse el subíndice ‘i’ para resaltar que la derivada es independiente de que
se escoja una función u otra. Por tanto, lo mismo ocurrirá con las derivadas
segundas. Aplicando esta condición de continuidad ((IN.9) a la ecuación 8, y
reordenando términos:
B2 C2 ... 0 f " (x 2 ) D 2
A3 B3 ... 0 f " (x 3 ) D 3
0 A4 ... 0 f " (x 4 ) = D 4
... ... ... ... ... ...
0 0 A n −1 B n −1 f " (x n −1 ) D n −1
(IN.13)
Una vez que el sistema esta resuelto obtendremos todos los valores de las
derivadas segundas, y ya se puede utilizar la ecuación (IN.8) para interpolar el
valor de la función en cualquiera de los puntos estudiados.
6. RESUMEN
7. Programación en MATLAB
Interpolación Lineal.
function y=interplineal(x1,y1,x)
function y=interpsplines(x1,y1,x)
i=i+1;
valor = x1(i) > x;
end
% Una vez localizada la posicion, se aplica la formula
primery= dersegun(i-1)/6/(x1(i)-x1(i-1))*(x1(i)-x).^3;
seguny = dersegun(i)/6/(x1(i)-x1(i-1))*(x-x1(i-1)).^3;
tercery= (y1(i-1)/(x1(i)-x1(i-1))-dersegun(i-1)*(x1(i)-x1(i-1))/6)*(x1(i)-x);
cuarty = (y1(i)/(x1(i)-x1(i-1))-dersegun(i)*(x1(i)-x1(i-1))/6)*(x- x1(i-1));
y=primery+seguny+tercery+cuarty;
YI = INTERP1(X,Y,XI,'method')
donde: