Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf ·...

44
E. T. S. I. Caminos, Canales y Puertos 1 Análisis Numérico Parte 3

Transcript of Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf ·...

Page 1: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 1

Análisis Numérico

Parte 3

Page 2: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 2

Sistemas de ecuaciones• En la parte 2 hemos tratado de determinar el valor de x, que satisface

f(x)=0. Es este tema trataremos de obtener los valores x1,x2, xn, que de forma simultánea satisfacen un conjunto de ecuaciones.

• Tales sistemas pueden ser lineales o no lineales, en este tema tratamos los sistemas lineales.

Page 3: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 3

Sistemas de ecuaciones• Donde a y b son coeficientes constantes, y n es el número de

ecuaciones.• Muchas de las ecuaciones fundamentales de la ingeniería están

basadas en leyes de conservación, algunas de las cantidades que conforman esas leyes son la masa, la energía, … En términos matemáticos, esos principios nos conducen a ecuaciones de balance o de continuidad que relacionan el comportamiento del sistema enreferencia a la cantidad sujeta a modelamiento, con los estímulos externos que actúan sobre el sistema.

Page 4: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 4

Sistemas de ecuaciones• Las matrices son conjuntos rectangulares de elementos

representados por un solo símbolo. Si el conjunto es horizontal, se llama vector fila, si es vertical se llama vector columna.

Columna 3

Fila 2 Vector columna

Vector fila

Page 5: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 5

Sistemas de ecuaciones• Hay diferentes formas especiales de matrices cuadradas que son

especiales:Matriz simétrica

Matriz identidad

Matriz diagonal Matriz triangular superior

Page 6: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 6

Sistemas de ecuaciones

Matriz banda

Todos los elementos son iguales a cero excepto una banda centrada alrededor de la diagonal principal. La matriz en cuestión tiene un ancho de banda de 3, y recibe un nombre especial. Matriz tridiagonal.

Semiancho de banda

Matriz triangular inferior

Page 7: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 7

Sistemas de ecuaciones

• Representación matricial de un sistema.

Producto matricial:

Dimensiones del resultado

Page 8: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 8

Sistemas de ecuaciones• Resolución gráfica: los sistemas de ecuaciones son hiperplanos

(rectas, planos,…). La solución de un sistema es por tanto la intersección de esos hiperplanos.

Sistema compatible determinado, vectores linealmente independientes. Solución única. Determinante de A distinto de cero.

Page 9: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 9

Sistemas de ecuaciones

Sistema incompatible, vectores linealmente dependientes. Determinante de A igual a cero. No existe solución.

Sistema compatible indeterminado, vectores linealmente dependientes. Determinante de A igual a cero. Existen infinitas soluciones.

Page 10: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 10

Sistemas de ecuaciones

Sistema compatible determinado, vectores linealmente independientes. Determinante de A distinto de cero pero muy cercano a cero. Existe solución, pero no de forma clara. Por eso en un problema mal condicionado que produce errores numéricos.

Page 11: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 11

Sistemas de ecuaciones• Método de eliminación de Gauss simple- el método de Gauss comprende

dos fases: eliminación hacia delante de las incógnitas para reducir el sistema (matriz A) en uno triangular superior.

• Primero elimino la incógnita x1. Para ello multiplico la primera fila por -a21/a11y se la sumo a la segunda. Y así sucesivamente con todas las filas (n-1veces) hasta que sólo la primera ecuación tenga la incógnita x1.

Ecuación pivote

resto

pivote

Page 12: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 12

Sistemas de ecuaciones• Repito esta operación con todas variables xi, hasta que obtengo una matriz

triangular superior.

• A continuación resuelvo el sistema por sustitución hacia atrás.

• El número de operaciones (FLOPS) que se realizan con el método de Gauss son:

Paso 1 Paso 2

Page 13: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 13

Sistemas de ecuaciones• De aquí se sacan dos conclusiones:

1. Cuando el sistema aumenta de tamaño el tiempo de resolución aumenta considerablemente.

2. El esfuerzo de mejora se ha de centrar en el proceso de eliminación.• Problemas del método de Gauss:

