tp n°2: m seal

10
TP N°2: MÉTODOS DIRECTOS PARA SEAL F ACULTAD : F ACULTAD DE I NGENIERÍA Y R ECURSOS H ÍDRICOS - UNL M ATERIA: C ÁLCULO N UMÉRICO PROFESOR : J UAN J OSÉ G ÓMEZ B ARROSO ALUMNO : L UCIANO I VÁN Z ABLOCKI C OMISIÓN : L UNES 08:00 11:00 FECHA DE ENTREGA : 12/04/17

Upload: others

Post on 24-Jul-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TP N°2: M SEAL

TP N°2: MÉTODOS DIRECTOS

PARA SEAL

FACULTAD : FACULTAD DE INGENIERÍA Y RECURSOS H ÍDRICOS - UNL M ATERI A: CÁLCULO NUMÉRICO PROFESOR : JUAN JOSÉ GÓMEZ BARROSO ALUMNO : LUCIANO IVÁN ZABLOCKI COMISIÓN : LUNES 08:00 – 11:00 FECH A DE ENTREG A: 12/04/17

Page 2: TP N°2: M SEAL

ENUNCIADO:

9- Considere un circuito eléctrico como el que se muestra en la Figura 1. Se pide aplicar las

leyes de Kirchhoff para calcular las corrientes i1, i2, i3 e i4.

10- Realice la factorización LU de la siguiente matriz siguiendo el orden de Dolittle, con y sin

pivoteo parcial (con lo cual, si P es distinta de la identidad, en realidad se tiene PA = LU). Luego,

calcule las matrices residuales A – LU y PA – LU y justifique las diferencias que ocurren.

Page 3: TP N°2: M SEAL

9- Para este ejercicio del trabajo necesitaremos conocer lo que significan las Leyes de

Kirchhoff, las cuales son aplicables a este circuito, para de esta manera resolverlo.

A continuación describiremos los métodos desarrollados por el físico alemán Gustav

Robert Kirchhoff:

Regla de Kirchhoff de las uniones: La suma algebraica de las corrientes en cualquier unión

(punto donde se unen tres o más conductores) es igual a cero, es decir:

∑ I = 0

La regla de las uniones se basa en la conservación de la carga eléctrica. En una unión no se

puede acumular carga eléctrica, por lo que la carga total que entra a ella por unidad de tiempo

debe ser igual a la carga total que sale por unidad de tiempo. La carga por unidad de tiempo es

corriente (I), por lo que si consideramos como positivas las corrientes que entran a una unión y

negativas las que salen, la suma algebraica de las corrientes en la unión debe ser igual a cero.

Regla de Kirchhoff de las espiras: La suma algebraica de las diferencias de potencial en

cualquier espira, incluso las asociadas con las fem y las de elementos con resistencia, debe ser igual

a 0, es decir:

∑ 𝑽 = 𝟎

La regla de las espiras es el enunciado de que la fuerza electrostática es conservativa.

Aplicamos las leyes, y suponemos los sentidos de cada corriente propuestos en la figura

como positivos. Otro supuesto es la convención de que si pasamos por una resistencia en el

sentido positivo de la corriente, restamos su diferencia de potencial. Teniendo estos dos puntos

en cuenta, calculamos, por ejemplo, para la malla de abajo:

-10i4 -30i4 -15i4 –20(i4-i3) -25(i4-i2) = 0

Haciendo un razonamiento similar en las 3 mallas restantes, resolviendo y simplificando,

llegamos al siguiente sistema de ecuaciones lineal:

-80i1 + 50i2 +30i3 + 0 = -120

50i1 – 100i2 + 10i3 +25i4 = 0

30i1 + 10i2 – 65i3 + 20i4 = 0

0 + 25i2 + 20i3 – 100i4 = 0

Por lo tanto, en Octave ingresamos la matriz de coeficientes A:

Page 4: TP N°2: M SEAL

Como así también, el vector de términos independientes b:

Se puede observar que la matriz A es simétrica (𝑎𝑖𝑗 = 𝑎𝑗𝑖 ), y también diagonalmente

dominante (|𝑎𝑖𝑖| ≥ ∑ |𝑎𝑖𝑗|, 𝑖 = 1,2, . . 𝑛𝑛𝑗=1𝑗≠𝑘

). Esto hace que, aplicando por ejemplo la factorización

LU, nunca necesitaríamos hacer pivoteo realmente, ya que los valores más grandes se encuentran

en la diagonal (recordemos que la técnica del pivoteo parcial coloca los números de mayor valor

absoluto en la diagonal para de esta manera evitar la división por números pequeños). Es por esta

razón que se elige la factorización de Doolittle sin pivoteo parcial para resolver el sistema.

Con la función “eig” de Octave, podemos calcular los auto valores de cualquier matriz; al

usarlo obtenemos:

Donde los auto valores de nuestra matriz son los que están en la diagonal. Claramente nos

damos cuenta que esta matriz NO es definida positiva, debido a que sus auto valores no son todos

positivos, sino todo lo contrario

Procederemos a mostrar los algoritmos usados durante el ejercicio:

• Algoritmo que implementa la factorización LU sin pivoteo parcial: dado una matriz

A, nos devuelve su factorización LU.

Page 5: TP N°2: M SEAL

• Algoritmo que realiza la sustitución hacia atrás.

• Algoritmo que realiza la sustitución hacia adelante.

Lo primero que se va a hacer es encontrar la factorización de A usando el algoritmo antes

mostrado; se tiene:

Page 6: TP N°2: M SEAL

Ahora, haciendo una simple sustitución hacia adelante:

Luego una hacia atrás:

Y así conseguimos nuestro vector solución del sistema x.

Para realizar una verificación, hacemos la cuenta A*x – b (que tendría que dar 0, o algo

muy cercano a 0, considerando que la máquina trabaja con aproximaciones de números y no con

los números verdaderos)

Concluimos que los sentidos de las corrientes propuesto en la Figura 1 eran los reales, ya

que encontramos corrientes positivas.

Page 7: TP N°2: M SEAL

10- Lo primero que haremos será cargar la matriz B para luego aplicarle las correspondientes

factorizaciones

Para este ejercicio necesitaremos, además de los algoritmos que habíamos enseñado en el

punto 9, el algoritmo de Doolittle con pivoteo parcial. Se procederá a mostrarlo:

Ahora aplicaremos el algoritmo de Doolittle y obtenemos:

Page 8: TP N°2: M SEAL

La matriz residual que obtenemos al aplicar este método es:

Si aplicamos el algoritmo de Dolittle sin pivoteo parcial, se tiene:

Y la matriz residuo es:

Page 9: TP N°2: M SEAL

Se obtienen diferencias entre las matrices residuales ya que al realizar el pivoteo parcial,

nos aseguramos que nuestro proceso nunca caiga en los casos donde se producen errores: estos

son cuando el pivote elegido es un número muy cercano a 0, o 0. Si no utilizamos pivoteo,

caeremos en una solución errónea propia de división por números pequeños: la máquina

representa con una cantidad finita de cifras a números que tienen infinitas cifras, entonces vamos

acumulando errores y alejándonos de la solución real en cada resta, suma, etc.

Como conclusión final, es muy importante darse cuenta qué algoritmo usar para cada

situación, ya que eso repercutirá en la solución final, la cual puede estar muy alejada de la solución

real, producto de estos errores.

Page 10: TP N°2: M SEAL