Vous êtes sur la page 1sur 75

104 MhODOS NUMERICOS PARA INGENIEROS

cuatro o más ecuaciones la solución se torna difícil y se debe utilizar


una computadora. Históricamente, la imposibilidad de resolverestos
sistemas a mano, excepto sistemas muy pequeños, limitó el alcance
de problemas dirigidos a muchas aplicaciones de ingeniería.

Antes del uso de las computadoras, las técnicas para solucionar siste-
mas de ecuaciones algebraicaslineales requerían mucho tiempo y eran
muy difíciles. Estos planteamientos creaban restricciones sobre la crea-
tividad ya que los métodos eran difíciles de implementar y de enten-
der. Be ahí que se hacía hincapié en las técnicas, a costa de otros
aspectos del proceso de solución al problema,tales como la formula-
ción y la interpretación (recuérdese la figura 1.1 y el análisis que la
acompaña).

El advenimiento de computadoras personales de fácil acceso hacepo-


sible y práctica la solución de grandes sistemas de ecuaciones alge-
braicas lineales. De esta manera, se pueden plantear problemas más
complejos y más realistas. Además, habrá más tiempo de examinar
las habilidades creativas ya que se hará más hincapie en la formula-
ción e interpretación del problema.

FIGURA 1 1 1 . 1 Dos tipos de sistemas que pueden ser modelados usando sistemas de ecua-
ciones algebraicas lineales: a) sistema macrovariable que involucra un
conjunto acoplada de componentes finitas y b) sistema microvariable que
involucra continuidad.
SISTEMAS LINEALES
ECUACIONES ALGEBRAICAS 205

I I I. 1 . 2 Ecuaciones algebraicas lineales y su práctica en la


ingeniería

Muchas de las ecuaciones fundamentales de la ingeniería se basan


en las leyes de conservación (recordar el cuadro 1 1 . 1 ) . Algunas canti-
dades familiares que forman partede estas leyes son la masa,la fuerza,
la energía y el momento. En términos matemáticos, estos principios
llevan a ecuaciones de equilibrio que estudian el comportamiento del
sistema; estas ecuaciones consideran las incógnitas a obtener del mo-
delo matemático: los niveles o respuestas de la cantidad que se está
modelando, las propiedades o características del sistema, y los estímulos
externos que actúan sobre el sistema.

Como un ejemplo, la conservación de la masa se puede usar para


formular un balance de masa en un conjunto de reactores químicos
(Fig. Ill. 1 a). En este caso la cantidad que se modela es la masa de
la sustancia en cada reactor. Las propiedades del sistema son las ca-
racterísticas de la reacción de lasustancia además de los tamaños de
los reactores y la velocidad de flujo. Los estímulos externos son los
suministros de sustancias al sistema.

En la parte anterior del libro,se ve cómo sistemas de un solo compo-


nente generan una ecuación que se puede resolver con las técnicas
de localización de raíces.Los sistemas con componentes múltiples ge-
neran un conjunto de ecuaciones matemáticas acopladas que deben
resolverse simultáneamente. Las ecuaciones están acopladas porque
las partes individuales delsistema influyen sobre otras partes. Por ejem-
plo, en la figura 1 1 1 . 1 a, el reactor 4 recibe sustancias de los reactores
2 y 3. En consecuencia, su respuesta depende de la cantidad de sus-
tancia de estos reactores.

Cuando estas dependencias se expresan en forma matemática, las ecua-


ciones resultantes, a menudo, son de la forma algebraica de la ecuación
(Ill.1). Las x , usualmente, miden las magnitudes y respuestas de los
componentes individuales. Con la figura Ill.la como ejemplo, x , pue-
de medir la cantidad de masa en el primer reactor, x:, la del segun-
do, etcétera. Las a, representannormalmente las propiedades y
características que se refieren a las iteraciones entre las componen-
tes. Por ejemplo, lasa en la figura Ill. 1 a pueden reflejar las velocida-
des de flujo de masa entre los reactores. Finalmente, las c representan
los estímulos externos que actúan sobre el sistema, tal como los sumi-
nistros de sustancias en la figura 111.1 a. Los casos de estudio en el ca-
pítulo 9 muestran otros ejemplos de tales ecuaciones, derivadas de
la práctica de la ingeniería.

Los problemas de componentes múltiples como los tipos anteriores re-


sultan demodelos
matemáticos discretos (macro-) o continuos
206 MÉTODOS NUMÉRICOSPARA INGENIEROS
-__

(micro-) (Fig. 1 1 1 . 1 ) . Los problemas de variables discretas implican


componentes finitos acoplados como las armaduras (caso9.3))reactores
(Fig. III.la) y circuitos eléctricos (caso 9.4). Estos tipos de problemas
usan modelos que proporcionan a grandes rasgosel comportamien-
to de un sistema en función de ciertas variables.

Por el contrario, los problemas microescalados intentan describir las


características de los sistemas con una base continua o semicontinua.
La distribución de sustancia sobre un reactor rectangular alargado
(Fig. III. 1 b) es un ejemplo de un modelo de variable continua. Las ecua-
ciones diferenciales derivadas de las leyes de conservación especifi-
can la distribución de la variable dependiente para tales sistemas (caso
9.2). Estas ecuaciones diferenciales se pueden resolver numéricamente
para convertirlas a un sistema equivalente de ecuaciones algebrai-
cas simultáneas. La solución de este conjunto de ecuaciones repre-
senta una importante aplicación enel área de ingeniería para los
métodos de los capítulos siguientes. Estas ecuaciones están unidas por-
que las varihbles en cierta posición dependen de las variables de re-
giones adyacentes. Por ejemplo, la concentración a la mitad del reactor
es una función de la concentración en regiones adyacentes. Se pue-
den desarrollar ejemplos similares para la distribución de la tempe-
ratura o del momento.

Además de los sistemas físicos, las ecuaciones algebraicas lineales si-


multáneas también aparecen en una variedad de contextos en pro-
blemas matemáticos. Esto resulta cuando se requiere que las funciones
matemáticas satisfagan varias condicionesde manera simultánea. Ca-
da condición da como resultado una ecuación quecontiene coeficientes
conocidos y variables incógnitas. Las técnicas expuestas en esta par-
te se pueden usar para encontrar los coeficientes de los sistemas cuando
las ecuaciones sean linealesy algebraicas. El análisis de regresión (ca-
pítulo 10) y la interpolación cúbica segmentaria (spline, capítulo l l )
son algunas de las técnicas ampliamente usadas que utilizan ecuacio-
nes simultáneas.

111.2 FUNDAMENTO§ MATEMÁTICOS


En todas las partes de este libro se requieren algunos fundamentos
matemáticos. Son últiles, en la parte Ill, la notación matricial y el ál-
gebra, ya que ofrecen una forma concisa de representar y manipular
sistemas de ecuaciones algebraicas lineales. Si se está familiarizado
con las matrices, puede pasarse por alto la sección 111.3. Para quie-
nes no están familiarizados o requieren una repasada, el siguiente
material proporciona una breve introducción al tema.
SISTEMAS LINEALES
ECUACIONES ALGEBRAICAS 207

111.2.1 Notación matricial

U n a matriz-consta de un arreglo rectangular de elementos represen-


tados por un símbolo simple. Como se puede ver en la figura 111.2,
[A] es la notación abreviada para la matriz y uiirepresenta un ele-
mento individual de la matriz.

Al conjunto horizontal de elementosse le llama renglón y al conjunto


vertical se le llama columna. El primer subíndice i siempre denota el
número del renglón en quese encuentra el elemento. El segundo sub-
índice j denota la columna. Por ejemplo, el elemento 023 está en el
renglón 2 y en la columna 3.

La matriz de la figura 111.2 tiene m renglones y n columnas y se dice


que es dimensión m por n (o m X n). Se le conoce como una matriz
m por n.

Las matrices con dimensión m = 1 en el renglón, tales como

