Anda di halaman 1dari 48

ndice de contenido

OBJETIVO.................................................................................................................................................3 INTRODUCCIN......................................................................................................................................3 DESARROLLO..........................................................................................................................................5 Cdigo en Matla ..................................................................................................................................5 Cdigo en C...........................................................................................................................................! DIA"RAMA DE #LUJO DE CDI"O EN MATLAB............................................................................$ DIA"RAMA DE #LUJO DE CDI"O EN C.......................................................................................%& CASOS DE ESTUDIO.............................................................................................................................%& CONCLUSIN.........................................................................................................................................%% 'R(CTICA ). M*TODO DE ELIMINACIN DE "AUSS NORMALI+ADO.......................................%) OBJETIVO...............................................................................................................................................%) INTRODUCCIN....................................................................................................................................%) DESARROLLO........................................................................................................................................%, Cdigo en Matla .....................................................................................................................................%, Cdigo en C.........................................................................................................................................%5 DIA"RAMA DE #LUJO DE CDI"O EN MATLAB....................................................................%DIA"RAMA DE #LUJO DE CDI"O EN C...................................................................................%. CASOS DE ESTUDIO.............................................................................................................................)& CONCLUSIN........................................................................................................................................)& 'R(CTICA 3. M*TODO DE "AUSS / JORDAN....................................................................................)% INTRODUCCIN....................................................................................................................................)% DESARROLLO........................................................................................................................................)3 Cdigo en 0atla .................................................................................................................................)3 Cdigo en C.........................................................................................................................................)3 DIA"RAMA DE #LUJO DE CDI"O EN MATLAB.....................................................................)5 DIA"RAMA DE #LUJO DE CDI"O EN C...................................................................................)! 'R(CTICA ,. INVERSIN DE MATRICES...................................................................................)INTRODUCCIN....................................................................................................................................)DESARROLLO........................................................................................................................................3& Cdigo en C.........................................................................................................................................3& Cdigo en Matla ................................................................................................................................3% CASO DE ESTUDIO...................................................................................................................................35 CONCLUSIN........................................................................................................................................3! 'R(CTICA 5. #ACTORI+ACIN LU........................................................................................................3$ INTRODUCCIN....................................................................................................................................3$ DESARROLLO........................................................................................................................................,& Cdigo en C.........................................................................................................................................,& CASOS DE ESTUDIO..................................................................................................................................,3 CONCLUSIN........................................................................................................................................,3

PRCTICA 1. MTODO DE ELIMINACIN DE GAUSS SIN NORMALIZAR. OBJETIVO. Se realizar a travs de Matlab un programa para la resolucin de un sistema de ecuaciones lineales a travs por el mtodo de eliminacin de Gauss sin normalizar. INTRODUCCIN. En el mtodo para la solucin de ecuaciones el lineales simultneas que

denominado como eliminacin de Gauss se eliminan las incgnitas mediante la combinacin de las ecuaciones mediante proceso de eliminacin esquematiz Gauss. Utilizando el mtodo de Gauss, un conjunto de n ecuaciones con n incgnitas se reduce a un sistema triangular equivalente, que a su vez se resuelve de cilmente por !sustitucin inversa!" un procedimiento simple que se ilustrar con la presentacin siguiente. Sabiendo#

a$$ % $ & a $' %' & a$( % ( &... & a $n % n


)*$

a '$ % $ & a '' % ' & a '( % ( &... & a 'n %


n

)* ...

'

+ a , + b , + c ,

+ ' ,

a n$ % $ & a n' % ' & a n( % ( & ... & a nn %


n

)*

El esquema de Gauss empieza reduciendo un conjunto de ecuaciones simultneas a un sistema triangular equivalente como#

+ ,

en el cual los super.ndices indican los nuevos coe icientes que se orman en el proceso de reduccin. /a reduccin real se logra de la siguiente manera# %. 0ara obtener las modi icaciones se multiplica los coe icientes de la ecuacin. +1, por el coe iciente de X1 de la segunda ecuacin +',, al producto de ellas se divide entre el coe iciente pivote+a$$, 2 la ecuacin que resulta se resta de la misma, eliminando as. X1.. Entonces se repite el mismo proceso para las dems ecuaciones 3asta adoptar la orma#

+ 4 ,

/a ecuacin usada para eliminar las incgnitas en las ecuaciones que la siguen se denomina Ecuacin Pivote. En la ecuacin pivote, el coe iciente de la incgnita que se va a eliminar de las ecuaciones que la siguen se denomina el Coeficiente Pivote +a$$ en los pasos previos,. ). Siguiendo los pasos anteriores, la segunda ecuacin +4, se convierte en la ecuacin pivote, 2 los pasos de la parte $ se repiten para eliminar X2 de todas las ecuaciones que siguen a esta ecuacin pivote. Esta reduccin nos conduce a#

+ 5 ,

3. 6 continuacin se utiliza la tercer ecuacin +5, como ecuacin pivote, 2 se usa el procedimiento descrito para eliminar X3 de todas las ecuaciones que siguen a la tercer ecuacin +5,. Este procedimiento, utilizando di erentes ecuaciones pivote, se contin7a 3asta que el conjunto original de ecuaciones 3a sido reducido a un conjunto triangular tal como se muestra en la ecuacin +-,. ,. Una vez obtenido el conjunto triangular de ecuaciones, la 7ltima ecuacin de este conjunto equivalente suministra directamente el valor de %n dividido entre su coe iciente. Este valor se sustitu2e entonces en la antepen7ltima ecuacin del conjunto triangular para obtener un valor de Xn-1, que a su vez se utiliza junto con el valor de Xn en la pen7ltima ecuacin del conjunto triangular para obtener un valor Xn-2 2 as. sucesivamente. Este es el procedimiento de sustitucin inversa al que nos re erimos previamente. DESARROLLO. Cdigo en Matlab para Eliminacin de Gauss sin normalizar. 8Mtodo de eliminacion gauss clc clear all 6)9:; <$; <(; $;"<$; (; <= ;"<(; <= -= ;> 8Midiendo dimensiones de matriz 6 9r,c>)size+6, 8Eliminacin 3acia adelante 8para mover el pivote or ?)$#c , 6 end end 8moverse en los renglones or i)?&$#r 8moverse en las columnas or j)c#<$#? 6+i,j,)6+i,j,<++6+i,?,@6+?,?,,A6+?,j,," end

