You are on page 1of 4

EJERCICIOS DEL TEMA 2: SOLUCIÓN DE

SISTEMAS DE ECUACIONES LINEALES


Universidad
Industrial de Métodos Numéricos
Santander Primer Semestre Académico 2017
Prof. Giovanni Calderón
Facultad de Fisicomecánicas
Escuela de Ingenierı́a Civil e-mail: gcalderon@matematicas.uis.edu.co

∗∗ I NSTRUCCIONES .
a) En todos los problemas, intente resolver cada ejercicio de manera independiente. Solo después de esto, busque ayuda en los solucionarios,
internet o grupos de estudio. El trabajo independiente forjará sus conocimientos en el tema.

b) Los ejercicios planteados reflejan el tipo de problema que se pueden pedir en el previo de la materia. Sin embargo, en ningún momento, esto
representa que sean los mismos problemas.

c) Muestre explı́citamente todo el trabajo que ha realizado para justificar sus respuestas. (JUSTIFIQUE O GUÍE SUS OPERACIONES CON
PALABRAS).

Problema 1. Resuelva usando eliminación gaussiana. Muestre los múltiplos obtenidos de los elementos pivotes, mij , que se van
obteniendo y los intercambios de renglones que se requieren en el algoritmo.

5x1 + x2 − 6x3 = 7 5x1 + x2 − 6x3 = 7


a.) 2x1 + x2 − x3 = 8 b.) 2x1 + x2 − x3 = 8
6x1 + 12x2 + x3 = 9 6x1 + 12x2 + x3 = 9

Problema 2. Use eliminación gaussiana y aritmética truncada a dos dı́gitos para resolver

3.03x1 − 12.1x2 + 14x3 = −114


0.03x1 + 58.9x2 = 59.2
−3.03x1 + 12.1x2 − 7x3 = 120
a.) 5.31x1 − 6.10x2 = 47.0 b.)
6.11x1 − 14.2x2 + 21x3 = −139
Solución: [10, 1]
Solución: [0, 10, 1/7]

Si su aproximación numérica no es precisa en cuanto a la solución dada, que estrategia usarı́a para mejorar dicha solución.

Problema 3. Suponga que


2x1 + x2 + 3x3 = 1
2x1 + 6x2 + 8x3 = 5
x1 + α12x2 + 10x3 = 5
Encuentre el rango de los valores de α donde no se requiera intercambio de renglones cuando resuelva el sistema aplicando pivoteo
parcial.

Problema 4. Resolver el siguiente sistema usando eliminación Gaussiana con pivoteo total

−9 1 17 5
 
x1 
 
 x 
3 2 −1  = 9 
  
 2

6 8 1 x 3 −3

Problema 5. Considere la siguiente matriz:

0.932165 0.443126 0.417632


 

A =  0.712345 0.915421 0.887652 


 

0.632165 0.514217 0.493909

Calcular la descomposición LU de A usando lu.m de MATLAB. Calcular cond∞ (A), cond∞ (U) y cond∞ (L).

Problema 6. Calcular los números de condición de

100 99
 
usando kAk∞ , kAk1 y kAk2
99 98

Problema 7. Usando la norma k · k1 calcular el número de condición de la matriz

1 1+ε
 

1−ε 1
 
1 2
Problema 8. En la resolución de Ax = b con A = predecir cómo pequeños cambios en b afectarán la solución x.
1 2.01
Comprobar su predicción en el caso b = [4, 4]′ y b = [3, 5]′

Problema 9. Sean
0.550 0.423 0.127 −41.54
     
A= b= x̃
0.484 0.372 0.112 54.33

1. ¿Cuál es la solución exacta de Ax = b?.

2. ¿Está x̃ cerca de x?.

3. Sea δA = r x̃T /x̃T x̃ con r el vector residual. Mostrar que

r = [−0.00759 0.0066]T y kδAk2 = 0.14707 10−3

4. Verificar que (A + δA)x̃ = b

5. ¿Es x̃ la solución de un sistema cercano al original?. Comentar sobre los resultados.

Problema 10. Dado el sistema Ax=b, con

0.780 0.563 0.217


   
b=
0.913 0.659 0.254

y las dos aproximaciones:


x1 = [0.999 − 1.001]t x2 = [0.341 − 0.087]t
calcular el vector residual correspondiente a estas aproximaciones y determinar los errores. Sacar conclusiones.