1. Si el elemento pivote es cero, se produce una división por cero.2. Conforme aumenta el tamaño del sistema (n>100) aumentan los errores

de redondeo por el gran incremento de operaciones a realizar.• Técnicas para mejorar las soluciones:

1. Uso de doble precisión en los cálculos.2. Uno de los problemas de la técnica de Gauss es que el elemento pivote

sea cero, o cercano a cero. Ya que esto puede producir errores de redondeo. Por eso es ventajoso determinar el coeficiente más grande disponible debajo de la columna pivote, e intercambiar filas para que este elemento sea el pivote.

Page 14: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 14

Sistemas de ecuaciones• Esto se conoce como pivoteo parcial. Si además de buscar elemento

más grande por filas, lo hago también por columnas se conoce comopivoteo total. Normalmente no se hace pivoteo total porque introduce una gran complejidad en el método.

3. Escalamiento, si antes de realizar el pivoteo normalizo los elementos por el elemento máximo de la fila pivote, minimizo los errores de redondeo. Esto es conveniente en determinados problemas de ingeniería en los que se usan unidades diferentes en cálculos simultáneos.

• Un problema añadido del escalamiento es que puede introducir errores de redondeo por si mismo, por lo que es habitual hacer un escalamiento simulado de la fila pivote. Con el valor del pivote temporal obtenido realizo el pivoteo parcial, y si tengo que intercambiar filas lo hago con la fila original de antes del escalado.

• A continuación se explica el pseudocódigo para implementar el método de Gauss con pivotaje parcialmente escalado.

Page 15: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 15

Sistemas de ecuaciones• Entrada: matriz de coeficientes a(n,n), y vector de términos independientes

b(n).• Paso 1: Almacene en un vector s(n) los valores máximos de cada fila

(ecuación)• Paso 2: Para k=1, …, n-1 hacer los pasos 3-8. (Eliminación)

– Paso 3: Para j=k, …, n. Determino en la columna k, el mayor valor del cociente a(j,k)/s(j). Si el cociente es menor que una tolerancia prefijada el sistema es singular o mal condicionado, salir

– Paso 4: Si k distinto de j, intercambio las filas para el proceso de eliminación

– Paso 5: para i=k+1, …, n hacer los pasos 6-8• Paso 6: Calcular el coeficiente para pivotar m=a(i,k)/a(k,k)• Paso 7: Para j=k+1, …, n a(i,j)=a(i,j)-m*a(k,j)• Paso 8: b(i)=b(i)-m*b(k)

• Paso 9: Si a(n,n)=0, no existe solución única. Salir.• Paso 10: De i=n-1, …,1 sustitución hacia atrás. x(n)=b(n)/a(n,n)

– Paso 11: De j=i+1,n b(i)=b(i)-a(i,j)*x(j)– Paso 12: x(i)=b(i)/a(i,i). Salida del resultado x.

Page 16: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 16

Sistemas de ecuaciones• Método de Gauss-Jordan- el método de Gauss-Jordan es una variación del

método de Gauss. La principal diferencia es que en este método cada vez que se realiza el paso de eliminación, se hace con todas las ecuaciones, no sólo con las de debajo de la fila pivote. Además, ésta también se normaliza. El resultado es una matriz unidad, en vez de una triangular superior. Y la solución del sistema queda directamente almacenada en el vector btransformado.

• Todo lo relativo a mejoras es igual que en el método de Gauss. Pero el problema de este método es que requiere aproximadamente un 50% más de operaciones, por lo que se prefiere el de Gauss como método de eliminación.

• Los dos métodos que hemos visto están encuadrados dentro los llamados métodos de eliminación. Pasaremos a continuación a describir una serie de técnicas que se llaman de descomposición.

Page 17: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 17

Sistemas de ecuaciones• Descomposición LU- la descomposición LU es un método que se ayuda de

las técnicas de eliminación para transformar la matriz A en un producto de matrices triangulares. Esto es especialmente útil para la resolución de sistemas con diferentes vectores b, ya que la descomposición de A me sirve para evaluar de forma eficiente por sustitución hacia delante y hacia atrás todos los sistemas.

A = L U

Page 18: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 18

