Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Miguel Alemn Flores, Luis Alvarez Len y Javier Snchez Prez Departamento de Informtica y Sistemas Universidad de Las Palmas Campus de Tara 35017 Las Palmas, Espaa T: 45.87.10/08 Email: {maleman/lalvarez/jsanchez}@dis.ulpgc.es
Contents 1 INTRODUCCION. 1
2 ARITMETICAS DE PRECISION FINITA Y FUENTES DE ERRORES NUMERICOS. 1 3 CALCULO DE CEROS DE UNA FUNCION 4 4 INTERPOLACION DE FUNCIONES I 5 ANALISIS NUMERICO MATRICIAL I 6 DIFERENCIACION NUMERICA E INTEGRACION 14 23 36 6 9
prisas de ltima hora que suelen asaltar a los estudiantes cuando se acercan los exmenes, puesto que el esfuerzo de reexin que requieren precisa de un trabajo diario y continuado, difcilmente compatible con las prisas de ltima hora. Resulta inquietante observar como en muchas ocasiones la realizacin de problemas se aborda bajo un espritu de aprender rpidamente 4 tcnicas bsicas, que muchas veces ni se entienden, y a partir de ah intentar reproducir esas tcnicas, de forma absolutamente mecnica, en problemas anlogos. El problema de esta actitud, es que aunque a corto plazo puede dar lugar a resultados positivos, aprobando asignaturas con un conocimiento mnimo e insuciente, a la larga, tiene efectos catastrcos sobre la formacin del alumno, a travs de una disminucin importante de la capacidad de razonamiento y del sentido crtico.
ARITMETICAS DE PRECISION FINITA Y FUENTES DE ERRORES NUMERICOS. Problema 1 Demostrar que al representar el nmero real 0.1 como X an 0.1 = 2e 2n n=1
El presente documento es el libro de problemas donde se encuentran resueltos todos los problemas presentes en el libro de Mtodos Numricos publicado por los mismos autores. Nunca se insistir lo suciente sobre la necesidad de hacer problemas para comprender correctamente cualquier teora y sus aplicaciones. Adems la manera de afrontar el estudio de los problemas debe ser bien distinta a la forma de estudiar teora. Primero se debe intentar hacer los problemas sin mirar en absoluto la solucin y despus de reexionar e intentar resolverlo de diferentes formas, muchas de las cuales nos llevarn a callejones sin salida, se mirar la solucin. Es un hecho fcilmente constatable, que se aprende mucho ms de un problema que no se ha conseguido resolver, pero al que se ha dedicado suciente esfuerzo, que de un problema del cual se mira directamente la solucin sin ninguna fase de reexin previa. Adems se tiende a olvidar con facilidad la tcnica de resolucin de un problema sobre el cual no se ha reexionado sucientemente. De todo ello se deduce que el estudio correcto de los problemas de una asignatura va reido con las
1
Solucin: Supongamos que para algn t nito y e entero se tiene: t X an e 0.1 = 2 2n n=1 despejando en esta igualdad obtenemos 2
te t X
= 10
an 2tn
n=1
P tn ahora bien, como el nmero m = t es entero, n=1 an 2 de la desigualdad anterior obtenemos 2te = 5 2m pero esta igualdad implica que el nmero 2te es divisible por 5 lo cual es imposible.
Problema 2 Representar el nmero 0.0 703 125 como 0.0 703 125 = 2e
X an 2n n=1
Solucin: En primer lugar tenemos que encontrar un entero e tal que 1 0.0 703 125 2e < 1 2 para e = 3 obtenemos 0.0 703 125 2 = 0. 562 5 ahora tenemos que escribir el nmero 0.5625 como 0.5625 = 1 X an + 2 n=2 2n
3
los valores negativos son los mismos cambiados de signo. Simplicando las fracciones nos queda e = 1 e=0 e=1 e=2 0.25, 0.3125, 0.375, 0.437 5 0.5, 0.625, 0.75, 0.875 1, 1.25, 1.5, 1.75 2, 2.5, 3, 3.5
los an se calculan de la siguiente forma 1 1 + 2 = 0.75 a2 = 0 2 2 1 1 0.5625 < + 3 = 0.625 a3 = 0 2 2 1 1 0.5625 = + 4 = 0.5625 a4 = 1 2 2 0.5625 < por tanto 0.0 703 125 = 23 1 1 + 2 24
2 1 0 -1 -2 0 1 2 3
en trminos binarios, este numero se escribira con e = 3 y la mantisa viene dada por la secuencia 1, 0, 0, 1, 0, 0, .... (si no almacenamos el primer trmino a1 porque siempre es 1, la mantisa sera 0, 0, 1, 0, 0, ....) Problema 3 (1 puntos) Calcular los valores positivos mnimo y mximo que puede tomar un nmero real en una aritmtica de precisin nita en funcin de t, emin y emax . Solucin: Los valores positivos mnimo y mximo son xmin = 2emin 1 xmax = 2emax
t X 1 = 2emax n 2 n=1 1 2
Problema 5 Dada una aritmtica de precisin nita cualquiera, calcular la distancia que hay entre el nmero 1 y su inmediato superior (es decir el nmero que va despus de 1), y la distancia entre el nmero 1, y su inmediato inferior. Solucin: El nmero 1 en una aritmtica de precisin nita se escribe como 1 1=2 2 el nmero inmediato superior a 1 en la aritmtica es 1 1 1 = 1 + t1 + 2 2 2t 2 y el nmero inmediato inferior a 1 viene dado por 1 1 + .. + t = 2 2
1 2
1 2t+1 1 2
1 emax =2 1 t 2
Problema 4 Calcular todos los nmeros reales que se pueden construir tomando 5 bits de la forma siguiente: 1 bit para el signo, 2 bits para la mantisa (es decir t = 3, puesto que a1 = 1 slo se almacenan a2 y a3 , y 2 bits para el exponente e, tomando como rango de e = 1, 0, 1, 2. Representar dichos nmeros sobre una recta.
2t1 1 +1 =1 t 1 2 1 2
Problema 6 Se considera una aritmtica de 16 bits donde se dedican 1 bit al signo, 9 bits a la mantisa (t = 10) y 6 bits al exponente ( emin = 30 emax = 31). Escribir, si es posible, los siguientes nmeros en esta aritmtica: 1. 2, y los nmeros ms cercanos a 2 por arriba y por debajo. Solucin: 1 2 2=2 2 1 1 2 Si guiente = 2 + 2 210 10 ! 1 1 X 1 2 211 Anterior = 2 = 2 1 2i 2 i=1 2. El cero, el innito y Na. Solucin: 1 31 0=2 2 1 = 232 2 1 1 32 N aN = 2 + 2 22 3. Los nmeros positivos ms grande y ms pequeo de la aritmtica (teniendo en cuenta las excepciones) Solucin: 10 ! 1 1 X 1 31 31 2 211 = 2 M ayor = 2 1 2i 2 i=1 1 M enor = 231 210 4. Solucin: No se puede escribir de forma exacta. Si suponemos t ! t ! X ai X ai 1 = 1 = 9 2e = = 2e i 9 2 2i i=1 i=1 t ! X te 2 ti 2 =3 ai 2 = 2te = 32 m
i=1 1 9.
B + A = 23
1
2
1 23
1 24
+
1 25
1. B A = 22
Problema 8 Sean emin , emax , los valores mnimo y mximo del exponente e. Demostrar que si emin < e < emax , entonces los nmeros: t ! X an 1 e t 2 2n 2 n=1 pertenecen al conjunto A de nmeros reales generados por la aritmtica de precisin nita. Solucin: Que los nmeros pertenecen a la aritmtica signica que existe un conjunto de valores binarios a0 i y un entero e0 tal que t ! t X an X 1 a0 n e e0 = 2 2 n t n 2 2 2 n=1 n=1 Consideremos primero el caso de sumar 1/2t . Si ak = 1 para todo k, entonces t ! X 1 1 1 e + t = 2e+1 2 n 2 2 2 n=1 Si por el contrario existe un k0 tal que ak0 = 0, y tal que ak = 1 para todo k0 < k t entonces basta tomar a0 k = ak 0 si 1 k < k0 , a0 = 1 y a = 0 si k < k t 0 k0 k Consideremos ahora el caso de restar 1/2t . Si el nico elemento ak distinto de 0 es a1 , entonces 2
e
1
2
1 23
1 24
1 1 2 2t
= 2e1
t X 1 n 2 n=1
Si por el contrario existe un k0 > 1 tal que ak0 = 1, y tal que ak = 0 para todo k0 < k t entonces basta tomar 0 0 a0 k = ak si 1 k < k0 , ak0 = 0 y ak = 1 si k0 < k t. P an Problema 9 Dado un nmero z e = 2e t n=1 2n , en una aritmtica de precisin nita. Calcular el nmero inmediatamente inferior y superior a l en dicha aritmtica. Solucin: Si el nmero es de la forma z e = 2e 1 2
donde m es un nmero entero. Ahora bien esta igualdad es imposible porque resultara que 3 divide a 2. 1 5. 2 1 2 210 . Solucin: 1 1 1 0 1 2 1 2 210 = 2 2 + 22 + 23 +
1 25
1 26
+
1 25
1 27
+ B
1 28
+ =
1 29
Solucin:
y el inmediato inferior es
z e + 2e
1 2t
2e1
t X 1 n 2 n=1
para cualquier otro nmero z e, el inmediato superior e inferior son 1 z e 2e t 2 Problema 10 (1 puntos) Calcular las races del polinomio P (x) = x2 2x + 0.01 evitando los errores de cancelacin. Solucin: 4 0.04 x1 = = 1.995 2 0.01 x2 = 1.995 2+
CALCULO DE CEROS DE UNA FUNCION Problema 12 Calcular 2 iteraciones del algoritmo de la biseccin para buscar un cero de la funcin f (x) = x2 2 en el intervalo [2, 0] Solucin: 0 + (2) = 1 2 f (2) > 0, f (0) < 0, f (1) < 0 N uevo Intervalo = [2, 1] x= x=
Problema 11 Escribir el pseudocdigo para implementar el clculo de las races reales de ax2 +bx+c = 0 evitando los errores de cancelacin y teniendo en cuenta las diferentes opciones que aparecen cuando a 6= 0 y a = 0. Solucin: Algoritmo Calculo raiz polinomio ax2 + bx + c = 0 variables reales a,b,c leer(a,b,c) si (a==0 ) entonces si (b==0 ) entonces PRINT EL POLINOMIO ES CONSTANTE parar nsi PRINT EL POLINOMIO ES DE GRADO 1. PRINT LA RAIZ ES ,c/b parar nsi d=b*b-4*a*c si (d< 0 ) entonces PRINT EL POLINOMIO NO TIENE RAICES REALES parar nsi si (b> 0) entonces x1=(-b-SQRT(d))/(2*a) adems x1=(-b+SQRT(d)/(2*a) nsi x2=c/(x1*a) PRINT *,LAS RAICES SON: ,x1,x2 n algoritmo
1 + (2) = 1.5 2 f (2) > 0, f (1) < 0, f (1.5) > 0 N uevo Intervalo = [1.5, 1]
Problema 13 Escribir el pseudocdigo del algoritmo el mtodo de la biseccin Solucin: Algoritmo: Mtodo de la biseccin variables reales x,a,b,tol leer(a,b,tol) si (a> b) entonces PRINT INTERVALO INCORRECTO parar nsi si (F(a)*F(b)> 0) entonces PRINT NO HAY CAMBIO DE SIGNO EN EL INTERVALO parar nsi mientras (F(x)!=0 Y (b-a)>tol) x=(a+b)/2 si((F(a)*F(x))<0) entonces b=x adems A=X nsi n mientras _PRINT LA RAIZ ES x n algoritmo real F(real x) real a cos(x) + x x 6 devolver a n funcin
Problema 14 Calcular 2 iteraciones del algoritmo de la regula-falsi para buscar un cero de la funcin f (x) = x2 2 en el intervalo [0, 2]
4
Solucin: 2 f (0) = 1 f (2) f (0) f (2) > 0, f (0) < 0, f (1) < 0 N uevo Intervalo = [1, 2] 4 1 f (1) = x=1 f (2) f (1) 3 4 f (2) > 0, f (1) < 0, f ( ) < 0 3 4 N uevo Intervalo = [ , 2] 3 x=0 Problema 15 Escribir el pseudocdigo del algoritmo del mtodo de la Regula-falsi Solucin: Algoritmo: Mtodo de la Regula-falsi variables reales x,a,b,tol leer(a,b,tol) si (a> b) entonces PRINT INTERVALO INCORRECTO parar nsi si (F(a)*F(b)> 0) entonces PRINT NO HAY CAMBIO DE SIGNO EN EL INTERVALO parar nsi mientras (F(x)!=0 Y (b-a)>tol) x=a-F(a)*(b-a)/(F(b)-F(a)) si((F(a)*F(x))<0) entonces b=x adems a=x nsi n mientras _PRINT LA RAIZ ES x n algoritmo
Solucin: x1 = 1
2(3) 10
=3
Problema 18 Escribir pseudocdigo del algoritmo del mtodo de la Secante utilizando reales de doble precisin. Los datos de entrada son las aproximaciones iniciales x0, y x1, El nmero mximo de iteraciones N max, y la tolerancia T OL para determinar la igualdad de dos nmeros. Solucin: Algoritmo: Mtodo de la secante variables reales x0,x1,x2,tol variable entera Nmax leer(a,b,tol,Nmax) si (x0==x1) entonces PRINT LAS DOS APROXIMACIONES INICIALES COINCIDEN parar nsi para k 1 hasta Nmax hacer si(ABS(x1-x0)< tol) entonces PRINT *,LA RAIZ DE LA FUNCION ES: ,x1 parar nsi si(F(x1)==F(x0)) entonces PRINT *,METODO NO CONVERGE parar nsi x2=x1-F(x1)*(x1-x0)/(F(x1)-F(x0)) x0=x1 x1=x2 n para PRINT *,NUMERO MAXIMO DE ITERACIONES EXCEDIDO n algoritmo Problema 19 Calcular una iteracin del mtodo de Muller para calcular un cero de la funcin f (x) = x3 3 partiendo de x0 = 1 (Calculando las derivadas de la funcin de forma exacta) y quedndonos con la raz ms cercana a x0 . Solucin:
Problema 16 Calcular una iteracin del mtodo de Newton-Raphson para calcular un cero de la funcin f (x) = x3 3 partiendo de x0 = 1. Solucin: x1 = 1 2 5 = 3 3
Problema 17 (1 punto Calcular una iteracin del mtodo de la secante para calcular un cero de la funcin f (x) = x3 3 partiendo de x0 = 0, x1 = 1
Problema 20 Dado el polinomio P (x) = 2x3 +3x2 +4x + 5. Evaluar el polinomio y su derivada en el punto x = 2, utilizando el algoritmo de Horner
5
Solucin:
Solucin: P 0 (x) = 6x2 + 6x 12 P (x) = ((2x + 3)x + 4)x + 5 P (2) = ((7)2 + 4)2 + 5 P (2) = (18)2 + 5 = 41 P 0 (x) = (2x + 7)x + 18 P 0 (2) = (4 + 7)2 + 18 = 40 ra ces x = 1, 2
Intervalo Inicial [7, 7] P (7) = 454 P (2) = 21 P (1) = 6 P (7) = 750. Intervalos donde estn las races: [-7,-2] [-2,1] [1,7]
Problema 21 Calcular el nmero mximo de races positivas y negativas del polinomio x5 35x3 + 30x2 + 124x 120, y localizarlas en un intervalo. Solucin: Teniendo en cuenta que 1+ maxk=0,..,n1 | ak | = 125 | an |
INTERPOLACION DE FUNCIONES I Problema 24 Calcular el polinomio interpolador de Lagrange P3 (x) de la funcin f (x) = sen(x) en los puntos 3 0, 2, y 2 . Solucin: Puesto que sen(0) = sen( ) = 0 slo necesitamos los polinomios base de Lagrange centrados en 2 y 3 . 2 x (x ) x 32 3 (x) = P 2 2 2 2 2 x (x ) x 2 3 (x) = P 32 3 3 2 2 2 2 Por tanto el polinomio interpolador es
(x) P (x) = P (x) P 32 2
las races del polinomio estn en el intervalo [125, 125]. Para calcular el nmero mximo de races positivas miramos los cambios de signo de los coecientes, en este caso los signos son: +++ por tanto el nmero de races positivas es 1 3. Para estimar el nmero de races negativas cambiamos x por x y miramos los signos de los coecientes que en este caso son: ++ por tanto el nmero de races negativas son 0 2. Problema 22 Aislar en intervalos las races del polinomio P (x) = 20x3 45x2 + 30x 1. Solucin: Teniendo en cuenta que en este caso 1+ maxk=0,..,n1 | ak | 45 65 =1+ = | an | 20 20
Problema 25 Calcular la expresin del error interpolacin al aproximar la funcin f (x) = sen(x) en el in3 tervalo [0, 2] interpolando en los puntos 0, 2 , , 2 . y acotarlo superiormente. Solucin: El error de interpolacin viene dada por la expresin: sen( ) 3 f (x) PN (x) = x x (x ) x 4! 2 2 el valor mximo del sen( ) es 1. Por otro lado el valor donde alcanza el mximo el polinomio del error en [0, 2 ] es x = 2, por tanto la cota del error que obtenemos es 1 3 |f (x) PN (x)| 2 2 (2 ) 2 4! 2 2
65 todas las races estn en el intervalo [ 65 20 , 20 ]. Para aislar las races calculamos los ceros de la derivada P 0 (x) = 60x2 90x + 30, dichas races son 1 y 1/2. Por otro lado tenemos
P (
Problema 23 Aislar en intervalos las races del polinomio P (x) = 2x3 + 3x2 12x + 1
6
Problema 26 Calcular el error mximo de interpolacin en el intervalo [0, 1] al interpolar la funcin cos(x) en los puntos dados por los polinomios de Chebyshev tomando N = 5.
en nuestro caso como N = 5 y la derivada sexta de cos(x) es cos(x) cuyo mximo en valor absoluto es 1, obtenemos 6 1 1 = 6. 78 107 | f (x) PN (x) | 6!25 2
10 Problema 27 Interpolar la funcin f (x) = x2 +1 en los puntos x0 = 2, x1 = 1, x2 = 1, x3 = 2 utilizando las diferencias de Newton y evaluar el polinomio en x = 0 utilizando el algoritmo de Horner.
Solucin: Segn las frmulas vistas en teora el error viene dado por la expresin: maxx[a,b] f N +1) ( ) b a N +1 | f (x) PN (x) | (N + 1)!2N 2
Problema 29 Calcular el polinomio interpolador de Lagrange P3 (x) de la funcin f (x) = 2x en los puntos 0, 1, 3, 4 utilizando las diferencias divididas de Newton. Expresar el polinomio tomando en primer lugar x0 = 0, x1 = 1, x2 = 3 y x3 = 4, y en segundo lugar x0 = 4, x1 = 3, x2 = 1, y x3 = 0. Solucin: En el primer caso, las diferencias divididas son f [x0 ] = 1, f [x1 ] = 2, f [x2 ] = 8, f [x3 ] = 16. f [x0 , x1 ] = 1 f [x1 , x2 ] = 3 f [x2 , x3 ] = 8 2 f [x0 , x1 , x2 ] = 3 5 f [x1 , x2 , x3 ] = 3 1 f [x0 , x1 , x2 , x3 ] = 4 y el polinomio interpolador es:
Solucin: 2 2 -1 5 15 22
3 -1 0 -1 -3 0
2 1 P (x) = 1 + x + x(x 1) + x(x 1)(x 3) 3 4 Si tomamos ahora los puntos en orden inverso: f [x0 ] = 16, f [x1 ] = 8, f [x2 ] = 2, f [x3 ] = 1. f [x0 , x1 ] = 8 f [x1 , x2 ] = 3 f [x2 , x3 ] = 1 5 f [x0 , x1 , x2 ] = 3 2 f [x1 , x2 , x3 ] = 3 1 f [x0 , x1 , x2 , x3 ] = 4 El polinomio interpolador es: 5 1 P (x) = 16+8(x 4)+ (x 4)(x 3)+ (x 4)(x 3)(x 1) 3 4 como puede observarse, al cambiar el orden de los puntos de interpolacin, el polinomio de Lagrange expresado a travs de las diferencias divididas cambia totalmente, salvo el ltimo coeciente 1 4 que es el mismo en mbos casos pues como se haba demostrado en teora el valor de f [x0 , x1 , x2 , x3 ] no depende del orden en que se toman los puntos de interpolacin. Problema 30 Dada una funcin f (x), y una secuencia de valores xn , aproximar f (x) por la parbola que pasa por los puntos (xn1 , f (xn1 )) , (xn2 , f (xn2 )) y (xn3 , f (xn3 )), calcular posteriormente las derivadas del polinomio, y comprobar que coinciden con las frmulas dadas en el mtodo de Muller para el clculo de las derivadas f 00 (xn1 ) y f 0 (xn1 ).
7
P (x) = 2 + 3(x + 2) 1(x + 2)(x + 1) + 0(x + 2)(x + 1)(x 1) = (1(x + 1) + 3)(x + 2) + 2 P (0) = (1(0 + 1) + 3)(0 + 2) + 2 = 6 Nota: Quitar parntesis en P(x) y aplicar Horner sobre el polinomio resultante no es lo que pide el problema y por lo tanto est mal Problema 28 Calcular el polinomio interpolador de Lagrange P3 (x) de la funcin f (x) = sen(x) en los puntos 3 0, 2 , y 2 utilizando las diferencias divididas de Newton. Solucin: Las diferencias divididas son: f [0] = 0, f [ 2] = 1, f [] = 0, f [ 32 ] = 1, f [0, 2 ]= 2
Solucin: Si utilizamos las diferencias divididas para interpolar obtenemos f [xn1 ] = f (xn1 ) f (xn1 ) f (xn2 ) xn1 xn2 f (xn2 ) f (xn3 ) f [xn2 , xn3 ] = xn2 xn3 f [xn1 , xn2 ] f [xn2 , xn3 ] f [xn1 , xn2 , xn3 ] = xn1 xn3 f [xn1 , xn2 ] = El polinomio interpolador es P (x) = f (xn1 ) + f [xn1 , xn2 ](x xn1 )+ f [xn1 , xn2 , xn3 ](x xn1 )(x xn2 ) por tanto P (xn1 ) = 2f [xn1 , xn2 , xn3 ] P 0 (xn1 ) = f [xn1 , xn2 ] + f [xn1 , xn2 , xn3 ](xn1 xn2 ) que corresponde a las frmulas utilizadas por el mtodo de Muller. Problema 31 Aproximar la funcin sen(x) en el intervalo [0, 4 ] utilizando el desarrollo de Taylor, y calcular el valor de n a partir del cual la aproximacin es la mejor posible dentro de una aritmtica de 32 bits. Solucin: El desarrollo de Taylor en 0 del sen(x) viene dado por: sen(x) u Pn (x) = x x x x + + .... + (1)n 3! 5! (2n + 1)!
3 5 2n+1 00
Problema 32 Demostrar que utilizando relaciones trigonomtricas es posible calcular las funciones sen(x) y cos(x) para cualquier x (en radianes), utilizando nicamente su valor en el intervalo [0, 8 ]. Solucin: En teora se demostr como se pueden denir el sen(x) y cos(x) para cualquier valor de x a partir de su denicin en [0, 4 ], por tanto, en este problema slo tenemos que denir las funciones trigonomtricas en [0, 4] a partir de su denicin en [0, ] . Basta tener en cuenta 8 las relaciones: ( cos (x) [0, 8 8] x x si x cos[0, ( x ) = 2 2 ] 4 cos[0, ] 2 sin[0, ] 2 si x > 8
8 8
sen[0, (x) = 4]
8 8
Problema 33 Calcular los polinomios necesarios para interpolar las funciones trigonomtricas cos(x) y sen(x) en el intervalo [0, 8 ] en una aritmtica de 32 bits Solucin: En primer lugar, la funcin cos(x) la desarrollamos por serie de Taylor como cos(x) u Pn (x) = 1 x2 x4 x2n + + .... + (1)n 2! 4! (2n)!
y el error mximo cometido por el desarrollo de Taylor en un punto x [0, 8 ] es (x) | Pn (x) cos(x) | sen( ) 8 (2n + 1)! donde [0, 8 ]. Para que la aproximacin sea la mejor dentro de una aritmtica de 32 bits tiene que cumplirse | Pn (x) cos(x) | 224 = 5. 96 108 cos(x) por tanto: 2n+1 | Pn (x) cos(x) | tan( ) 8 cos(x) 8 (2n + 1)! para n = 3 se tiene que 2n+1 = 1. 18 107 tan( ) 8 8 (2n + 1)! con lo cual ya estamos muy cerca de la precisin ptima. Para n = 4 2n+1 tan( ) 8 = 2. 53 1010 8 (2n + 1)! por tanto n = 4 determina la mejor aproximacin en una aritmtica de 32 bits.
2n+1
y el error mximo cometido por el desarrollo de Taylor en un punto x [0, 4 ] es (x) | Pn (x) sen(x) | sen( ) 4 (2n + 2)! donde [0, 4 ]. Para que la aproximacin sea la mejor dentro de una aritmtica de 32 bits tiene que cumplirse | Pn (x) sen(x) | 224 = 5. 96 108 sen(x) por otro lado, en el intervalo [0, 4 ] se verica sen 4 x sen(x)
4 2n+2
por tanto: 2n+2 | Pn (x) sen(x) | 4 sen(x) (2n + 2)! para n = 4 se tiene que 2n+2
4
(2n + 2)!
= 2. 46 108
Anlogamente, para la funcin sen(x) tenemos sen(x) u Pn (x) = x x3 x5 x2n+1 + + .... + (1)n 3! 5! (2n + 1)!
En el remonte se empiezan a calcular los ui de abajo hacia arriba. Las operaciones que se realizan vienen dadas por: n un = abnn un1 = un2 = un3 = . . .
bn1 an1,n un an1,n1 bn2 (an2,n un +an2,n1 un1 ) an2,n2 bn3 (an3,n un +an3,n1 un1 +an3,n2 un2 ) an3,n3
y el error mximo cometido por el desarrollo de Taylor en un punto x [0, 4 ] es (x)2n+2 | Pn (x) sen(x) | sen( ) 8 (2n + 2)! donde [0, 8 ]. Para que la aproximacin sea la mejor dentro de una aritmtica de 32 bits tiene que cumplirse | Pn (x) sen(x) | 224 = 5. 96 108 sen(x) por otro lado, en el intervalo [0, 8 ] se verica sen 8 x sen(x)
8
En la siguiente tabla se muestra el nmero de operaciones que se realizan en cada iteracin: Sumas n1 . . . 3 2 1 0 M ultiplic. n1 . . . 3 2 1 0 Divisiones 1 . . . 1 1 1 1 T otal 2n 1 . . . 7 5 3 1
por tanto: 2n+2 | Pn (x) sen(x) | 8 sen(x) (2n + 2)! para n = 3 se tiene que 2n+2
8
(2n + 2)!
por tanto n = 3 determina la mejor aproximacin en una aritmtica de 32 bits. Problema 34 (1 puntos) Como se puede obtener la funcin y x , donde x, y son nmeros reales, utilizando las funciones ex y ln(x). Solucin: Se utiliza la equivalencia y x = ex ln y
A partir de esta tabla podemos calcular el total de operaciones sumando por columnas: Sumas = 0 + 1 + 2 + 3 + . . . + n 1 =
(n1)n 2 (n1)n 2
(n1)n 2
+ n = n2
ANALISIS NUMERICO MATRICIAL I Problema 35 Calcular el nmero de operaciones bsicas (sumas, restas, multiplicaciones y divisiones) en funcin de la dimensin N necesarias para realizar un remonte para resolver un sistema A0 u = b0 donde A0 es una matriz triangular superior. Solucin: Escribimos la matriz A0 de la siguiente manera, a11 a12 a1,n2 a1,n1 a1n 0 a22 a2,n2 a2,n1 a2n . . . . . . . . . . . . . . . . . . 0 0 0 an2,n2 an2,n1 an2,n 0 0 0 0 an1,n1 an1,n 0 0 0 0 0 an,n
9
El orden del algoritmo es entonces O(n2 ). Problema 36 Resolver por el mtodo de Gauss el sistema 1 2 x 3 = 2 1 y 0 Solucin: 1 2 x 3 = 2 1 y 0 2 1 x 0 = 1 2 y 3 2 1 x 0 = 3 2y = y y = 2 y 3 0 3 2 x= 2 2 =1
Problema 37 Calcular el nmero de operaciones bsicas necesarias para descomponer el sistema Au = b en el sistema A0 u = b0 utilizando el mtodo de Gauss, y teniendo en cuenta la siguiente relacin
M 1 X k=1
Divisiones = 1 + 1 + . . . + 1 = n 2 M ultiplicac. = (n 1) + (n 1) + . . . + (n 1) = =(n 1)(n 2) Sumas = (n 1)+(n 1)+ . . . +(n 1) = (n 1)(n 2) . . . (n-1)a Iteracin:
k2 =
1 3 1 2 1 M M + M 3 2 6
Solucin: A= a11 a21 . . . an,1 a12 a22 . . . an,2 .. . a1n a2n . . . an,n
En cada iteracin se realizan las siguientes operaciones: Para cada iteracin (i): Para cada la (j ) ii a aii aj 1 ai1
M ultiplicac. = n(n 1) + (n 1)(n 2) + . . . + 2 = =((n 1) + 1)(n 1) + ((n 2) + 1)(n 2) + . . . = =(n 1)2 + (n 1) + (n 2)2 + (n 2) + . . . = = 2n
3
3n2 +n 6
(n1)n 2
n3 n 3 n3 n 3
aji aii
. . . ajn ain
aji aii
En la primera iteracin, este proceso se repite N 1 veces (para las N 1 j -las inferiores). En la segunda, se repite N 2 veces, y as sucesivamente hasta la penltima la, en donde slo se realiza una vez. Iteracin 1a Fila 2a 3a . . . na 3a 4a . . . na . . . na Division. 1 1 . . . 1 1 1 . . . 1 . . . 1 Multiplic. n n . . . n n1 n1 . . . n1 . . . 2 Sumas n n . . . n n1 n1 . . . n1 . . . 2
n(n1) 2
1 2 7 3 =2 3n + 2n 6n
3
2a . . . (n 1)a
Problema 38 Escribir el pseudocdigo del algoritmo de la funcion IDESCEN SO(A, b, u, N) que resuelve un sistema donde A es una matriz triangular inferior, b es el vector de trminos independientes, u el vector solucin, N es la dimensin del sistema La funcin devuelve 0 si termina correctamente y 1 en caso contrario. Nota Importante: Las lneas de cdigo tienen que ir todas numeradas y no pueden superar las 12 lineas de instrucciones como mximo. Solucin: 01 IDESCEN SO(matriz real A,vector real b,vector real u,entero N) 02 para variable entera I 0 hasta N-1 hacer 03 si(A(I, I ) == 0) entonces 04 devolver 1 05 nsi 06 u(I ) = b(I ) 07 para variable entera J 0 hasta I 1 hacer 08 u(I ) = u(I ) A(I, J ) u(J )
11
A continuacin obtenemos el total de operaciones en cada iteracin sumando por columnas: 1a Iteracin: Divisiones = 1 + 1 + . . . + 1 = n 1 M ultiplicac. = n + n + . . . + n = n(n 1) Sumas = n + n + . . . + n = n(n 1) 2a Iteracin:
10
+ 22 + 32 + ... + (n 1)2 =
2n3 3n2 +n 6
09 n mientras 10 u(I ) = u(I )/A(I, I ) 11 n mientras 12 devolver 0 Problema 39 Resolver por el mtodo de Gauss el siguiente sistema de ecuaciones 0 1 2 u1 1 1 2 1 u2 = 0 2 1 0 1 u3 1. Intercambiamos la tercera la con 0 1 2 1 1 2 1 0 pivoteo 2 1 0 1 la primera:
2. Denida positiva: Como |B | 6= 0, si B x = 0 = x =0 Una matriz se dice denida positiva si se cumple que x 6= 0, x t Ax > 0 = =x t BB t x = (B t x ) B t x = = x t Ax =y t y = P
2 yi >0
2. Hacemos ceros en la primera columna aj 1 f ilaj f ila1 a11 ;j > 1 : 2 1 0 1 2 1 0 1 0 3 2 1 1 2 1 0 ceros 0 1 2 1 0 1 2 1 3. Hacemos ceros en la segunda columna aj 1 f ilaj f ila2 a11 ;j > 2 : 2 1 0 1 2 1 0 1 0 3 2 1 0 3 2 1 ceros 0 1 2 1 0 0 4 4 u3 = u2 = u1 =
4 4
2 1 0 1 1 2 1 0 0 1 2 1
Solucin: La descomposicin por el mtodo de Cholesky tiene la forma siguiente: A = B Bt, donde la matriz B es triangular inferior. 0 b11 0 B = b21 b22 0 b31 b32 b33 b11 b21 b31 B t = 0 b22 b32 0 0 b33 A = B Bt = b11 0 = b21 b22 b31 b32 b2 11 b11 b21 = b11 b31
12u3 1 1+u2 2
=1
=1
b21 b22 0
Problema 40 Demostrar que si A = B B t (B triangular inferior) y |B | = 6 0, entonces A es simtrica y denida positiva Solucin:Tenemos que demostrar, por una parte, que At = A (A simtrica) y, por otra, que x t Ax > 0 (A denida positiva2 ). 1. Simtrica: At = (B B t ) = (B B t ) = (B t ) B t = B B t = A
denida positiva: x 6= 0 = > 0. Esta es la de nicin formal. De forma prctica, se comprueba que los menores principales de la matriz sean positivos. Tambin se cumple si todos sus autovalores son positivos: x t Ax =x t x = x t x > 0.
2 Matriz
Igualamos los elementos de la matriz anterior con los elementos de la matriz A y se obtienen los siguientes resultados: b2 11 = 1 b11 = 1
=1
x t Ax
4 b11
=4
En la siguiente tabla se muestra de forma esquematizada, el nmero de operaciones en cada iteracin: Iteracio n i=1 Sumas 0 0 . . . 0 1 1 . . . 1
n1
b32 =
64 2
=1
M ultiplic. 0 0 . . . 0 1 1 . . . 1
n1
Divisiones 0 1 . . . 1
n1
i=2
0 1 . . . 1
i=3
2 2 . . . 2
2 2 . . . 2
n2
0 1 . . . 1
Problema 42 Calcular el nmero de operaciones necesarias para resolver un sistema por el mtodo de Cholesky. Solucin: Las operaciones que se realizan en cada iteracin vienen dadas por:
. . . i=n
2(n2)
. . . n1
2(n2)
. . . n1
n3
. . . 0
El total de operaciones se obtiene sumando los totales parciales de la tabla anterior: Sumas = M ultiplicac. =
Iteracio n
i=1
i=2 . . . i=n
Operaciones j = 1 : b11 = a11 21 j = 2 : b21 = a b11 . . . n1 j = n : bn1 = a b11 p j = 2 : b22 = a22 b2 21 b21 b31 j = 3 : b32 = a32 b22 . . . b21 bn1 j = n : bn2 = an2 b22 . . . q 2 j = n : bnn = ann b2 n1 + . . . + bn,n1
Divisiones = (n 1) + (n 2) + (n 3) + . . . + 1 = Pn1 1) = i=1 i = n(n2 El resultado nal es: Total=Sumas + M ultiplicac. + Divisiones = = 2n
3
n 6
n(n1) 2
5 1 2 3 =1 3n 6n + 2n
n3 3
Problema 43 Demostrar que a partir de un mtodo para resolver sistemas de ecuaciones se puede construir de forma inmediata un mtodo para calcular la inversa A1 de una matriz A. Solucin:
AA1 = Id = era:
12
1 0 0 1 . . .. . . . . . 0 0
0 0 . . . 1
.. .
1 0 0 1 . . .. . . . . . 0 0
0 0 . . . 1
l2 u2 = b2 l2 = a2 m1 u1 , u2 = . . . mn2 un2 + ln1 = an1 ln1 un1 = bn1 ln1 = an1 mn2 un2 , un1 = mn1 un1 + ln = an ln = an mn1 un1 El algoritmo queda de la siguiente manera: l1 = a1 1 u1 = b l1 Para i = 2, . . . , n 1 mi1 = ci1 li = ai mi1 ui1 i ui = b li Fin Para mn1 = cn1 ln = an mn1 un1 Problema 45 Resolver utilizando el mtodo de Crout el siguiente sistema de ecuaciones 2 4 0 x 6 1 0 4 y = 3 0 1 0 z 1 bn1 , mn1 = cn1 ln1 b2 , m2 = c2 l2
se pueden calcular las columnas de esa matriz a partir de N sistemas de ecuaciones de la siguiente forma: A c11 c21 . . . cn1 = = 1 0 . . . 0 0 1 . . . 0 0 0 . . . 1
cnn
, c.q.d.
Problema 44 Demostrar el algoritmo de Crout para descomponer matrices tridiagonales. Solucin: Consideremos la matriz tridiagonal siguiente: A= a1 c1 0 . . . 0 b1 a2 c2 . . . 0 0 b2 a3 . . . 0 b3 .. . cn1 0 0 0 bn1 an
La descomposicin por el mtodo de Crout genera dos matrices de la forma: 1 u1 . . 0 0 l1 0 m1 l2 0 . 0 = 0 1 . A= 0 0 . . un1 . . 0 0 . mn1 ln 0 . 0 1 l1 m1 = 0 0 l1 u1 m1 u1 + l2 . 0 0 l2 u2 . . . . . mn1 0 0 ln1 un1 mn1 un1 + ln
Solucin: Aplicando el algoritmo del problema anterior, obtenemos los siguientes resultados: i=1 l1 = 2 u1 = i=2 m1 = 1 l2 = 0 2 (1) = 2 u2 = i=3
4 2 4 2
=2
=2
b1 , m1 = c1 l1
m2 = 1 l3 = 0 2 (1) = 2
Sustituyendo estos valores en las matrices de Crout, la descomposicin queda: 2 0 0 1 2 0 A = L U = 1 2 0 0 1 2 0 1 2 0 0 1 Para resolver el sistema, se tiene en cuenta lo siguiente: Ax = b LU x = b (U x = y )
En la siguiente tabla se muestra el nmero de operaciones en cada iteracin: Iteracio n i=1 i=2 i=3 . . . i=n Sumas 0 1 1 . . . 1 M ultiplic. 0 1 1 . . . 1 Divisiones 1 1 1 . . . 0
El total de operaciones se obtiene de la tabla anterior como: Sumas = M ultiplicac. = Divisiones = = 1 + 1 + . . . + 1 = (n 1) Total=Sumas + M ultiplicac. + Divisiones =
y nos queda un sistema de la forma: Ly = b Calculamos el valor de y a partir del sistema anterior: 2 0 0 y1 6 1 2 0 y2 = 3 , 0 1 2 1 y3 aplicando un algoritmo de descenso, y1 y2 = y3
6 2 3+y1 2 1+y2 2
3 = 3 1
Problema 47 Calcular analticamente y numricamente la matriz gradiente en el punto (1, 1) (utilizar h = 0.1) de la funcin: 2 x + y2 1 f (x, y ) = xy Solucin: Analticamente 2x 2y 2 2 f (x, y ) = f (1, 1) = 1 1 1 1 Numricamente, si llamamos f1 (x, y ) = x2 + y 2 1 y f2 (x, y ) = x y, entonces aplicando las mscaras vistas en teora tenemos f1 (x, y ) = x y
f1 (1,1) x = 1 4(0.1) 2 2 (f1 (1 + 0.1, 1 0.1) f1 (1 0.1, 1 1 4(0.1) 2 2 (f1 (1 + 0.1, 1 + 0.1) f1 (1 0.1, 1 1 2 1 (f1 (1 + 0.1, 1) f1 (1 0.1, 1)) = 4(0.1) 2 f1 (1,1) y = 1 4(0.1) 2 2 (f1 (1 0.1, 1 + 0.1) f1 (1 0.1, 1 1 4(0.1) 2 2 (f1 (1 + 0.1, 1 + 0.1) f1 (1 + 0.1, 1 1 2 1 (f1 (1, 1 + 0.1) f1 (1, 1 0.1)) = 4(0.1) 2
14
Problema 46 Calcular el nmero de operaciones necesarias para resolver un sistema tridiagonal por el mtodo de Crout. Solucin: Las operaciones que se realizan en cada iteracin vienen dadas por: Iteracio n i=1 i=2 . . . i=n Operaciones 1 l1 = a1 ; u1 = b l1 m1 = c1 ; l2 = a2 m1 u1 ; u2 = . . . ln = an mn1 un1
+ 0.1)) +
0.1)) +
b2 l2
0.1)) + 0.1)) +
+f +f +f + 0.1)) + 0.1)) +
00
000
000
f 00 (xi ) 2!
0+
(xi ) (xr 3!
Con lo cual, en este caso la matriz gradiente calculada numricamente coincide con la calculada analticamente. 2 2 f (1, 1) = 1 1 Problema 48 Dados 3 demostrar que la frmula: f 0 (xi ) (xi puntos distintos xl , xi , xr
f 0 (xi )
(xi xl )
xr xl
+ O(h2 )
r )f (xi ) xl ) f (xx r xi
xr xl
+ (xr
i )f (xl ) xi ) f (xx i xl
aproxima la derivada de f 0 (xi ) con un orden de aproximacin de 2. Solucin: Evaluamos el desarrollo de Taylor de la funcin en los puntos xr , xl : f (xl ) = f (xi ) + f 0 (xi )(xl xi )+ +f
00
Problema 49 Dados 3 puntos distintos xl , xi , xr calcular el polinomio de Lagrange que interpola a f (x) en esos 3 puntos, calcular la derivada de ese polinomio en xi y comprobar que da la misma frmula que la presentada en el problema anterior. Solucin: El polinomio de Lagrange es: f (x) =
(xxr )(xxl ) (xi xr )(xi xl ) f
(xi ) +
(xr ) +
(xi ) 2! (xl
xi )2 + xi )2 +
xi )3 xi )3
(xi ) +
(xi ) 2! (xr
000
(xr ) +
(xi ) (xr 3!
+f
00
(xi ) 2! (xl
xi ) +
000
(xi ) (xl 3!
xi )2 ]
(xi ) +
(xi xr )+(xi xi ) (xl xi )(xl xr ) f (xi xl )f (xr ) (xr xi )(xr xl ) +
xi ) +
xi ) ]
(xl )
f 0 (xi ) =
f (xi ) (xi xr )
f (xi ) (xi xl )
(xi ) 2! (xi
xl )(xr xi )+
xl )f (xr ) + (xi( xr xi )
(xr xl ) f 0 (xi ) =
f 00 (xi ) 2
f (xr )f (xi ) xr xi
xl )f (xr ) + (xi( xr xi )
xr xl
f (xi )f (xl ) xi xl
xr f (xi ) ( xr xi ) +
xi f (xi ) (xi xl )
xl f (xi ) (xi xl )
xi f (xi ) (xr xi )
Solucin: Desarrollo de Taylor de la funcin en el punto xi y evaluacin en xr y xl : f (xr ) f (xi ) + f 0 (xi ) (xr xi ) + +f
00
(xi ) 2!
(xr xi ) +
2
f 000 (xi ) 3!
(xr xi )
(xr xl ) f 0 (xi ) =
xr f (xi ) (xr xi ) +
(xi ) 2!
(xl xi ) +
f 000 (xi ) 3!
(xl xi )
(xr xl ) f (xi ) =
f 0 (xi ) + (xr xi )
2
f 00 (xi ) 2!
(xr xi ) +
+f
000
(xi ) 3!
)(f (xi )f (xl )) + + (xr xi( xi xl ) xi xl )xr f (xi )(xi xl ) + + xi f (xi )(( xr xi )(xi xl )
r xi )xl f (xi )(xr xi ) + xi f (xi )(x (xr xi )(xi xl )
f 0 (xi ) + (xl xi )
2
f 00 (xi ) 2!
(xl xi ) +
+f
000
(xi ) 3!
simplicando, f 0 (xi ) =
(xi xl )(f (xr )f (xi )) (xr xi )(f (xi )f (xl )) + (xr xi ) (xi xl ) (xr xl )
+f
000
(xi ) 3!
(xr xi )2 (xl xi )2
f (xi )f (xl ) (xr xi ) (xi xl ) xr xl
f 00 (xi ) 2!
(xr xl ) +
Despejamos la segunda derivada y obtenemos: Problema 50 Calcular una aproximacin de la derivada tercera f 000 (xi ) de una funcin f (x) en un punto xi , utilizando f (xi ), f (xi + h), f (xi h), f (xi 2h) Solucin: 2 h3 000 00 a f (xi + h) = f (xi ) + hf 0 (xi ) + h 2 f (xi ) + 6 f (xi ) + O(h4 ) 1. b f (xi h) = f (xi ) hf 0 (xi ) + h3 000 4 6 f (xi ) + O (h )
h2 00 2 f (xi )
f 00 (xi ) 2 2
f (xr )f (xi )
f 000 (xr ) 3!
((xr xi )2 (xl xi )2 )
xr xl
f 00 (xi ) 2
f (xr )f (xi )
+ O(h)
c f (xi 2h) = f (xi ) 2hf 0 (xi ) + 2h2 f 00 (xi ) 4h3 000 4 3 f (xi ) + O (h ) a b 2c = 0 b Sistema: a 2 + 2 + 2c = 0 a b 4c = 1 6 6 3 1, b = 3, c = 1. f 000 (xi ) = Solucin: a =
Problema 52 Considerar en el problema anterior que xl = xi h, y xr = xi + h. Deducir como queda la frmula anterior para aproximar la derivada segunda, y demostrar que en este caso el orden de aproximacin es 2. Solucin: Sustituyendo xl = xi h, y xr = xi + h, tenemos: f 00 (xi ) 2 =
f (xr )f (xi ) f (x )f (x ) x ix +hl (xi +hxi ) ( i i ) xi +hxi +h
af (xi +h)+bf (xi h)+cf (xi 2h)(a+b+c)f (xi ) h3 f (xi +h)+3f (xi h)f (xi 2h)3f (xi ) + O(h) h3
16
= O(h2 ) = =
f 000 (xi ) 3!
(h h) +
+ O(h2 )
Problema 55 Demostrar, utilizando el desarrollo de Taylor, que las siguientes expresiones son discretizaciones del laplaciano: Fi+1,j +1 + Fi1,j +1 + Fi1,j 1 + Fi+1,j 1 4Fi,j 2h2 Fi+1,j + Fi1,j + Fi,j +1 + Fi,j 1 4Fi,j F = h2 Solucin: A partir del desarrollo de Taylor de la funcin F , se obtiene lo siguiente: F = F (x + h, y + h) = F (x, y ) + hFx + hFy +
2 +1 2 h (Fxx + 2Fxy + Fyy )
La aproximacin de la segunda derivada queda de la forma, f (xr ) 2f (xi ) f (xl ) f 00 (xi ) h2 Problema 53 Dados 3 puntos xl < xi < xr calcular el polinomio de Lagrange que interpola a f (x) en esos 3 puntos, calcular la derivada segunda de ese polinomio en xi y comprobar que da la misma frmula que utilizando los desarrollos de Taylor. Solucin: Por las diferencias divididas de Newton obtenemos lo siguiente: xl f (xl ) f (xi )f (xl ) + f (xr )f (xi ) i )f (xl ) f (xx xi f (xi ) xi xl xr xi i xl xr xl f (xr )f (xi ) xr xi xr f (xr ) Polinomio de Lagrange: P (x) ' f (xl ) + +
f (xi )f (xl ) xi xl
(x xl ) + (x xl ) (x xi )
Sumamos estas cuatro ecuaciones, F (x + h, y + h)+F (x h, y h)+F (x h, y + h) + +F (x + h, y h) = 4F (x, y ) + 2h2 (Fxx + Fyy ) Fxx + Fyy = (x xl ) + =
F (x+h,y +h)+F (xh,yh)+F (xh,y+h)+F (x+h,y h)4F (x,y) , 2h2
xr xl
xr xl
(x xi )
discretizando se obtiene el resultado esperado, Fi+1,j +1 + Fi1,j +1 + Fi1,j 1 + Fi+1,j 1 4Fi,j 2h2 Para demostrar la segunda igualdad, tomamos las siguientes ecuaciones: 2 F (x + h, y ) = F (x, y ) + hFx + h 2 Fxx F = F (x h, y ) = F (x, y ) hFx + F (x, y + h) = F (x, y ) + hFy +
h2 2 Fxx h2 2 Fyy h2 2 Fyy
xr xl
, c.q.d.
Problema 54 Calcular una aproximacin de la derivada primera y segunda de una funcin f (x) en x = 0, teniendo en cuenta que f (0) = 1, f (1) = 0, f (4) = 9 Solucin: f 0 (xi ) = = =
00 (xi xl )
f (xi )f (xl ) f (xr )f (xi ) +(xr xi ) xr xi xi xl
xr xl
Sumamos estas expresiones y obtenemos: = F (x + h, y ) + F (x h, y ) + F (x, y + h) + +F (x, y h) = 4F (x, y ) + h2 Fxx + h2 Fyy Fxx + Fyy =
F (x+h,y )+F (xh,y)+F (x,y+h)+F (x,y h)4F (x,y) , h2
41
1 10 9 4 +4 1
24 3
6 3
= 2
f (xr )f (xi ) f (xi )f (xl ) (xr xi ) (xi xl ) xr xl 10
f (xi ) 2
91
Problema 56 Calcular una aproximacin del laplaciano de una funcin F (x, y ) en el punto (x, y ) = (0, 0) conociendo los siguientes valores: F (0, 0) = 0, 1 1 1 1 1 1 1 F(1 2 , 0) = 4 , F ( 2 , 0) = 4 , F (0, 2 ) = 4 , F (0, 2 ) = 4 , 1 1 1 1 1 1 1 1 1 1 1 F ( 2 , 2 ) = 2 , F ( 2 , 2 ) = 2 , F ( 2 , 2 ) = 2 , F ( 2 , 2 ) =
1 2
0
1 4
1 1 1 1 Fx = (1 ) 2h + 4h = 2 h 1 1 1 1 Fy = (1 ) 2h + 4h = 2 h
1 4h 1 4h
= =
1 2 4 h 1 2 4 h
El valor de h es Aproximamos el laplaciano promediando las dos expresiones del ejercicio anterior. Si no realizramos este promediado, no se tendran en cuenta todos los valores de la funcin. F =
F +F +F 1,j 1 +Fi+1,j 1 4Fi,j i+1,j+1 i1,j+1 2ih + 2 Fi+1,j +Fi1,j +Fi,j +1 +Fi,j 1 4Fi,j , h2
1 2 4 h
(1, 1)
Calculamos las normas de los gradientes e igualamos: k1 F (hi0 , hj0 )k = k2 F (hi0 , hj0 )k q 2 2 1 = 2 1 2h 4 h
1 2h
+ (1 ) =
2 3 2 3 4 3
1 4h
F (0, 0) = =
8 3
1 1 1 1 2+2+2+2 21 4
=4
+ 1 2 3
1 1 1 1 4+4+4+4 1 4
2 2 2 2
= ( 2) = 2 2 = ( 2) = 2 + 2
2 | 2|
La solucin vlida es = 2 2, ya que el gradiente 2 F debe ser negativo en sus dos derivadas. Sustituyendo este valor en las expresiones de Fx , Fy tenemos: Fx = (1 ) +
Fi+1,j Fi1,j + 2h
dan lugar a una discretizacin del gradiente tal que su norma eucldea es invariante por rotaciones de 45 grados. Solucin: Procedemos de la misma forma que al calcular el valor de en el caso del laplaciano. Consideramos una funcin que tiene los siguientes valores en un entorno de un punto (hi0 , hj0 ) : 1 0 0 1 0 0 1 0 0
21 0 2 21
2 2 0 2 2
Fy = (1 ) +
cuyas mscaras son las que se muestran en el enunciado del problema. Problema 58 Calcular una aproximacin del gradiente de una funcin F (x, y ) en el punto (x, y ) = (0, 0) conociendo los siguientes valores: F (0, 0) = 0, 1 1 1 1 1 1 F(1 2 , 0) = 2 , F ( 2 , 0) = 2 , F (0, 2 ) = 2 , F (0, 2 ) =
18
1 F(1 2, 2) 1 1 F(2, 2) =
1 2,
1 1 1 = 0, F ( 1 2 , 2 ) = 0, F ( 2 , 2 ) = 1, 1
2. n = 3
3 P
k=1
1
1 2
0
1 2
Sustituimos estos valores en las derivadas de la funcin: F F Fx = 2 2 1 i+1,j4h i1,j + F F +F F + 2 2 i+1,j+1 i1,j+14h i+1,j1 i1,j1 = =2 = + F F Fy = 2 2 1 i,j+14h i,j1 + F F +F F + 2 2 i+1,j+1 i+1,j14h i1,j+1 i1,j1 = =2 = 1 2 21
21 h
1 1 2 2
1 2
21
21 h
4h + 2 1 2 2 = 21 2 h h
1 1 2+2
1+1 2 4h =
R1 El valor exacto de la integral es 1 x3 x4 dx = 2 5 = . 4, que coincide con el valor del segundo caso. La frmula de integracin numrica es exacta hasta el orden 2n 1, que en el segundo caso es equivalente a 5, con lo que ya se saba que el valor obtenido sera exacto. Problema 60 Se considera para el intervalo [1, 1], los puntos x0 = 0.5, x1 = 0 y x2 = 0.5 y los pesos w0 = w1 = w2 = 2/3. Estos puntos y estos pesos se utilizan para aproximar la integral de una funcin en [1, 1]. Usar esta frmula de integracin para calcular nmericamente la siguiente integral y compararla con el resultado anlitico (exacto). Z 2 cos(x)dx
2
4h
1 2 2 2 h
11 + 2 2 4 h = = 21 h
y obtenemos el valor del gradiente: 1 Fx 1 2 h F = = = 1 Fy 21 h Este vector nos da la direccin de mximo ascenso, que en este caso ser en diagonal hacia arriba a la derecha. Problema 59 Aproximar el valor de la siguiente integral, utilizando las frmulas de Legendre para n = 2 y n = 3 Z 1 3 x x4 dx
1
2 3 2
cos 4 +
Problema 61 Encontrar cual sera la frmula de integracin numrica en el intervalo [1, 1] utilizando un slo punto de interpolacin, y de tal manera que sea exacta para polinomios de grado 1 Solucin: La frmula que usa un nico punto se puede expresar como Z 1 f (x) dx ' w0 f (x0 )
1
1. n = 2
2 P
P (x) = x3 x4
k=1
1dx = 2 = w0 f (x0 ) = w0
w0 = 2
xdx = 0 = w0 f (x0 ) = w0 x0
x0 = 0
Problema 62 A partir de los ceros y de los pesos asociados a los polinomios de Legendre, y dado un intervalo [a, b] cualquiera, encontrar los puntos xk , y los pesos wk que hacen exacta hasta el orden 2N 1 una frmula de integracin numrica sobre el intervalo [a, b] Solucin: Para encontrar los puntos x k , y los pesos w k , hay que hacer un cambio de variable en la integral: Z
b
= w1 f (x1 ) + w2 f (x2 ) + w3 f (x3 ) = 10 0 +1 1 +1 = (w 0 f x + w 1 f x + + 2 2 2 x +1 w 2 f 22 )= 0.7745966692+1 =1 + 2 (0.55555556 f 2 0+1 +0.8888888889 f 2 + +0.55555556 f 0.7745966692+1 )= 2 = 8. 333 3 102 Problema 64 Calcular de forma exacta la integral Z 3 2 x x2 ex dx
f (x) dx '
k=1
N X
w k f ( xk )
Solucin: De forma analtica la integral da como resultado: R 3 2 x x2 ex dx = 1 2 = . 886 23 Utilizando el mtodo de integracin numrica: f (x) = x3 x2
2 R 3 P 2 wk f (xk ) x x2 ex dx = k=1
este cambio representa la recta que pasa por los puntos -1, 1 para t = a, b, respectivamente. Z Z
b
f (x) dx =
b
f
1
(b a) t + b + a 2
ba dt 2
= w1 f (x1 ) + w2 f (x2) =
f (x) dx '
k=1
de donde se deduce que los cambios a realizar son de la forma xk +(b+a) , x k = (ba) 2 (ba) k w k = 2 w
N X
ba w k f 2
(b a) x k + b + a 2
= 0.8862269255 f (0.707106781) + +0.8862269255 f (0.707106781) = = . 886 23 Problema 65 Aproximar, utilizando dos puntos de aproximacin, el valor de la integral: Z 1 dx 1 + x2
Problema 63 Utilizar el resultado del problema anterior para calcular de forma exacta la siguiente integral Z 1 2 x x3 dx
0
Solucin: R R
1 dx 1+x2 ex 1+x2
2
f (x) =
2 ex ex dx 1+x2
= 8. 333 3 102
1 dx 1+x2
3 R1 2 P wk f (xk ) = x x3 dx = 0 k=1
20
Solucin: R1 3 x x4 dx = 2 5 = . 4 1
R1 3 x x4 dx = 1 =
1 R 3 P wk f (xk ) = x x2 ex dx = 0 k=0
'
(xk+1 xk )
#0
= w0 f (x0 ) + w1 f (x1 ) =
= 0.8535533903 f (0.585786438) + +0.1464466093 f (3.414213562) = = 4.0 Problema 67 Calcular una frmula de aproximacin numrica de la integral siguiente Z f (x)ex dx
a
x
k+1 +xk 2
(xk+1 xk )
#1
0
' +
f (0)+f (1)+4f ( 6
1+0 2
(0 + 1) +
(1 0) =
5 = 12 = . 416 67
donde a es un nmero real cualquiera Solucin: Para calcular esta integral realizamos un cambio de variable R t=xa t f (t)e dx = = 0 dt = dx R R = a f (x a)ex+a dx = ea a f (x a)ex R
0
Problema 69 Deducir la frmula de integracin numrica sobre el rectngulo [1, 1]x[1, 1] resultante de aplicar la integracin numrica en una variable en los intervalos [1, 1], y [1, 1]. Solucin: R1 R1
1 1
F (x, y ) dydx =
N P N P
w k
k=1
f (t)e dx =
k=0 N P
N P
R1
N R1 P 1
w k F ( xk , y ) dy =
k=1
F ( xk , y ) dy !
w k f ( xk )
w k
k=1
j =1
ea
R
a
f (x a)ex = ea
k=1
wk f (xk a) donde
k,j =1
N P k F ( W xk , y k ) ,
N P
w j F ( xk , y k )
k = w k w j W w k = w j = R 1
1 T (xx i ) T i6=k xk x i ) i6=k (
y los x k e y k son los ceros del polinomio de Legendre. Problema 70 Deducir la frmula de integracin numrica sobre un rectngulo [a, b]x[c, d] resultante de aplicar la integracin numrica en una variable en los intervalos [a, b], y [c, d].
R 1
T (y y i ) T i6=k yk y i ) 1 i6=k (
21
Solucin: RbRd
a c
F (x, y ) dydx =
N P N P
w k
k=1
Rd
c
N Rd P c
w k F ( xk , y ) dy =
k=1
Problema 72 Calcular una aproximacin numrica de la integral Z Z 2 x dxdy 1 + ey2 0 utilizando la evaluacin de F (x, y ) en 4 puntos.
F ( xk , y ) dy !
w k
k=1 N P
j =1
N P
0 w j F
( xk , y k )
dxdy =
k,j =1
0 w k w j F
( xk , y k ) ,
ahora bien, teniendo en cuenta los resultados obtenidos al integrar en una variable tenemos que :
+(b+a) x k = (ba)xk 2 (ba) w k = 2 wk +(d+c) y k = (dc)yk 2 c) 0 w j = (d 2 wk
2 1+ey2 1 P
dy = 2. 144 3
2 1+ey2
dy =
xdx =
wk P (xk ),
k=0
(b+a) 2
=x k + 1,
donde wk son los pesos al integrar en una variable en el intervalo [1, 1]. Problema 71 Calcular de forma exacta la integral Z 1Z 1 x2 y 2 dxdy
1 1
1. wk =
(ba) k 2 w
=w k ,
tenemos: P (x) = x R2
0
x2 y 2 dxdy =
4 9
= . 444 44
por Hermite, R1 x2 dx R1 y 2 dy =
2 P
x2 y 2 dxdy = 1
1 1
1 1+ey2
dy =
1 ey2 +1
ey dy =
k=1
2 P
w j P ( y k ),
= =
1. P (y ) =
1 P
1 ey2 +1
k=1
2 P
w k P ( xk )
w j P ( yk ) =
k=1
k=0
22
1. Para 1 punto: R
x2 ydxdy =
2 = F(2 3 , 3 )Area(T ) =
Problema 73 Se considera el tringulo T de vrtices (0, 0), (1, 0) y (0, 1). Deducir cual debe ser el punto (x0 , y0 ) y el peso w0 para que la frmula de integracin numrica: Z F (x, y )dxdy F (x0 , y0 )w0
T
2 2
3
2 32
16 27
1=
2 3
x2 ydxdy = 4 4 12 4 4 12 = Area(T )[ 25 48 F ( 10 , 10 ) + F ( 10 , 10 ) + F ( 10 , 10 )
2 2 27 48 F ( 3 , 3 )] = 8 15
a = c = 0, b = 1; 1 6 b = w0 y0 b y0 =
= . 533 33
ANALISIS NUMERICO MATRICIAL II la frmula Problema 75 (4 puntos) Tomar N = 2 y demostrar que la norma k x k2 verica las propiedades de la denicin de norma q p p kxkp = p |x1 | + |x2 | Solucin: En esta demostracin vamos a generalizar para cualquier p. Al nal particularizamos para p = 2 con el n de hacer que la demostracin sea ms sencilla.
donde es el tringulo de vrtices (0, 0), (2, 0) y (0, 2) utilizando 1 punto, 3 puntos, y 4 puntos Solucin: El clculo de la integral de forma analtica nos da: R R 2 R 2x 2 x2 ydxdy = 0 0 x y dydx =
8 15
Las propiedades que debe vericar, para cumplir con la decin de norma, son: 1. kxkp = 0 x = 0; p p |x1 |p + |x2 |p = 0 = |x1 |p + |x2 |p = 0,
= . 533 33
la suma, en valor absoluto, de elementos distintos de cero da un valor positivo mayor que cero, con lo que para que se cumpla esta condicin, se tiene que cumplir que x1 = x2 = 0, c.q.d..
23
|xi |
r P |xi | p = = Limp p |xmax |p N i=1 |xmax | r PN |xi | p = = Limp |xmax | p i=1 |x max | = |xmax | Limp = |xmax | Limp r PN p
i=1 |xi | |xmax |
3. kx + y kp kxkp + ky kp , x, y E ; p p p p |x1 + y1 | + |x2 + y2 | kxkp + ky kp = = |x1 + y1 |p + |x2 + y2 |p p p p p |x1 |p + |x2 |p + p |y1 |p + |y2 |p Para p = 2 tenemos: |x1 + y1 |2 + |x2 + y2 |2 q 2 q 2 2 2 2 |x1 | + |x2 | + |y1 | + |y2 | =
2 2 2 = x2 1 + 2x1 y1 + y1 + x2 + 2x2 y2 + y2
|xi | |xmax |
N i=1
|xi | |xmax |
p 1/p
= |xmax | Limp (0 + . . . + 0 + 1 + . . . + 1)1/p = = |xmax |, c.q.d. Problema 77 Tomar N = 2, y dibujar el lugar geomtrico de los vectores x = (x1 , x2 ) que verican 1. kxk1 < 1 2. kxk2 < 1 3. kxk < 1 Solucin: En las grcas 1, 2 y 3 se muestran los lugares geomtricos de las normas 1, 2 e innito, respectivamente. 1. kxk1 < 1 = |x| + |y | < 1 = y < 1 x Esta ecuacin representa, como borde, una recta de pendiente negativa. Tal y como se ve en la gura 1, el lugar geomtrico est contenido en un rombo. p 2. kxk2 < 1 = (x2 + y 2 ) < 1 = x2 + y 2 < 1
P N
i=1
|xi | |xmax |
2 2 2 = x2 1 y1 + 2x1 y1 x2 y2 + x2 y2
2 2 2 2 2 2 2 x2 1 y1 + x1 y2 + x2 y1 + x2 y2 = 2 2 2 = 2x1 y1 x2 y2 x2 1 y2 + x2 y1 = 2 2 2 = 0 x2 1 y2 + 2x1 y1 x2 y2 + x2 y1 =
= 0 (x1 y2 + x2 y1 ) , que siempre es cierto, con lo que queda demostrado. Problema 76 Demostrar que Limp kxkp = max |xi |
i
Esta es la ecuacin de un crculo de radio menor que 1 y centro el origen. En la gura 2 se muestra el lugar geomtrico.
24
Figure 1: Lugar geomtrico de kxk1 3. kxk < 1 = max(x, y ) < 1 Esto representa una recta de valor constante (x, y ) menor que 1. En la gura 3 se puede ver el lugar geomtrico. Problema 78 Tomar N = 2 y demostrar la siguiente desigualdad k x k k x k2 k x k1
Figure 2: Lugar geomtrico de kxk2 Esto siempre es cierto ya que el producto de valores positivos siempre es positivo (o igual a cero si algn xi es cero). 3. max(|x1 | , |x2 |) |x1 | + |x2 | . Es trivial (propiedad transitiva). De estas demostraciones se deduce que las distintas normas coinciden cuando el vector x descansa sobre uno de los ejes de coordenadas. Problema 79 Demostrar que si A, B son dos matrices de dimensin N xN, entonces para cualquier norma de matrices subordinada a una norma vectorial se verica k AB kk A k k B k Solucin: supx supx supx entonces supx
kABxk kxk kABxk kxk
Solucin: Esta desigualdad es equivalente a lo siguiente: p 2 max(|x1 | , |x2 |) (x2 1 + x2 ) |x1 | + |x2 | 1. max(|x1 | , |x2 |) p 2 (x2 1 + x2 ) p 2 (x2 1 + x2 ) + x2 2
|xmax | x2 max
x2 1
= supx
Esta desigualdad siempre es cierta ya que xmax es o bien x1 o bien x2 . p 2 2. (x2 1 + x2 ) |x1 | + |x2 |
supx
supx
kABxk kBxk
kB k kAk ,
2 2 x2 1 + x2 (|x1 | + |x2 |)
kB k kAk , c.q.d.
Problema 80 Demostrar que los autovalores de A son los ceros del polinomio caracterstico P ().
0 2 |x1 | |x2 |
25
x1 + x2 = 0 x1 = x2 x1 + x2 = 0 2x3 = 0 x3 = 0 x 1 = 2. 2 , 3 = 2
1 2 1 2
1 1 0 x1 0 1 1 0 x2 = 0 0 0 0 0 x3 x1 + x2 = 0 x1 = x2 x1 x2 = 0 x3 libre x3 libre
1 2 1 2
Figure 3: Lugar geomtrico de kxk Solucin: Denicin de autovalor de una matriz A: xi 6= 0 E, i CAxi = i xi Axi = i xi = (A i Id)xi = 0 como xi 6= 0, entonces |A i Id| = 0 = P () = 0, c.q.d. Problema 81 Calcular los autovectores de la matriz 1 1 0 1 1 0 0 0 2
0 ,x 3 = 0 x 2 = 1 0
1 2 1 2 1 2 1 2
La matriz, B= 0 0 1
contiene los autovectores de A que forman una base ortogonal en R3 . Problema 82 Calcular las normas 2, 1 e innito de la matriz 1 0 A= 1 1 Solucin: 1. kAk2 = p (AT A)
y determinar una base ortonormal de R3 de autovectores de A. Solucin: Calculamos los autovalores de A : |A i Id| = 0
1 2
2. kAk1 = maxj
P 2 P
|aij | =
kAk = max(2, 1) = 2
Problema 83 Demostrar la siguiente igualdad: (At A) = (AAt ) Solucin: Veamos que los polinomios caractersticos coinciden : |At A i Id| = |At |
1
2 1 0 2. A = 1 2 1 0 1 2 Solucin: El condicionamiento de una matriz (A) = kAk2 A1 2 . Calculamos los autovalores de ambas matrices: 2 2 2 2 1 1 1. = (2 ) (1 ) 1 2 2 1 1 2 [2(1 ) + 2] 2 [2 + 2(1 )] = (2 ) 2 2 8 (2 ) = (2 ) 2 2 + 8 de donde obtenemos 1 = 2 2 = 2 3 = 4 Esta matriz es simtrica, luego posee una base ortonormal 3 de autovectores, con lo que el condicionamiento de A se puede calcular como: maxi {| i |} 4 (A) = kAk2 A1 2 = = =2 mini {| i |} 2
= |AAt i Id|
Problema 84 Demostrar que si los autovectores de una matriz A de dimensin N xN forman una base ortonormal de RN , entonces para la norma 2 se cumple: maxi {|i |} (A) = kAk2 A1 2 = mini {|i |}
Solucin: Al ser una base de autovectores ortonormal, la norma kAk2 = (A) = maxi {|i |} Los autovalores de A1 vienen dados por: Axi = i xi = = A1 Axi = A1 i xi = =
1 i xi
= A1 xi =
2 1 0 1 2 1 2. 0 1 2
= A1 xi = 0 i xi ,
1 1 donde 0 son los i = i , es decir, los autovalores de A inversos de los de A y sus autovectores son los mismos, luego la norma de A1 2 = (A1 ) 1 1 1 A = max 0 = = max , i 2 i i i mini {|i |}
1 = 2 1 = 2 + 2 1 = 2 2
= 4 10 + 62 3 = 0
Tambin es una matriz simtrica, con lo que sus autovectores forman una base ortonormal y su condicionamiento es: 1 maxi {| i |} 2+ 2 (A) = kAk2 A = 2 = 3+2 = 2 mini {| i |} 2 2
entonces
Problema 86 Sean las matrices A, R. Demostrar que la matriz A, y la matriz B = R1 AR poseen los mismos autovalores Solucin: Bxi = i xi =
1 mini {|i |}
c.q.d.
= RR1 ARxi = Ri xi =
ortonormales: dos vectores son ortonormales si cumplen 0 si i 6= j T lo siguiente, xi xj = 1 si i = j
3 Vectores
= R1 AR xi = i xi =
= ARxi = i Rxi = = Ayi = i yi , de donde se deduce que los autovalores son los mismos y los autovectores estn relacionados por la siguiente igualdad: yi = Rxi , c.q.d. Problema 87 Se considera la matriz 1 1 A= 1 1 calcular el ngulo tal que la matriz cos sin R= sin cos verique que la matriz B = R1 AR sea diagonal. Solucin: Realizamos el clculo de la matriz B : B = R1 AR = cos sin 1 1 cos sin = = sin cos 1 1 sin cos 2 cos sin + 1 2 cos2 1 = = 2 cos2 1 2 cos sin + 1 b1 0 = 0 b2 Se tiene que cumplir que los elementos que estn fuera de la diagonal sean iguales a cero, 2 cos2 1 = 0 r 1 cos = 2 De esta igualdad se obtiene el valor del ngulo : = 3 , = 4 4
las
siguientes
igualdades
1tan2 () 2 tan()
2 tan() cot(2) = 1 tan2 () realizando el cambio de variable x = tan(), tenemos x2 + 2 cot(2)x 1 = 0 x = tan() =
2 cot(2)
4 cot2 (2)+4
El segundo trmino es siempre mayor que el primero, con lo que es ste el que va a determinar el signo de la ecuacin. Como sign (tan()) = sign (cot()) , podemos expresar la anterior igualdad de la siguiente forma: q tan() = cot(2) + sign(cot(2)) 1 + cot2 (2) 2. cos =
1 1+tan2 ()
p 1 + cot2 (2) p cot(2) + p1 + cot2 (2) si 0 tan() = cot(2) 1 + cot2 (2) si < 0 = cot(2)
La matriz de rotacin queda como sigue: 1 cos sin 2 1 4 4 2 2 2 = R1 = 1 1 sin cos 2 4 4 2 2 2 1 cos 34 2 2 1 sin 34 2 2 = R2 = 1 sin 34 cos 34 2 1 2 2 2 Calculamos los elementos de la diagonal: b1 = 2 cos sin + 1 b1 = 0, b1 = 2 b2 = 2 cos sin + 1 b2 = 2, b2 = 0, luego las soluciones posibles son: 0 0 2 0 B1 = , B2 = 0 2 0 0
28
1 u sin2 () 1+ cos2 ()
1
cos2 ()+sin2 () cos2 ()
p cos2 () = cos
cos = sin
4. cot(2) =
tan()+sin(2) 2 sin2 ()
= =
= = (2 cos2 ()1)
= =
2 sin() cos()
= cot(2)
1 0 0 cos 0 0 0 sin 0 0
an1 apn ani aqn ann 0 0 sin 0 0 0 = cos 0 0 1 aq1 apq aqj aqq aqn
Problema 89 Dentro del mtodo de Jacobi para el clculo de autovalores demostrar las igualdades a0 pq = 0 a0 pp = app tan()apq a0 qq = aqq + tan()apq a0 qj a0 pj = apj cos aqj sin j 6= p, q
a11 ap1 cos aq1 sin ap1 cos aq1 sin app cos2 + aqq sin2 apq sin 2 ai1 apj cos aqj sin = (app aqq ) ap1 sin + aq1 cos sin 2 + apq cos 2 2 an1 apn cos aqn sin ai1 apj cos aqj sin aij apj sin + aqj cos ani
j 6= p, q
Solucin: En el mtodo de Jacobi se persigue construir una matriz diagonal a partir de una matriz A cualquiera, aplicndole transformaciones de la forma B = R1 AR. Segn se ha demostrado en problemas anteriores, los autovalores de B y de A coinciden, con lo que si se consigue encontrar la matriz R que cumpla con la ecuacin anterior, entonces habremos encontrado los autovalores de A. La matriz R es una matriz de rotacin y se calcula el ngulo, , de la misma, transformando los valores de A que estn fuera de la diagonal en ceros. Vamos a expresar las matrices de la siguiente manera: a11 ap1 ai1 aq1 an1 ap1 app apj apq apn A= ai1 apj aij aqj ani aq1 apq aqj aqq aqn an1 apn ani aqn ann 1 0 0 0 0 0 cos . sin 0 . 1 . 0 Rpq () = 0 0 sin . cos 0 0 0 0 0 1 0 0 0 sin 1 0 0 cos 0 0 0 0 0 0 1
29
ap1 sin + aq1 cos an1 (app aqq ) sin 2 + apq cos 2 apn cos aqn sin 2 apj sin + aqj cos ani app sin2 + aqq cos2 + apq sin 2 apn sin + aqn cos apn sin + aqn cos ann De esta matriz se deducen las siguientes igualdades:
pp qq a0 sin 2 + apq cos 2 pq = 2 0 app = app cos2 + aqq sin2 apq sin 2 2 2 a0 qq = app sin + aqq cos + apq sin 2 0 j 6= p, q apj = apj cos aqj sin aqj = apj sin + aqj cos j= 6 p, q
(a
tan(2) =
aqq = app +
Las dos ltimas igualdades se obtienen directamente 0 de la matriz nal. Para obtener a0 pp y aqq , se opera de la siguiente manera:
2 2 1. a0 pp = app cos + aqq sin apq sin 2 =
B = R1 AR = 1 0 0 cos 0 = 0 0 sin 0 0
2apq tan(2)
sin2
= app cos2 + +
app 2 sin cos +2apq cos2 2apq sin2 2 cos
sin
2
2apq sin cos = app cos + app sin + +apq cos sin apq tan + apq sin cos 2apq sin cos = app apq tan
2 2 2. a0 qq = app sin + aqq cos + apq sin 2 =
= aqq
2apq tan(2)
+apq sin 2 = =
aqq 2 sin cos 2apq cos2 +2apq sin2 2 sin cos
sin2 +
= aqq sin2 + aqq cos2 apq cos sin + +apq tan apq cos sin + 2apq cos sin = = aqq + tan()apq Problema 90 Utilizar el mtodo de Jacobi para aproximar los autovalores y autovectores de la matriz: 2 0 1 A= 0 1 0 1 0 1 cos 0 sin 0 1 0 R () = sin 0 cos
(app aqq ) 2
por tanto, en este caso, como con una nica matriz de rotacin conseguimos transformar A en una matriz diagonal, tendremos que los autovectores de A son simplemente los vectores columnas de R(). Es decir el autovector del 0.850 65 0 autovalor 2. 618 es ( ), el autovector del auto0.525 73 0 valor 1 es ( 1 ), el autovector del autovalor 0. 381 97 es 0 0.525 73 0 ( ). 0.850 65 Problema 91 Aplicar el mtodo de la potencia para aproximar el autovalor mximo, y el autovector asociado, de las siguientes matrices, dando 3 pasos en el mtodo, hasta calcular u4 y partiendo de u1 = (1, 1) 2 1 A= 0 1 3 0 A= 1 1 Solucin: En este problema vamos a utilizar la norma eucldea aunque cualquier otra norma tambin sera vlida. La norma innito, por ejemplo, simplicara los clculos ya que es inmediato obtener el mximo de un vector. 2 1 0 1
1
Los autovalores son los elementos de la diagonal (2. 618, 1, 0. 381 97) . Como = . 553 57, la matriz cos 0 sin 0.850 65 0 0.525 73 0 1 0 0 1 0 = R () = 0.525 73 0 0.850 65 sin 0 cos
Solucin:
1. A =
u2 = A ku u1 k =
2 1 0 1
3 2 2 1 2 2
1 2 1 2
9 26 2 26 1 26 2 26
u =
2 A ku u2 k
2 u = 5 = 2. 236 1
3 2 2 5 1 2 2 5
u u4 = A ku 3k =
3 u = 1 1066 = 2. 511 5 13
9 1066 26 2 2132 1 1066 26 2 2132
2 1 0 1
3 0 1 1
7 10 52 1 10 5 2
u =
3 A ku u3 k
3 u = 5 = 2. 236 1
7 10 2 1 10 2
El autovalor mximo aproximado es = 3. 109 8, con signo negativo ya que sign u4 , u3 = 1 y su autovector asociado es ! 27 82 1066 26 2 2132 . 958 8 65 026 x = = , 282 . 284 09 1066 26 2 533 65 026 con signo positivo ya que (1)4 = 1. n sign u4 , u3 =
2 1 0 1
3 2 2 1 10 2
4 1 u = 113 = 2. 126 5
x =
2. A =
3 0 1 1
1
Problema 92 Calcular el autovalor mayor y el autovec2 1 tor correspondiente de la matriz utilizando 1 1 el mtodo de la potencia, dando 2 iteraciones del mtodo a partir de u1 = (1, 1) y tomando como norma kuk = maxi |ui | Solucin: 2 1 1 1 2 1 1 1 1 1 1 0 1 0
u2 = A ku u1 k = = 3 0 1 1
1 2 1 2
1. ku1 k = 1 u2 = = ku2 k = 1 u3 =
3 2 2 , 2 2 1 u = 26 = 2. 549 5 2 3 26 26 2 = 1 13 26 2
31
2 1
Producto escalar (u2 , u3 ) = 2 > 0. autovalor mximo = ku3 k = 2 Autovector asociado normalizado
u3 ku3 k
u3 = A ku u2 k = =
1 1/2
3 0 1 1
Problema 93 Utilizar el mtodo de la potencia inversa para aproximar el autovalor ms pequeo de la matriz 2 1 A= 0 3 llegar hasta u3 partiendo de u = (1, 1). Solucin: Aun =
un1 kun1 k
2 1 0 0 1 1 u3 = 0 0 3 u3 =
1 30 14 15 2 15
6 5
2 3 1 3
5 6
, u2 = 14 15
14 15
2 1 0 3 u2 =
u2 =
(A 2Id)1 x = max x
Para calcular el autovalor ms cercano a 2, realizamos las siguientes operaciones: 1 x = (A 2Id) x max 1 Id x =0 A 2Id max 1 A 2+ =0 Id x = (A prox Id) x max 1 1 43 prox = 2 + = 2 + 14 = max 14 15 prox = 3. 071 4
2 1 0 3 u3 =
3 u es el autovalor mximo de A1 , con lo que el 1 6 autovalor mnimo de A es min = k 10 = 1. u3 k = 10 3 2 = 1. 897 4, con signo negativo ya que sign u , u Problema 94 Calcular el autovalor y autovector ms cercano a 2 de la matriz 0 1 0 0 3 1 0 0 1
1 1 2 6 , u2 = = . 333 33 1 3 6 2 u3 =
1 3 2 1 6 2
1 2 2 1 2 2
1 , u3 = 10 = . 527 05 6
Problema 95 Calcular 3 iteraciones del mtodo de Jacobi para resolver el sistema 1 1 0 x 1 1 2 0 y = 3 0 1 3 z 1 partiendo de u1 = (0, 0, 0)
para ello calcular dos iteraciones del mtodo de la potencia inversa partiendo de u1 = (1, 1, 1).
Solucin: 2 1 0 1 1 A0 = A 2Id = 0 0 0 3
Solucin: Despejamos la diagonal para plantear el mtodo iterativo : xn yn zn = yn1 + 1 xn1 + 3 = 2 yn1 + 1 = 3
2 1 0 1 0 1 1 u2 = 1 0 0 3 1 5 6 2 2 u2 = 3 , u = 1 3
5 = . 833 33 6
2. u3 = 1
5 6
1 2
32
3. u4 =
0
7 4 2 3
Solucin: El mtodo es igual que en el problema anterior, excepto que en este caso los clculos se realizaran de abajo para arriba, es decir, primero se calculara z , se sustituira su valor en la ecuacin de y y, por ltimo, estos dos valores se sustituiran en la primera ecuacin. una base ortogonal de autovec0 1 2 0 , 0 1 1 0 1 Problema 99 Calcular 3 iteraciones del mtodo de relajacin para resolver el sistema 1 1 0 x 1 1 2 0 y = 3 , 0 1 3 z 1 partiendo de u1 = (0, 0, 0). Calcular previamente el parmetro de relajacin ptimo Solucin: x y = 1 x + 2y = 3 y + 3z = 1 Clculo del wopt : 1 3 1 Al ser A tridiagonal, el wopt se puede calcular como wopt = 2 q 1 + 1 (MJ )2
Solucin:
1. Autovectores y autovalores: 0 1 0, 0 , 1 2 1 0
del mtodo de
Solucin: Despejamos la diagonal para plantear el mtodo iterativo, teniendo en cuenta adems que vamos actualizando los valores segn los clculamos: xn yn zn = yn1 + 1 xn + 3 = 2 yn + 1 = 3
1 0
1 3
0 x 1 0 y + 3 2 1 z 0 3 : 1 1 0, , , luego 2 2 =
1+ 2 1 1 2
wopt = wopt =
1+
2 1(MJ )2
2 1+ 1 2 2
4 2+ 2
Problema 98 Una variante del mtodo de Gauss-Seidel 1 1 es tomar M = (D + U ) (L), y c = (D + U ) b. indicar en este caso que diferencias de implementacin habra con respecto al caso anterior.
33
w (1. 071 1 1) (1 w) 1. 171 6 35 = + (1 w) 1. 071 1 u3 = w 3+. 284 2 1+1. 740 2 w + (1 w) . 808 83 3 . 284 35 = 1. 740 2 . 931 34 w (1. 740 2 1) + (1 w) . 284 35 42 = + (1 w) 1. 740 2 u4 = w 3+. 818 2 1+1. 938 2 w + (1 w ) . 931 34 3 . 818 42 = 1. 938 2 . 987 65 Problema 100 Demostrar que si una matriz A verica que por las o columnas su suma es siempre igual a 0, entonces el determinante de A es cero, y por tanto el sistema asociado a A no tiene solucin. Solucin: Si |A| = 0, entonces la matriz A no es invertible y el sistema no tiene solucin. 1. Vamos a demostrar que si la suma por las de A es igual a cero, entonces |A| = 0 : Pn j aij = 0, esto es equivalente a lo siguiente: A 1 1 . . . 1 = 0 0 . . . 0 =0 1 1 . . . 1
Solucin: Sean xi los autovectores de M correspondientes a autovalores menores que 1: P u1 = n i=1 ai xi Pn c = i=1 ci xi u2 = M u1 + c u3 = M u2 + c = M M u1 + c + c = M 2 u1 + M c + c . . . un = M n1 u1 + M n2 c + . . . M c + c = = M n1 u1 + M n2 + . . . M + 1 c Tomando el primer sumando: Pn Pn M n1 u1 = M n1 i=1 ai xi = M n2 i=1 ai M xi = Pn Pn 1 = M n2 i=1 ai i xi = . . . i=1 ai n xi i
Como u1 depende linealmente de los xi (autovectores) 1 cuyos autovalores i son menores que uno, entonces n i tiende a 0 cuando n tiende a innito, luego este trmino converge. Para el segundo sumando: n2 M + ...M + 1 c = Pn = M n2 + . . . M + 1 i=1 ci xi = P Pn n = M n2 i=1 ci xi + . . . M i=1 ci xi + Pn Pn 2 + i=1 ci xi = i=1 ci n xi + i Pn Pn + . . . i=1 ci i xi + i=1 ci xi = 2 Pn = i=1 ci xi n + . . . + i + 1 i {z } |
Serie geomtrica convergente
Esto signica que la matriz A posee un autovalor igual a cero ( = 0). El determinante de una matriz es igual al producto de sus autovalores: |A| =
n Y
i=1
i = 1 . . . 0 . . . n = 0
2. Para demostrar que |A| = 0 cuando la suma por columnas es cero, basta saber que |A| = AT y aplicar el argumento anterior a AT
con lo que este trmino tambin converge. Problema 102 Calcular 2 iteraciones del mtodo de Newton-Raphson no-lineal para aproximar una raz del sistema de ecuaciones x2 + y 2 1 = 0 yx=0 partiendo de (x, y ) = (1, 1). Solucin: 2 x + y2 1 = 0 2x 2y f (x, y ) = yx=0 1 1
34
Pn
1 i=1 ci xi 1i ,
Demostrar que aunque el radio espectral de M sea mayor que 1, si u1 y c son combinaciones lineales de autovectores de M correspondientes a autovalores de mdulo menor que 1, entonces el mtodo converge.
ax3 3axy 2 + bx2 by 2 + cx + d = 0 3ax2 y ay 3 + 2bxy + cy = 0 3ax2 3ay 2 + 2bx + c 6axy 2by f = 6axy + 2by 3ax2 3ay 2 + 2bx + c f= El proceso iterativo es de la forma: un = (xn , yn ) f (un ) z = f (un ) un+1 = un + z Algoritmo: Este algoritmo utiliza una funcin, Sistema(A, u), para resolver un sistema de ecuaciones. Las funciones F (u) y F (u) se utilizan para evaluar la funcin y el gradiente de la funcin en un punto, respectivamente. Funcion F (u) f (1) = a u(1)3 3a u(1) u(2)2 + +b u(1)2 b u(2)2 + c u(1) + d f (2) = 3a u(1)2 u(2) a u(2)3 + +2b u(1) u(2) + c u(2) devolver f Fin funcion Funcion F (u) 2 f (1, 1) = 3a u (1) 3a u(2)2 + 2b u (1) + c f (1, 2) = 6a u (1) u (2) 2b u (2) f (2, 1) = f (1, 2) f (2, 2) = f (1, 1) devolver f Fin funcion Algoritmo un1 = (x0 , y0 ) /* calculamos la primera aproximacin */ z = Sistema F un1 , F un1 un (1) = un1 (1) + z (1) un (2) = un1 (2) + z (2) n=0 Mientras un un1 T OL y (n < T OP ) un1 = un /* calculamos la siguiente aproximacin */ z = Sistema F un1 , F un1 un (1) = un1 (1) + z (1) un (2) = un1 (2) + z (2) n=n+1 Fin Mientras Si (n = T OP ) Entonces ERROR: No se ha encontrado solucin Fin Si Fin Algoritmo
1 4 1 4
u =u +z =
3 4 3 4 3 2
1 1
1 4 1 4
u =
3 2
z1 z2 = 0
1 8
2.
1 z1 z2
1 =
1 24 1 24
u2 = u1 + z =
17 24 17 24
3 4 3 4
1 24 1 24
u2 =
. 708 33 . 708 33
Problema 103 Plantear el algoritmo necesario para calcular, utilizando el mtodo de Newton-Raphson, las races complejas o reales de un polinomio de grado 3. Solucin: P (z ) = az 3 + bz 2 + cz + d = 0 Un polinomio de grado 3 posee al menos una raz real. Las otras dos races pueden ser tambin reales o imaginarias conjugadas. Sea z un nmero complejo: z = x + yi, sustituyendo en la anterior ecuacin, P (x + yi) = a (x + yi)3 + b (x + yi)2 + c (x + yi) + d P (x + yi) = ax3 + 3iax2 y 3axy 2 iay 3 + +bx2 + 2ibxy by 2 + cx + icy + d = 0 Separamos la parte real de la parte imaginaria:
35
Problema 104 Se considera el sistema no-lineal (x 1)y = 0 (y 2)x = 0 A partir de u1 = (1, 1), calcular u2 y u3 utilizando el mtodo de Newton-Raphson para aproximar un cero del sistema no-lineal. Solucin: y x1 1. f (x, y ) = f (1, 1) = y2 x 1 1 0 1 0 0 2 u = + 1 1 1 1 1 1 1 = 1 2 1 2 0 2 0 0 f (1, 2) = u3 = + 0 1 0 1 0 1 1 = 2 2 Problema 105 Calcular 1 iteracin del mtodo de Newton-Raphson no-lineal para aproximar una raz del sistema de ecuaciones e
2 xyz 3
un+1 = un + z = 1 1 e (e 1) 11 = 1 + 2 1 3 15 1 2 e (e 1) 13 = 2 4
1 e (e 1) z1 11 z2 = 2 z3 3
17 2
17 2
INTERPOLACION DE FUNCIONES II Problema 106 Calcular los polinomios base de Hermite que corresponden a tomar como puntos de interpolacin x0 = 1, x1 = 1, y el orden de derivacin M = 1. Solucin: Los polinomios de Hermite que corresponden a esos puntos de interpolacin vienen dados por las grcas 4, 5, 6 y 7.
y z 2=0
1=0
0.2
0.4
0.6
0.8
1.0
f (x, y, z ) =
xze 2y 0
xyz
xye 3z 2 x4
xyz
Iteracin: e1 e e e z1 0 2 3 z2 = 2 3 0 0 1 z3
36
exyz 1 = y z3 2 (z 1)x4 3
z1 xyexyz 3z 2 z2 = x4 z3
0.4 0.2
0.2
0.4
0.6
0.8
1.0
(x 1)2 (x + 2)
0.2
0.4
0.6
0.8
1.0
2. Para calcular el segundo polinomio partimos de la grca 5. En sta, La funcin se anula en -1 y 1, la derivada en -1 es igual a 1 y su derivada en 1 es cero. Por la misma razn que en el caso anterior, sabemos que la funcin posee dos races en 1, con lo que el polinomio tiene la forma,
1 H 1 (x) = (x 1) (a (x + 1) + b) 2
0.2
0.4
0.6
0.8
1.0
y
-0.2 -0.4 -0.6 -0.8 -1.0
1 H 1 (1) = (1 1) (a (1 + 1) + b) = 4b = 0
+ (1 1) a = 1 4a = 1
1. La grca 4 se hace cero en 1 y sus derivadas, tanto en ese punto como en 1, valen cero. Este polinomio tiene dos races en 1 (la segunda debido al valor de su derivada en 1), con lo que la forma de este polinomio es como sigue:
0 H 1
(x) = (x 1) (a (x + 1) + b)
1
4
(x + 1)
3. Para calcular los otros dos polinomios, basta considerar que son funciones simtricas a las dos anteriores. En la grca 6 se puede ver que esta funcin 0 es simtrica a H 1 (x) (ver grca 4) con respecto al eje de las y. El polinomio es por tanto,
0 0 H1 (x) = H 1 (x) 0 (x) = H1 1 4
(1 1)2 (a (1 + 1) + b) = 4b = 1 b=
1 4
(x 1)2 (x + 2)
0 H1 (x) = 1 4 (x + 1) (x 2) 2
4b + 4a = 0
37
4. Por ltimo, la funcin representada en la grca 7, es 1 simtrica al polinomio H 1 (grca 5) con respecto al origen, con lo que,
1 1 H1 (x) = H 1 (x)
x [1, 0]
2 2 3 P2 (x) = 2 3x + 5x + 19 15 x
x [0, 1] P3 (x) =
8 15
2 1 (x) = (x 1) 1 H1 4 (x + 1)
1 H1 (x) = 1 4 2
(x 1)3
8 5
(x 1)2 +
1 15
(x 1) + 1
x [1, 2]
(x + 1) (x 1)
1.0
Problema 107 Calcular los polinomios que determinan la interpolacin por splines cbicos de la funcin f (x) = sin x para los puntos x = 1, 0, 1, 2 2 Solucin: Los polinomios son de la forma: P (x) = dx3 + cx2 + bx + a Vamos a calcular los coecientes para cada intervalo: hi = 1 ai = f (xi ) (xi xi1 ) i = 0, . . . N
-1
0.5
1 -0.5
-1.0
2 x y su
Problema 108 Calcular la funcin que interpola, utilizando la funcin sinc(x) a la funcin f (x) = sin(x) en los puntos x = , 2 , 0, 2 , . Solucin: sinc (x) =
sin(x) x
c0 = c3 = 0 0 4 1 c1 = 6 c2 1 4 c1 c2 =
2 5 8 5
xi = a i =
[2, 1, 0, 1, 2]
2x
di =
ci+1 ci 3hi
2 5
i = 0, . . . N 1
3 8
8 5 2 5 5
d0 d1 = d2 bi =
(ai+1 ai ) hi
2 152 3 =
8 15
+f (0) +f ( ) + sin =
2x
) )
+f
x sin( ( 2 2))
x sin(( 2 1)) + 2 x 2 ( 1)
hi (2ci +ci+1 ) 3
2x 2
= sin =
i = 0, . . . N 1
13 15 19 15 1 15
2 1 15 b0 8 b1 = 1 4 55 = 3 b2 1 + 16 15
sin 2x 2x+
sin(2x)
2 2x
sin(2x ) 2x
sin(2x+)
2 2x+
+ = =
sin(2x+ ) 2x+
sin 2x 2x
2x = 2 4sin x2 2
(x + 1)3 +
13 15
(x + 1) 1
38
1.0
0.5
-10
-8
-6
-4
-2 -0.5
2 ix e =
-1.0
=1 2
cos x
El resultado de la aproximacin es, por tanto, Figure 9: Comparacin del sin x con su aproximacin numrica utilizando sin c(x), tomando como puntos de in terpolacin x=, 2 , 0, 2 , . (x) 1 4 cos x f 2 La siguiente grca compara f (x) = |x| con su aprox(x) para N = 2 en el intervalo [, ]. imacin f |x|
1.0
0.5
5 4
-10
-8
-6
-4
-2 -0.5
10
3 2 1
-1.0 -3 -2 -1 0 1 2 3
Figure 10: Comparacin del sin x con su aproximacin numrica utilizando sin c(x), tomando como puntos de in3 3 terpolacin x=2, 2 , , 2 , 0, 2 , , 2 , 2 Problema 109 Calcular el polinomio trigonomtrico tomando N = 2, que interpola a la funcin f (x) = |x| en el intervalo [, ]. Solucin: x si x 0 |x| = x si 0 x La interpolacin por polinomios trigonomtricos tiene la forma: (x) f
2 X
Polinomio trigonomtrico (N = 2, [, ]) En la siguiente grca se realiza la misma comparacin tomando 20 muestras en el intervalo [, ]. |x|
5 4 3 2 1
ck eikx ,
-3
-2
-1
k=2
39
aproximacin
mnimo
Solucin: Aplicando las frmulas para calcular los coecientes de la recta que ms se aproxima a estos puntos, obtenemos: a=
N SN S SN xi yi N i=1 xi i=1 yi SN SN 2 2 N i=1 xi ( i=1 xi )
i=1
=
1 2
= b=
SN
i=1
= =0
P (x) = ax + b = 1 2x
4 3 2 1 0 0 1 2 3
40