DEPARTAMENTO DE MATEMÁTICA APLICADA Y ESTADÍSTICA GRADO EN INGENIERÍA MECÁNICA GRUPOS 2 y 3 MATEMÁTICAS I CUADERNO 2 DE PRÁCTICAS DE ORDENADOR CURSO 2013/14
Profesores : Pedro Luis Gómez Sáncez José J. Aparicio Pedreño
Método de Newton Se utiliza para resolver ecuaciones de una variable de la forma f x 0 siendo f una función derivable. Supongamos que tenemos una raíz de esta ecuación, es decir f 0. Entonces, en líneas generales, se puede construir una sucesión de puntos,x 1,x 2,...,x n,... de manera que su límite es la raíz. El punto puede elegirse con cierta libertad. Deben darse una serie de condiciones teóricas para que esto se verifique. Condiciones que suelen darse si se toman ciertas medidas de precaución. No obstante, no ay una total seguridad del método. Aún cumpliéndose dicas condiciones no está asegurada la convergencia. La precaución que debemos tener es básicamente que el punto inicial esté próximo a la raíz. Para cerciorarnos de ello podemos utilizar el Teorema de Bolzano (puede utilizarse porque f es continua), para encontrar un intervalo razonablemente pequeño en cuyos extremos f experimente variación de signo. Así: a) Hallaremos a b (cercanos entre sí) tales que f(a) y f(b) tengan signos contrarios. b) Después elegiremos en dico intervalo. c) Hallamos la intersección x 1,0 de la recta tangente en a dica curva con el eje OX. La siguiente igualdad nos proporciona el valor de x 1 : x 1 f f d) Hallamos la intersección x 2,0 de la recta tangente en x 1 a dica curva con el eje OX. Determinamos x 2. x 2 x 1 f x 1 f x 1 e) Hallamos la intersección x 3,0 de la recta tangente en x 2 a dica curva con el eje OX. Determinamos x 3. x 3 x 2 f x 2 f x 2... Y así sucesivamente. Para acer los cálculos, lo más cómodo es definir una función para realizar las iteraciones. Si escribimos: g x x f x f x tendremos que para cada n se tiene que x n g x n 1 Otra cuestión que puede condicionar la convergencia es que aya una raíz de f cerca de (o que el propio sea también raíz de f ). Esto ocasionaría que el denominador pudiera ser próximo a 0. Una gráfica de la función nos puede facilitar la visualización de esta cuestión y saber si estamos ante una de éstas situaciones. La gráfica sirve además para tener una aproximación visual de la raíz. Ejemplo 1 :
Obtengamos, de modo aproximado, la raíz de la ecuación x 3 3x 6 0 Las gráficas de la función f x x 3 3x 6 aplicando varios zoom sucesivos, para aproximarnos a la única raíz nos muestran que ésta se encuentra entre 1,4 y 1,2. Definimos la función g x x f x f x Así, si elegimos por ejemplo 1,4, tendremos: x 1 g 1,29369; x 2 g x 1 1,28793; x 3 g x 2 1,28791; x 4 g Y vemos que a partir de x 3 se mantienen fijos esos primeros cinco decimales que son los de la raíz. Esto nos dice que el valor aproximado de la raíz es 1,28791. El comando newton de Maxima: Dico comando sirve para calcular directamente la solución de una ecuación por el método de Newton. Se debe cargar primero el paquete newton1. Su formulación es: load(newton1) newton(f x,x,,e) donde es el valor inicial y e una cota de f que debemos conseguir para considerar como raíz aproximada de f(x). En nuestro ejemplo anterior pondríamos así : load(newton1) newton( x^3 3*x 6, x, -1.4, 0.001) {x - -1.28791} Y, como vemos, nos sale nuestra raíz. Nota : Esta raíz es la única de la ecuación, como consecuencia del Teorema de Rolle, teniendo en cuenta que la derivada de la función es 3x 2 3, que no se anula en ningún punto. Ejemplo 2.- Utilizando el método de Newton vamos a obtener la solución positiva de la ecuación 1 cosx e x : En primer lugar definimos x 1 cosx e x Las gráficas de x en intervalos cada vez más pequeños conteniendo a la raíz positiva, muestran que dica raíz está próxima a 0,5. Usamos el comando newton : newton((x), x, 0.5, 0.001) {x - 0.601367} que nos da el valor aproximado de la raíz. Como ya se cargó newton1 en el primer ejemplo, no es necesario volver a cargarlo en tanto no se reinicie el programa. Ejemplo 3
Utilizando el método de Newton vamos a obtener la mayor solución de la ecuación sin x e x : En primer lugar definimos i x sin x e x Las gráficas de i x en intervalos cada vez más pequeños conteniendo a la mayor raíz, muestran que dica raíz está próxima a 3.(entre -3,5 y -3). Usamos el comando newton: newton(i(x), x, -3, 0.0001) {x - -3.18306 que nos da el valor aproximado de la raíz. Ejercicio 1.- Obtén las raíces del polinomio x 3 5x 2 3x 6. Utilizando el método de Newton observa qué solución sale partiendo de: a) 7 b) 8 c) 5 Ejercicio 2.- Obtén las raíces del polinomio x 4 7x 2 3x 6. Utilizando el método de Newton observa qué solución sale partiendo de: a) 4 b) 0,5 c) 1 d) 5 Ejercicio 3.- Obtén las soluciones de la ecuación Sin x 2x Ejercicio 4.- Justifica que la ecuación Log x x tiene una única solución y determínala. Integración numérica Cuando solamente se conocen algunos valores particulares de una función f x, o cuando siendo ésta conocida, no se dispone de una primitiva expresada convenientemente, b se utilizan métodos numéricos para obtener un valor aproximado de la integral f x dx. a Supondremos dividido el intervalo a,b en n partes iguales de longitud b a n mediante los puntos a x 1 x 2... x n 1 x n b, y supondremos conocidos los valores y 0 f, y 1 f x 1,......, y n f x n. Regla de los trapecios compuesta a) Determinamos la función de interpolación lineal l x que cumple l y 0,
l x 1 y 1. Por pasar por los puntos,y 0, x 1,y 1,lagráficadel x es una recta de pendiente y 1 y 0 x 1. Por lo tanto es l x y 0 y 1 y 0 x 1 x. x 1 b) Calculamos l x dx : x 1 x 1 l x dx y 0 y 1 y 0 x 1 x dx y 2 0 y 1. x 1 Nota.- Si y 0, y 1 0, l x dx coincide con el área del trapecio rectángulo de bases paralelas al eje OY de longitudes y 0, y 1, y altura situada en el eje OX coincidente con el intervalo,x 1 de longitud. b c) Consideramos aora la integral f x dx que queremos aproximar. a x 1 x 2 x n f x dx f x dx... f x dx a b f x dx x 1 En cada una de las integrales sumandos reemplazamos f x por la función de interpolación lineal correspondiente a,y 0, x 1,y 1 en la primera, a x 1,y 1, x 2,y 2 en la segunda,..., a x n 1,y n 1, x n,y n en la última, obteniendo la suma y 2 0 y 1 y 2 1 y 2... y 2 n 1 y n 2 y 0 2y 1 2y 2... 2y n 1 y n x n 1 Nota.- Si f x 0, x a,b, el método de los trapecios consiste en aproximar el área bajo la curva por la suma de las áreas de los trapecios rectángulos con altura de longitud coincidente con el intervalo x i 1,x i del eje OX, con las dos bases paralelas al eje OY de longitudes y i 1, y i, y con lado oblicuo igual a la cuerda que une los puntos de la gráfica de coordenadas x i 1,y i1, x i,y i. 3 Ejemplo.- Aproximar 1 e x x dx con el método de los trapecios dividiendo el intervalo 1,3 : a) En 5 partes iguales. b) En 10 partes iguales. c) En 50 partes iguales. Comparar el resultado de cada apartado, con el que se obtiene con el comando integrate de Maxima. A continuación se reproducen las sentencias utilizadas para resolver el apartado b) del ejemplo. Notar que para los demás apartados basta cambiar en la línea primera el valor de n y activar a continuación todas las demás. Para cualquier otro ejemplo o ejercicio, será suficiente con modificar las líneas en las que se introducen los valores de n, a, b, f x y activar las demás instrucciones. %i1n:10 %i2a:1
%i3b:3 % i4 A : makelist(2, i, 1, n 1) % i5 f(x): exp(x)/x % i6 p: makelist(a i*((b-a)/n), i, 0, n) % i7 q: makelist(f(p[i]), i, 1, n 1) %i8:(b-a)/n % i9 T: float((/2)*(a.q) - q[1] - q[n 1]) % oi10 8.053574483704775 % i10 quad_qag(exp(x)/x,x,1,3,1) % o10 [8.038714754269481,4.0464859492404957*10^-9,15,0] Siendo quad_qag un comando para integración numérica en Maxima. El 1 que se coloca detrás de los extremos 1, 3, del intervalo de la integral es una opción elegida desde el 1 al 6 según el método numérico de cuadratura empleado. De los 4 números que aparecen ene el resultado, el primero es el valor aproximado de la integral (comparar con T), el segundo es el error absoluto estimado de la integración, el tercero el número de evaluaciones del integrando, y el cuarto, un código de error que puede valer l 0, 1, 2, 3, 6. Cuando el valor es 0, significa que no a abido ningún problema en el proceso. 2 Ejercicio.- Aproximar x 3 1.dx con el método de los trapecios dividiendo el 1 intervalo 1,2 : a) En 8 partes iguales. b) En 15 partes iguales. c) En 30 partes iguales. Comparar el resultado de cada apartado, con el que se obtiene con el comando integrate (o quad_qag si fuera necesario) de Maxima. Regla de Simpson compuesta a) Determinaremos la función de interpolación cuadrática c x que cumple c y 0, c x 1 y 1, c x 2 y 2. c x puede expresarse en la forma: c x x x x x 1 para ciertos números reales,,, por ser 1, x, x x x 1 una base del espacio vectorial real P 2 de los polinomios con coeficientes reales de grado menor o igual que dos. Determinemos, y : c y 0 c x 1 x 1 y 1 y 1 y 0 x 1 y 1 y 0 c x 2 y 0 y 1 y 0 x 2 x 2 x 2 x 1 y 2 y 2 y 0 y 1 y 0.Yasíes: 2 2 y 2 2y 1 y 0 2 2 c x y 0 y 1 y 0 x y 2 2y 1 y 0 2 2 x x x 1.2.2 2 b) Calculemos x 2 c x.dx. Hacemos el cambio de variables x u x 1. Tendremos entonces:
x 2 c x.dx c u x 1.du y 2 2y 1 y 0 2 2 u 3 3 u2 2 3 y 0 4y 1 y 2 y 0 y 1 y 0 u y 2 2y 1 y 0 u u du y 2 2 0 b c) Supondremos que nespar,ysea f x dx la integral que queremos aproximar. a b x 2 x 4 x n f x dx f x dx f x dx... f x dx. En cada una de las integrales sumando, a x 2 x n 2 reemplazamos f x por la función de interpolación cuadrática correspondiente a los puntos,y 0, x 1,y 1, x 2,y 2 en la primera, a x 2,y 2, x 3,y 3, x 4,y 4 en la segunda,..., a x n 2,y n 2, x n 1,y n 1, x n,y n en la última. Obteniendo así la suma: y 3 0 4y 1 y 2 y 3 2 4y 3 y 4... y 3 n 2 4y n 1 y n y 3 0 4y 1 2y 2 4y 4y 5 2y 6... 2y n 2 4y n 1 y n E 4I 2P 3 donde E representa la suma de los valores extremos, I representa la suma de los valores de índice impar (que son los valores de lugar par por ser 0 el primer subíndice), y P representa la suma de los valores de índice par (que son los valores de lugar impar ). 3 Ejemplo.- Aproximar 1 e x x dx con el método de Simpson dividiendo el intervalo 1,3 : a) En 10 partes iguales. b) En 50 partes iguales. Comparar el resultado de cada apartado, con el que se obtiene con el comando quad_qag de Maxima (ver ejemplo anterior). A continuación se reproducen las sentencias utilizadas para resolver el apartado a) del ejemplo. Notar que para el apartado b) basta cambiar en la línea primera el valor de n y activar a continuación todas las demás. Para cualquier otro ejemplo o ejercicio, será suficiente con modificar las líneas en las que se introducen los valores de n, a, b, f x y activar las demás instrucciones. %i1n:10 %i2a:1 % i3 :b: 3 % i4 A: makelist((-1)^i 3, i, 1, n 1) % o4 {2, 4, 2, 4, 2, 4, 2, 4, 2, 4, 2} % i5 f(x): exp(x)/x % i6 p: makelist(a i*((b-a)/n), i, 0, n) % o6 {1, 6/5, 7/5, 8/5, 9/5, 2, 11/5, 12/5, 13/5, 14/5, 3} % i7 q: makelist(f(p[i]]), i, 1, n 1) %i8 (b-a)/n % o8 (1/5) % i9 S: float((/3)*(a.q - q[1] - q[n 1])) % o9 8.038785083553591 % i10 quad_qag(exp(x)/x,x,1,3,1)
% 10 [8.038714754269481,4.0464859492404957*10^-9,15,0] 2 Ejercicio.- Aproximar x 3 1.dx con el método de Simpson dividiendo el intervalo 1 1,2 : a) En 10 partes iguales. b) En 50 partes iguales. Comparar el resultado de cada apartado, con el que se obtiene con el comando quad_qag de Maxima. Polinomio de interpolación de Lagrange Denominamos interpolación a la obtención de nuevos puntos partiendo del conocimiento de un conjunto finito de puntos. En algunas ciencias es frecuente disponer de un cierto número de puntos obtenidos por muestreo o a partir de un experimento y pretender construir una función que los ajuste. Otro problema estrecamente ligado con el de la interpolación es la aproximación de una función complicada por una más simple. Si tenemos una función cuyo cálculo resulta costoso, podemos partir de un cierto número de sus valores e interpolar dicos datos construyendo una función más simple. En general, por supuesto, no obtendremos los mismos valores evaluando la función obtenida que si evaluásemos la función original, si bien dependiendo de las características del problema y del método de interpolación usado la ganancia en eficiencia puede compensar el error cometido. En todo caso, se trata de, a partir de n 1 puntos x k,y k, obtener una función f que verifique f x k y k para k 0,1,...,n. Dentro de las formas de interpolación que se utilizan con frecuencia una de ellas es la interpolación polinómica. Se trata de que la función interpoladora anterior, f, sea un polinomio (que pase por los puntos dados). Y de entre ellas aquí vamos a ver la interpolación de Lagrange. El polinomio interpolador de Lagrange, L, que pasa por n 1 puntos dados, tiene grado menor o igual que n, y se construye del siguiente modo: A partir de los polinomios de Lagrange L k x para k 0,1,...,n definidos por: x x x 1... x x k 1 x x k 1... x x n x k x k x 1... x k x k 1 x k x k 1... x k x n L k x construimos el polinomio interpolador L x determinado por la igualdad: L x y 0 L 0 x y 1 L 1 x y k L k x... y n L n x. Como los polinomios de Lagrange cumplen la condición L k x j 1sik j, y0en caso contrario, el polinomio interpolador L x verifica: L x k y k para k 0,1,2,...,n. Ejemplo a.- Hallemos el polinomio interpolador para los puntos P 0 0,0, P 1 1,1,P 2 3,2 Definimos los polinomios de Lagrange:
La 0 x : x 1 x 3 0 1 0 3 ; La 1 x : x 0 x 3 1 0 1 3 ; La 2 x : x 0 x 1 3 0 3 1 y finalmente el polinomio interpolador de Lagrange: La x : o La 0 x 1 La 1 x 2 La 2 x. Para desarrollarlo y simplificarlo escribimos: ratsimp(la(x)) obteniendo: x2 7x. 6 (ratsimp es para simplificar expresiones racionales. Con fullratsimp la simplificación es a veces más eficaz, pero a costa de más tiempo). Aora comprobamos que el polinomio es el que buscábamos. Escribimos: La(0); La(1); La(3); obteniendo: 0 1 2 que son los valores esperados. Ejemplo b.- Hallemos el polinomio interpolador para los puntos (0, 2), (1, 1) y (2, 0) Definimos los polinomios de Lagrange: Lb 0 x : x 1 x 2 ; Lb 0 1 0 2 1 x : x 0 x 2 ; Lb 1 0 1 2 2 x : x 0 x 1 2 0 2 1 y finalmente el polinomio interpolador de Lagrange: Lb x : 2 Lb 0 x 1 Lb 1 x 0 Lb 2 x. Para desarrollarlo y simplificarlo escribimos: ratsimp(lb(x)) obteniendo: 2 x. En este caso el polinomio es de grado menor que dos por estar los tres puntos alineados. Aora comprobamos que el polinomio es el que buscábamos. Escribimos: Lb(0); Lb(1); Lb(2); obteniendo: 2, 1, 0 como esperábamos. Ejemplo c.- Hallemos el polinomio interpolador para los puntos (1, -3), (3, -1), (-2, 0) y (4, 2). Definimos los polinomios de Lagrange: Lc 0 x : x 3 x 2 x 4 ; Lc 1 3 1 2 1 4 1 x : x 1 x 2 x 4 ; Lc 3 1 3 2 3 4 2 x : Lc3 x : x 1 x 3 x 2 4 1 4 3 4 2 Y finalmente el polinomio interpolador de Lagrange Lc x 3 Lc0 x Lc1 x 0 Lc2 x 2 Lc3 x ratsimp(lc(x)) obteniendo 2x3 14x 2 37x 114 45. x 1 x 3 x 4 2 1 2 3 2 4 ;
Lc(1) Lc(3) Lc(-2) Lc(4) Resultando: -3, -1,0,2 Como vemos el polinomio cumple con lo previsto, pasa por los 4 puntos dados (1, -3), (3, -1), (-2, 0) y (4, 2). Ejemplo d.- Hallemos el polinomio interpolador de la función f x x3 x 2 6 que pasa por los puntos 1 x 2 (-1, f(-1)), (0, f(0)), (1, f(1)), (2, f(2)), es decir, (-1, 2), (0, 6), (1, 3), (2, 2). Definimos los polinomios de Lagrange: Ld 0 x : x 0 x 1 x 2 1 0 1 1 1 2 ; Ld3 x : x 1 x 0 x 1 2 1 2 0 2 1 Ld 1 x : x 1 x 1 x 2 0 1 0 1 0 2 ; Ld 2 x : x 1 x 0 x 2 1 1 1 0 1 2 Y finalmente el polinomio interpolador de Lagrange: Ld x 2 Ld0 x 6 Ld1 x 3 Ld2 x 2 Ld3 x. Escribimos: ratsimp(ld(x)) Y obtenemos: 3x 3 7x 2 2x 12 2 Ld(-1) Ld(0) Ld(1) Ld(2) Resultando: 2, 6, 3, 2. Como vemos el polinomio cumple con lo previsto, pasa por los 4 puntos dados, (-1, 2), (0, 6), (1, 3), (2, 2). Ejercicio 1 Calcular el polinomio interpolador de Lagrange que pasa por los puntos (3, 1), (2, 3), (-1, 2), (-2, 0). Ejercicio 2 Calcular el polinomio interpolador de Lagrange que pasa por los puntos (1, 1), (2, 2), (3, 3), (-2, 0), (4, 1). Ejercicio 3 Calcular el polinomio interpolador de Lagrange que pasa por los puntos (3, f(3)), (-2, f(-2)), (-1, f(-1)), (0, f(0)), donde f(x) e x. Ejercicio 4 Se sabe que una función f pasa por los puntos (0, 5), (3, -2), (1, -1), (4, 0). Utilizar el polinomio interpolador de Lagrange que pasa por dicos puntos para estimar el valor de la
función en x 2. Ejercicio 5 Utilizar el polinomio interpolador de Lagrange que pasa por los puntos (3, f(3)), (6, f(2)), (-1, f(-1)), (1, f(1)), donde f (x) 3x2 para estimar el valor f(4). Comparar el valor x 10 de la aproximación con el valor real.