Sistemas de ecuaciones

DescomposiciónA = L U

Sistema inicialA X = B

Sistema transformado 1L U X = B

SustituciónU X = D

Sistema transformado 2L D = B

Sustitución hacia adelanteDSustitución hacia atrás

X

Page 19: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 19

Sistemas de ecuaciones• La descomposición LU está muy relacionada con el método de Gauss, ya que

en éste último el objetivo era transformar el sistema en uno triangular superior, que es uno de los objetivos de la descomposición LU. Por tanto, sólo queda saber de donde obtenemos la matriz triangular inferior.

• Paradójicamente, durante el proceso de eliminación de Gauss se obtiene la matriz L, pero pasa desapercibida y no se utiliza. Si recordamos, cuandorealizamos el proceso de pivoteo, multiplicamos la fila pivote por un factor, y posteriormente se lo restábamos a la fila que queríamos transformar. Ese factor una vez usado se perdía. Pues bien, colocando convenientemente esos factores, se obtiene la matriz L.

resto

Page 20: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 20

Sistemas de ecuaciones

resto

resto

Page 21: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 21

Sistemas de ecuaciones• El algoritmo de descomposición LU requiere menos FLOPS que Gauss

porque no trabaja con el vector b.

• La fase de sustitución si que requiere mayor esfuerzo, ya que hay que hacer sustitución hacia delante y hacia atrás. Por tanto, en el cómputo global el número de operaciones es el mismo que el de Gauss.

Page 22: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 22

Sistemas de ecuaciones• Los mismos problemas que se planteaban en Gauss surgen en la

descomposición LU, y la forma de resolverlos es exactamente la misma.• Hay dos tipos de descomposición LU, la de Doolittle, en la que la matriz L

tiene los unos sobre la diagonal (la que hemos visto). Y la de Crout, en la que es la matriz U la que tiene los unos sobre la diagonal. Aunque hay algunas diferencias entre estas aproximaciones, su comportamiento es comparable.

• El pseudocódigo de la descomposición LU, es muy similar a la descomposición de Gauss, pero tiene 4 características que vale la pena mencionar:– Los factores de la fase de eliminación se guardan en la parte inferior de la

matriz.– Mantiene el pivoteo pero sin intercambio de filas, disponemos de un

vector con el orden de pivoteo.– Las ecuaciones no están escaladas pero se usan valores escalados para

determinar la fila pivote.– Se controla el término de la diagonal principal para comprobar si la matriz

es singular o está mal condicionada.

Page 23: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 23

Sistemas de ecuaciones• Entrada: matriz de coeficientes a(n,n), y vector de términos independientes b(n).• Paso 1: Almacene en un vector s(n) los valores máximos de cada fila (ecuación), y en

o(n) el orden inicial de las ecuaciones.• Paso 2: Para k=1, …, n-1 hacer los pasos 3-7. (Eliminación)

– Paso 3: Para j=k, …, n. Determino en la columna k, el mayor valor del cociente a(o(j),k)/s(o(j)). Si el cociente es menor que una tolerancia prefijada el sistema es singular o mal condicionado, salir

– Paso 4: Si k distinto de j, intercambio los elementos del vector o.– Paso 5: para i=k+1, …, n hacer los pasos 6-7

• Paso 6: Calcular el coeficiente para pivotar m=a(o(i),k)/a(o(k),k), y lo almaceno ena(o(i),k).

• Paso 7: Para j=k+1, …, n a(o(i),j)=a(o(i),j)-m*a(o(k),j)• Paso 8: Si a(n,n)=0, no existe solución única. Salir• Paso 10: Se obtiene la matriz P, y se cambia la A=P*A. Lo mismo con B=P*B.• Paso 11: De i=2, …,n sustitución hacia adelante. d(1)=b(1)

– Paso 12: De j=1,i-1 b(i)=b(i)-a(i,j)*b(j)• Paso 13: De i=n-1, …,1 sustitución hacia atrás. x(n)=b(n)/a(n,n)

– Paso 14: De j=i+1,n b(i)=b(i)-a(i,j)*x(j)– Paso 15: x(i)=b(i)/a(i,i). Salida del resultado x.