Problema 11. Considere la matriz triangular inferior unitaria


1 
 −1 1 
 
 
 −1 −1 1 
 
 
 −1 −1 −1 1 
 
 
Ln = . . .. 
 . . .


 . . −1 −1 

 
 . . . . ..

 . . . . .


 . . . . 1 

 
−1 −1 −1 ··· ··· −1 1

1. Calcular kLn k∞ .

2. Para n = 4 hallar un vector unitario de norma ∞ tal que kLn xk∞ = kxk∞ .

3. ¿Qué forma tiene la inversa?.

4. Usando la información de b), hallar la inversa para n = 4.

Problema 12. Aplique la descomposición de Cholesky sin raı́ces cuadradas, para resolver el sistema Ax = b con:

4 1/2 1 1
   

A =  1/2 17/16 1/4  y b =  1 


   

1 1/4 33/64 2

Problema 13. Describir el algoritmo de Cholesky para el caso de una matriz tridiagonal simétrica y definida positiva.

Problema 14. Calcular los números de condición de las siguientes matrices, relativos a k·k∞ .

1 2 3.9 1.6 4.56 2.18


     
a) b) c)
1.0001 2 6.8 2.9 2.79 1.38

Problema 15. Sea el sistema Ax = b, donde

1000 999 x1 1999


     
A= , x= , b= .
999 998 x2 1997

1. Obtener la factorización LU de la matriz A. ¿Se puede conseguir la factorización de Choleski?

2. Resolver el sistema Ax = b utilizando la factorización A = LU obtenida en el apartado anterior.


Componentes Cobre Zinc Vidrio
Transistores 4 1 2
Resistores 3 3 1
Chips de computadora 2 1 3

Cuadro 1: Tabla del Problema 23

3. Calcular kAk∞ , kA−1 k∞ y el número de condición de la matriz A. ¿Se puede decir que está bien condicionada?

4. Compruebe que kAxk∞ = kAk∞ para la solución (1, 1)′ del sistema Ax = b. ¿Cuál es el máximo valor que puede tomar
kAxk∞ , cuando x es un vector unitario para la norma k · k∞ ?

5. Si se perturba b en b + δb = (1998.99, 1997.01)′ , calcular kδbk∞ /kbk∞ . Si x + δx es la solución obtenida para el nuevo sistema
Ax = b + δb, ¿es el error relativo kδxk∞ /kxk∞ el máximo que se puede cometer?
Sugerencia: kδxk∞ /kxk∞ 6 cond(A)kδbk∞ /kbk∞

Problema 16. Si, para un determinado sistema y comenzando con un determinado vector x0 , el método de Gauss-Seidel requiere 50
iteraciones para aproximar la solución con un error menor que ε y en la iteración 49 se pierde la primera coordenada del vector x49 y
la sustituimos por un valor arbitrario, ¿se obtendrá en el paso siguiente la solución buscada con el mismo error que si no hubiésemos
perdido el dato? ¿qué ocurrirı́a si la coordenada que perdemos del vector x49 es la segunda en vez de la primera?

Problema 17. Si A tiene una factorización de Doolittle, ¿cuál es una fórmula simple para el determinate de A?

Problema 18. Suponga que la matriz no singular A tiene una factorización de Cholesky. ¿Qué se puede decir del determinante de
A?
Problema 19. Use los métodos iterativos de Jacobi y Gauss-Seidel para obtener la solución del sistema

3x1 − 0.1x2 − 0.2x3 = 7.85


0.1x1 + 7x2 − 0.3x3 = −19.3
0.3x1 − 0.2x2 + 10x3 = 71.4

Recuerde que la solución verdadera es x1 = 3, x2 = −2.5 y x3 = 7.

Problema 20. Use técnicas iterativas de refinamiento para mejorar x1 = 2, x2 = −3 y x3 = 8, que son soluciones aproximadas de

2x1 + 5x2 + x3 = −5
6x1 + 2x2 + x3 = 12
x1 + 2x2 + x3 = 3

Problema 21. Sea


α 1 0
 

 β 2 1 
 

0 1 2
Obtenga los los valores de α y β para los cuales: A es singular, A es estrictamente diagonal dominante, A es simétrica, y A es definida
positiva.