[B] = [b,b2 . . . b"]

seles llama vectores renglón. Nótese que por simplicidad, se omite


el primer subíndice.

Las matrices con dimensiónn = 1 en la columna, tales como

FIGURA 111.2 Una matriz.


208 MÉTODOS NUMERICOS PARA INGENIEROS

se les conoce como vectores columna. Por simplicidad se omite el se-


gundo subíndice.

A las matrices donde m = n se les llama matrices cuadradas. Por ejem-


plo, una matriz 4 por 4 es

a11 a12 a13 a


14
a21 a22 023 024
[Al =
:[ 2 2: 24
Se le llama diagonal principal de la matriz a la diagonal consistente
de los elementos a , , , aZ2,q 3 y ad4.

Las matrices cuadradas son particularmente importantes en la solu-


ción de sistemas de ecuaciones lineales simultáneas. Para tales siste-
mas, el número de ecuaciones (correspondiente a los renglones) y el
número de incógnitas (correspondientea las columnas)deben ser iguales
en orden para que sea posible unasolución única. Por consiguiente, las
matrices cuadradas se encuentran al trabajar con tales sistemas. Al-
gunos tipos especiales de matrices se describen en el recuadro 1 1 1 . 1 .

RECUADRO 1 1 1 . 1 Tipos especiales de matrices cuadradas

Hay algunas formas especiales de matrices cuadradas Nótese que se deian en blanco los bloques grandes de
que son importantes y se deben mencionar: elementos que son cero.

Una matriz simétrica es aquella donde ai; = qij para Una matriz identidad es una matriz diagonal donde to-
i y
toda toda ;. Por ejemplo, dos los elementos dediagonal
la principal son iguales
a 1 , como en

[A] = [i 1 a] [/I = rll 1


1 11
es una matrizsimétrica 3 por 3.
El símbolo [ I ] denota la matriz identidad. Esta matriz
Una matriz diagonal es una matriz cuadrada
donde to- tiene propiedades a la unidad.
dos los elementos fuera de la diagonal principal son
Una matriz triangular superior es aquella donde todos
iguales a cero, como en
sus elementos baio la diagonal principal son cero, como

I I
[all all a13 a141
[Al =
a33 a34
a23
L (7441
SISTEMAS LINEALES
ECUACIONES ALGEBRAICAS 209

Una motriz triangular inferior es aquella donde todos cero, con la excepción de una banda centrada sobre
sus elementos arribadeladiagonalprincipal son ce- la diagonalprincipal:
ro, como

La matriz anterior tiene un ancho de banda de 3 y se


Una motriz banda tienetodos los elementosiguales a le da un nombre especial, motr;z tr;d;agonal,

111.2.2 Reglas de operación sobre matrices

Ahora que se ha especificado lo que significa una matriz, se pueden


definir algunas reglas de operación que gobiernansu uso. Dos matri-
ces m por n son iguales, si y sólo si, cada elemento de la primera es
igual a cada elemento de la segunda; esto es [A] = [B] si a;, = bjjpa-
ra toda i, j.

La suma de dos matrices, [A] y [B], se realiza sumando los elementos


correspondientes de cada matriz. Los elementos de la matriz [C]re-
sultante se calculan como:

parai = 1, 2,. . .,m y i = 1 , 2, - . . , n.


De forma similar, la resta de dos matrices, [E]y [ F ] , se obtiene restan-
do los términos correspondientes, como:

d..
'I = e.."..
'I 'I

para i = 1 , 2, . . . , m y j = 1 , 2, . ..
, n. De la definición anterior,
se sigue inmediatamente que la suma y la resta se puede llevar a ca-
bo sólo entre matrices que tienen las mismas dimensiones.

La suma y la resta son conmutativas:

Y
210 MÉTODOS NUM~RICO S INGENIEROS
PARA

La suma y la resta también son asociativas, esto es,

La multiplicación de una matriz [A] por un escalar g se obtiene multi-


plicando cada elemento de [A] por g, como en

El producto de dos matrices se representa como [C]= [A][B],en don-


de los elementos de [C]se definen como (véaseel recuadro 111.2 donde
se expone el concepto simple de la multiplicación matricial)
n
C;; = a r k bk; [111.2]
k= 1

Donde n = la dimensión de las columnas de [A] y la dimensión de


los renglones de [B].

RECUADRO 111.2 Método simple para multiplicardosmatrices

Aunque la ecuación (111.2) está bien definida para im- Ahora la respuesta [C]se puede calcular en el espacio
plementarse en una computadora, no es la forma más vacante deiado por[B]. Este formato tiene utilidad por-
simple de visualizar la mecánica de multiplicación de que alinea los renglones apropiados y las columnas que
dos matrices. En seguida se presenta una expresión más se van a multiplicar. Por ejemplo, de acuerdo a la ecua-
tangible sobre este concepto. Supóngase que se desea ción (111.2) el elemento c1 se obtiene multiplicando el
multiplicar [A] por [B] y obtener [C]: primer renglón de [A] por la primera columna de [B].

Esto es equivalente a sumar el producto de y bl,,


al producto de y b , , como

U n a forma simple de representar el cálculo de [C]es


elevar [B], como en 2
91
7=22

For io tanto, c l , , es igual a 22. El elemento c2,,se pue-


de calcular en una forma similar, como
LINEALES
SISTEMAS

[A]+
14".:',
DE ECUACIONES
ALGEBRAICAS

8 6
o 4
x5+6~7=82 +[C]
Nótese que este método esclarece el porqué es impo-
21 1

sible multiplicar si el número de columnas de la prime-


ra matriz no es igual al número ¿e renglones de la
El calculo se puede continuar deesta manera, siguien- segunda. Nótese cómo demuestra que el orden de la
do la alineación de renglones y columnas, para obte- mdtiplicación coincide también. De la misma manera
ner el resultado: ilustra estos puntos el problema 7.3.

Esto es, el elemento cji se obtiene sumando el producto de elemen-


tos individuales del i-ésimo renglón de la primera matriz,en este caso
[A],por la i-ésima columna de la segunda [B]. De acuerdo a esta de-
finición, la multiplicación de dos matrices sólo se puede realizar si la
primera matriz tiene tantas columnas como renglones la segunda. Por
lo tanto, si [A] es una matriz m por n, [B] deberá ser una matriz n
por p. En este caso, la matriz [C]resultante tendrá dimensión m por
p. Sin embargo, si [B] fuese una matriz p por n, la multiplicación no
se podría llevar a cabo. La figura 111.3 muestra una forma fácil de
verificar si se pueden multiplicar dos matrices.

Si las dimensiones de las matrices son compatibles, la multiplicacion


matricial es asociativo:

FIGURA 111.3 Una manera simple de comprobar si es posible multiplicar dos matrices.
212 MhODOS NUMÉRICOS PARA INGENIEROS

y distributiva:

Sin embargo, en general la multiplicación no es conmutativa:

[AI[Bl + [BI[AI
Estoes,el orden de multiplicación es importante.

Aunque la multiplicación es posible, la división matricial aún no está


definida. Sin embargo, si una matriz [A] es cuadrada, hay otra ma-
triz [A]", llamada la inversa de [A], tal que

[A]" [A] [A]= [A]" = [I] [111.3]

De esta forma, la multiplicación de una matriz por su inversa, es aná-


loga a la división, en el sentido de que un número dividido por sí mis-
mo es igual a uno. Esto es, la multiplicación de una matriz por su inversa
es igual a la matriz identidad (recuérdese el recuadro 111.1).

La inversa de unamatriz cuadrada bidimensional se puede represen-


tar simplemente como:

1
[A)" =
0 1 1 a22 - a12 9 1 [ e
2
- 9 1
-a12
al,]
[111.4]

Las matrices de dimensión mayor son mucho más difíciles de expre-


sar. La sección 8.2 se dedica a estudiar una técnica que calcula la
inversa de tales sistemas.

Las operaciones finales de las matrices que tienen utilidad en este aná-
lisis son las de transposición y de matriz aumentada. La transpuesta
de una matriz comprende la transformación de sus renglones en co-
lumnas y sus columnas en renglones. La transpuesta de la matriz:
SISTEMAS LINEALES
ECUACIONES ALGEBRAICAS 213

denotada por [AlT, se define como:

En otras palabras, el elemento a;;de la transpuesta es igual al ele-


mento ai;de la matriz original, o ai = ai;. La matriz transpuesta tie-
ne una gran variedad defunciones en el álgebra matricial. Una ventaja
simple es la de permitir escribir un vector columna como vector fila.
Por ejemplo, si:

entonces

en donde el superíndice T denota transposición. Esto puede ahorrar


espacio al escribir un vector columna en un manuscrito. Además, la
matriz transpuestatiene una gran variedad deaplicaciones en las ma-
temáticas.

Una matriz aumentada es el resultado de agregarle una columna (o


más columnas) a la matriz original. Por ejemplo, supóngase que se
tiene una matriz:

Si se desea aumentar esta matriz [A] con una matriz identidad (re-
cuérdese el recuadro Ill. 1 ), entonces se obtiene una matriz 3 por 6
dimensional, dada por:
214
-
MhODOS NUMERICOS PARA INGENIEROS

Esta expresión tiene utilidad cuandose desea realizar un conjunto de


operaciones idénticas sobre dos matrices. De esta forma, se pueden
llevar a cabo las operaciones sobre una matriz aumentada en vez de
hacerlo sobre dos matrices independientes.

111.2.3 Representaciónenformamatricial de sistemas de


ecuaciones algebraicas lineales

Debe ser claro que las matrices proporcionan una notación concisa
en la representación de ecuaciones simultáneas lineales. Por ejemplo,
la ecuación ( 1 1 1 . 1 ) se puede expresar como:

donde [A] es una matriz cuadrada n por n de coeficientes:

[Al =

[C]es unvector columna n por 1 de constantes:


[C]T = [Cl c2
c3 . . . cn]
y [Aes un vectorcolumna n por 1 de incógnitas:

[XIT = [xx1x23 .. xn]

Recuérdese la definición de la multiplicación matricial [Ec. (111.2) o re-


cuadro 111.21 para comprobar laequivalencia de las ecuaciones( 1 1 1 . 1 )
y (111.5).También, nótese que la multiplicación matricial (111.5) es vá-
lida ya que el número de columnas ( n ) de la primer matriz ([A])es
igual al número de renglones (n) de la segunda matriz ([A).
En esta parte del libro se resuelve la ecuación (111.5) para Una [A.
manera formal de obtener una solución usando álgebra matricial es
la de multiplicar cada lado de la ecuación por la inversa de [A] para
obtener:

Ya que [A]” [A] es la matriz identidad, la ecuación anterior se con-


vierte en:

[XI = [Al”[Cl 1 [111.6]


SISTEMAS ECUACIONES
LINEALES ALGEBRAICAS 21 5

Por lo tanto, la ecuación se ha resuelto para [A. Este es otro ejemplo


del juego de la matriz inversa similar a la división en el algebra ma-
tricial.

Finalmente, algunas veces es útil aumentar [A] con [C].Por ejemplo,


si n = 3 el resultado es una matriz 3 por 4 dimensional, dada por:

[111.7]

Expresar de esta manera la ecuación tiene utilidad, ya que varias de


las técnicas en la solución de sistemas lineales hacen operacionesidén-
ticas a una fila de coeficientes y a la constante correspondiente del
lado derecho. Como se expresó en la ecuación (lll.7), se pueden rea-
lizar algunas operaciones sobre un renglón de la matriz aumentada
en lugar de hacerlo separadamente sobre la matriz de coeficientes
y el vector del lado derecho.

111.3
Antes de considerar los métodos numéricos,es útil mencionar alguna
orientación adicional. A continuación se muestra superficialmente el
material analizado en la parte Ill. Además, se han formulado algu-
nos objetivos para ayudar a enfocar los esfuerzos cuando se estudie
el material.

111.3.1 Metasyavances

En la figura 111.4 se proporciona un esquema de la parteIll. El capitu-


lo 7 muestra la técnica fundamental en la solución de sistemas alge-
braicoslineales:laeliminacióngaussiana.Antesdeentrar en los
detalles de esta técnica, se incluye una sección que menciona algu-
nos métodos simples para sistemas pequeños. Esto se hace con el fin
de dar una ideavisual y debido a que uno delos métodos -la elimi-
nación de incógnitas- es la base de la eliminación gaussiana.

Después de presentar los antecedentes, se analiza la eliminación gaus-


siana simple.

Se inicia con esta versión ya que permite la elaboración del método


completo sin mayores complicaciones. Después,en las siguientes sec-
ciones, se analizan posibles problemas que usen el método simple
presentando ciertas modificacicnes que minimiceny eviten estos pro-
blemas. AI final del capítulo, se dedica un recuadro a una formamuy
216 MÉTODOS NUMÉRICOS PARA INGENIEROS

FIGURA 111.4 Esquema de organización de la parte Ill: Sistemas de ecuaciones alge-


braicas lineales.

eficiente de la eliminación gaussiana que puede ser usado en siste-


mas tridiagonales.

En el capítulo 8 se empieza con el análisis del método de Gauss-Jordan.


Aunque esta técnica es muy parecida a la eliminación gaussiana, se
analiza porque permite calcular la matriz inversa que tiene una utili-
dad inmensa en la ingeniería.
SISTEMAS DE ECUACIONES ALGEBRAICAS LINEALES 21 7

La eliminación gaussiana y el método de Gauss-Jordan son métodos


directos. AI final del capítulo 8 se estudia un método diferente cono-
cido como método de Gauss-Seidel. Éste es parecido a los métodos
de aproximación de raíces de ecuaciones quese estudiaron en el ca-
pitulo 5. Esto es, la técnica implica dar una aproximación inicial a la
solución y mediante iteraciones obtener un valor meiorado.

En el capítulo 9 se demuestra como se pueden aplicar los métodos


en la solución de problemas. Así como en otras partes del libro, se
examinan aplicaciones extraídasde todos los campos de la ingeniería.

Finalmente, al terminar la parte Ill se incluye un epílogo. Este repaso


incluye el análisis de los elementos de juicio importantes en la imple-
mentación de los métodos en la ingeniería práctica. En esta sección
también se resumen las fórmulas de mayor importancia y los méto-
dos avanzados relacionados conlas ecuaciones algebraicas lineales,
por lo que se pueden usar para estudiar antes de un examen o como
repaso cuandose tenga necesidad de utilizar las ecuaciones algebrai-
cas lineales en la vida profesional.

Las capacidades de cómputo automático se integran en la parte Ill


en una variedad de formas. Primero, en NUMERICOMP, se encuen-
tran disponibles programas amables con el usuario de la eliminación
gaussiana para la microcomputadora Apple-ll e IBM-PC.También se
proporcionan los programas en FORTRAN y BASIC de la eliminación
gaussiana directamente en el texto. Esto le d a al usuario la oportuni-
dad de copiary aumentar los programas para implementarlos en su
microcomputadora o supercomputadora. También se incluyen los dia-
gramas de flujo o los algoritmos en la mayor parte de los métodos
descritos en el libro. Este material puede formar la base de un pa-
quete de programas que el mismo usuario puede desarrollar y apli-
car a una gran cantidad de problemas de ingeniería.

111.3.2 Metas y objetivos

Objetivos de estudio. AI terminar la parte Ill, el usuario debe ser ca-


paz de resolver la mayor parte de problemas que impliquen utilizar
ecuaciones algebraicas lineales y poder visualizar las aplicaciones de
estas ecuaciones en todos los campos de la ingeniería. El usuario de-
be hacer lo posible por dominar variastécnicas y valorar la confiabi-
lidadde lasmismas. Debe entenderlasventajasydesventajas
involucradas en la selección del "mejor" método (o métodos) en cual-
quier problema particular. Además de estos objetivos generales, se
deben asimilar y dominar los conceptos específicos enumerados en
el cuadro 1 1 1 . 1 .
218 MÉTODOS NUMÉRICOS PARA INGENIEROS

Objetivos de c6rnputo. El objetivo fundamental en cuanto a cómputo,


es el de ser capaz de usar en forma satisfactoria un programa para
resolver sistemas de ecuaciones algebraicas lineales. Debe quedar cla-
ro el uso de los programas de NUMERICOMP, o también saber có-
mo copiar y usar el programa de laeliminacihn gaussianasimple dado
en el texto. Estos programas le permitirán manejar adecuadamente
muchos problemas prácticos que impliquen utilizar varias ecuaciones
algebraicas lineales simultáneas. A medida quese avance en los pro-
blemas que contengan más ecuaciones, se pueden usar los progra-
mas, diagramas defluio y algoritmos proporcionados en la parte Ill.
Eventualmente, se puede incorporar a los programas el pivoteo parcial,
el cálculo de determinantes y la evaluación de condiciones. También
se pueden obtener los programas paralos métodos de Gauss-Jordan
y de Gauss-Seidel.

CUADRO 111.1 Objetivos de estudios específicos de la parte 111

1 . Entender las interpretaciones gráficas de sistemas mal condicionados y su rela-


ción con el determinante del sistema.
2 . Entender por qué se le llama "simple" a la primera versión de la eliminación
gaussiana.
3 . Familiarizarse con la terminología: eliminación hacia atrás, sustitución hacia atrás,
normalización, ecuación pivotal y pivote.
4 . Entender los problemas de división por cero, errores de redondeo y mal condi-
cionamiento.
5 . Saber cómo evaluar la condición del sistema.
6 . Saber cómo calcular determinantes usando la eliminación gaussiana.
7 . Entender las ventajas del pivoteo; entenderlas diferencias entre el pivoteo par-
cial y el pivoteo total.
8. Saber cómo aplicarlas técnicas de corrección de errorespara mejorar las soh-
ciones.
9 . Entender por qué las matrices banda son relativamente eficientes en su solución.
1 O . Saber la diferencia fundamental entre la eliminación gaussianay el método Gauss-
Jordcn.
1 1 . Entender cómo se usa el método deGauss-Jordan para calcular la matriz inversa.
1 2 . Saber interpretar los elementos de la matriz inversa en la evaluación de las in-
cágnitas en ingeniería.
1 3 . Comprender el uso de la matriz inversa en la evaluación de la condición del
sistema.
1 4 . Entender por qué el método de Gauss-Seidel es particularmente apropiado pa-
ra sistemas grandes de ecuaciones.
1 5 . Entender par qué el valor de la diagonal de un sistema de ecuaciones influye
en que el método pueda ser resuelto mediante el método de Gauss-Seidel.
1 6. Entender la razón existente detrás del concepto relajación;saber dónde es más
apropiada la subrelajación y dónde la sobrerelajación.
CAPíTULO SIETE
ELIMINACIóN GAUSSIANA

En este capítulo se analizanlas ecuaciones algebraicas lineales simultá-


neas que en general se pueden representar como:
allxl + a12x2 + * + al,x, = c1
a21x1 + a22x2 + . . . + a2,xn = c2

anlxl + 0~2x2+ * - + a,,x, = c,


*

endondelas a son coeficientes constantes y las c son constantes.


A la técnica que se describe en este capítulose le conoce como elimi-
nación gaussiana porque involucra una combinación de ecuaciones a las
que se les eliminan las incógnitas. Aunque éste es uno de los métodos
más antiguos en la soluciónde ecuaciones simultáneas, permanece hasta
nuestros días como uno de los algoritmos de mayor importancia.En par-
ticular, es fácil de programary de aplicar con el uso de microcomputadoras.

7.1 SOLUCIÓN DE POCASECUACIONES


Antes de entrar a los métodos que usan computadora, se describen algu-
nos que son apropiados en la solución de pequeños grupos de ecuacio-
nessimultáneas ( n I3) quenorequierendeunacomputadora.Estos
son los métodos gráficos,la regla de Cramer y la eliminación de incógnitas.

7.1 .l Método gráfico


Se obtiene una solución gráfica de dos ecuaciones representándolas en
coordenadas cartesianas con un eje correspondiente a x1 y el otro a x2.
Ya que el problema es para sistemas lineales, cada ecuación representa
220 METODOS NUMÉRICOS PARA INGENIEROS

unalínea recta. Esto puede ilustrarse fácilmente por las ecuaciones ge-
nerales:

QlXl + a12xz = c1

a21x1 + a22x2 = c2

Ambas ecuaciones se pueden resolver para x2:

De esta manera, las ecuaciones se encuentran ahora en la forma de lí-


neas rectas; esto es, x2 = (pendiente) x1 + intersección. Estas líneas se
pueden graficar en coordenadas cartesianas con x2 como la ordenada y
x1como la abscisa. Los valores de x1y x2 enla intersección de las líneas
representan la solución.

EJEMPLO 7.1
El método gráfico para dos ecuaciones

Enunciado del problema:úsese el métodográficopararesolver


3x1 + 2x2 = 18 [E7.1.1]
-x1 + 2x2 = 2 [E7.1.2]
Solución: sea x1 la abscisa. AI resolver la ecuación (E7.1.1) para x2:

que, al graficarse en la figura 7 . 1 , da una línea recta con una intersección


en 9 y pendientede -3/2.

La ecuación (E7.1.2) se puederesolverparax2:

x2 = (1/2)x, + 1

la cual también se grafica enlafigura 7.1. La solución es la intersección


delasdoslíneasen x1 = 4 y x2 = 3. Este resultado se puede verificar
sustituyendo estos resultados en las ecuaciones originales para obtener:
3(4) + 2(3) = 18
I -4 + 2(3) = 2
ELlMlNAClON GAUSSIANA 22 1

De esta manera, los resultados son equivalentes a los lados derechos de


las ecuaciones originales.

FIGURA 7.1 Solución gráfica de un conjunto de dos ecuaciones algebraicas linea-


les simultáneas. l a intersección ¿e las líneas representa la solución.

Para tres ecuaciones simultáneas, cada ecuación representa un plano en


el sistema de coordenadas tridimensional. El punto en donde se intersec-
ten los tres planos representa la solución. Más alládetres ecuaciones,
los métodos gráficos no funcionany , por consiguiente, la solución deecuac-
ciones algebraicas tiene muy poco valor práctico. Sin embargo, algunas
veces resultan útiles para visualizar propiedades de la solución. Por ejem-
plo, lafigura 7.2 muestra tres casos que se pueden abordar cuando se
desea resolver un conjunto de ecuaciones lineales. La figura 7.2a mues-
tra el caso en que la dos ecuaciones representan dos líneas paralelas. En
estos casos, no existe solución ya que las dos líneas jamás se cruzan. La
figura 7.2b representa el caso enque las dos líneas coinciden. En este
caso existe un número infinito de soluciones. A estos dos tipos de siste-
mas se les llama singular. También los sistemas que son casi singulares
causan problemas (Figura 7 . 2 ); a estos sistemas se les k m a mal condi-
cionados. Gráficamente, indican que el punto exacto de intersección de
ambas rectas es muy difícil devisualizar. Como se veenlas siguientes
222 MÉTODOS NUMÉRICOS PARA INGENIEROS

FIGURA 7.2 Esquema gráfico de sistemas mal condicionados: a) no hay solución, b)


hay una infinidadde soluciones y c) un sistema mal condicionadoen donde
las pendientes son muy parecidas en el punto de intersección y es difícil
de detectar fácilmente la solución.

secciones, los sistemas mal condicionados también tienen problemas cuan-


do ?e encuentran en la solución numérica de ecuaciones lineales.

7.1.2 Determinantes y la regla de Cramer

La regla de Cramer es otra técnica de solución aplicablea pocas ecuacio-


nes. Antes de describir estemétodo, se menciona brevementeel concep-
to de determinantes, que se usanenla implementaciónde la reglade
Cramer. Además, el determinante es útil enla evaluación de mal condi-
cionamiento de unamatriz.

Determinantes. Se puede ilustrar un determinante mediante un conjun-


to de tres ecuaciones:

o. enformamatricial:

en donde [ A ] es lamatriz de coeficientes:

all a12 a13


ELlMlNAClON GAUSSIANA 223

El determinante D de este sistema se forma con los coeficientes la


deecua-
ción, de la siguiente manera:

Aunque el determinante D y lamatriz [A] se componen de los mismos


elementos, tienen conceptos matemáticos completamente diferentes. Para
denotar la matriz se usan corchetes y para los determinantes se usan ba-
rras verticales. En contraste con una matriz, el determinante es un núme-
ro. Por ejemplo, elvalordel determinante de segundo orden:

D= all a12
(a21

se calcula mediante:

En el caso de tercer orden [Ec. (7.2)], se puede calcular el valor del de-
terminante como:

en donde a los determinantes de 2 por 2 se lesllama menores.

EJEMPLO 7.2
Determinantes

Enunciado del problema: calcúlense los valores de los determinantes de


lossistemasrepresentadosenlasfiguras 7 . 1 y 7.2.

Solución: para lafigura 7.1:

Para lafigura 7 . 2 ~ 1 :

1 =
-1/2
1-1,2
1 -1
2
11 = -(l) -
1
1(%) = o
I
224 INGENIEROS PARA MÉTODOS NUMÉRICOS

Para lafigura 7.2b:

I Para lafigura 7.2~:

En el ejemplo anterior, los sistemas singulares tienen un valor de ce-


ro. Además, elresultadoindicaqueelsistemacasisingular (Fig. 7 . 2 ~ )
tiene un determinante cercano a cero. Estas ideas se seguirán manejan-
do posteriormente en los análisis de mal condicionamiento (sección 7.3.3).

Regla de Cramer. Esta regla dice que cada incógnita de un sistema de


ecuaciones algebraicas linealesse puede expresar como el cociente de dos
determinantes con el denominador D y con el numerador obtenido de
D reemplazando la columna de coeficientes de la incógnita en cuestión
porlasconstantes cl, c2, . . . , c,. Por ejemplo, x1 se calcula como:

EJEMPLO 7.3
Regla de Cramer

Enunciado del problema: úsese lareglade Cramer para resolver:

+
0 . 3 ~ 1 0.52~2 + x3 = -0.01

+
0 . 1 ~ 1 O.3X2 + O.5X3 = -0.44
Solución: el determinante D se puedeescribir como [Ec. (7.2)]:

0.3 0.52 1
D = 0.5 1 1.9
0.1 0.3 0.5
ELlMlNAClON GAUSSIANA 225

Los menores son:

1 1.9
= l(0.5) - 1.9(0.3)= -0.07
10.3
= 0.5
0.5 1.9
= 0.5(0.5)- 1.9(0.1)= 0.06
0.1 0.5
0.5 1
= 0.5(0.3) - l(O.1) = 0.05
A3 = 10.1 0.3

Éstos se pueden usar para evaluar el determinante, como en la ecuación


(7.4):
D = 0.3(-0.07) - 0.52(0.06) + l(0.05) = -0.002 2

Aplicando la ecuación (7.5),la solución es:

-0.01 0.52 1
0.67
1.9 1
x1 =
I -o.44 I
-= .-0.032 78 = -14.9
-0.002 2 -0.002 2
0.3 -0.01 1
0.5 0.67 1.9

0.3 0.52-0.01
10.5 1 O. 67
1O.l - -0.043 56 = 19.8
x3 =
"0.002 2 -0.002 2

Para más de tres ecuaciones, la regla de-Crameres imprdctica ya que


a medida que crece el número de ecuaciones, los determinantesse vuel-
ven dificiles de evaluar a mano. Por consiguiente, se usan otras alternati-
vasmás eficientes.Algunas de estasalternativas se basanenlaúltima
técnica cubierta en este libro que no usa computadora, la eliminación de
incógnitas.

7.1.3 La eliminación de incógnitas

La eliminación de incógnitas mediante la combinación de ecuaciones es


un esquema algebraic0 que se puede ilustrar para un conjunto de ecua-
ciones:
226 MhODOS NUMÉRICOS PARA INGENIEROS

c7.61

La estrategia básicaes multiplicar lasecuaciones por constantes para que


una de las incógnitas se elimine al combinar las dos ecuaciones. El resul-
tado es una ecuación que se puede resolver para la incógnita restante.
Este valor se puede sustituir en cualquiera de las ecuaciones originales
para calcular la otra variable.
Por ejemplo, la ecuación (7.6) se puede multiplicar por a21y la ecua-
ción (7.7) por all paradar:

Restando la ecuación (7.8) de la ecuación (7.9),se eliminael término


x1 de la ecuación para obtener:

que se puede resolver por

[7.10]

La ecuación 7.10 se puede sustituir en la ecuación (7.6),que se puede


resolver por

[7.11]

Nótese que las ecuaciones (7.10) y (7.11) se calculan directamente por


la regla de Cramer, que establece:

XI =
1°C: I;: - c1a22 - a12c2
-
alla22 - (3112a21
ELIMINACION GAUSSIANA 227

EJEMPLO 7.4
Eliminación de incógnitas

Enunciado del problema: úsese la eliminación de incógnitas para resol-


ver (recuérdese el ejemplo 7.1) :
3x1 + 2x2 = 18
-x1 + 2x2 = 2
Solución: usando las ecuaciones (7.11) y (7.10)

2(18) - 2(2)
x1 = =4
3(2) - 2(-1)
3(2) - (-1)18
x2 = =3
3(2) - 2(-1)

las cuales son consistentes con la solución gráfica (Fig. 7.1)

La eliminación de incógnitas se puede extender a sistemas con más


de dos o tres ecuaciones. Sin embargo, los cálculos numerosos que se
requieren para sistemas grandes vuelven rnuy tedioso al método como
para realizarlo a mano. Sin embargo, como se describe en la siguiente
sección, el método se puede formalizar y programar fácilmente en una
microcomputadora.

7.2 ELIMINACIóN GAUSSIANA SIMPLE


En la sección anterior, se usa la elirninación de incógnitas para resol-
ver un par de ecuaciones simultáneas. El procedimiento consta de dos
pasos:

1. Se manejan las ecuaciones para eliminar una incógnita de una ecua-


ción. El resultado de este paso de eliminación es una sola ecuación
con una incógnita.

2. Por consiguiente, esta ecuación se puede resolver directamente y el


resultado se sustituyehaciaatrás en las ecuaciones originales para
encontrar la incógnita restante.

Este comportamiento básico se puede extender a sistemas grandes


de ecuacionesdesarrollando un esquema sistemático para eliminar incóg-
nitas y sustituir hacia atrás. La eliminación gaussiana es una de las técni-
cas más comunes.
228 MhODOS NUMÉRICOS PARA INGENIEROS

7.2.1 Algoritmo para la eliminación gaussianasimple

Se incluye en esta sección la técnica sistemática de eliminación haciaade-


lante y la sustitución hacia atrás que comprende la eliminación gaussia-
na. Aunque estas técnicasse adaptan perfectamentea las condiciones de
implementación sobre una microcomputadora,se requieren algunasmo-
dificaciones para obtener un algoritmo legible. En particular, el programa
debe evitar divisiones por cero. Al método siguiente se le llama elimina-
ción gaussiana "simple" porque no evita estas contingencias. Enlas si-
guientes secciones se muestran algunos rasgos adicionales necesarios para
tener un programa efectivo.
El procedimiento estáplaneado para resolver un conjunto de n ecua-
ciones:
allxl + + a13x3+ + al,xn = c1
~112x2 * * C7.1201
a21x1+ a22x2 + ~ 1 ~+~ x 3+ aZnxn
= c2' * * [7.12b]

[7.12c]

Como en el caso de solución de dos ecuaciones, el método para n ecua-


ciones consiste de dos fases: la eliminación de las incógnitas y su solución
mediante sustitución hacia atrás.

Eliminación hacia adelante de incógnitas. La primera fase reduce elcon-


junto de ecuaciones a un sistema triangular superior (Fig. 7 . 3 ) .El paso
inicial del procedimiento consiste en dividir la primera ecuación[Ec. 7.12a1
porel coeficiente de laprimer incógnita, all:

x1 + "a12x 2 + * . + Q" lxn , =-


c1
a11 al 1 all
A este procedimiento se le conoce como normalización y tiene como fi-
nalidad convertir el primer coeficiente de la ecuación normalizada en 1.
En seguida se multiplica la ecuación normalizada por el primercoe-
ficiente de la segundaecuación [Ec. ( 7 . 1 2 b ) ] ,a21:

[7.13]

Nótese que el primer término de la primera ecuación es ahora idéntico


alprimertérmino de la segunda ecuación. Por consiguiente, se puede
eliminar la primera incógnita de la segunda ecuación restando la ecua-
ción (7.13) de la (7.12b) para obtener
ELlMlNAClON GAUSSIANA 229

FIGURA 7.3 Esquema gráfico de lasdos partes del método de eliminación gaussia-
na. La eliminación hacia adelante reducela matriz de coeficientes a una
forma triangular superior. Después, se usa la sustitución hacia atrás pa-
ra encontrar las incógnitas.

O
ahax? + * * * + ahnxn= c$
en donde el apóstrofo indica que los elementos han cambiado sus valo-
res originales.
El proceso se repite hasta que se elimina la primera incógnita de las
ecuaciones restantes. Por ejemplo, la ecuación normalizada se multiplica
por a31 y el resultado se resta de la tercera ecuación para obtener
a&x2 + aj3x3 + * . + a&,x,, = c$
Repitiendo el procedimiento para el resto de ecuaciones da como resul-
tado el siguiente sistema modificado:
[7.14a]
[7.14b]
[7.14c]

[7.14d]
230 METODOS NUMERICOS PARA INGENIEROS

De ahora en adelante, a la ecuación (7.12a) se le llama ecuación pivotal


y a all se le llama pivote.
En seguida se repite el proceso para eliminar la segunda incógnita de
las ecuaciones (7.14~) hasta la (7.14d). Para hacerlo, se usa como ecua-
ción pivotal la ecuación (7,14b) normalizándola y dividiéndola por el pi-
votea'22. Multiplicando la ecuación normalizada por a'32 y restando el
resultado a la ecuación ( 7 . 1 4 ~se) elimina la segunda incógnita. Repitien-
do el proceso conlas ecuaciones restantes se obtiene:

a"n3 x3 + * . + axnx, = c:

en donde el apóstrofe doble indica que los coeficientes se han modifica-


do dos veces.
El procedimiento se puede continuar usando las ecuaciones restan-
tes como pivotales. La operación final de esta secuencia es la de usar la
(n- 1)-ésima ecuaciónparaeliminar el términode la n-ésima ecua-
ción. En ese momento el sistema se transforma en un sistema triangular
superior (recuérdese el recuadro 111.1).

[7.15a]
[7.15b]
[7.15c]

[7.15dj

Sustitución hacia atrás. La ecuación (7.15d)se puede resolver para x,:

1
17.161

Este resultadose puede sustituir en la (n- 1) -ésima ecuacióny resolverse


éstapara x,,~- El procedimiento se repite evaluando las x restantes, éste
se puede representar mediante la fórmula:
ELlMlNAClON 23 1

[7.17]

para i = n-1, n-2, . . . , 1.

EJEMPLO 7.5
Eliminación gaussiana simple

Enunciado del problema: úsese la eliminación gaussiana para resolver:

3x1 - 0.1~2- 0 . 2 ~ 3= 7.85 [E7.5.lj


0.1~1+ 7x2 - O.3X3 = -19.3 [E7.5.2]
~ 0~ . 2 +
0 . 3- ~ ~lox3 = 71.4 rE7.5.31

Efectúense 10s cálculos con seis cifras significativas.

Solución: la primera parte del procedimientoes la eliminación hacia ade-


lante. La normalización de la ecuación ( € 7 . 5 . 1se) lleva a cabo dividién-
dola por el elemento pivotal, obteniendo:

XI - 0,033 333 3x2 - 0.066 666 7x3 = 2.616 67 [E7.5.4]

En seguida, multiplíquese la ecuación (E7.5.4) por 0.1 y t6stese el resul-


tado de la ecuación (E7.5.2) se tiene:

7.003 33x2 - 0.293 333x3 = -19.561 7 [E7.5.5]

Por lo tanto almultiplicarla ecuación (E7.5.4) por O.1 y al restarla a la


ecuación (E7.5.3) se elimina xl. Después de estas operaciones, el con-
junto de ecuaciones es

3x1 -- o.lx, - 0.2X3 = 7<65 rE7.5.61


7.003 33x2 - 0.293 333x3 = - 19.561 7 [E7.5.7]
-0.190 000x2 + 10.020 Ox3 = 70.615 O [E7.5.8]

Paraterminar la eliminaciónhaciaadelante xp debe desaparecer de la


ecuación (E7.5.8).Para llevarlo a cabo, normalícese la ecuación (E7.5.7)
dividiéndola por 7.003 33:

x2 - 0.041 884 8x3 = -2.793 20 [E7.5.9]


Después, multiplíquese la ecuación ( € 7 . 5 . 9 ) -0.190 O00 y réstese el
por
resultado de la ecuación (E5.7.8). Con esto se elimina x2 de la tercera
ecuación y reduce el sistema a la forma triangular superior, dada por:
232 METODOS NUMÉRICOS PARA INGENIEROS

3x1 - O.lx, - 0 , 2 ~=
3 7.85
7.003 33x2 - 0.293 333x3 = -19.561 7 [E7.5.10]
10.012 Oxg = 70.084 3 [E7.5.11]

Ahora se pueden resolver estas ecuaciones porsustituciónhacia atrás.


Enprimer lugar, la ecuación (E7.5.11)se puede resolver, dando:
03 x3 = 7.000 [E7.5.12]

Esteresultado se puede sustituirenla ecuación (E7.5.10),para dar:


7.003 33x2 - 0.293 333(7.000 03) = -19.561 7
que se puede resolver para
x2 = "2.500 O0 [E7.5.13]

Finalmente, las ecuaciones (E7.S.12) y (E7.5.13)se pueden sustituir en


la ecuación (E7.5.6) para dar:
3x1 - 0.1(-2.500 00) - 0.2(7.000 03) = 7.85
que se puede resolver para:
x1 = 3.000 O0

Aunque hay un pequeiio error de redondeo enla ecuación (E7.5.E ) ,


los resultadosson muy cercanos a lasoluciónexactade x1 = 3, x2 = -2.5
y xg = 7 . Esto se puede verificar sustituyendo las respuestas en el con-
junto de ecuaciones originales, para dar:

3(3) - 0.1(--2.5) - 0.2(7.00003) = 7.84999 = 785


0.1(3) + 7("2.5) - 0.3(7.00003) = -19.300 O = -19.3
0.3(3) - 0.2(-2.5) + lO(7.000 03) = 71.4003 = 71.4

7.2.2 Programa del método de eliminación gaussiana simple

La figura 7.4 muestra los programas de la eliminación gaussiana simple.


Los programas constan de cuatro partes: entrada de dabs, eliminación
hacia adelante, sustitución hacia atrás e impresión de datos. Nótese que
la matriz de coeficientes se aumenta por las constantes del lado derecho.
Esta información se almacena en la matriz A. Ya que esta matriz es aumen-
ELlMlNAClON GAUSSIANA 233

tada, el hecho de que susdimensionesseande 15 por 16 significa


que el programa puede manejar hasta15 ecuaciones simultáneas de esta
forma.

FORTRAN

Elim1nac16n hacia adelante

sun-0
I-N-NN
Sustracci6n hacia atrAs
IP=I+l
[)O 1 2 2 0J = I P , H
SLlN-SUM+A( I , J >*X( J ,
1220 C O N T I N U E
~ ~ I ~ = ~ ~ ~ l , ~ ~ - s u M ~ , ' a ~ l , I ~
1 2 4 0C O N T I N U E
RETURli
END

FIGURA 7.4 Programas FORTRAN y BASIC delmétododeeliminacióngaussiana


simple.

Nótese también que se ha programado el cuerpo principal del algorit-


mo como una subrutina. Se hizo así porque además de la solución direc-
ta de los problemas de ingeniería, la eliminación gaussiana tambihn tiene
utilidadformandoparte de otros algoritmos. Enlaúltima parte de este
capítulo se desarrollan técnicas de corrección de errores que requieren
una subrutina para la elimiflación gaussiana. Además, en el capítulo 10
se necesita resolver ecuaciones algebraicas lineales como parte de la téc-
nica de ajuste de curvas llamada regresión múltiple y polinomial.
234 METODOS NUMÉRICOS PARA INGENIEROS

El programa de la figura 7.4 no es legible al usuario. En el problema


7 .16 al final del capítulo, se presenta la tarea de hacer un bosquejo del
Pr.ogramaparahacerlofácilde Gsar y de entender.

EJEMPLO 7.6
Solución de ecuaciones algebraicas lineales usando computadora

Enunciado del problema:los programas de NUMERICOMP contienen uno


que implementa la eliminación gaussiana enun programa legibleal usua-
rio. Se puede usar este programa para resolver problemas asociados con
el ejemplo del paracaidista discutido en el capítulo 1. Supóngase que un
grupo de tres paracaidistas se conecta por medio de cuerdas muy ligeras
mientras caen a una velocidad de 5 m/s (Fig. 7.5). Calcúlese la tensión
en cada sección de la cuerda y la aceleración del grupo, dada la siguiente
información:

Paracaidista Masa, kg Coeficientes


de
rozamiento, kg/s
.." . . ~
.~ ..

70 1
2 60 14
3 40 17

Solución: los cuerpos de los paracaidistas se muestranenlafigura 7.6.


Considerando las fuerzas en dirección vertical y usando la segunda ley
de Newton se obtiene un conjunto de tres ecuaciones lineales simultáneas:

mlg - T - clu = mla

m2g + T'c2u - R = m2a

Estas ecuaciones tienen tres incógnitas: a , T y R. Después de sustituir¡os


valores conocidos, las ecuaciones se pueden expresar en forma matricial
(ya que g = 9.8 m/s2).
FIGURA 7.5 Tres
paracaidistas en caídc
libre conectados por
cuerdas de peso
despreciable.
236 MÉTODOS NUMÉRICOS PARA INGENIEROS

FIGURA 7.7. (Continuación) b) Prueba de exactitud obtenida al sustituir


la solución en las ecuaciones originales para comprobar
que los resultados son iguales a las constantes del vector
de términos independientes original.

Los resultados anteriores se basan en un algoritmo simple del méto-


do de la eliminación gaussiana con rutinas legiblesal usuario sobre entra-
da y salida de datos. El algoritmo empleado es similar al de la figura 7.4.
El usuario debe ser capaz de escribir un programa para el método de la
eliminación gaussiana. Si ya lo tiene, use el programa anterior para com-
probar la exactitud del propio.

7.3 DESVENTAJAS DE LOS MÉTODOS DE ELIMINACIóN


A pesar de que existen muchos sistemas de ecuaciones que se pueden
resolver con la eliminación gaussiana simple. Hay algunas desventajas que
se deben de analizar antes de escribir un programa que implemente el
método. Aunque el siguiente material habla Gnicamente del método de
eliminación gaussiana simple, esta información también es importante para
otras técnicas de eliminación.

7.3.1 División entre cero

La razón principal por la que se le ha llamado “simple” al método ante-


rior, es porque durante las fases de eliminación y sustitución es posible
que ocurra una división entre cero. Por ejemplo, si se usa el método de
eliminación gaussiana simple para resolver el sistema:
ELlMlNAClON GAUSSIANA 237

la normalización de la primer ecuación implica una división entre all = O.


El problema se presenta también cuando el coeficiente es muy cercano
a cero. Se ha desarrollad? una estrategia del pivote0 para evitar parcial-
menteestosproblemas.Este se describeenla sección 7.4.2.

7.3.2. Errores deredondeo

Aun cuando la solución del ejemplo 7 . 5 se acerca mucho a la solución


real, hay una pequeña diferencia enel resultado de x3 [Ec. (E7.5.12)].
Esta diferencia, que significa un error del -0.000 43%, se debe al uso
de seis cifras significativas durante los cálculos. Si se hubieran usado más
cifras significativas, el error se habría reducido aún más. Si se hubieran
usado fracciones en vez de decimales (y por consiguiente se hubieran evi-
tado los errores de redondeo), la respuesta habría sido exacta. Sin em-
bargo, ya que las microcomputadoras manejan sólo un número limitado
de cifras significativas ( = lo), pueden ocurrir los errores de redondeo y
se deben considerar al evaluar los resultados.

EJEMPLO 7.7
Efecto de los errores de redondeo en la eliminación gaussiana

Enunciado del problema: resuélvase el mismn problema del ejemplo 7 . 5 ,


usando tres cifras significativas durante los cálculos.

Solución: la eliminación de x1 de la segunda y tercera ecuación y la eli-


minación de x2 de la tercera llevaalsiguientesistematriangular:

3x1 - 0.1~2- 0.2~3= 7.85


7.00~2- 0.293~3= -19.6
9.99~3= 70.1

Compárese este sistema con el obtenido previamente usando seis cifras


significativas [ecuación(E7.5.10) hasta la (E7.5.121. Sepuede usar la sus-
tituciónhaciaatráspararesolverel sistema, obteniendo:

x1 = 3.17 IE,~ = 5.7%


x2 = -2.51 I E, 1 = 0.4%
x3 = 7.02 1 E, I = 0.29%
238 NUMERICOS METODOS PARA INGENIEROS

Sustituyendo estos valores enlas ecuaciones originales se obtiene:

3(3.17) - 0.1(-2.51) - 0.2(7.02) = 8.36 # 7.85


0.1(3.17) + 7(-2.51) - 0.3(7.02) = -19.4 # -19.3
0.3(3.17) - 0.2(-2.51) + lO(7.02) = 71.7 # 71.4

Aunque el uso de tres cifras significativas dentro del ejemplo


7.7 hace
del mismo un ejemplo fuera de la realidad, el problema de los errores de
redondeo sí es real y puede ser de mucha importanciaal resolver grandes
cantidades de ecuaciones. Esto se debe a que cada resultado depende
de todos los resultados anteriores. Por consiguiente, un error en los pri-
meros pasos tiende a propagarse, esto es, causa errores en los siguientes
pasos.
Es muy complicado especificar el tamaño del sistema en donde los
errores de redondeo vienen a ser significativos ya que dependen del tipo
de computadoray de las propiedades del sistema. Una regla muy general
es la de suponer que los errores de redondeo son de importancia cuandose
trata de sistemas de 25 a 50 ecuaciones. En cualquier evento, siempre
se deben sustituir las respuestas en las ecuaciones originales y verificar si
ha ocurrido un error sustancial.Sin embargo, como se menciona más ade-
lante la magnitud de los coeficientes mismos puede influir en los errores
al buscar un resultado aceptable.

7.3.3 Ill-Sistemas mal condicionados


La obtención de la solución depende de la condición del sistema. Enla
sección 7.1.1 se muestra un esquema gráfico de la condición de un siste-
ma. En sentido matemático, los sistemas bien condicionados son aque-
llos en los que un cambio en uno o más coeficientes provoca un cambio
similarenla solución. Los sistemas mal condicionados son aquellos en
donde cambios pequeños en los coeficientes provocan cambios grandes
en la solución. Una interpretación diferente del mal condicionamiento es
que un rango amplio de respuestas puede satisfacer aproximadamente
al sistema. Ya que los errores de redondeo pueden inducir cambios pe-
queños en los coeficientes, estos cambios artificiales pueden generar errores
grandes en la solución de sistemas mal condicionados como se ilustra en
elsiguiente ejemplo.

EJEMPLO 7.8
b Ill-Sistemas mal condicionados
Enunciado del problema:resuélvase el siguientesistema:
ELlMlNAClON GAUSSIANA 239

x1 + 2x2 = 10 [E7.8.1]
1 . 1 ~ 1+ 2x2 = 10.4 [E7.8.2]
Después, resuélvase nuevamente, con el coeficiente de x1 de la segunda
ecuaciónmodificadolevemente a 1.05.

Solución: usandolas ecuaciones (7.10) y (7.11), la solución es:


2(10) - 2(10.4)
x1 = =4
l(2) - 2(1.1)
l(10.4) - 1.1(10)
x2 = = 3
l(2) - 2(1.1)
Sin embargo, con el cambio al coeficiente a21 de 1 . 1 a 1.05, el resulta-
do cambia drásticamente a:

2(10) - 2(10.4)
x1 = =8
l(2) - 2(1.05)

l(10.4) - 1.05(10)
x2 = =1
l(2) - 2(1.05)
Nótese que la razón principal de la diferencia entre los dos resultados
es que el denominador representa la diferencia de dos nfimeros casi iguales.
Como se explica previamente enel ejemplo 3.4, estas diferencias sonmuy
sensitivas a pequeñas variacionesen los números que se están manejando.
En este punto, se podría sugerir que la sustitución de los resultados
en las ecuaciones originales alertaría al lector en el problema. Desafortu-
nadamente, este no es el caso en sistemas mal condicionados. La sustitu-
ción de valores erróneos de x1 = 8 y x2 = 1 en las ecuaciones (E7.8.1)
y (€7.8.2) lleva a:

+ 2(1) = 10 = 10
8
1.1(8) + 2(1) = 10.8 = 10.4
Por lo tanto, aunque x1 = 8 y x2 = 1 no son las soluciones reales al pro-
blema original, la prueba de error es casi igual, lo que puede provocar
el error al hacer creer que las soluciones son correctas.

Como se hizo previamente enla sección de métodos gráficos, se puede


desarrollar una representación visual del mal condicionamiento grafican-
do las ecuaciones (E7.8.1)y (E7.8.2) (recuérdese lafigura 7.2). Debido
a que las pendientes de las líneas son casi iguales, visualmente es difícil
de ver exactamente donde se intersectan. Esta dificultad. visual se refleja
240 MÉTODOS NUMÉRICOS PARA INGENIEROS

cuantitativamente en los resultados inciertos del ejemplo 7.8. Esta situa-


ción se puede caracterizar matemáticamente escribiendo las dosecuacio-
nes en su forma general:

Dividiendo la ecuación (7.18)por a12 y la ecuación (7.19) por aZ2y or-


denando términos se obtienen las versiones alternativas del formato de
unalínearecta [x? = (pendiente) x1 + intersección].

a21 c2
x2 = "
x1 + "

a22 a22

Por consiguiente, silas pendientessoncasiiguales, entonces:

-all
=- 021

012 a22

o , multiplicandoencruz:

alla22 = a21a12

que se puede expresar también como:

alla22 - a 1 2 ~ 2 1
= 0 r7.201

Ahora, recordando que a l l a22 - a12a21 es el determinante del sis-


tema bidimensional [Ec. ( 7 . 3 ) ]se , puede obtener la conclusión general
de que un sistema mal condicionado es aquel en que su determinante
se aproxima a cero. En efecto, siel determinante es exactamente igual
a cero, las dos pendientes son idénticas, lo que produce de forma indis-
tinta o ninguna solución o un número infinito de ellas, como enel caso
del sistema singular mostrado enlafigura 7 . 2 1 y b.
Es difícil especificar qué tan cerca debe estar el determinante de cero
de manera que indique mal condicionamiento. Esto se complica por el
hecho de que un determinante puede cambiarsu valor simplemente mul-
tiplicando una o más ecuaciones por un factor escalar sin alterar la solu-
cicin. Por consiguiente, el determinante esun valor relativo que se modifica
conlamagnitudde los coeficientes.
ELlMlNAClONGAUSSIANA 241

EJEMPLO 7.9
Efecto de escalamiento en el determinante

Enunciadodelproblema:evalúeseeldeterminantedelossistemas Si-
guientes:

a) Del ejemplo 7.1:

3x1 + 2x2 = 18 [E7.9.1]


-x1 + 2x2 = 2 [E7.9.2]
b) Del ejemplo 7.8:
x1+ 2x2 = 10 [E7.9.3]
1.lxl + 2x2 = 10.4 [E7.9.4]
c) Repítase b) multiplicandolas ecuaciones por 10.

Solución:
a) El determinante de las ecuaciones (E7.9.1) y (E7.9.2) que es un sis-
tema bien condicionado, es:

D = 3(2) - 2(-1) = 8

b) El determinante de las ecuaciones (E7.9.3)y (E7.9.4),que es un sis-


tema mal condicionado, es:

D = l(2) - 2(1.1) = -0.2

c) Los resultados de a) y de b) parecen corroborar el argumento de que


los sistemas mal condicionados tienen determinantescercanos a cero.
Sin embargo, supóngase que el sistema mal condicionado b) se multi-
plicapor 10, para obtener:

10x1 + 20x2 = 100


11x1 + 20x2 = 104
La multiplicación de una ecuación por una constante no tiene efecto en
la solución. Además, aún está mal condicionado. Esto se puede verificar
multiplicando por una constante que no tenga efecto en la solución gráfi-
ca. Sin embargo, el determinanteresulta muy afectado.

D = lO(20) - 20(11) = -20

1 No sólo se han elevado dos órdenes de magnitud, sino que el determi-


nante es el doble del sistema bien condicionado a ) .
242 INGENIEROS
MÉTODOS NUMÉRICOS PARA

Como se ilustra en el ejemplo anterior, la magnitud de los coeficien-


tes interpone un efecto de escalamiento que complica la relación entre
la condición del sistema y el tamaño del determinante. Una manera de
evitar parcialmente esta dificultad es la de escalar las ecuaciones de for-
ma tal que el elemento máximo de cualquier renglón sea 1.

EJEMPLO 7.1 O
Escalamiento

Enunciado del problema: escálenselos sistemas de ecuaciones del ejem-


plo 7.9 a un valor máximo de 1y calcúlense de nuevo sus determinantes.

Solución:
a) En el sistema bien condicionado, el escalamiento genera
XI + 0.667~2= 6
-0.5x1 + x2 = 1

cuyo determinante es:


l(1) - 0.667(-0.5) = 1.333

b) En el sistema mal condicionado, el escalamiento genera:


0.5X1+ X2 = 5
0.55~1+ X:, = 5.2
cuyo determinante es:

0.5(1) - l(0.55) = -0.05


c ) En el último caso, e! escalamiento modifica el sistema de la misma
forma que b ) . Por lo tanto, el determinante también es 0.05, y el es-
calamiento no afecta.

En la sección anterior (sección 7.1.2),se dijo que el determinante es


difícil d e evaluar para más de tres ecuaciones simultáneas. Por lo tanto,
parece ser que noexiste una manera práctica de determinar la condición
de un sistema. Sin embargo, como se muestra en el recuadro 7.1, existe
un algoritmo simple que resulta de la eliminación gaussiana y que se puede
usar en la evaluación del determinante.
Además del planteamiento usado en el ejemplo anterior para calcu-
lar la condición de un sistema, existen otras formas de hacerlo. Por ejem-
plo, existen métodos alternativos para la normalización de elementos ( d a s e
ELlMlNAClON GAUSSIANA 143

Stark, 1970).Además, como se ve en el capítulo siguiente (sección 8.2.2),


la matriz inversa puede usarse en la evaluación de la condición de un sis-
tema. Finalmente, unapruebasimple (pero que consume mucho tiem-
po) consisteenmodificar un poco los coeficientes y repetirlasolución.
Si estas modificaciones generan resultados drásticamente diferentes, el sis-
temaprobablementeestámalcondicionado.
Como se puede deducir del análisis anterior, definitivamente no exis-
te un método simple para evaluar el mal condicionamiento. En la elimi-

RECUADRO 7.1 Evaluación de determinantesusando la eliminacion gaussiana

En la sección 7.1.2, se dijo que la evaluación de los de- D = a11a22m - ado) + a d o ) = a11a~~a33
terminantes por expansión de menores era impráctica
para conjuntos grandes de ecuaciones. De esta forma, Recuérdese que el paso de eliminación progresiva
se concluye que la regla de Cramer sólo es aplicable pa- de la eliminación gaussiana genera un sistema triangu-
ra sistemas pequeños. Sin embargo, como se dijo en la lar superior. Ya que el valor del determinante se puede
sección 7.3.3, el determinante tiene sentido cuando va- evaluar simplemente al final de este paso:
lorala condición de un sistema. Por lo tanto, sería útil
poseer un método práctico para calcular esta cantidad. D = a11a&a&. . . a?;') [B7.1.2]
Afortunadamente, la eliminación gaussiana propor-
ciona una forma simple de hacerlo. El método se basa en donde los superíndices indican que los elementos se
en el hecho de que el determinante de la matriz triangu- han modificado durante el proceso de eliminación. Por
lar se puede calcular simplemente con el producto de lo tanto, se puede aprovechar el esfuerzo que se ha he-
los elementos de su diagonal: cho al reducir el sistema a su forma triangular, y por aña-
didura obtener una aproximación al determinante.
Hay una pequeña modificación en el planteamien-
D = a11a22a33. . . ann [B7.1.1]
to anterior cuando el programa usa pivote0 parcial (sec-
ción 7.4.2). En este caso, el determinante cambia de
La validez de ,esta fórmula se puede ilustrar en sistemas signo cada vez que un renglón se usa como pivotal. Una
de 3 por 3: manera de representar esto es modificando la ecuación
(B7.1.2):

D = alla&?a:3 . . . ak-l)(-l)p [B7.1.3]

en donde p representa el número de veces en que los


en donde el determinante se puede evaluar como [re- renglones se usan como pivotales. Esta modificación se
cuérdese la ecuación (7.4)] puede incorporar de forma simple enun programa: úni-
camente se toma en cuenta el número de pivoteos que
se llevan a cabo durante los c6lculos y después se usa
la ecuación (B7.1.3) pata evaluar el determinante.

o, evaluando por menores (esto es, los determinantes


2 por 2).
244 MÉTODOS NUMÉRICOS PARA INGENIEROS

nacióngaussiana.serecomiendaescalar el determinante como en el


ejemplo 7.10. Afortunadamente, la mayor parte de las ecuaciones alge-
braicas obtenidas de problemasde ingeniería por naturaleza son sistemas
bien condicionados. Además, algunas de las técnicas desarrolladas en la
siguiente sección ayudan a aliviarel problema.

7.4 TÉCNICAS DE MEJORAMIENTOEN


LAS SOLUCIONES
LES sipientzs técnicas se pueden incorporar al algoritmo de la elimina-
c i h gaussiana simple para evitar algunas de las desventajas analizadas
en la secciónprevia.
7.4.1 Uso de más cifras significativas
El remedio más simple para el mal condicionamiento es el de usar más
cifras significativas en los cálculos (compárense los ejemplos 7.5 y 7.7).
Si la computadora tiene la capacidad de extender el tamaño de las cifras
significativas aumentando el tamaño de la palabra, esta característica re-
duce mucho el problema.

7.4.2 Pivoteo
Como se dijo al principio de la sección 7.3, los problemas obvios ocurren
cuando un elemento pivotal es cero, debido al paso de normalización lo cual
origina una división por cero. Estos problemas se obtienen cuando el ele-
mento pivotal es cercano a cero en vez de ser exactamente igual, por lo
que si la magnitud del elemento pivotal es pequeño comparado con los
otros elementos, entonces se introducenerrores de redondeo.
Por lo tanto, antes de normalizar cadarenglón, es ventajoso determi-.
nar el coeficiente mayor disponible.Entonces se pueden intercambiar los
renglones de tal forma que el elemento mayor sea el pivotal. A este mé-
todo se le conoce conelnombre de piuoteo parcial. Si se busca tanto
en las columnas como en los renglones el elemento mayor y se intercam-
bian, entonces el procedimiento es de piuoteo total. El pivoteo total se
usa muy raramente en programas elementales, ya que el intercambio de
columnas cambia el orden de las x y, por consiguiente, aumenta la com-
plejidad de los programas, generalmente,sin justificación. El siguiente ejem-
plo ilustra la ventaja del pivoteo parcial. Además de evitar la división por
cero, el pivoteo también minimiza el error de redondeo. Como tal, sirve
también como remedio parcial almal condicionamiento.

EJEMPLO 7.1 1
Pivoteo parcial
Enunciado del problema: úsese la eliminación gaussiana para resolver:
ELlMlNAClON GAUSSIANA 245

0.000 3x1 + 3.000 0x2 = 2.000 1


1.000 0x1 + 1.000 0x2 = 1.000 o
Nótese que en esta forma el primer elemento pivotal, a l l = 0.000 3 , es
muy cercano a cero. Después repítanse los cálculos con pivote0 parcial
pero invirtiendo el orden de las ecuaciones. La solución exacta es x1 =
1/3 y x2 = 2/3.

Solución: normalizando laprimer ecuación se obtiene:

x1 + 10 000x2 = 6 667

lacual se puede usar para eliminar x1 de la segunda ecuación:

-9 999x2 = -6 666

que se puede resolver para:

x2 = 2/3

Este resultado se puede sustituirenlaprimer ecuación y evaluar xl:

2.000 1 - 3(2/3)
x1 = [E7.11.1]
0.000 3

Sin embargo, el resultado es muy sensitivo al número de cifras significati-


vasincluidasenel cálculo:

Valor absoluto
del error
relativo
Cifras porcentual
significativas x? X1 ¿e x1

3 0.667 -3.33 1 099


4 0.666 7 0.000 1 O0
5 0.666 67 0.300 O0 10
6 0.666 667 0.330 O00 1
7 666
0.666 7 0.333 O00 O o. 1

Nótese que la solución para x1 depende mucho del número de ci-


fras significativas. Esto se debe a que en la ecuación (E7.11.1), se resta-
ron dos números casi iguales (recuérdeseel ejemplo 3.4). Por el otro lado,
si se resuelven las ecuaciones en orden inverso, se normaliza el renglón
con el elemento pivotal mayor. Las ecuaciones son:
246 METODOS
INGENIEROS NUMERICOS PARA

1.000 Ox1 + 1.000 ox* = 1.000 o


0.000 3x1 + 3.000 0x2 = 2.000 1
La normalización y la eliminación produce x2 = 2/3. Para cantidades di-
ferentes de cifras significativas, x1 se puede calcular de la primera ecua-
ción,como:

[E7.11.2]

Este caso es mucho menos sensitivo al número de cifras significativas en


los cálculos:

Valor absoluto
del error
relativo
Cifras porcentual
significativas x2 X1 de x1

0.667 0.333 0.1


0.666 7 0.333.3 0.01
0.666 67 0.333 33 0.001
0.666 667 0.333 333 0.000 1
0.666 666 7 0.333 333
3 0.000 o1

De esta forma, la estrategiapivotalesmuchomássatisfactoria.

Los programas de NUMERICOMP de propósitos generales que acom-


paiían este libro, incluyen a menudo una estrategia pivotal.La figura 7.8
muestra un algoritmoparaimplementarestaestrategia.Esteprograma
se puede integrar al de la figura 7 . 4 para incorporar el pivote0 parcial en
los programas del usuario.

7.4.3 Escalamiento
En la sección 7.3.3 se dedujo que el escalamiento influye en la estandari-
zación del valor del determinante. Más allá de esta aplicación, tiene utili-
dad en la minimización de los errores de redondeo para aquellos casos
en donde alguna de las ecuaciones de un sistema tiene unos elementos
mucho más grandes que otros. Estas situaciones se encuentran frecuen-
temente en la ingeniería cuando se usan ampliamente unidades diferen-
tes en el desarrollo de ecuaciones simultáneas. Porejemplo, en problemas
de circuitos eléctricos, los voltajes desconocidos se pueden expresar en
ELlMlNAClON GAUSSIANA 247

FORTRAN BASIC

31:103 .m = t K = r e p r er seen
eng
lptliadvno t a l
302hj B : AB', 1 A l I .t.. I I ( A l m a c e n a el valor absoluto del pivote actual)
3ü:xj FOR 1 = I + I TLJ N
3ü4<:, I W = ABS I A ( I I., # ) . ICiclo que compara los elementos de las
3 0 5 . > I F P - BF' . =- ü THEN 3ü8U
:üad E c BF' pivotel el contra
columnas
otras
. ...
31171'1
~ I.) = .I
308o biEx r I
-, . -
~C.1'90 I F J.1 -- I, *: ü THLN 3150 pivote(Si el
escogido es el m a y o r ,
entonces regresa al programa
IF ( 6 - B P . G E . O . X O T O 308U .
3 1 1 0 I€ = A l IJ. ..I1
principal)
&=RP
. .
.. -
.I .I= I 313ü A l b ~ d )= 1E
303r) C O N T I N U E 3140 N t k l J (Si no es asl, este ciclo
?O90 I F ( J J - K . E O . O . 0 ) COTO 3 1 5 0 3150 Rtll.lFIN lntercambia los renglones1
O0 3140 J-K,Nl
TE=&< J J . J ) (Regresa al programa principal
fi(JJ,J>-R(K,J) a continuar c o n la eliminacidnl
A f K , J )=TE
3140 CONTINUE
3150 C O N T I N U E
RETURN
END

FIGURA 7.8 Programa en FORTRAN y BASIC para implementar el pivoteo parcial.

unidades que varían desde microvolts hasta kilovolts. Se pueden encon-


trar ejemplos similares en todoslos campos de la ingehiqría. Mientrasca-
da una de las ecuaciones sea consistente, técnicamentd el sistema será
correcto y tendrá solución. Sin embargo, el uso de unidades completa-
mente diferentes puede generar coeficientes de magnitudes que difieran
ampliamente entre sí. Esto puede tener un impacto sobre el error de re-
dondeo ya que afecta al pivoteo, como se puedeverenelsiguiente
ejemplo.

EJEMPLO 7.12
Efectos del escalamiento en el pivoteo y el redondeo

Enunciado del problema:


a ) Resuélvase el siguiente conjunto de ecuaciones usando la eliminación
gaussiana y la estrategia del pivoteo:

2x1 + 100 000x2 = 100 O00


x1 + x2 = 2

b) Repítase la solución anterior después de escalar las ecuaciones de tal


forma que el coeficiente máximo en cada renglón sea 1. En ambos
casos, reténganse sólo tres cifras significativas. Nótese que las respues-
tas correctas son x1 = 1 .O00 02 y x2 = 0.999 98 o, con tres cifras
significativas, x1 = x2 = 1.00.
248 MÉTODOS NUMÉRICOS PARA INGENIEROS

Solución:
a) Sin escalar,, se aplicalaeliminaciónhaciaadelante y se obtiene:

2x1 + 100 000x2 = 100 O00


-50 000x2 = -50 O00
I

quesepuederesolverporsustituciónhacia atrás, para obtener:


x:, = 1.00

x1 = 0.00
Aunque x2 es correcta, x1 tiene un 100% de error debido al redon-
deo.
b ) El escalamientotransformalas ecuaciones originales en:

0.000 02x1 + x2 = 1
x1 + x2 = 2
Por lo tanto, se debe aplicar el pivote0 a los renglones y colocar el
valormayorsobrela diagonal.
IC1 + x:, = 2
0.000 02x1 + x2 = 1
Laeliminaciónhaciaadelante genera:

x1 + x2 = 2
x1 = 1.00
que se puede resolver para:

x1 = x:, = 1
~

~ De esta forma, el escalamientoproduceunarespuesta correcta.

AIigual que enel ejemplo anterior, el escalamiento aquí tiene utilidad


para minimizar los errores de redondeo. Sin embargo, se debe notar que
el escalamiento mismollevaimplícito un error de redondeo. Por ejem-
plo, dada la ecuación:

2x1 + 300 OOOXZ = 1


y usando tres cifras significativas, el escalamiento produce:

0.000 006 67x1 + x2 = 1


ELlMlNAClON GAUSSIANA 249

Por lo que e l escalamiento introduce un error de redondeo en el primer


coeficiente. Por esta razón, algunas veces se sugiere que el escalamiento
sólo se emplee en casos donde realmente sea necesario, esto es, cuando
el sistema involucre coeficientes de magnitudes muy diferentes.

7.4.4 Corrección de errores

En algunos casos, el pivote0 parcial y el escalamiento no son suficientes


para asegurar resultadosprecisos. Por ejemplo, recuérdese el ejemplo 7.7,
que tenía los elementos mayores en la diagonal, pero que debido a los
errores de redondeo,la solución final aún presentaba errores. Estos erro-
res, en general se pueden reducir con el siguiente procedimiento. Consi-
dérese un sistema de ecuaciones lineales de la forma:

[7.21]

anlxl + aax2 + * * + a,,x, = c,


Supóngase que se tiene un vector solución aproximado dado por kl,
kz, . . . , k,,.Estos resultados se sustituyen en la ecuación (7.21), para
dar :

[7.22]

Ahora supóngase que la solución exacta xlr xz, . . . , x , se expresa en


función de 21, 2 2 , . . . , k,, y de los factores de corrección Ax,,
Ax2, . . . , Ax,, en donde

[7.23]

x, = R, + Ax,

-. - . .
" ..
250 NUMERICOS METODOS PARA INGENIEROS

Si estos resultados se sustituyenenla ecuación (7.21) da como conse-


cuencia el siguiente sistema:

Ahoralaecuación (7.22) se puederestarde la ecuación (7.24) para


obtener:

allAxl + a12Ax2 + * * + alnAx,= c1 - El = El

azlAxl + a22Ax2 + * * + az,Ax, = c~ - E2 = €2

[7.25]

anlAxl+ ~ ~ ~ 2 +
6 x* 2 + a,,Ax,, = c, - E, = E,

Este sistema en sí mismo es un conjunto de ecuaciones lineales simultá-


neas que se puede resolver obteniendo con ello los factores de correc-
ción. Estos factores se pueden aplicar para mejorar la solución especificada
porla ecuación (7.23).

EJEMPLO 7.13
Uso de las ecuaciones de error para corregir los de redondeo

Enunciado del problema: recuérdese que en el ejemplo 7.7 se usa la eli-


minación gaussiana con tres cifras significativas para resoher

0.1~1+ 7x2 - 0 . 3 ~ 3= -19.3.

O.3X1 - 0 . 2 ~ 2+ 10x3 71.4


, Debidoalnúmerolimitadodecifrassignificativas,lasolucióndifierede
la verdadera (x1 = 3 , x2 = -2.5, x3 = 7) en:
ELlMlNAClON 25 1

x1 = 3.17 E, 5.7%
x2 = -2.51 E, = 0.4%
x3 = 7.02 E, = 0.29%

Úsense las ecuaciones del error para refinar estas aproximaciones.

Solución: la sustitución de las soluciones en el conjunto original de ecua-


ciones produce el vector de términos independientes:

[elT= [8.36 -19.4 71.71


que no es igual al valor real. Por lo tanto, se puede desarrollar un vector
de error:

Ahora, se puede generar un conjunto de ecuaciones error [Ec. (7.25)]:

3AX1 - 0.1Ax2 - 0.2Axs = -0.51


O.lAx1 + 7AX2 - 0.3Ax3 = 0.1
O.3Ax1 - 0.2A~2+ 1OAx3 = -0.3
que se puede resolver (usando tres cifras significativas de forma tal que
exista consistencia con elproblema original), para obtener:

[AX]' = [-0.1710.015 7 -0.02461

los cuales se pueden usar para corregir las soluciones, dando:

XI = 3.17 - 0.171 = 3.00


x2 = -2.51 + 0.015 7 -2.49
x3 = 7 O2 - 0.024 6 = 7.00

que se aproximanmuchomás a la soluciónverdadera

Ecuaciones del error en los programas. Se pueden integrar las ecua-


ciones del error en los programas de la eliminación gaussiana. En la figu-
ra 7.9 se delinea un algoritmo que realiza esta tarea. Nótese que para
hacer más efectiva la corrección de sistemas altamente mal condiciona-
252 MÉTODOS NUMÉRICOS PARA INGENIEROS

FIGURA 7.9 Algoritmo de eliminacióngaussianaqueincluyecorreccióndeerrores.

dos, las E en la ecuación (7.25)se deben expresar en aritmética de doble


precisión. Esto se hace fácilmente en FORTRAN pero en algunas imple-
mentaciones de BASIC no esposible hacerlo.

7.5 RESUMEN
En resumen, este capítulo se ha dedicado a la eliminación gaussiana, el
método fundamentalen la solución de sistemas deecuaciones algebraicas
lineales. Aunque ésta es una de las técnicas más antiguas desarrolladas
para este propósito, aún es un algoritmo muy efectivo en la obtención de
solucionesdemuchosproblemas de ingeniería.Ademásde suutilidad
práctica, proporciona un contexto enel estudio general de temas tales
como los errores de redondeo, escalamiento y condicionamiento.
Las respuestas que se obtienen mediante el método de eliminación
gaussiana se pueden verificar sustituyéndolas en las ecuaciones origina-
les. Sin embargo, esto no siempre representa una prueba confiable si el
sistema está mal condicionado. Por lo tanto, si se sospecha de un error
de redondeo, entonces se debe calcular alguna medida de la condición
tal como e l determinante del sistemaescalado. Dos opciones que amino-
ran los errores de redondeo son el uso del pivote0 parcial y eluso de
ELlMlNAClON GAUSSIANA 253

más cifras significativas en los cálculos. Si el problema parece ser sustan-


cial, la corrección de errores (sección 7.4.4) se puede usar algunas veces
para mejorar la solución.
Existen otros planteamientos y variaciones de la eliminación gaussia-
na para satisfacer las necesidades particulares. Por ejemplo, como se ex-
plica en el recuadro 7.2, se puede formular una versión muy eficiente
de la eliminación gaussiana para sistemas tridiagonales. El capítulo 8 se
encarga de mostrar dos métodos diferentes,el de Gauss-Jordan y Gauss-
Seidei.

RECUADRO 7.2 Sistemas de banda: el caso tridiagonal

Una matriz banda es una matriz cuadrada que tiene todos soluciones en diferencias finitas de ecuaciones diferencia-
sus elementos iguales a cero, con excepción de una ban- les parciales. Además hay otros métodos numéricos tales
da centrada sobre la diagonalprincipal (recuérdese Ill. 1). como la interpolación cúbica segmentaria (sección 11.4)
En el caso en que el ancho de banda es 3, a lamatriz se que requieren la solución de sistemas tridiagonales.
le conoce con un nombre especial: matriz tridiagonal. Los Un sistematridiagonal es aquél en el que los coefi-
sistemas tridiagonales se encuentran frecuentemente en cientes están ordenados enforma tridiagonal, como en:
la ciencia y en la ingeniería. Por lo general resultan de las

d3X2 + e3x3 + f3x4

Nótese que se ha cambiado la notación de los coeficien- sistema, la implementación del algoritmo de la eliminación
tes del sistema tridiagonal de las a y las c a las d, e , f y gaussiana se puede simplificar mucho y las soluciones se
g. Esto se hizo para evitar el almacenamiento de cantida- obtienen deuna manera muy eficiente. Para el sistema
des grandes de ceros en la matriz de a. Esta modificación tridiagonal los pasos de eliminación progresivase simplifi-
que ahorra espacio, es muy ventajosa ya que el algoritmo can ya que la mayor parte de sus elementos son cero. En
resultante requiere menos espacio en memoria. seguida las incógnitas restantes se evalúan por sustitución
Como era de esperarse, los sistemas bandados sepue- hacia atrás. El algoritmo completo se expresa de forma
den resolver con una técnica similar a la eliminación gaus- concisa en los programas siguientes:
siana. Sin embargo, debido a la estructuraúnicadel

FORTRAN c

I "IO

I"-"
254 MÉTODOS NUMÉRICOS PARA INGENIEROS

PROBLEMAS
Cálculos a mano

7.1 Escríbase el siguiente conjunto de ecuaciones ennotaciónmatricial:

Escríbase la transpuesta de la matriz.

7.2 Algunas
matrices se definen como:

[Al = [ 1 5 6
2 131
4 0 5
[Bl = [ ;;;]
4 3 1
[Cl = [a]
5 4 3 6

[GI = [ 8 6 41

Respóndase a lassiguientespreguntasde acuerdo a las matrices anteriores:


o) ¿Cuáles sonlas dimensiones de lasmatrices?
b) Identifíquenselasmatrices cuadradas, columna y renglón.
c) Cuáles son los valores de los elementos:

012 b23 d32 e22 112 912

d) Efectúense lassiguientes operaciones

7.3 Se definen
tres
matrices como:

a) Efectúense todas lasmultiplicacionesposibles que se pueden llevar a cabo


eptre parejas de estas matrices.
b) Usese el método del recuadro 111.2 para justificar por qué las parejas restan-
tes no se pueden multiplicar
ELlMlNAClON GAUSSIANA 255

c) Úsense los resultados de a) e ilústresepor qué es importanteelorden de


lasmultiplicaciones.

7.4 Úsese el método gráfico para resolver:

4x1 - 6x2 = "22

-xl + 12x2 = 58

verifíquense los resultados sustituyéndolos en las ecuaciones originales

7.5 Dado el sistema de ecuaciones:

o.75X1 + xp = 14.25
1 . 1 +
~ ~
1 . 6 ~
= ~22.1

a) Resuélvase gráficamente.
b) En base a la solución grAfica, 'quése espera acerca de la condición del sistema?
c) Resuélvase por eliminación de incógnitas.
d ) Verifíquense las respuestas sustituyéndolasen las ecuaciones originales.

7.6 Para el conjunto de ecuaciones:

a) Calcúlese su determinante.
b) Usese la regla de Cramer y resuélvase para las x.
c) Sustitúyanse los resultados en la ecuación original y compruébense los mismos.