Page 24: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 24

Sistemas de ecuaciones• Inversa: una de las ventajas de la descomposición LU, es que se puede

hacer el cálculo de la inversa de una forma muy sencilla.

Page 25: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 25

Sistemas de ecuaciones• Por tanto lo que se hace es realizar la descomposición LU de la matriz A, y

resolver n subsistemas por sustitución hacia delante y hacia atrás. En cada uno de estos subsistemas el vector de términos independientes es la i-ésima columna de la matriz identidad.

• La interpretación física de la inversa es muy clarificadora. La mayoría de los sistemas lineales usados en ingeniería se derivan de las leyes de conservación, y la expresión matemática de esas leyes es un balance para asegurar la conservación de una determinada propiedad (masa, fuerza, energía, …). Así por ejemplo en una estructura, tendríamos el balance de fuerzas en cada nodo. Para un balance de masa podría ser la masa que hay en cada reactor de un proceso químico,…

• Si escribimos una ecuación simple de balance para cada una de las partes que componen el sistema, obtendríamos un conjunto de ecuaciones que definen el comportamiento de la propiedad para todo el sistema. Estas ecuaciones además están interrelacionadas ya que los componentesinteractúan entre ellos. Por tanto el vector X incógnita representa el valor de la propiedad tratada en cada parte del sistema. Y el vector B contiene los elementos del balance independientes del sistema, es decir los estímulos externos.

Page 26: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 26

Sistemas de ecuaciones• Si calculamos la inversa del sistema, es decir de la matriz A se obtiene un

resultado muy interesante.

• Además de calcular el valor de la propiedad estudiada en los elementos del sistema, cada elemento aik

-1 representa el valor de la propiedad, o la respuesta del sistema en el elemento i, cuando otra parte del sistema, el elemento k recibe un estímulo exterior unitario.

Page 27: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 27

Sistemas de ecuaciones• Además, como las formulaciones son lineales se puede aplicar:

– Principio de superposición, que implica que si un sistema está sometido a distintos estímulos, se pueden obtener las respuestas individualmente y posteriormente sumarlas.

– Proporcionalidad, que supone que si multiplicamos un estímulo por una cantidad fija, los resultados del sistema se multiplican por esa cantidad.

• La inversa, además nos proporciona un medio para discernir si un sistema está mal condicionado:– Escalando la matriz A de forma que el elemento mayor sea igual a 1. Se

invierte la matriz escalada y si hay elementos de la matriz A-1 de varios órdenes de magnitud mayor que la unidad, es probable que el sistema esté mal condicionado.

– Multiplicar la inversa por la matriz A original, y comprobar si el resultado está lo suficientemente cercano a la matriz identidad.

– Invertir la matriz inversa y estimar si el resultado está lo suficientemente cercano a la matriz original A.

Page 28: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 28

Sistemas de ecuaciones• Sin embargo, sería preferible obtener una medida más simple para conocer el

condicionamiento de un sistema. Esto se hace mediante las normasmatriciales.

• Normas matriciales, son funciones de valor real que proporcionan una medida del tamaño o longitud de un vector.– Normas Euclidianas

– Normas p, así la norma 2 es igual a la Euclidiana

– Norma vector-uniforme o de magnitud-máxima

Frobenius

Page 29: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 29

Sistemas de ecuaciones– Norma de fila-suma

– Norma de columna-suma

• Número de condición de una matriz es el valor

• Este número será mayor o igual que uno, y se puede demostrar que se cumple:

Page 30: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 30

Sistemas de ecuaciones• Que implica que el error relativo en la norma del vector calculado X puede ser

tan grande como el error relativo de la norma de los coeficientes de A multiplicada por el número de condición. Por tanto cuanto mayor sea el número condición mayores pueden ser los errores en la solución calculada y el sistema estará mal condicionado.

Page 31: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 31

Sistemas de ecuaciones• Como hemos visto, la interpretación de los sistemas de ecuaciones en

