You are on page 1of 330
PARTE UNO MODELOS, COMPUTADORAS Y ANALISIS DEL ERROR 3 CONTENIDO | PT 1.1 Mofivacién 3 PT 1.2 Fundamentos matematicos 5 °T 1.3 Orientacién 8 CAPITULO 1 Modelos matematicos y solucién de problemas de inger WW 1.1 Un modelo matemético simple 11 1.2 Leyes de conservacién e ingenieria 18 Problemas 22 CAPITULO 2 Computadoras y programas 25 La computacién y su entorno 26 Desorrollo de programas 27 Disefio de algoritmos 31 z Composicién de programas 42 Control de calidad 45 2.6 Documentacién y mantenimiento 49 2.7. Estrategia de programacién 51 Problemas 55 CAPITULO 3 Aproximaciones y errores de redondeo 59 3.1, Cifras significatives 60. ~ 3.2. Exactid y precision 62 — 3.3 Definiciones de error 63. = 3.4 Errores de redondeo 66 — Problemos 82 CAPITULO 4 Serie de Taylor y errores de truncen 4.1. Los series de Toylor 84 4.2 Error de propagacién 101 4.3 Error numérico total 106 4.4 Equivocaciones, errores de formulacién e incertidumbre en los datos 108 Problemas 109 EPILOGO: PARTEUNO 111 PT 1.4. Elementos de juicio 111 PT 1.5. Relaciones y formulas importantes 114 PT 1.6. Métodos avanzados y algunas referencias adicionales 114 I PARTE DOS RAICES DE ECUACIONES nN9 CONTENIDO PT.2.1 Motivacin 119° PT 2.2 Antecedentes mateméticos 121 PT 2.3 Orientacién 123 CAPITULO 5 Métodos de intervalos 127 5.1 Métodos gréficos 127 45.2 Método de biseccién 131 © 5.3 Método de la falsa posicion 141 5.4 Bisquedas con incrementos y determinacién de valores iniciales 147 Problemas 148 CAPITULO 6 Métodos abiertos 150 6.1. Iteracién simple de punto fijo 151 26.2 Método de NewtonRaphson 156 +63. Método de lo secante 162 6.4 Raices miltiples 167 6.5. Sistemas de ecvaciones no lineales 170 Problemas 175 CAPITULO 7 Raiz de polinomios 177 7.1. Polinomios en ciencia e ingenieria 177 7.2 Céleulo con polinomios 180 7.3. Métodos convencionales 184 «7.4 Método de Miller 184 7.5 Método de Bairstow 188 7.6 Otros métodos 194 7,7 ocalizacién de raices con lbreries y paquetes de cémputo 194 Problemas 204 CAPITULO 8 Aplicaciones en ingenieria: raices de ecuaciones 206 8.1. Leyes de los goses idecles y no ideales (Ingenieria quimica e ingenieria petrolera) 206 8.2 Flujo en un conal abierto {ingenieria civil ¢ ingenieria ambiental} 209 8.3 Disefo de un circuito eléctrico (ingenieria eléctrica) 213 8.4. Anédlisis de vibraciones (ingenieria mecénica e ingenieria ceroespacial) 215 Problemas 223 EPILOGO: PARTE DOS 229 °T 2.4 Elementos de jvicio 229 PT 2.5 Relaciones importantes y formulas 232 PT 2.6 Métodos avanzados y referencias adicionales 232 CONTENIDO — . PARTE TRES ECUACIONES PT 3.1 Motivacién 235 ALGEBRAICAS PT 3.2 Antecedentes matematicos 238 LINEALES 235 PT 3.3 Orientaci6n 245 [ capituLo 9 | Eliminacion de Gauss 249 | 9.1 Resolucién de pequefios conjuntos de ecuaciones 249 j Eliminacién de Gauss simple 256 Desventajas de los métodos de eliminacién 263 Técnicas para mejorar las soluciones 269 Sistemas complejos 276 Sistemas de ecuaciones no lineales 277 Gousslordan 279 Resumen 281 roblemas 281 BLSERES 9 9. 9 9 9 9 9. P CAPITULO 10 Descomposicién LU e inversion de matrices 284 10.1 Descomposicién LU 284 10.2 Motriz inverso 294 10.3 Anélisis de error y condicién del sistema 298 Problemas 306 CAPITULO 11 Matrices especiales y el método de Gauss-Seidel 307 11.1 Matrices especiales 307 11.2 GaussSeidel 311 11.3 Ecuaciones algebroices lineales con librerias y paqueles de software 319 Problemas 327 CAPITULO 12 Aplicaciones en la ingenieria: ecuaciones algebraicas lineales 329 12.1 Anélisis en estado estable de un sistema de reactores {ingenieria quimica/ petrolera) 329 12.2 Analisis de una estructura estéticamente determinada {ingenieria civil/ ambiental) 332 12.3 Corrientes y voltajes en circvitos de resistores (ingenieric elécrica) 336 12.4 Sistemas mase-resorie {ingenieria mecénica/aeroespacial) 338 Problemas 341 EPILOGO: PARTE TRES 348 PT 3.4 Elementos de juicio 348 T 3.5 Relaciones importantes y formulas 349 ‘ PT 3.6 Métodes evanzades y referencias adicioncles 949 4 xv CONTENIDO PARTE CUATRO OPTIMIZACION 353 PARTE CINCO AJUSTE DE CURVAS 449 es PT 4.1 Motivacién 353 PT 4.2 Boses matematicas 359 PT 4.3 Orientacion 360 CAPITULO 13 Optimizacién unidimensional no restringida 364 13.1 Bisqueda de la seccién dorade 365 13.2 Interpolacién cucdrética 372 13.3 Método de Newton 374 Problemas 376 CAPITULO 14 Optimizacién multidimensional sin restricciones 378 14.1 Métodos directos 378 14.2 Métodos grodiente 383 Problemas 397 CAPITULO 15 Optimizacién restringida_ 399 15.1 Programacién lineal 399 15.2 Oplimizaci6n restringida no lineol 411 15.3 Optimizacién con poquetes de software 411 Problemas 421 CAPITULO 16 Aplicaciones en la ingenieria: optimizacién 424 16.1 Disefo de un tanque con el menor costo lingenieria quimica/petrolers) 424 16.2 Minimo costo en tratamiento de aguas de desecho (ingenieria civil/ ambiental) 429 16.3 Maxima transferencia de potencia pare un ctcuito ingenieria eléctrica) 434 16.4 Disefio de una bicicleta de montafa {ingenieria mecénico/aeroespaciall 438 Problemas 440 EPILOGO: PARTE CUATRO 446 PT 4.d Elementos de juicio 446 PTA.5 Referencias adicionales 447 PT 5.1 Motivacién 449 PT 5.2 Antecedentes mateméticos 451 PT 5.3 Orientacién 461 CAPITULO 17, Regresién por minimos cuadrados 465 17.1 Regresién lineal 465 17.2 Regresién de polinomios 481 17.3 Regresién lineal miltiple 487 PART DIFEF NUM INTEC CONTENIDO. aM PARTE SEIS 17.4 Forma general lineal por minimos cvadrados 490 \ 17.5 Regresién no lineal 496 Problemas 500 CAPITULO 18 4, Interpolacién (502! 18.1 Diferencia dividida de Newton para la interpolacién de polinomios 503 ‘18.2 laterpolacién de polinomios de Lagrange 18.3 Cosficientes de un polinomio de interpolaci 18.4 nterpolacién inverso. 520 18.5 Comentarios edicionales 521 18.6 Interpolacién segmentaria 524 Problemas 534 | CAPITULO 19 | | Aproximacién de Fourier 537 | 19.1 Ajuste de curvas con funciones sinusoidales 538 19.2 Serie de Fourier continua 544 \ 19.3 Frecuencia y dominios de tiempo 548 19.4 Integral y transformada de Fourier 552 | | 19.5 Transformada discreta de Fourier (IDF) 554 | 19.6 Transformoda répida de Fourier 556 197 Elespeciro de potencia 563 | 19.8 Ajuste de curvas con lbretics y paquetes 564 | Problemas 576 519 j CAPITULO 20 Aplicaciones en inge ajuste de curvas 578 20.1 Regresién lineal y modelos de poblacién.(ingenieria quimica/petrolera) 578 i 20.2 Uso de segmentarias para estimar Ia transferencia de calor {ingonioria civil/ ambiental} 582 20.3 Anélisis de Fourier ingenieria eléctrica) 583 | 20.4 Anélisis de datos experimental (ingenieria mecénica/aeroespacial) 585 Problemas 587 ‘| ; | EPILOGO: PARTE CINCO 594 PT5.4 Elementos de juicio 594 PT 5.5 Relaciones importantes y formulas 595 PT5.6 Métodos avanzados y referencias adicionales 597 DIFERENCIACION NUMERICA E INTEGRACION 601 PT6.1 Molivacién 601 PT6.2 Antecedentes matematicos 611 PT 6.3 Orientacién 613 CAPITULO 21 Férmulas de integracién de Newton-Cotes 617 21.1 Lo regia trapezoidal 619 J 21.2 Reglas de Simpson 630 GPNTENIDO. 21.3 Integracién con segmentos desiguales 640 21.4 Formulas de integracién abierta 643 Problemas 644 CAPITULO 22 Integracién de ecuaciones 646 22.1 Algoritmos de NewtonCotes para ecuaciones 646 22.2 Integracién de Romberg 647 22.3 Cuadratura de Gauss 653 22.4 Integrales impropias 661 Problemas 665 CAPITULO 23 Diferenciacion num 666 23.1 Diferenciacién de férmulas con alta exactiud 666 23.2 Extrapolacién de Richardson 669 23.3 Derivadas de datos desiguolmente espaciodos 471 23.4 Derivades e integrales para datos con errores 672 23.5 Integracién/diferenciacién numérica con librerias y paquetes 674 Problemas 678 Aplicaciones en la ingenieria: integracién numérica y diferenciacién 680 24.1 Inlegrocién pore determinar la canfidad total de calor (ingenieria quimica/ petrolera) 680 24.2 Fuerza electiva sobre el méstl de un bote de carreras (ingenieria civil/ combiental) 682 24.3 Raiz media cugtrética de la corriente por integracién numérica (Ingenieria eléctrice) 685, 24.4 Integracién numérica para coleular el trabajo (ingenieria mecénica/ aeroespaciall 687 Problemas 691 PARTE OC EPILOGO: PARTE SEIS 698 PT6.4 Elementos de juicio 698 ECUACION PT 6.5 Relaciones importantes y formulas 699. DIFERENCI PT 6.6 Métodos avanzados y referencias adicionales 699 PARCIALES RTE SIETE UACIONES PT7.1 Motivaciéa 703 'HRENCIALES PT 7.2 Antecedentes matematicos 706 (DINARIAS 703. 777-3 Orientacion 709 CAPITULO 25 Métodos de Runge-Kutta 714 25.1 Método de Euler 715 25.2 Mejoras del método deEuler 728 25.3 Métodos de RungeKutia 736 CONTENIDO a —_—a 25.4 Sistomos de ecuaciones 748 25.5 Mélodos adaplotivos de RungeKutta 753 Problemas 761 CAPITULO 26 Métodos rigidos y de multipaso 763 26.1 Rigider 763 26.2 Métodos mulipaso 767 Problemas 788 CAPITULO 27 Problemas de valores en la frontera y de valores propios 790 27.1 Métedos generales para problemas de valores en la frontera 791 27.2 Prablemas de valores propios 797 27.3 EDO y valores propios con librerias y paquetes 815 Problemas 823 CAPITULO 28 Lo Aplicaciones en ingenieria: ecuaciones diferenciales ordinarias 825 28.1. Uso de EDO para analizar la respuesta transitoria de un reactor {ingenieria quimica/petrolera) 825 28.2 Modelos depredadorpresa y caos {ingenieria civi/ambiental) 832 680 28.3 Simulacién de corriente transitoria para un cicuito eléctrico lingonieria, eléctrica) 835 28.4 El péndulo oscilante lingenieria mecénico/aercespacial) 841 Problemas 845 EPILOGO: PARTE SIETE 849 PT7.4 Elementos de juicio 849 PT 7.5 Rolaciones y fSrmulas importantes 850 PT 7.6 Métodos avanzados y referencias adicionales 850 . PARTE OCHO _ _ . ECUACIONES PT8.1 Motivacién 855 DIFERENCIALES PT 8.2 Orientacién 859 PARCIALES 855 CAPITULO 29 Diferencias finitas: ecuaciones eli 29.1 La ecuacién de Laplace 862 29.2 Técnica de solucion 864 29.3 Condiciones en la frontera 871 29.4 La aproximacién del volumen de control 877 29.5 Soltware para resolver ecuaciones elipticos 880 Problemas 881 CAPITULO 30 Diferencias fini jtas: ecuaciones parabélicas 883 30.1 Ecuacién de conduccién del calor 883 30.2 Métodos explicitos 884 _ ee eeeeeseseseseses—ee eg xvi CONTENIDO. 30.3 Un métedo implicito simple 889 30.4 El método de CrankNicolson 892 30.5 Ecvaciones porabélicas en dos dimensiones espaciales 895 Problemas 899 CAPITULO 31 Método del elemento finito. 900 31.1 Elenfoque general 901 31.2 Aplicacién del elemento fino en unc dimension 905 31.3 Problemas en dos dimensiones 914 31.4 EDP con librerias y paqueles 918 Problemas 927 CAPITULO 32 Aplicaciones en ingenieri ecuaciones diferenciales parciales 928 32.1 Balance de masa en una dimensién de un reactor ingenieria quimica/ petrolerc] 928 32.2 Deflexiones de una place {ingenieria civil/ambiental) 933 32.3 Problemas de campo elecirostatico en dos dimensiones ingenieria eléciica) 935 32.4 Solucién por elemento finito a una serie de resories (ingenieria mecénica/ aeroespacial) 938 Problemas 942 EPILOGO: PARTE OCHO 944 PT 8.3 Elementos de juicio 944 PT 8.4 Relaciones y formulas importantes 945 PTB.5 Métodos avanzades y referencias adicionales 945 APENDICE A: LAS SERIES DE FOURIER 946 APENDICE : EMPECEMOS CON MATHCAD 948 APENDICE EMPECEMOS CON MATHLAB 958 BIBLIOGRAFIA 967 invice 971 MODELOS, COMPUTADORAY Y ANALISIS DEL ERROR PT1.1 MOTIVACION Los métodos muméricos son téenicas mediante las cuales es posible formular problemas ‘matemiéticos de tal forma que puedan resolverse usando operaciones aritméticas. Aun- que hay muchos tipos de métodos numéricos, comparten una caracteristica comin: inva- riablemente se debe realizar un buen niimero de tediosos cilculos aritméticos. No és raro que con el desarrollo de computadoras digitales eficientes y ripidas, el papel de los métodos numéricos en la solucién de problemas de ingenierfa haya aumentado en forma considerable en los iiltimos afios. PT1.1.1 Métodos sin computadora dems de proporeionar un aumento en la potencia de célculo, la disponibilidad general de las computadoras (especialmente de las personales) y su asociacién con los métodos ‘numéricos ha influido de manera muy significativa en el proceso de la solucién de pro- blemas de ingenieria. Antes de la computadora los ingenieros sélo contaban con tres ‘métodos para la solucién de problemas: 1, Se encontraban las soluciones de algunos problemas usando métodos exactos 0 ana~ liticos. Con frecuencia estas soluciones resultaban itiles y proporcionaban una com prensién excelente del comportamiento de algunos sistemas. Sin embargo, las soluciones analiticas sélo pueden encontrarse para una clase limitada de problemas. Estos incluyen a los que pueden aproximarse mediante modelos lineales y también aquellos que tienen una geometria simple y pocas dimensiones. En consecuencia, las soluciones analiticas tienen valor prictico limitado porque la mayoria de los problemas reales no son de tipo lineal, e implican formas y procesos complejos.. 2. Para analizar el comportamiento de los sistemas se usabati soluciones graficas. Fs- tas tomaban la forma de graficas © nomogramas; aunque las técnicas grificas a ‘menudo pueden empleatse para resolver problemas complejos, los resultados no son muy precisos. Ademés, las soluciones graficas (sin Ia ayuda de una computado- ra) son en extremo tediosas y dificiles de implementar. Finalmente, las técnicas gréficas estin limitadas a los problemas que puedan describirse usando tres dimen- siones 0 menos. 3. Para implementar los métodos numéricos se utilizaban calculadoras y reglas de célcu- Jo, Aunque en teoria estas aproximaciones deberian ser perfectamente adecuadas para resolver problemas complicados, en la préctica se presentan algunas dificulta- des. Los edlculos manuales son lentos y tediosos. Ademis, los resultados no son consistentes, debido a que surgen equivocaciones cuando se efectian las tareas de esta manera, 4 ee FIGURA PT1.1 los tres fases en la solucién de problemas de ingenierio, en 9] lo ere anterior a los computadoras y b} a ea de los computodoras. tos tomahos de los recuadtos indicon el nivel de importancia que se dirige 0 cade fase. Las computadoras fociltan la mplementacion de tScricos de solucién y asi permiten un moyor cuidado sobre los cspecios creaivos de la formulacién de problemas y lo interpretacion de dos. MODELOS, COMPUTADORAS Y ANAUSIS DEL ERROR _ FORMULAGION FORMULACION Exposicion profunda de la relacién Leyes fundamentales: | Datos 1 Herramientas para resolver problemas: computadoras, cstadisticas, métodos uméricos,gréficas, etc. Resultados numérico © gréticos itetace gales programacién, optimizacion, ‘comunicacién,interaccion publica, et. Immplementacion FIGURA 1.1 Proceso de solucion de problemas de i Variable _ ( variables soc) » parimetros, dependiente — \independientes de fuerza ay donde la variable dependiente es una caracteristica que generalmente refleja el compor- tamiento 0 estado de un sistema; las variables independienies son, generalmente, dimen- siones tales como tiempo y espacio, a través de las cuales el comportamiento del sistema seri determinado; los pardimetros son reflejo de las propiedades o la composicién del sistema; y las funciones de fuerza las cuales son influencias externas que actiian sobre él Laexpresién matematica de la ecuacién (1.1) va desde una simple relacién algebraica hasta un enorme complicado grupo de ecuaciones diferenciales. Por ejemplo, en la base de sus observaciones, Newton formulé su segunda ley del movimiento, la cual esta- blece que la razén de cambio del momentum con respecto al tiempo de un cuerpo, es igual ala fuerza resultante que acta sobre él. La expresién matemitica o el modelo de la segunda ley es la ya conocida ecuacién F=ma (12) = \. FIGURA 1.2 Represeniocién de los fuerzas que action sobre un porocoidis en descenso Fryes lo fuerza hacia cbojo debida a Ia atraccién de la gravedod, Fes lo fuerza debida la resistencia del site. 1.1_UN MODELO MATEMATICO SIMPLE : ‘ane donde F es la fuerza neta que actiia sobre el cuerpo (N, 0 kg m/s*), m es la masa del objeto (kg) y a es su aceleracién (m/s*) 1La segunda ley puede ser reconstruida segin el formato de la ecuacién (1.1), divi- diendo ambos lados entre m para obtener F (sy oon donde a ¢s la variable dependiente que refleja el comportamiento del sistema, F es la funcién de fuerza y m es un parimetro que representa una propiedad del sistema. Note que en este caso sencillo no existe variable independiente porque atin no se predice cémo varia la aceleracién con respecto al tiempo o al espacio. La ecuacién (1.3) tiene varias caracteristicastipicas de los modelos matemiticos del mundo fisico: 1. Describe un sistema o proceso natural en tétminos mateméticos 2, Representa una idealizacién y una simplificacién de la realidad, Es decir, ignora los detalles insignificantes del proceso natural y se concentraen sus manifestaciones ele~ ‘mentales. Por eso, la segunda ley de Newton no incluye los efectos de la relatividad, que tienen una importancia minima cuando se aplican a objetos y fuerzas que interac tan sobre o alrededor de la Tierra a velocidades en escalas visibles a los seres huma- nos. 3. Finalmente, conduce a resultados predecibles y, en consecuencia, puede emplearse ‘con propésitos de prediccién. Por ejemplo, dada la fuerza aplicada sobre un objeto y su masa, puede usarse la ecuacién (1.3) para calcular la aceleracin. Debido a que se tiene wna forma algebraica sencilla, la solucién de la ecuacién (1.2) puede despejarse directamente. Sin embargo, otros modelos matematicos de fenémenos fisicos pueden ser mucho mas complejos, de modo que, o no se pueden resolver con exactitud, 0 requieten para su solucién mayor complejidad de las técnicas matematicas que una simple dlgebra, Para ilustrar un modelo més complicado de esta clase, puede usarse la segunda ley de Newton si se quiere determinar la velocidad final de la caida libre de un cuerpo cerca de la superficie de la Tierra, Nuestro cuerpo de caida sera el de un paracaidista (figura 1.2). Un modelo para este caso puede ser desarrollado usando la expresién de aceleracién como la razén de cambio de la velocidad con respecto al tiem- po (duit), y sustituyendo esto en la ecuacién (1,3) se tiene (14) arm donde es la velocidad (mis). Asi, la masa multiplicada por la razén de cambio de la velocidad con respecto al tiempo es igual a la fuerza neta que actia sobre el objeto. Si Ja fuerza neta es positiva, el objeto acelerard, Si es negativa, el objeto desacelerard. Sila fuerza neta es igual a cero, la velocidad det objeto se mantendré constante ‘Ahora expresemos a la fuerza neta en términos de variables y pardmetros mensurables, Para un cuerpo que cae a distancias cercanas a la Tierra (figura 1.2), la fuerza total esté compuesta por dos fuerzas contrarias: Ia atraccién hacia abajo debida a la gravedad Fp y la fuerza hacia arriba debida a la resistencia del aire Fy. BoPnt (us) 4 MODELOS MATEMATICOS Y SOLUCION DE PROBLEMAS DE INGENIERIA Sila fuerza hacia abajo se le asigna un signo positivo, se puede usar la segunda ley de Newton para formular la fuerza debida a la gravedad como Fp =mg 0.6) donde g es la constante de gravedad,o la aceleracién debida a la gravedad, que es aproxi- madamente igual a 9.8 m/s La resistencia del aire puede formularse de varias maneras, Una aproximacién sen- cilla es suponer que es linealmente proporcional a la velocidad, como en Fy =—cv an donde c es una constante de proporcionalidad llamada coeficiente de resistencia 0 arras- tre (kg/s). Asi, cuanto mayor es la velocidad de caida, mayor es 1a fuerza hacia arriba debida a la resistencia del aire. El pardmetro c toma en cuenta las propiedades del objeto descendente, como ta forma o la aspereza de su superficie, que afectan la resistencia del aire, En este caso, ¢ podria ser una funcién del tipo de traje 0 la orientacién usada por el paracaidista durante la caida libre, La fuerza total es la diferencia entre las fuerzas hacia abajo y las fuerzas hacia arriba, Por tanto, las ecuaciones (1.4) a (1.7) pueden combinarse para dar dv _mg-cv a 7 (sy © simplificando el lado derecho de la igualdad. dv as) a La ecuacién (1.9) ¢s un modelo que relaciona la aceleracién de un cuerpo que cae con las fuerzas que actiian sobre él. Se trata de una ecuacidn diferencial porque esté escrita en términos de la razén de cambio diferencial (du/dt) de ta variable que nos interesa prede- cit, razén por la cual a veces se denomina ecuacién en diferencias. Sin embargo, en contraste con Ia solucién dada por la segunda ley de Newton en la ecuacién (1.3), la solucién exacta de la ecuacién (1.9) para la velocidad del paracaidista que cae no puede obtenerse mediante simples manipulaciones algebraicas u operaciones aritméticas, Mas bien, es necesario usar técnicas més avanzadas, tal como el célculo, para obtener tuna solucién exacta o analitica. Por ejemplo, si el paracaidista esté inicialmente en reposo (v= Oen = 0), se puede usar el célculo para resolver la ecuacién (1.9), asi vo = em) G10) Note que la ecuacién (1.10) es una version de la forma general de la ecuacién (1.1), donde v(t) es la variable dependiente, tesla variable independiente, c ym son parme- tros y ges la funcién de fuerza "Bn efecto, relacin es actunlmente no lnaly poi ser epresentada por una reli con potencias como Fy cv". Al final de este capitulo, invstgaemos, en un eer, de qué manera ets no linelidades infayen en el modelo, eee 1.1_UN MODELO MATEMATICO SIMPLE 15 EJEMPLO 1.1 Solucién analitica ol problema del paracaidista que cae Enunciado del problema, Un paracaidista con una masa de 68.1 kg salta de un globo aerostatico fijo. Apliquese la ecuacién (1.10) para calcular la velocidad antes de abrir el paracaidas. El coeficiente de resistencia es de aproximadamente 12.5 kg/s. Solucién: Al sustituir los valores de los parimetros en la ecuacién (1.10) se obtiene vi = S8GED oy gets ny —saaoqt — 0 | que puede ser usada para caleular 1 | | | | L De acuerdo con el modelo, el paracaidista acelera répidamente (figura 1.3). Se llega a una velocidad de 44.87 mvs (100.4 mi/h) después de 10 s. Nétese también que después de un tiempo suficientemente grande alcanza una velocidad constante (0 velocidad ter- minal) de 53.39 mis (119.4 mith), Esta velocidad es constante porque después de un tiempo la fuerza de gravedad estard en equilibrio con la resistencia del aire, Porlo tanto, Ia fuerza total es cero y cesa la aceleracién. FIGURA 1.3 Solucién anatitica ol problema del paracaidista que coe segin se calcula en el ejemplo 7.1. to velocidad oumenta con el 40 tiempo y se aproxima asintticomente 6 una velocidad terminal v.mis 20 0 0 4 8 12 i ve Sgahhe s (Bansal ite Wotan MODELOS MATEMATICOS Y SOLUCION DE PROBLEMAS DE INGENIERIA ‘A ta ecuacién (1.10) se te Mama solucién analitica 0 exacta porque satisface con exactitud la ecuacién diferencial original, Desafortunadamente, hay muchos modelos ‘matemiticos que no pueden resolverse con exactitud, En muchos casos, la alternativa consiste en desarrollar una solucién numérica que se aproxime a la solucién exacta. Como ya se menciond, los métodos numéricos son aquellos en los que se formula el problema matemitico para que se pueda resolver mediante operaciones aritméticas. Esto puede ilustrarse para la segunda ley de Newton, al aproximar a la razn de cambio de la ‘velocidad con respecto al tiempo (figura 1.4): dv Av _ wou) =u) aor 1d i qa.) donde Avy At son diferencias en la velocidad y el tiempo calculadas sobre intervalos finitos, v(t) es la velocidad en el tiempo inicial , y U(f,,,)€s1a velocidad algin tiempo ms tarde f,, ;. Observe que duvdt @ AWAL es aproximado porque Af es finito, Recordan- do de céleulo que dv at La ecuacién (1.11) representa el proceso inverso. La ecuacién (1.11) se denomina una diferencia finita dividida y es una aproxima- cidn a la derivada en el tiempo 1, Sustituyendo en la ecuacién (1.9) da v(Gi41) — v(t) fase Sm FIGURA 1. Uso de diferencias finitos para oproximor fo primero derivade de v con respecto or u(t.) Pendiente aproximada AY = bes)— wt) ar tam EJEMPLO 1.2 1.1_UN MODELO MATEMATICO SIMPLE ss Esta ecuacién se puede reordenar para dar eter) = q+ [e— Svea] — 0) (12) [Notese que el término en corchetes que estd del lado derecho es la propia ecuacién diferencial [ecuacién (1.9). Esto es, da un significado al célculo de la velocidad de cambio o Ia pendiente de v, Asi, 1a ecuacién diferencial ha sido transformada en una ecuacién que puede ser usada para determinar algebraicamente la velocidad en f,,, usando la pendiente y los valores anteriores de vy t. Si se da un valor inicial para la velocidad en algiin tiempo 1), se puede calcular ficilmente la velocidad en un tiempo posterior ¢_,. Este nuevo valor de la velocidad en f,,, puede utilizarse para calcular la velocidad en 1,,. y ast sucesivamente. Es decir, a cualquier tiempo. Nuevo valor = viejo valor + pendiente tamaiio del paso Solucién numérica ol problema de la caida de un paracaidista Enunciado del problema. Efectuar el mismo caleulo que en el ejemplo 1.1 pero usan- do la ecuacién (1.12) para calcular la velocidad. Emplee un tamaiio de paso de 2 s. Solucién. Al principio de los cdlculos (t, = 0), la velocidad del paracaidista es igual a cero. Con esta informacién y los valores de los parémetros del ejemplo I.1, se puede usar la ecuacién (1.12) para calcular la velocidad en f,,, = 28 125 0.15 i v=04 [ps a 0]? 19.60 os Para el siguiente intervalo (de = 24), se repite el célculo con el resultado Tog _ 125 v = 19.60 + | 9.8 - — (19.60) | 2 = 32.00 mis Ceo a ‘Se continiia con los célculos de manera similar para obtener valores adicionales, como cn la tabla siguiente: vim/s 0.00 19.60 32.00 39.85, 44.82 47.97 49.96 53.39 8 Los resultados se grafican en la figura 1.5, junto con la solucién exacta. Como ox evidente, la solucién por un método numérico se aproxima bastante bien a la solucién MODELOS MATEMATIC E PROBLEMAS DE INGENIERIA, exacta, Sin embargo, debido a que se emplean segmentos de rectas para aproximar una funcién que es continuamente curva, hay algunas diferencias entre los dos resultados. Una forma de reducir estas diferencias consiste en usar un menor intervalo de calculo. Por ejemplo, aplicar la ecuacién (1.12) en intervalos de 1-s redundaria en un error me- nor, ya que los segmentos de recta estarian un poco mas cerca de la sotucién verdadera, De hacer célculos manuales, el esfuerzo asociado al usar incrementos cada vez mis ‘pequefios haria poco pricticas tales soluciones numéricas. Sin embargo, con la ayuda de una computadora personal se puede efectuar fécilmente un gran niimeto de célculos; por tanto, se puede modelar con exactitud la velocidad del paracaidista que cae, sin tener que resolver exactamente la ecuacién diferencial ‘Como se vio en el ejemplo anterior, se paga un costo computacional para obtener un resultado numérico més preciso, Cada particién a la mitad del tamaiio de paso para lo- gtar mds precisién nos Hleva a duplicar el nimero de célculos. Por consiguiente, sabemos que existe un trueque entre la exactitud y Ia cantidad de operaciones y el tiempo de procesamiento. Este tipo de criterios son de gran importancia en los métodos numéricos y constituyen un tema importante en este libro. En consecuencia, se ha dedicado el epi {ogo de la Parte Uno para hacer una introduccin a mas elementos de juicio de este tipo LEYES DE CONSERVACION E INGENIERIA Aparte de la segunda ley de Newton, existe una mayor organizacién de principios en ingenieria. Entre los mas importantes estan las leyes de conservacin. Aunque éstas son FIGURA 1.5 Comporacién de les soluciones numéricas y ‘naliticas pare el problema del parocoidiva que cae 40 ms Solucién analitica, exacta 20 1.2_LEYES DE CONSERVACION E INGENIERIA a fundamentales en una variedad de complicados y eficaces modelos mateméticos, law grandes leyes de Ia conservacién en la ciencia y la ingenieria son conceptualmente fici- les de entender. Estos se pueden reducir a Cambio = incremento ~ decremento (13) Esta es precisamente la forma que nosotros empleamos cuando usamos la segunda ley de Newton para desarrollar una fuerza de equilibrio en la caida del paracaidista (ecua~ ci6n (1.8)]. Pese a su sencillez, la ecuaci6n (1.13) comprende uno de los principios fundamenta- les en que las leyes de conservacién son usadas en ingenieria —esto es, predecir cambios con respecto al tiempo—. Nosotros Je daremos a la ecuacién (1.13) el nombre especial céleulo de variable-tiempo (0 transitivo). Aparte de la prediccién de cambios, las leyes de la conservacién se aplican en casos en que el cambio no existe. Si el cambio es cero, la ecuacién (1.3) sera Cambio incremento ~ decremento o bien, Incremento = decremento (aay Asi, de no ocurrir el cambio, el incremento y el dectemento debersn estar en equilibrio, Este caso, que tiene una denominacién especial —célculo de estado estacionario— tie- zne muchas aplicaciones en ingenieria. Por ejemplo, para el estado continuo de flujo de FIGURA 1.6 Balonce de fujo paro un fuido ineompresible en estodo estocionavio en una unién de tuberos Tuberia 2 Flujo de entrada = 80 A Tuberia 1 Tuberia 4 Flujo de entrada = 109 * Flujo de salida =? t Tuberia 3 Flujo de salida = 120 MODELOS MATEMATICOS ¥ SOLUCION DE PROBLEMAS DI fluido incompresible en tuberias, el flujo que entra en conjunto debe estar en balance con 1 flujo de salida, esto es Flujo de entrada = flujo de salida Para la unién de tuberias de la figura 1.6, esta ecuacién de balance se puede emplear para calcular el flujo de salida de la cuarta tuberia que debe ser de 60. Para la caida del paracaidista, las condiciones del estado estacionario debe- tian corresponder al caso en que la fuerza neta fue igual a cero 0 fecuacién (1.8) con dat = 0} mg = cv (its) Asi, en el estado estacionario, las fuerzas hacia abajo y hacia arriba estin balancea- das y la ecuacién (1.15) puede ser resuelta para la velocidad terminal, Aunque las ecuaciones (1.13) y (1.14) pueden parecer triviales, comprenden los dos principios fundamentales en que las leyes de la conservacién se emplean en ingenieria, Como tales, en capitulos subsiguientes seran parte importante de nuestros esfuerzos por mostrar la relacién entre los métodos numéricos y la ingenierfa. Nuestro primer medio para hacer esta relacién son las aplicaciones a la ingenierfa que aparecen al final de cada parte del libro. Enla tabla 1.1 se resumen algunos de los modelos sencillos en ingenieria y su rel cidn con las leyes de conservacién que serin la forma bisica de muchas de esas aplica- ciones, La mayoria de aplicaciones de ingenieria quimica harin énfasis en el equilibrio de masa para reactores. El equilibrio de la masa se deriva de la conservacién de la masa. Especificamente, el cambio de masa de un compuesto quimico en un reactor depende de Ja cantidad de masa que fluye menos el cambio de masa de salida, Las aplicaciones en ingenieria civil y mecénica se enfocarin sobre modelos desa- rrollados para la conservacién del momentum. Con respecto a la ingenizria civil, uerzas cen equilibrio se utilizan en el andlisis de estructuras como las armaduras sencillas de la tabla 1.1. EI mismo principio se puede aplicar en ingenieria mecénica, con el fin de analizar el movimiento transitivo superior e inferior, o las vibraciones de un automévil Finalmente, las aplicaciones en ingenieria eléctrica emplean balance de corriente y cenengia para el modelo de circuitos eléctricos. El balance de corriente, ¢! cual resulta de la conservacién de carga, es similar en espirita al equilibrio del flujo representado en la figura 1.6. Asi como el flujo debe equilibrarse en las uniones de tuberias, 1a corriente eléctrica debe estar balanceada o en equilibrio en las uniones de alambres eléctricos. La conservacién de la energia especifica que la suma algebraica de los cambios de voltaje alrededor de cualquier malla de un circuito deben ser igual a cero. Las aplicaciones en ingenieria pretenden ilustrar cémo se emplean actualmente los métodos numéricos para solucionar problemas de ingenieria. Como tales, dichos métodos nos permitirén exatni- nar los métodos pricticos (tabla 1.2) que surgen en aplicaciones de! mundo real. El esta- blecer la relacién entre técnicas matemiticas como los métodos numéricos y la pritctica de la ingenieria es un paso decisivo para mostrar su verdadero potencial, Examinar cui- dadosemente las aplicaciones @ la ingenieria nos ayudara a establecer esta relacion, TABLA 1.1. Dispositivos y tipos de balance que se usan cominmente en las cuatro grandes reas de la ingenieria. En cada caso se especifica la ley de conservacién en que se basa L:2_ UVES DE CONSERVACION E INGENIERIA el balance. Campo Expresion matemétiea Ingenieria quimica Ingenieria civil Ingenieria mecénica Ingenieria eléctrica Disp Principio aplicado FEA] raacteres dolamase les HL | Cconservacén dl aa ON ote Conservacién det ‘momentum VW Conservacin ue L als de carga s 6 # Liyytayn— Cireuito Conservacién ela energia Balance de a masa: Enivada =F En un periodo Amasa = salidas ~ entradas Balance de fuerzas Para cada nodo fuerzas horizontales (Fj) fuerzas vertcales (F,) Balance de fuerzas: 4 Fuerza hacia arriba Fuerza hacia abajo dx mS7#'= Fuerza hacia abajo — fuerza hacia arriba Balance de cortiente +h 0-5 Para cada odo f Tonite () = 0 . Balance del potenclal ik mECOs Li ‘iy ‘Atededor de cada ciclo toms 5 caida de potencal en os resistores =0 E§-LiR=0 MODBLOS MATEMATICOS ¥ SOLUCION DE PROBLEMAS DE INGENIERIA TABLA 1.2 Algunos aspecios pracicos que se investigaran en las aplicaciones «a la ingenieria ol final de cada porte del libro. 1. No lineal conta linea. problemas no neoles 2, Grandes sistemas ct ‘examinar en fr 3, No ideal conta ideal. En ideoizadas que son mas redisis pero que demandan muchos edlculos. a ‘Mucho de la ingeniasia csica d siones analtcas, Aungue esl es opropiado, puede ganar cielo ota paquson, Sn wre com 72 mds relist fos sitemos mul de la lineaizacién que permite sol reconocimieno cuando ee revisan lee 10, no siempre se pueden exominar sistemas wiodoras y mélodos numésicos, se pueden veria cbundon fs leyes idealzados. A menudo, hoy allerratvas na puede ocercarse facimante pore aplicaciones de esos relaciones no les, 4, Sensibilidad dle ondisis Debido o que estén involuciados, muchos cbleulos manus requieren una gran contdad de ‘ndlisis prc implemer npo y esher in de mk exioso, Algunas veces dasoleno el nnecesoros ol examina cémo vn sis responde en diferentes condiciones. Tal endliss de sersibidod se facie cuando los métodos numéricos fon quo lo compose os a casa de mde PROBLEMAS Mw a) » oO 2 4) ) D Contestefalso 0 verdadero Bl valor de una variable que satisface una simple ecuacién se llama raiz de una ecuacién, Las diferencias finitas divididas son usadas para represen- tar derivadas en términas aproximados. En laera anterior alas computadoras, los métodos numéri- cos se empleaban constantemente porque requerian wn pe- quefio esfuerzo de cileulo, La interpolacién se emplea para problemas de ajuste de ccurvas cuando hay un ertor significativo en los datos. Los modelos matemiticos no se pueden usar con propési- tos de prediccién, Los grandes sistemas de ecuaciones, las no lincalidades y las geometrias complicadas son comunes en la prictica de Ja ingenieria y son faciles de resolver analiticamente. La segunda ley de Newton es un buen ejemplo de que mu- cchas eyes fisicas se basan en la razén de cambio de las cantidades y no en sus magnitudes, Una interpretacion fisica de la integracién es el érea bajo la curva. Los métodos numéricos son aquellos en los que se reformula un problema matemtico para que pueda resolverse mediante ‘operaciones aritméticas. Hoy en dia se puede prestar mayor atencién a la formula- cidn e interpretacién de los problemas porque las compu- tadoras y los métodos numéricos facilitan la solucién de problemas de ingenieria, 1.2 Lea las siguientes descripciones de problemas y sefiale qué Area de Jos métodos numéricos —segiin lo seftalado en la figura PT1.2— se relaciona con su solucién, 4) Supongamos que usted tiene a responsabitidad de determi nar los flujos en una gran red de tuberias interconectadas entre si para distribuir gas natural a una serie de comunida- des diseminadas en un rea de $1.77 m* (20 mi?) )_ Usted esti haciendo experimentos para determinar la caida de voltae a través de una resistencia como una funcién de lacorriente, Hace las mediciones de la caida de voltaje para diferentes valores de Ia corriente, Aunque hay algin error asociado con sus datos, al graficar fos puntos, éstos fe su- gieren una relacién ligeramente curvilinea. Usted debe de- ducir una ecuacién que caracterice esta relacién. )_ Usted debe dessrrollar un sistem’ deamortiguamiento para tun auto de carreras, Puede usar la segunda ley de Newton para tener una ecuacién que ayude a predecir la razén de cambio en la posicidn de la rueda delantera en respuesta a fuerzas extemas. Debe calcular el movimiento de la rueda, ‘como una funcién del tiempo después de golpear contra un tope de 15.24 em (6 pulg) a 67.041 mis (150 mifh. 4) Usted tiene que calcular cudl es el ingreso anual que se va requerir en 20 aflos, para la construccién de un centro de ‘entretenimiento solicitado por un cliente, El préstamo pue- PROBLEMAS 23 erés de 10.37%. Aunque, para hacer este céiculo, a informacién se encuentra en tablas de ‘economia, sélo aparecen listados los valores para tasas de interés de 10 y 11%, €) Usted debe determinar fa distribucién de temperatura en dos dimensiones de una superficie con empaque como una funcién de temperatura en los extremos. A) Para el problema del paracaidista que cae, se debe decidir el valor del coeficiente de arrastre para que un paracaidis- ta de $89.6 N (200 Ib) de peso no exceda tos 160.9 km/h (100 mish) después de 10 s de haber saltado. Esta evalus- cién se hard con base en la solucién analitica [ecuacién (1-10)]. La informacién se emplearé en el disefio de ropa especial para paracaidistas 8), Usted es experto en el trazo de caminos y debe determinar el rea de un campo que esti sobre dos carreteras, y medir ia don- de pueds utilizar cada uno de los siguientes tipos de métodos numéricos. De ser posible, remitase a sus propias expetiencias ‘en cursos, conferencias w otras prcticas profesionales que haya, acumulado hasta la fecha 4) Raices de ecuaciones +b). Ecuaciones lineales algebraicas ©) Ajuste de curvas: regresién ¢ interpolacién 4) Optimizacién e) Integracién A. Bcouaciones diferenciales ordinarias, 2) Ecuaciones diferenciales parciales 14 {Qué es la aproximacién de dos puntas para resolver pro- blemas en ingenieria? Dentro de esta categoria, ;deberia haber un lugar para las leyes de conservacién? 1S. {Cual es la forma de la ley conservativa transitiva? {Es es- tado estacionario? 16 La siguiente informacién de una cuenta de banco esti dis- ponible: Fecha Depésitos Retiros Balance 912.93 220.13 327.26 on 216.80 378.61 7" 350.25 106.80 a 127.31 450.61 a Use la conservacién del efectivo para calcular el balance de 6/1, 7/1, 811 y 911. Muestre cada paso en el eleulo, Este eéleulo jes de estado estacionario o transitive? 1.7 Dé ejemplos de leyes de conservacién en ingeni vida daria 1B Vea sus libros de texto de ingenieria_y busque cuatro casos tn que los modelos matemiticos se usen para describir el com- portamiento de los sistemas fisicos. Tome nota de las variables dependientes e independientes, asi como de los parimetros y las funciones de fuerza 1.9 Compruebe que la ecuacién (1.10) es la solucién de a ecus- cidn (1.9), 1.10 Repita el ejemplo 1.2, Calcule la velocidad para ¢ = 12s, con un tamafio de paso de a) 1 y 6) 0.5 s. Vetdedero Falso Verdadero Seleccién ‘Aitemativa | | Alterativa ‘Altemativa Falso verdadera falsa verdadera Aternativa simple ‘Alternativa doble (THEN) (FTHEN/ELSE) Repeticién 2 FIGURA 2.8 las tres estructuras de control fundamentales Ciclo de preprueba Ciclo de prueba intermedia _—_Ciclo de posprusba Todos los diagramas de flujo deberian estar compuestos por tres estructuras funda ‘mentales de control, como se advierte en la figura 2.8. Si nos limitamos 1 dichas estrug= turas y evitamos el GOTO, el algoritmo resultante serd mucho més fall de ent SOMPUTRDORAS Y PROGRAMAS: REST PRS ee : Antes de.continuar, haremos una revisién practic de nuestro dictamen sobre el “no GOTO”. Por desgracia, algunos lenguajes (sobre todo el Fortran 77) y algunos paquetes no incluyen un conjunto completo de instrucciones estructuradas de programacién. Esto es cierto, sobre todo, en el caso de los paquetes en que se han adoptado los lenguajes de programacién primitives y simplificados. Mientras mas y mas usuarios escriban macros ¥ argumentos originales, esta situacién cambiard, Sin embargo, mientras este libro esté fen prensa, habré ocasiones en que usted deberd user el GO TO para Hlevar a la prictica ‘una estructura de control estandarizada, Es decir, si usted puede evitar un ataque de nervios al usar el GO TO, todavia puede escribir un cédigo decente en esos ambientes. 2.3.2 Seudocddigo El objetivo de los diagramas de flujo es, obviamente, mejorar la calidad del programa de ‘computacién, lo cual consiste en una serie detallada de instrucciones llamada cédigo. La revisién de las figuras 2.6 y 2.7 muestra cémo el diagrama de flujo top-down se mueve de acuerdo con el programa de computacién, En referencia al disefio top-down, se crean diagramas de flajo més detallados mientras avanzamos desde los aspectos generales (figura 2,6a) hasta los médulos especificos (figura 2.6c). En su nivel més alto, el diagra- m ma de flajo modular tiene casi la forma de un progeama de computadora. Es decir, como i se ve en la figura 2.7, cada bloque del diagrama de flujo representa una sola —pero bien ae definida—instruccién para la computadora. fone Una alternativa para expresar un algoritmo que sea un puente de unién entre los diagramas de flujo y el cédigo de computadora es e! llamado seudocddigo el cual utiliza instrucciones parecidas a las de un cédigo en lugar de los simbolos del diagrama de flujo. La figura 2.9 muestra las representaciones de! seudocédigo para las estructuras de control fundamentales. Para el seudocddigo de este libro, debemos adoptar algunas convenciones de estilo. Palabras clave como IF, DO, eteétera, escritas con letras maydisculas, mientras que las tapas de procesamiento y las tareas en letras minisculas. Adicionalmente, observe que Jas etapas de procesamiento estan ensambladas. Asi, las palabras clave forman un “sdndwich” en torno a estas etapas para definir visualmente la extension de cada estruc- tura de control, La figura 2.10 muestra la representacién del seudocédigo del diagrama de flujo de la figura 2.7. Esta versién grafica es més semejante a un programa de computadora que el diagrama de flujo. Asi, una ventaja del seudocddigo es que es mas fécil formular un programa con él, que con un diagrama de flujo. El seudoeséigo es también facil de modificar y compartir con otros, No obstante, debido a su forma grafica, los diagramas de flujo algunas veces son mejores para visualizar algoritmos complejos. En este libro se usard el seudocddigo para escribir algoritmos relacionados con los métodos numé- ricos. 2.3.3 Otras estructuras otiles Aungue se puede formular cualquier algoritmo numérico a partir de tres estructuras fun- damentales de control, Jos expertos en computacién han inventado varias estructuras adicionales de gran utilidad en métodos numéricos. Las mas importantes son la estract- 1a de seleccién multialternativa’y el ciclo de conteo-bajo-control. Sabet Secuencia Tarat2: Tareas 3 1 conic THEN e ene if ‘alternstvaverdadere —_aternativaverdadera END ASE ‘ Alvernativa flea, Seleccién ENDIF £ opens ‘Aterativa simple ‘Alermativa doble (FTHEN) (FTHENELSE) ‘00: } ie Aas 00. IP condicién EXIT Tarea Taree? Trea FF condi BT ‘econdln Bat repeticien EO™ Toren ND 60 FIGURA 2.9 bondi) Pe Rone b Representacién del : : : sevdocédigo de los tres ssa. 3 estucturas de conta Ciclo de preprusta Ciclo de prusaintomneda Ciclo de pcserucba fundomeniales. FIGURA 2.10 Comienza calificacién promedio Seudocédigo pare coleular el promedio de cm calicociones de pruebos. oe Este algoritmo se present eo previamente en el diagrama i . de! lujo dela figure 2.7. INPUT calificacién IF callficaci6n < O EXIT uma = suma + calificacién Secuencia — conteo = conteo +1 Seleccién 4 L— eno po —— IF conteo > O THEN promedio = sumalconteo “ELSE promedio =O L— enpir Fin calificacién proptedio. COMPUTADORAS ¥ PROGRAMAS La Estructura de Seleccién Muliallernativa. Supongamos que la cliusula ELSE de un IF/THEN/ELSE contiene otro IF/THEN, como en el siguiente seudocédigo: F condicién Tarea, SE IF condlcién Tarea, ELSE Tareas END IF ENDIF En tales casos, el ELSE y el IF pueden combinarse, asi IF condicién area, ELSE IF condicién Tarea, ELSE Tareas ENDIF ‘Note cémo el ELSE IF hace la estructura mas concisa. No solamente se consolidan dos lineas, sino que también una de las declaraciones END IF ya no es necesaria. Un diagra- ‘ma de flujo general para la estructura IF/THEN/ELSE IF se muestra en la figura 2.11 Observe que como hay una cadena o “cascada” de decisiones. La primera es la declaracién IF, y cada decisién sucesiva es una declaracién ELSE IF. Al ir bajando, Ia primera condicién encontrar que la verdadera prueba causaré una bifurcacién al blo- que del eddigo correspondiente, seguida de una salida de la estructura. AI final de la cadena de condiciones, si todas tienen pruebas falsas, habri un bloque opcional ELSE. El ciclo conteo-controlado. Los ciclos de la figura 2.9 se denominan ciclos légicos porque terminan en una condicién légica. En contraste, los ciclas de conteo-controlado realizan un mimero especifico de repeticiones o iteraciones. Desde luego, tales opera- ciones podirian ser programadas con un ciclo légico. Por ejemplo, el siguiente seudocédigo std concebido para repetir 10 veces: bo IF i> 10 ExT PRINT| isitt END DO La variable i es un contador que se mantiene en funcién del nlimero de iteraciones. Si és ‘menor o igual a 10, la iteracion se ejecuta, En cada paso, el valor de / se visualiza ¢ /8e , rp FIGURA 2.11 coors w ore [aan] incrementa en 1. Después de la décima iteracién, i vale 11; por Jo tanto, la condicién logica seta una prueba verdadera y el ciclo haba terminado. Aunque el ciclo anterior a la prueba es, en efecto, una opcién faetible para realizar tun niimero especifico de iteraciones, la operacién es tan comin que declaraciones de alto nivel, estin disponibles en todo lenguaje de alto nivel comiin para llevar a cabo el mismo objetivo pero de una maneta mas eficiente. El diagrama de flujo y el seudocédigo para la estructura de conteo-controlado se representan en la figura 2.12. El ciclo de conteo-controlado trabaja como sigue: El indice (representado como ien Ja figura 2.12) es una variable que es un conjunto de valores iniciales de principio. El programa comprueba si el fice es menor o igual al valor final. De ser asi, ejecuta la estructura del ciclo y los ciclos regresan a la declaracién DO, Cada vez que se encuentra la declaracién END DO, el indice se incrementa automiticamente por cada paso. Asi, el indice actia como un contador. Entonces, cuando el indice es mayor que el valor final (termina), 1a computadora transfiere automticamente el control de salida del ciclo a la linea que sigue a la declaracién END DO. Aunque ereemos que la descripeiéin anterior tiene un valor pedagéico, se debe hacer nolar que un lenguaje de impute come el Fortran 90 en realidad no puede realizar preguntas para Yevat a cabo cicls de conteo-contolado, Mis bien, el nimero de iteraciones es precaloulado durante la compilacidn, razén por la cuales legal el cambio de valor dele variable que cuenta en la estructura del ciclo 42 COMPUTADORAS ¥ PROGRAMAS —_ _ i Principio 01 = Prine, Trina, Paso eND D0 FIGURA 2.12 flujo y -6digo de un ciclo de Jado que se cede realizar en maiodos 2) Diagrama de fujo ) Seudecédigo 24 COMPOSICION DE PROGRAMAS Después de confeccionar el algoritmo, el siguiente paso es expresarlo como cédigo. Antes de definir la manera de hacerlo, hablaremos sobre algunos lenguajes de computacién. 2.4.1. Lenguajes de alto nivel y macros Desde que empezé la era de la computadora, se han elaborado cientos de lenguajes de ‘computacién, Determinar cuil es el “mejor” lenguaje ha sido objeto de grandes debates. Por desgracia, muchos programadores tienen casi siempre un apego emocional a “su lenguaje, ¢ incluso llegan a asegurar que todos los otros son inferiores. Creemos que este tipo de actitudes cerradas pueden ser contraproducentes. Pese a que cada lenguaje tiene sus limitaciones, se puede usar con ventaja en un contexto de problemas particulares. En este libro optaremos por el seudocédigo para expresar nuestros algoritmos nu- éricos. Esto puede ser traducido con facilidad a los lenguajes principales para resolver problemas, usados por ingenierosy cientificos: Fortran y C, Ademés, también se pueden aplicar en Ia elaboracién de macros/guiones de paquetes tales como.el Visual BASIC, dialecto usado por Excel. Fortran. EI Fortran, establecido como un tmaductor de formulas, fue presentado co- ‘mercialmente por la IBM en 1957. Como su nombre lo indica, una de sus caracteristicas es que emplea una notacién que facilita la escritura de formulas matemiticas. Debido a ello, Fortran es un lenguaje natural de computaci6n para muchos ingenieros y cien- tificos. Por otro lado, para las formulas mateméticas, Fortran tiene otras caracteristicae téle- ‘vantes para los métodos numéricos. Por ejemplo, tiene capdcidad para trabajar con'varia- bles de doble precisién y marejar funciones especiales matemiticas, incluyendo variables complejas. Ademés, es altamente propicio para la programacién modular porque tierie 2.4 _COMPOSICION DE PROGRAMAS. 43 subrutinas que permiten variables locates y 1a transferencia de valores entre lox subpro- gramas y el del programa principal. Asi, pueden elaborarse bibliotecas numéri tadas a los subprogramas y obtenerse comercialmente para usarse en un cédigo Fortran, C. Como se observa en la figura 2.3, la preparacién de programas constituye en la actualidad una parte dominante de los costos en Ia computacién. Creado en 1972 por los faboratorios Bell, C es actualmente el lenguaje més popular para el profesionista que labora programas. C posee muchas de las caracteristicas de un lenguaje de alto nivel y, por lo tanto, puede ser empleado por ingenieros para realizar céleulos numéricos. Aunque en térmi- | 1nos generates es inferior al Fortran 90, también tiene acceso a bajos niveles de hardware y software, como es caracteristico del lenguaje ensamblador, Al mismo tiempo, es mas genérico que el lenguaje ensamblador, el cual es usualmente un hardware esp Esta combinacién de capacidad de bajo nivel y portabilidad es lo que hace al C para quienes elaboran programas. ‘Aunque los ingenieros y los cientificos emplearon primeramente la computacién para resolver problemas, una fraccién pequefia pero significativa opté por elaborar sus programas. Ademés, algunas universidades prefirieron ensefar alos estudiantes de inge | nieria y ciencias el C como primer lenguaje de computadora. Por ello, se debe reconocer | | que éste podria usarse, en la préxima década, por un buen niimero de ingenieros y cien- tificos. Visvol BASIC, EIBASIC fue creado originalmente por John Kemeny y Thomas Kurtz, a mediados de la década de los sesenta, como un lenguaje instructivo para los estudiantes del Dartmouth College. A partir de entonces, se fue sofisticando cada vez més (ejemplo de ello es el QUICK BASIC de Microsoft). En la actualidad, su principal implementacion es el Visual BASIC. Este lenguaje esta relacionado estrechamente con el sistema opera- tivo de Windows de Microsoi,, que es de hecho el ambiente de cdmputo para las PC de IBM y equipos compatibles. Asimismo, es una de las herramientas principales en la claboracién de programas para PC. Ademis, debido a su funcién de macrolenguaje para el popular programa de hoja de célculo Excel, su uilidad esta més que reconocida Dialectos. El tiempo pasa y siguen credndose nuevas versiones 0 “dialectos” para cada lenguaje. A nadie sorprende que éstas incorporen lo mejor de las versiones anteriores. Los lenguajes especificos empleados en este libro Fortran 90 y Excel Vistial BASIC—— fueron elegidos por su disponibilidad, porque son féciles de usar y son compatibles, y porque tienen acceso a una programiacién estructurada. Asi, todos los cédigos utilizados en este fibro estén escritos en un estilo altamente estructurado que deriva de un seudocédigo. En consecuencia, todos pueden ser traducidos con facilidad a otros len- uajes, como el Fortran 77 o el C. Ademiis, pueden ser puestos en marcha sin mayores problemas con algunos paquetes de software, como las finciones del MATLAB. En la siguiente seccién, explicaremos en detalle en qué consiste este acceso estructurado. 2.4.2. Programacién estructurada No todos estin de acuerdo con Ia definicién regulae de programacién estructurnda, In general, la idea principal esté comprendida en lo que podria Vamarse el principio cle estructura (Dijkstra, 1968): a El prineipto de estructura: La estructura estitica (es decir, extendida fuera de esta pégina) de un programa corresponderia, de una manera sencilla, ala estructura di~ ‘ndmica (es decir, extendida fuera de tiempo) de la computacién correspondiente, Asi, el “salto alrededor de”, debido a una bifureacién indiscriminada y a otros malos habitos en programacién se podria evitar como consecuencia natural del ordenamiento de célculos bien definidos. ‘Ademés del principio de estructura, hay otras reglas que pueden como parte de la filosofia deta programacién estructurada. Las siguientes les estin entre las ms aceptadas: + consideradas reglas genera- L. Los programas deben consistir inicamente de tres estructuras fundamentales de con- trot: secuencia, seleccién y repeticidn (indicadas en Ia figura 2.8). A decir de los expertos en computacién, con estas estructuras basicas se puede elaborar cualquier programa. 2, Cada una de las estructuras debe tener sélo una entrada y una salida. 3. Hay que evitar las transferencias incondicionales (los GO TO) 4, Las estructuras se deben idemtificar claramente con comentarios y recursos visua- Jes, como indentacién, lineas en blanco y espacios en blanco, Aunque las reglas pueden parecer engafiosas, su apego a ellas puede evitar el eédigo cespagueti, que es el sello de las bifurcaciones indiscriminadas. Debido a sus beneficios, hharemos hincapié en estas reglas y demas practicas de la programacién estructurada en las partes subsecuentes de este libro, En las figuras 2.13 y 2.14 se muestra cémo se programa la construccién de la selec cign y la repeticién en Fortran 90, C y Visual BASIC. Nétese que los eédigos son muy parecidos al seudocédigo. La figura 2.15 es un ejemplo categérico que contrasta entre lo estructurado y lo no estructurado. Los tres programas estin concebidos para determinar el promedio de cali- ficaciones, cuyo algoritmo esta esbozado en la figura 2.10. Aunque los programas calcu- Jan valores idénticos, sus disefios tienen un marcado contraste. El propésito, la Logica y la organizacién del programa presentado en la figura 2.15a no es obvio. El usuario debe sondear en el cédigo, linea por linea, para descifrar el programa. En contraste, las partes fundamentales de la figura 2.15, incisos (b y c), se muestran inmediatamente. El programa se lleva a cabo en forma ordenada, de arriba abajo y sin mayores saltos. Cada segmento tiene una entrada y una salida, y cada uno esté claramen- te delineado por espacios e indentacidn. En esencia, los programas se distinguen por una claridad visual gue recuerda el buen disefio de un diagrama de flujo. Mas ain, los pro- gramas estructurados son una evolucién natural del sendocédigo que se muestra en la figura 2.10, En la parte cargada los programas de la figura 2.15 (b y ¢), pueden tardar mas tiem- po en elaborarse que el programa de la figura 2.15a, Dado que muchos ingenieros prag- miticos estdn acostumbrados a “terminarsu trabajo” de una manera eficiente y a tiempo, el esfuerzo extra no siempre estarfajustificado. Tal serfa el caso de un programa corto, que podria elaborarse “iinicamente a un tiempo” de cdfeulo. Sin embargo, para progra- ‘mas mds importantes que estin destinados a alguna aplicacién personal o de otro tipo, io hay duda de que una aproximacién estructurada produciria beneficios a largo plazo. Fortran 90 Seudocédigo Visual BASIC «6 Dacsn con cleat simple (F Condicién TF (a <0.) THEN 4 (aco) € IF a <0. THEN ‘Aiternativa verdadera b= be bea ENDIF END IF d END IF 6) Decisin con dob aerate iF Condicién TF Ca <0.) THEN $f (aso) € IF a <0. THEN Alternativa verdadera be b= a; bona ELSE use dese C ese ‘Aiternativa falea bea bea bea ENDIF END 1F ) END TF €) Decision con vatos ahrnavas IF Condicién IF (a 0,) THEN # (aco) ¢ IF a <0. THEN Alternativa, b= b= a: bana ELSEIF ELSE IF (o> 0.) THEN —D else $1 (a0) ¢——ELSE IF a> 0. THEN ‘Alternativay bea baa: bea ELSE use delse ¢ use Otra alternativa bo. b= 0; bao. ENDIF END IF 3 END TF FIGURA 2.13 Estructuras de seleccién eloboradas pare Fortran 90, ANSI C y Visual BASIC. 2.5 CONTROL DE CALIDAD Con las herramientas descritas anteriormente, usted deberfa ser capaz de elaborar un programa para realizar un célculo en la computadora. Sin embargo, el hecho de que esté impresa la informacién del programa no es garantia que esas respuestas sean las correc tas. En consecuencia, volveremos a los aspectos relacionados con la fiabilidad del pro- grama y haremos hincapié en lo relacionado con la importancia del proceso de desarrollo de dicho programa. Ya que estaremos resolviendo problemas de ingenieria, mucho de nuestro trabajo serd empleado directa 0 indirectamente por clientes y patrocinadores. Por esta razén, es esencial que nuestros programas sean confiables —esto es, que hagan lo que se supone deben hacer—. A lo mejor, la falta de confiabilidad puede ponernos en un aprieto. En el peor de los casos, para los problemas de ingenieria que incluyen la seguridad piblica, esto seria una tragedia. 2.5.1 Errores o “basura” Durante la preparacién y ejecucién de un programa de cualquier magnitud, es probable que haya errores, En ocasiones, a estos errores se les Hama basura en la jerga de Ia computueién, Bate término fue _. COMPUTADORAS Y PROGRAMAS Seudocédigo Fortran 90 ANSI C ‘Visual BASIC al Ciclo egico pret intermedi 0 00 white () ¢ 00 Tarea ana/2. ana/2s anal. IF Condicién EXIT Fac.) eT ¥ (acl) break: If (ac) eat Tarea aas/s wars: a= as, END DO END 00 Loop | Ciclo de conieo contolodo 20; = Inicio, Final, Faso 004 = 1,10,2 For(intsi0) THEN avgrd = sum/count ELSE averd = 0 END IF END. float avegrd O; printt ("Bf\n", avegrd()): } float avegrd () t intcount: float sum, ave, grades count = 0; sum = 0.0; scant ("i + Agrade); wntte (LD) ¢ if (grade < 0.0) breaks sun = sum + grade: count ++ scanf (“Bf", &grade)s d tf (count > 0) ¢ ave = sum/count; d else C ave = 0. d return (ave); ado y esttucturado, b Fortran 90 y ¢) ANSI C. Todas los n notablemenie en cuanto a la claridad de los términos, tico. Asi, nuestro programa podria estar trabajando aparentemente bien en el sentido de ejecutar y generar resultados. Sin embargo, los resultados serén incorrectos. Todo lo relacionado con estos cuatro tipos de error debe ser erradicado antes de emplear el programa para aplicaciones a ingenieria. Dividimos el proceso de control de calidad en dos categorias: depuracién y prueba. Como ya se mencioné, la depuracién implica corregir los errores detectados. En contraste, la prueba es un proceso que intenta det tar los errores que se desconocen. Adicionalmente a la prueba, también hay que determinar si el programa cumple con las necesidades para las que fue disefiado. Aceste respecto haremos algunas aclaraciones: depuracién y prueba estan interre- Jacionadas y a menudo se presentan una tras otra. Por ejemplo, podrlamos depurar un ‘médulo al eliminar los errores obvios. Luego, después de una prue podriamon descu- COMPUTADORAS Y PROGRAMAS briralguna basura adicional que necesitara eorreceidn, Hay que repetir estos dos proce- sos hasta que estemos convencidos de que el programa es absolutamente confiable 2.5.2. Depuracién Como ya se dijo, la depuracién es para corregir errares conocidos. Hay tres caminos por los cuales serd posible advertir esos errores. Primero, se puede establecer un diagnést co explicito con la localizacién exacta y Ja naturaleza del error. Segundo, el diagndstico puede establecerse, pero la localizacién exacta del error podria no ser clara. Por ejemplo, a computadora puede indicar que ha ocurrido wn errror en la tinea donde hay una gran ecuacién, incluyendo algunas funciones definidas por el usuario, Este error podria de- berse a un error de sintaxis en Ta ecuacién, o ser consecuencia de errores en la declara- cién al definir la funcién, Tercero, no hay diagndsticos pero el programa no corre de ‘manera adecuada. Esto se debe por lo comiin a errores ldgicos, como los ciclos infinitos, © @ errores matemiéticos que no tienen error de sintaxis, En el primer tipo de error, las correcciones son sencillas. Sin embargo, en los otros dos casos, hay que hacer alguna labor detectivesca para identificarlos y localizarlos con exactitud. Por desgracia, la analogia con ei trabajo de un detective es del todo acertada. Es decir, encontrar esos errores es a menudo dificil e implica mucho “trabajo de pie”, re- uniendo pistas y yendo por un callején sin salida, En particular, como en la labor detectivesca, no existe una metodologia clara, Sin embargo, existen algunos caminos por seguir para saber cémo hacer eficientes estos pasos. Una clave para identificar la basura consiste en hacer impresiones intermedias de resultados. Con esta aproximacién, a menudo es posible determinar en qué punto esta ‘mal el calculo. En forma similar, el uso de una aproximacién modular nos ayudar a localizar el error por este camino. Usted podria poner diferentes declaraciones de salida al principio de cada médulo y, por esta via, enfocarse al médulo donde ocurrié el error Ademés, siempre es bueno depurar (y probar) cada médulo por separado antes de inte- grarlo a todo el paquete. Hay que hacer notar que muchos ambientes de programacion inclayen la construccién de herramientas para facilitar la busqueda, Ademas de los procedimientos anteriores, algunas veces la tnica opeidn sera | cédigo linea por linea siguiendo ef flujo logico y el resultado de todos los caleulo: \épiz, papel y calculadora: exactamente como un detective que en ocasiones se debe poner en el papel del criminal para resolver el caso. Algunas veces se tendri que pensar como una computadora para depurar el programa. Finalmente, no podemos dejar de subrayar que “una onza de prevencidn es mejor ‘que una libra de curacién”. Es decir, sondear el diseiio pretiminar de un programa y las técnicas de programacién estructurada son grandes caminos para evitar errores en un primer momento. Como en muchos ottos aspectos de su vida, dentro de poco usted adoptara la filosofia de “pagar ahora y no después”, desgracias que usted podré experi- mentar como programador de computacidn, 2.5.3 Prueba Uno de los mas grandes errores de un programador novato es la creencia de que, si un programa corre e imprime resultados, es correcto. Un peligro peculiar son estos casos en {que los resulindos parecen *razonables”, pero de hecho son incorrectos, Para asegurarse . _ 2.6 _DOCUMENTACION Y MANTENIMIENTO. a dde que esto no vaa ocurtir, el programa debe estar sujeto a una serie de pruebas donde In respuesta correcta se conozca de antemano. ‘Como se mencioné en a seccién anterior, es una buena prictica depurar y probarlos médulos en general antes de integrarlos a la fotalidad del programa. Asi, por lo general las pruebas se realizan en varias fases. Hay pruebas de médulos, pruebas de pruebas del sistema en conjunto y pruebas de operaciones. 1 Pruebas de médulos. Como su nombre lo indica, tratan sobre la fiabilidad de los ‘médulos en forma individual. En vista de que cada uno esta disefiado para realizar una tarea especifica, una funcién bien definida, los médulos se pueden correr en forma ais- Jada para determinar que su ejecucién sea la correcta, Se puede elaborar una muestra de entrada de datos donde la salida correcta sea conocida. Estos datos pueden usarse al correr cada médulo y luego compararse con los resultados conocidos para verificar el desempefio correcto. Pruebas de desarrollo, Se llevan a cabo cuando los médulos estén integrados al programa total, Es decir, se presenta una prueba después de que se ha integrado cada uno de los médulos. Una manera eficaz de hacer esto es con una aproximacién de top-down ‘que comienza con el primer médulo y sigue en forma progresiva hacia abajo durante la ejecucién del programa. Al realizar una prueba después de que se ha incorporado cada tuno de los médulos, los problemas pueden ser aislados con mayor facilidad porque usual- mente Jos nuevos errores se atribuyen al médulo que se afiadié al dltimo. Después de que se ha ensamblado el programa total, puede estar sujeto a una serie de pruebas totales del sistema. Esto se deberia planear para probar el programa con 1) datos tipicos, 2) datos poco comunes pero vilidos, 3) datos incorrectos con el fin de corroborar la capacidad del programa para manejar los errores, Todas las pruebas anteriores son frecuentemente Ilamadas pruebas-alpha, Una vez ‘que resultan exitosas, ustalmente se inicia la fase de las pruebas operacionales 0 beta. Estas pruebas se realizan para corroborar qué tan realista es el ambiente en que se pre- senta el programa. Una forma comin de hacerlo consiste en que algunas personas (inclu- yendo al tiltimo usuario) pongan en operacién el programa. Algunas veces, las pruebas de operacién descubren la basura y, ademis, proporcionan informacién sobre la manera fen que se puede perfeccionar el programa, de modo que se conozcan mas de cerca las necesidades del usuario. Si bien el objetivo tiltimo de los procesos de prueba es asegurar que los programas estén libres de error, habri casos complicados en que sea imposible subordinar un pro- 5 grama a una probable contingencia. Asimismo, se deberé admitir que el nivel de las pruebas dependera de la importancia y Ia magnitud del contexto del problema por el cual se est aplicando el programa, Es obvio que se deberin aplicar distintos niveles de rigor al probar un programa para determinar los promedios de un equipo de softbol, en com- paracién con otro programa que regula la operacién de un reactor nuclear o una estacién espacial. Sin embargo, en cada caso se debe realizar la prueba apropiada que sea consis- tente con el contexto del problema en particular. oracién, 2.6 DOCUMENTACION Y MANTENIMIENTO 2.6.1 Documentacién ‘Una vez que el programa se ha depurado y probado, debe documentarse. La dogumenta- q cidn es la descripcidn, en espafiol, que permite al usuario utilizar el programa en forma ee 1 més sencilla, Recuerde que, como las olras personas que emplean su programa, usted es un “usuario”. Aunque el programa se puede ver con claridad y sencillez cuando se aplica por primera vez, con el tiempo ese mismo cédigo se puede desordenar. Por lo tanto, se debe incluir la documentacién adecuada para que usted 0 cualquier usuario entiendan inmediatamente el programa y la manera en que se debe aplicar. Esta tarea presenta dos aspectos, la parte interna y la parte externa. Documentacién interna. Imagine, por el momento, un texto con puras palabras y sin péirrafos, subtitulos 0 capitulos. Resultaria muy complicado estudiar en un libro asi. El ‘modo en que estén estructuradas las paginas —es decir, todos los dispositivos que actiian para separar y organizar el material—hace que un texto sea mas eficiente y atractivo. En ese sentido, la documentacién interna det cédigo de la computadora puede mejorar sustancialmente el programa para que el usuario pueda entenderlo y sepa emo trabaja, Las siguientes son algunas sugerencias generales para documentar internamente los programas: 1. _Incluya en el médulo, al principio del programa, el titulo, nombre y fecha de éste, Es decir, su firma, el sello del programa y Ia manera en que trabaja. 2, Incluya un segundo médulo para definir cada una de las variables clave. 3. Elija nombres variables que reflejen el tipo de informacién que las variables estén guardando, 4, Inserte espacios entre las declaraciones para hacer mas fécil su lectura 5. Acostumbre hacer abundantes comentarios a lo largo del programa para agregar explicaciones y saltarse lineas con el fin de etiquetar, dar claridad y separar los, médulos. En particular, haga comentarios para etiquetar y hacer resaltar todos los médulos. 7. Use indentacién para clarificar la estructura del programa; en especial la indentacién puede usarse para los ciclos y las conclusiones. Documentacién externa. Se refierea las instrucciones en forma de mensajes de salida « impresién suplementaria, Estos mensajes se presentan cuando el programa corre y se piensa en realizar una salida atractiva o amigable al usuario. Esto implica el uso efectivo de espacios, lineas en blanco o caracteres especiales para ilustrar la secuencia légica y la estructura de la salida del programa. Una salida atractiva simplifica Ia detecci6n de erro- res y resalta la comunicacién de los resultados del programa. Finalmente, el programa puede ser ideado para dar salida a los mensajes descriptivos de error, alertar ¢ informar al usuario sobre posibles problemas. La cuestién de una impresién suplementaria puede ir desde una simple hoja hasta un manual de usuario. El manual de usuario para la computadora ejemplifica lo que es una completa documentacién, Este manual dice como correr el sistema en la computadora y los programas de disco operativo. Cuando desarrollamos nuestros programas, podemos encontrar itil elaborar un breve “manual de usuario” que proporcione una descripcién instrucciones del programa. 2.6.2. Memoria y mantenimiento Recuerde que cuando apague su computadora, sus archivos actives pueden desteuirse ara conservar un programa que va a usar mis tarde, debe transferirlo a un dispositivo de ‘memoria secundaria, como un disco una cinta, antes de apagar la maquina. 27 2.7 _ESTRATEGIA DE PROGRAMACION, 51 Aparte del acto fisico de conservar tn programa, la memoria y el mantenimiento consisten en dos grandes tareas: 1) actualizar el programa en funcién de la experiencia, y 2) asegurar que el programa esté en una memoria segura. Lo anterior es materia de comunicacién con el usuario para que en forma respetuosa considere estas sugerencias para un mejoramiento de sus disefios. La pregunta de la memoria de seguridad de los programas es especialmente critica durante la aplicacién. Deberia crear siempre una copia de respaldo antes de hacer mayores cambios al cédigo. También, es imperativo ‘mantener un respaldo en dispositivos externos, como un diskette. ESTRATEGIA DE PROGRAMACION Uno de los primeros objetivos al usar este libro debe ser el desarrollo de una libreria de ‘métodos numéricos, Sie tiene en mente construir pequefios macros o grandes y compli- cados programas de computadora, dicha librerfa tendré un inmenso valor en el futuro académico y el producto profesional. Sera necesario hacer diversos arreglos en los me- dios de la computacién para lograr este objetivo, lo cual incluye el seudocédigo y los programas, El seudocédigo y otras descripciones de los algoritmos se proporcionan, por mu- chos métodos, en este libro, Si se les usa como base para sus programas, esto puede aumentar su capacidad para comprender los métodos numéricos, ‘Ademis de Ia propia coleccién de programas del usuario, se ha desarrollado un software genérico llamado Métedos Numéricos Toolkit, que se emplea junto con este libro. El paquete inchuye médulos dedicados a cinco de los métodos numéricos funda- ‘mentales (tabla 2.1). Cada programa de métodos numéricos es totalmente ilustrado con un ejemplo, a propésito de cada capitulo del libro. Los ejemplos pueden proporcionar modelos para el disefio de pantallas de entrada y salida, incluyendo una muestra gréfica de resultados. Los ejercicios para resolver en casa se incluyen en los capftulos pertinen- tes para reforzar la capacidad de usar el disco en su computadora. Adems, el programa puede usarse para corroborar la precision de sus propios programas, TABLA 2.1 Los programas en versién WINDOWS del paquete de métodos numéricos TOOLKIT. yociones Determine las races reales de una simple ecuacién algebroica o troscendente medionte el méiedo de biseccién, Puede también ser usoda parc hacer grélicas de funciones. Sistemas de ecuaciones Resvehe o encuentra fa inversa de hasta 20 ecuocioneslineles lneoles elgebreicos” clgebraicas mediante la descomposicién LU implontada en fa eliminacién goussiona Aus de curvas* Asta los dots a una regresién polinomial hasta de décimo orden y coractriza exodisicamente la edecuacién del ojuse Integracisn® iniegro funcones 0 datos tabulados espaciados en forma desigual con el mélodo del ropecio. Sistemas de eevociones Resueive hasta cinco ecvocionesdiferencioles oinarios diferercoles ordinarios* slnuitineas usando el métado de Runge «Kuta de cuato orden. “indica un maoramlano comporedo con la vein enero dl DOS. 52 EJEMPLO 2.1 COMPUTADORAS ¥ PROGRAMAS Instalacién y uso del paquete TOOLKIT de métodos numéricos en su computadora Enunciado del problema. El propésito de este ejemplo es usar el programa ineluido en el texto (TOOLKIT de métodos numéricos), Solucién, Correr el programa install.exe que viene en el disco incluido en el texto y comenzar con el TOOLKIT. En la pantalla debe aparecer el ment principal del TOOLKIT, como se muestra en la figura 2.16a. Primero, observe el renglén con cinco botones de control en la parte baja del ment, E] botén About (acerca de) describe al programa y da crédito a los autores del programa, Oprima este botén y luego oprima OK. El botén Hlelp (ayuda) tiene cinco mensajes en secuencia, que recuerdan ciertas convenciones, y las caracteristicas de diseiio de TOOLKIT. El primer mensaje de ayuda describe las funcio- nes del usuario reconocidas por el programa, Estas ineluyen las funciones trigonométricas basicas y funciones exponenciales. Tome en cuenta que los argumentos de las funciones trigonomeétricas son expresadas en radianes y no en grados. Cuando use el TOOLKIT el seno de 90 grados debe ser escrito SIN(2*pi*90/360) o SIN (pi/2) 0 SIN(1.57). El segun- do mensaje de ayuda describe como generar las grificas por medio del paquete TOOLKIT Se necesitan cuatro pardmetros para construir una grifica, Estos son los valores mini- mos de X y Y, y el intervalo entre las marcas para X’y Y. Estin siempre los intervalos de 10 Delta X y 10 Delta ¥ en un diagrama, de manera que los valores mximos de X y ¥ son Xmin + 10 Delta X yYmin + 10 Delta Y. Esta convencién le permitiré ctear grafi- cas a su gusto. El tercer mensaje de ayuda explica en qué consiste el botén rojo de advertencia empleado por TOOLKIT. Como usted veri, TOOLKIT esté diseiiado para ‘mostrar todas las entradas, asi como los resultados numéricos y grificos para cada méto- do en una simple pantalla, lo cual permitiré que usted vea, con una simple mirada, todos, los aspectos de un problema en particular. Sin embargo, suponga que quiere dibujar la funeién ¥(X) con un rango de“0.a 10” de X y¥. Al inspeccionar la grifica usted decidira si esnecesario cambiar el rango de Y de “02 10” a “0 a 20°. Cuando cambie el valor de 10a 20 en la tabla de datos, usted notaré que el botén de grifica cambia del negro al rojo. Esta llamada de atencién indica que la grafiea debe actualizarse para reflejar el nuevo rango de 20. Al apretar el botén rojo de Grafica éste cambiar a negro, seftalando que la grifica y los parametros de entrada son consistentes. Asi, cuando use el programa sobre una base interactiva, asegiirese de que no haya botones rojos cuando vaya a guardar los resultados finales. El cuarto mensaje de ayuda seitala cémo los calculos del TOOLKIT se pueden salvar y recuperar como archivos con la extensién “nt”. Asi, si se emplea él TOOLKIT como ayuda para resolver una tarea relacionada con un curso de ingenieria ‘mecdnica, podria ponerle a su archivo el nombre de MEPROB4.nmt. El quinto mensaje de ayuda advierte que las funciones de impresin de TOOLKIT podrian no ser las ade- cuadas para trabajar con algunas configuraciones de la red, Los botones de Open (abrit) y Save (salvar) son como las clasicas ventanas de Windows, que permiten nombrar, almacenar y volver a amar los archivos que fueron elegidos. Cualquier anilisis realizado con el TOOLKIT se puede perder al salir, a menos que use el botén de Save para guardar. A continuacién, observe los cinco grandes botones en el lado izquierdo del ment principal. Estos botones tienen nombres, figuras y simbolos matematicos para recordar Jas funciones de los métodos numéricos. Hay que explorar el programa entre cada uno de esos botones en las secciones apropiadas del texto, 2:7 ESTRATEGIA DE PROGRAMACION St" _ FIGURA 2.16 €} Tiulo en pantalla del programa de métodos numéricas TOOXKIT, bj Pantlla de la localizacién de la raiz mostrando los aiéticas de lo velocidad de caida del parocoidista fecuacién [1.10] | Por ahora usaremos el Find Root o biisqueda de raices (botén superior) del progra- | ma para dibujar la velocidad de descenso del paracaidista como una funcién del tiempo. | Al oprimir el botén de Find Root, la pantalla mostrar un patrén similar al de la figura | 2.168, La pantalla tiene cinco partes principales: una tabla con los parimetros de entra- | da, una ventana para las funciones de entrada, una ventana para gréficas, una tabla de resultados y una barra que contiene los botones de control. Hay que hacer caso omiso de Ia capacidad del programa para encontrar raices, hasta la parte dos, y simplemente use él programa para graficar la ecuacién (1.10) con m = 68.1 kg, ¢ = 12.5 kgisy g = 9.8 Ocon Delta X = 1.5 Hay que hacer la prueba con varios valores para los pardmetros de Ia mvs? La figura 2.16c muestra los resultados para Xmin y Ymit y Delta Y = ~-G CONBUTABORAS Y PROGRAMAS _ gréfica, incluyendo negativos en Xmin y Ymin para familiarizarse con las operaciones y el disefto de la grifica, Nétese que el botn Plot es rojo cuando la grafica necesita actua- lizarse (por ejemplo, la grafica que se muestra en la pantalla y los parémetros de la agrifica son inconsistentes). Experimente con el botdn Clear (limpiar) como una opcién para cambiar los pardmetros de entrada y las funciones de las ventanas. También oprima el botén Notes (Notas). Aparecerd una ventana que se podra usar para escribir notas relacionadas con el trabajo. Podri guardar y llamar estas notas cuando use los botones de Save y Open del ment principal. Finalmente, use el boton Print (imprimir) para generar una copia de la grifica y la funcién y los parémetros de datos. Recuerde que esto no podrd trabajar con algunas impresoras en red, Puede usar esta copia para hacer un infor- ‘me sobre un cliente, 0 como parte de la tarea asignada, La habilidad del TOOLKIT para crear grificas tiene tantos usos como el usuario se proponga como meta para entender y aplicar los métodos numeéricos y los célculos para resolver problemas de ingenieria, Investigaremos estas utilidades tanto como otras ¢2- pacidades del TOOLKIT en las secciones apropiadas del texto 2.7.1 Paquetes y librerias Alo largo de este libro, se hard un esfuerzo por describit cémo poner en operacién los métodos numéricos mediante programas y librerias. Los primeros hacen referencia a Mathcad, Excel y MATLAB, las iltimas a la librerfa IMSL. A continuacién, se da una pequefia descripeién de cada uno. Mathcad. Mathcad es el producto estrella de MathSoff, Inc. Bl paquete de software es un puente que une a quienes gustan de las hojas de célculo como Excel y garabatear en un block, lo que da como resultado una hoja de trabajo interactiva que permite al usuario realizar tareas de matemiéticas, obtener datos de primera mano y elaborar gréficas pro- pias de la ciencia y la ingenieria, La informacién y tas ecuaciones son los datos para la oja de trabajo, es como si se trabajara con papel y lapiz més que con un lenguaje de programacién 0 con notacién de hoja de célculo, La primera versién del Mathcad fue presentada en 1986, y la séptima en 1997. EI Mathcad puede realizar tareas tanto en modo numérico como en modo simbélico. En el modo numérico, las funciones del Mathcad y los operadores dan una respuesta ‘numérica, mientras que en el modo simbolico los resultados se dan como expresiones generales 0 ecuaciones. Maple V, un paquete de mateméticas de tipo simbélico, es la ‘base del modo simbélico y fue incorporado al Mathcad en 1993. El Mathcad tiene varias funciones y operaciones que permiten Hevar a cabo, en forma conveniente, muchos de los métodos numéricos desarrollados en este libro. Tales métodos se describiran en detalle en los siguientes capitulos, En virtud de que es facil de usar, ereemos que el Mathcad es particularmente til como herramienta pedagégica. Excel. Es una hoja de célculo producida por Microsoft, Inc., cuyo tipo especial de software matemitico permite al usuario dar y realizar célculos en renglones y columnas de datos. Por ello, hay una version computarizada de una hoja de trabajo de grandes cuentas, en la que se pueden realizar y destacar grandes calculos conectados entre si Debido a que se puede actuatizar cuando se cambia cualquier nimero en la hoja, Ia hoja de célculo es ideal para tipos de anilisis ";qué sucederia si. PROBLEMAS PROBLEMAS Excel tiene algunas capacidades numéricas inherentes, incluida la solucion de ecua- ciones, el ajuste de curvas y la optimizacién, También incluye el Visual BASIC como un macro lenguaje que puede usarse para implementar célculos numéricos. Tiene, asimis- mo, varias herramientas de visualizacién (grdficas de superficies en tercera dimensién) que son como valiosos aditamentos para el andlisis numérico. MATLAB, MATLAB es un software producido por Mathworks, Inc., empresa estable~ cida por los analistas numéricos Cleve Moler y John N. Little. Como su nombre lo indi- ca, MATLAB fue desarrollado en principio como un laboratorio de matrices. Hoy en dia, el principal elemento del MATLAB siguen siendo tas matrices. La manipulacién matemitica de las matrices esté perfectamente realizada en un ambiente interactivo, de uso fécil. Para esas manipulaciones de matrices, MATLAB tiene, ademis, varias funcio- nes matematicas, céleulos simbélicos y herramientas de visualizacién. Como consecue cia, la presente versién representa un ambiente técnico de célculo. MATLAB tiene varias funcionesy operaciones que permiten realizar, de manera ade- ccuada, muchos de los métodos numéricos empleados en este libro, los cuales seran descri- tosen los siguientes capitulos. Ademis, los programas pueden serescritos como argumentos y funciones, y los M—archivos pueden usarse para realizar célculos numéricos. IMSL. EI IMSL (International Mathematical and Statistical Library, Inc.) consiste de tres librerias —separadas pero coordinadas— de subrutinas y funciones de Fortran: el MATH (por lo general, aplicado en matemiticas), el STAT (estadisticas) y las librerias SFUN (funciones especiales). Este libro se enfoca en la libreria MATH, la cual contiene ‘mas de 700 subprogramas que abarcan todas las areas numéricas consideradas. La ma- yoria esté disponible en versiones de precisién sencilla y doble. Por ello, constituye una inmensa capacidad para el andlisis numérico. Aunque las rutinas en si son escritas en Fortran, se puede tener acceso a ellas mediante otros lenguajes como el C. Se debe observar que en la mayoria de las aplicaciones en Mathcad, Excel y MATLAB se hard énfasis en las funciones numéricas que les son inherentes (por ejemplo, manipu- lacién de matrices, regresién, solucién de ecuaciones). Sin embargo, se debe tener en ‘cuenta que nuestros seudocédigos pueden ser facilmente traducidos en programas macto para implementarlos directamente en esos ambientes, ee 24 Indique y defina cinco pasos en fa produccién de progra- ‘mas de alta calidad, 22 Defina en qué consiste el disefo top-down, el disco mo- dular y la programacidn estructurada, 2.3. Escriba en seudocédigo el diagrama de flujo realizado en la figura P2.3. Asegirese de hacer una indentacin apropiada para que la estructura sea clara 24 El valor para la concentracién de contaminacién de un lago esti registrado en un grupo de cartas. Una de ellas est etiqueta- dda como “fin de datos” y esti colocada al final de cada grupo. ‘seriba un algoritmo que determine la suma y et promedio de esos valores. 25. Bserba un diagrama de fujoestrcturad paral problema 24, 2.6 Escrba un algortmo que imprima las raice (a sea real 0 compleja) de una ecuacion cuadrética ax + be + = 0. donde 4, By e son coeficientes reales, Desarrolle su algortmo, deta forma que corsidere todas las posibles contingencas que pue- dan ocurir durante el culo, 2.7 Desarrolle un diagrama de flujo estracturado para el Pro- biema 2.6 28 Excriba en seudocéeigo cl problema 2.6 29 Desarrolle, depure documente un subprograma pera el problema 2.6 nun lengua de alto nivel «cn un lnguaje muero nee cet FIGURA P2.3 de sueleccién, Use una subrutina para calcular las races. Reali= ce cortidas de prucha para los siguientes casos: a) a= 1,b = 5, c= %b)a=0,b = —3,0=1.5;c)a = 1,b=25,¢ 2.10 La funeién seno puede evaluarse con las siguientes series infinitas: senx=x- 4 31 ale Escriba un algoritmo de esta formula, de manera que calcule & Jmprima los valores de sen x, donde se agregacada término de la serie, En otras palabras, calcule ¢ imprima la secuencia de valo- res para, senx = = ‘st hhasta el orden de término de su eleccitn. Para cada uno de ellos, caloule e imprima el error relative porcentual como verdadero — serie aproximada % error = Lx 100% verdadero _COMPUTADORAS ¥ PROGRAMAS 2.11 Desarrolle un diagrama de Ayjo estrueturado para el Pro- blema 2.10. 2.12 Escriba un seudoeddigo para el problema 2.10. 2.13 Formule, depure y documente un subprograma para el Pro- bblema 2.10 en un Jenguaje de alto nivel o en un Tenguaje macro de su eleccion. Emplee las funciones de tibreria para la funcién sen, con el fin de determinar el valor verdadero. Haga que el programa imprima Ia aproximacion de las series y el error en cada etapa. A manera de prueba, emplee el programa paracaleu- lar ta funcién seno de 1.5, incluyendo el término superior a 15/151 Interprete los resultados. 2.14 El siguiente algoritmo esti disefiado para determinar la ca- lificacién de un curso que consiste en pruchas,tareas y examen final Paso }; Datos de entrada al curso, niimero y nombre. Paso 2; Datos de entrada, factores de peso para pruebas (WQ), tareas (WH) y examen final (WF). Paso 3: Datos de entrada, calificacién de las prucbas y céleulo del promedio de las pruebas (AQ). Entrada de datos calificaciones de las tareas y cilculo del promedio de las calificaciones de las tareas (AH). Paso 5: Si el curso tiene una calificacién final, continde con el paso 6; si no, salte al paso 9. Paso 6; Datosde entrada de lacalificacién del examen final (FE). Paso 7: Determinar la calificacién promedio AG, segin a formulas WQ x AQ + WH x AH + WE FE WQ+WH+ WE AG= Paso 8: Vaya al paso 10. Paso 9: Determine la calificacién promedio AG, s formula WQ AQ +WH AH ~~ Wot WH AG= Paso 10; Imprima niimero de curso, nombre y calificactin pro- medio. Paso 11: Termina el cdlculo, Escriba, depure y documente un programa estructurado de compu tacion, basadoen estealgoritmo. Péngalo a prueba con lossiguien- tes datos para calcular la calificacién con y sin el examen final: WOQ = 30; WH = 30; WF = 40; pruebas = 98, 95, 90, 60, 99; tareas = 95, 90, 86, 100, 100, 77, y examen final = 91 2.15 Una cantidad de dinero P se invierte en una cuenta donde el interés se calcuta al final del periodo. El valor futuro F de rendi- miento con una tasa de interés i después de m periodos puede ser ddeterminado por la siguiente formula: F= Pasi PROBLEMAS Escriba un subprogrma que caleule el endimiento fturo de ona inversin en un lenguaje de alto nivel nen untengaje macro desu elecciGn. Los datos de entrada debeninclurelrendimien- tonic Pata de interés 1 (com uiecimal el nimero de aos para el cual secteur el valor uur La salida tambien debe ineluiresos valores, asi como de una tabla formateada valor ftro para cada abo, icluyendo el enésio ano. Cora el programa para P = $100 000, = 0.08, yn = 25 aos 216En Ia figura P2.16 se muesra el reveso de una hoja de estado Je cuenta de cheques. EI baneo ha elaborado esta hoja paraayudaral usuario enel balance de una cuenta de cheques. i lie un algortmo, paso a paso en forma similar ala figura 2.62) para cumpii la misma tate, 2.17 Eseribaun diagram de flujo estructura para el problema 216 2.18 Desarlle, depure y documene un subprograma para e Problema 2.16.n un lengusje de alto velo en un engualemacro desueleccién, La prc se verifiard duplicando los resultados mostrdos en la figura P2.16 37 2.19 Desarrolle, depure y documente un subprograma para de- ‘erminar las estadisticas de su deporte favorito en un lenguaje de alto nivel o en un Lenguaje macro de su eleccin. Seleccione en- tre el futbol, correr o el boliche. Si prefiere hacer deporte en ‘eriores, elabore un subprograma para su equipo. Diseiie el programa de manera que resulte accesible, y proporcione infor- smacién valiosa e interesante para cualquier persona (el entrena- dor o algiin jugador), Ia cual podria usarla para evaluar rendi- rmiento de fos atetas 2.20! promedio diario de la temperatura para una determinada frea puede calcularse por la siguiente funcién: T= Taesin + (Tpico ~ Trae) ©08 ( (F ~ Fico] donde Tygpedio = € promedio de temperaturaanual,Tygg = tem peratura pico, «@ = la frecuencia de la variacion antl (= 2n/ 365) ¥ pico = Numero de dias a la temperatura pico (= 20S d). En a tabla P2,20 se enlistan los parimetros de algunas poblacio- nes de Estados Unidos. FIGURA P2.16 CHEQUES POR COBRAR No CARGADOS "ALESTADO OE CUENIA NO _[S— #5_| B00 | 8 3168 460) 149. 461 15000 48 wl74_| 464 92 485 +15 486 $000 TOTAL sALDo Nuevo s COO SE MUESTRA EN ESTE ESTADO OE CUENTA DEPOSIIOS GUE NO ESTAVEN ESTE ESTADO De CUENTA > nesta TAL DE CHEQUES POR COBRAR ‘SALDO DEL TALONARIO s 600.52 DESPUES DF RESTAR LACARGADE SERVICO DEL MES ACTUAL Y GUVAR LOS INTERESES OEVENGADOS (60LO LAS CUENTAS 58 COMPUTADORAS Y PROGRAMAS TABLA P2.20 Parémetros de Is temperatura media del aire para olgunas localidades de Estados Unidos. Civded Trneta (°C) Toe °C) Miomi, FL 22. 28.3 Yoo, AZ 23.1 336 Bismarck, ND 52 1 Seotle, WA 106 76 Boston, MA 107 29 Desarrolle un subprograma en lenguaje de alto nivel o en un len- guaje macro de sueleccién para calcular el promedio de tempera- tura entre dos dias del aflo, indicados por el usuario. Pruebe a) enero-febrero en Bismarck, Dakota del Norte (# = 0 59), y la temperatura de julio-2gosto en Yuma, Arizona (1 = 180 a 242), 2.21En economia hay formulas disponibles para calcular los pagos anuales debidos a un préstamo. SupOngase que se va a pedir un préstamo de P pesos para pagarlo en pagos anuales con una tasa de interés de i. La formula para caleular el pago anual A es: isi’ ati Eseriba un subprograma en lenguaje de alto nivel o en un len guaje macro de su eleccién para caleular 4. Pruebe con P = 535 000 y con una tasa de interés de 15% (i = 0.15). Elabore el programa de manera que se puedan evaluat tantos valores de m ‘como se desee, Calcule los resultados paran = 1,2, 3,4 5, 2.22 Desarrolle, depure y ponga a prueba un subprograma en enguaje de alto nivel o en un macro lenguaje de su eleceién para, calcular Ta velocidad de caida del paracaidista como se resume enel ejemplo 1.2. Elabore el programa de manera que el usuario pueda ingresar valores para el coeficiente de resistencia y la masa Ponga 2 prueba el programa al duplicar los resultados del ejem- plo 1.2. Repita el célculo pero emplee el tamafio del paso de | a (0,5 s, Compare sus resultados con la solucién analitica obtenida cen el ejemplo 1.1. {Optar por un paso més corto hace que el resultado sea mejor 0 peor? Explique los resultados. 2.23 Use el programa de biseccién en el TOOLKIT para dibujar varias funciones de su eleccién, Haga la prueba con polinomios y funciones trascendentes (por ejemplo, funciones de seno y logaritmos) cuyo comportamiento pueda ser dificil de visualizas en un bosquejo de gréfica. Haga la prueba con funciones que pueden no ser continuas 0 poco usuales. Urtilice varias fnciones para las escalas de x y, para facilitar Ia investigacién. Si cuenta con una impresora, haga copias permanentes de las grificas Aylidese con el programa prucba-beta para seguir Ia salida de cualquier ejemplo que tenga fallas. 2.24 Lea los apéndices relacionados con las capacidades y ope- raciones del paquete itles para los métodos numéricos, Selec- cone uno 0 més paquetes y repita el problema 2.23. 2.28 Intente graficar funciones en forma similar al TOOLKIT, Use su computadora y uilice programas o subrutinas de libreria Si su computadora no tiene esos programas, eseriba su propio cédigo aprovechando las eapacidades de su méquina, Desarrolle este programa en forma de subrutinas y guérdelo en un disco magnético. Tenga preparada la actualizacién de este programa para aplicarlo varios problemas que se presentan en otras par- tes del libro. CAPITULO 3 Aproximaciones y errores de redondeo Debido a que la mayor parte de los métodos expuestos en este libro son muy claros en su descripcién y en sus aplicaciones, resulta tentador en este momento ir directamente al cuerpo principal del texto y averiguar el uso de estas técnicas. Sin embargo, entender el concepto de error es importante para usar en forma efectiva los métodos numéricos; se eligié los dos siguientes capitulos para tratar este t6pico. La importancia de los errores se menciona por primera vez en la discusién de la caida del paracaidista, en el capitulo 1. Recuerde que se determind la velocidad de caida del paracaidista por métodos analiticos y numéricos. Aunque con Ia técnica numérica se obtuvo una aproximacién a la solucion exacta analitica, hubo cierta discrepancia o error, debido a que los métodos numéricos son s6lo una aproximacién, En realidad somos afortunados en este caso porque se dispone de la solucién analitica que permite calcular el error en forma exacta, Pero para muchos problemas de aplicacién en ingenieria no se puede obtener la solucién analitica; por lo tanto, no podems calcular con exactitud los errores asociadios con nuestros métodos numéricos. En esos casos debemos resolver por aproximaciones o estimar los errores. La mayor parte de las técnicas desarrolladas en este libro tienen la caracteristica de poseer errores. En primera instancia esto puede parecer contradictorio, ya que no coinci- de con la imagen que se tiene de una buena ingenieria. Los estudiantes y pasantes de ingenieria luchan constantemente para limitar este tipo de crrores en sus trabajos. Cuan- do hacen un examen o realizan tateas, son sancionados, mas no premiados pot sus etro- res. En la prictica profesional los errores pueden resultar costosos y en algunas ocasiones catastrdficos. Se puede perder hasta Ta vida si una estructura o un dispositivo Hega a fallar. ‘Aunque la perfeccién es una meta digna de alabarse, ¢s dificil, si no imposible, alcanzarla, Por ejemplo, a pesar de que el modelo obtenido mediante la segunda ley de Newton es una aproximacién excelente, en la prictica jamés predecird con exactitud la caida del paracaidista, Algunos fenémenos tales como Ia velocidad del viento y alguna pequefia variacién de la resistencia del aire desviarian la prediccién. Si estas desviacio- nes se comportan en forma sistemitica, ya sea subiendo o bajando, bastard con formular un nuevo modelo. Sin embargo, si su distribucién es aleatoria pero se agrupa muy proxi- ‘ma alrededor de la prediccién, entonces las desviaciones pueden calificarse como insig- nificantes y el modelo nuevamente se consideraré adecuado. Las aproximaciones numéricas también introducen errores similares en el andlisis. De nuevo la pregunta es qué tanto error se presenta en los célculos y qué tan tolerable es? Este capitulo y el siguiente cubren varios aspectos que identifienn, cunntifiean y minimizan estos errores. En las primeras secciones de este cupltulo xe revina la informa 3.1 APROXIMACIONES Y ERRORES DE REDONDEO. cidn referente a la cuantificacién de los errores. En seguida, se estudia uno de los dos errores mis comunes: errores de redondeo. Los errores de redondeo se deben a que la computadora sélo puede representar cantidades con un ntimeto finito de digitos. En el siguiente capitulo nos ocuparemos de otra clase mayor: error de truncamiento, Los erro- ves de truncamiento representan la diferencia entre una formulacién matemética exacta de un problema y la aproximacién dada por un método numérico. Finalmente, se discute los errores sin relacionarlos con ningiin método numérico en especial; errores por equi- vocacién, errores en la formulacién de modetos y la incertidumbre en Ia obtencidn de datos, entre otros. CIFRAS SIG! “ATIVAS En este libro se trata en forma extensa con aproximaciones que se relacionan con el manejo de mimeros. En consecuencia, antes de discutir los errores asociados con los métodos numéricos, es titi repasar algunos conceptos bisicos referentes a Ia representa- cin aproximada de los nimeros mismnos. Cuando se emplea un niimero en un cilculo, debe haber seguridad de que pueda usarse con confianza, Por ejemplo, la figura 3.1 muestra un velocimetro y el odémetro (contador de kitometraje) de un automévil. Con un simple vistazo al velocimetro puede verse que el automévil viaja a una velocidad comprendida entre 48 y 49 knv/h, Ya que la flecha estd més alld de la mitad de las marcas del indicador, se puede asegurar que el automévil viaja aproximadamente a 49 kath, Tenemos confianza en este resultado, ya que dos o mas lecturas individuales al indicador levan a la misma conclusidn. S argo, suponga que se desea obtener una cifra decimal mas en la estimacién de la velo- cidad. En este caso, alguien puede decir 48.8, mientras que otro podri decir 48.9 krrvh. FIGURA 3.1 El velocimeto y el odémetto de un auloménit i 3.1" CTFRAS SIGNIFICATIVAS oro tanto, debido a tos limites del instrumento, tinicamente se puede usar con confian- 2 dos digitos. Las estimaciones del tercer digito (0 més) sélo se pueden calcular en forma somera. Seria ridicuto afirmar, con base en el velocimetro, que ef automévil esta viajando a una velocidad de 48.8642138 km/h, En contraste, el odémetro muestra hasta seis digitos confiables. De la figura 3.1 se puede coneluir que el automévil ha recorrido ‘un poco menos de 87 32: siguientes) se desconocen. El concepto de cifra o digitos signiticativos se ha desarrollado para designar for- malmente la confiabilidad de un valor numérico. Las cifras significativas de un nimero son aquellas que pueden ser usadas en forma confiable. Por ejemplo, el velocimetro y el ‘odémetro de la figura 3.1 estiman hasta tres y siete cifras significativas, respectivamen- te. Para el velocimetto, jos dos digitos seguros son 48, Es convencional estimar el con- Junto de digitos de la mediania de la division de la escala més pequeita de un aparato de 5 km durante su uso. En este caso el séptimo digito (y los medicin. Ast que la lectura del velocimetro consiste de tres cifras significativas: 48.5 En forma similar, el od6metto, al leer 87 324.45, tendri siete ciftas significativas Aunque usualmente éste es un procedimiento sencillo para averiguar las cifras sig- nificativas de un niimero, en algunos casos puede conducir a confusién. Porejemplo, los siempre son cifras significativas, ya que pueden usarse s6lo para ubicar el punto decimal. Los nimeros 0.00001845, 0.0001845 y 0.001845 tienen cuatro cifras significa- tivas. En forma similar, cuando se incluye ceros en nimeros muy grandes, no es claro cudintos Son significativos, si es que los hay. Por ejemplo, en el valor nominal, el ndimero 45 300 puede tener tres, cuatro 0 cinco digitos significativos, dependiendo silos ceros se ‘conocen con exactitud. La incertidumbre se puede desechar usando la notacién cientifi- ca.en donde 4.53 10°, 4.530 x 10%, 4.5300 X 10" muestran que el mimero tiene tres, cuatro y cinco cifias significativas, El concepto de cifras significativas tiene dos implicaciones importantes en el estt- dio de los métodos numéricos. 1, Como se dijo en ef problema de la caida del paracaidista, los métodos numéricos obtienen resultados aproximados. Por lo tanto, se debe desarrollar criterios para especificar qué tan precisos son los resultados obtenidos. Una manera de hacerlo es, en términos de cifras significativas. Por ejemplo, se puede decidir que la aproxima- cidn es aceptable siempre y cuando sea correcta para cuatro cifras significativas 2. Aunque ciertas cantidades tales como x, e, 0 47 representan nimeros especificos, no se pueden expresar exactamente con un némero finito de digitos. Por ejemplo, 3.141592653589793238462643 hasta el infinito. Debido a que las computadoras retienen s6lo un niimero finite de cifras significativas, tales mimeros ja is se podrin representar con exactitud. A la omisién del resto de cifras significativas se le conoce como error de redondieo Los errores de redondeo y el uso de cifras significativas para expresar la exactitud de un niimero se estudian con més detalle en tas siguientes secciones. Adem, en fa siguente seccidn, el concepto de cifras significativas tiene mucha importaneia en ly eleli« sicién y precision APROXIMACIONES Y ERRORES DE REDONDEO EXACTITUD Y PRECISION Los errores asociados con los célculos y medidas se pueden caracterizar observando su exactitud y precisién. La exactitud se refiere a qué tan cercano esti el valor calculado 0 ‘medido con el valor verdadero. La precisién se refiere a qué tan cercano esté un valor individual medido 0 calculado con respect a los otros. Estos conceptos se pueden ilustrar grificamente usando una analogia de una diana de pricticas para tiro. Los agujeros en cada blanco de la figura 3.2 se pueden imaginar como las predicciones en una técnica numérica, mientras que el centro del blanco repre senta la verdad. La inexactitud (conocida también como sesgo) se define como un aleja- iento sistemético de a verdad, Por lo tanto, aunque los disparos en la figura 3.2c estén ‘mis juntos que los de la figura 3.2a, los dos casos son igualmente inexactos, ya que ambos se centran en le esquina superior izquierda del blanco. La imprecisién (también Namada incertidumbre), sobre el otro lado, se refiere a la magnitud del esparcimiento de los disparos. Por lo tanto, aunque las figuras 3.2b y 3.2d son por igual exactas (esto es, igualmente centradas respecto al blanco), la iltima es mis precisa, ya que los disparos estin en un grupo més compacto. Los métodos numéricos deben ser lo suficientemente exactos o sin sesgos para que cumplan los requisitos de un problema particular de ingenieria, También deben ser lo FIGURA 3.2 Un ejemplo de un buen trador usta el concapto de exactid y precisién o) impreciso; b} exocto e impreciso; ¢ inexacto y preciso, d} exacto y prec nexaclo € ‘Aumenta la exactiud ‘Aumenta la precisién 3.3 EJEMPLO 3.1 3.3 _DEFINICIONES DE ERROR 63 suficientemente precisos para el disefio en la ingenieria. En este libro se usa el término error pata representar la inexactitud y la imprecisién de las predicciones. Con estos conceptos como antecedentes, ahora se puede discutir los factores que contribuyen al error en Jos célculos numéricos DEFINICIONES DE ERROR Los errores numéricos se generan con el uso de aproximaciones para representar las operaciones y cantidades matematicas. Estos incluyen errores de truncamiento que re- sultan de representar aproximadamente un procedimiento matemético exacto, y los erro- res de redondeo que se producen cuando los niimeros tienen un limite de cifras, significativas que se usan para representar niimeros exactos. Para los dos tipos de erro- res, Ja relacién entre el resultado exacto o verdadero y el aproximado esti dada por Valor verdadero = aproximacién + error BD Reordenando la ecuacién 3.1 se encuentra que el error numérico es igual ala diferencia entre el valor verdadero y el valor aproximado, esto es salor verdadero ~ aproximacién 2) donde £, se usa para denotar el valor exacto del error. Se incluye el subindice ¢ para denotar que se trata del ertor “verdadero”. Como ya se mencioné brevemente, esto con- trasta con los otros casos, donde se debe emplear una estimacién “aproximada” del error, Un defecto en esta definicién es que no toma en consideracién el orden de magnitud del valor que se esta probando. Por ejemplo, un error de un centimetro es mucho mas significativo si se est midiendo un remache que un puente, Una manera de medir las magnitudes de las cantidades que se estd evaluando es normalizar el error respecto al valor verdadero, como en error verdadero Error relativa fraccional = SMO" Vercacen valor verdadero donde, como ya se dijo en la ecuacién 3.2, error = valor verdadero — valor aproximado, El error relativo también se puede multiplicar por el 100% para expresarlo como error verdadero 100% G3) valor verdadero donde €, denota el error relativo porcentual verdadero. ‘Calculo de errores Enunciado del problema. Supéngase que se tiene que medir la longitud de un puente yy de un remache, obteniéndose 9 999 y 9 em, respectivamente. Si los valores verdaderos son 10.000 y 10 cm, caleilese a) el error vedadero y 6) el error relativo porcentual verdadera de cada caso. _AYRORIVACIONESY ERRORES DE REDONDEO. Solucién: a) Elerror en la medicién det puente es [ecuacién (3.2)} 10.000 ~ 9999 = tem y para el remache es de lem yy para el remache es de +_ 100% = 10% 10 Por lo tanto, aunque ambas medidas tienen un error de 1 cm, el error relativo porcentual del remache es mucho més grande. Se puede concluir que se ha hecho un buen trabajo en la medicién del puente, mientras que la estimacién para el remache deja mucho que desear. Obsérvese que en las ecuaciones (3.2) y (3.3), Ey € tienen un subindice ¢ que signi- fica la normalizaciin del error al valor verdadero. En el ejemplo 3.1 se utiliz6 el valor verdadero, Sin embargo, en Jas situaciones reales es a veces dificil contar con tal infor- macién, Para los métodos numéricos, el valor verdadero sélo se conocera cuando se habla de funciones que se pueden resolver analiticamente. Por lo general éste sera el caso cuando se estudie el comportamiento tedrico de una técnica en particular. Sin embargo, en aplicaciones reales obviamente no se conoce la respuesta verdadera a priori. En estos casos, normalizar el error es una alterativa, usando la mejor estimacién posible del valor verdadero; esto es, para la aproximacién misma como ea error aproximado valor aproximado 100% Ga) donde el subindice a significa que el error est normalizado a un valor aproximado Obsérvese también que en aplicaciones reales la ecuacién (3.2) no se puede usar para calcular el término del error para la ecuacién (3.4). Uno de los retos a que se enfrentan os métodos numéricos es el de determinar estimaciones del error en ausencia de conoci- miento de los valores verdaderos, Por ejemplo, ciertos métodos numéricos usan un méto- do iterativo para calcular resultados. En tales métodos se hace una aproximacién con base en Ia aproximacidn anterior. Este proceso se repite varias veces o de forma iterativa para calcular en forma sucesiva mas y mejores aproximaciones. En tales casos, el error a ‘memudo se calcala como la diferencia entre la aproximacion previa y la actual. Por lo tanto, ef error relativo porcentual esti dado por » EJEMPLO 3.2 3.3_DEFINICIONES DE ERROR _ aproximacion actual ~ aproximacién anterior ‘aproximacion actual 100% (3.5) En capitulos posteriores se explicara con detalle éste y otros métodos para expresar errores. Los signos de las ecuaciones (3.2) hasta la (3.5) pueden ser positivos 0 negativos. Si la aproximacidn es mayor que el valor verdadero (0 Ia aproximacién previa es mayor que la aproximacién actual), el error es negativo; si la aproximacién es menor que el valor verdadero, el error es positivo. También en las ecuaciones (3.3) a la (3.5), el deno- ‘minador puede ser menor de cero, lo que puede llevar a un error negativo. A menudo, cuando se realizan célculos, puede no importar mucho el signo del error, sino més bien que su valor absoluto porcentual sea menor que una tolerancia porcentual prefijada ¢,. Por lo tanto, con frecuencia es itil emplear un valor absoluto de las ecuaciones (3.2) a la (3.5). En tales casos, los cdlculos se repiten hasta que Neal < & 6.6) Si se cumple la relacién anterior, entonces se considera que el resultado obtenido esté dentro del nivel aceptable fijado previamente €,. Obsérvese que en el resto del texto ‘emplearemos exclusivamente valores absolutos cuando se utilicen los errores relatives. Es conveniente relacionar también estos errores con el niimero de cifras significati- vas en la aproximacién, Se puede demostrar (Scarborough, 1966) que si el siguiente criterio se cumple, puede tenerse la seguridad que el resultado es correcto en al menos cifras significativas. 6 = 05x 10-9% 67 Estimacién del error por métodos iterativos Enunciado del problema, En matemiticas a menudo se puede representar las funcio- nnesmedianteuna serieinfinita, Porejemplo, la funcin exponencial se puede calcularusando 4k (32.1) Mientras mas términos se le agregue a la serie, la aproximacién se acercara cada vez mas al valor de e'. A la ecuacién (E3.2.1) se le lama expansién por serie de Maclaurin. Empezando con el primer término e* = | y agregando un término ala vez, estimese el valor de 5. Después que se agregue cada término, calciilense los errores relativos porcentuales real y aproximado, usando las ecuaciones (3.3) y (3.5), respectivamente. Obsérvese que el valor real ese®* = 1 648721... Agréguense términos hasta que el valor absoluto del error sproximado €, sea menor al criterio preestablecido €, que cumpla tres cifras significativas Solucién. En primer lugar Ia ecuacién (3.7) se puede emplear para determinar el erite- rio de error que asegura un resultado correcto en al menos tres cifras, (0.5 x 10°*)% = 0.05% 3.4 —_— x X— Por lo tanto, se agregar términos a fa serie husta que e, en menor que este nivel. La primera estimaci6n es igual a la ecuacidn (E3.2.1) con un solo término. Por lo tanto, la primera estimacién es igual a 1. La segunda estimacion se obtiene agregando el segundo término como sigue ealee y para x = 0.5, eMal405=15 Esto representa el error relativo verdadero porcentual de [ecuacién (3.3)] 1648721 — 1.5 =! Sra, — 9.026% 1.648721 wi a La ecuacién (3.5) determina una estimacién aproximada del error, dado por: 100% = 33.3% ‘Ya que &, no es menor que el valor prefijado é,, los cilculos contintian agregando otro témino, 3/2! y repitiendo los céleulos de errores. El proceso contintia hasta que ‘Todos los célculos se pueden resumir de la siguiente manera Términos Resultado 1 7 2 1 3.3 3 1625 769 4 1.645833333, 1.27, 5 1.6aB437500 «0.0172, 0.158 6 1.648697917___0.00142_0.0158 Asi, después de que los seis términos se incluyen, el error estimado baja de €, = 0.05%, y elcélculo termina. Sin embargo, obsérvese que en vez de tres ciftas significativas, el resultado se mejora al llegar a cinco cifras, Esto se debe a que, para este caso, las ecua~ ciones (3.5) y (3.7) son conservativas, esto es, aseguran que los resultados son por lo ‘menos tan buenos como lo especifican. Aunque, como se analiza en el capitulo 6, éste no es siempre el caso para la ecuacién (3.5), y es cierto casi siempre. Con las definiciones anteriores como antecedentes, se puede proceder ahora sobre los dos tipos de ertor conectados directamente con los métodos numéricos: error de redondeo y error de truncamiento. ERRORES DE REDONDEO. Como se mencioné antes, los errores de redondeo se originan debido a que la compu- tadora puede guardar un niimero fijo de cifras significativas durante el calculo. Los iimeros tales como 7, ¢ 0 17 no pueden ser expresados por un nimero fijo de cifras significativas, Por lo tanto, no pueden ser representados exactamente por la computado- ra; ademds, porque las computadoras usan una representacién en base dos, y no pueden representar ciertamente nimeros exactos en base diez. Esta discrepancia por la omision de cifras significativas es llamada error de redondeo. 3. ‘Numéricamente los errores de redondeo se relacionan de manera directa con la forma en que se guardan en la memoria de la computadora, La unidad fundamental por la cual se representa la informacion se llama palabra, Esto es una entidad que consiste en una cadena de difgitos binarios o bits. Los nimeros son tipicamente guardados en uno o mas conjuntos. Para entender cémo se realiza, se debe revisar primero algtin material relacio- nado con el sistema de nimeros. Representacién de némeros en la computadora Sistemas numéricos. Un sistema numérico es simplemente tna convencién para re- presentar cantidades. Debido a que se tienen 10 dedos en las manos y 10 dedos en los pies, el sistema de numeracién que nos es muy familiares el decimal o sistema de nume- racion de base 10, Este nimero como base se usa como referencia para construir este sistema, El sistema de base 10 usa 10 digitos —0, 1, 2,3, 4,5, 6, 7, 8, 9— para represen- tar mimeros. Por ello, esos digitos son satisfactorios para contar de 0 a 9. Para grandes cantidades se usa la combinacién de tales digitos, con la posicién 0 valorde lugar se especifica la magnitud. El digito en el extremo derecho de una cantidad representa un niimero del 0 al 9. El segundo digito desde la derecha representa un miiltiplo de 10. El tercer digito desde la derecha representa un miltiplo de 100 y asi en forma sucesiva, Por ejemplo, si tiene el nimero 86 409 se tiene 8 grupos de 10 000, seis grupos de 1 000, cuatro grupos de 100 y cero grupos de 10, y nueve unidades o (8x 104) + (6x 10°) + (4x 10°) + (0x 10') + (9 x 10° 86 409 La figura 3.3a proporciona una representacién visual de cémo se formula un mime- ro en el sistema de base 10, Este tipo de representacién es llamada notacién de posicién. Debido a que el sistema decimal es tan conocido no es comiin realizar otras alterna- tivas, Por ejemplo, si el humano tuviera ocho dedos en las manos y ocho en los pies, se tendria sin duda una representacién de un sistema octal o base 8, En ese sentido nuestra amiga la computadora es como un animal que tiene dos dedos —esta limitada a dos es- tados— ya sea 00 1. Estorelaciona el hecho de que la unidad logica primaria de las com- putadoras digitales usan componentes electrénicos de apagado/prendido. Por lo tanto, Jos niimeros en la computadora son representados con un sistema binario o base 2. Justo como el sistema decimal, las cantidades pueden ser representadas usando la notacién posicional. Por ejemplo, el mimero binario 11 es equivalentea(1 X 2!) + (12°) =2+ 1 = 3 enel sistema decimal, En la figura 3.30 se ilustra un ejemplo mis complicado, Representacién entera, Ahora se tiene que revisar eémo los mimeros en base 10 pue- den ser representados en forma binaria; esto es simple, como concebir enteros para re- presentar en la computadora. La aproximacién més sencilla se lama método de la ‘magnitud del signo y emplea el primer bit de la palabra para indicar el signo, con un 0 ara positivo o | para el negativo. Los bits sobrantes se usan para guardar el nimero, Por BoRowno+ al FIGURA 3.3 Como tabajd decimal {base 10} y bl binario (base 2]. En b} | : || Binorio 1010} 101 es equvelente alr | | | ejemplo, el valor entero de ~173 puede ser guardado en la memoria de la computadora | de 16 bits, como en la figura 3.4. EJEMPLO 3.3 Rango de enteros | | | Enunciado del problema. Determine el rango de enteros de base 10 que puede ser (4 | | representado en una computadora de 16 bits. FIGURA 3.4 Lo tepresentocién de un enlero decimal -173 en unc computadoro de 16 bits wsondo el mméiodo de mogniud coe “Pele Ter PEEP ee Numero 3.4 _ERRORES DE REDONDEO w | Solucién. De tos 16 bits, se tiene el primer bit para el signo. Los 15 bits restantes, | pueden contener los mimeros binarios de 0a 1111111111111 11. El limite superior pue- de convertirse a un entero decimal, como en (1x 2!) 4 (Lx 219) $0 1x 2) 4 1 x2") que es igual a 32.767 (obsérvese que esta expresién puede ser simplemente evaluada como 2'*— 1). Asi, en una computadora de 16 bits un conjunto puede guardaren memo- ria un entero decimal del rango de ~32 676 a 32 767. Ademés, debido a que el cero es ya | definido como 0000000000000000, es redundante usar el mimero 1000000000000000 para definir a “menos cero”. Por lo tanto, es usualmente empleado para representar un ‘mimero adicional negativo: ~32 768, y el rango es de —32 768 a 32 767. Obsérvese que el método de la magnitud del signo descrito no es usado para repre~ sentar enteros en computadoras convencionales. Se prefiere utilizar una técnica llamada i complemento de 2 que incorpora en forma directa el signo dentro de la magnitud, dado que dispone de un bit para representar més o menos (ver Chapra y Canale 1994). Sin embargo, en el ejemplo 3.3 ain se ilustra cémo todas las computadoras digitales estin limitadas en su capacidad de representar enteros. Esto es, los mimeros por encima o abajo del rango que no pueden ser representados. La limitacién mas significativa se encuentra en el almacenaje y manipulacién de cantidades fraccionarias, como se descri- be en la siguiente seccién Representacién de punto-flotante, Las cantidades fraccionarias son tipicamente re- presentadas en la computadora usando Ia forma de punto flotante. En esta perspectiva, el -iimero se expresa como una parte fraccionaria, llamado mantisa o significando, y una parte entera, lamada exponente 0 caracteristica, esto es mb donde m = Ia mantisa, b = la base de sistema de nimero a ser usado y e = el exponen- te, Por ejemplo, el nimero 156.78 puede ser representado como 0.15678 X 10° en un sistema de base 10 de punto flotante. En la figura 3.5 se muestra una forma para que el niimero de punto flotante pueda ser guardado en un conjunto. El primer bit se reserva para el signo, la siguiente serie de bits para el exponente del signo y los iltimos bits para la mantisa, FIGURA 3.5 {a forma como un nimero de punta flotante es guardado en un Conjunto Exponente con signo jo 70 EJEMPLO 3.4 APROXIMACIONES Y ERRORES DE REDONDEO Obsérvese que la mantisa es uswalmente normalizado si se tiene primero cero digi- tos. Por ejemplo, supdngase que ta cantidad 1/34 = 0.029411765... es guardada en un sistema de base 10 de punto flotante que permite iinicamente cuatro Iugares decimales para ser guardados. Entonces, 1/34 deberia ser guardado como 0.0294 « 10° Sin embargo, en el proceso de hacer esto, la inclusién imitil de cero a la derecha de los decimales fuerza a bajar el digito 1 en el quinto lugar decimal. El nimero puede ser normalizado para remover el cero por la multiplicacién de la mantisa por 10 y bajar el exponencial por 1 que da 0.2941 x 10°! Asi, conserva una cifra significativa adicional cuando el niimero es guardado. La consecuencia de la normalizacién es que el valor absoluto de m es limitado. Esto es 0.8754549 - 10) ycortando da 0.8754 - 10! La division se realiza en forma similar pero las mantisas son divididas y los expo- nentes son restados. Entonces el resultado es normalizado y cortado. Calleulos grandes. Ciertos métodos requieren un nimero extremadamente grande de ‘manipulaciones aritméticas para llegar a los resultados finales. Estos cdlculos son a me nudo interdependientes. Esto es, que los calculos son dependientes de los resultados previos. En consecuencia, incluso el error de redondeo individual puede ser pequefio, pero acumuilando esos efectos durante el proceso de muchos célculos puede ser signifi- cativo. Célculos interdependientes de némeros grandes Enunciado del problema, Investigue el efecto del error de redondeo en la interdepen- dencia del célculo de muchos nimeros. Desartolle un programa que sume 100 000 ve~ ces. Sume el nimero 1 dentro de una precisién simple, y 0,00001 dentro de una simple y una doble precisién. Solucién. En la figura 3.10 se muestra un programa en Fortran 90 que realiza la sumatoria. Visto que la sumatoria de simple precisién de 1 produce el resultado espera- do, la simple precision de la sumatoria de 0.00001 tiene una gran disctepancia, Este error se reduce significativamente cuando 0,00001 es sumado en doble precisién, El error cuantificable es la fuente de las discrepancias. Debido a que el entero 1 puede ser representado en forma exacta en la computadora, puede ser sumado exacta- mente. En contraste, 0.00001 no puede ser representado con exactitud puesto que el valor es ligeramente diferente del valor verdadero. Ya que la muy ligera discrepancia puede ser insignificante para un célculo pequefio, se acumula despues de la repeticién de sumas. Este problema atin ocurre en doble precisién pero es mitigado en forma relevante porque el error cuantificable ex mucho més pequefto. FIGURA 3.10 Programa en Fortran 90 veces, En este caso se uma el némero | en simple | precisign y el numero 10° | en simple y doble precision. | PROGRAM 1790310 IMPLICIT none INTEGER? +4 REAL: :suml, sum2. x1, x2 DOUBLE PRECISION: :sun3, x3 sunt=0 sume=0 sun30. x2=1.e-$ x3e1.d-S 90 i=1,100000 suml=suml+x1 sungesun2+x2 sun3esun3x3 END D0 PRINT *, sum) PRINT *, sum2 PRINT *, sun3 END outputs 100000, 000000 1.000990 9,999999999980838E-001 Obsérvese que el tipo de error ilustrado en el ejemplo anterior es algo atipico en todos los errores de las operaciones que se repiten con el mismo signo. En muchos casos, los errores de grandes céleulos, de manera aleatoria, alternan el signo de manera aleatoria yy entonees con frecuencia se cancelan. Sin embargo, hay también algunos eventos donde tales errores no se cancelan pero, en efecto, Hevan a resultados finales falsos. En las siguientes secciones destinaremos cémo implementar caminos adecuados cuando esto Agregar un nimero grande y uno pequefio, Supéngase que se desea sumar un ni- ‘mero pequefio 0.0010 a un nimero grande 4 000. Usando una computadora hipotética con una mantisa de 4 digitos y un exponente de 1 digito, Si modificamos el nimero pequeiio para que el exponente se alinee con el grande, 0.4000 - 10* 0,0000001 - 10 (0.400001 - 10* el cual es cortado a 0.4000 - 10%, ;Entonces, puede no estar realizando la suma! Este tipo de error puede ocurrir cuando se calculan series infinitas. El término ini- cial dentro de cada serie es a menudo relativamente grande en comparacién con fos otros términos. Entonces, después de que pocos términos han sido sumados, estamos dentro de la situacién de sumar una pequefia cantidad a una cantidad grande Un camino para reducir este tipo de errores es la suma de la serie en reversa: esto es, ascender el orden en lugar de descender. En este contexto, cada nuevo término podra ser comparable en magnitud con el de Ia summa acumulada (véase el problema 3.4) 9.4 _ERRORES DE REDONDEO n Cancelacién de resta. Este término se refiere al redondeo inducido cuando la resta de dos niimeros de punto flotante son cercanamente iguales. ‘Unaspecto comin donde esto puede ocurrir involucra la determinacion dela raiz de una ecuacién cuadritica o parabola usando la férmula cuadratica. wy _ 4ac, la diferencia en el numerador puede ser muy pequefia. En tales casos, la doble precisién puede reducir el problema. Ademis, una formulacién alternativa puede usarse para minimizar la cancelacién por resta, my =e G.13) m1 bA Vb —4ac Una ilustracién del problema y el uso de esta formula alternativa esté expuesta en el siguiente ejemplo, EJEMPLO 3.7 Cancelacién de resta | Enunciado del problema. Calcular el valor de las raices de una ecuacién cuadritica con a = 1, 6 = 3 000.001 y c = 3. Revisar el valor calculado contra las raices verdade- | ras dex, = —0.001 y x, = —3 000. Solucién. En la figura 3.11 se muestra un programa en Fortran 90 que calcula las raices.x, yx) con base en la formula cuadritica [(ecuacién (3.12)]. Obsérvese las versio- | FIGURA 3.11 Programas en Foran 90 pore determinor las afces de une ecuacién cuodiética. o} Simple y 6) doble precision | IMPLICIT none PRINT "(x,a10,20.14)', ‘xl = ', xl | REAL: 8, Dyeyd, x1, x24 PRINT *(1x,210,f10.4)", "x2 = *, "x22 DOUBLE PRECISION: :20,db, cc dd,x11,x22 PRINT * a=t PRINT *, "Woaified formula for first root:’ b = 300.001 xIr=-2.*¢/ (b+) e=3. PRINT *(1x,a10,f20.14)'", ‘x1 =", xin d= SoRT(b * b- 4. ta *e) END x= (bd) / (2. * a) x2 = (-b- d) / (2. * a) ure | PRINT *, ‘Single-prectsion results:' Single-preciston results: PRINT "(1x, 010,420,149", ¢x1 =". xd x= =,00097656250000 PRINT *(1x.a10,110.4)', "x2 = 1, "x2 x2 = -3000,0000 PRINT * Double-prectston results | an. x= ~,00100000000771 bh = 300.002 x2 = ~2000.0000 wn. Modified formula for first root: did = SORT(BD * bb = 4. ¥ aa * cc) x1 = -.00100000000000 AIT = (bb + dd) / (2. * aa) WP? = (bb = dd) / (2. * aa) 80 EJEMPLO 3.8 APROKIMACIONES Y ERRORES DE REDONDEO nes que se dan de la precisién simple y la precisién doble. Ya que los resultados para x, son adecuados, el porcentaje relativo de error para x, es pobre para una versién de preci- sién simple ¢, = 2.4%. Este nivel puede ser inadecuado para muchos problemas de aplicaciones de ingenieria, ;Este resultado es en particular sorpresivo porque emplea- mos una férmula analitica para obtener nuestra solucién! Lapérdida significativa ocurre en la linea de ambos programas donde nameros gran- des son restados. Problemas similares no ocurren cuando los mismos nimeros son su- mados. Con base en lo anterior podemos hacer un boceto de la conclusién general de la formula cuadrética que seré susceptible de cancelar por resta cada vez que b? > dac. Un camino conveniente para no tener este problema es usar doble precisién. Otro es reacomodar la formula cuadratica en la forma de ta ecuacién (3.13). Como en el progra- ‘ma de salida, ambas opciones dan un error mucho muy pequeiio porque Ia cancelacién por resta es minimizada o evitada Obsérvese que, en un ejemplo anterior, hay veces donde la cancelacién por resta puede ser evitada al usar una transformacién. Sin embargo, el remedio més general em- pleado es usar la precisién extendida, Smearing. Smearing ocurre generalmente cuando los términos individuales en la sumatoria son més grandes que la misma sumatoria. Como en el siguiente ejemplo, ca- s0s como éstos ocurten en la series de signos mixtos. Evaluacién de &* usando series infinitas Enunciado del problema. La funcién exponencial y = e esté dada por la sere infi- nit Evalie esta funciénparax = 10x = —10; esté atento al problema del error de redondeo. Solucién, En la figura 3.12a se da un programa en Fortran 90 que usa una serie infinita para evaluar e*. La variable i es el mimero de términos que se usan en las series, term es el valor de término actual que se le agrega a las series, y sum es el valor acumulativo de las series. La variable fest es el valor acumulativo precedente de las series previo a la suma de ferm. La serie se termina cuando Ia computadora no puede detectar la diferencia entre fest y sum. La figura 3.12b muestra los resultados de la ejecucién del programa para x = 10. Obsérvese que en este caso es completamente satisfactorio, El resultado final es alean- zado en 31 términos con Ja serie idéntica para el valor de la funcién de libreria con siete cifras significativas. En la figura 3.12c se muestran los resultados similares para x = —10. Sin embargo, para este caso, los resultados de la serie calculada no son atin del mismo signo como el resultado verdadero, De hecho, los resultados negativos abren una serie de preguntas de 3.4 _ERRORES DE REDONDEO legen | PROGRAM 1190312 IMPLICIT none REAL: term, test, sum.x INTEGER: +1 1-0 tern = 1 sun = best = 0. PRINT #, tx = 4 READ *, x. PRINT *, "1", ‘term’, ‘sum bo IF (sum.€0.test) EXIT PRINT *, 4, term, sum teat term = term*x/i test = sum sun = sumterm END 00 PRINT *, ‘exact value =" ,exp(x) END. +) Evolvacign de a! 10 1 term sum ° 1.000000 1.000000, 1 10.000000, 11.000000 2 0.000000 61.000000, 3 166..666700 227666700 4 416.666700 644.3340, 5 833.333400 1477667000 27 9.1836938-02 22026.420000 28 3.2798908-02 22026. 450000 29 1.1309976-02 22026. 460000 30 3.7699898-03 22026.470000 31 1.216126E-03 —_22026.470000 | exact value = 22026.460000 | FIGURA 3.12 a] Un programa en Fortran 90 para e Bvaluacién de a 42 a 44 45 exact value = tern 1.000000 -10.000000 50.000000 -166..666700 416. 666700 833. 333400 -2.989312E-09 7.117410E-10 1, 655212E-10 3.7618456, -8.359655E-12 1.000000 9.000000 41.000000 -125.666700 291.000000 ~542.333400 8.137590-05 8.137661E-05, 8.137644E-05 8,137648E-05 8.137647E-05, 4.539993E-05 Jar usondo series infinitos, bj Evaluacion de e*. c| Evaluacién de e* 82 APROXIMACIONES ¥ ERRORES DE REDONDEO_ por qué e munca puede ser menor que cero. El problema es enusdo por ol error de redondeo. Obsérvese que muchos de los términos que conforman Ia suma son mucho mis grandes que el resultado final de la suma, Ademés, distinto al caso anterior, los términos individuales varian de signo. Asi, en efecto estamos agregando y sustrayendo riimeros grandes (cada uno con algiin pequefio error) y colocaremos gran significancia en las diferencias: esto es, cancelacién por resta. Entonces, puede verse que el culpable en este ejemplo de smearing es, en efecto, Ia cancelacién por resta. Para tales casos es apropiado buscar alguna otra estrategia de célculo, Por ejemplo, una podria tratar de caleulary = e! como y = (e7')°. Otra podria ser Ia reformulacién: es decir, que tinica~ ‘mente se recurra a la precisiOn extendida. Productos internos. Debe quedar claro que en las secciones anteriores, algunas series infinitas son particularmente propensas 4 errores por redondeo. Por fortuna, el céleulo de series no son operaciones comunes en métodos numéricos. Una forma de controlar la manipulacién es el célculo de los productos internos, esto es Esta operacién es muy comin, en particular en la solucién simulténea de ecuaciones lineales algebraicas. Tales sumatorias son propensas a errores por redondeo. Como con- secuencia, a menudo es deseable calcular tales sumas en precisién extendida. ‘Aunque en las secciones siguientes se deberia prover de reglas practicas para redu~ cir el error de redondeo, ellas no proveen un medio directo més all de la prueba y error para determinar realmente el efecto de tales errores en los célculos. En el siguiente capi- tulo se introduce la serie de Taylor, la cual proporcionara un enfoque matemético para cestimar esos efectos. Sanya te bade ay PROBLEMAS 3.1 Realice un programa basado en la figura 3.9 y dselo para cy donde el subindice » indica que el residuo es de la aproximacion a enésimo orden y & es un valor cualquiera dex que se encuentra entre. yx;.). La inclusién de & dentro de la serie es de mucha importancia, al grado que se dedica una seccién completa (seccién 4.1.1) para su estudio, Por ahora es suficiente darse cuenta que existe este valor que da una estimacién exacta del error. Con frecuencia es conveniente simplificar la serie de Taylor definiendo un paso h = x,y expresando la ecuacién (4.5) como: esi 41) = fle) + fey + LED a n+ sep, tet LO ee an 1 nm donde el término residual es ahora LOB) yee as) @o! Aproximaciones de un polinomio mediante la serie de Taylor Enunciado del problema. Usese términos en la serie de Taylor de cero a cuarto orden para aproximar la funcién: flr) = 0.144 = 0.152? ~ 05x? ~0.25r + 1.2 desde x, = 0 con h = 1. Esto es, predecir el valor de la funcién en x,, = 1 Solucién. Ya que se trata de una funcién conocida, se puede calcular valores de f(x) entre 0 y 1. Los resultados (véase figura 4.1) indican que la funcién empieza en f(0) = 1.2y continia hacia abajo hasta f(1) = 0.2. Por lo tanto, el valor verdadero que se trata de predecir es 0.2. La aproximaci6n en series de Taylor con n = 0 es [véase ecuacién (4.2)] Poi) = 12 4.1_LAS SERIES DE TAYLOR ar 0, te) ‘Orden cero Hii.) = fod 10 Aisin) = fad + Fgh 98 Acs) = 9) + Magne Rte 3) ° ——+ x FIGURA 4.1 . . lo aproxi de f(x) = ~0. 1x4 0.15x? - 0.5: - 0.25x + 1.2 en x= 1 mediante series de expansién de Taylor de cero, primero y segundo érden Como se puede ver en Ia figura 4.1, la aproximacién de orden cero es una constante. Usando esta formulacién resulta el error de truncamiento [recordar la ecuacién (3.2)] de £,=02-12=-10 enx=1 Para n ~ I, la primer derivada se debe determinar y evaluar en x = 0, como f(O) = — 0.4(0,0)' — 0.45(0.0)? ~ 1.0(0.0) — 0.25 = — 0.25 La aproximacién a primer orden es {véase ecuacién (4.3)] lsigt) © 12~0.25h que se puede usar para calcular/(1) = 0.95. Por consiguiente, a aproximacién empieza a coincidir con la trayectoria de la funcién como la pendiente de una linea recta (véase figura 4.1). De esta manera el error de truncamiento se reduce a E 0.2 - 0.98 = -0.75 Para n = 2, se evalia la segunda derivada en x = 0: £(0) = ~1.2(0.0* = 0.90.0) = 1.0 = ~1.0 Y de acuerdo con la ecuacién (4.4): Plxist) = 1.2 - 0.25h ~ 05h? SERIE DE TAYLOR Y ERRORES DE TRUNCAMIENTO y sustituyendo fh = 1, (1) = 0.45. Al incluirse la segunda derivada se afiade una curva- tura descendente que proporciona una mejor estimacién, como se muestra en la figura 4.1, El error de truncamiento se reduce a 0.2 — 0.45 = —0.25 Los términos adicionales mejoran atin mas la aproximacién. En efecto, la inctusién de la tercera y la cuarta derivada da como resultado exactamente la misma ecuacién del principio con: fix) = 1.2 0.25h — 0.5h? ~ 0.1543 = 0.1h4 donde el término residual es: £85 5 Ry 0 ‘ya que la quinta derivada de un polinomio de cuarto orden es cero. Por consiguiente, la expansién en series de Taylor hasta la cuarta derivada produce una aproximacién exacta enx;.;=1 fll) = 1.2 ~0.25(1) - 0.50)? — 0.1501) = 0.104 En general, fa expansidn en series de Taylor de n-ésimo orden debe ser exacta para un polinomio de n-ésimo orden, Para otras funciones continuas diferenciables, como las exponenciales 0 sinusoidales, no se obtiene una estimacién exacta mediante un niimero finito de términos. Cada uno de los términos adicionales contribuye al mejoramiento de Ja aproximacién, aunque sea con poco. Esto s¢ muestta en el ejemplo 4.2. Se obtendria un resultado exacto tinicamente si se le agrega un nimero infinito de términos. Aunque Io anterior se cumple, el valor préctico de las series de Taylor estriba, en la mayor parte de los casos, en el uso de un niimero finito de téminos que darn una aproximacién lo suficientemente cercana ala solucién verdadera para propésitos pricti- cos. La decisién sobre cudntos términos se requieren para obtener una “aproximacion razonable” se basa en el término residual de Ia expansién, Recuérdese que el término residual es de la forma general de la ecuacién (4.8). Esta formula tiene dos grandes desventajas. Primero, E no se conoce con exactitud, sino que solo se sabe que esté entre x)¥ Xen - Segundo, para la evaluacién de la ecuacién (4.8) se requiere evaluar la (1 + 1) ésima derivada de f(x). Pata hacerlo, se necesita conocer f(x). Pero si ya se conoce f(x), tentonees no hay razén para realizar la expansién en series de Taylor aqui. ‘A pesar de este dilema, la ecuacién (4.8) ain resulta ttl para la evaluacién de erro- res de truncamiento, Esto se debe a que tiene control sobre el término hi de la ecuacién, En otras palabras, se puede decidir qué tan lejos de x se desea evaluar f(x), y se puede controlar la cantidad de términos incluidos en la expansién. Por lo tanto, la ecuacién (4.8) se expresa usualmente como’ R, = Oh") donde la nomenclatura O(i"*') significa que el error de truncamiento es de orden h"*", sto es, el error es proporcional al paso h clevado a la (n + 1) n-ésima potencia. Aunque ita anroximacién no implica nada relacionado con las derivadas que multiplican A""', EJEMPLO 4.2 4.1_LAS SERIES DE TAYLOR es extremadamente itl evaluar el error relativo de los métodos numéricos basados en las expansiones en series de Taylor. Por ejemplo, si el extor es OCA) y se reduce a la mitad del paso, entonces el error se teducird a la mitad, Por otto lado, si el error es OH") entonces el error se reduciré a una cuarta parte. En general, se puede suponer que el error de truncamiento disminuye agregando términos a la serie de Taylor. En muchos casos, si h es lo suficientemente pequefio, entonces los términos de primero y segundo orden influyen desproporcionadamente en el procentaje de error, Esta propiedad se ilustra en el ejemplo siguiente. Uso de la expansién en serie de Taylor para aproximor una funcién con un ndmero infinito de derivadas Enunciade del problema, —Usense los términos de la serie de Taylor con. = 0 hasta 6 para aproximar f(x) = cos x enx,,, = 7/3 con base en el valor de /(a) y sus derivadas en x, = #14, Obsérvese que esto significa que h = /3 — ni4 = /12. Solucién, Como en el ejemplo 4.1 el conocimiento de Ia funcién original implica que se puede conocer el valor exacto de f(z/3) = 0.5, La aproximacién a orden cero es [vase ecuacién (4.3)] eos (2) = 007106781 que representa un error relativo porcentual de _ 0.5 = 0.707106781 ~414" ns 100% % Para la aproximacién de primer orden, agregamos el primer término derivado donde | fe) = —senx 1(5) cos *) en (7) (4) = 0.521986659 que tiene un error relativo porcentual de ¢, = — 4.40. En la aproximacién de segundo orden se incluye el término que contiene a la segun- da derivada donde f"(x) = —cos x 15) eG) 0) (B) SF" (5) con un error relativo porcentual de €, = 0.449. Porlo tanto, al agregar mis términos a la serie se obtiene tna mejor aproximacién. Este proceso se puede continuar y los resultados pueden ser mostrados, como en la tabla 4.1. Obsérvese que las derivadas nunca se acercan a cero, como es el caso del polinomio del ejemplo 4.1. Asimismo, cada término que se le agrega a la serie produce tuna mejor aproximacién. Sin embargo, obsérvese también que la mayor aproximacién se consigue con los primeros términos. En este caso, por habérsele agregado el tercer término, el ertor se redujo al 2.62 x 10 2%, fo que signitiea que se hu ulcanzado ol 0.497754491 90 SERIE DE TAYLOR Y ERRORES DE TRUNCAMIENTO TABLA 4.1 Aproximaciones mediante la serie de Taylor de Fly) = cot x en x,,: = 2/3 usando como punto base 7/4. Los valores son mostrados para varias érdenes {r] de oproximacién ‘Orden n 0.49775449) 0.449 0499869147 2.62107 07551 51x 103 0.500008 08 x 10° 2.40% 10° ° 1 3 4 5 6 99.9738% del valor exacto. Por consiguient aunque se le agreguen mas términos a la serie, el error decrece, pero la mejoria seré minima, 4.1.1 El residuo para la expansién en serie de Taylor ‘Antes de demostrar cémo se usa la serie de Taylor en la estimacidn de errores numéricos, se debe explicar por qué se incluye el argumento & en la ecuacién (4.8). Un desarrollo ‘matemitico es presentado en el cuadro 4.1. Ahora desarrollaremos una exposicién alter- nativa basada en algo mas que una interpretacién visual. En seguida se puede extender este caso especifico a una formulacién mas general Supéngase que se truncé la expansién en serie de Taylor [véase ecuacién (4.7)] después del término de orden cero para obtener: Poin) = fad En la figura (4.2) se muestra un bosquejo de esta prediccién de orden cero. El residuo 0 error de esta prediccién, que se muestra también en la figura, consiste de la serie infinita de términos que fueron truncados: LED 2, FD ys Ro = flah+ Es obvio que tratar el residuo de esta serie infinita con este formato es inconveniente. Se puede obtener una simplificacién truncando el residuo mismo de la siguiente manera: Ro flak (49) Aunque como se mencioné en la seccién previa, los términos de las derivadas de orden inferior cuentan mucho mis en el residuo que los términos de las derivadas de orden su- perior; este resultado todavia es inexacto, ya que se han despreciado los términos de segundo orden y de érdenes superiores. Esta “inexactitud” se denota mediante el simbo- Jo de aproximacisn a la igualdad (=) empleado en la ecuacién (4.9). Una simplificacién alterna que realiza la aproximacién a una equivalencia esti basa- da enel esquema grafico, Asi, en la figura 4.3 el eorema del valor medio dice que si una — 4.1_LAS SERIES DE TAYLOR a fe FIGURA 4.2 Representacion gié ica de una prediccion de la serie de Toy funcién f(x) y su primera derivada son continuas sobre el intervalo.x,2x,,,,entonces exis- ‘teal menos un punto sobre la funcién que tiene una pendiente dada por (E), que es para- Tela ala linea que une f(x;) con f(x,,,)- El parimetro & marca el valor x donde ocurre la pendiente (véase figura 4.3), Se puede hacer una ilustracién tangible de este teorema en el hecho de que si usted viaja entre dos puntos con una velocidad promedio, habra al menos unmomento durante el curso del viaje en el que usted se mueve a esa velocidad promedio, Al hacer uso de este teorema resulta ficil darse cuenta, como se ilustré en la figura (4.3), que la pendiente f'() es igual a cociente Ro entre h, 0 vey — Ro f= que se puede reordenar para obtener Ro = fte)h (4.10) Por lo tanto, se ha obtenido el término de orden cero de la ecuacién (4.8). Los términos de drdenes son una extensién légica del razonamiento usado para derivar ta ecuacién (4.10), La versién a primer orden es Le) =e 11) En este caso, el valor de & conforma el valor de x que corresponde a ta derivada de segundo orden que hace exacta a la ecuacién (4.11). Los términos de orden mis alto se pueden devarrollar de Ia ecuacin (4.8). SERIE DE TAYLOR Y ERRORES DE TRUNCAMIENTO 19) A Pendiente = 8) x é Niet x FIGURA 4.3 Representacin gréfica del teorema del valor medio. 4.1.2. Uso de la serie de Taylor para estimar los errores de truncamiento ‘Aunque la serie de Taylor es en extremo itl en la estimacién de errores de truncamiento a lo largo de este libro, puede que alin no esté muy claro cémo ta expansién puede aplicarse realmente a los métodos numéricos. En realidad esto ya se hizo en el ejemplo de la caida del paracaidista. Recuérdese que el objetivo de los ejemplos 1.1 y 1.2 fue el de predecir la velocidad en funcién del tiempo. Esto es, se deseaba determinar »(). Como se especificé en !a ecuacidn (4.5), u(t) se puede expandir en la serie de Taylor del siguiente modo vas) = vlt) + Oar =) + On ,....¥, teniendo errores de Ag), Af... Ax, 8€ tiene la siguiente relacién general como: Error de propagacién en una funcién multivariable Enunciado del problema. La deflexién y de un méstil en un bote es de _F ~ SET Y donde F = carga uniforme (Ib’pie), L = altura (pies), E = médulo de elasticidad (Ib/ pie?), ¢/ = momento de inercia (pie). Estimar el error en y dados los siguientes datos: F = 50 Ibipie AF = 2 Ibipie L = 30pie AL E=15 x 10" lbipie? AE = 0.01 x 10° Ibypie? T = 0.06 pie* Al = 0.0006 pie* 0.1 pie Solucién, Empleando ta ecuacién (4.27) se tiene AvP LED OF+ aL tar ay) ag | . 2 ak 104 SERIE DE TAYLOR Y ERRORES DE TRUNCAMIENTO Al sustituir los valores apropiados se tiene Ay = 0.0225 + 0.0075 + 0.00375 + 0.005625 = 0.039375 Por lo tanto, y = 0.5625 + 0.039375. En otras palabras y esta entre 0.523125 y 0.601875 pies. La validez de estas estimaciones puede verificarse si se sustituyen los valores extre- ‘mos para las variables dentro de la ecuacién que genera un minimo exacto de ye Jin = — 18229" _ = 9.52407 (1.51 100.0606 y 4 roy = OY = 0.52407 8(1.49 x 109)0.0594 Ai, la estimacién de primer orden es razonablemente cercana a los valores exactos. La ecuacién (4.27) puede ser empleada para definir errores de propagacién relacio- rnados con operaciones matemiticas comunes. Los resultados se resumen en la tabla 4.3, Se deja el desarrollo de estas formulas como un ejercicio de tarea, 4.2.3. Estabilidad y condicion La condicién de un problema matemético relaciona a su sensibilidad los cambios en los datos de entrada, Puede decirse que un cdlculo es numiéricamente inestable si la incerti- dumbre de los valores de entrada aumentan considerablemente por el método numérico. Estas ideas pueden estudiarse usando la serie de Taylor de primer orden Fle) = f+ FOE -H Esta relacién puede emplearse para estimar el error relativo de f(x) como en fe) =f ~ FAX-3) Fey fa) TABLA 4.3. Error estimado de frontera asociado con las operaciones mateméticas comunes usando nimeros inexactos d Adicion Sustoccién Mutiicacion alae + Was Dvisisn

You might also like