Page 294 - Chapra y Canale. Metodos Numericos para Ingenieros 5edición_Neat
P. 294

270                     ELIMINACIÓN DE GAUSS

               p = k                  y su número de renglón se guardan en big y p. Después, el segundo ciclo intercambia el
               big = |a k,k |         renglón del pivote original con el del elemento más grande, de tal forma que el último
               DOFOR ii = k+1, n      sea el nuevo renglón pivote. Este seudocódigo puede agregarse a un programa basado
                 dummy = |a ii,k |    en los otros elementos de la eliminación de Gauss mostrados en la figura 9.4. La mejor
                 IF (dummy > big)     forma de hacerlo consiste en emplear un método modular y escribir la figura 9.5 como
                    big = dummy
                    p = ii            una subrutina (o procedimiento), que pueda llamarse directamente después del inicio
                 END IF               del primer ciclo en la figura 9.4a.
               END DO                    Observe que la segunda instrucción IF/THEN de la figura 9.5 intercambia física-
               IF (p ≠ k)             mente los renglones. Con grandes matrices, esto llevaría mucho tiempo. En consecuen-
                 DOFOR jj = k, n      cia, de hecho, la mayoría de los códigos no intercambian renglones sino llevan un
                                      registro de cuál es el renglón pivote, guardando los subíndices apropiados en un vector.
                    dummy = a p,jj
                                      Este vector proporciona luego una base para especificar el orden adecuado de los ren-
                    a p,jj  = a k,jj
                    a k,jj  = dummy   glones durante la eliminación hacia adelante y las operaciones de sustitución hacia atrás.
                 END DO               Así, se dice que las operaciones se implementan in situ.
                 dummy = b p
                 b p  = b k
                 b k  = dummy         9.4.3 Escalamiento
               END IF
                                      En la sección 9.3.3 se mencionó que el escalamiento podía ser útil para la estandarización
                                      del tamaño determinante. Más allá de esta aplicación, tiene utilidad en la minimización
              FIGURA 9.5
              Seudocódigo para        de los errores de redondeo, en aquellos casos en los que algunas de las ecuaciones de un
              implementar el pivoteo   sistema tienen coeficientes mucho más grandes que otros. Tales situaciones se encuentran
              parcial.                con frecuencia en la práctica de la ingeniería, al usar unidades muy diferentes en el
                                      desarrollo de ecuaciones simultáneas. Por ejemplo, en problemas de circuitos eléctricos,
                                      los voltajes desconocidos se pueden expresar en unidades que varían desde microvoltios
                                      hasta kilovoltios. Existen ejemplos similares en todos los campos de la ingeniería. Mien-
                                      tras cada una de las ecuaciones sea consistente, el sistema será técnicamente correcto y
                                      susceptible de ser resuelto. Sin embargo, el uso de unidades tan diversas puede llevar a
                                      que los coeficientes difieran ampliamente en magnitud. Esto, a su vez, puede tener un
                                      impacto sobre el error de redondeo, ya que afecta el pivoteo, como se ilustra en el si-
                                      guiente ejemplo.

                        EJEMPLO 9.10  Efecto del escalamiento sobre el pivoteo y el redondeo
                                      Planteamiento del problema.

                                       a)  Resuelva el siguiente sistema de ecuaciones usando la eliminación de Gauss y una
                                         estrategia de pivoteo:
                                        2x  + 100 000x  = 100 000
                                           1
                                                     2
                                           x  +     x  = 2
                                           1
                                                     2
                                       b)  Repita el problema después de escalar las ecuaciones de tal forma que el coefi ciente
                                         máximo en cada renglón sea 1.
                                       c)  Finalmente, utilice los coefi cientes escalados para determinar si el pivoteo es ne-
                                         cesario. No obstante, resuelva las ecuaciones con los valores de los coefi cientes
                                         originales. En todos los casos, conserve sólo tres cifras signifi cativas. Observe que
                                         las respuestas correctas son x  = 1.00002 y x  = 0.99998 o, para tres cifras signifi -
                                                                             2
                                                                 1
                                         cativas, x  = x  = 1.00.
                                                     2
                                                 1

                                                                                                         6/12/06   13:52:40
          Chapra-09.indd   270                                                                           6/12/06   13:52:40
          Chapra-09.indd   270
   289   290   291   292   293   294   295   296   297   298   299