7.7 Dadas las ecuaciones:

-
0.5~1 x2 = -9.5

0 . 2 8 ~ 1- 0 . 5 ~ 2= -4.72

a) Resuélvanse gráficamente.
b) Después de escalarse, calcúlese su determinante.
c) En base a a) y b) ¿qué se puede esperar de la condicióndelsistema?
d ) Resuélvanse poreliminación de incógnitas.
e ) Resuélvanse otra vez, pero modificando all a 0.55. Interprétense los resul-
tados de acuerdo al análisis de mal condicionamiento de la sección 7.1.1.

7.8 Dado el sistema

"12x1 + x2 - 7x3 = -80

x1 - 6x2 + 4x3 = 13

-2x1 - x2 + = 92
256 MÉTODOS NUMÉRICOS PARA INGENIEROS

a) Resuélvase con el uso de la eliminación gaussiana simple. Muéstrense todos


los pasos de los cálculos.
b) Sustitúyanse los resultados enlas ecuaciones originales y compruébense las
respuestas

7.9 úsese la eliminación gaussiana para resolver:

4x, + 5x2 - 6x,{ = 28

ZX, - 7x3 = 29
- 5 ~ 1 - 8x2 = -64

Empléese el pivoteo parcial y compruébense las respuestas sustituyéndolas en las


ecuaciones originales.

7.10 Úsese la eliminación gaussiana para resolver:

3x2 - 13~,$= -50

Zx, - 6x2 + x:( = 44

4x, + 8x,: = 4

Empléese el pivoteo parcial. Compruébense las respuestas sustituyéndolas en las


ecuaciones originales.

7.11 Repítase el ejemplo 7.6 con el coeficiente de rozamiento al doble.

7.12 Resuélvase el siguientesistematridiagonal:

5x, + 4x2 = 25

4x, - 3x, + 7x,3 = 3


x2 - +
6x3 4x4 = 17

12x,, + 2x, = 36

7.13 Efectúense los mismos cálculos del ejemplo 7.6, pero usando cinco paracaidistas
conlassiguientes características:

Paracaidista Masa, kg Coeficientes de rozamiento, kgls

1 60 15
2 80 14
3 75 18
4 75 12
5 90 10

Los paracaidistas tienen unavelocidad de 10 m / s


ELlMlNAClON GAUSSIANA 257

Problemas para resolver con una computadora

7.14 Escríbase un programa general para multiplicar dos matrices, esto es, [X] = [y][ Z l
donde [X]es m por n y [ Z l es n por p. Pruébese elprogramausando

7.15 Escríbase un programa que genere la transpuestadeunamatriz. Pruébese con

7.16 Reprográmese la figura 7 . 4 de tal forma que sea más legible al usuario. Entre otras
cosas:

a) Intégrese lafigura 7 . 8 al programa de tal forma que éste realice pivote0


parcial.
b) Documéntese el programa para identificar cada sección.
c) Etiquétese la entrada y la salida.
d) Escálense las ecuaciones de talforma que el coeficiente mayor en cada
renglón sea 1. Calcúlese el determinante como una medidadela condi-
cióndelsistema (opcional).