ingeniería es clara. Tratan de resolver balances de magnitudes que queremos estudiar, y que actúan y se relacionan en un conjunto interconectado de elementos. Por tanto si bien la actuación de un estímulo sobre uno de los componentes puede actuar sobre todos los demás, el cálculo de esa afección no se efectúa directamente entre el elemento afectado, y el elemento en el que deseamos conocer la respuesta. Sino que se produce un mecanismo de transferencia de información entre los componentes. Esto que en principio puede parecer complicado tiene una interpretación lógica y sencilla.

• Supongamos que tenemos un sistema de ecuaciones que simula el comportamiento de una estructura articulada

1

2

3

4

5

1

2

3

4

57

6

Page 32: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 32

Sistemas de ecuaciones• Tiene 5 nodos, y 7 barras. Si actúa una carga externa vertical sobre el nodo 2,

el sistema va a reaccionar y todos los componentes o muchos de ellos se verán influenciados. Pero por ejemplo para calcular la reacción vertical en el nodo 5, no hay una conexión directa entre este nodo y el 2, sino que recibe la influencia por medio de los nodos 3 y 4, que están conectados al 5 por las barras 6 y 7. A su vez los nodos 3 y 4 reciben la influencia directa de los nodos 1 y 2, y el 1 la influencia del 2.

• Por tanto se aprecia como se establece un mecanismo de transferencia interno.

• Esta cualidad se traduce en los sistemas de ecuaciones que modelizan el comportamiento de sistemas físicos, en que las matrices A tienen forma bandeada, con muchos ceros en las ecuaciones, ya que la influencia directa de unos elementos sobre otros es limitada.

• Otra ventaja adicional es que debido al teorema de Maxwell o de reciprocidad, la influencia directa de un elemento sobre otro es la misma que la que ejercería éste último sobre el primero. Que se traduce en que la mayoría de los sistemas que tenemos que resolver son simétricos.

Page 33: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 33

Sistemas de ecuaciones• BW y HBW designan el ancho de banda y el semiancho de banda.

HBW+1

HBW

BW

ceros

cerosDiagonal principal

Page 34: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 34

Sistemas de ecuaciones• A simple vista queda claro que esta disposición facilita, por medio de técnicas

especiales, la resolución de los sistemas de una forma más efectiva que si la matriz fuera completa.

• Sistemas tridiagonales- aquellos cuyo ancho de banda es 3

• La numeración permite un almacenaje mucho más efectivo. En cuanto a la resolución se utiliza el algoritmo de Thomas, adaptación de la descomposición LU para este caso.

Page 35: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 35

Sistemas de ecuaciones• Algoritmo:

– Descomposición: de k=2,…,n. e(k)= e(k)/f(k-1) y f(k)=f(k)-e(k)g(k-1)– Sustitución hacia delante: de k=2,…,n r(k)= r(k)-e(k)r(k-1)– Sustitución hacia atrás: x(n)=r(n)/f(n) de k=n-1,…,1 x(k)=(r(k)-

g(k)x(k+1))/f(k)

Forma compacta del sistema

Page 36: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 36

Sistemas de ecuaciones• Descomposición de Cholesky- esta técnica se usa en el caso de

que la matriz A sea simétrica, que como hemos dicho antes se da en muchas ocasiones en los problemas de ingeniería. Se basa en el hecho de que cualquier matriz simétrica se puede descomponer como

• Multiplicando e igualando entre si los términos tenemos

Page 37: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 37

Sistemas de ecuaciones

• Entrada: matriz de coeficientes a(n,n), simétrica y definida positiva .• Paso 1: Genero la primera fila de la matriz triangular superior solución L.

L(1,1)=sqrt(a(1,1)), para k=2,…,n, L(1,k)= a(1,k)/L(1,1).• Paso 2: Para i=1, …, n-1 hacer los pasos 3-4.

– Paso 3: Para k=1, …, i-1. Acumulo el siguiente sumatorio L(i,i)= L(i,i)-L(k,i)^2. Si el valor de L(i,i)<0, la matriz a no es definida positiva, se sale del programa. Sino, L(i,i)=sqrt(L(i,i)).

– Paso 4:Para j=i+1,…,n, para k=1,…,i-1, acumula en L(i,j)=a(i,j)-L(k,i)*L(k,j), después del k, divide L(i,j)= L(i,j)/L(i,i).