8sustitucin 3acia atrs 8asignando el valor de %n B+r,)6+r,c,@6+r,r," 8moverse en renglones or i)r<$#<$#$ 8inicializando sum en cero sum);" or j)i&$#r 83aciendo la sutitucin para 6n<$n%n<$

sum)sum&6+i,j,AB+j," end 8obteniendo %n B+i,)+6+i,c,<sum,@6+i,i," end 8mostrando %n B

Cdigo en C para Eliminacin de Gauss sin normalizar . or+j)m<$"jE);"j<<,F Cinclude Dstdio.3E Cinclude Dstdlib.3E int main+,F @@declarando variables para contadores int ?,i,j,m,n" @@inicializando dimensiones n)(" m):" @@inicializando matriz loat =,;G,F<(;,<=,-=,;GG" @@mover el pivote or+?);"?D)n<$"?&&,F @@moverse en el renglon or+i)?&$"iD)n<$"i&&,F @@moverse en la columna 5 @@3aciendo las modi icaciones para gauss sin normalizar 69i>9j>)69i>9j><++69i>9?>@69?>9?>,A69?>9j>," GGG @@para imprimir la matriz resultante print +!Metodo# normalizarHnHn!," or+i);"iDn"i&&,F or+j);"jDm"j&&,F G print +!Hn!," G return ;" G 69(>9:>)FF:;,<$;,<(;,$;G,F<$;,(;,<print +!8 Ht!,69i>9j>," Gauss sin

DIAGRAMA

DE

FLUJO

DE

CDIGO

EN

MATLAB

PARA

GAUSS

SIN

NORMALIZAR

DIAGRAMA

DE

FLUJO

DE

CDIGO

EN

PARA GAUSS SIN NORMALIZAR

CASOS DE ESTUDIO. Iel circuito#

Se obtiene#

donde

el

resultado

es

Iado otro circuito

%&

se obtiene#

/a solucin es#

CONCLUSIN. Este mtodo es de gran importancia 2a que es la base para los dems mtodos que se vern a lo largo del curso, por lo que el aprendrselo es vital para el entendimiento de los dems mtodos.

PRCTICA 2. MTODO DE ELIMINACIN DE GAUSS NORMALIZADO. %%

OBJETIVO. Se realizar a travs de Matlab un programa para la resolucin de un sistema de ecuaciones lineales a travs por el mtodo de eliminacin de Gauss sin normalizar. INTRODUCCIN. En el mtodo para la solucin de ecuaciones el lineales simultneas que

denominado como eliminacin de Gauss se eliminan las incgnitas mediante la combinacin de las ecuaciones mediante proceso de eliminacin esquematiz Gauss. Utilizando el mtodo de Gauss, un conjunto de n ecuaciones con n incgnitas se reduce a un sistema triangular equivalente, que a su vez se resuelve de cilmente por !sustitucin inversa!" un procedimiento simple que se ilustrar con la presentacin siguiente. Sabiendo#

a$$ % $ & a $' %' & a$( % ( &... & a $n % n


)*$

a '$ % $ & a '' % ' & a '( % ( &... & a 'n %


n

)* ...

'

+ a , + b , + c ,

+ ' ,

a n$ % $ & a n' % ' & a n( % ( & ... & a nn %


n

)*

El esquema de Gauss empieza reduciendo un conjunto de ecuaciones simultneas a un sistema triangular equivalente como#

%)

+ ,

en el cual los super.ndices indican los nuevos coe icientes que se orman en el proceso de reduccin. /a reduccin real se logra de la siguiente manera# 5. /a primera ecuacin se divide entre el coe iciente de X1 en esa ecuacin para obtener+a este paso se le denomina normalizacin,# + 1 , Entonces para obtener las modi icaciones se multiplica los coe icientes de la ecuacin. +1, por el coe iciente de X1 de la segunda ecuacin +', 2 la ecuacin que resulta se resta de la misma, eliminando as. X1. /a ec. +1, se multiplica entonces por el coe iciente de X1 de la tercera ecuacin +',, 2 la ecuacin resultante se resta de la misma para eliminar X1 de esa ecuacin. En orma similar, % se elimina de todas las ecuaciones del conjunto eBcepto la primera, de orma que el conjunto adopta la orma#

+ 4 ,

/a ecuacin usada para eliminar las incgnitas en las ecuaciones que la siguen se denomina Ecuacin Pivote. En la ecuacin pivote, el coe iciente de la incgnita que se va a eliminar de las ecuaciones que la siguen se denomina %3

el Coeficiente Pivote +a$$ en los pasos previos,. !. Siguiendo los pasos anteriores, la segunda ecuacin +4, se convierte en la ecuacin pivote, 2 los pasos de la parte $ se repiten para eliminar X2 de todas las ecuaciones que siguen a esta ecuacin pivote. Esta reduccin nos conduce a#

+ 5 ,

$. 6 continuacin se utiliza la tercer ecuacin +5, como ecuacin pivote, 2 se usa el procedimiento descrito para eliminar X3 de todas las ecuaciones que siguen a la tercer ecuacin +5,. Este procedimiento, utilizando di erentes ecuaciones pivote, se contin7a 3asta que el conjunto original de ecuaciones 3a sido reducido a un conjunto triangular tal como se muestra en la ecuacin +-,. -. Una vez obtenido el conjunto triangular de ecuaciones, la 7ltima ecuacin de este conjunto equivalente suministra directamente el valor de %n. Este valor se sustitu2e entonces en la antepen7ltima ecuacin del conjunto triangular para obtener un valor de Xn-1, que a su vez se utiliza junto con el valor de Xn en la pen7ltima ecuacin del conjunto triangular para obtener un valor Xn-2 2 as. sucesivamente. Este es el procedimiento de sustitucin inversa al que nos re erimos previamente. DESARROLLO.

Cdigo en Matlab para Eliminacin de Gauss normalizado. 8Mtodo de eliminacion gauss clc %, clear all 6)9:; <$; <(; $;"<$; (; <= ;"<(; <= -= ;>

9r,c>)size+6, 8tomar dimensiones de la matriz 8Eliminacin 3acia adelante or ?)$#c or i)?&$#r or j)c#<$#? 8normalizando ecuacion pivote 6+?,j,)6+?,j,@6+?,?," 83aciendo la modi icaciones 6+i,j,)6+i,j,<+6+i,?,A6+?,j,," end end end 8sacando una copia copia)6+r,r," or ?)r#$#c 8para terminar la normalizacin 6+r,?,)6+r,?,@copia"

end 6 8sustitucin 3acia atrs 8asignar valor en %n B+r,)6+r,c," or i)r<$#<$#$ sum);" or j)i&$#r 83ace sustitucin sum)sum&6+i,j,AB+j," end asigna el valor en %i B+i,)+6+i,c,<sum,@6+i,i," end muestra matriz de incgnitas B

