Factorizacion LU

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 3

1

Kevin Rios 2180213, María Romero 2180209, y Christopheerth Bonilla 2181244


INFORME FACTORIZACIÓN LU
(Julio 16 del 2020)

Resumen, en este informe se busca llevar la parte teórica a la Otra aplicación para el método de la factorización LU es la
practica por medio de un sistema de cómputo numérico, con un obtención de la matriz inversa por medio de la ecuación [L]
lenguaje de programación propio (Matlab); con el fin de resolver [D]=[B], donde [L] será la matriz triangular inferior de la
sistemas de ecuaciones lineales por medio de la factorización LU matriz de nuestro interés y [B] será una matriz cambiante que
y el cálculo de matrices inversas, con un mínimo error humano y variara de acuerdo a la columna que se determinara de [A] -1;
en el menor tiempo posible.
en donde el coeficiente de la fila [B] correspondiente a el
número de columna de [A]-1 tomara el valor de 1 y el resto
será 0.
I. INTRODUCCION

La factorización LU de una matriz es un proceso que Sea [A] una matriz de orden nxn y se quiera calcular [A] -1
tendremos que resolver el sistema [L][D]=[B] n veces
involucra la eliminación gaussiana de forma indirecta con el
variando B según sea, después los valores obtenidos de [D] se
fin de resolver sistemas de ecuaciones lineales, todo sistema
irán ordenando de acuerdo con la columna correspondiente
de ecuaciones lineales se puede llevar a forma matricial [A]
hasta formar la matriz inversa.
[X]=[B], que despejando tendríamos [A][X]-[B]=0, este
método involucra el cálculo de dos matrices L y U; estas se
obtienen de maneras distintas, la primera se calcula a partir de
II. METODOLOGIA
reducir el sistema a tratar ([A]), llevando a [A] una matriz
triangular superior dándonos un sistema equivalente [U]
obteniendo así sistema matricial ahora cómo [U][X]=[D]. Por 1. Para el desarrollo del primer punto se procedió a crear un
otro lado, mediante la reducción de la matriz original [A] a código que permita descomponer una matriz cuadrada en las
una matriz triangular inferior se calcula la matriz [L] donde se matrices [L] y [U] tomando como base el código de la
tiene que: eliminación gaussiana. Donde [U] será la matriz de interés
reducida a forma triangular superior y [L] de forma triangular
(1) [L]*{[U][X]-[D]} = [A][X]-[B] inferior conformada por los factores utilizados para obtener
[U].

Primero con el uso de un for que cuenta con una variable ‘k’
que nos permite variar las columnas y otra ‘w’ que nos
permite variar las filas, para almacenar así los valores
obtenidos de los factores ‘h’ en una matriz [L] cuya diagonal
principal tiene el valor de 1 en cada componente. Luego
tomando base del seudocódigo del método de eliminación de
gauss procedemos a reducir la matriz de nuestro interés a una
diagonal superior, obteniendo así la matriz [U].

2. Para resolver el sistema de ecuaciones lineales por medio de


la factorización LU debemos encontrar cuatro matrices, [L],
[U], [D] y por último nuestro objetivo [X], primero para
encontrar [L] y [U] se hallan a partir del código del primer
Ahora debido a que desconocemos [D] por medio de (1) punto, ahora utilizando la relación [L][D]=[B] realizando una
tenemos que [L][D]=[B], sabiendo que [L] es una matriz sustitución ya que la matriz [L] es una matriz triangular
triangula inferior simplemente se resuelve el sistema hallando inferior. Finalmente conociendo [D] podemos hallar los
así los coeficientes de [D]. valores de [X] usando el código de sustitución de eliminación
gaussiana.
Teniendo las matrices [U] y [D] se relacionan en el sistema
[U][X]=[D] que se mencionaba anteriormente , siendo [U] una 3. Para obtener la matriz inversa de una matriz [A], se debe
matriz triangular superior se puede resolver el sistema con una calcular las matrices [L] y [U] e implementado el código del
sustitución inversa hallando los coeficientes de [X], los cuales punto 2 poniendo a variar la matriz [B] mediante un for desde
serían la solución de nuestro sistema. g=1 hasta n (número de filas) ira tomando para la componente
de interés el valor de 1 el resto 0, tras cada iteración hallamos

Prf, Naren Mantilla Diapositivas Modulo 3-2 una matriz [X] en la cual se irán almacenando en una matriz
https://filadd.com/doc/unidad-3-sistemas-de-ecuaciones-lineales-pdf
2

[r] la matriz [X] en la columna del número correspondiente a U=a;