7.17 Pruébese el programa desarrollado en el problema 7.16 duplicando los cálculos


del ejemplo 7 . 5 y 7 . 6 .

7-18 Úsese el programa desarrollado en el problema 7 . 1 6 y repítanse los problemas


7 . 8 al 7.11.

7.19 Repítanse los problemas 7 . 1 7 y 7 . 1 8 usando los programas de NUMERICOMP


disponibles con el texto. Usese también NUMERICOMP para realizar una prueba
de error para cada problema.

7.20 Desarróllese un programa para sistemas tridiagonales legibles al usuario y basán-


dose en el recuadro 7.2.

7.21 Pruébese el programa desarrollado en el problema 7 . 2 0 resolviendo el problema


7.12.

7.22 Resuélvase el problema 7.13 usando los programas desarrollados en el problema


7.16.
CAPíTULO OCHO

GAUSS-JORDAN,
INVERSIóN DE
MATRICES Y
GAUSS-SEIDEL

En estecapítulo se describendosmétodosadicionalespararesolver
ecuaciones lineales simultáneas.El primero de ellos, el método de Gauss-
Jordan es muy similar al de la eliminación gaussiana. El motivo principal
para introducir estatécnica, estriba en que proporcionauna forma simple
y conveniente de calcular la inversa de una matriz. La inversa tiene un
gran númerodeaplicaciones enla ingeniería.Estemétodotambién
proporciona los medios para evaluar la condición de un sistema.
El segundo de ellos, el método de Gauss-Seidel es fundamentalmente
diferente al deeliminacióngaussiana y al de Gauss-Jordan porque es
un método de aproximaciones iteratiuas.Esto es, emplea un valor inicial
y mediante iteraciones obtieneuna aproximación más exacta a la solución.
El método de Gauss-Seidel se adapta, en particular a grandes sistemas
de ecuaciones. En estos casos, los métodosdeeliminaciónestán su-
jetos a los errores de redondeo. Ya que elerrorenelmétodo de
Gauss-Seidel se puede controlar mediante el número de iteraciones, los
errores de redondeo no tienen quever con esta técnica. Sin embargo hay
ciertos casos en que el método de Gauss-Seidel no converge a la respuesta
correcta. Se discutenenlassiguientespáginasestos y otros elementos
de juicio para escoger entre la eliminación y los metodos iterativos.