Cdigo en C para Eliminacin de Gauss normalizado. Cinclude Dstdio.3E or+i);"iDn"i&&,F Cinclude Dstdlib.3E or+j);"jDm"j&&,F int main+,F print +!8 Ht!,69i>9j>," @@lo mismo que en cdigo anterior G int ?,i,j,m,n" print +!Hn!," n)(" G m):" @@declarando variables para sustitucin loat 69(>9:>)FF:;,<$;,<(;,$;G,F<$;,(;,< loat sum" =,;G,F<(;,<=,-=,;GG" loat B9n>" or+?);"?D)n<$"?&&,F or+i)n<'"iE;"i<<,F or+i)?&$"iD)n<$"i&&,F sum);" or+j)m<$"jE);"j<<,F or+j)i&$"jDn"j&&,F @@solo que aqui se 3ace la normalizacin sum)sum&69i>9j>AB9j>" 69?>9j>)69?>9j>@69?>9?>" G 69i>9j>)69i>9j><+69i>9?>A69?>9j>," B9i>)+69i>9m<$><sum,@69i>9i>" GGG G ?)m<$" @@mostrando matriz de resultados J3ile+?E)n<$,F or+i);"iD)n<$"i&&,F @@terminando normalizacin print +!8 Ht!,B9i>," 69n<$>9?>)69n<$>9?>@69n<$>9n<$>" G ?<<" return ;" G G