la interacción, siendo la matriz [r] la inversa de [A]. disp('L')
disp(L)
disp('U')
III. RESULTADOS
disp(U)
d(1,1)=b(1,1)/L(1,1); %inicia proceso de
1. Código que permite encontrar la descomposición LU sustitución
(matrices L y U) de una matriz cuadrada A ([A]=[a] para este for w=2:n
caso). Utilizando como base los algoritmos construidos para la
z=b(w);
eliminación gaussiana.
for m=1:w-1
%punto 1 z=z-(L(w,m)*d(m,1));
clear all end
clc d(w,1)=z;
a=[3 -0.1 -0.2; 0.1 7 -0.3; 0.3 -0.2 10 ]; end %termina proceso de sustitución
%matriz cuadra texto='D';
n=size(a,1); %numero de columnas de a disp(texto)
L(1,1)=1; disp(d)
for k=1:n-1 x=[]; %para almacenar los valores de las
for w=k+1:n variables
h=a(w,k)/a(k,k); %factor x(n)=d(n,1)/U(n,n); %inicia proceso de
L(w,k)=h; %almacenar los valores de sustitución
los factores for w=n-1:-1:1
L(w,w)=1; %diagonal principal z=d(w,1);
a(w,:)=a(w,:)-(h*a(k,:)); for m=(w+1):n
%operación de filas z=z-(U(w,m)*x(m));
end end
end x(w)=z/U(w,w);
U=a; end %termina proceso de sustitución
disp('L') texto='Solución punto 1';
disp(L) disp(texto)
disp('U') for k=1:n %resultados
disp(U) texto=['x' num2str(k) '= '
num2str(x(k))];
2. Código que permite calcular la solución de un sistema de disp(texto)
ecuaciones AX=B, utilizando la factorización LU. end

%punto 2 3. Código para encontrar la inversa de una matriz, a partir de


clear all la solución de sistemas AX=B, donde B representa vectores
clc unitarios.
a=[3 -0.1 -0.2; 0.1 7 -0.3; 0.3 -0.2 10 ];
%matriz cuadra %punto 3
b=[1; 0; 0]; clear all
n=size(a,1); %numero de columnas de a clc
L(1,1)=1; a=[3 -0.1 -0.2; 0.1 7 -0.3; 0.3 -0.2 10 ];
for k=1:n-1 y=a;%matriz cuadra
for w=k+1:n q=inv(a);
h=a(w,k)/a(k,k); %factor n=size(a,1); %numero de columnas de a
L(w,k)=h; %almacenar los valores de L(1,1)=1;
los factores for k=1:n-1 %realizamos la eliminación
L(w,w)=1; %diagonal principal gaussiana para obtener los factores L y U
a(w,:)=a(w,:)-(h*a(k,:)); for w=k+1:n
%operación de filas h=a(w,k)/a(k,k); %factor
end L(w,k)=h %almacenar los valores de
end los factores
3

L(w,w)=1; %diagonal principal 2. La ventaja aparece cuando se quieren resolver varios


a(w,:)=a(w,:)-(h*a(k,:)) %operación sistemas de ecuaciones con la misma matriz de coeficientes,
de filas debido a que, de esta manera, como comparte la misma matriz
end [A], compartirán la matriz [U] y [L] donde [X] dependerá solo
de la matriz [D] que dependerá de [L] y [B].
end
U=a; 3. Este método para la solución de sistemas de ecuaciones
disp('L') lineales está muy restringido pues el sistema debe cumplir con
disp(L) varias condiciones, primero el sistema cuando se lleve a forma
disp('U') matricial, la matriz debe ser cuadrada, también como se
disp(U) implemente indirectamente el método de gauss tiene las
for g=1:n %Para realizar las diferentes restricciones de este, al hacer la matriz [U] el pivote debe ser
iteraciones variando a B diferente de 0 o un valor que tienda a este, como solución a
if g==1 %Variación de B este seria el pivoteo parcial, pero lo complicaría mucho más.
b=zeros(n,1);
4. La factorización LU nos permite obtener la matriz inversa
b(1)=1;
diferente de la manera convencional.
else
b(g-1)=0; 5. El método de la factorización LU en papel podría resultar
b(g)=1; extremadamente largo y tedioso. Por ello es un método ideal
end para trabajarlo en computadora.
d(1,1)=b(1,1)/L(1,1); %inicia proceso
de sustitución para hallar D
for w=2:n
z=b(w);
for m=1:w-1
z=z-(L(w,m)*d(m,1));
end
d(w,1)=z;
end %termina proceso de sustitución
para hallar D
x=[]; %para almacenar los valores de
las variables
x(n)=d(n,1)/U(n,n); %inicia proceso
de sustitución para hallar X
for w=n-1:-1:1
z=d(w,1);
for m=(w+1):n
z=z-(U(w,m)*x(m));
end
x(w)=z/U(w,w);
end %termina proceso de sustitución
para hallar X
r(:,g)=x; %almacenamos la solución para
la matriz inversa
end
disp('inversa de a')
disp(r)

IV. CONCLUSIONES

1. La factorización LU para resolver sistemas de ecuaciones


lineales es un proceso muy largo y tedioso si se comparan con
otros métodos mas sencillos y directos como lo seria por
ejemplo la eliminación gaussiana.

También podría gustarte