UNIVERSIDAD NACIONAL JORGE BASADRE GROHMANN – TACNA TACNA
FACULTAD DE INGENIERÍA
Escuela Profesional de Ingeniería en Informática y Sistemas
“INTERPOLACIÓN
USANDO LOS NODOS DE LOS
POLINOMIOS DE CHEBYSHEV”
ASIGNATURA
: Métodos Numéricos
AÑO ACADÉMICO : Segundo TURNO
: Mañana
DOCENTE
: Msc. Amaya Cedrón, Luis Andrés
INTEGRANTES: Jesús Joseph Flores Yance
(2015-119054)
Elvis Rubén Pacco Concori (2015-119028)
TACNA – PERÚ PERÚ 2016 1
ÍNDICE I.
INTRODUCION ............................................................................................................... ............................................................................................................... 5
II.
PROBLEMA ..................................................................................................................... ..................................................................................................................... 6
III.
ALGORITMO MATEMÁTICO ....................................................................................... ....................................................................................... 7
3.1.
Modelo matemático: ...................................................................................................... ..................................................................................................... 7
3.2.
Propiedades de los polinomios de Chebyshev .............................................................. 7
3.3.
Nodos compuestos (En (En otros intervalos) ..................................................................... .................................................................... 11
3.4.
Nodos equiespaciados (Polinomios (Polinomios de Lagrange) ....................................................... ...................................................... 12
3.5.
Nodos de Chebyshev (Polinomios de Chebyshev) Chebyshev) ...................................................... ..................................................... 13
IV.
EJEMPLO MATEMATICO ............................................................ ........................................................................................... ............................... 14
V.
ALGORITMO COMPUTACIONAL ......................................................... ............................................................................. .................... 15 5.1
Análisis de datos............................................................... .......................................................................................................... ........................................... 15
5.2
Diagrama de flujo ........................................................................................................ ....................................................................................................... 15
5.3
Código en Matlab ........................................................................................................ ........................................................................................................ 16
VI.
APLICACIÓN ................................................................................................................. ................................................................................................................ 18
6.1. Resolución manual ........................................................................................................... 18 6.2. Resolución usando un computador .............................................................. .................................................................................. .................... 20 6.3 Análisis del error ............................................................................................................... 21 VII.
CONCLUSIONES ............................................................... .......................................................................................................... ........................................... 23
VIII. RECOMENDACIONES ................................................................................................. 23 IX.
REFERENCIA BIBLIOGRAFICA BIBLIOGRAFICA ............................................................ ................................................................................ .................... 23
2
DEDICATORIA
Quiero dedicarle este trabajo A Dios que me ha dado la vida y fortaleza para terminar este trabajo de investigación, A mis Padres por estar ahí cuando más los necesité; en especial a mi madre por su ayuda y constante cooperación y A nuestros compañeros de la universidad que nos brindan su apoyo incondicional en los momentos más difíciles de nuestras vida ya sea fuera o dentro de la universidad.
3
AGRADECIMIENTO
Quiero agradecer a todos mis maestros que conocí en este larga carrera del estudiar ya que ellos me enseñaron a valorar los estudios, aconsejarme, que me diera cuenta que el estudio es muy importante para una persona y a superarme cada día.
También agradezco a mis padres porque ellos estuvieron en los días más difíciles de mi vida como estudiante y forjarme con buenos valores desde muy niño y no desviarme de mis metas.
Y agradezco a Dios por la buena salud que tengo ahora, por tener una cabeza con la que puedo pensar, razonar, imaginar muy bien y además un cuerpo sano y una mente de bien. Estoy seguro que todo esfuerzo tiene su recompensa y que mis metas planteadas darán fruto en el futuro y por ende me debo esforzar cada día para ser mejor en los estudios y en todo lugar sin olvidar el respeto hacia los demás.
4
I.
INTRODUCION
Un polinomio de interpolación es un polinomio que se asemeja o aproxima en lo mayor posible a una función dada, para ello este polinomio tiene que pasar exactamente por un conjunto de puntos que son a su vez puntos que se extraen de la función que se desea interpolar. Sabiendo que por n puntos pasa un único polinomio de grado n ‐1, se podría decir que la única manera de buscar la mejor aproximación del polinomio a la función es la de escoger de formas distintas los puntos por los cuales el polinomio debe de pasar. Lo que busca el método de Chebyshev principalmente es seleccionar los nodos o raíces de tal manera que haga mínimo el valor máximo del error, es decir reducir el error en lo mayor posible. En este trabajo mostraremos como generar lo polinomios de Chebyshev usando identidades trigonométricas, cambio de variables y se darán cuenta fácilmente que son definidos de forma recursiva, tal como ocurre con los números de Fibonacci o los números de Lucas. También veremos las gráficas correspondientes, código fuentes en Matlab y su aplicación.
5
II.
PROBLEMA
Muchos de los métodos de interpolación comenten grandes errores al momento de realizar la aproximación de valores en una funcion. Para funciones como sen(x) o e x mientras más alto sea el grado n del polinomio interpolante, el error tendera a cero y entonces mejor será la aproximación. Pero en general, para el resto de las funciones lo cierto es que mientras más alto sea el grado n del polinomio interpolante, el error producido por este no necesariamente tendera a cero. Por ejemplo: para una función f(x) = 1/(1+12x 2), si n tiende al infinito, el error es aun mayor . Esta falta de convergencia es conocida como “Fenómeno de Runge”.
Lo que hace interesante usar los nodos de los polinomios de Chebyshev es que al usar estos como puntos por donde interpolar polinomio, garantiza que el error máximo disminuya al crecer el grado del polinomio. De esta manera este inconveniente observado por Runge se puede minimizar usando los nodos de Chebyshev en lugar de los nodos equidistantes usualmente usados, de esta manera se garantiza que el error máximo disminuya al crecer el grado del polinomio. En este trabajo usaremos al método interpolante de Lagrange para compararlo con el método de Chebyshev y ver cuál de los 2 errores producidos por ambos tiende más al cero, es decir quién produce mejor aproximación.
6
III.
ALGORITMO MATEMÁTICO 3.1.
Modelo matemático:
T0(x) = cos(0) = 1 T1(x) = cos(arccos(x)) = x
El problema resuelto por P.L Chebyshev fue de cómo seleccionar el conjunto de nodos x(k) donde k = 0,1,2,..,n que haga mínimo el error de interpolación. Para ello necesitamos saber que son los polinomios de Chebyshev y cuáles son sus propiedades más importantes. 3.2.
Propiedades de los polinomios de Chebyshev 3.2.1 Relación de recursividad Se define con x [-1,1]:
7
Calcularemos los primeros términos:
Si n=0
Si n=1
Hacemos nuestro cambio de variable:
DONDE
Recordaremos un poco de Trigonometría para seguir generando nuestros polinomios, empecemos usando las identidades trigonométricas.
Luego al sumar estas ecuaciones obtenemos:
Esta ecuación nos ayudará a generar nuestros polinomios de Chebyshev:
Y así podremos aplicar la recursividad: 8
…para n>=2
3.2.1 Coeficiente líder El coeficiente líder de
en
es
para N >=1.
Esto se prueba observando que la relación de recurrencia multiplica por 2 el coeficiente líder de
para obtener el
.
3.2.2 Simetría Cuando N = 2M, el polinomio es de grado par.
…[negativo par =positivo]
Cuando N = 2M+1, el polinomio es de grado impar.
…[negativoimpar =negativo]
3.2.3 Representación trigonométrica Los polinomios de Chebyshev nacen directamente de la siguiente relación trigonométrica. (Véase la Figura N°01)
9
Figura n°01: Gráfica de los Polinomios de Chebyshev Fuente: http://sanzserna.org/pdf/568_Leccion1.pdf
3.2.4 Nodos simples Tn(x) tiene N nodos distintos x k que están todos en el intervalo [-1,1] (Véase la Figura N°02).
3.2.5 Interpretación geométrica de los nodos Una interpretación geométrica de los nodos de Chebyshev es aquella en la que estos se colocan en un segmento de longitud igual al diámetro de un círculo, cuya semicircunferencia se reparte en n partes iguales. Proyectando a lo largo del dicho segmento el punto medio de cada partición de la semicircunferencia obtenemos puntos que coinciden con las raíces del polinomio de Chebyshev.
10
Figura N°02:Gráfica de las raíces de los Polinomios de Chebyshev Fuente: http://wwweio.upc.es/~nasini/Blog/ChebyshevPolinomio.pdf
3.3.
Nodos compuestos (En otros intervalos) No siempre se usan los únicos intervalos [-1,1], es por ello que es necesario transformar esta limitación y generalizarlo en intervalos [a,b]: Para ello hacemos un cambio de variable:
Donde:
Además: Los nodos de Chebyshev correspondientes a son:
11
en [-1,1]
Entonces: Usando cambio de variable y reemplazando los nodos de Chebyshev en [a,b] se obtiene:
3.4.
Nodos equiespaciados (Polinomios de Lagrange) El método de interpolación de Lagrange construye un polinomio que se aproxima a una función y se define de la siguiente manera:
Donde: L es un polinomio de lagrange de grado N.
Ademas:
Si aproximamos f(x) por un polinomio interpolante de grado menor o igual a N = 3 en [-1,1], entonces los nodos equiespaciados son x(0) = -1, x(1) = -1/3, x(2) = 1/3 y x(3) = 1, que son valores cómodos en el
12
momento de realizar los cálculos. Sustituyendo estos valores en el método de interpolación de Lagrange se tendrá: Tabla N°01: Polinomios coeficientes de Lagrange usados para formar P 3(x) con nodos equiespaciados x k =-1+2k/3.
3.5.
Nodos de Chebyshev (Polinomios de Chebyshev) El método de interpolación mediante nodos de Chebyshev se define de la siguiente manera:
Donde: Tj(x) es un polinomio de Chebyshev de grado j Además: Cj es un coeficiente que multiplica al polinomio Tj(x) -Si j=0:
-Si j>0:
13
Si aproximamos f(x) por un polinomio interpolante de grado menor o igual a N = 3 en [-1,1], entonces los nodos de Chebyshev serían x(0) = cos(7π/8), x(1) = cos( 5π/8), x(2) = cos( 3π/8) y x(3) = cos(π /8), estos podrían ser valores tediosos al realizar los cálculos si se hace a mano, pero con una computadora y un algoritmo (que desarrollaremos más adelante) esto será más sencillo. Sustituyendo estos valores en el Método de interpolación de Chebyshev se tendrá: Tabla N°02: Polinomios coeficientes de Lagrange usados para formar P 3(x) con los nodos de Chebyshev x k = cos((7-2k)π/8).
IV.
EJEMPLO MATEMATICO Se conoce una función f(x)=e x que deseamos interpolar, con ayuda del Método de interpolación de Lagrange y método de los nodos de Chebyshev interpole esta función en grado n=3 para x=0.5 en el intervalo [-1,1] y compare cuál de ellos produce mejor aproximación.
14
V.
ALGORITMO COMPUTACIONAL
5.1 Análisis de datos -Datos de entrada:
n = grado del polinomio. [a,b] = intervalos de acción. Xint = valor que se quiere aproximar. Y(i) = puntos en la función real (i=0->n)
-Datos de salida
R=V(Xint) = valor aproximado de Xint usando nodos de Chebyshev.
5.2 Diagrama de flujo -Para generar los polinomios recursivos de Chebyshev:
T(n,x)
Switch (n) 0
1
default
r=1 r=x r=2*x*T(n-1,x)+T(n-2,x)
return(r)
15
- Para obtener la aproximación de un valor dado (Xint) INICIO
n , [ a , b ] , Xint
i=0->n ; i++
t=cos((2*i+1)*π/(2*n+2))
x[i]=((a-b)*t/2)+((a+b)/2)
y[i]
R=0
j=0->n ; j++
s=0 k=0->n ; k++
s=s+y[i]*T(j,x[k])
j=0
C=(1*s/(n+1))
C=(2*s/(n+1))
R=R+C*T(j,Xint)
R
FIN
5.3 Código en Matlab -Para generar los polinomios recursivos de Chebyshev: function r=cheby(n,x) switch(n) case 0 r=1; case 1 r=x; otherwise r=2*x*cheby(n-1,x)-cheby(n-2,x); end 16
-Para obtener los nodos: function nodos_Callback(hObject, eventdata, handles) pi=3.141592654; n=str2double(get(handles.a1,'string')); a=str2double(get(handles.a2,'string')); b=str2double(get(handles.a3,'string')); for(i=1:1:n+1) t=cos((2*(i-1)+1)*pi/(2*n+2)); x(i)=((a-b)*t/2)+(a+b)/2; end set(handles.c1,'string',x');
-Para obtener la aproximación de un valor dado (Xint) function chebyshev_Callback(hObject, eventdata, handles) pi=3.141592654; n=str2double(get(handles.a1,'string')); a=str2double(get(handles.a2,'string')); b=str2double(get(handles.a3,'string')); y=str2num(get(handles.a4,'string')); xint=str2double(get(handles.a5,'string')); for(i=1:1:n+1) t=cos((2*(i-1)+1)*pi/(2*n+2)); x(i)=((a-b)*t/2)+((a+b)/2); end R=0; for(j=1:1:n+1) s=0; for(k=1:1:n+1) s=s+y(k)*cheby((j-1),x(k)); end if(j==1) C=(1*s/(n+1)); else C=(2*s/(n+1)); end R=R+C*cheby((j-1),xint); end set(handles.b1,'string',R); 17
VI.
APLICACIÓN
6.1. Resolución manual Vamos a comparar los polinomios interpoladores de Lagrange de grado n=3 de la función f(x)= e x en el intervalo [-1,1], que se obtienen usando los polinomios coeficientes de la Tablas N°01y N°02 respectivamente (sección 3.4 y 3.5 del capítulo III). Usando nodos equiespaciados tenemos, obtenemos el polinomio P(x) = 0.99519577 + 0.99904923x + 0.54788486x 2 + 0.17615196x 3 Para ello hemos calculado los valores de la función en los nodos f(x0) = e(-1) = 0.36787944 f(x1) = e(-1/3) = 0.71653131 f(x2) = e(1/3) = 1.39561243 f(x3) = e(1) = 2.71828183 Y hemos usado lo polinomios coeficientes L 3,k (x) de la Tabla N°01 formando la combinación lineal P(x) = 0.36787944L3,0(x) + 0.71653131 L 3,1(x) + 1.39561243 L3,2(x) + 2.71828183 L3,3(x) De manera parecida, si usamos los nodos de Chebyshev, obtenemos V(x) = 0.99461532 + 0.99893323x + 0.54290072x 2 + 0.17517569x 3 Hagamos notar que los coeficientes son distintos de los de P(x); la razón es que hemos usado nodos y valores de la función diferentes: 18
f(x0) = e-0.92387953 = 0.39697597 f(x1) = e-0.38268343 = 0.68202877 f(x2) = e0.38268343 = 1.46621380 f(x3) = e0.92387953 = 2.51904417 Luego hemos usado el conjunto de polinomios coeficientes C k (x) que se muestran en la Tabla N°02 para formar la combinación lineal: V(x) = 0.39697597C0(x) + 0.68202877 C 1(x) + 1.46621380 C 2(x) + 2.571904417 C 3(x) Ya obtenidos los polinomios interpolantes en ambos casos, solo es cuestión de reemplazar el valor x=0.5 usando una calculadora y ver quien se aproxima mejor. -Solución “real”: f(x) = ex f(0.5) = e0.5 = 1.64872127
-Método de Lagrange: P(x) = 0.99519577 + 0.99904923x + 0.54788486x2 + 0.17615196x3 P(0.5) = 0.99519577+0.99904923(0.5)+0.54788486(0.5)2+0.17615196(0.5)3 P(0.5) = 1.65371059
-Metodo de Chebyshev: V(x) = 0.99461532+0.99893323x+0.54290072x2+0.17517569x3 19
V(0.5) = 0.99461532+0.99893323(0.5) + 0.54290072(0.5)2 + 0.17517569(0.5)3 V(0.5) = 1.65170407
Claramente podemos ver que usando los nodos de Chebyshev se obtiene una mejor aproximación a la función e0.5 de la que se podría obtener usando nodos equiespaciados.
6.2. Resolución usando un computador
Grado del polinomio interpolante: n=3
Tenemos el intervalo [-1,1] : [a,b] = [-1,1]
El valor a aproximar: x = 0.5
-Valor “real” f(0.5) = e0.5 = 1.64872127
-Método de Lagrange (Nodos equiespaciados)
20
-Método de Chebyshev (Nodos de Chebyshev)
6.3 Análisis del error Para comparar las precisiones de P(x) y V(x), veremos dos gráficas de los términos del error en las Figuras N°03 y N°04, respectivamente.
El error máximo |e x – P(x) | se alcanza en x = 0.75490129, entonces: |ex – P(x) | ≤ 0.00998481 para -1≤ x ≤ 1
21
Figura N°03. El término del error y = e x – P(x) de la aproximación de Lagrange con nodos equiespaciados en [-1,1]. Fuente: Jhon H. Mathews, K. D. (200). Métodos Numéricos con Matlab. Madrid: PRENTICE HALL.
El error máximo |e x – V(x) | se alcanza en x = 1 y nos queda: |ex – V(x) | ≤ 0.00665687 para -1 ≤ x ≤ 1.
Figura N°04. El término del error y = e x – v(x) de la aproximación de Lagrange con nodos de Chebyshev. Fuente: Jhon H. Mathews, K. D. (200). Métodos Numéricos con Matlab. Madrid: PRENTICE HALL.
Hagamos notar que el erro máximo de V(x) es como unos dos tercios del error máximo de P(x) y, también, que el error de V(x) está distribuido de forma más uniforme a lo largo del intervalo.
22
VII.
CONCLUSIONES
Logramos que el error máximo disminuya al crecer el grado del polinomio.
Se logró ver quien produce mejor aproximación comparando los polinomios interpolantes de Lagrange y los polinomios de Chebyshev. Al utilizar puntos de Chebyshev en la interpolación de Lagrange, el error se distribuye de manera más uniforme que con los puntos de igual separación.
VIII.
RECOMENDACIONES
Si hubiéramos usado otro polinomio que no sea Lagrange como el método de Maclaurin el error hubiera sido más vistoso, por eso que usamos el de Lagrange que es un mejor Interpolador.
Que los nodos al que nos referenciamos estaban inversos es por eso que si hubiéramos usado los ceros simples la gráfica hubiera sido distinta a la figura mostrada.
IX.
REFERENCIA BIBLIOGRAFICA Departamento de Matemáticas. (2008). Recuperado el 28 de
Junio de 2016, de Análisis Numérico Interpolación y aproximación polinomial: http://ciencias.udea.edu.co/programas/pregrado/CNM425/docs/clase5.pdf
Jhon H. Mathews, K. D. (200). Métodos Numéricos con Matlab. Madrid: PRENTICE HALL. Polinomios de Chebyshev. (s.f.). Recuperado el 5 de junio de 2015, de
http://sanzserna.org/pdf/568_Leccion1.pdf: http://sanzserna.org/pdf/568_Leccion1.pdf
23