%5

%!

%$

DIAGRAMA DE FLUJO DE CDIGO EN MATLAB PARA GAUSS NORMALIZADO DIAGRAMA DE FLUJO DE CDIGO EN C PARA GAUSS NORMALIZADO

%-

CASOS DE ESTUDIO. Iado el siguiente circuito

Kbtener#

Solucin.

%.

CONCLUSIN. El mtodo que ms se me acilita es el de Gauss normalizado 2a que es en donde menos operaciones 3aces, adems de que para 3acer el programa que realiza el mtodo no se necesitan tantas instrucciones como en las otras ormas de resolver ecuaciones. PRCTICA 3. MTODO DE GAUSS JORDAN OBJETIVO. 0or medio de la programacin en Matlab, desarrollar un programa capaz de resolver un sistema de ecuaciones lineales por medio del mtodo de Gauss<Lordan. INTRODUCCIN Este mtodo, que constitu2e una variacin del mtodo de eliminacin de Gauss, permite resolver 3asta $= o '; ecuaciones simultneas, con 4 o $; d.gitos signi icativos en las operaciones aritmticas de la computadora. Este procedimiento se distingue del mtodo Gaussiano en que cuando se elimina una incgnita, se elimina de todas las ecuaciones restantes, es decir, las que preceden a la ecuacin pivote as. como de las que la siguen. )&

0ara una mejor comprensin, la eBplicacin del mtodo se realizar por medio de un sistema de ecuaciones. (.; %$<;.$%'<;.'%( ) 1.4=;; ;.$ %$&1.;%'<;.( %( ) < $5.( ;.( %$<;.'%'&$;%( ) 1$.:;;; 0rimero eBpresemos los coe icientes 2 el vector de trminos independientes como una matriz aumentada.

Se normaliza el primer rengln dividiendo entre el coe iciente pivote+a$$)(, para obtener#

El trmino X1 se puede eliminar del segundo rengln restando 0 1 veces el primero del segundo rengln. Ie una manera similar, restando 0 3 veces el primero del tercer rengln se elimina el trmino con X1 del tercer rengln.

En seguida, se normaliza el segundo rengln dividiendo entre el segundo pivote +! 00333"#

)%

