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

642                     FÓRMULAS DE INTEGRACIÓN DE NEWTON-COTES

                                      mentos individuales para tener como resultado una integral total de 1.603641. Esto re-
                                      presenta un error de e  = 2.2%, que es mejor al resultado que se obtuvo mediante la regla
                                                       t
                                      del trapecio en el ejemplo 21.7.

                                      Programa computacional para datos irregularmente espaciados.  Programar la
                                      ecuación (21.22) es bastante simple. Un posible algoritmo se da en la figura 21.15a.
                                         No obstante, como se demostró en el ejemplo 21.8, el procedimiento mejora si se
                                      implementan las reglas de Simpson siempre que sea posible. Por tal razón se desarrolla
                                      un segundo algoritmo que incorpora esta capacidad. Como se ilustra en la figura 21.15b,
                                      el algoritmo verifica la longitud de los segmentos adyacentes. Si dos segmentos conse-
                                      cutivos son de igual longitud, se aplica la regla de Simpson 1/3. Si tres son iguales, se
                                      utiliza la regla 3/8. Cuando los segmentos adyacentes tienen longitud desigual, se im-
                                      plementa la regla del trapecio.



              FIGURA 21.15
              Seudocódigo para integrar datos desigualmente espaciados. a) Regla del trapecio y
              b) combinación de las reglas de Simpson y del trapecio.

              a)                                              b)
              FUNCTION Trapun (x, y, n)                       FUNCTION Uneven (n,x,f)
                LOCAL i, sum                                    h = x  – x
                                                                     1   0
                sum = 0                                         k = 1
                DOFOR i = 1, n                                  sum = 0.
                  sum = sum + (x  – x  )*(y   + y )/2           DOFOR j = 1, n
                                i    i–1   i–1   i
                END DO                                            hf = x   – x
                                                                        j+1   j
                Trapun = sum                                      IF ABS (h – hf) < .000001 THEN
              END Trapun                                             IF k = 3 THEN
                                                                       sum = sum + Simp13 (h,f  ,f  ,f  )
                                                                                              j–3  j–2  j–1
                                                                       k = k – 1
                                                                     ELSE
                                                                       k = k + 1
                                                                      END IF
                                                                    ELSE
                                                                       IF k = 1 THEN
                                                                         sum = sum + Trap (h,f  ,f )
                                                                                              j–1  j
                                                                       ELSE
                                                                         IF k = 2 THEN
                                                                           sum = sum + Simp13 (h,f ,f  ,f )
                                                                                                j–2  j–1  j
                                                                         ELSE
                                                                           sum = sum + Simp38 (h,f ,f ,f ,f )
                                                                                               j–3  j–2  j–1  j
                                                                         END IF
                                                                         k = 1
                                                                       END IF
                                                                     END IF
                                                                     h = hf
                                                                   END DO
                                                                   Uneven = sum
                                                              END Uneven





                                                                                                         6/12/06   13:59:48
          Chapra-21.indd   642                                                                           6/12/06   13:59:48
          Chapra-21.indd   642
   661   662   663   664   665   666   667   668   669   670   671