• Paso 6: calculamos L(n,n), paso 3 con i=n.• Salida: una matriz triangular superior L, si la multiplicamos L’*L

obtenemos a.

Page 38: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 38

Sistemas de ecuaciones• La descomposición de Cholesky, sólo se puede aplicar para matrices

simétricas y definidas positivas. Es decir tales que:

• Para todos los vectores X distintos de cero. Si se cumple, no se dará el caso de obtener una raíz negativa durante la ejecución del programa. Por tanto si se da es porque la matriz A no es definida positiva. Otra ventaja de las matrices definidas positivas es que no requiere el pivoteo para evitar divisiones por cero. Por lo que se puede implementar el algoritmo sin la complicación del pivoteo.

Page 39: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 39

Sistemas de ecuaciones• Métodos iterativos: son una alternativa a los métodos de

eliminación, y son muy similares a los métodos usados para la obtención de raíces de una ecuación simple.

• Método de Gauss-Seidel-es el más comúnmente usado

Page 40: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 40

Sistemas de ecuaciones• Por tanto el método comienza con un valor de las variables xi=0, entro en la

primera ecuación y despejo x1. Con este valor de x1, entro en la segunda, obtengo una aproximación de x2. Con estos valores entro en la tercera, y así sucesivamente hasta que la solución converja lo suficiente. Esto se logra comprobando en una pasada completa por todo el sistema que el mayor valor del error aproximado relativo sea menor que un valor epsilon prefijado.

• Un planteamiento alternativo es el método de Jacobi, lo que hace es calcular un conjunto de valores aproximados para todo el vector x, y con ese valor entra en la siguiente iteración. Aún así el método de Gauss-Seidel funciona mejor.

Page 41: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 41

Sistemas de ecuaciones

Primera iteración

Segunda iteración

Gauss-Seidel Jacobi

Page 42: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 42

Sistemas de ecuaciones• Convergencia del método- para que el método converja es condición

necesaria que los sistemas sean diagonalmente dominantes, que por suerte en ingeniería son los más abundantes.

Page 43: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 43

Sistemas de ecuaciones• Una manera de acelerar la convergancia del método de Gauss-Seidel es

usando la relajación. Esto es modificando el valor nuevo con un promedio ponderado.

• Lambda es un factor entre 0 y 2. Si lambda es igual a uno el resultado no se modifica. Si es menor que 1, el resultado es un promedio del resultado antiguo y el nuevo (subrelajación), se emplea para que un sistema no convergente converja, u amortigüe sus oscilaciones. Si lambda es mayor que 1, se da una ponderación extra al nuevo valor (sobrerrelajación) con lo que los sistemas convergentes aceleran su convergencia.

Page 44: Sin título de diapositivarobertominguez.altervista.org/ProgramaNumerico_archivos/Parte3.pdf · diferencias entre estas aproximaciones, su comportamiento es comparable. • El pseudocódigo

E. T. S. I. Caminos, Canales y Puertos 44

Sistemas de ecuaciones• Entrada: matriz de coeficientes a(n,n), y vector de términos independientes

b(n). Número máximo de iteraciones (niter), error relativo máximo (es), parámetro para la relajación (lambda). Como solución inicial tomamos x=(0,…,0)T.

• Paso 1: Normalizo todas la ecuaciones dividiendo sus elementos por el elemento que está en la diagonal principal. Para i=1,…,n dummy=a(i,i), b(i)=b(i)/dummy, para j=1,…,n, a(i,j)= a(i,j)/dummy,

• Paso 2: Mientras iter sea menor niter y sentinel=0 hacer los pasos 3-6. – Paso 3: sentinel=1.– Paso 4: Para i=1, …, n. old=x(i), x(i)=b(i), de j=1,…n, si i distinto de j,

x(i)=x(i)-a(i,j)*x(j). Salgo del j, x(i)=x(i)*lambda+(1-lambda)*old – Paso 5: Si sentinel =1, y x(i) distinto de cero

• ea=abs((x(i)-old)/x(i)), si ea>es entonces sentinel=0.– Paso 6: iter=iter+1.

• Salida: el vector x solución del sistema.