Meduciendo los trminos en X2 de la primera 2 la tercera ecuacin se obtiene#

El tercer rengln se normaliza dividindolo entre el 10 010#

Ninalmente, los trminos con X3 se pueden reducir de la primera 2 segunda ecuacin para obtener#

Otese que no se necesita sustitucin 3acia atrs para obtener la solucin. 6unque los mtodos de Gauss-#ordan 2 de eliminacin de Gauss pueden parecer casi idnticos, el primero requiere aproBimadamente =;8 menos operaciones. 0or lo tanto, la eliminacin gaussiana es el mtodo simple por eBcelencia en la obtencin de soluciones eBactas a las ecuaciones lineales simultneas. Una de las principales razones para incluir el mtodo de Gauss<Lordan, es la de proporcionar un mtodo directo para obtener la matriz inversa. ))

DESARROLLO. Cdigo en matlab para el mtodo end Gauss Jordan. 8Mtodo Gauss<Lordan clc clear all 8inicializando matriz 6)9:; <$; <(; $;"<$; (; <= ;"<(; <= -= ;> 8midiendo matriz 9r,c>)size+6, clc 6 8Paciendo Gauss 8para el pivote or ?)$#r 8para los renglones or i)?&$#r 8para las columnas or j)c#<$#? 8normalizando la ecuacin pivote 6+?,j,)6+?,j,@6+?,?," Cdigo en C para el mtodo Gauss Jordan. Cinclude Dstdio.3E Cinclude Dstdlib.3E int main+,F @@declarando contadores 8Paciendo Lordan 83aciendo ceros del otro lado de la matriz or ?)$#c or i)?&$#r or j)c#<$#? 6+?,j,)+6+?,j,<+6+?,i,A6+i,j,,," end end end 6

int ?,i,j,m,n" 83aciendo modi icaciones dejando ceros @@inicializando dimensiones abajo n)(" 6+i,j,)6+i,j,<+6+i,?,A6+?,j,," m):" end @@inicializando matriz end loat 69(>9:>)FF:;,<$;,<(;,$;G,F<$;,(;,< end =,;G,F<(;,<=,-=,;GG" acabando de normalizar or+?);"?D)n<$"?&&,F or ?)c#<$#r or+i)?&$"iD)n<$"i&&,F 6+r,?,)6+r,?,@6+r,r," )3

or+j)m<$"jE);"j<<,F @@normalizando 69?>9j>)69?>9j>@69?>9?>" @@modi icando matriz 2 3aciendo ceros 69i>9j>)69i>9j><+69i>9?>A69?>9j>," GGG @@acabando de normalizar ?)m<$" J3ile+?E)n<$,F 69n<$>9?>)69n<$>9?>@69n<$>9n<$>" ?<<" G @@imprimiendo la parte de Gauss print +!Paciendo GaussHnHn!," or+i);"iDn"i&&,F or+j);"jDm"j&&,F print +!8 Ht!,69i>9j>," G

print +!Hn!," G or+?);"?Dm"?&&,F or+i)?&$"iDn"i&&,F or+j)m<$"jE)?"j<<,F @@3aciendo ceros del otro lado de la matriz 69?>9j>)69?>9j><+69?>9i>A69i>9j>," GGG print +!Hn!," @@mostrando la matriz Gauss<Lordan print +!Paciendo LordanHnHn!," or+i);"iDn"i&&,F or+j);"jDm"j&&,F print +!8 Ht!,69i>9j>," G print +!Hn!," G return ;" G

DIAGRAMA DE FLUJO DE CDIGO EN MATLAB PARA GAUSS-JORDAN

),

)5

DIAGRAMA DE FLUJO DE CDIGO EN C PARA GAUSS-JORDAN

)!

CASOS DE ESTUDIO. Iado el siguiente circuito.

)$

