Análisis Numérico 2018 2 Universidad Nacional Autónoma de México Facultad de Ciencias
Contenido 1 2 3
Construcción de naturales Introducción En los temas anteriores estudiamos la aproximación de una función arbitraria en un intervalo cerrado por medio de un polinomio. Sin embargo, los polinomios de alto grado oscilan en forma errática; es decir, una fluctuación menor en una parte pequeña de un intervalo puede ocasionar importantes fluctuaciones en todo el rango. Un procedimiento alternativo consiste en dividir el intervalo en una serie de subintervalos y en cada uno construir un polinomio de aproximación (generalmente) diferente. A esta forma de aproximar se le conoce como aproximación polinomial fragmentaria.
Construcción de naturales Splines lineales La interpolación lineal fragmentaria consiste en unir una serie de puntos [(x 0, y 0 ), (x 1, y 1 ),..., (x n, y n )] Usando la forma de Lagrange, la ecuación de la recta que conecta a los primeros dos puntos es f 1 (x) = (x x 1) (x 0 x 1 ) y 0 + (x x 0) (x 1 x 0 ) y 1 Para n puntos son n 1 intervalos. Así, tenemos que para f i (x) f i (x) = (x x i+1) (x i x i+1 ) y i + (x x i) (x i+1 x i ) y i+1 para i = 0, 1,..., n 1 y x i x x i+1.
Construcción de naturales La aproximación por funciones lineales muestra una desventaja; no se tiene la seguridad de que haya derivabilidad en los extremos de los subintervalos, lo cual dentro de un contexto geométrico significa que la función de interpolación o interpolante no es suave en dichos puntos. A menudo las condiciones físicas indican claramente que se requiere la suavidad y que la función aproximante debe ser continuamente derivable.
Construcción de naturales Splines cuadráticos El tipo más simple de función polinomial fragmentaria derivable en un intervalo completo [x 0, x n ] es la función obtenida al ajustar un polinomio cuadrático entre cada par consecutivo de nodos. f i (x) = a i x 2 + b i x + c i para i = 0, 1,..., n 1, cada equación tiene 3 coeficiente, o sea un total de 3(n 1) = 3n 3 coeficientes a ser determinados (encontrados). Únicamente se requieren dos condiciones para ajustar los datos en los extremos de cada intervalo, por ello, existe flexibilidad que permite seleccionar la cuadrática de modo que la interpolante tenga una derivada continua en [x 0, x n ]. El problema se presenta cuando hay que especificar condiciones respecto a la derivada de la interpolante en los puntos extremos x 0 y x n. No existe un número suficiente de constantes para asegurar que se satisfagan las condiciones.
Construcción de naturales La aproximación polinómica fragmentaria más común utiliza polinomios cúbicos entre cada par consecutivo de nodos y recibe el nombre de interpolación de splines cúbicos. Un polinomio cúbico general contiene cuatro constantes; así, el procedimiento del spline cúbico ofrece suficiente flexibilidad para garantizar que la interpolante no sólo sea continuamente derivable en el intervalo, sino que además tenga una segunda derivada continua en el intervalo. Sin embargo, en la construcción del spline cúbico no se supone que las derivadas de la interpolante concuerden con las de la función que se está aproximando, ni siquiera en los nodos.
Construcción de naturales Definición Dada una función f definida en [a, b] y un conjunto de nodos a = x 0 < x 1 < < x n = b, una interpolante de spline cúbico S para f es una función que cumple con lo siguiente: (a) S(x) es un polinomio cúbico, denotado S i (x), en el subintervalo [x i, x i+1 ] para cada j = 0, 1,..., n 1; (b) S i (x i ) = f (x i ) y S i (x i+1 ) = f (x i+1 ) para cada i = 0, 1,..., n 1; (c) S i+1 (x i+1 ) = S i (x i+1 ) para cada i = 0, 1,..., n 2; (d) S i+1 (x i+1) = S i (x i+1) para cada i = 0, 1,..., n 2; (e) S i+1 (x i+1) = S i (x i+1 ) para cada i = 0, 1,..., n 2; (f) Una de las siguientes condiciones de frontera se satisface: (i) S (x 0 ) = S (x n ) = 0 (frontera natural o libre); (ii) S (x 0 ) = f (x 0 ) y S (x n ) = f (x n ) (frontera sujeta).
Construcción de naturales Construcción de naturales Sean z i = S i (x i ), para 0 i n sobre [x i, x i+1 ], tenemos que S i (x) es una interpolación lineal y S i (x i ) = z i, S i (x i+1 ) = z i+1. Podemos escribir S i (x) = x x i+1 z i + x x i z i+1. x i x i+1 x i+1 x i Integrando S i (x) dos veces, obtenemos S i (x) = (x i+1 x) 3 z i 6h i + (x x i ) 3 z i+1 6h i + cx + d (1) donde h i = x i+1 x i y c, d son las constantes de integración. Ahora, utilizamos el inciso (b) de la definición de Splines. Obtenemos las ecuaciones siguientes
Construcción de naturales { h 3 i z i h 3 i 6h i + cx i + d = y i z i 6h i + cx i+1 + d = y i+1 de donde c = y i+1 y i h i (z i+1 z i ) 6 h i y d = y i x i+1 y i+1 x i h i + x i z i+1 x i+1 z i 6 h i. Reemplazando en la ecuación (1) nos queda. S i (x) = (x i+1 x) 3 z i + (x x i) 3 z i+1 + 6h i 6h ( i (yi+1 y i ) y i x i+1 y i+1 x i h i (z ) i+1 z i ) h i x+ (2) h i 6 + x iz i+1 x i+1 z i h i. 6 Para encontrar z i y z i+1 utilizamos el inciso (d) de la definición.
Construcción de naturales Ahora derivando (2) y reemplazando obtenemos y S i (x i ) = 1 3 h iz i 1 6 h iz i+1 + d i S i 1(x i ) = 1 6 h i 1z i 1 + 1 3 h i 1z i + d i 1 siendo d i = y i+1 y i h i d i 1 = y i y i 1 h i 1. Sabiendo que S i 1 (x i) = S i (x i) nos queda h i 1 z i 1 + 2(h i 1 + h i )z i + h i z i+1 = 6(d i d i 1 ), i = 1,..., n 1. Para encontrar z i, (1 i n 1), considerando que z 0 = z n = 0, se tiene un sistema de ecuaciones, simétrico, tridiagonal, diagonal dominante, de la forma siguiente
Construcción de naturales u 1 h 1 0 0 0 0 h 1 u 2 h 2 0 0 0 0 h 2 u 3 h 3 0 0............................ 0 0 0 h n 3 u n 2 h n 2 0 0 0 0 h n 2 u n 1 z 1 z 2. z n 2 z n 1 = v 1 v 2. v n 2 v n 1 Donde h i = t i+1 t i u i = 2(h i + h i 1 ) d i = 6 (x i+1 x i ), h i v i = d i d i 1 S j (t j ) = x j
Construcción de naturales Sea el siguiente conjunto de cinco puntos dado x 8 11 15 18 22 y 5 9 10 8 7 (a) Determine el spline cúbico natural que ajusta los datos. (b) Determine el valor interpolado de y para x = 12.7. Solución: (a) Tenemos que n = 5, y son 4 splines (i = 1,..., 4). La ecuación cúbica en el i-ésimo spline es S i (x) = z i (x i+1 x) 3 + z i+1 (x x i ) 3 + 6h i 6h [ i yi z ] [ ih i yi+1 (x i+1 x) + h i 6 h i z i+1h i 6 ] (x x i )
Construcción de naturales para x i x x i+1, con i = 1,..., n 1 donde h i = x i+1 x i que es la longitud del i-ésimo intervalo. Para encontrar los coeficientes intermedios usamos la siguiente fórmula [ yi+2 y i+1 h i z i + 2(h i + h i+1 )z i+1 + h i+1 z i+2 = 6 y ] i+1 y i h i+1 para i = 1,..., n 2. Así, tenemos que z 1 = z 5 = 0. Los valores de h i son h 1 = x 2 x 1 = 11 8 = 3, h 2 = x 3 x 2 = 15 11 = 4 h 3 = x 4 x 3 = 18 15 = 3, h 4 = x 5 x 4 = 22 18 = 4 Sustituyendo estos valores en (3) para i = 1, 2, 3 obtenemos el siguiente sistema de 3 ecuaciones con 3 incognitas. h i (3)
Construcción de naturales 14z 2 + 4z 3 = 6.5 4z 2 + 14z 3 + 3z 4 = 5.5 3z 3 + 14z 4 = 2.5. Resolviendo este sistema de ecuaciones encontramos los valores de los coeficientes z 2 = 0.3665 z 3 = 0.3421 z 4 = 0.2519. Con los coeficientes encontrados sustituimos en S 2 (x) que es el intervalo que nos interesa S 2 (x) =( 0.01527)(15 x) 3 + ( 0.01427)(x 11) 3 + 2.494(15 x) + 2.728(x 11). para 11 x 15. (b) Sustituimos x = 12.7 en f 2 (x) y obtenemos f 2 (x) = 10.11 = y.
ENTRADA n; x 0, x 1,..., x n ; a 0 = f (x 0 ), a 1 = f (x 1 ),..., a n = f (x n ) SALIDA a j, b j, c j, d j para j = 0, 1,..., n 1. S(x) = S j (x) = a j +b j (x x j )+c j (x x j ) 2 +d j (x x j ) 3 para x j x x j+1 Paso 1 Para i = 0, 1,, n 1 tome h i = x i+1 x i. Paso 2 Para i = 1, 2,..., n 1 tome α i = 3 h i (a i+1 a i ) 3 h i 1 (a i a i 1 ). Paso 3 Tome l 0 = 1; (A partir de este paso se resuelve el sistema tridiagonal) µ 0 = 0; z 0 = 0. Paso 4 Para i = 1, 2,..., n 1 tome l i = 2(x i+1 x i 1 ) h i 1 µ i 1 ; µ i = h i /l i ; z i = (α i h i 1 z i 1 )/l i.
Paso 5 Tome l n = 1; z n = 0; c n = 0. Paso 6 Para j = n 1, n 2,..., 0 tome c j = z j µ j c j+1 ; b j = (a j+1 a j )/h j h j (c j+1 + 2c j )/3; d j = (c j+1 c j )/(3h j ). Paso 7 SALIDA: (a j, b j, c j, d j para j = 0, 1,..., n 1); Parar.
Burden, R; Faires, D. Análisis numérico. Cengage Learning. Novena edición. 2011 Mathews, J.H; Fink, K.D. Métodos numéricos con MATLAB. Prentice Hall. Tercera edición. 2000 Quarteroni, A; Sacco, R; Saleri, F. Numerical mathematics. Springer. 2007