8.1 MÉTODO DE GAUSS-JORDAN


El método de Gauss-Jordan es una variación de la eliminación gaussiana.
La principal diferencia consiste en que el método de Gauss-Jordan cuando
se elimina una incógnita no sólo se elimina de las ecuaciones siguientes
sino de todas las otras ecuaciones. De esta forma, el paso de eliminación
genera una matrizidentidadenvezde una matriz triangular (Fig. 8.1).
Por consiguiente, no es necesario emplear la sustitución hacia atrás para
obtener la solución. El método se ilustra mejorcon un ejemplo.
260 MÉTODOS NUMÉRICOS PARA INGENIEROS

FIGURA 8.1 Esquema gráfico delmétodo de Gauss-Jordan. Compárese con la figura


7.3 y nótese la diferencia entreeste método y el de eliminación gaussiana.
LOS asteriscosindicanqueelvector de términosindependientes se ha
modificado varias veces.

EJEMPLO 8.1
Método de Gauss-Jordan

Enunciado del problema: úsese el método de Gauss-Jordan para resol-


ver el mismo sistema del ejemplo 7.5:

3x1 - 0.1~2- 0 . 2 ~ 3= 7.85


0.1~1+ 7x2 - 0 . 3 ~ 3
= -19.3
0 . 3 ~ 1- 0.2~2+ 10x3 = 71.4