Su representacin de orma de un sistema de ecuaciones lineales

Se resuelve a travs de Gauss<Lordan

)-

CONCLUSIN El sistema eBpuesto anteriormente presenta el mismo principio que el de eliminacin de Gauss, sin embargo al 3acer el doble de las operaciones es ms trabajoso resolver los sistemas de ecuaciones, as. que pre iero 3acerlo por el mtodo de eliminacin gaussiana.

PRCTICA 4. INVERSIN DE MATRICES. OBJETIVO. 0or medio de la programacin en Matlab, desarrollar un programa capaz de resolver un sistema de ecuaciones lineales obteniendo la inversa de una matriz por medio de Gauss<Lordan 2 multiplicando la inversa por la matriz de resultados. INTRODUCCIN Sea A una matriz cuadrada no singular, es decir, que su determinante sea di erente de cero, . 0or de inicin de matriz inversa, se tiene que

es la inversa de A si# +$ Paciendo (, 2 sustitu2endo en la ecuacin anterior, se obtiene

).

+$

)I :, 0uede considerarse que esta ecuacin matricial representa un sistema de ecuaciones simultneas, , los en donde no 3a2 un solo vector de trminos independientes sino vectores bsicos que orman la matriz unitaria I. , los que corresponden a

6dems, no eBiste un solo vector de incgnitas, sino cada columna de la matriz unitaria.

0or lo anterior, es posible determinar la inversa de una matriz con el mtodo de Gauss<Lordan de eliminacin completa. 0ara lograrlo, bastar con aplicar las operaciones elementales sobre los renglones de la matriz ampliada !A" I# de manera de trans ormar A en I. *uando se 3a2a 3ec3o, se obtendr la matriz ampliada , con lo que se tendr la inversa buscada.

EJEMPLO Qnvertir la matriz

6umntese la matriz de coe icientes con una matriz identidad

Usando a11 como pivote, el rengln $ se normaliza 2 se usa para eliminar a X1 de los otros renglones.

3&

En seguida, se usa

22

como pivote 2 X2 se elimina de los otros renglones.

Ninalmente, se usa

33

como pivote 2 X3 se elimina de los renglones restantes#

0or lo tanto, la inversa es#

Se puede resolver un sistema de ecuaciones con la inversa de la matriz de coe icientes, de la siguiente manera#

donde C es el vector de trminos independientes. DESARROLLO. 3%

Cdigo en C para la inversin de R9?>9j>)R9?>9j>@R9?>9?>" matrices. R9i>9j>)R9i>9j><+R9i>9?>AR9?>9j>," Cinclude Dstdio.3E GGG int main+,F @@declarando variables int ?,i,j,m,n" @@inicializando dimensiones n)(" m):" @@inicializando matriz ?)m<$" J3ile+?E)n<$,F R9n<$>9?>)R9n<$>9?>@R9n<$>9n<$>" ?<<" G @@Paciendo Lordan

or+?);"?Dm"?&&,F loat 69(>9:>)FF:;,<$;,<(;,$;G,F<$;,(;,< or+i)?&$"iDn"i&&,F =,;G,F<(;,<=,-=,;GG" or+j)m<$"jE)?"j<<,F @@declarar matriz R)+6, Q, R9?>9j>)R9?>9j><+R9?>9i>AR9i>9j>," loat R9(>9->" @@modi icar m para manipular R m)-" or+i);"iDn"i&&,F or+j);"jDm"j&&,F @@constru2endo +6, Q, i +j<i))n, R9i>9j>)$" else i +jEn, R9i>9j>);" else R9i>9j>)69i>9j>" G G @@Paciendo Gauss or+?);"?D)n<$"?&&,F or+i)?&$"iD)n<$"i&&,F or+j)m<$"jE);"j<<,F 3) GGG @@declara matriz de resultados loat B9n>" or+i);"iDn"i&&,F @@inicializando en cero B9i>);" @@3aciendo multiplicacin B)+6 $,A+b, or+j)n"jD'An"j&&, B9i>)B9i>&R9i>9j>A69j<n>9n>" G print +!Kbteniendo la inversaHnHn!," @@imprimiendo inversa or+i);"iDn"i&&,F or+j);"jDm"j&&,F print +!8 G print +!Hn!," G !,R9i>9j>,"