Problema 22. Cree una matriz A dada por una matriz de Hilbert 3 × 3. Multiplique la matriz por un vector columna x = [1, 1, 1]T .
Llame b al vector columna que resulta del producto Ax. Con el uso de MATLAB y la eliminación gaussiana, encuentre la solución del
sistema Ax = b, usando la matriz de Hilbert A y el vector b que calculó previamente. Compare los resultados con su vector x conocido
(utilice precisión suficiente al mostrar los resultados con el objeto de permitir detectar imprecisiones). Repita el proceso para una
matriz de Hilbert 7 × 7 y una 10 × 10.

Problema 23. Una compañı́a de electrónica produce transistores, resistores y chips de computadora. Cada transistor requiere cuatro
unidades de cobre, una de zinc y dos de vidrio. Cada resistor requiere tres, tres y una unidades de dichos materiales, respectivamente,
y cada chips de computadora requiere dos, una y tres unidades de los materiales, respectivamente (ver Tabla 1).
Los suministros de estos materiales varı́an de una semana a la otra, de modo que la compañı́a necesita determinar una corrida de
producción diferente cada semana. Por ejemplo, cierta semana las cantidades disponibles de los materiales son de 960 unidades de
cobre, 510 unidades de zinc y 610 unidades de vidrio. Plantee el sistema de ecuaciones que modela la corrida de producción y resuelva
con MATLAB para saber cuál es el número de transistores, resistores y chips decomputadora por manufacturar esta semana.

Laboratorio
Problema 1. Hallar la descomposición LU, el determinante, los autovalores y el número de condición de las siguientes matrices
usando MATLAB:
1.
2
 4 0 1 −1 
 −1 −2 0 0 1 
 
 
A=
 0 0 0 1 0 


 −1 1 −3 1 0 

2 0 4 2 2
2. B, la matriz de Hilbert de orden 6. (Usar hilb.m para generarla con formato racional para visualizarla).

Problema 2. Se quiere resolver el sistema Ax = b, con A una matriz simétrica definida positiva. Supongamos que A está dada por
la factorización A = LU, donde las matrices L y U las podemos obtener a partir del comando lu.m de MATLAB pero suponiendo
siempre que A es simétrica definida positiva. Implemente los algoritmos de sustitución progresiva y regresiva para resolver el sistema
LUx = b.

Problema 3. Modifique los códigos anteriores para el caso especial de una matriz en banda (tridiagonal) de orden n.

Problema 4. Suponga que se quiere resolver el sistema Ax = b, con A una matriz simétrica definida positiva. Implemente los
algoritmos de Doolittle y Cholesky y valide sus códigos usando ejemplos sencillos y la factorización lu.m de MATLAB.

Problema 5. Implemente los algoritmos iterativos de Jacobi y Gaus-Seidel y valide sus códigos usando ejemplos sencillos y compa-
rando su solución con la obtenida con x = A\b de MATLAB.

Problema 6. Se quiere resolver Ax = b, pero ahora suponemos que la matriz A no es necesariamente definida positiva. Para este caso,
la factorización LU queda dada por LU = P A, donde P es una matriz de permutación que contiene la información del intercambio
de renglones necesarios en la factorización. Usando tres argumentos, el comando lu.m en MATLAB queda dado por

[L,U,P] = lu(A)

Siguiendo la ayuda de MATLAB para el comando lu() y su uso para el caso en que es necesario hacer intercambio de renglones,
modifique el código creado en el Problema 2, de este Laboratorio, para tomar en cuenta la matriz P de permutación al resolver el
sistema.
Problema 7. Implemente el algoritmo de refinamiento iterativo para resolver el sistema Ax = b, dada una condición inicial x0 y un
máximo número de iteraciones. Valide su código con la matriz

 1 2 0 1   1   1 
 0 1 3 1   2   1 
A= , b= , x0 = 
     

 8 0 2 1   3   1 
0 2 1 0 4 1

donde x0 representa la condición inicial. Analice los resultados obtenidos (número de iteraciones, error, condición de la matriz A).
Cambie ahora la matriz A por la matriz de Hilbert 4 × 4, con los mismos valores de b y x0 (utilice hilb() para generar la matriz).
Además use una tolerancia de 10−12 y un máximo de 2000 iteraciones. ¿Cómo son los resultados obtenidos? ¿Cuál es el número de
condición de A? Repita el proceso para la matriz de Hilbert 5 × 5 y 6 × 6 ajustando los vectores b y x0 a estas dimensiones. ¿Cómo
son los resultados en estos caso, qué puede concluir?

You might also like