Soluci6n: en primer lugar, se expresan los coeficientes y el vector de tér-


minos independientes como una matriz aumentada:

3 -0.1 -0.2
[os 7 -0.3 -19.3
0.3 -0.2 10 71.4

En seguida se normaliza el primer renglón dividiéndolo por el pivote 3,


para obtener:
INVERSldN
GAUSS-JORDAN, DE MATRICES Y GAUSS-SEIDEL 26 1

1 -0.033 333 3 -0.066 666 7 I


0.1 7
10 0.3 -0.2
-0.3 I
I

I
El término x1 se puedeeliminardelsegundorengónrestando
2.616 67
-19.3
71.4 1
0.1 ve-
ces el primerodelsegundorenglón. Deuna manerasimilar,restando
0.3 veces el primero del tercer renglón se elimina el término con x1 del
tercer renglón:

[
1 -0.033 333 3 -0.066 666 7
O 7.003
-0.293
33
O -0.190 O00
333
10.020 O
I
~
2.616 67
I -19.561 7
70.615 O 1
En seguida, se normaliza el segundo renglón dividiendolo entre 7.003 33:

1 -0.033 333 3 -0.066 666 7

[Oo "0.190 O00


Reduciendolostérminos
obtiene:
-0.041 884 8 1
10.020 o
~

~
2.61667
"2.793 20
70.615 O 1
en x2 de laprimera y la tercera ecuación se

1 O -0.068 062 9 I 2.523 5 6 1


O 1 -0.041 884 8 ~ -2.793 20
o o 10.012 o I 70.084 3
El tercerrenglón se normalizadividiéndoloentre 10.012 O:

1 O -0.068 062 91 2.523 56


O 1 -0.041 884 81 -2.793
O 0 1
Finalmente, los términos con x3 se puedenreducirdelaprimera y se-
gunda zcuación para obtener:
1 o o

1
~
3.000 O0
O 1 O I 2.500 O 1
O O 1 ~
7.000 03
De esta forma, como se muestra en la figura 8.1: la matriz de coeficientes
se ha transformadoenlamatrizidentidad y la solución se ha obtenido
en el vector de términos independientes. Nótese que nose necesita susti-
tuciónhaciaatrásparaobtenerlasolución.
262 MÉTODOS NUMÉRICOS PARA INGENIEROS

Todo el materialdelcapítulo 7 relacionadocon las ventajas y


desventajas de la eliminación gaussiana se aplican también al método de
Gauss-Jordan. Por ejemplo, se puedeusar una estrategia similar al pivoteo
para evitar divisiones por cero y reducir el error de redondeo.
Aunque los métodos de Gauss-Jordan y de eliminación gaussiana
pueden parecer casi idénticos, el primero requiere aproximadamente de
50 % menos operaciones. Por lo tanto, la eliminación gaussiana es el
método simple por excelenciaen la obtención de soluciones exactas a las
ecuaciones lineales simultáneas. Una de las principales razones para incluir
en este capítulo el método de Gauss-Jordan, es la de proporcionar un
método directo de obtener la matriz inversa, tal como se describe en la
sección 8.2

8.1.1 Algoritmo del método de Gauss-Jordan

Enla figura 8.2 se muestra un algoritmo del método de Gauss-Jordan


sin pivote0 parcial. Un esquema con pivoteomuy parecido al que muestra
e n la figura 7.10 se puede incorporar a este algoritmo.

8.2 INVERSIóN DE MATRICES


Enla introduccióna las operacionesconmatrices(sección 111.2.2) se
menciona que si una matriz es cuadrada, entonces existe otra matriz,
[A]- I , llamada la matriz inversa de [ A ] ,para el cual [Ec. (111.3)]:

[A] [A]" = [A]" [A] = [I]

También se demuestra que la inversa se puede usar para resolver un


conjunto de ecuaciones simultáneas, si se toma [Ec. (111.6)J:
[XI= [Al" [CI @.11
La aplicación de la inversa ocurre cuando es necesario resolver varios
sistemas de ecuaciones de la forma:

que difieren únicamente en el vector de términos independientes [ C ] .En


vez de resolver cada sistema por separado, unaalternativa diferente consiste
en determinar la inversa de la matriz de coeficientes. Entonces, se puede
usar la ecuación (8.1)para obtener las soluciones, simplemente multi-
plicando la matriz [A] por el vector de términos independientes corres-
pondiente [ C ] .Ya que la multiplicación matricial es mucho más rápida
que la inversión, el consumo de tiempo se lleva a cabo sólo una vez y
después se obtienen las soluciones adicionales de una manera eficiente.
También, como se menciona en la sección 8.2.1, los elementos de la
inversa son extremadamente útiles en sí mismos.
FIIGUI 1.2 Di( irama
dle flu¡ ?Imeí'O(d 0 de
G'auss .dan, SIin pi-
V(,te0 cial.
264 MÉTODOS NUMÉRICOS PARA INGENIEROS

FIGURA 8.3 Esquema gráfico del métodode Gauss-Jordan, con inversiónde matrices.

Con el método de Gauss-Jordan se puede calcular directamente la


inversa. Para hacerlo, la matriz de coeficientes se aumenta con una ma-
triz identidad (Fig. 8.3).Posteriormente se aplicael método de Gauss-
Jordan para reducirla matriz de coeficientes a la matriz identidad. Cuando
se completa esta tarea, el lado derecho de la matriz aumentada contiene
lamatriz inversa.Esta técnica seilustraenel ejemplo siguiente.

EJEMPLO 8.2
El uso del método de Gauss-Jordan en el cálculo de la matriz inversa
Enunciado del problema: determínese la matriz inversa del sistema resuelto
en el ejemplo 7.5. Obténgase la solución multiplicando [ A ]-1Por el vec-
tor de términosindependientes: [CIT = [ 7.85 -19.3 71.4 1. Además,
obténgase la solución para un vector de términos independientes diferente:
[CIT = [20 50 151.

Solución: auméntese la matriz de coeficientes con una matriz identidad:

3 -0.1 -0.2 I 1 o o
-0.3 I O 1 O]
0.3 -0.2 10 j O O 1

Usando all como pivote, el renglón 1 se normaliza y se usa para elimi-


nar a x1 de los otros renglones

1 -0.033 333 3 -0.066 666 7 I 0.333 333


O 7.003 33 -0.293 333 1-0.033 333 3
o -0.190 O00 10.020 o ~ -0.099
999
9 o 1
GAUSS-JORDAN,
MATRICES
INVERSldN DE Y GAUSS-SEIDEL 265

En seguida, se usa aZ2como pivote y xp se elimina de los otros renglones

1 O -0.068057 , 0.333
175
0.004
739
329 0
O 1 -0.041706 1 -0.004739330.142 180
I
~

o o 10.012 1 -0.100
0.027
90 014
2 O11

Finalmente, se usa a33como pivote y x3 se elimina de los renglones res-


tantes:

I
1 O O
O 1 O
0 0 1
I
I
0.332
489
0.004
922
97
0.006
-0.005 1640.142
4
798
13
293
"0.010 077 9 0.002 698160.099
0.004
183 46
880 1 1
Por lo tanto, lainversa es:

0.332 489 0.004 922 97 0.006 798 13


-0.005 164 4 0.142 293 0.004 183 46
"0.010 077 9 0.002 698 16 0.099 880 1

Ahora, la inversa se multiplica por el primer vector de términos indepen-


dientes, obteniendo la solución:

x1 = 7.85 (0.332 489) - 19.3(0.004 922 97) + 71.4(0.006 798 13)


= 3.000 411 81
x2 = 7.85(-0.005 164 4) - 19.3(0.142 293) + 71.4(0.004 183 46)
- 2.488 096 40

x3 = 7.85(-0.010 077 9) - 19.3(0.002 698 16) + 71.4(0.099 880 1)


= 7.000 25314
La segunda solución, simplemente se obtiene realizando otras multiplica-
ciones, como:

x1 = 20(0.332489) + 50(0.00492297) + 15(0.006 798 13)


= 6.997 900 45
x2 = í!O(-0.005 164 4) + 50(0.142 293) + 15(0.004 183 46)
= 7.074 113 9

X3 = 20(-0.010 O77 9) + 50(0.002 698 16) + 15(0.099880 1)


= 1.431 55150
266 MÉTODOS NUMÉRICOS PARA INGENIEROS

8.2.1 Cálculos estírnulo-respuesta

Como sedijo enla sección III.1.2, muchos de los sistemaslinealesde


ecuaciones usados en ingeniería se derivan de las leyes de conservación.
La expresión matemática de estas leyes es un tipo de ecuaciónes de ba-
lance que asegura que se conserve una propiedad en particular; masa,
fuerza, calor, momento u otras. En el equilibrio de fuerzas de una estruc-
tura, las propiedades pueden tener componentes horizontales y vertica-
les de las fuerzas que actúan sobre cada nodo de la estructura (véase el
caso de estudio 9.3). Para un balance de masas, las propiedades pueden
ser la masa en cada reactor de un proceso químico. Existen ejemplos si-
milaresen otros campos de la ingeniería.
Se puede escribir una ecuación simple de balance para cada una de
las partes del sistema, generando un conjunto de ecuaciones que definen
el comportamiento del sistema completo. Estas ecuaciones se interrela-
cionan o se acoplandemaneraque cada ecuaciónincluyeuna o más
de las variables de las otras ecuaciones. En muchas ocasiones, los siste-
masson lineales, y por lo tanto, dela forma exacta que se ha tratado
en estecapítulo:

Ahora, en ecuaciones de balance, los términos de la ecuación (8.2)


tienen interpretación física definida. Por ejemplo, los elementos- de [X]
representan los valores de las variables que se están equilibrando para
cada unadelaspartesdel sistema. Enelequilibrio de fuerzas de la es-
tructura, representan las fuerzas verticales y horizontales de cada miem-
bro. En el balance de masas, son las masas de sustancia química en cada
uno de los reactores. En cualquier caso, representan las respuestas o es-
tados del sistema que está tratando de determinar.
El vector [ C ]de términos independientes contiene aquellos elemen-
tos del balance que son independientes del comportamiento delsistema,
esto es, son constantes. Como tales, representan las fuerzas externas o
los estímulosquemanejan al sistema.
Finalmente, la matriz [ A ] de coeficientes contiene, en general los pa-
rámetros que expresancomo interactúa el sistema o su acoplamiento. Por
consiguiente, la ecuación (8.2) se puedereexpresar como:

[Iteraciones] [respuestas] = [estímulos]

Ahora, como se ha visto en este capítulo, existen muchas formas de re-


solver la ecuación (8.2).Sin embargo, elusodelamatrizinversalleva
a un resultado particularmente interesante. La solución formal [Ec. (8.1)]
se puede expresar como:
INVERS16N
GAUSS-JORDAN, Y GAUSS-SEIDEL 267

o (recordandola definición de multiplicaci6n matricial del recuadro


111.2):

De esta forma, se ha encontrado que la matriz invertida misma, además


de proporcionar una solución, tiene propiedades muy útiles. Esto es, ca-
da uno de sus elementos representa la respuesta de una parte simple del
sistema a un estímulounitarioencualquierpartedelmismo.
Nótese que estas formulaciones son lineales y , por lo tanto, se cum-
plela superposición y la proporcionalidad. La superposición indica que
si un sistema está sujeto a varios estímulos diferentes (las c) , las respues-
tas se pueden calcular individualmentey sumarse los resultados para ob-
tener la respuesta total. La proporcionalidad indica que si se multiplica
el estímulo por una cantidad genera una respuesta respecto al estímulo
multiplicadaporlamisma cantidad.Deesta forma, el coeficiente all'
es una constante deproporcionalidadqueproporcionaelvalorde x1
debido al nivel un'ttario cl. Este resultado es independiente de los efectos
de c2 y c3 sobre xl, los cuales se reflejan sobre a A 1 2y a A 1 3respectiva-
mente. Por lo tanto, se puede llegar a la conclusión general de que el
elemento a -llj de la matriz invertida representa el valor de x1 debido a la
cantidad unitaria de cj. Usando el ejemplo de la estructura, el elemento
a A gde la matriz inversa representa la fuerza en el miembro i debido a una
fuerza externa individual en el nodo. j. Aun para sistemas pequeños, los
comportamientos de las interacciones estímulo respuesta individuales no
son obvios. Por lo que, la matriz inversa proporciona una técnica potente
para comprender las interrelaciones de partes componentes de sistemas
complicados. Esta potencia se demuestra enel caso deestudio 9.3.

8.2.2 La inversa y el malcondicionamiento

Además de sus aplicaciones a la ingeniería, la inversa también suministra


una manera de discernir cuando los sistemas están mal condicionados.
Existentresmétodosparaestepropósito:

1. Escalar lamatriz decoeficientes [ A ] ,detalformaqueel elemento


-'
mayor en cada renglón sea 1. Si los elementos de [ A ] son varias
órdenes de magnitud más grandes que los elementos de lamatriz
original, entonces probablementeéstaesté mal condicionada.
2. Multiplicarlainversaporlamatrizde coeficientes original y estimar
si el resultado se encuentra cerca de la matriz identidad. Si no lo es-
tá, entonces haymal condicionamiento.
268 MÉTODOS NUMÉRICOS PARA INGENIEROS

3. Invertirlamatrizinvertida y estimar siel resultado está lo suficiente-


mente cerca de la matriz original. Si no lo está, nuevamente el siste-
ma está mal condicionado.

8.2.3 Algoritmo para la inversión matricial

El algoritmo de la figura 8 . 2 se puede modificar para calcularla matriz in-


versa.Estoimplica,aumentar lamatriz de coeficientesconuna matriz
identidad al principio del programa. Además, alguno de los indices que
manejan un ciclo se debe aumentar al doble para que los cálculos se Ile-
ven a cabo en todas las columnas de la matriz de coeficientes aumentada.
Si se incorpora el pivote0 parcial en el algoritmo de Gauss-Jordan,
entonces se requieren algunas modificaciones adicionales. Esto se debe
a que cada vez que un renglón de lamatrizusa un pivote, lacolumnd
de lamatriz inversa se debe ajustar de forma similar.
La figura 8.4 ilustra este fenómeno. Por ejemplo si el renglón 3 se usa
como pivote o se mueve a la posiciónentre los renglones 1 y 2 , se
modifica también el “significado” o “interpretación” del renglón2 de la matriz
invertida. En vez de indicar el efecto de un cambio unitariode c2 sobre las
x , se debe indicar el efecto de un cambio unitario de c3 sobre las x.
Además de las características anteriores, el programa debe diseñarse
para que calcule las soluciones de un gran número de vectores de térmi-
nos independientes, como se menciona al principio de la sección8:2. Esto
se puede llevar a cabo, simplemente colocando un ciclo después de cal-
cular la matriz inversa. Este ciclo puede llevar a usar un vector de térmi-
nos independientes, puede entoncesmultiplicarse por la matriz [A] pa- -’
ra obtener la solución. El procedimiento se continúa hasta que el usuario
indique que no requiere más soluciones.

FIGURA 8.4 Esquema gráfico del cambio que se produce en los elementos de la matriz
inversa resultante al mover un renglón de la matriz de coeficientes.

8.3 MÉTODO DE GAUSS-SEIDEL


Los métodos de eliminación directa analizados en las secciones previas
se pueden usar para resolver aproximadamente de 25 a 50 ecuaciones
lineales simultáneas. Esta cantidada veces se puede aumentar si el siste-
INVERS16N
GAUSS-JORDAN, DE MATRICES Y GAUSS-SEIDEL 269

ma está bien condicionado, si se emplea la estrategia pivotal, si se usan


las ecuaciones del error o silamatriz es disprsa. Sin embargo, debido
a loserroresde redondeo, losmétodos de eliminaciónalgunas veces
son inadecuados para sistemas muy grandes. En este tipo de problemas,
sepuedenusarlos métodos iterativos o deaproximaciónconalguna
ventaja.
En el capítulo 5 se usan tipos similares de técnicas para obtener raíces
de una ecuacion. Aquellos planteamientos consistenen el uso de un va-
lorinicial a partirdel cual, medianteuna técnica sistemática se obtiene
una mejor aproximación a laraíz.Debido a que en esta parte del texto
se enfrenta un problema similar "la obtención de valores para satisfacer
simultáneamente un conjunto de ecuaciones- se espera que puedan ser
útiles tales métodos de aproximación dentro de este contexto.
La razónporlacuallos métodos iterativos son útiles en la disminu-
ción de los errores de redondeo en sistemas, se debe a que un método
de aproximación se puede continuar hasta que converja dentro de algu-
na tolerancia de error previamenteespecificada. De esta forma, el redon-
deo no es un problema, ya que se controla elniveldeerror aceptable.
El método de Gauss -Seidel es el método iterativo más usado.Supón-
gaseque se hadado un conjuntode n ecuaciones:

si los elementos de la diagonal son diferentes de cero, la primera ecuación


se puede resolver para x l , la segunda para x2,etcétera, lo que lleva a:

[8.3a]

[8.3b]

[8.3c]

cn - anlxl - an2x2 - * - an,n-&-1


X" = [8.3d]
ann

Ahora, se puede empezar el proceso de solución usando un valor ini-


cialparalas x . La solución trivial puedeservirdevalor inicial, esto es,
todas las x valen cero. Estos ceros se puedensustituir en la ecuación (8.3a),
que se puede usarparacalcular un nuevovalorde x1 = c1 / a l l . Lue-,
g o , se sustituye el nuevo valor de x l , con x3,...,x,, aunen cero, enla
ecuación (8.3b) con la cual se calcula un nuevo valor de x2. Este proce-
so se repite en cada una de las ecuaciones hasta llegara la ecuación (8.3d)
270 MÉTODOS NUMÉRICOS PARA INGENIEROS

la cual calcula un nuevo valor de x,. En seguida se regresa a la primera


ecuación y se repite todo el proceso hasta que la solución converja bas-
tante cerca de los valores reales. La convergencia se puedeverificar usando
el criterio [recuérdese la ecuación (3.5)]:

E . =
a,1 1 I
-
x{
.

'1 100% < Es ~8.41

para toda i en donde j y j - 1 denotan la iteración actual y la anterior.

EJEMPLO 8.3
Método de Gauss-Seidel

Enunciado del problema: úsese el método de Gauss-Seidel y resuélvase


el sistema del ejemplo 7.5 y 8.1:

3x1 - 0.1~2- 0 . 2 ~ =
3 7.85
0 . 1 ~ 1+ 7x2 - O.3X3 = -19.3
+ 10x3 = 71.4
0.3~1- 0 . 2 ~ 2

Recuerdese que la solución real es x1 = 3, x2 = -2.5 y x? = 7.

Solución: en primer lugar. se despejan cada una de las variables sobre


la diagonal:

x1 =
7.85 + 0 . 1 ~ 2+ 0 . 2 ~ 3 [E8.3.1]
3

x2 =
+
-19.3 - 0 . 1 ~ 1
[E8.3.2]
7
71.4 - 0.3~1+ 0 . 2 ~ 2
x3 = [E8.3.3]
10
Suponiendo que x2 y x3 son cero, la ecuación (E8.3.1) puede usarse
para calcular:
7.85
x1 = -= 2.616 666 667
3
Este valor,juntocon el de = O, puede sustituirse en la ecuación
(E8.3.2) obteniendo:

x2 =
-19.3 - 0.1(2.616 666 667) + O ="2,794 523 810
7
INVERSIóN
GAUSS-JORDAN,
MATRICES DE Y GAUSS-SEIDEL 271

La primera iteración se completa sustituyendo los valores de xI y x2 cal-


culadosenla ecuación (E8.3.3), obteniendo:

71.4- 0.3(2.616 666 + 667)


0.2("2.794 523
810)
x3 =
10
= 7.005 609 524
Enla segunda iteración, se repiteelmismo proceso obteniendo:

x1 =
7.85+ 0.1(-2.794 523 +810)
0.2(7.005 609 524)
3
= 2.990 556 508)
l e u ( = 0.31%

-19.3 - O.l(Z.990 556 +508)


0.3(7.005 609 524)
x2 =
7
= -2.499 E " I = 0.015%
624 ( 684

x3 =
71.4- 0.3(2.990 556 + 508)
0.2(-2.499 624 684)
10
= 7.000 290 l ~ 81
v =
l 0.004 2%

El método, por lo tanto, converge a la solución real. Para mejorar las so-
luciones se deben aplicar algunas iteraciones mds. Sin embargo, en este
problema, no se debería saber la respuesta a priori. Por consiguiente, la
ecuación (8.4) proporciona un medioparaestimarelerror:

2.990 556 -508


2.616 666 667
€0, I = 100 = 12.5%
2.990 556 508
-2.499 (-2.794 523
624 -684 810)
%,2 =
-2.499 624 684 100 = 11.8%

=
I 7.000 290 -811
7.005 609 I 524
= 0.076%
I
6.
-u, J
I
I)

7.000
290
811 *""

Nótese que, aligual que cuando se determinan raíces de una ecuación,


la formulaciones tales como la ecuación (8.4),en general dan una eva-
luación conservadora de la convergencia. De esta manera, cuando fun-
cionan, aseguranqueelresultadoseconozca al menos dentrode la
tolerancia especificada por E,.
272 METODOS NUMÉRICOS PARA INGENIEROS

Nótese que el método de Gauss-Seidel, a medida que secalcula un nue-


vo valor x, este mismo se usa inmediatamente en la siguiente ecuación
que a su vez determina una nuevax. De esta forma, si la solución es con-
vergente, se emplea la mejor aproximación posible. Un planteamiento di-
ferente, al cual se le conoce como iteración de Jacobi, usa una táctica
un poco diferente. En vez de usar el Qltimo valor calculado de las x,usa
la ecuación (8.3)para calcular un nuevo valor de x en base a la aproxi-
mación anterior de las x. De esta forma, al generar un nuevo valor n o
se usa de inmediato sino que se almacena para la siguiente iteración.
La diferencia entre los métodos de Gauss-Seidel y la iteración d e J a -
cobi se muestra en la figura 8.5.Aunque existen algunos casos en donde
el método de Jacobi converge más rápido,el uso de la Gltima aproxima-
ción disponible convierte al método de Gauss-Seidel en el método pre-
ferido.

8.3.1 Criterios de convergencia en el métododeGauss-Seidel

Nótese que el método de Gauss-Seidel es similar en proceso al método


simple de iteración de punto fijo usado en la sección 5.1 en la solución
de raíces de una ecuación. Recuérdese que la iteración de punto fijo tie-
ne dos problemas fundamentales: l) algunas veces no converge y 2) cuar.-
do lo hace, e s a menudo, muy lento. El método de Gauss-Seideltambién
puede tener estas fallas.

FIGURA 8.5 Esquema gráfico de la diferencia entre a) el método de Gauss-Seidel y


b) el metododeiteracióndeJacobi, en la solución de ecuaciones
algebraicas lineales simultáneas.
NVERSIóN
GAUSS-JORDAN, Y GAUSS-SEIDEL 273

Una condición de convergencia es que los coeficientes sobre la dia-


cJonal de cada una delas ecuaciones sea mayor que la suma de los otros
coeficientes en la ecuación. Una expresión cuantitativa de este criterio es:
I b i r l =-wJL,I ~3.51

En donde la sumatoria varía desde j = 1 hasta n , excluyendo j = i . La


ecuación (8.5)es un criterio de convergencia suficiente pero no necesa-
rio. Esto es, aunque el método trabaje algunas veces sin que la ecuación
(8.5)se cumpla, se garantiza la convergencia siempre y cuando (8.5)si
se cumpla. A los sistemas donde se cumple la ecuación (8.5)se les cono-
ce como diagonalmente dominantes. Afortunadamente, muchos proble-
mas de ingeniería de importancia práctica llenan este requisito.

8.3.2. Mejoramiento enla convergencia usando relajación

La relajación representa una pequeña modificación del método de Gauss-


Seidel y está diseñada para aumentar la Convergencia. Después que ca-
da nuevo valor de x se calcula usando la ecuación ( 8 . 3 ) ,el valor se mo-
difica mediante un promedio pesado de los resultados de las iteraciones
anteriores y actuales:

X , n U e L o - AX,nueL'o + (1 - ~ ) x , ~ a s a ~ ~ o P .61
en donde X es u n factor de peso al cual se le asigna un valor entre-O y 2.
Si X = 1,(1 - X ) es igual a cero y el resultado permanece inaltera-
do. Sin embargo, si a X se le asigna un valor entre O y 1, el resultado
es un promedio pesado de los resultados previos y actuales. A este tipo
de modificación se le conoce como sobrerrelajación. Por lo general, esta
opción se emplea paraconvertir un sistema divergente en uno convergente.
Si X se encuentra entre1 y 2 se considera otro peso enel valor actual..
En este ejemplo, existe una suposición implicita de que el nuevo valor
se mueve en la dirección correcta hacia la solución real pero con una ve-
locidad muy lenta. De esta forma, el peso agregado a X intenta mejorar
la aproximación empujándola hacia la real. Por lo que este tipo de modi-
ficación, al cual se le llama sobrerrelajación, está diseñado para acelerar
la convergencia de un sistema que ya es convergente.
La elección de un valor adecuado de X es un problema altamente es-
pecífico y a menudo se determina por prueba y error. En general es ine-
cesario en la solución de un sistema. Sin embargo, si el sistema bajo estudio
se va a resolver varias veces, entonces puede ser de gran importancia una
buena elección de X. Algunos ejemplos son los sistemas m u y grandes de
ecuaciones diferenciales parcialesque a menudo tratan de modelar cam-
bios en sistemas de variable continua (recuérdese el sistema a rnicroesca-
la mostrado en la figura 1II.lb). El segundo caso de estudio del capítulo
9 muestra un ejemplo del empleo de la relajación dentro de un contexto
de problemas de ingeniería.
2 74 INGENIEROS
MÉTODOS NUMÉRICOS PARA

8.3.3 Algoritmo del método de Gauss-Seidel


En la figura 8.6 se muestra un algoritmo del método de Gauss-Seidel con
relajación. Nótese que este algoritmo no está garantizado para obtener
resultados adecuados si las ecuaciones no son de tipo diagonalmente do-
minante.
Una manera demodificar el algoritmo para tomar un poco en cuenta
esta desventaja es la d e buscar los coeficientes de cada ecuación durante
cada una delas iteraciones e identificar el mayor de ellos. La ecuación en
turno se resuelve para el va!or de x asociada con el coeficiente. En el
siguiente cálculo, se rastrean los coeficientes de los valores restantes de
x y se encuentra el coeficiente mayor. La ecuación se resuelve para el
valor correspondiente de x.
Procediendode esta manera,seaumentan al máximo las opor-
tunidades de alcanzar unadominanciadiagonal. Sin embargo el es-
quemano garantiza éxito en sistemas de alta divergencia.Porotra
parte, no sería fácil de programar un algoritmo que implemente este
esquema

8.3.4 Problemas de contexto en el método de Gauss-Seidel

Además deevitar el problema del redondeo, el método de Gauss-Seide!


tiene otras ventajas quelo hacen particularmente atractivo en el contexto
de ciertos problemas de ingeniería. Por ejemplo, cuando lamatriz en
cuestión sea muy grande y muy dispersa (esto es, que la mayor parte de
los elementos son ceros,los métodos deeliminación gastan una gran can-
tidad d e memoria para almacenar los ceros.
En el recuadro 7.2, se muestra como puede evitarse este problema
si la matriz de coeficientes es banda. Para sistemas diferentes, no es fácil
evitar el uso de cantidades grandes de memoria, cuando se usan méto-
dos deeliminación. Ya que todas las computadoras tienen una cantidad
finita de memoria, esta ineficiencia puede llegar a ser una restricción real
en el tamaño del sistema para el que, los métodos de eliminación resul-
tan prácticos.
Aunque un algoritmo general como el de la figura (8.6)está propen-
sa a la misma restricción, la estructura d e las ecuaciones de Gauss-Seidel
[€c. (8.3)]permite desarrollar programas concisos para sistemas espe-
cíficos. Ya que en la ecuación (8.3)se necesita almacenar sólo los coefi-
cientesdiferentes de cero, es posible ahorrargrandescantidades de
memoria. Aunque esto impone mayor costo en la inversión de desa-
rrollo de programas, las ventajas a largo plazo son sustanciales cuando
se manejansistemas grandes sobre los que se pueden realizar varios
procesos. Los sistemas macro-y microvariables pueden generar matrices
grandes y dispersaspara las cuales se utilizael método de Gauss-
Seidel. En el caso de estudio 9.2 se trabaja un poco más sobre estos
puntos.
FIGURA 8.6 Diagrama
de fluio del método de
Gauss-Seidel con rela-
jación.
275
276 MÉTODOS NUMÉRICOS PARA INGENIEROS

PROBLEMAS
Cálculos a Mano

8.1 Úsese el método de Gauss-Jordan para resolver el problema 7 . 6

8.2 Determínese la matriz inversa del problema 7.6. Compruébense los resultados mul-
tiplicando [A] por[A]" y obténgase lamatriz identidad.

8.3 Usando el método de Gauss-Jordan, repítase el problema 7 . 9

8.4 Determínese la matriz inversa del problema 7.9. Compruébense los resultados ve-
rificando que [A][A]" = [!] . Evítese el uso de la estrategia del pivoteo.

8.5 Usando el método de Gauss-Jordan, con pivoteo parcial, calcúlese lamatriz in-
versadelproblema 7.10. Ordenando la inversadetal forma, que los renglones
y las columnas conformenla secuencia de la matriz original anterior al pivoteo (véase
lafigura 8.4 y el análisis de la sección 8.2.3).

8.6 Úsese el método de Gauss-Jordan para resolver:

10x1 - 3x2 + 6x3 = 24.5


1x1 + 8x2 - 2x3 = -9

"2x1 + 4x2 - 9x3 -50


8.7 Determínese lamatriz inversa del problema 8.6. Úsese la inversa para resolver
el problema original así como para resolver el caso adicional en donde el vector
de términos independientes es [CIT= [110 55 - 1051.

8.8 Resuélvase el problema 8.6 usando el método de Gauss-Seidel con un criterio de


paro del E, = 10 % .

8.9 Resuélvase el problema 7 . 8 usando el método de Gauss-Seidel con un criterio de


paro del t, = 10 % .

- 6 ~ 1+ 12x3 = 60
4x1 - x2 - x3 = -2
6x1 + 8x2 =44
GAUSS-JORDAN,
MATRICES
INVERSldN DE Y GAUSS-SEIDEL 277

8.12 Resuélvase el siguiente conjunto de ecuaciones:

usando a) eliminación gaussiana, b) el método de Gauss-Jordan y c) el método


de Gauss-Seidel (es = 5 % ) .

8.13 Resuélvase el siguientesistema de ecuaciones:

usando a) eliminación gaussiana, b) el método de Gauss-Jordan y C) el método


de Gauss-Seidel (E, = 5 % ) .

Problemas relacionados con la computadora

8.14 Desarróllese un programa amable con el usuario para el método de Gauss-Jordan,


basado en lafigura 8 . 2 . Agréguese u n esquema similaral mostrado en la figura
7 . 1 0 empleando pivoteo parcial.

8.15 Pruébese el programa del problema anterior duplicandolos cálculos del ejemplo 8 . 1

8.16 Repítanse los problemas 7.6 y 7 . 8 hasta el 7 . 1 1 usando los programas desarrolla-
dos enel problema 8 . 1 4 .

8.17 Desarróllese un programa amable con el usuario para el método de Gauss-Jordan,


con inversión de matrices y pivoteo parcial. Inclúyanse dentro del programa las
características sugeridas en la sección 8 . 2 . 3 .

8.18 Repítanse los problemas 8 . 5 y 8.7 usando los programas desarrollados en el pro-
blema anterior.

8.19 Desarróllese un programa amable con el usuario para el método de Gauss-Seidel


basado en la figura 8.6. Hágase de tal forma que compruebe el criterio de conver-
gencia expresado por la ecuación (8.5). Además, inclúyaserelajación como en
la ecuación (8.6).

8.20 Pruébese el programa desarrollado en el problema anterior usando un duplicado


del ejemplo 8.3.

8.21 Usando el programa del problema 8.19, repítanse los problemas 8.8 hasta el 8.11.

Vous aimerez peut-être aussi