@@mostrando matriz de resultados or+i);"iDn"i&&, print +!8 Ht!,B9i>," return ;" G

or j)c#<$#? 6+?,j,)6+?,j,@6+?,?," 6+i,j,)6+i,j,<+6+i,?,A6+?,j,," end end

Cdigo en Matlab para la inversin end de matrices. or ?)c#<$#r 8Mtodo Gauss<Lordan 6+r,?,)6+r,?,@6+r,r," clc clear all end 8Paciendo Lordan

6)9:; <$; <(; $;"<$; (; <= ;"<(; <= -= ;> or ?)$#c 9r,c>)size+6, or i)?&$#r or i)$#r or j)r&$#'Ar i +j<i))r, 6+i,j,)$" else 6+i,j,);" end end end 9r,c>)size+6, clc 6 8Paciendo Gauss or ?)$#r or i)?&$#r or j)c#<$#? 6+?,j,)+6+?,j,<+6+?,i,A6+i,j,,," end end end or i)$#r or j)$#r R+i,j,)6+i,j&r," end end R

33

3,

35

CASO DE ESTUDIO.

3!

0ara nodo $.

0ara nodo '.

0ara nodo (.

en orma matricial tenemos#

poniendo el comando S)inv+T,AQ entonces la matriz de incgnitas se resuelve como# S):;:.'4=1 (=;.;;;; :$'.4=1$

3$

CONCLUSIN. 0ara obtener la inversa de una matriz no tiene una gran di icultad, solamente es el mtodo Gauss<Lordan aneBndole la matriz identidad, solamente la cantidad de clculos aumenta considerablemente.

3-

PRCTICA $. FACTORIZACIN LU. OBJETIVO. 0or medio de la programacin en Matlab, desarrollar un programa capaz de resolver un sistema de ecuaciones lineales por medio del mtodo de actorizacin /U. INTRODUCCIN /a actorizacin /U de una matriz es una actorizacin que resume el proceso de eliminacin gaussiana aplicado a la matriz 2 que es conveniente en trminos del n7mero total de operaciones de punto lotante cuando se desea calcular la inversa de una matriz o cuando se resolver una serie de sistemas de ecuaciones con una misma matriz de coe icientes. Suponga que la matriz 6 es una matriz m U n se puede escribir como el producto de dos matrices# 6 ) /U donde / es una matriz triangular in erior m U m 2 U es una matriz escalonada m U n. Entonces para resolver el sistema# 6 B ) b, escribimos 6 B ) +/ U, B ) / +U B, . Una posible estrategia de solucin consiste en tomar 2 ) U B V2W resolver para 2# o / 2 ) b. *omo la matriz / es triangular superior este sistema puede resolverse mediante sustitucin 3acia abajo. Una vez con los valores encontrados de 2, las incgnitas al sistema inicial se resuelve despejando B de U B ) 2. Ouevamente, como U es escalonada, este sistema puede resolverse en caso de tener solucin mediante sustitucin, lo cual es sencillo. Estas observaciones nos dan la pauta para ver la conveniencia de una actorizacin como la anterior, es decir actorizar 6 como el producto de una matriz / triangular superior, por otra U la 3.

cual es escalonada. Esta actorizacin se llama usualmente descomposicin /U. O%&' ()* +' ,- .-(&/0)1-()* LU

Ejemplo# determine la actorizacin /U de

/a idea del mtodo es ir acumulando las inversas de las operaciones 3ec3as sobre los renglones la matriz para irla trans ormando en una matriz escalonada. T ms que propiamente las inversas de las operaciones sobre los renglones, las matrices elementales involucradas. 6s. por ejemplo el primer clculo que se realiza es 3acer un cero debajo de el elemento +$, $, que es el elemento ', para ello debemos realizar la operacin M' M' & (M$, esta operacin tiene como matriz elemental la matriz#

6s. la situacin est#

,&

En el siguiente paso del proceso de eliminacin es M( M( X'M$ , esta operacin tiene como matriz elemental la matriz#

6s. la situacin est#

En el siguiente paso del proceso de eliminacin es M: M: & M$ , esta operacin tiene como matriz elemental la matriz#

6s. la situacin est#

,%

Kbservamos que el 3ipottico caso de que en E( E' E$ 6 ) R( /a matriz R( 2a uera escalonada, es decir la U buscada, entonces# 6 ) E$
X$

E'

X$

E(

X$

/o cual indica que lo que debemos acumular son las inversas de las matrices elementales utilizadas. /a orma sistemtica de ir acumulando las inversas de las Eis es ir constru2endo la matriz /#

6s. en el avance de la conversin a escalonada de 6#

En este caso la matriz U est en la orma escalonada 2 por consiguiente el proceso se detiene 3aciendo cero aquellos valores desconocidos. 0or consiguiente una actorizacin de 6 ser#

,)

DESARROLLO. 69i>9j>)69i>9j><++69i>9?>@69?>9?>,A69?>9j>," Cdigo en C para LU. GGG Cinclude Dstdio.3E or+i);"iDn"i&&,F int main+,F or+j);"jDn"j&&, int ?,i,j,m,n,J" print +!8 Ht!,69i>9j>," print +!Ia el orden de la matrizHn!," print +!Hn!," scan +!8d!,Yn," G m)n&$" or+J);"JDn"J&&,F loat 69n>9m>" i +J))n<$, loat Mes9n>" /9J>9n<$>)$" loat /9n>9m>" else print +!Ia valores en la matriz en la/9J>9n<$>);" posicionHn!," G or+i);"iDn"i&&,F print +!/) Hn!," or+j);"jDm"j&&,F or+i);"iDn"i&&,F print +!98i>98i>) !,i&$,j&$," or+j);"jDn"j&&, i +jDn, print +!8 Ht!,/9i>9j>," scan +!8 !,Y69i>9j>," print +!Hn!," else G scan +!8 !,YMes9i>," or+i);"iDn"i&&, G /9i>9n>)Mes9i>" G print +!/A2)b Hn!," print +!U)Hn!," or+i);"iDn"i&&,F or+?);"?D)n<$"?&&,F or+j);"jDm"j&&, @@para moverse por los renglones print +!8 Ht!,/9i>9j>," or+i)?&$"iD)n<$"i&&,F print +!Hn!," or+j)n<$"jE);"j<<,F G i ++j))n<$,YY+i))?&$,,F loat 29n>" or+J);"JDn"J&&,F loat sum" i +JE)?, 29;>)/9;>9n>" /9J>9?>)69J>9?>@69?>9?>" or+i)$"iDn"i&&,F else sum);" /9J>9?>);" or+j);"jDi"j&&, G sum)sum&/9i>9j>A29j>" G 29i>)/9i>9n><sum" @@Pace las modi icaciones de 69i>9j> G ,3

print +!2) Hn!," or+i);"iDn"i&&, print +!8 Ht!,29i>," @@para los valores de las % loat B9n>" print +!HnUAB)2Hn!," or+i);"iDn"i&&,F or+j);"jDm"j&&,F i +j))n, 69i>9j>)29i>" print +!8 Ht!,69i>9j>," G print +!Hn!," G B9n<$>)69n<$>9m<$>@69n<$>9n<$>" or+i)n<'"iE);"i<<,F sum);" or+j)i&$"jD)n<$"j&&,

@@para obtener los valores de la sustitucin sum)sum&69i>9j>AB9j>" @@se introduce el valor de %n en la matriz de resultados B9i>)+69i>9m<$><sum,@69i>9i>" G print +!Hn/os valores de %Zs sonHnHn!," @@se imprime la matriz de resultados or+i);"iD)n<$"i&&,F print +!8 Ht!,B9i>," G return ;" G

,,

,5

,!

CASOS DE ESTUDIO.

,$

CONCLUSIN. 0ues como lo dije en anteriores prcticas, para m. sigue siendo mejor el mtodo de Gauss normalizado para la solucin de ecuaciones lineales, aunque tambin se debe a que no investigu ms para saber que in ormacin se obtiene con este mtodo.

,-

Anda mungkin juga menyukai