Está en la página 1de 209

ANLISIS NUMRICO I

RESUMEN DE LAS CLASES


TERICAS
Ing. Rodolfo A. Schwarz
Ao 2013
ndice general
Prlogo vii
1. Errores en los mtodos numricos 1
1.1. Una denicin de Anlisis Numrico . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. El concepto y las fuentes de error . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2. Concepto de error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.3. Fuentes de error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3. Error absoluto y error relativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4. Propiedades de los algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4.1. Condicin de un problema . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.2. Estabilidad de un algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5. Errores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5.1. Error inherente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5.2. Error de redondeo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5.3. Error de truncamiento/discretizacin . . . . . . . . . . . . . . . . . . . . . 13
1.5.4. Errores por overow y underow . . . . . . . . . . . . . . . . . . . . 15
1.6. Propagacin de errores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.6.1. Propagacin del error inherente . . . . . . . . . . . . . . . . . . . . . . . . 16
1.6.2. Propagacin del error de redondeo . . . . . . . . . . . . . . . . . . . . . . 17
1.6.3. Propagacin de los errores inherentes y de redondeo . . . . . . . . . . . . 17
1.7. Grca de proceso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.8. Perturbaciones experimentales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.8.1. Estimacin del nmero de condicin . . . . . . . . . . . . . . . . . . . . . 21
1.8.2. Estimacin del trmino de estabilidad . . . . . . . . . . . . . . . . . . . . 22
1.9. Inestabilidad en los algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.9.1. Cancelacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.9.2. Acumulacin del error de redondeo . . . . . . . . . . . . . . . . . . . . . . 24
1.9.3. Aumento de la precisin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.10. Diseo de algoritmos estables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2. Sistemas de Ecuaciones Lineales 27
2.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2. Deniciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3. Matrices triangulares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4. Eliminacin de Gauss y sustitucin inversa . . . . . . . . . . . . . . . . . . . . . . 29
2.5. Factorizacin LU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.6. Mtodo de Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.6.1. Matrices simtricas y denidas positivas . . . . . . . . . . . . . . . . . . . 35
2.6.2. Algoritmo de Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.7. Condicin de una matriz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
i
NDICE GENERAL Anlisis Numrico
2.8. Renamiento iterativo de la solucin . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.9. Errores de los mtodos directos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.10. Mtodos iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.10.1. Mtodos estacionarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.10.2. Convergencia de los mtodos estacionarios . . . . . . . . . . . . . . . . . . 47
2.10.3. Mtodos no estacionarios . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.10.4. Convergencia de los mtodos no estacionarios . . . . . . . . . . . . . . . . 55
2.10.5. Aspectos computacionales . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.11. Errores de los mtodos iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.12. Notas nales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3. Ecuaciones no Lineales 63
3.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.2. Mtodo de la biseccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.3. Mtodo de la falsa posicin o regula falsi . . . . . . . . . . . . . . . . . . . . . 66
3.4. Mtodo de las aproximaciones sucesivas o punto jo . . . . . . . . . . . . . . . . 67
3.5. Mtodo de Newton-Raphson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.6. Anlisis del error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.7. Mtodos de convergencia acelerada . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3.8. Mtodo de Steensen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.9. Mtodo de Halley . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.10. Sistemas de Ecuaciones no lineales . . . . . . . . . . . . . . . . . . . . . . . . . . 81
3.11. Notas nales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4. Interpolacin de curvas 87
4.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.2. Mtodo de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.3. Mtodo de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.4. Interpolacin baricntrica de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . 94
4.5. Fenmeno de Runge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.6. Interpolacin de Hermite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.7. Interpolacin por splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.8. Interpolacin por el mtodo de Akima . . . . . . . . . . . . . . . . . . . . . . . . 106
4.9. Notas nales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
5. Mejor aproximacin y ajuste de funciones 111
5.1. Mejor aproximacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
5.1.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
5.1.2. Error y normas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
5.1.3. Mtodo de los cuadrados mnimos . . . . . . . . . . . . . . . . . . . . . . 113
5.2. Ajuste de funciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
5.2.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
5.2.2. Aproximacin por mnimos cuadrados . . . . . . . . . . . . . . . . . . . . 118
5.2.3. Polinomios de Legendre . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
5.3. Notas nales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6. Diferenciacin e integracin numrica 123
6.1. Diferenciacin numrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.1.1. Diferencias progresivas, regresivas y centradas . . . . . . . . . . . . . . . . 123
6.1.2. Aproximacin por polinomios de Taylor . . . . . . . . . . . . . . . . . . . 127
6.1.3. Extrapolacin de Richardson . . . . . . . . . . . . . . . . . . . . . . . . . 129
6.1.4. Notas nales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
- Pg. ii - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico ndice general
6.2. Integracin numrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
6.2.1. Frmulas de Newton-Cotes . . . . . . . . . . . . . . . . . . . . . . . . . . 134
6.2.2. Frmulas cerradas de Newton-Cotes . . . . . . . . . . . . . . . . . . . . . 134
6.2.3. Frmulas abiertas de Newton-Cotes . . . . . . . . . . . . . . . . . . . . . 143
6.2.4. Cuadratura de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
6.2.5. Integrales mltiples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
6.3. Notas nales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
7. Ecuaciones diferenciales ordinarias 151
7.1. Ecuaciones diferenciales ordinarias con valores iniciales . . . . . . . . . . . . . . . 151
7.1.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
7.1.2. Condicin de Lipschitz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
7.1.3. Problema bien planteado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
7.1.4. Mtodos de Euler explcito e implcito . . . . . . . . . . . . . . . . . . . . 154
7.1.5. Mtodo predictor-corrector de Euler . . . . . . . . . . . . . . . . . . . . . 155
7.1.6. Error cometido al resolver una ecuacin diferencial . . . . . . . . . . . . . 155
7.1.7. Mtodos de Taylor de orden superior . . . . . . . . . . . . . . . . . . . . . 156
7.1.8. Mtodos de Runge-Kutta . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
7.1.9. Mtodos de paso mltiple . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
7.1.10. Mtodos predictores-correctores . . . . . . . . . . . . . . . . . . . . . . . . 165
7.2. Anlisis de estabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
7.3. Consistencia y convergencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
7.4. Ec. diferenciales ordinarias de orden superior . . . . . . . . . . . . . . . . . . . . 170
7.4.1. Aplicacin de los mtodos para ecuaciones diferenciales de primer orden . 170
7.4.2. A partir de la serie de Taylor . . . . . . . . . . . . . . . . . . . . . . . . . 171
7.4.3. Aproximacin de la derivada segunda . . . . . . . . . . . . . . . . . . . . . 172
7.5. Sistemas de ecuaciones diferenciales . . . . . . . . . . . . . . . . . . . . . . . . . . 173
7.6. Ecuaciones diferenciales con cond. de contorno . . . . . . . . . . . . . . . . . . . 174
7.6.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
7.6.2. Mtodo del tiro o disparo lineal . . . . . . . . . . . . . . . . . . . . . . . . 175
7.6.3. Diferencias nitas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
7.7. Notas nales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
A. El anlisis numrico y la ingeniera 181
B. Un poco de historia 185
B.1. Los egipcios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
B.2. Los babilonios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
B.3. Los indios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
B.4. Los chinos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
B.5. Los rabes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
B.6. Los mayas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
B.7. Los incas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. iii -
NDICE GENERAL Anlisis Numrico
- Pg. iv - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico ndice general
Licencia
Esta obra est licenciada bajo una Licencia Attribution-NonCommercial-ShareAlike 2.5
Argentina de Creative Commons.
Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-nc-
sa/2.5/ar/ o envenos una carta a Creative Commons, 171 Second Street, Suite 300, San Fran-
cisco, California, 94105, USA.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. v -
NDICE GENERAL Anlisis Numrico
- Pg. vi - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 0. Prlogo
Prlogo
Esto no pretende ser un libro sobre Anlisis Numrico ni algo que se le parezca. Simple-
mente es un resumen, incompleto, de las clases dadas en el mbito de la Facultad de Ingeniera,
durante los aos 2005 y 2006, orientadas originalmente a la parte prctica y luego reconvertidas
como clases tericas durante los aos 2007, 2008 y 2009.
El objetivo es dar una gua de los temas y enfocar a los alumnos en los temas ms
importantes del Anlisis Numrico que suelen aplicarse en el mbito de la ingeniera. No intenta
ser un manual ni un libro de texto, sino servir como ayuda-memoria a la hora de repasar lo visto
en clase. Textos y libros de gran calidad existen por doquier, algunos de los cuales se reeren en
la bibliografa, a los que no busca reemplazar. Es ms, muchas de las demostraciones se deben
buscar en esos textos.
Al mismo tiempo, algunos temas que no suelen incluirse en los libros tradicionales se han
desarrollado con mayor o menor fortuna. Algunos ejemplos de ello son el Mtodo de Interpolacin
Baricntrica de Lagrange, una forma alternativa de construir los polinomios interpolantes de
Lagrange, el mtodo de interpolacin de Akima, mtodo desarrollado a nes de los aos 60, y
una aproximacin al Mtodo de los Gradientes Conjugados para resolver sistemas de ecuaciones
lineales en forma iterativa. El primero de ellos no gura en ningn libro conocido y es una
interesante alternativa para desarrollar en una computadora, tal como reeren quienes publicaron
el mtodo, los matemticos Jean-Paul Berrut (Dpartment de Mathmatiques, Universit de
Fribourg) y Lloyd N. Trefethen (Computing Laboratory, Oxford University). Algo similar ocurre
con la interpolacin de Akima.
El tercero, en cambio, aparece en varios libros dedicados al mtodo de los elementos
nitos, pero no siempre en los textos de Anlisis Numrico. Por ejemplo, recin en la sptima
edicin del libro Anlisis Numrico de Burden & Faires se lo incluye como parte importante del
libro. En otros textos ni siquiera se lo menciona, a pesar de ser uno de los mtodos iterativos
ms importantes para resolver sistemas de ecuaciones lineales ralos, sobre todo en los ltimos
aos, gracias al desarrollo de las computadoras personales. Para las clases, tanto tericas como
prcticas, la base que se us para la explicacin es la publicada por el profesor Dr. Jonathan
Richard Shewchuk (School of Computer Science, Carnegie Mellon University), que es de libre
disponibilidad en la web, y muy buena desde el punto de vista de la interpretacin y comprensin
del mtodo. El texto actual usa parte de esa publicacin y agrega tambin algunas ideas propias.
Respecto a versiones anteriores, adems de correcciones tipogrcas y de redaccin, se
han agregado algunos temas que se desarrollaron en los ltimos cuatrimestres, como son el
mtodo de Halley para ecuaciones no lineales, el anlisis de la estabilidad, la consistencia y la
convergencia de los mtodos para resolver ecuaciones diferenciales ordinarias de primer orden
con valores iniciales, y los mtodos numricos para resolver ecuaciones diferenciales de segundo
orden, tambin con valores iniciales.
Finalmente, este resumen no sera posible sin la ayuda de todos aquellos que han inter-
venido e intervienen en el curso 008 de Anlisis Numrico I de la Facultad de Ingeniera de la
Universidad de Buenos Aires. Quiero agradecer a Germn Sosa, Rafael Barrera Oro, Florencia
Lanteri, Micaela Suriano, Mara Ciminieri e Ivn Flores Lagos, que actualmente se desempean
como colaboradores. Tambin a Mariano Ameijeiras, que fue fundamental para armar la clases
cuando empezamos, y a Adolfo Ibez, Guillermo Scolastico, Daro Kubar, Mariano Castro Con-
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. vii -
Anlisis Numrico
de, Carolina Tortoriello, Mara Actis y Exequiel Escobar, que han colaborado con el curso en
aos anteriores y aportaron sus visiones de cmo encarar las clases y mejorar las explicaciones
o ejemplos usados durante el desarrollo del mismo. Y fundamentalmente al Ing. Carlos Amura,
que me incorpor a su equipo all por el 2003. Ellos han hecho y hacen posible que este resumen
sea efectivo.
Una vez ms, gracias a los alumnos, quienes han aportado (y siguen aportando) mucho,
revisando y encontrando errores, y puntos que no resultaron muy claros o fciles de seguir. Quiero
agradecer a la alumna Mara Ins Parnisari que me ayud a encontrar correctores ortogrcos
para L
A
T
E
X, despus de encontrar gran cantidad de errores tipogrcos, adems de sugerir mejoras
y modicaciones ms que oportunas, que espero se incorporen en prximas versiones.
Rodolfo A. Schwarz, Buenos Aires, febrero de 2013.
- Pg. viii - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
Captulo 1
Errores en los mtodos numricos
1.1. Una denicin de Anlisis Numrico
Es usual que el anlisis numrico est asociado estrictamente a la siguiente denicin
general: Es el estudio de los errores de redondeo. De acuerdo con Lloyd Trefethen (vase [16]),
profesor en la universidad de Oxford, esta denicin es errnea. Entiende que si esta percepcin
es correcta, resulta poco sorprendente, entonces, que el anlisis numrico sea visto como una
asignatura aburrida y tediosa. Es cierto que los errores de redondeo son inevitables, y que su
anlisis es complejo y tedioso, pero no son fundamentales. Al analizar varios libros dedicados
al tema, encuentra que los captulos iniciales siempre estn referidos al error de redondeo o
sus temas asociados: precisin, exactitud, aritmtica nita, etc. Veamos algunos ejemplos de la
bibliografa disponible en espaol:
Burden & Faires, Mtodos Numricos (2005): 1. Preliminares matemticos y anlisis del
error.
Gonzlez, Anlisis Numrico, primer curso (2002): 1. Errores en el clculo numrico.
Curtis & Wheatley, Anlisis numrico con aplicaciones (2002): 0. Clculo numrico y
computadoras (0.5 Aritmtica por computadoras y errores).
Nakamura, Mtodos numricos aplicados con software (1992): 1. Causas principales de
errores en los mtodos numricos.
Ramrez Gonzlez y otros, Clculo Numrico con Mathematica (2005): 1. Introduccin al
Clculo Numrico. Errores.
Maron & Lopz, Anlisis Numrico, un enfoque prctico (1998): 1. Algoritmos, errores y
dispositivos digitales.
Quintana y otros, Mtodos numricos con aplicaciones en Excel (2005): Captulo 1. De-
nicin de error.
Esto ayuda a que los alumnos tengan una percepcin equivocada del objeto principal de
la materia. Para evitar esto, Trefethen propone una denicin alternativa:
Anlisis numrico es el estudio de los algoritmos para resolver problemas de la ma-
temtica continua.
Para l la palabra clave es algoritmo. De hecho, en Wikipedia podemos encontrar esta
denicin:
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 1 -
1.2. El concepto y las fuentes de error Anlisis Numrico
El anlisis numrico es la rama de la matemtica que se encarga de disear algoritmos
para, a travs de nmeros y reglas matemticas simples, simular procesos matemticos
ms complejos aplicados a procesos del mundo real ;
cuya referencia es justamente, Lloyd (Nick) Trefethen! Y, segn l, el principal objetivo del
anlisis numrico es disear algoritmos para aproximar valores desconocidos (no lo conocido de
antemano), y hacerlo en forma rpida, muy rpida.
Por esa razn, este captulo tiene por objeto desmiticar la inuencia de los errores al
aplicar mtodos numricos, y en particular, la inuencia del error de redondeo como fuente
bsica de los problemas en la utilizacin de algoritmos para resolver problemas matemticos,
an cuando la existencia de los mismos debe llevar a tenerlos en cuenta en determinados casos
en los que no se los puede soslayar. Para ello, empezaremos viendo los errores que intervienen en
cualquier procedimiento o clculo numrico.(Para un anlisis ms detallado acerca del estudio
de los errores y la estabilidad de los algoritmos, vase [8].)
1.2. El concepto y las fuentes de error
1.2.1. Introduccin
Tal como dijimos en la denicin de anlisis numrico, su objetivo principal no es analizar
en detalle los errores que intervienen en el cmputo de cantidades. Pero s es uno de los puntos
en los cuales cualquier matemtico (o de otra rama de la ciencia o tecnologa asociada a la mate-
mtica) que se dedique a desarrollar algoritmos deber ser un especialista en el tema. Por qu?
Simplemente, porque sus algoritmos sern utilizados para resolver problemas que seguramente
no tengan una solucin analtica o que la obtencin de esa solucin est fuera de los alcances del
usuario de ese algoritmo. Por ejemplo, es usual que los ingenieros utilicen programas que resuel-
ven estructuras por el mtodo de los elementos nitos para dimensionar determinadas piezas o
establecer las formas denitivas de las mismas, con el n de optimizar el uso de los materiales
o para darle ciertas caractersticas especiales a la estructura. Si bien es posible que varios de
esos problemas puedan ser resueltos con modelos analticos, lo ms probable es que esos modelos
slo tengan una denicin general (an cuando sea compleja) en forma de ecuaciones diferen-
ciales o de sistemas de ecuaciones diferenciales, tanto ordinarias como en derivadas parciales. y
Si bien existen mtodos de resolucin analticos (simblicos) para las ecuaciones diferenciales,
las condiciones de borde de un problema particular puede hacer intil la bsqueda de solucio-
nes analticas o simblicas. Por lo tanto, el nico camino viable para obtener una respuesta al
problema planteado es la aplicacin de un mtodo numrico.
Y si no contamos con una solucin analtica, cmo sabremos si los resultados obtenidos
sirven? Esta es una de las razones por las cuales los analistas numricos deben ocuparse de
analizar qu tipos de errores afectan a los algoritmos que desarrollan y hasta qu punto son
responsables de los posibles errores en los resultados que se obtendrn por aplicaciones de los
mismos. Pero debe tenerse en cuenta que, por otro lado, estos algoritmos deben ser rpidos (de
convergencia rpida) y que sern aplicados en computadoras, algo que no suele remarcarse con
debida propiedad, que, por supuesto, estn sometidas a limitaciones propias.
El problema de los errores en los clculos no es propiedad del siglo XX (o XXI) y de
los que sigan. Desde los inicios de la matemtica y de las ciencias asociadas, es un problema
que interes e interesa a todos los involucrados. Como ejemplo, tomemos un tpico mtodo de
interpolacin que se ensea en cualquier curso, el de los polinomios de Lagrange. La frmula para
- Pg. 2 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
obtener los polinomios es:
P
n
(x) =
n

j=0
f
j
l
j
(x); l
j
(x) =
n

k=0
k,=j
(x x
k
)
n

k=0
k,=j
(x
j
x
k
)
El propio Lagrange adverta en su poca, que su mtodo no era totalmente conable,
pues muchas veces los resultados obtenidos no eran correctos. De todos modos, el mtodo suele
estudiarse como una herramienta terica a pesar de que tiene las siguientes desventajas:
1. Cada evaluacin de p(x) requiere O(n
2
) sumas/restas y multiplicaciones/divisiones.
2. Aadir un nuevo par de datos x
n+1
; f
n+1
requiere recalcular todo de cero.
3. El clculo es numricamente inestable.
En tanto que las dos primeras se reeren a la eciencia del algoritmo para obtener el
polinomio, la ltima est estrictamente relacionada con los errores que pueden aparecer por
las operaciones de clculo involucradas en el procedimiento. Esto ltimo se hizo muy evidente
al utilizar las computadoras como elemento de clculo. En consecuencia, para analizar cuan
inestable (y/o mal condicionado) es el algoritmo, debemos analizar cmo se propagan los errores.
Veremos a continuacin el concepto y la denicin de lo que denominamos error.
1.2.2. Concepto de error
La palabra error suele llevar a interpretaciones confusas segn quien la exprese. En el
lenguaje coloquial de uso diario, el concepto de error est relacionado con falla o mal hecho.
Una expresin como el error fue ... suele asociarse con la causa que produjo un resultado no
aceptable o equivocado, y que por lo tanto, debe ser evitado o enmendado para que al hacer de
nuevo el clculo (o cualquier otra cosa), el resultado obtenido sea aceptable o correcto.
En cambio, en el mbito del anlisis numrico (y en general, en las ciencias e ingeniera),
el trmino error est relacionado especcamente con la incertidumbre de los datos de ingreso
como de los resultados obtenidos, sin que esto signique necesariamente que los resultados sean
equivocados. Dicho de otra manera, no pone en duda la conabilidad del mtodo en s, sino que
analiza el grado de incertidumbre de los valores numricos. En la ingeniera esto es de particular
relevancia, puesto que los datos que utilizamos provienen de mediciones en campo, estimaciones
probabilsticas, hiptesis y modelos matemticos simplicados, o de la experiencia profesional.
Rara vez se cuenta con datos con validez exacta. Sin embargo, si una leve modicacin de
estos datos produce resultados considerablemente diferentes que no reejan la realidad, estamos
ante la presencia de un problema que s puede objetar el procedimiento utilizado. Es decir, el
procedimiento es inestable o mal condicionado, conceptos diferentes.
Para analizar cuan conable es un procedimiento o algoritmo, se vuelve necesario el
estudio de los errores que afectan los clculos y las operaciones que intervienen en dicho algoritmo,
y cmo se propagan hasta afectar los resultados que ste entrega.
1.2.3. Fuentes de error
Las fuentes de error que analizaremos son las siguientes:
Error inherente: Es el error de los datos de entrada que puede estar dado por la precisin
en la medicin de los datos, por la representacin numrica, por provenir de clculos previos,
etc.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 3 -
1.3. Error absoluto y error relativo Anlisis Numrico
Error de redondeo/corte: Es el error debido estrictamente a la representacin numrica
utilizada y est asociado a la precisin usada en los clculos, generalmente una calculadora
o una computadora.
Error de truncamiento/discretizacin: Es el error que aparece al transformar un pro-
cedimiento innito en uno nito, por ejemplo, transformar una serie de innitos trminos
en una funcin nita, o de usar una aproximacin discreta para representar un fenmeno
continuo.
Error del modelo matemtico: Es el debido a las simplicaciones e hiptesis introdu-
cidas para denir el modelo matemtico que representa el problema fsico.
Error humano y/o de la mquina: Es el error que se produce por la intervencin
humana, ya sea por una mala transcripcin o interpretacin incorrecta de los datos origi-
nales, por programas de computacin mal hechos y/o fallas en el diseo, implementacin
o conguracin de programas o computadoras.
La ltima fuente de error suele ser asociada al concepto coloquial de error. Desde la
ptica del anlisis numrico, los dos ltimos errores estn fuera de su alcance, si bien no deben
ser despreciados a la hora de evaluar los resultados obtenidos, en particular, el debido al modelo
matemtico.
1.3. Error absoluto y error relativo
Empezaremos por analizar las frmulas ms sencillas de error. Supongamos que obte-
nemos de alguna forma (por ejemplo, una medicin) cierto valor m. Sabemos que el valor exacto
de dicho valor es m. Como conocemos ese valor m podemos denir dos tipos de errores:
1. Error absoluto: e
a
= m m;
2. Error relativo: e
r
=
m m
m
=
e
a
m
(siempre que m ,= 0).
Generalmente, el error relativo es una medida mucho ms representativa del error, espe-
cialmente cuando [m[ >> 1. Cuando [m[ 1, entonces ambos errores coinciden. En la prctica
suele ser poco probable conocer el valor m, por lo que no podemos calcular e
a
ni e
r
. Entonces,
cmo sabemos qu error estamos teniendo? Si no conocemos la solucin del problema pareciera
que no hay forma de saberlo.
Partamos de no conocer m y de que el valor m fue obtenido por medicin usando un
instrumento cuya precisin
1
es e
m
(por error de medicin). Si tomamos el concepto de error
absoluto podemos obtener una idea del valor de m. En efecto, tenemos que:
e
m
= e
a
= m m m = m+e
a
;
que podemos generalizar a:
m = me
a
; (1.1)
si tenemos en cuenta que el valor de e
a
puede ser positivo o negativo. As, una forma ms general
de escribir el error absoluto y el relativo es:
1. [E[ = [e
a
[ = [m m[;
2. [e
r
[ =

m m
m

=
[m m[
[m[
=
[E[
[m[
.
1
En este caso, precisin se reere a la unidad ms chica que el instrumento puede medir.
- Pg. 4 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
Como hemos supuesto que e
a
= e
m
, sabemos cual es nuestro error absoluto, pero seguimos
sin saber cul es nuestro error relativo. Tenemos dos posibilidades para obtener m:
m = m+e
a
o m = me
a
,
y entonces el error relativo sera:
e
r
=
e
a
m+e
a
o e
r
=
e
a
me
a
[e
r
[ =
[e
a
[
[ m+e
a
[
o [e
r
[ =
[e
a
[
[ me
a
[
.
Resulta, entonces, ms conveniente denirlo como:
e
r
=
[e
a
[
[ m[
, (1.2)
cuando se conoce m y e
a
.
1.4. Propiedades de los algoritmos
Hemos dicho que el anlisis numrico se ocupa de estudiar algoritmos para resolver pro-
blemas de la matemtica continua. Dado que estos algoritmos son una aproximacin al problema
matemtico, resulta evidente que los resultados obtenidos estarn afectados por alguno de los
errores mencionados. Y como en muchas ocasiones los datos de entrada de ese algoritmo tambin
tienen errores, la pregunta que surge inmediatamente es: cmo sabemos si los resultados que
arroja el algoritmo son conables? La pregunta no tiene una nica respuesta, depende del tipo
de error que analicemos o que tenga mayor inuencia y de las caractersticas del problema
matemtico. Podemos tener varias aproximaciones acerca de un algoritmo, a saber:
1. Una primera aproximacin a una respuesta sera analizar cuan sensible son los resultados
que arroja un algoritmo cuando los datos de entrada se modican levemente, o sea, cuando
sufren una perturbacin. Un anlisis de este tipo tiene dos formas ser encarado, por un
lado, estudiando la propagacin de errores (en ingls, forward error), es decir, perturbar
los datos de entrada y ver qu consecuencia tiene en el resultado. Pero tambin se puede
estudiar de manera inversa, partir de una perturbacin en los resultados, y analizar qu
grado de perturbacin pueden sufrir los datos de entrada, metodologa que se conoce como
anlisis retrospectivo (en ingls, backward error). En ambos casos estamos estudiando la
inuencia del error inherente.
2. Una segunda aproximacin puede ser analizar el algoritmo con diferentes representaciones
numricas en los datos de entrada y estudiar qu ocurre con los resultados. En este caso
estudiamos la incidencia del error de redondeo.
3. Finalmente, y tal vez el ms sencillo de todos, otra aproximacin puede ser analizar qu
ocurre cuando se trunca un procedimiento o discretiza el dominio de nuestro problema
matemtico. Este tipo de anlisis puede que requiera solamente de un trabajo algebraico
ms que numrico, y, a veces, suele combinarse con el error de redondeo.
La enumeracin anterior en tres aproximaciones es a los efectos de identicar las causas
y la forma de encarar el problema. Sin embargo, la realidad suele ser mucho ms compleja, y
los errores que surgen de aplicar un algoritmo o varios, resultan ser una combinacin de todos y
dependen, muchas veces, de las caractersticas de los datos del problema.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 5 -
1.4. Propiedades de los algoritmos Anlisis Numrico
1.4.1. Condicin de un problema
El primer caso, el anlisis de la propagacin de los errores inherentes, permite establecer
si el problema est bien o mal condicionado. Si al analizar un pequeo cambio (o perturbacin) en
los datos el resultado se modica levemente (o tiene un pequeo cambio) entonces estamos ante
un problema bien condicionado. Si, por el contrario, el resultado se modica notablemente o
se vuelve oscilante, entonces el problema est mal condicionado. Si ste fuera el caso, no hay
forma de corregirlo cambiando el algoritmo (como se ver despus) pues el problema est en el
modelo matemtico.
Denicin 1.1. Un problema matemtico (numrico) se dice que est bien condicionado si pe-
queas variaciones en los datos de entrada se traducen en pequeas variaciones de los resultados.
Observacin 1.1.1. Un problema mal condicionado puede ser resuelto con exactitud, si real-
mente es posible, solamente si se es muy cuidadoso en los clculos.
Observacin 1.1.2. Si f representa al algoritmo real y f

al algoritmo computacional, y
x a la variable real y x

a la variable computacional, entonces el error en los resultados se


puede denir como:
[f(x) f

(x

)[ [f(x) f(x

)[
. .
condicin
+[f(x

) f

(x)[
. .
estabilidad
+[f

(x) f

(x

)[
. .
truncamiento
.
Veremos ms adelante que las pequeas variaciones en los datos de entrada estn
asociadas al problema en cuestin. No es posible a priori denir cuantitativamente cuando
una variacin es pequea y cuando no lo es. El anlisis de los errores inherentes es importante
para establecer la sensibilidad del modelo numrico a los cambios en los datos, puesto que rara
vez los datos de entrada estn exentos de error.
1.4.2. Estabilidad de un algoritmo
El segundo caso es el que suele ser un dolor de cabeza para los analistas numricos. Si
analizamos un algoritmo ingresando los datos con diferentes representaciones numricas, esto es,
con diferente precisin, y los resultados no cambian demasiado (salvo por pequeas diferencias
en los decimales), entonces estamos en presencia de un algoritmo estable. Caso contrario, el
algoritmo es inestable.
El ltimo caso est asociado a procedimientos o algoritmos basados en series o iteraciones
innitas, y suele combinarse con alguno de los otros errores, como veremos ms adelante.
En consecuencia, lo que debemos buscar de un algoritmo es que sea estable. Qu sig-
nica esto en la prctica? Supongamos (una vez ms, supongamos) que E
n
mide un cierto error
cometido en el paso n de un algoritmo. Podemos expresar este error en funcin del error inicial,
que puede tener una de estas dos expresiones:
1. Error con crecimiento lineal: E
n
c n E
0
2. Error con crecimiento exponencial: E
n
c
n
E
0
Es evidente que el primer error es controlable, en tanto que el segundo, no. Puesto que
es imposible que no haya errores al trabajar con un algoritmo, lo que se debe buscar es que el
error siga una ley lineal (como en el primer caso) y no una ley exponencial. A partir de esta
comprobacin se desprende la siguiente denicin:
Denicin 1.2. Un algoritmo se considera estable cuando la propagacin de los errores de
redondeo es lineal o cuasi-lineal.
- Pg. 6 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
En cambio, un algoritmo que propaga los errores en forma exponencial es inestable.
Una de las razones principales de analizar la propagacin de los errores de redondeo
es conseguir que un algoritmo sea estable. Sin embargo, debemos tener bien presente que un
algoritmo estable en ciertas condiciones puede volverse inestable en otras, por lo que muchas
veces no existe el algoritmo universal. Dado que la estabilidad (o la inestabilidad) es una
propiedad exclusiva del algoritmo, si un problema se vuelve inestable podemos, muchas veces,
corregirlo cambiando el algoritmo inestable por otro estable. (Sin embargo, nunca hay que olvidar
que un problema puede volverse mal condicionado para determinadas condiciones de base, lo que
hace ms complejo el anlisis.)
Veamos un ejemplo que muestra la inestabilidad de un algoritmo. Tomemos la siguiente
integral denida:
y
n
=
_
1
0
x
n
x + 10
dx;
con n = 1; 2; . . . ; 34.
Es fcil ver que las primeras integrales analticas son relativamente sencillas de obtener
(por ejemplo, para n = 1 o n = 2). En efecto, si queremos hallar y
1
podemos hacer:
y
1
=
_
1
0
x
x + 10
dx = x[
1
0
10 ln(x + 10)[
1
0
= 1 10 ln
_
11
10
_
;
y
1
= 1 10 ln(1,1) = 0,0468982019570.
Pero si queremos obtener y
15
la situacin ya no es tan sencilla. Deberamos calcular la
siguiente integral:
y
15
=
_
1
0
x
15
x + 10
dx.
Para facilitar el clculo de cada una de las y
n
integrales, desarrollemos un algoritmo
que nos permita obtener los valores de las mismas sin tener que integrar o que al menos utilice
aquellas integrales fciles. Para un n > 1 cualquiera podemos decir que:
y
n
+ 10 y
n1
=
_
1
0
x
n
+ 10 x
n1
x + 10
dx =
_
1
0
x + 10
x + 10
x
n1
dx =
_
1
0
x
n1
dx
y
n
+ 10 y
n1
=
1
n
y
n
=
1
n
10 y
n1
Si queremos calcular y
1
necesitamos obtener y
0
, que tambin resulta muy sencillo de
obtener, pues:
y
0
=
_
1
0
1
x + 10
dx = ln (x + 10)[
1
0
= ln (11) ln (10)
y
0
= ln(1,1) = 0,0953101798043.
Para analizar si el algoritmo arroja resultados conables, empezaremos por calcular al-
gunos valores. Hemos calculado el valor de y
1
en forma analtica, por lo tanto, tenemos un valor
de comprobacin. Por otro lado, por las caractersticas del problema sabemos que 0 y
n
1.
Si denimos las funciones f
i
(x) =
x
i
x + 10
y las gracamos, podemos ver que el rea bajo esas
funciones es menor a
0,1
2
= 0,05. En la gura 1.1 se pueden ver representadas algunas de estas
curvas.
Para comprobar la ecacia del algoritmo hemos utilizado dos programas muy conocidos:
el MathCAD
R _
y el MS Excel
R _
. Con el primero hemos calculado las y
i
en forma analtica y con
el algoritmo dado; con el segundo, slo con el algoritmo. En la tabla 1.1 se tienen los resultados
obtenidos.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 7 -
1.4. Propiedades de los algoritmos Anlisis Numrico
Tabla 1.1: Clculo de los y
i
i Analtico MathCAD
R
MS Excel
R
1 0,0468982019567514000 0,04689820195675065 0,04689820195675
2 0,0310179804324860060 0,031017980432493486 0,03101798043248
3 0,0231535290084732900 0,023153529008398455 0,02315352900857
4 0,0184647099152671080 0,018464709916015454 0,01846470991435
5 0,0153529008473289370 0,015352900839845474 0,01535290085650
6 0,0131376581933772860 0,013137658268211921 0,01313765810168
7 0,0114805609233700040 0,011480560175023635 0,01148056184036
8 0,0101943907662999780 0,010194398249763648 0,01019438159642
9 0,0091672034481113700 0,009167128613474629 0,00916729514693
10 0,0083279655188863120 0,008328713865253717 0,00832704853072
11 0,0076294357202277880 0,007621952256553738 0,00763860560192
12 0,0070389761310554600 0,00711381076779595 0,00694727731410
13 0,0065333156125223285 0,005784969245117427 0,00745030378206
14 0,0060954153033481685 0,013578878977397152 -0,00307446639198
15 0,0057125136331849920 -0,06912212310730485 0,09741133058647
16 0,0053748636681500880 0,7537212310730486 -0,91161330586469
17 0,0050748927302638440 -7,478388781318721 9,174956588
18 0,0048066282529171250 74,83944336874276 -91,69401033
19 0,0045652964181971910 -748,3418021084802 916,9927348
20 0,0043470358180281100 7483,468021084803 -9169,877348
21 0,0041486894387665300 -74834,63259180041 91698,8211
22 0,0039676510668801740 748346,3713725496 -916988,1656
23 0,0038017502007634874 -7483463,670247235 9169881,699
24 0,0036491646590318034 74834636,74413903 -91698816,95
25 0,0035083534096819780 -748346367,4013903 916988169,5
26 0,0033780043647186900 7483463674,052364 -9169881695
27 0,0032569933898501480 -74834636740,48662 91698816953
28 0,0031443518157842460 748346367404,902 9,16988 10
11
29 0,0030392404628472014 -7483463674048,985 9,16988 10
12
30 0,0029409287048613280 74834636740489,89 9,16988 10
13
31 0,0028487774675157640 -748346367404898,9 9,16988 10
14
32 0,0027622253248423658 7483463674048989 9,16988 10
15
33 0,0026807770546066550 -74834636740489890 9,16988 10
16
34 0,0026039941598158087 748346367404898800 9,16988 10
17
- Pg. 8 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
Figura 1.1: Curvas de las distintas funciones.
Podemos ver que los primeros valores obtenidos con el algoritmo, tanto en MathCAD
R _
como en MS Excel
R _
, resultan una buena aproximacin de los valores de y
n
. Los problemas
aparecen para y
12
y siguientes. Detengmonos a analizar los resultados obtenidos a partir de y
12
.
En el caso particular de este ltimo, el error empieza a ser considerable, comparando
con los resultados anteriores. En los siguientes valores se obtienen algunos resultados realmente
curiosos. Ya hemos visto que los valores de y
n
, o sea, las reas bajo las curvas, estn limitados
superiormente por 0,05. Adems podemos ver que y
n
> y
n+1
, es decir, que las reas bajo la
curva van disminuyendo a medida que crece n. Si miramos los obtenidos con MS Excel
R _
, el y
13
es mayor que el y
12
, algo que no es posible segn lo visto antes. Y el y
14
es, negativo! El rea
bajo la curva no puede ser negativa. Con los resultados obtenidos con el MathCAD
R _
ocurre
algo similar. Para este programa, y
14
da mayor que y
13
, y el y
15
da negativo, ambos resultados
incorrectos.
A partir de estos valores, los resultados se vuelven oscilantes (cambian de signo), y ma-
yores que uno (y
n
> 1 para n = 17; 18; . . . ; 34), algo que por el tipo de curva no es posible,
como ya vimos. En consecuencia, resulta evidente que el algoritmo tiene algn problema para
calcular los valores de y
n
cuando n 12, por lo que no nos sirve para obtener el y
34
. An cuando
no tuviramos el resultado exacto, mirando la curva nos daramos cuenta que hay un diferencia
muy grande entre el valor real y el obtenido con el algoritmo. Ms an, el error que estamos
teniendo no sigue una ley lineal sino una ley exponencial (se va multiplicando por 10), lo que
dice claramente que el algoritmo analizado es inestable.
Este ejemplo nos muestra cmo un algoritmo mal diseado nos puede entregar resultados
que inicialmente son bastante aproximados pero que en pasos posteriores son incorrectos, y por
lo tanto, intiles.
Denicin 1.3. Un algoritmo debe ser diseado procurando que sea bien condicionado y estable.
Observacin 1.3.1. Un algoritmo inestable a la larga da resultados incorrectos, por ms que
est bien condicionado.
Es por eso que debemos desarrollar algn tipo de anlisis que nos permita detectar si un
algoritmo est bien condicionado o no y si es estable o no. Para ello, empezaremos por analizar
algunos tipos de error.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 9 -
1.5. Errores Anlisis Numrico
1.5. Errores
1.5.1. Error inherente
ste suele ser el error ms fcil de entender. Es el que est relacionado directamente con
los datos de entrada o de base. Dado que estos datos suelen provenir de mediciones, clculos
anteriores, proyecciones estadsticas, etc., el valor numrico de los datos no es exacto sino que
est asociado a un intervalo de validez. Cuando se mide una longitud con una cinta mtrica con
divisiones hasta el centmetro, el error por la apreciacin del instrumento es un centmetro o
medio centmetro (5 mm). Es decir, si mide 145,01 m, en realidad, se est diciendo que el valor es
145,01 0,01 o 145,010 0,005. Lo mismo ocurre si los datos se obtienen por un clculo anterior
o una estimacin estadstica. En esos casos, el error se obtiene por otros mtodos.
Veamos un ejemplo. Supongamos que tenemos las siguientes cantidades, a = 3,0 0,1 y
b = 5,0 0,1 y queremos hallar z = a +b. Lo que deberemos hacer es:
z = (3,0 0,1) + (5,0 0,1)
Al efectuar esta operacin obtendremos cinco resultados posibles: 7,8; 7,9; 8,0; 8,1 y 8,2.
Es decir, z est en el intervalo [7,8; 8,2], o, lo que es lo mismo, z = 8,0 0,2. As cualquier
resultado obtenido dentro del intervalo dado se puede considerar correcto.
Esto muestra la sencillez del anlisis cuando las operaciones son pocas (en esta caso, una).
Sin embargo, si el algoritmo es ms complejo, hacer las n combinaciones posibles de operaciones
con los datos de ingreso puede ser imposible y nada prctico. De ah que el anlisis de la pro-
pagacin de los errores inherentes es la forma ms conveniente para establecer la incidencia de
los mismos en los resultados nales. Ms adelante veremos la diversas formas de analizar esta
propagacin.
1.5.2. Error de redondeo
Antes de analizar el error de redondeo, veremos la manera de representar un nmero
segn la forma adoptada. A partir de esta representacin se entender cual es la incidencia del
error en los clculos efectuados con ayuda de una computadora.
Representacin numrica
Para empezar, supongamos el siguiente nmero:
4
3
. En el sistema decimal suele represen-
tarse como 1,3333 . . . . Una forma alternativa es:
4
3

=
_
1
10
+
3
10
2
+
3
10
3
+
3
10
4
+
3
10
5
+. . .
_
10
1
= 1,3333 . . . ;
o sea, un nmero que slo puede representarse con una serie de innitos trminos, algo imposible
desde el punto de vista prctico. Su nica forma de expresin exacta es simblica. Una calcu-
ladora, por ejemplo, slo puede representarlo en forma numrica (en base diez, como la escrita
arriba) y, por ende, la nica representacin posible es nita.
2
En consecuencia, debe truncarse
esta serie en n trminos. Por ejemplo, una representacin posible es:
4
3

=
_
1
10
+
3
10
2
+
3
10
3
+
3
10
4
_
10
1
= 0,1333 10
1
= 1,333.
Podemos ver que esta representacin est formada por un coeciente (0,1333), una base
(10) y un exponente (1). Esta forma de representacin se conoce como representacin de coma
(punto) otante. Una generalizacin de esta representacin se puede escribir como:
fl(x) = 0,d
1
d
2
d
3
. . . d
t1
d
t
10
e
=
_
d
1
10
+
d
2
10
2
+
d
3
10
3
+. . . +
d
t
10
t1
+
d
t
10
t
_
10
e
.
2
Distinto sera el caso si se usara base 3. Entonces
4
3
sera igual a 1,1; una representacin exacta.
- Pg. 10 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
La forma normalizada es que d
1
sea distinto de cero (1 d
1
9) y que los restantes d
i
estn comprendidos en el siguiente intervalo: 0 d
i
9, para i = 2; 3; 4; . . . ; t. Tambin se
limita el exponente e, con dos valores, I < 0 y S > 0, por lo que se cumple que I e S. As,
podemos hallar el mximo numro a representar, que es 0,99 . . . 99 10
S
10
S
, y el ms chico,
0,10 . . . 00 10
I
= 10
I1
.
Una vez denida la forma de representar los nmeros, pasemos a denir nuestra precisin,
que signica cuantos trminos d
i
usaremos, esto es, el t que vimos, y el exponente e de la base.
Para complicar ms las cosas, las calculadoras y fundamentalmente, las computadoras,
usan una representacin numrica con base 2.
3
Esto trae ventajas y desventajas. Por ejemplo,
puesto que se usa base 2, los d
i
slo pueden valer 0 o 1, con excepcin del d
1
, que vale siempre
1. Esto facilita la representacin de los nmeros y las operaciones. Pero las desventaja es que
slo los nmeros que pueden representarse como sumas de
1
2
i
resultan exactos. Veamos cmo
funciona esto.
Supongamos que tomamos nuestro sistema de representacin binario para representar
nuestro nmero inicial,
4
3
. Tomemos que la cantidad de trminos, t, sea 8 y dejemos por un
momento libre de restricciones el exponente e. Entonces, tendremos lo siguiente:
4
3
0,10101010 2 =
_
1
2
+
1
8
+
1
32
+
1
128
_
2 = 0,6640625 2 = 1,328125;
nmero parecido al buscado pero no igual. Esto nos muestra que existe una limitacin cuando
utilizamos una computadora (o una calculadora) para representar nmeros que no tienen una
representacin directa en base binaria. Asociada a esta limitacin, la de poder representar slo
una cantidad nita de nmeros, surge el error por corte o redondeo.
No siempre se entiende la incidencia del error por la representacin numrica. Un ejemplo
que ya es tradicional de lo catastrco que puede ser tomar una representacin numrica sin
analizar su incidencia, es la falla de la batera de misiles Patriot en Dharan, Arabia Saudita,
durante la Guerra del Golfo en 1991, en detectar un misil SCUD iraqu, que result con 28
soldados muertos y casi 100 heridos.
El problema estaba en el programa de rastreo del sistema de deteccin de blancos enemi-
gos. El sistema dispona de contador de tiempo, en nmeros enteros, que registraba las ventanas
de rastreo de una dcima de segundo (0,1) para detectar los blancos, contador que luego se
multiplicaba por
1
10
para transformarlo en tiempo real. El programa trabajaba con una repre-
sentacin numrica de
1
10
en base 2, cuya representacin es 0,000110011001100110011001100 . . .,
que es peridica, o sea, innita. Como no se puede trabajar con una representacin innita, el
programa adopt una precisin de 24 bits. Por ese motivo la representacin de 0,1 se redujo
a 0,00011001100110011001100, con el consiguiente error de corte/redondeo, dado por el nme-
ro binario 0,000000000000000000000001100110011001100 . . ., que en representacin decimal es
aproximadamente 0,000000095 (9,5 10
8
). Esta diferencia, que parece pequea, luego de 100
horas de operacin continua se convirti en algo peligroso: al multiplicar 100 horas por ese error
en la representacin numrica del programa (0,000000095 100 60 60 10), dio una diferencia de
0,34 segundos respecto del tiempo real. La consecuencia de esa diferencia fue que la ventana
de deteccin se corri 0,34 segundos (respecto de 0,10), por lo que el misil SCUD iraqu (que
vuela a una velocidad de 1,676 km/s) no fue detectado por el sistema de rastreo en la siguiente
ventana y el sistema de alerta lo consider una falsa alarma, permitiendo que el misil impactara
en la base de Dharan.
Lo dramtico en este caso es que esa falla en el sistema de rastreo se haba detecta-
do, establecindose que el sistema deba ser reiniciado cada ocho horas de operacin continua,
porque a las ocho horas la ventana de rastreo se desplazaba un 20 %. Pero la modicacin del
procedimiento operativo fue enviado un da despus del incidente.
3
Existen, sin embargo, procesadores que no usan una representacin binaria.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 11 -
1.5. Errores Anlisis Numrico
Error por corte/redondeo
Volvamos a nuestro sistema decimal tradicional. Supongamos ahora que nuestros nmeros
se pueden representar de la siguiente manera:
fl(x) = (0,d
1
d
2
d
3
. . . d
t
d
t+1
d
t+2
. . .) 10
e
.
Si nuestra precisin elegida es t, entonces debemos recortar el nmero denido arriba, pues no
podemos representar los d
i
para i > t. En consecuencia, tenemos dos alternativas bsicas para
efectuar dicho recorte:
1. Corte: Ignorar los dgitos d
i
cuando i > t.
2. Redondeo: Sumar 1 a d
t
si d
t+1

10
2
e ignorar los restantes d
i
para i > t + 1, o aplicar
corte si d
t+1
<
10
2
.
Esto nos permite obtener una cota del error absoluto para ambos casos:
e
A
=
_
10
t
10
e
para corte
1
2
10
t
10
e
para redondeo.
Y como denimos el error absoluto, tambin podemos denir un lmite para el error
relativo, que ser:
1. Corte: e
r

10
t
10
e
0,1 10
e
= 10
1t
.
2. Redondeo: e
r

1
2
10
t
10
e
0,1 10
e
=
1
2
10
1t
.
Al valor 10
1t
lo identicaremos con la letra , y resulta ser importante porque nos da
una idea del error relativo que cometemos al utilizar una representacin de coma otante. Suele
denominarse como unidad de mquina o unidad de redondeo. El negativo del exponente
de suele llamarse tambin cantidad de dgitos signicativos.
Dgitos de guarda
Supongamos el siguiente caso. Tomemos el nmero 0,1425 que debe ser redondeado a tres
dgitos signicativos. Aplicando el criterio anterior rpidamente obtenemos que el resultado es
0,143 pero, es correcto este redondeo? Por qu no redondear a 0,142; si est a medio camino
de ambos? Supongamos que hacemos la operacin 2 0,1425, cuyo resultado es 0,2850, qu
pasa con la misma operacin si el nmero est redondeado? Evidentemente da diferente puesto
que la operacin es 2 0,143 cuyo resultado es 0,286. La diferencia entre ambos es 0,001 que es
justamente la unidad de redondeo. Esto se vuelve an ms importante cuando se tiene la resta
de nmeros similares (a b con a b). De ah que la mayora de las computadoras actuales (y
los programas) trabajen con lo que se conoce como dgitos de guarda, es decir, ms precisin
que la mostrada en forma normal en pantalla. Pero este ejemplo sirve adems para desarrollar
otra forma de redondeo.
Redondeo exacto
Tal como dijimos, el nmero 0,1425 est mitad de camino de ser redondeado a 0,143 como
a 0,142. Este problema ha llevado a desarrollar el concepto de redondeo exacto, que consiste
en redondear todos los nmeros que terminan en 5 de manera de que el ltimo dgito signicativo
sea par. En consecuencia, aplicando este criterio, 0,1425 se redondea a 0,142 y no a 0,143. El
criterio va de la mano del dgito de guarda y debera ser el redondeo normal. (Para ms
detalles respecto a dgitos de guarda y el redondeo exacto, vase [6].)
- Pg. 12 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
1.5.3. Error de truncamiento/discretizacin
Este error surge de aproximar procesos continuos mediante procedimientos discretos o
de procesos innitos mediante procedimientos nitos. Como ejemplo del primer caso suele
tomarse la diferenciacin numrica como forma de aproximar el clculo de una derivada en un
punto (o su equivalente, la integracin numrica), en tanto que para el otro, el ejemplo ms es
usual es la utilizacin de mtodos iterativos para resolver sistemas de ecuaciones lineales.
En general, este error est asociado al uso de la serie de Taylor para aproximar funciones,
de modo que estimar una cota del error no conlleva una dicultad mayor. Sin embargo, en l
suelen interactuar el error inherente y/o el de redondeo, con lo que muchas veces su inuencia
no es bien advertida o es muy reducida. Para ello veamos un ejemplo tpico.
Supongamos que queremos calcular una aproximacin de f
t
(x
0
) para una funcin conti-
nua, pues no es posible obtener la derivada en forma analtica o resulta muy difcil. Por lo tanto,
usaremos un entorno del punto x
0
para calcular f
t
(x
0
) utilizando solamente f(x). Para ello nos
valdremos de la serie de Taylor. En efecto, para cualquier punto distante h de x
0
tendremos:
f(x
0
+h) = f(x
0
) +f
t
(x
0
)h +f
tt
(x
0
)
h
2
2
+f
ttt
(x
0
)
h
3
6
+f
tttt
(x
0
)
h
4
24
+. . . .
Entonces podemos despejar f
t
(x
0
), que resulta ser:
f
t
(x
0
) =
f(x
0
+h) f(x
0
)
h

_
f
tt
(x
0
)
h
2
+f
ttt
(x
0
)
h
2
6
+f
tttt
(x
0
)
h
3
24
+. . .
_
.
Si nuestro algoritmo para aproximar f
t
(x
0
) es:
f(x
0
+h) f(x
0
)
h
,
el error que cometemos en la aproximacin est dado por:

f
t
(x
0
)
f(x
0
+h) f(x
0
)
h

f
tt
(x
0
)
h
2
+f
ttt
(x
0
)
h
2
6
+f
tttt
(x
0
)
h
3
24
+. . .

.
El trmino de la derecha es el denominado error de truncamiento, pues es lo que se trunc
a la serie de Taylor para aproximar el valor buscado. Este error suele asociarse tambin con la
convergencia (o la velocidad de convergencia), que suele representarse como O(n) (generalmente,
como O(h
n
)), siendo n el parmetro que determina la velocidad o la convergencia. En nuestro
caso, y dado que h generalmente es menor a 1, podemos decir que la aproximacin es del tipo:
f
t
(x
0
) =
f(x
0
+h) f(x
0
)
h
+O(h),
que indica que el error que se comete es proporcional a h. (Est claro que adems estn los
trminos con h
2
, h
3
, etc., pero como h < 1 entonces h
2
<< h, h
3
<< h
2
, etc., la inuencia de
stos es mucho menor y despreciable.)
Nuevamente, supongamos por un momento que se cumple que todas las derivadas de
orden superior a dos son nulas, es decir, f
<i>
(x
0
) = 0 para i 3. Entonces tendremos que:

f
t
(x
0
)
f(x
0
+h) f(x
0
)
h

=
h
2

f
tt
()

con [x; x +h],


con lo cual, si conociramos f
tt
(), podramos acotar el error que estamos cometiendo por des-
preciar el trmino
h
2
f
tt
(x
0
).
Como ejemplo, apliquemos este algoritmo para obtener la derivada en x
0
= 0,45 (f
t
(0,45))
de la funcin f(x) = sen(2x). Como vericacin tomemos el valor analtico de la derivada
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 13 -
1.5. Errores Anlisis Numrico
en cuestin: f
t
(0,45) = 2 cos(2 0,45) = 5,97566. Para calcular la aproximacin tomemos
h = 0,1. As, tendremos:
f
t
(0,45) =
f(0,55) f(0,45)
0,1
=
sen(2 0,55) sen(2 0,45)
0,1
= 6,18034.
En la tabla 1.2 podemos ver los resultados obtenidos para distintos h.
Tabla 1.2: Valores de f
t
(x
0
) en funcin de h
h f
t
(x
0
) Error
10
1
6,18033988749895 2,04676 10
1
10
2
6,03271072100927 5,70464 10
2
10
3
5,98172474217345 6,06041 10
3
10
4
5,97627391137889 6,09582 10
4
10
5
5,97572532307633 6,09936 10
5
10
6
5,97567042914804 6,09966 10
6
10
7
5,97566494175972 6,12277 10
7
10
8
5,97566438553798 5,60549 10
8
10
9
5,97566451876474 1,89282 10
7
10
10
5,97566607307698 1,74359 10
6
10
11
5,97566995885756 5,62937 10
6
10
12
5,97544236313752 2,21966 10
4
10
13
5,97633054155722 6,66212 10
4
10
14
5,99520433297584 1,95400 10
2
10
15
5,88418203051333 9,14823 10
2
10
16
8,32667268468867 2,35101
Si observamos con atencin, veremos que el algoritmo utilizado aproxima muy bien el
valor buscado hasta h = 10
8
. Si estimamos la cota de error con f
tt
(x
0
)
10
8
2
obtenemos una
valor muy parecido al error indicado en la tabla 1.2
4
:
f
tt
(0,45)
10
8
2
= 6,09975 10
8
(5,60549 10
8
).
Sin embargo, a partir de h < 10
8
el error vuelve a crecer. En la gura 1.2 se puede ver
como evoluciona el error:
Si analizamos en detalle, vemos que la tendencia del error de truncamiento es lineal (en
escala logartmica) pero para h < 10
8
el error aumenta y no sigue una ley determinada. Este
empeoramiento de la aproximacin se debe a la incidencia del error de redondeo, es decir, la
unidad de mquina pasa a ser ms importante que el error de truncamiento. Es por eso que
no siempre el utilizar una mejor precisin ayuda a mejorar los resultados nales. En este
tipo de problemas, es conveniente que el error que domine los clculos sea el de truncamien-
to/discretizacin.
Veremos ms adelante que esta incidencia del paso en el clculo de una aproximacin
numrica de la derivada primera, nos alerta de la inestabilidad de la diferenciacin numrica, es
decir, es muy sensible a la propagacin del error de redondeo.
4
En forma rigurosa deberamos hallar , pero dado que el intervalo es tan pequeo, puede tomarse x
0
.
- Pg. 14 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
Figura 1.2: Evolucin del error del algoritmo.
1.5.4. Errores por overow y underow
Asociados a la representacin numrica existen otros dos tipos de errores. Son los denomi-
nados errores por overow y por underow. Estos errores surgen por las limitaciones de
nuestro sistema para representar nmeros muy grandes (overow) o muy chicos (undeow).
Es usual que los manuales del usuario de una calculadora indiquen el nmero ms grande (y el
ms chico) que puede ser representado. Por ejemplo, las calculadoras Casio de la dcada de los
80 no podan representar n! si n > 69 pues el nmero ms grande que podan representar era
9,99999999910
99
(69!=1,7112245242814110
98
y 70!=1,1978571669969910
100
). Algo similar
ocurre con los nmeros muy chicos.
Un error muy comn es olvidarse que en los clculos intermedios pueden aparecer
nmeros muy grandes o muy chicos, fuera del rango de nuestra representacin numrica, que
vuelven a un algoritmo intil. Por ejemplo, supongamos que nuestro sistema de representacin
numrica en una calculadora represente solamente los nmeros entre 10.000 y 0,0001; y entre
0,0001 y 10.000. Si queremos obtener el resultado de

101
2
50, como 101
2
= 10.201 > 10.000
y no lo puede representar, indicar un error por overow, es decir, nmero ms grande que el
mximo a representar, y cortar la ejecucin del algoritmo.
El error por underow es parecido. En este caso, el problema es no poder representar
un nmero muy pequeo, por lo que lo dene como cero (0). Si modicamos levemente el ejemplo
anterior, y queremos obtener el resultado de
_
0,01 0,006
2
, como 0,006
2
= 0,000036 < 0,0001 y
no le es posible representarlo, har 0,006
2
= 0,0000 y la operacin quedar como

0,01 0,0 =

0,01 = 0,1.
La diferencia entre ambos es que el error por overow no pasa desapercibido, mientras
que el underow s, y en consecuencia, puede ser ms peligroso.
1.6. Propagacin de errores
Hemos visto varios ejemplos que nos mostraron en forma evidente la incidencia que pueden
llegar a tener los errores en los resultados que entrega un algoritmo, particularmente, el error
de redondeo. Veremos a continuacin la propagacin de dos de los errores ms problemticos, el
inherente y el de redondeo.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 15 -
1.6. Propagacin de errores Anlisis Numrico
1.6.1. Propagacin del error inherente
Supongamos que tenemos un problema numrico tal que podemos expresarlo como x
y(x), siendo x un vector de 1
n
, que corresponde a los datos de entrada, e y un vector de 1
m
,
que corresponde a los resultados. Podemos escribir entonces que:
x
_

_
x
1
x
2
.
.
.
x
n
_

_
y(x) =
_

_
y
1
(x)
y
2
(x)
.
.
.
y
m
(x)
_

_
,
donde y
i
(x) : 1
n
1; y(x) : 1
n
1
m
.
Por otra parte, supongamos que en lugar de x conocemos x, es decir, una aproximacin
de x; podemos denir que e
x
i
= x
i
x
i
, que tambin conocemos. Y nuestra ltima suposicin
es que las y
i
(x) pertenecen a C

(x), lo que nos permite desarrollar y(x) en una serie de Taylor


alrededor de x:
y(x) = y ( x) +
[y
1
( x); y
2
( x); . . . ; y
m
( x)]
[x
1
; x
2
; . . . ; x
n
]
(x x) +T (x x) .
Podemos suponer ahora que e
x
i
= x
i
x
1
para i [1,n] es muy pequeo, y que por eso
T (x x) es despreciable, con lo que nos queda:
y
i
(x) y
i
( x) =
n

j=1
_
y
i
( x)
x
j
(x
j
x
j
)
_
para i = 1; 2; . . . ; m,
que por analoga a e
x
i
podemos expresar como:
e
y
i
=
n

j=1
y
i
( x)
x
j
e
x
j
; para i = 1; 2; . . . ; m, (1.3)
que nos da el error de y
i
en funcin de del error de x
j
. Esta expresin es muy til porque nos
permite obtener o determinar el error de un resultado si conocemos el error de los datos de
entrada, es decir, cmo se propagan los errores inherentes. Veamos algunos ejemplos:
1. Suma: Hagamos y (x
1
; x
2
) = x
1
+x
2
, entonces tendremos:
e
y
= e
x
1
+x
2
=
y ( x
1
; x
2
)
x
1
e
x
1
+
y ( x
1
; x
2
)
x
2
e
x
2
, (1.4)
o sea,
e
y
= 1 e
x
1
+ 1 e
x
2
e
y
= e
x
1
+e
x
2
. (1.5)
El error relativo ser:
e
r
y
=
e
y
y
=
e
x
1
+e
x
2
x
1
+x
2
=
e
x
1
x
1
+x
2
+
e
x
2
x
1
+x
2
. (1.6)
Sabemos que e
x
1
= x
1
e
r
x
1
y e
x
2
= x
1
e
r
x
2
, por lo que podemos escribir:
e
r
y
=
x
1
e
r
x
1
x
1
+x
2
+
x
2
e
r
x
2
x
1
+x
2
=
x
1
x
1
+x
2
e
r
x
1
+
x
2
x
1
+x
2
e
r
x
2
. (1.7)
2. Producto: En este caso tenemos y (x
1
; x
2
) = x
1
x
2
, entonces:
e
y
= x
2
e
x
1
+x
1
e
x
2
. (1.8)
El error relativo para el producto ser:
e
r
y
=
e
y
y
=
x
2
e
x
1
x
1
x
2
+
x
1
e
x
2
x
1
x
2
= e
r
x
1
+e
r
x
2
. (1.9)
- Pg. 16 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
Hasta aqu no pareciera haber problemas. Sin embargo, raramente se conoce el error con
su signo, de ah que lo que se busca es una cota del error, no el error en s mismo. En ese caso,
las expresiones del error relativo se modican levemente:
1. Suma: e
r
y
=
[x
1
[
[x
1
+x
2
[

e
r
x
1

+
[x
2
[
[x
1
+x
2
[

e
r
x
2

.
2. Producto: e
r
y
=

e
r
x
1

e
r
x
2

.
A partir de este razonamiento es que la suma es una operacin mal condicionada cuando
se da que [x
1
[ [x
2
[ y x
2
< 0 es decir, la suma algebraica. Suponiendo que e
r
x
i
r se tiene:
e
r
y
=
[x
1
[ +[x
2
[
[x
1
x
2
[
r.
lo que hace que e
r
y
crezca en forma incontrolada, pues el coeciente siempre es mayor a uno, y
puede ser mucho mayor que 1 si x
1
x
2
es muy chico.
Analizaremos ahora la propagacin del error de redondeo.
1.6.2. Propagacin del error de redondeo
Supongamos ahora que en nuestro problema no tenemos errores inherentes. Por lo tanto,
para x y(x) : 1
n
1
m
slo tendremos errores de redondeo debido al algoritmo utilizado.
Sea P(x) nuestro algoritmo para obtener y(x). Si no hubieran errores por redondeo, entonces
y(x) = P(x), pero lo que en realidad obtendremos es y(x) = P(x), es decir que podemos escribir
que:
y(x) = y(x) +E(x) y
i
(x) = y
i
(x)
_
1 +
p

k=1
F
i,k
(x)
k
_
,
con [
k
[ , y donde los F
i,k
son los factores de amplicacin.
1.6.3. Propagacin de los errores inherentes y de redondeo
Ya hemos visto la expresin para calcular la propagacin de los errores inherentes, que
es:
e
y
i
=
n

j=1
y
i
(x)
x
j
e
x
j

=
n

j=1
y
i
( x)
x
j
e
x
j
. (1.10)
Como adems tendremos P(x) en vez de y(x), entonces:
e
y
i

= e
P
i
=
n

j=1
P
i
( x)
x
j
e
x
j
, (1.11)
y el error relativo ser:
e
r
P
i
=
n

j=1
P
i
( x)
x
j
x
j
P
i
( x)
e
r
x
j
, (1.12)
en consecuencia, el coeciente que afecta a e
r
x
j
ser el nmero de condicin del problema, que se
dene como :
C
p
i
=
n

j=1
P
i
( x)
x
j
x
j
P
i
( x)
. (1.13)
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 17 -
1.7. Grca de proceso Anlisis Numrico
Del mismo modo, tendremos el trmino de estabilidad, que se dene como:
y
i
(x) P
i
( x) = P
i
( x)
p

k=1
F
i,k
(

X)
k
T
e
=
p

k=1
F
i,k
(

X)
k

=
p

k=1
F
i,k
(

X). (1.14)
Si suponemos que e
r
x
j
r, entonces, tendremos:
e
r
y
i

= C
p
i
r +T
e
i
, (1.15)
que ser el error relativo total.
Finalmente, si suponemos ahora que r

= , entonces tenemos:
e
r
y
i

= (C
p
i
+T
e
i
) = C
p
i
C
p
i
+T
e
i
C
p
i
,
y podemos decir que un algoritmo es estable si:
C
p
i
+T
e
i
C
p
i
> / > 1 1 +
T
e
i
C
p
i
> / > 1, (1.16)
es decir, un algoritmo es estable si los errores de redondeo no tienen gran incidencia en el error
del resultado o al menos son del mismo orden que los errores inherentes (1 +
T
e
i
C
p
i

= 2). Sin
embargo, esta armacin debe tomarse con cuidado. Dado que lo que se analiza es la relacin
T
e
C
p
, debe tenerse en cuenta que si C
p
>> 1 y
T
e
C
p
1 entonces T
e
>> 1, por lo que es posible
que el algoritmo sea inestable.
1.7. Grca de proceso
Una forma de obtener los coecientes C
p
y T
e
es mediante la grca de proceso. sta
consiste en un diagrama de ujo que representa grcamente todo el proceso de una operacin
dada, permitiendo el anlisis de los errores relativos y de redondeo que intervienen en l. No se in-
cluyen en esta grca los errores debidos a truncamiento/discretizacin, que deben ser analizados
en forma separada.
En las guras 1.3 y 1.4 se pueden ver las grcas de proceso de la suma y el producto.
Figura 1.3: Grca de proceso de la suma.
- Pg. 18 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
Figura 1.4: Grca de proceso del producto.
Analicemos brevemente los errores inherentes y de redondeo en ambos casos. Si nos jamos
en la grca de la suma, y tomamos una cota superior para los errores relativos inherentes de x
e y, por ejemplo, [e
r
x
[ ;

e
r
y

< [r[, entonces el coeciente C


p
se puede escribir como:
C
p
=
[x[ +[y[
[x +y[
que es el mismo resultado obtenido antes para la suma. Algo similar se obtiene para el producto.
La ventaja de este mtodo es que facilita el anlisis del error de redondeo al introducirlo
en cada operacin, permitiendo el clculo del trmino de estabilidad (T
e
). Segn estas grcas,
en ambos casos el T
e
es igual a 1.
Veamos un ejemplo. Analicemos la propagacin de errores del algoritmo inestable ya visto
y
n
=
1
n
10 y
n1
,
pero limitndonos a la tercera iteracin, con y
0
= ln(1,1).
Podemos ver lo laborioso que resulta el armado de la grca, an cuando lo hemos
limitado hasta obtener el valor y
3
.
Supongamos que y
0
no tiene error (E
y
0
= 0) por lo tanto e
r
y
0
= 0. Tambin podemos
considerar que todas las constantes no tienen errores inherentes, pues no son valores obtenidos
por clculo. En consecuencia, al no existir error inherente, lo nico que se propaga es el error de
redondeo de cada una de las operaciones. As, el desarrollo completo de la propagacin de los
errores resulta ser:
e
r
y
3
=
1
y
3
[100
1
+ 100
3
+ 100
4
5
5
5
6
+ 100
6
+
5
7
+ 100
7
+
1
3

8
5
9
+ 100
9
+
+1000 y
0
(
2

9
)] .
Si adems imponemos que
i
< , y con esto denimos nuestra cota de error relativo,
tendremos que
e
r
y
3
=
1
y
3
(620 + 6000 y
0
) =
1
y
3
[620 + 6000 ln(1,1)] .
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 19 -
1.7. Grca de proceso Anlisis Numrico
Figura 1.5: Grca de proceso del algoritmo.
Como
y
3
=
1
3
10
_
1
2
10 (1 10 y
0
. .
y
1
)
_
. .
y
2
,
el valor de y
3
podemos escribirlo como:
y
3
= 95,3333 . . . 1000 ln(1,1).
De esta forma, tenemos que nuestro coeciente T
e
resulta ser
T
e
=
620 + 6000 ln(1,1)
95,3333 . . . 1000 ln(1,1)
,
y si reemplazamos los valores numricos, obtenemos el siguiente coeciente de estabilidad para
el caso de y
3
:
T
e
25319.
Resulta evidente que el algoritmo es inestable para cualquier valor de y
0
. Si analizamos
el coeciente de condicin (C
p
), obtendremos lo siguiente:
C
p
=
1000 y
0
95,3333 . . . 1000 ln(1,1)
.
- Pg. 20 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
Cuando reemplazamos los valores obtenemos que
C
p
4116;
y si analizamos la relacin entre C
p
y T
e
nos queda que
1 +
T
e
C
p
= 1 +
25319
4116
7,15 > 2;
lo que nos muestra que el algoritmo es inestable y, ciertamente, mal condicionado.
Vimos que la grca de proceso es bastante til para obtener ambos coecientes, pero
tambin que puede convertirse en algo muy difcil de desarrollar cuando el algoritmo con miles (o
millones) de pasos, como puede ser la resolucin de un sistema de ecuaciones lineales mediante
un mtodo directo. Analizar millones de operaciones mediante la grca de proceso puede ser
una tarea imposible. Por lo tanto, debemos buscar otra manera de estimar ambos coecientes.
1.8. Perturbaciones experimentales
Supongamos que queremos estudiar la condicin o la estabilidad de un algoritmo con miles
de pasos. Ya dijimos que hacer la grca de proceso puede ser una tarea imposible. Entonces,
cmo hacemos para saber si dicho algoritmo est bien condicionado o es estable? Veamos. Para
empezar, estudiemos cmo obtener una aproximacin de la condicin del problema. Puesto que
la condicin viene dada por la propagacin (o no) de los errores relativos inherentes, busquemos
la manera de obtener en forma numrica una estimacin del coeciente de condicin, o sea, del
C
p
. En el mismo sentido, el trmino de estabilidad, T
e
est relacionado con la propagacin de
los errores de redondeo. Busquemos tambin algn procedimiento que nos permita obtener una
estimacin de dicho coeciente.
1.8.1. Estimacin del nmero de condicin
Partamos de la expresin nal del error relativo de un resultado:
e
r
= C
p
r +T
e

y supongamos por un momento que no tenemos errores de redondeo, es decir, despreciamos T
e
.
En consecuencia, lo que tendremos es:
e
r
= C
p
r C
p
=
e
r
r
(1.17)
Y con esto podemos estimar valor del C
p
. Cmo lo hacemos? Perturbando los valores de
los datos de entrada. La idea es la siguiente: se toman los datos de entrada (x, y, etc.), y se aplica
el algoritmo a analizar, obteniendo el resultado correspondiente. Luego se perturban los datos
de entrada, es decir, se les incorpora un error. Con estos datos de entrada, se vuelve a calcular
un resultado, que seguramente diferir del anterior, pues los datos no son iguales. Este ltimo
paso se puede hacer varias veces introduciendo distintas perturbaciones (errores) a los datos de
entrada.
Una vez obtenidos los distintos valores de los resultados, tomamos el resultado sin per-
turbar como resultado exacto, con el cual vamos a calcular los errores relativos de los otros
resultados perturbados. Con cada uno de stos obtendremos diferentes e
r
i
. Como adems ten-
dremos diferentes r
i
, lo que obtendremos nalmente son diferentes C
p
i
. Como hemos supuesto
que los errores de redondeo son despreciables, todos los C
p
i
deberan ser similares, con lo cual
tendremos una estimacin de la condicin del problema, es decir, estimamos un C
p
. Con esta
estimacin podremos establecer si el problema est bien o mal condicionado.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 21 -
1.8. Perturbaciones experimentales Anlisis Numrico
Veamos un ejemplo. Tomemos la siguiente funcin para calcular sen(x):
f(x) = x
x
3
6
+
x
5
120

x
7
5040
+
x
9
362880
,
funcin obtenida a partir del truncamiento de la serie de MacLaurin. Con ella calculemos sen(

4
)
y luego perturbemos el dato de entrada.
El primer resultado lo obtenemos con x =

4
:
f
_

4
_
=

4

_

4
_
3
6
+
_

4
_
5
120

_

4
_
7
5040
+
_

4
_
9
362880
= 0,70711
Perturbemos ahora x haciendo x
1
= x (1 + 0,001) (r
1
= 0,001), y calculemos f(x
1
):
f
_

4
(1 + 0,001)
_
= 0.70655
Introduzcamos una nueva perturbacin, esta vez haciendo x
2
= x (1 0,001) (r
2
= 0,001), y
calculemos f(x
2
):
f
_

4
(1 0,001)
_
= 0.70766
Ahora calculemos los dos C
p
. Para el primer caso tenemos:
C
p
=
0,70711 0,70655
0,70711

1
0,001
= 0,78571
Para el segundo caso tenemos:
C
p
=
0,70711 0,70766
0,70711

1
0,001
= 0,78509
Si calculamos el C
p
en forma analtica obtenemos:
C
p
=
f(x)
x
=
d f(x)
d x
= 1
_

4
_
2
2
+
_

4
_
4
24

_

4
_
6
720
+
_

4
_
8
40320
cos
_

4
_
C
p
0,78540
Esto demuestra que la estimacin del C
p
es muy buena y que el problema est bien
condicionado, pues C
p
< 1.
5
1.8.2. Estimacin del trmino de estabilidad
Para obtener una estimacin del trmino de estabilidad, seguiremos un esquema similar
al visto para el nmero de condicin. Partamos nuevamente de la expresin nal para el error
relativo:
e
r
= C
p
r +T
e

Ahora consideremos como hiptesis que los errores inherentes son despreciables, por lo que po-
demos decir que el error relativo es:
e
r
= T
e
. (1.18)
El error relativo est denido como:
e
r
=
y y
y
,
por lo tanto podemos escribir:
y y
y
= T
e
.
5
De hecho, las calculadoras poseen algoritmos de este tipo para obtener los valores de las funciones trigono-
mtricas y trascendentes.
- Pg. 22 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
Al calcular el valor de y con dos precisiones diferentes t y s, (
s
= 10
1s
y
t
= 10
1t
),
y asumiendo que t > s, obtenemos los siguientes errores relativos:
e
r
t
=
y y
t
y
= T
e

t
; e
r
s
=
y y
s
y
= T
e

s
.
Si restamos e
r
t
a e
r
s
tenemos:
e
r
s
e
r
t
=
y
t
y
s
y
= T
e
(
s

t
),
de donde despejamos T
e
:
T
e
=
y
t
y
s
y (
s

t
)
.
Como el valor de y no lo conocemos, tomamos y
t
en su lugar. En consecuencia, la expresin
queda:
T
e
=
y
t
y
s
y
t
(
s

t
)
. (1.19)
Esta expresin nos permite obtener una estimacin del T
e
calculando dos aproximaciones
de y, y
t
y y
s
, con diferente precisin, utilizando el mismo algoritmo.
Como ejemplo, utilicemos el mismo algoritmo del caso anterior. Calculemos el valor de
sen
_

4
_
con tres precisiones distintas: s = 4; t = 8 y u = 15. Para cada caso tendremos:
y
s
= 0,706; y
t
= 0,7071068 y y
u
= 0,70710678293687. Con estos valores calculamos los T
e
,
tomando como valor de referencia y
u
. As, obtenemos los siguientes valores:
T
e
s
=
y
u
y
s
y
u
(
s

u
)
=
0,70710678293687 0,706
0,70710678293687 (10
3
10
14
)
= 1,565;
y
T
e
t
=
y
u
y
t
y
u
(
t

u
)
=
0,70710678293687 0,7071068
0,70710678293687 (10
7
10
14
)
= 0,241.
Si analizamos un poco los valores obtenidos, vemos que en el primer caso el error de
redondeo se amplica, puesto que el T
e
es mayor que 1. En cambio, en el segundo, la situacin
es muy buena porque los errores se mantienen acotados, no se amplican (T
e
< 1). Podramos
decir que calcular el valor de y con ms precisin mejora el resultado nal, pero hemos vistos
que no siempre esto es cierto.
1.9. Inestabilidad en los algoritmos
Como hemos dicho, uno de los objetivos del anlisis numrico es obtener algoritmos que
estn bien condicionados y sean estables. Hasta ahora nos hemos referido a los principales errores
que afectan a los algoritmos y hemos analizado los distintos errores y su propagacin, segn sea
el caso. Adems, hemos visto que la condicin de un problema es independiente del algoritmo,
en tanto que la estabilidad es una propiedad el mismo. Es por eso que el anlisis numrico
se concentra ms en estudiar cmo hacer que un algoritmo sea estable ms que en analizar su
condicionamiento, aunque en algunos casos este ltimo anlisis sea muy importante, como por
ejemplo, para resolver sistemas de ecuaciones lineales.
La mayora de los libros y cursos de anlisis numrico hacen hincapi en varios conceptos
para obtener un algoritmo estable. Alguno de stos son:
1. La resta de dos nmeros muy similares (cancelacin) siempre debe ser evitada.
2. El problema del error de redondeo es su acumulacin.
3. Aumentar la precisin en los clculo mejora la exactitud de los resultados.
Segn N. Higham (vase [8], captulo 1), estos conceptos son en realidad malos entendidos,
y desarrolla algunos ejemplos que muestran que no siempre es as. Veamos alguno de ellos.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 23 -
1.9. Inestabilidad en los algoritmos Anlisis Numrico
1.9.1. Cancelacin
En su libro, Higham presenta el siguiente caso. Supongamos que debemos hacer la siguien-
te operacin:
f(x) =
1 cos(x)
x
2
,
con x = 1,2 10
5
y con cos(x) = c redondeado a 10 dgitos signicativos, con un valor de
c = 0,9999999999;
de manera que
1 c = 0,0000000001.
Al calcular f(x) =
1c
x
2
se obtiene f(x) =
10
10
1,4410
10
= 0,6944 . . ., resultado evidentemente
incorrecto pues es claro que 0 f(x) 1/2 para todo x ,= 0.
Al analizar la cota del error relativo para la resta x = a

b, donde a = a(1 + a) y

b = b(1 + b) obtiene:

x x
x

aa +bb
a b

max([a[ , [b[)
[a[ +[b[
[a b[
.
La cota del error relativo de x es muy grande cuando [a b[ << [a[ + [b[. Por lo tanto, arma
que una resta con esta condicin da preeminencia a los errores iniciales.
Tambin arma que la cancelacin no siempre es mala, por varias razones. La primera
es que los nmeros a restar pueden ser libres de error. La segunda, que la cancelacin puede ser
una seal de un problema intrnsecamente mal condicionado y, por lo tanto, inevitable. Tercero,
los efectos de la cancelacin dependen del contexto en que se efecta. Si x >> y z > 0, la
resta en la operacin x + (y z) es inocua.
1.9.2. Acumulacin del error de redondeo
Desde que se cre la primera computadora, la acumulacin del error de redondeo ha
sido uno de los dolores de cabeza de los especialistas, como se puede ver en esta frase: La
extraordinaria rapidez de las actuales mquinas signica que en un problema tpico se realizan
millones de operaciones con coma (punto) otante. Esto quiere decir que la acumulacin de
errores de redondeo puede ser desastrosa. Para Higham esta armacin, si bien cierta, no es
del todo correcta o est mal enfocada. En muchas ocasiones la inestabilidad est dada por la
incidencia de unos pocos errores de redondeo y no por la acumulacin de millones de ellos. Un
ejemplo en ese sentido est dado por el algoritmo del ejemplo inicial, en el cual el error est
dado por el redondeo de y
n1
, que se propaga a medida que el valor es cada vez ms chico. Otro
ejemplo es el clculo de e usando su denicin:
f(n) = lm
n
_
1 +
1
n
_
n
,
tomando n nito pero lo sucientemente grande. En la tabla 1.3 podemos ver los resultados para
distintos n obtenidas en MS Excel
R _
.
Como podemos observar, a medida que n aumenta, mejora la aproximacin de e. Sin
embargo, eso ocurre slo para n < 10
8
. Cuando n 10
9
la aproximacin se vuelva cada vez
peor, como es el caso de n = 10
15
. Al igual que en el ejemplo ya citado, el problema es la
imposibilidad de representar correctamente
1
n
cuando n es muy grande y, en consecuencia, un
solo error de redondeo incide negativamente en el resultado obtenido.
- Pg. 24 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 1. Errores en los mtodos numricos
Tabla 1.3: Valores de f(n) y diferencia con e.
n f (n) [e f (n)[
10
1
2,593742460100000 1,24539 10
1
10
2
2,704813829421530 1,34680 10
2
10
3
2,716923932235590 1,35790 10
3
10
4
2,718145926824930 1,35902 10
4
10
5
2,718268237192300 1,35913 10
5
10
6
2,718280469095750 1,35936 10
6
10
7
2,718281694132080 1,34327 10
7
10
8
2,718281798347360 3,01117 10
8
10
9
2,718282052011560 2,23553 10
7
10
10
2,718282053234790 2,24776 10
7
10
11
2,718282053357110 2,24898 10
7
10
12
2,718523496037240 2,41668 10
4
10
13
2,716110034086900 2,17179 10
3
10
14
2,716110034087020 2,17179 10
3
10
15
3,035035206549260 3,16753 10
1
1.9.3. Aumento de la precisin
El caso anterior muestra tambin que el aumento de la precisin no siempre signica una
mejora en los resultados obtenidos. Es usual que cuando la nica fuente de error es el redondeo,
la forma tradicional de corregir esto es aumentar la precisin y ver qu ocurre con los resultados,
comparando cuntos dgitos coinciden en los resultados original y con mayor precisin.
Pero en el caso de trabajar con un problema mal condicionado, el aumento de la precisin
no resulta en una mejora en los resultados. En ese caso, es muy posible que los resultados
obtenidos no tengan ningn dgito en comn. Un ejemplo tpico es el siguiente. Supongamos que
resolvemos el siguiente sistema de ecuaciones lineales:
_
10
4
2
1 1
_

_
x
1
x
2
_
=
_
4
3
_
.
Si utilizamos dos precisiones diferentes para resolver el sistema, una con cuatro decimales
y otra con tres, obtenemos los siguientes vectores [x]:
_
x
1
x
2
_
1
=
_
0,01
2
_
con tres decimales,
_
x
1
x
2
_
2
=
_
1,0001
2
_
con cuatro decimales.
Vemos que el aumento de la precisin nos da un resultado completamente distinto para la
primera componente y por consiguiente, no son comparables. Este un tpico caso de una matriz
considerada como mal condicionada y que debemos transformarla para obtener resultados
mejores. As, si intercambiamos las tenemos:
_
1 1
10
4
2
_

_
x
1
x
2
_
=
_
3
4
_
,
la solucin que obtenemos es:
_
x
1
x
2
_
=
_
1,0
2,0
_
cualquiera sea la precisin utilizada y que corresponde a la solucin correcta.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 25 -
1.10. Diseo de algoritmos estables Anlisis Numrico
Es evidente que el aumento en la precisin de los coecientes no mejora los resultados.
Este es un caso especial de matrices cuya solucin merece un estudio ms detallado que se ver
en Sistemas de Ecuaciones Lineales.
1.10. Diseo de algoritmos estables
El anlisis de los errores y, fundamentalmente, de la propagacin de estos errores, nos
ayuda a obtener algunos lineamientos para disear algoritmos estables, si bien no hay recetas
simples para ello. La mejor recomendacin es estar alerta en obtener un algoritmo estable cuando
se lo disea y no concentrarse solamente en otras cuestiones, como el costo computacional o la
posibilidad de su paralelizacin.
En su libro, Higham da una serie de lineamientos, entre los cuales se destacan los siguien-
tes:
1. Evitar la resta de cantidades con errores.
2. Minimizar el tamao de las cantidades intermedias relativas al resultado nal. La razn
es que si las cantidades intermedias son demasiado grandes, el resultado nal puede ser
consecuencia de una resta daina. O visto de otra manera, cantidades grandes tapan los
datos iniciales y en consecuencia, se pierde informacin.
3. Es ms ventajoso escribir una expresin que actualice la informacin como
valor
nuevo
= valor
viejo
+ pequea correccin
si la pequea correccin se puede calcular con muchos dgitos signicativos.
6
Muchos de los
mtodos numricos se expresan de esta forma, como por ejemplo, el mtodo de Newton-
Raphson, el Mtodo de los Gradientes Conjugados para resolver sistemas de ecuaciones
lineales, etc. Un ejemplo clsico es el mtodo del renamiento iterativo de la solucin para
un sistema de ecuaciones lineales de la forma Ax = B, en el que se calcula el residuo
r
1
= B A x
1
, y con l un valor
1
resolviendo A
1
= r
1
, para luego mejorar el resultado
obtenido con la iteracin x
2
= x
1
+
1
.
4. Usar transformaciones bien condicionadas.
Una recomendacin importante es que se revisen los resultados intermedios, es decir, los
que se generan durante el procedimiento de clculo. Esta prctica era muy comn en los inicios
de la computacin electrnica. En su libro, Higham seala lo siguiente:
Wilkinson, el padre del anlisis de la propagacin de errores, gan una gran ex-
periencia respecto a la estabilidad numrica gracias a ese tipo de revisin. Es irnico
que con las grandes facilidades que se tienen hoy para rastrear los pasos de un al-
goritmo (ventanas mltiples, herramientas grcas, impresoras rpidas), a veces se
obtengan menos resultados que en esa poca en las cuales slo se contaba con papel y
lmparas (vlvulas).
6
Sin embargo, Higham mismo reconoce que no es necesario operar con muchos dgitos signicativos para
obtener buenos resultados utilizando este procedimiento. Vase [9]
- Pg. 26 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Captulo 2
Sistemas de Ecuaciones Lineales
2.1. Introduccin
Una de las caractersticas fundamentales del uso de las computadoras es la dicultad
para trabajar con mtodos simblicos. Si bien hoy existen varios programas que trabajan con
matemtica simblica (Mathematica, Maple, MathCAD), no es lo ms usual y mucha veces la
capacidad de esos programas se ve excedida por las demandas ingenieriles en cantidad de clculo.
Ms de una vez la necesidad de obtener un resultado en el menor tiempo posible hace imperioso
contar con algn mtodo que estime el valor en forma numrica.
Buena parte de los problemas ingenieriles de la actualidad hacen un uso intensivo de
sistemas de ecuaciones lineales, usualmente denidos como Ax = B. En particular, el uso ex-
tendido de programas que aplican el mtodo de los elementos nitos o de las diferencias nitas
es un ejemplo de ello. En esos programas, como los de anlisis estructural, el ncleo princi-
pal del programa es la resolucin de sistemas de ecuaciones lineales de grandes dimensiones
(1.000 1.000, 10.000 10.000, etc.). En este tipo de problemas no resulta muy eciente invertir
la matriz de coecientes para hallar la solucin del sistema. Tambin la aplicacin de mtodos
de regresin mltiple requieren la solucin de sistemas de ecuaciones lineales, algo usual en es-
tadstica. Podemos decir, entonces, que en ingeniera el uso de sistemas de ecuaciones lineales es
una prctica habitual.
Por lo tanto, uno de los temas ms importantes del anlisis numrico es el estudio de la
resolucin de estos sistemas de ecuaciones. Si bien conocemos mtodos muy precisos (exactos)
para resolver sistemas de pequeas dimensiones, el problema es analizar cmo resolver sistemas
de grandes a muy grandes dimensiones.
Del lgebra lineal sabemos que podemos obtener la solucin de Ax = B si hacemos
x = A
1
B, pero obtener la inversa de A no es una tarea sencilla, ms si la matriz no sigue un
patrn determinado o si est mal condicionada, concepto que estudiaremos ms adelante.
Como introduccin y repaso, veremos primero algunas deniciones para luego estudiar
varios mtodos que resuelven un sistema de ecuaciones sin invertir la matriz de coecientes de
manera muy eciente y para distintas condiciones.
2.2. Deniciones
Empezaremos dar algunas deniciones relacionadas con los vectores y las matrices.
Denicin 2.1. Una matriz que tiene la misma cantidad de las que de columnas (A es de nn
dimensiones) se denomina matriz cuadrada.
Para que una matriz pueda tener inversa debe ser necesariamente cuadrada.
Denicin 2.2. Una matriz cuyo determinante es no nulo (det(A) ,= 0) se denomina matriz no
singular.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 27 -
2.3. Matrices triangulares Anlisis Numrico
Denicin 2.3. Una matriz A cuadrada tiene inversa, es decir, existe A
1
, si A es una matriz
no singular.
A partir de esta ltima denicin podemos decir que un sistema de ecuaciones lineales
tiene solucin nica si la matriz A del sistema Ax = B es cuadrada y no singular.
Denicin 2.4. Se denomina rango de un matriz al nmero de las que son linealmente inde-
pendiente.
Por lo tanto, el rango de una matriz cualquiera siempre es menor o igual al nmero de
las (rango(A) nmero de las). De esto ltimo se puede inferir que una matriz A de n n
dimensiones es no singular si su rango es n (rango(A) = n). Si el vector B se puede escribir como
combinacin lineal de las columnas de la matriz A y la matriz A es singular, entonces existen
innitas soluciones para el sistema.
Denicin 2.5. Una norma vectorial en 1
n
es una funcin, | |, de 1
n
en 1, con las siguientes
propiedades:
1. |x| > 0 para todo x 1
n
;
2. |x| = 0 si y slo si x 0 (x = [0; 0; . . . ; 0]
T
);
3. | x| = [[ |x| para todo 1 y x 1
n
, y;
4. |x +y| |x| +|y| para todo x; y 1
n
.
Denicin 2.6. Las normas l
2
y l

de un vector estn denidas por:


1. |x|
2
=

_
n

i=1
x
2
i
(tambin llamada norma eucldea);
2. |x|

= max
1in
[x
i
[.
Denicin 2.7. Una norma matricial sobre un conjunto de todas las matrices n n es una
funcin de valor real, | |, denida en este conjunto y que satisface para todas las matrices A y
B de n n y todos los nmeros reales :
1. |A| > 0;
2. |A| = 0 si y slo si A 0, es decir, A es la matriz nula;
3. | A| = [[ |A|;
4. |A+B| |A| +|B|;
5. |A B| |A| |B|.
2.3. Matrices triangulares
Una matriz triangular es aquella que slo tiene coecientes no nulos en la diagonal princi-
pal y por encima o por debajo de ella. Hay dos tipos: la matriz triangular superior, generalmente
denominada U, cuando los coecientes nulos estn por debajo de la diagonal principal, y la matriz
triangular inferior, denominada L, cuando los ceros estn ppor debajo de la diagonal principal.
Estas matrices son muy convenientes cuando se deben resolver sistemas de ecuaciones lineales
puesto que permiten una rpida obtencin de los resultados sin la necesidad de invertir la ma-
triz de coecientes A. Estos dos tipos de matrices dan lugar a dos mtodos muy utilizados: la
susticin inversa, para matrices U, y la sustitucin directa, para matrices L.
- Pg. 28 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Por ejemplo, para el primer caso, una matriz U de 4 4 tiene la siguiente forma:
_

_
u
11
u
12
u
13
u
14
0 u
22
u
23
u
24
0 0 u
33
u
34
0 0 0 u
44
_

_
Para resolver un sistema Ux = B basta con empezar por la ltima la para obtener x
4
y
luego ir reemplazando este valor en las ecuaciones anteriores, es decir, hacer:
x
4
=
b
4
u
44
x
3
=
b
3
u
34
x
4
u
33
.
.
.
x
i
=
b
i

j=i+1
u
ij
x
j
u
ii
(2.1)
Esta forma de resolver el sistema de ecuaciones lineales se denomina sustitucin inversa.
Cuando la matriz es triangular inferior el procedimiento para resolver Lx = B es:
x
1
=
b
1
l
11
x
2
=
b
2
l
21
x
1
l
22
.
.
.
x
i
=
b
i

i1

j=1
l
ij
x
j
l
ii
(2.2)
En este caso, el mtodo se denomina sustitucin directa.
Cualquiera de estos mtodos es sencillo de aplicar y evita tener que invertir la matriz
de coeciente de un sistema de ecuaciones lineales, lo que facilita la resolucin del mismo. En
consecuencia, los mtodos directos se basan en transformar la matriz de coecientes original no
triangular, en una nueva matriz de coecientes triangular.
2.4. Eliminacin de Gauss y sustitucin inversa
El mtodo de eliminacin de Gauss es un mtodo directo muy efectivo que transforma
una matriz cualquiera en una matriz triangular superior y luego aplica el mtodo de sustitucin
inversa para obtener la solucin del sistema dado. Para ello se basa en la propiedad que tienen
las matrices de que la misma no cambia si se reemplaza alguna de sus las por una combinacin
lineal de ella con alguna de las restantes las. El procedimiento en lneas generales es:
Se ja la primera la de la matriz A.
Se transforman las las siguientes de manera de que el coeciente a
i1
se anule, es decir, se
utiliza el coeciente a
11
de la diagonal principal como pivote.
Se ja la siguiente la, se ja el pivote en la diagonal principal y se repite el paso anterior.
Se contina hasta que la matriz queda transformada en una matriz triangular superior.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 29 -
2.4. Eliminacin de Gauss y sustitucin inversa Anlisis Numrico
Se aplica la sustitucin inversa para hallar los x
i
.
Por ejemplo, supongamos que tenemos la siguiente matriz A de dimensiones n = 4, con
su vector independiente B, y generamos la matriz ampliada:
A =
_

_
a
11
a
12
a
13
a
14
[ b
1
a
21
a
22
a
23
a
24
[ b
2
a
31
a
32
a
33
a
34
[ b
3
a
41
a
42
a
43
a
44
[ b
4
_

_
.
Para obtener el vector x debemos proceder as:
1. Fijar la primera la de la matriz;
2. Calcular el coeciente m
21
:
m
21
=
a
21
a
11
3. Luego calcular los coecientes a

2i
y b

2
:
a

22
= a
22
m
21
a
12
a

23
= a
23
m
21
a
13
a

24
= a
24
m
21
a
14
b

2
= b
2
m
21
b
1
4. Proceder de la misma forma con el resto de las las, calculando los coecientes m
31
y m
41
y los coecientes a

3i
, a

4i
, b

3
y b

4
, hasta obtener la primera transformacin de la matriz
ampliada:
A =
_

_
a
11
a
12
a
13
a
14
[ b
1
0 a

22
a

23
a

24
[ b

2
0 a

32
a

33
a

34
[ b

3
0 a

42
a

43
a

44
[ b

4
_

_
;
5. Fijar la siguiente la (la segunda) de la matriz transformada y repetir los pasos 2 a 4, es
decir, calcular los coecientes m
kj
, (m
32
y m
42
), y efectuar una nueva transformacin. Ope-
rando sucesivamente de esta forma (al calcular el coeciente m
43
), obtendremos nalmente
la matriz ampliada triangulada:
A =
_

_
a
11
a
12
a
13
a
14
[ b
1
0 a

23
a

23
a

24
[ b

2
0 0 a
#
33
a
#
34
[ b
#
3
0 0 0 a
+
44
[ b
+
4
_

_
.
6. Con la matriz ampliada triangulada, obtenemos el vector x por sustitucin inversa, hacien-
do:
x
4
=
b
+
4
a
+
44
x
3
=
b
#
3
a
#
34
x
4
a
#
33
x
2
=
b

2
a

23
x
3
a

24
x
4
a

22
x
1
=
b
1
a
12
x
2
a
13
x
3
a
14
x
4
a
11
- Pg. 30 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Entonces, la expresin general para la transformacin de las las de una matriz ampliada
es la siguiente:
a

ij
= a
ij
m
il
a
lj
, (2.3)
para los coecientes de la matriz A, y:
b

i
= b
i
m
il
b
l
(2.4)
para los coecientes del vector de trminos independientes (B), con m
il
=
a
il
a
ll
.
Este procedimiento es muy til puesto que se conoce exactamente la cantidad de pasos
que deben efectuarse, es decir, el mtodo tiene un cantidad nita de pasos, inclusive si el sistema
a resolver cuenta con varios vectores B. En ese caso, basta con transformarlos conjuntamente
con la matriz A.
Con este procedimiento, es posible conocer el costo computacional del mtodo, es decir,
establecer cuanto tiempo lleva todo el proceso. Una forma de estimar este costo de transformacin
de la matriz en triangular superior es mediante la siguiente expresin que cuenta las operaciones
realizadas (sumas, restas, multiplicaciones y divisiones). Para la transformacin de la matriz A
ampliada con el vector B en una matriz triangular superior tenemos la siguiente cantidad de
operaciones:
n1

k=1
[(n k) + 2 (n k) (n k + 1)] =
2
3
n
3
+
n
2
2

7
6
n. (2.5)
A su vez, para la susticin inversa tenemos esta cantidad de operaciones:
1 +
n1

k=1
[2 (n k) + 1] = n
2
. (2.6)
En consecuencia, si se suman ambos valores, tenemos que el costo de efectuar la elimina-
cin de Gauss es:
2
3
n
3
+
3
2
n
2

7
6
n; (2.7)
es decir, proporcional a n
3
.
Conviene tener presente que esta estimacin es aproximada, pues no se han tenido en
cuenta otros costos difciles de evaluar como son el manejo de las prioridades de memoria, la
forma de guardar los datos, etc. Sin embargo, esta estimacin sirve para establecer que a medida
que la dimensin de la matriz aumenta, el costo es proporcional al cubo de la misma, es decir,
el aumento del tiempo empleado en resolver el sistema completo (el costo computacional)
es potencial y no lineal. Es por ello que resolver un sistema de 1.000 1.000 insume un costo
proporcional a 1.000.000.000 operaciones.
Un problema que puede surgir en este mtodo es si alguno de los elementos de la diagonal
principal al ser transformados se anulan. Si esto ocurriera, de acuerdo con el algoritmo anterior,
el procedimiento se detendra y en consecuencia no podra obtenerse solucin alguna. En estos
casos se aplican versiones ms desarrolladas, denominadas Eliminacin de Gauss con Pivoteo
Parcial (EGPP) o Eliminacin de Gauss con Pivoteo Total (EGPT).
En el primer caso, lo que se hace es primero intercambiar las las, reordenndolas de
manera tal que el coeciente nulo quede fuera de la diagonal principal, y luego se contina con
el algoritmo tradicional. Veamos un ejemplo. Supongamos el siguiente sistema:
x
1
+x
2
x
3
= 1
x
1
+x
2
+ 4x
3
= 2
2x
1
x
2
+ 2x
3
= 3.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 31 -
2.4. Eliminacin de Gauss y sustitucin inversa Anlisis Numrico
Armemos el sistema ampliado para aplicar el mtodo de Eliminacin de Gauss. Entonces
nos queda:
_
_
1 1 1 [ 1
1 1 4 [ 2
2 1 2 [ 3
_
_

_
_
1 1 1 [ 1
0 0 5 [ 1
0 3 4 [ 1
_
_
.
Como vemos, la transformacin de la matriz nos deja nulo el coeciente a

22
de la segunda
la, lo que nos impide seguir operando. Para poder seguir debemos intercambiar las las dos y
tres, en consecuencia tendremos:
_
_
1 1 1 [ 1
0 3 4 [ 1
0 0 5 [ 1
_
_

_
_
_
x
1
x
2
x
3
_
_
_
=
_
_
1,2667
0,0667
0,2000
_
_
.
El intercambio entre las las 2 y 3 evit que el procedimiento se detuviera. Pero tambin
es posible que valores muy chicos en los coecientes de la diagonal principal generen un problema
en la mecnica del sistema. Por ejemplo, consideremos el siguiente sistema:
0,03x
1
+ 58,9x
2
= 59,2
5,31x
1
6,10x
2
= 47,0;
que debe ser resuelto con una precisin de solamente tres dgitos y aplicando corte en vez de
redondeo. Si aplicamos Eliminacin de Gauss tendremos:
_
0,03 58,9 [ 59,2
0 10400 [ 10300
_
;
pues al hacer los clculos obtenemos que:
m
21
=
5,31
0,03
= 177 a

22
= 6,10 177 58,9 6,10 10400 10400
b

2
= 47,0 177 59,2 47,0 10400 10300.
As, la solucin del sistema es:
_
x
1
x
2
_
=
_
30,0
0,990
_
,
Pero si resolvemos el sistema anterior con precisin innita, el resultado que obtenemos
es:
_
x
1
x
2
_
=
_
10
1
_
,
lo que nos indica que el resultado anterior es incorrecto. Esta diferencia est dada por el coeciente
0,03 en la diagonal principal. Si reordenamos el sistema original tenemos:
5,31x
1
6,10x
2
= 47,0
0,03x
1
+ 58,9x
2
= 59,2;
y si utilizamos la misma precisin, resulta:
_
5,31 6,10 [ 47,0
0 58,9 [ 58,9
_
;
puesto que al hacer los clculos obtenemos:
m
21
=
0,03
5,31
= 0,005649 0,005 a

22
= 58,9 0,005 (6,10) 58,9 + 0,030 58,9
- Pg. 32 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
b

2
= 59,2 0.005 47,0 = 59,2 0,235 58,9.
La solucin del sistema es:
_
x
1
x
2
_
=
_
10
1
_
,
resultado que coincide con el obtenido con precisin innita.
Es por eso que el mtodo de Eliminacin de Gauss con Pivoteo Parcial (EGPP) se usa
tambin cuando alguno de los coecientes de la diagonal principal es muy chico con respecto a
los dems coecientes de la matriz.
En el caso del pivoteo total se efecta no slo un reordenamiento de las las sino tambin
de las columnas, lo que complica an ms el procedimiento.
Ambos casos insumen un mayor costo computacional que resulta muy difcil estimar
puesto que no se trata de contar operaciones aritmticas como en la estimacin anterior, si bien
se considera que una comparacin es equivalente a una suma/resta.
2.5. Factorizacin LU
El mtodo de eliminacin de Gauss es un mtodo muy potente. Sin embargo, no siempre
es conveniente su utilizacin. Supongamos por un momento que para resolver un determinado
problema debemos resolver el sistema de ecuaciones en forma anidada. Es decir, cada nueva
solucin depende del resultado obtenido en un paso anterior, o sea, cada vector B depende de la
solucin anterior (B
<i>
= f
_
x
<i1>
_
).
Si queremos resolver estos sistemas nos encontraremos con la desventaja de que en cada
paso tendremos que recalcular la matriz triangular superior, lo que signica un costo compu-
tacional muy grande, tal como vimos en el punto anterior. Por lo tanto, deberamos buscar un
mtodo que nos evite repetir dichos clculos.
Un mtodo muy eciente para estos casos es la descomposicin o factorizacin LU. sta
consiste en descomponer la matriz A original en el producto de dos matriz: una triangular inferior
(L) y una triangular superior (U), para armar el siguiente sistema:
Ax = LUx = B con A = LU.
De esta forma obtenemos dos sistemas de ecuaciones:
Ly = B (2.8)
Ux = y (2.9)
En el primer caso, para obtener la solucin intermedia y, aplicamos la sustitucin directa,
y en el segundo, la sustitucin inversa. Vemos que en este mtodo el vector B no es transformado
en ninguno de los sistemas resueltos, que es lo que estbamos buscando. Pero cmo se obtienen
las dos matrices triangulares?
En el caso de la matriz triangular superior, la forma ms sencilla de obtenerla es aplicar
el mismo algoritmo que el utilizado para eliminacin de Gauss, lo que signica que el costo
computacional es similar (pero no igual, puesto que no debe transformarse al vector B). Nos
falta la matriz L. Pero esta matriz es muy sencilla de obtener. Planteemos el esquema para
obtener los coecientes de la matriz L partiendo que los elementos de la diagonal principal son
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 33 -
2.5. Factorizacin LU Anlisis Numrico
iguales a 1 (l
ii
= 1):
u
11
= a
11
l
21
u
11
= a
21
l
21
=
a
21
u
11
=
a
21
a
11
= m
21
l
31
u
11
= a
31
l
31
=
a
31
u
11
=
a
31
a
11
= m
31
. . . . . . . . .
l
31
u
12
+l
32
u
22
= a
32
l
32
u
22
= a
32
l
31
u
12
= a
32
m
31
a
12
. .
a

32
= a

32
l
32
=
a

32
u
22
=
a

32
a

22
= m
32
Como vemos, la matriz L est compuesta por los coecientes de la diagonal principal
iguales a 1 (l
ii
= 1), en tanto que los coecientes por debajo de la diagonal principal iguales a los
coecientes m
ij
del mtodo de eliminacin de Gauss (l
ij
= m
ij
). Es decir, las matrices tienen la
siguiente forma:
L =
_

_
1 0 0 . . . 0
m
21
1 0 . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
0
m
n1,1
m
n1,n2
1 0
m
n1
. . . m
n,n2
m
n,n1
1
_

_
y
U =
_

_
a
11
a
12
a
13
. . . a
1n
0 a

22
a

23
. . . a

2n
0 0 a

33
a

3n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 . . . 0 a

nn
_

_
donde los a

ij
son los coecientes transformados del mtodo de Eliminacin de Gauss.
Obtenidas L y U, la solucin del sistema la obtenemos aplicando, primero, la sustitucin
directa para hallar el vector y y luego, sustitucin inversa para hallar x. Para el primer caso,
aplicamos el siguiente algoritmo:
y
1
= b
1
y
2
= b
2
l
21
y
1
.
.
.
y
i
= b
i

i1

j=1
l
ij
y
j
(2.10)
puesto que los coecientes l
ii
son iguales a uno (l
ii
= 1).
Como dijimos, obtenido y, se aplica la sustitucin inversa para obtener el vector x solucin
del sistema. El algoritmo es:
x
n
=
y
n
u
nn
x
n1
=
y
n1
u
n1,n
y
n
u
n1,n1
.
.
.
x
i
=
y
i

j=i+1
u
ij
x
j
u
ii
(2.11)
- Pg. 34 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Como vemos, en ningn caso hemos modicado o transformado al vector B, por lo que
una vez que obtenemos las matrices U y L, podemos resolver los distintos sistemas aplicando
sustitucin directa primero e inversa despus. Este mtodo se conoce como Mtodo de Doolittle.
Ahora nos quedara analizar el costo computacional del mtodo. Sin embargo, dado que
hemos utilizado el mtodo de eliminacin de Gauss para obtener las matrices U y L, el costo para
este mtodo es muy similar al de dicho mtodo. En consecuencia, la ventaja est principalmente
en no tener que repetir la triangulacin de la matriz A para cada sistema con un B distinto.
Al obtener la matriz U mediante Eliminacin de Gauss podemos tener el mismo problema
ya visto: que un coeciente de la diagonal principal se haga nulo en los pasos intermedios. En
ese sentido, valen las mismas aclaraciones respecto al Pivoteo Parcial y al Pivoteo Total. Es por
eso que suele decirse que existe un par de matrices L y U que cumplen con:
PA = LU, (2.12)
donde P es una matriz de permutacin.
2.6. Mtodo de Cholesky
2.6.1. Matrices simtricas y denidas positivas
Antes de analizar un caso particular de factorizacin de matrices conviene recordar la
denicin de un algunos tipos de matrices. En primer lugar, se dice que una matriz es simtrica
cuando dicha matriz es igual a su transpuesta, es decir:
A = A
T
.
Otro tipo de matriz es la conocida como denida positiva
1
. En este caso se debe cumplir
que:
x
T
Ax > 0 para todo x ,= 0.
Es de notar que lo que se impone para que una matriz sea denida positiva es que el
escalar resultante de la operacin x
T
Ax sea no nulo y mayor que cero. En general demostrar esto
resulta muy engorroso, por lo que suelen utilizarse algunos procedimientos alternativos. Para ello
veamos los siguiente conceptos.
Denicin 2.8. Una primera submatriz principal de una matriz A es la que tiene la forma:
A
k
=
_

_
a
11
a
12
. . . a
1k
a
21
a
22
. . . a
2k
. . . . . . . . . . . . . . . . . .
a
k1
a
k2
. . . a
kk
_

_
para alguna 1 k n.
Teorema 2.1. Una matriz simtrica A es denida positiva si y slo si sus primeras submatrices
principales tienen determinante positivo.
Teorema 2.2. La matriz simtrica A es denida positiva si y slo si la eliminacin de Gauss sin
pivoteo puede efectuarse en el sistema Ax = B con todos los pivotes positivos.
Corolario 2.2.1. La matriz simtrica A es denida positiva si y slo si A puede factorizarse en
la forma LDL
T
, donde L es una matriz triangular inferior con coecientes iguales a uno en la
diagonal principal (l
ii
= 1) y D es una matriz diagonal con coecientes positivos (d
ii
> 0).
Corolario 2.2.2. La matriz A es simtrica y denida positiva si y slo si A puede factorizarse
en la forma LL
T
donde L es una matriz triangular inferior con elementos no nulos en su diagonal.
1
Algunos autores exigen que A sea simtrica y denida positiva. Sin embargo, en principio, se puede decir que
no es necesario que una matriz sea simtrica para que sea denida positiva.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 35 -
2.7. Condicin de una matriz Anlisis Numrico
2.6.2. Algoritmo de Cholesky
Con el ltimo corolario se puede efectuar una factorizacin de la matriz A conocida como
mtodo o algoritmo de Cholesky. En efecto, si la matriz A es simtrica denida positiva, es
posible obtener una matriz S que cumpla:
SS
T
= A.
Veamos como podemos obtener esta matriz a partir de la factorizacin LU. De acuerdo
con el corolario 2.2.1, la matriz simtrica A puede ser factorizada como LDL
T
. Si adems es
denida positiva, entonces los coecientes de D son positivos. En consecuencia, podemos obtener
sin problemas

D, con lo cual tenemos A = L

DL
T
. As nuestra matriz A puede ser
expresada como:
A = L

D
. .
S

DL
T
. .
S
T
= SS
T
.
Finalmente, las expresiones para obtener esta matriz S son:
s
ii
=
_
a
ii

i1

k=1
s
2
ik
_
1/2
y (2.13)
s
ji
=
1
s
ii
_
a
ji

i1

k=1
s
jk
s
ik
_
, (2.14)
con j > i.
Este mtodo es mucho ms eciente puesto que slo debemos calcular y guardar una
sola matriz, a diferencia de la factorizacin LU en la que debo calcular y guardar dos matrices,
si bien algunos algoritmos permiten guardar ambas matrices en una sola. Adems, el mtodo
Cholesky no aumenta considerablemente el costo computacional que analizamos en los puntos
anteriores, por ms que deban extraerse n races cuadradas.
Este mtodo es muy aplicado en programas estructurales que aplican el mtodo de los
elementos nitos, dado que la matriz de coecientes es una matriz simtrica y denida positiva.
De todos modos, tiene las mismas desventajas vistas para los otros mtodos cuando la dimensin
de la matriz es cada vez ms grande.
2.7. Condicin de una matriz
Uno de los puntos a tener en cuenta es qu error cometemos al resolver un sistema
de ecuaciones lineales mediante un mtodo directo. Una forma de conocer el error de nuestro
vector solucin x sera analizar el algoritmo utilizado con ayuda de la grca de proceso. Este
procedimiento resulta un tanto engorroso y largo, adems de poco prctico. Una segunda manera
es analizar lo siguiente: puesto que nuestro sistema se puede expresar como Ax = B, una forma
alternativa es x = A
1
B. Si denimos a N = A
1
, nos queda x = NB. Si desarrollamos esta
expresin para cada componente de x nos queda:
x
i
=
n

j=1
n
ij
b
j
. (2.15)
Armemos un algoritmo que tenga la siguiente forma:
s
j
= n
ij
b
j
; (2.16)
x
i
=
n

j=1
s
j
. (2.17)
- Pg. 36 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Analicemos los errores en cada paso. Para el primero tenemos:
e
s
j
= b
j
e
n
ij
+n
ij
e
b
j
= b
j
e
ij
+n
ij
e
j
(2.18)
er
s
j
=
b
j
e
n
ij
+n
ij
e
b
j
n
ij
b
j
+
j
= er
n
ij
+er
b
j
+
j
= er
ij
+er
j
+
j
. (2.19)
Con el error relativo podemos recalcular el error total de s
j
:
e
s
j
= b
j
e
ij
+n
ij
e
j
+n
ij
b
j

j
. (2.20)
Para el segundo paso tendremos:
e
x
i
=
n

j=1
e
s
j
=
n

j=1
(b
j
e
ij
+n
ij
e
j
) +
n

j=1
n
ij
b
j

j
, (2.21)
er
x
i
=
n

j=1
e
s
j
x
i
+
n

k=2

k
=
n

j=1
(b
j
e
ij
+n
ij
e
j
)
x
i
+
n

j=1
n
ij
b
j

j
x
i
+
n

k=2

k
. (2.22)
Esta ltima expresin la podemos escribir tambin como:
er
x
i
=
n

j=1
n
ij
b
j
(er
ij
+er
j
+
j
)
x
i
+
n

k=2

k
. (2.23)
Si reordenamos los trminos tendremos:
er
x
i
=
n

j=1
n
ij
b
j
x
i
(er
ij
+er
j
) +
n

j=1
n
ij
b
j
x
i

j
+
n

k=2

k
. (2.24)
De esta forma se puede decir que el error relativo de x
i
es:
er
x
i

n

j=1
Cp
j
(er
ij
+er
j
) +
n

j=1
Te
j

j
, (2.25)
con
Cp
j
=
2n
ij
b
j
x
i
y (2.26)
Te
j

n
ij
b
j
x
i
+ 1, (2.27)
si tomamos que er
ij
; er
j
< r y que
j
< .
Hemos encontrado para cada x
i
la expresin del error relativo, o mejor dicho, una idea
aproximada del error. Pero, en la prctica, sirve esto? Todos los clculos son engorrosos y adems
hemos partido de un algoritmo no del todo prctico, pues hemos dicho que invertir la matriz no
es conveniente
2
. Entonces, qu hacemos?
Supongamos que hemos resuelto nuestro sistema Ax = B con un algoritmo cualquiera y
que en consecuencia hemos obtenido una solucin x. Lo que nos interesa conocer es una cota del
error absoluto, |x x|, o del error relativo,
|x x|
|x|
, en alguna norma, por ejemplo, la norma
innito.
2
Esta deduccin es interesante, pues nos muestra que tanto el C
p
como el T
e
dependen de la matriz A, dado
que la matriz N no es otra cosa que A
1
. De ah que la solucin de cualquier sistema de ecuaciones lineales
mediante la inversin de la matriz es potencialmente inestable.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 37 -
2.7. Condicin de una matriz Anlisis Numrico
Como, en principio, no conocemos el resultado exacto de x, lo que podemos hacer es
calcular lo siguiente:
R = B A x,
donde R lo denominamos residuo. Si nuestra solucin x fuera la solucin exacta, entonces nuestro
vector R debera ser nulo. Sin embargo, en la prctica, siempre obtendremos un vector R no nulo,
debido a la propagacin de los errores de redondeo o de los errores inherentes y de redondeo.
Qu conclusiones podemos sacar conociendo R? Veamos el siguiente ejemplo.
Supongamos la matriz A y el vector B dados a continuacin:
A =
_
1,2969 0,8648
0,2161 0,1441
_
; B =
_
0,8642
0,1440
_
.
Supongamos tambin que usando un determinado algoritmo hemos obtenido las siguientes
soluciones:
x
1
=
_
0,9911
0,4870
_
; x
2
=
_
0,0126
1,0182
_
.
Entonces, tendremos:
R = B A x
i

_
10
7
10
7
_
.
Por lo tanto, tendremos que |R|

= 10
7
. Podemos decir que el residuo es muy chico.
Sin embargo, la solucin correcta es:
x =
_
2
2
_
.
Es decir, el error cometido es del mismo orden de la solucin, o sea, 10
7
veces el residuo!
Es importante tener en cuenta que cualquiera sea el algoritmo utilizado, no podemos
esperar sino un residuo pequeo o muy pequeo, lo que signica que este residuo R por s solo
no nos sirve de mucho para estimar el error que hemos cometido al obtener x.
Cmo se relaciona, entonces, este residuo con el error en x? Veamos. Escribamos el
residuo como:
R = B A x = Ax A x = A(x x) .
es decir:
x x = A
1
R.
Elijamos cualquier norma vectorial, por ejemplo, la innita. Entonces tendremos:
|x x|

=
_
_
A
1
R
_
_


_
_
A
1
_
_

|R|

.
Esto nos da una cota del error absoluto en trminos de A
1
. Usualmente el error relativo
es ms signicativo que el absoluto. Como |B| |A| |x| implica que
1
|x|

|A|
|B|
, tendremos
que:
|x x|
|x|

_
_
A
1
_
_
|R|
|A|
|B|
= |A|
_
_
A
1
_
_
|R|
|B|
. (2.28)
Esta expresin nos permite establecer que el residuo por s mismo no nos alcanza para
estimar el error de nuestro vector solucin x, sino que tambin debemos conocer algunas carac-
tersticas de la matriz A. En particular, vemos que el error relativo de x depende de
_
_
A
1
_
_
|A|.
A este nmero lo denominaremos condicin de A y lo expresaremos como cond

(A) o (A)
3
.
Tanto
_
_
A
1
_
_
como |A| son nmeros reales (son normas de las matrices) por lo tanto para que
el error relativo de x no sea muy grande, el producto de
_
_
A
1
_
_
|A| debiera ser cercano a uno,
es decir:
|A|
_
_
A
1
_
_
= (A) > / > 1.
3
En este caso hemos utilizado la norma innito. Podra haberse usado la norma eucldea y obtener el cond
2
(A).
- Pg. 38 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Si la matriz es no singular debe cumplirse que:
1 = |I| =
_
_
A
1
A
_
_
(A),
que puede considerarse el lmite inferior, en tanto que si la matriz A es singular (no existe A
1
),
(A) , que puede ser considerado el lmite superior. As, puede decirse que el nmero de
condicin da una idea de cuan cerca est la matriz de ser singular, o lo que es lo mismo, de que
el sistema no tenga solucin o que sean innitas.
Una conclusin interesante es que si la matriz A del sistema est mal condicionada,
pequeos desvos en el residuo R pueden llevar a grandes desvos en x, es decir, si denimos que
|x| = |x x|, entonces puede darse que |x| >> 1, algo que no es aceptable.
2.8. Renamiento iterativo de la solucin
Hemos visto en los puntos anteriores que los mtodos directos pueden resolver muy bien
un sistema de ecuaciones lineales, con excepcin de un sistema con la matriz de coecientes A
mal condicionada. An as, existe la posibilidad de obtener una solucin aceptable, dentro de
cierto rango. Al analizar el error cometido, introdujimos el concepto del vector residuo, que
denominamos R, y que obtuvimos de la siguiente manera:
R = B A x. (2.29)
Como vimos, con ese vector residuo podemos calcular el error de nuestra aproximacin x
respecto de nuestra solucin exacta x, pues tenemos que:
B A x = Ax A x = A(x x)
. .

= A = R, (2.30)
y, en consecuencia, resolviendo este nuevo sistema de ecuaciones podemos obtener nuestro valor
. Dado que hemos denido que = x x, entonces podemos decir que:
x = x +, (2.31)
y con ello hemos obtenido nuestra solucin exacta. Sin embargo, esto no suele ocurrir al primer
intento, de manera que lo que obtendremos en realidad es una nueva aproximacin de nuestra
solucin, que llamaremos x. Para sistematizar esto, digamos que
x = x
1
; R
1
= B Ax
1
; A
1
= R
1
,
por lo que tendremos:
x = x
2
= x
1
+
1
.
El paso siguiente es obtener R
2
y
2
, en forma anloga a
1
. En consecuencia, tendremos
que
x
3
= x
2
+
2
= x
1
+
1
+
2
= x +
1
+
2
.
Si generalizamos, tenemos que la solucin exacta se puede obtener con la expresin
x = x +
n

i=1

i
, (2.32)
es decir, que a la solucin aproximada le sumamos todos los errores para obtener la solucin
exacta. Por supuesto, es imposible efectuar innitas iteraciones, por lo que es imprescindible
establecer algn criterio de corte. Un criterio puede ser cortar las iteraciones cuando |R
k
| Tol,
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 39 -
2.9. Errores de los mtodos directos Anlisis Numrico
pero vimos que esto no asegura que el error sea pequeo. Otro criterio, tal vez ms acertado, es
interrumpir las iteraciones o clculos cuando |
k
| Tol, que tiene en cuenta el error de x.
Este procedimiento que obtiene la solucin de nuestro sistema sumando los errores, se
conoce como mtodo del renamiento iterativo de la solucin y ha cobrado gran desarrollo en los
ltimos aos, pues pueden obtenerse buenos resultados con matrices mal condicionadas. Suele
decirse que para obtener una buena solucin, los sistemas A
i
= R
i
deben resolverse con mayor
precisin que el sistema original. Si hemos resuelto el sistema Ax = B en simple precisin,
entonces debe usarse doble precisin para resolver cada uno de estos sistemas. Esto no es del
todo cierto, ya que pueden obtenerse buenos resultados usando la misma precisin, tal como
ha demostrado N. Higham (vase [9]). Pero existe otra cuestin. Cuando conviene aplicar este
mtodo?
Supongamos (una vez ms) que obtenemos la aproximacin x. Con esta solucin, podemos
obtener el vector residuo mediante
R
1
= B A x.
Si realizamos los clculos utilizando una precisin de t dgitos, podemos demostrar que
|R
1
| 10
t
|A| | x| . (2.33)
Para saber si el mtodo es convergente, podemos obtener una aproximacin o estimacin
del nmero de condicin de A. Para ello vamos a obtener el vector
1
segn vimos arriba, es
decir, haciendo
A
1
= R
1
.
Entonces, podemos escribir lo siguiente:
|
1
| |x x| =
_
_
A
1
R
1
_
_

_
_
A
1
_
_
|R
1
|
_
_
A
1
_
_
_
10
t
|A| | x|
_
|
1
| 10
t
| x| (A), (2.34)
con lo cual podemos estimar (A) mediante
(A)
|
1
|
| x|
10
t
. (2.35)
Como hemos dicho, este mtodo permite obtener buenos resultados inclusive con matrices
mal condicionadas. Sin embargo, si (A) >> 10
t
, el sistema est tan mal condicionado que debe
modicarse la precisin original usada en la obtencin de x para obtener un resultado aproximado
aceptable.
2.9. Errores de los mtodos directos
Hemos visto que el hecho de obtener un vector residuo pequeo no es garanta para inferir
que el resultado obtenido tiene un error tambin pequeo. Analicemos el sistema en una forma
ms detallada. Supongamos ahora que tanto la matriz A como el vector B tienen pequeas
perturbaciones que llamaremos A y B respectivamente, y que nuestra solucin sea x. Entonces
tendremos:
(A+A) x = B +B. (2.36)
Podemos escribir que
A x +A x = B +B. (2.37)
Sabemos que x = x +x, por lo tanto podemos escribir:
A(x x) +A(x x) = B +B, (2.38)
Ax Ax +Ax Ax = B +B. (2.39)
- Pg. 40 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Si despreciamos Ax, tendremos
Ax +Ax Ax = B +B, (2.40)
Ax Ax = B, (2.41)
Ax = B +Ax, (2.42)
x = A
1
B +A
1
Ax. (2.43)
Si tomamos normas a ambos lados tendremos:
|x|
_
_
A
1
_
_
|B| +
_
_
A
1
_
_
|A| |x| , (2.44)
y como adems tenemos que |B| |A| |x|, entonces podemos dividir todo de manera de
obtener:
|x|
|A| |x|

_
_
A
1
_
_
|B|
|B|
+
_
_
A
1
_
_
|A| |x|
|A| |x|
, (2.45)

_
_
A
1
_
_
|B|
|B|
+
_
_
A
1
_
_
|A|
|A|
. (2.46)
Si multiplicamos por |A| tendremos que:
|x|
|x|

_
_
A
1
_
_
|A|
|B|
|B| +
_
_
A
1
_
_
|A|
|A|
|A|
(2.47)
|x|
|x|
|A|
_
_
A
1
_
_
. .
cond(A)
_
|B|
|B|
+
|A|
|A|
_
(2.48)
|x|
|x|
cond(A)
_
|B|
|B|
+
|A|
|A|
_
. (2.49)
Podemos ver que para que los errores de x sean pequeos no basta con que B y A
sean pequeos (es decir, que los errores inherentes sean pequeos), sino que es necesario que el
nmero de condicin de A (cond(A)) sea cercano a 1.
Analicemos ahora los errores de redondeo. Vamos a buscar una cota de estos errores.
Supongamos que aplicamos el mtodo de factorizacin LU para resolver el sistema. Si suponemos
que solamente se producen errores de redondeo, entonces tendremos en realidad que
LU = A+A,
donde A son las perturbaciones producidas por los errores de redondeo al obtener L y U.
Entonces, nuestro sistema queda como:
(A+A)(x x) = B (2.50)
Ax Ax +Ax Ax = B (2.51)
Ax = A(x x). (2.52)
por lo tanto,
x = A
1
A(x x). (2.53)
Si tomamos la norma tenemos
|x|
_
_
A
1
_
_
|A| |x x| (2.54)

_
_
A
1
_
_
|A| |x x|
|A|
|A|
(2.55)
|x| (A) |x x|
|A|
|A|
. (2.56)
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 41 -
2.10. Mtodos iterativos Anlisis Numrico
Se puede demostrar que |A| 1,01(n
3
+ 3n
2
) |A| , donde = max

a
k
ij

|A|
, n es la
dimensin de la matriz A y es la unidad de mquina; entonces tenemos que
|x|
|x x|

|x|
|x|
(A)1,01(n
3
+ 3n
2
), (2.57)
y entonces denimos el error total para los mtodos directos como
|x|
|x|
(A)
_
|B|
|B|
+
|A|
|A|
+ 1,01(n
3
+ 3n
2
)
_
. (2.58)
Podemos ver que si la matriz es de grandes dimensiones, comienzan a tener gran incidencia
los errores de redondeo, con lo cual el sistema puede volverse inestable si (A) >> 1, adems de
mal condicionado.
2.10. Mtodos iterativos
Hasta ahora hemos estudiado los llamados mtodos directos para resolver sistemas de
ecuaciones lineales. Son llamados de esta forma porque el algoritmo tiene una cantidad conocida
de pasos (nita) y los resultados que obtenemos al aplicarlos deberan ser exactos, salvo por
el error de redondeo, aunque vimos que esto no siempre es as. Estos mtodos se suelen usar con
matrices densas o casi llenas, como por ejemplo las surgidas del anlisis matricial de estructuras
planas, las cuales tienen muchos coecientes distintos de cero (a
ij
,= 0).
Pero existen muchos otros problemas en los cuales el sistema de ecuaciones tiene una
matriz A que no es densa, sino por el contrario, es rala, es decir, tiene muchos coecientes nulos,
como es el caso del anlisis estructural en tres dimensiones. Entonces trabajar con los mtodos
directos se vuelve muy poco prctico, pues debemos hacer muchas operaciones con coecientes
nulos y, lo que es peor, muchas veces transformar un coeciente nulo en otro no nulo, incorporando
un error que antes no exista. Es por eso que se han desarrollado mtodos que tienen en cuenta
este tipo de matrices. Son los mtodos denominados iterativos.
En estos mtodos, la solucin la obtenemos a partir de una solucin inicial, la cual se
va corrigiendo en sucesivas iteraciones hasta obtener la solucin correcta, de ah el nombre
de iterativos. En principio, podernos suponer que la cantidad de iteraciones es innita, es
decir, que la solucin exacta la obtenemos luego de innitas iteraciones. Como efectuar esto es
imposible, lo que se hace es iterar hasta que la solucin est dentro de las tolerancias impuestas.
Para analizar estos mtodos partamos de denirlos en forma matricial. Sabemos que
nuestro sistema se expresa como
Ax = B,
o, lo que es lo mismo, como
B Ax = 0. (2.59)
En consecuencia, podemos sumar en ambos miembros Px sin cambiar la igualdad. Nos queda
que
Px = Px Ax +B Px = (P A) x +B. (2.60)
Si despejamos x de la expresin anterior, nos queda:
x = P
1
(P A) x +P
1
B, (2.61)
que puede escribirse como
x =
_
P
1
P P
1
A
_
x +P
1
B =
_
I P
1
A
_
x +P
1
B, (2.62)
- Pg. 42 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
a partir del cual se puede obtener el mtodo iterativo para resolver un sistema de ecuaciones,
que toma la siguiente forma:
x
(n+1)
=
_
I P
1
A
_
x
(n)
+P
1
B, (2.63)
donde n es la iteracin.
La expresin anterior puede escribirse en forma general como
x
(n+1)
= Tx
(n)
+C, (2.64)
donde
T = I P
1
A y C = P
1
B.
Con esta ltima expresin podemos denir dos tipos de mtodos iterativos: los estacio-
narios, aquellos en los que T y C no sufren modicaciones durante las iteraciones, y los no
estacionarios, aquellos en los que los valores de T y C dependen de la iteracin.
2.10.1. Mtodos estacionarios
Como hemos visto, los mtodos iterativos estacionarios son aquellos en los que T y C son
invariantes, es decir, permanecen constantes en las sucesivas iteraciones necesarias para hallar
la solucin.
Supongamos por un momento que conocemos nuestra solucin exacta x. Entonces
podemos decir que:
x = x
(n+1)
+e
(n+1)
(2.65)
x
(n+1)
+e
(n+1)
= T
_
x
(n)
+e
(n)
_
+C (2.66)
= Tx
(n)
+C
. .
x
(n+1)
+Te
(n)
(2.67)
= x
(n+1)
+Te
(n)
(2.68)
e
(n+1)
= Te
(n)
. (2.69)
De la ltima expresin podemos deducir que:
e
(n+1)
= Te
(n)
= TTe
(n1)
= T
2
e
(n1)
= . . . = T
n+1
e
(0)
, (2.70)
expresin que nos indica que para que un mtodo iterativo estacionario sea convergente se debe
cumplir que |T| < 1, y que |T| << 1 para que la convergencia sea rpida.
Mtodo de Jacobi
El mtodo estacionario ms sencillo es el Mtodo de Jacobi. Podemos descomponer A
como A = L + D + U. Este mtodo es el que dene P = D, y por lo tanto, nuestra ecuacin
quedar como:
x
(n+1)
=
_
I D
1
A
_
x
(n)
+D
1
B (2.71)
=
_
I D
1
(L +D +U)

x
(n)
+D
1
B (2.72)
= [I D
1
D
. .
I
D
1
(L +U)]x
(n)
+D
1
B (2.73)
x
(n+1)
= D
1
_
B (L +U)x
(n)
_
, (2.74)
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 43 -
2.10. Mtodos iterativos Anlisis Numrico
donde L, D y U son:
L =
_

_
0 0 . . . 0
a
21
0 . . . 0
. . . . . . . . . . . . . . . . . . . . .
a
m1
. . . a
m m1
0
_

_
, D =
_

_
a
11
0 . . . 0
0 a
22
. . . 0
. . . . . . . . . . . . . . . . . . .
0 0 . . . a
mm
_

_
y U =
_

_
0 a
12
. . . a
1m
. . . . . . . . . . . . . . . . . . . .
0 . . . 0 a
m1 m
0 . . . 0 0
_

_
.
En su forma tradicional este mtodo se expresa como:
x
(n+1)
i
=
b
i

i1

j=1
a
ij
x
(n)
j

n

j=i+1
a
ij
x
(n)
j
a
ii
. (2.75)
En s, el mtodo consiste en suponer una solucin inicial, generalmente el vector nulo
(x = [0]), e iterar hasta obtener la solucin, usando siempre el vector obtenido en el paso
anterior. Para analizar la convergencia, debemos recordar algunas deniciones.
Denicin 2.9. Una matriz A se denomina diagonal dominante si se cumple que
[a
ii
[
n

j=1
j,=i
[a
ij
[ .
Denicin 2.10. Una matriz A se denomina estrictamente diagonal dominante si se cumple
que
[a
ii
[ >
n

j=1
j,=i
[a
ij
[ .
Denicin 2.11. Una matriz A se denomina diagonal dominante en forma irreductible si se
cumple que
[a
ii
[
n

j=1
j,=i
[a
ij
[ ,
para i = 1; 2; . . . ; n y en al menos una la que
[a
kk
[ >
n

j=1
j,=k
[a
kj
[ .
El mtodo de Jacobi converge rpidamente si la matriz A es estrictamente diagonal domi-
nante, como se ver ms adelante. En cambio, la convergencia es lenta si la matriz A es cualquiera
de las otras dos. Finalmente, si la matriz A no cumple con ninguna de las deniciones anteriores,
el mtodo de Jacobi no converge.
Mtodo de Gauss-Seidel
El mtodo de Jacobi es de convergencia muy lenta. Para mejorar esta velocidad de conver-
gencia, imaginemos que usamos parte de los resultados ya obtenidos para obtener los siguientes,
es decir, obtener el x
i
aprovechando los x
j
para j < i. Este mtodo se conoce como mtodo
de Gauss-Seidel y resulta de denir P = D + L. Desarrollemos la expresin nal sabiendo que
- Pg. 44 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Px
(n+1)
= Px
(n)
Ax
(n)
+B:
(D +L)x
(n+1)
= [(D +L) A] x
(n)
+B (2.76)
= [(D +L) (L +D +U)] x
(n)
+B (2.77)
= [D +L L D U] x
(n)
+B (2.78)
= B Ux
(n)
(2.79)
Dx
(n+1)
= B Lx
(n+1)
Ux
(n)
(2.80)
x
(n+1)
= D
1
_
B Lx
(n+1)
Ux
(n)
_
. (2.81)
En su forma tradicional el mtodo se escribe de la siguiente manera:
x
(n+1)
i
=
b
i

i1

j=1
a
ij
x
(n+1)
j

n

j=i+1
a
ij
x
(n)
j
a
ii
. (2.82)
Este mtodo converge para las mismas condiciones impuestas al mtodo de Jacobi. Se
puede asegurar que si el mtodo de Gauss-Seidel converge, tambin lo hace el de Jacobi, pero la
inversa no siempre se cumple.
Mtodo de las sobrerrelajaciones sucesivas (SOR)
Si bien Gauss-Seidel es ms rpido que Jacobi, la velocidad de convergencia no es muy
alta. Busquemos algn mtodo que nos mejore esta velocidad. Partamos nuevamente de la ex-
presin general Px
(n+1)
= Px
(n)
Ax
(n)
+B. Si reordenamos un poco la expresin tenemos:
Px
(n+1)
= Px
(n)
+B Ax
(n)
. .
R
(n)
= Px
(n)
+R
(n)
, (2.83)
que podemos escribir tambin como
x
(n+1)
= P
1
P
. .
I
x
(n)
+P
1
R
(n)
= x
(n)
+P
1
R
(n)
. (2.84)
La idea es buscar una matriz P que nos mejore la velocidad de convergencia. Supongamos,
entonces, que tomamos P = L +
1

D. Si partimos de la expresin conocida tenemos que:


_
1

D +L
_
x
(n+1)
=
__
1

D +L
_
A
_
x
(n)
+B (2.85)
=
__
1

D +L
_
(L +D +U)
_
x
(n)
+B (2.86)
=
_
1

D +L L D U
_
x
(n)
+B (2.87)
= B
_
1
1

_
Dx
(n)
Ux
(n)
(2.88)
1

Dx
(n+1)
= B Lx
(n+1)

_
1
1

_
Dx
(n)
Ux
(n)
(2.89)
x
(n+1)
=
_
1
1

_
D
1
D
. .
I
x
(n)
+D
1
_
B Lx
(n+1)
Ux
(n)
_
(2.90)
= (1 )x
(n)
+D
1
_
B Lx
(n+1)
Ux
(n)
_
(2.91)
x
(n+1)
= (1 )x
(n)
+ x
(n+1)
GS
. (2.92)
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 45 -
2.10. Mtodos iterativos Anlisis Numrico
Este mtodo se conoce como Mtodo de las sobrerrelajaciones sucesivas (o SOR por sus
siglas en ingls), y pondera el x
(n)
con el x
(n+1)
obtenido con el mtodo de Gauss-Seidel, tomando
como factor de ponderacin el coeciente . En su forma tradicional se suele escribir como:
x
(n+1)
i
= (1 )x
(n)
+
b
i

i1

j=1
a
ij
x
(n+1)
j

n

j=i+1
a
ij
x
(n)
j
a
ii
. (2.93)
En este mtodo la velocidad de convergencia est dada por el . Se puede asegurar que
existe un valor que hace mxima la velocidad de convergencia para un sistema dado, que puede
ser estimado conociendo el radio espectral de la matriz de Jacobi. Si observamos con detenimiento
veremos que el mtodo de Gauss-Seidel es un caso especial del SOR, pues surge de tomar = 1.
En efecto, si = 1 tenemos:
x
(n+1)
i
= (1 1)x
(n)
+
b
i

i1

j=1
a
ij
x
(n+1)
j

n

j=i+1
a
ij
x
(n)
j
a
ii
=
b
i

i1

j=1
a
ij
x
(n+1)
j

n

j=i+1
a
ij
x
(n)
j
a
ii
,
que es el mtodo de Gauss-Seidel.
En realidad, al imponer que 0 < < 2 existen dos mtodos: cuando 0 < < 1, estamos en
presencia de un mtodo de sub-relajacin, tambin conocido como mtodo de Jacobi modicado,
en tanto que cuando 1 < < 2, se trata de un mtodo de sobrerrelajacin propiamente dicho.
En general, estos mtodos convergen mucho ms rpido que los otros dos, y puede decirse que
cuando Gauss-Seidel no converge, utilizando un < 1 se logra una mejor convergencia que con
el mtodo de Jacobi.
Criterios de interrupcin
Hasta ac hemos visto los distintos mtodos iterativos estacionarios ms tradicionales que
se aplican para resolver sistemas de ecuaciones lineales. Pero no hemos analizado los criterios
para interrumpir dichas iteraciones. Dado que los mtodos convergen a una solucin cuando
n , es decir, que se debe dar que x x
(n)
= 0 cuando n , entonces podemos tomar
como criterios para interrumpir las iteraciones, que xx
(n)
< Tol, siendo Tol una valor denido
arbitrariamente, generalmente relacionado con la precisin utilizada (). Existen varios criterios
que pueden aplicarse. Estos son:
1. Que la norma innita del vector r
(n)
sea menor a la tolerancia, esto es:
_
_
_r
(n)
_
_
_

< Tol. (2.94)


2. Que la norma innita del error absoluto entre dos soluciones sucesivas de x sea menor a la
tolerancia, es decir, que:
_
_
_x
(n)
x
(n1)
_
_
_

< Tol. (2.95)


3. Que la norma innita del error relativo entre dos soluciones sucesivas sea menor a la
tolerancia, o sea:
_
_
x
(n)
x
(n1)
_
_

_
_
x
(n)
_
_

< Tol. (2.96)


- Pg. 46 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
El mejor de los criterios es ltimo, pues hemos visto que es el error relativo el que mejor
representa la incidencia del error en los resultados.
Sin embargo, debemos recordar del anlisis de la cota de error para los mtodos directos
que
|x x|
|x|

_
_
A
1
_
_
|A|
|R|
|B|
expresin que puede ampliarse al caso de un mtodo iterativo como
_
_
x
<k+1>
x
<k>
_
_
|x
<k+1>
|

_
_
A
1
_
_
|A|
|R|
|B|
_
_
x
<k+1>
x
<k>
_
_
|x
<k+1>
|
(A)
|R|
|B|
(A) Tol.
con lo cual debemos cuidarnos al momento de elegir la tolerancia cuando aplicamos un mtodo
iterativo. Queda evidente que cuando la matriz tiende a ser mal condicionada, la tolerancia debe
ser ms chica.
2.10.2. Convergencia de los mtodos estacionarios
Hemos dicho que los mtodos de Jacobi y Gauss-Seidel convergen para matrices A es-
trictamente diagonal dominantes. Los siguientes teoremas aseguran la convergencia de ambos
mtodos.
Teorema 2.3. Si A es una matriz de n n, entonces se cumple que:
1. |A|
2
=
_

_
A
T
A
_
1/2
.
2. (A) |A|, para toda norma natural.
Teorema 2.4. Si la matriz A es estrictamente diagonal dominante, entonces con cualquier elec-
cin de x
(0)
, tanto el mtodo de Jacobi como el de Gauss-Seidel dan las sucesiones
_
x
(k)
_

k=0
que convergen a una nica solucin del sistema Ax = B.
Teorema 2.5. Si a
ij
0 para cada i ,= j, y si a
ii
> 0 para cada i = 1; 2; . . . ; n, entonces ser
vlida una y slo una de las siguientes armaciones:
1. 0 (T
G
) < (T
J
) < 1;
2. 1 < (T
J
) < (T
G
);
3. (T
J
) = (T
G
) = 0;
4. (T
J
) = (T
G
) = 1;
donde T
J
es la matriz de Jacobi, y T
G
es la matriz de Gauss-Seidel.
Para analizar la convergencia del mtodo de las sobrerrelajaciones sucesivas se deben
tener en cuenta estos otros teoremas.
Teorema 2.6. Para cualquier x
(0)
1
n
, la sucesin
_
x
(k)
_

k=0
denida por
x
(k+1)
= Tx
(k)
+C, para cada k 1,
converge en la solucin nica de x = Tx +C si y slo si (T) < 1.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 47 -
2.10. Mtodos iterativos Anlisis Numrico
Este teorema nos dice que cualquier mtodo iterativo converge cuando el radio espectral
de la matriz T es menor a 1, tal como vimos al comenzar. Recordemos que la denicin del radio
espectral de una matriz A cualquiera es
(A) = max[[ , (2.97)
donde es un autovalor de A. En efecto, habamos dicho que para que cualquier mtodo iterativo
sea convergente, se deba cumplir que |T| < 1. Como (T) |T| < 1, si los mdulos de los
autovalores de T son menores que 1, entonces los mtodo convergen a la solucin buscada.
Teorema 2.7. Si A es una matriz denida positiva y si 0 < < 2, entonces el mtodo SOR
converge para cualquier eleccin del vector aproximado x
(0)
.
Este teorema lo podemos aplicar tambin al mtodo de Gauss-Seidel. Efectivamente,
puesto que cuando = 1, el mtodo SOR resulta ser el de Gauss-Seidel, y como el teorema
2.7 asegura la convergencia del mtodo SOR para cualquier vector inicial cuando 0 < < 2,
entonces asegura tambin la convergencia del mtodo de Gauss-Seidel cuando la matriz A es
denida positiva. Este teorema puede ampliarse a matrices simtricas denidas positivas.
Teorema 2.8. Si A es una matriz denida positiva y tridiagonal, entonces (T
G
) = [(T
J
)]
2
< 1,
y la eleccin ptima de para el mtodo SOR es
=
2
1 +
_
1 [(T
J
)]
2
. (2.98)
Este ltimo vincula los autovalores de la matriz T
J
, es decir la matriz T del mtodo de
Jacobi, con el valor de . Aunque se reere a una matriz tridiagonal, es posible ver que cuanto
menor sea el valor de (T
J
) ms se acerca a 1. (Si (T
J
)
2
es mayor que uno, entonces no hay
un real que haga convergente al mtodo.)
2.10.3. Mtodos no estacionarios
Vimos en el punto anterior los mtodos estacionarios, aquellos en los cuales las matrices
T y C se mantienen invariantes en las sucesivas iteraciones. Existen otros mtodos en los cuales
estas dos matrices s se van modicando en las sucesivas iteraciones. Son los llamados mtodos
no estacionarios.
Supongamos que en nuestra expresin general denimos que P =
1

I. Si reemplazamos
obtenemos:
x
(i+1
= (I IA) x
(i)
+IB, (2.99)
= x
(i)
+
_
B Ax
(i)
_
, (2.100)
= x
(i)
+r
(i)
. (2.101)
Tenemos ahora un mtodo iterativo que depende de un parmetro para ir corrigiendo
el vector solucin. Nos falta denir ese parmetro. Pero tambin depende de otro vector, el ya
visto residuo. Por lo tanto tenemos dos elementos que podemos manejar para obtener una mejor
aproximacin. Veremos a continuacin algunos de los mtodos no estacionarios ms sencillos que
han servido de base para el desarrollo de los ms modernos y complejos.
Mtodo de los residuos mnimos
Una primera aproximacin para esta expresin es buscar que el vector r
(i+1)
sea mnimo
en cada iteracin. De esta manera siempre tenderemos a la solucin del sistema, pues el ideal
- Pg. 48 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
es que sea nulo. Una forma de obtener el mnimo es minimizar la norma eucldea, es decir, el
mdulo de r
(i+1)
. Partamos precisamente de la denicin del mdulo:
_
_
_r
(i+1)
_
_
_
2
=
_
_
_B Ax
(i+1)
_
_
_
2
. (2.102)
Si lo elevamos al cuadrado tenemos
_
_
_r
(i+1)
_
_
_
2
2
=
_
_
_B Ax
(i+1)
_
_
_
2
2
(2.103)
_
_
_r
(i+1)
_
_
_
2
2
=
_
_
_B A
_
x
(i)
+r
(i)
__
_
_
2
2
(2.104)
r
(i+1)
T
r
(i+1)
=
_
B A
_
x
(i)
+r
(i)
__
T

_
B A
_
x
(i)
+r
(i)
__
. (2.105)
Como queremos minimizar el mdulo de r
(i+1)
, lo mismo es minimizar el cuadrado del mdulo.
Para ello vamos a derivar la ltima expresin respecto de , que es nuestro parmetro, y lo
igualaremos a cero. As tenemos que:
2
_
Ar
(i)
_
T

_
B Ax
(i)
Ar
(i)
_
= 0 (2.106)
_
Ar
(i)
_
T

_
r
(i)
Ar
(i)
_
= 0 (2.107)
_
Ar
(i)
_
T
r
(i)
=
_
Ar
(i)
_
T
Ar
(i)
(2.108)

i
=
_
Ar
(i)
_
T
r
(i)
_
Ar
(i)
_
T
Ar
(i)
. (2.109)
Este coeciente
i
nos asegura que el residuo sea mnimo. As nuestro esquema iterativo
queda de la siguiente forma:
r
(i)
= B Ax
(i)
(2.110)

i
=
_
Ar
(i)
_
T
r
(i)
_
Ar
(i)
_
T
Ar
(i)
(2.111)
x
(i+1)
= x
(i)
+
i
r
(i)
. (2.112)
Este mtodo es convergente si la matriz A es simtrica denida positiva
4
, pues de lo
contrario no obtendremos un mnimo. (En [14] puede verse una demostracin de esta armacin.)
Existe un segundo algoritmo que tiene la siguiente forma:
r
(0)
= B Ax
(0)

i
=
_
Ar
(i)
_
T
r
(i)
_
Ar
(i)
_
T
Ar
(i)
x
(i+1)
= x
(i)
+
i
r
(i)
r
(i+1)
= r
(i)

i
Ar
(i)
. (2.113)
En ambos algoritmos las iteraciones nalizan cuando r
(i+1)
< Tol, pues r
(n)
= 0 para
n .
4
Algunos autores slo exigen que la matriz A sea denida positiva.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 49 -
2.10. Mtodos iterativos Anlisis Numrico
Mtodo del descenso ms rpido
Un segundo mtodo no estacionario es el denominado mtodo del descenso ms rpido.
Este mtodo mejora la aproximacin obtenida en el punto anterior. Para poder deducirlo antes
necesitamos saber qu es una forma cuadrtica.
Forma cuadrtica: Es una funcin vectorial que se expresa como:
f(x) =
1
2
x
T
Ax B
T
x +C, (2.114)
similar a una ecuacin de segundo grado en el campo escalar, donde A es una matriz, x y B son
vectores y C es una constante (escalar). la siguiente gura ilustra una forma cuadrtica en dos
dimensiones.
Figura 2.1: Forma cuadrtica en dos dimensiones.
Supongamos ahora que queremos hallar el mnimo (o mximo) de esta funcin. Entonces
debemos obtener su derivada e igualarla a cero, es decir, hacer que:
d f(x)
dx
=
1
2
A
T
x +
1
2
Ax B = 0. (2.115)
Si A es una matriz simtrica entonces A = A
T
, y podemos escribir:
d f(x)
dx
= Ax B = 0, (2.116)
que no es otra cosa que nuestro sistema de ecuaciones lineales original. Si adems A es denida
positiva, nos aseguramos que la solucin que se obtenga haga mnima a la forma cuadrtica. En
consecuencia, para aplicar este mtodo, la matriz A tambin debe ser simtrica denida positiva.
Recordemos tambin qu es el gradiente de una funcin vectorial. Para una funcin f(x)
el gradiente se expresa como:
d f(x)
dx
= f
t
(x) =
_

_
f(x)
x
1
f(x)
x
2
.
.
.
f(x)
x
n
_

_
(2.117)
- Pg. 50 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Figura 2.2: Forma cuadrtica y plano tangente.
El gradiente nos da una idea de la pendiente o del crecimiento de la forma cuadrtica,
que tambin podemos representar como un plano normal a dicho vector gradiente (gura 2.2).
Si queremos hallar el valor mnimo de la funcin f(x) partiendo de una solucin inicial,
lo ideal sera utilizar estas direcciones de mayor crecimiento pero en sentido inverso, es decir,
usar f
t
(x), que puede escribirse como:
f
t
(x) = B Ax. (2.118)
Pero como estamos iterando, tenemos en realidad que:
f
t
(x
(i)
) = B Ax
(i)
= r
(i)
, (2.119)
que resulta ser el residuo. En consecuencia, el residuo no es otra cosa que la direccin descendente
ms empinada para llegar al mnimo, o sea, la del descenso ms rpido. Como partimos de un
vector inicial, lo que nos interesa es obtener un coeciente que optimice cada paso utilizando la
direccin ms empinada y as obtener una aproximacin i+1 ms cercana a la solucin exacta.
Para ello partamos de la expresin general
x
(i+1)
= x
(i)
+r
(i)
. (2.120)
Para obtener el , minimizaremos la forma cuadrtica. As tenemos que:
df(x
(i+1)
)
d
= f
t
(x
(i+1)
)
T
dx
(i+1)
d
= f
t
(x
(i+1)
)
T
r
(i)
= 0, (2.121)
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 51 -
2.10. Mtodos iterativos Anlisis Numrico
lo que equivale a decir que el residuo y el gradiente son ortogonales. Como adems sabemos que
r
(i+1)
= f
t
(x
(i+1)
, entonces tenemos:
r
(i+1)
T
r
(i)
= 0 (2.122)
_
B Ax
(i+1)
_
T
r
(i)
= 0 (2.123)
_
B A
_
x
(i)
+
i
r
(i)
__
T
r
(i)
= 0 (2.124)
_
B Ax
(i)
_
T
r
(i)

i
_
Ar
(i)
_
T
r
(i)
= 0 (2.125)
_
B Ax
(i)
_
T
r
(i)
=
i
_
Ar
(i)
_
T
r
(i)
(2.126)
r
(i)
T
r
(i)
=
i
r
(i)
T
Ar
(i)
(2.127)

i
=
r
(i)
T
r
(i)
r
(i)
T
Ar
(i)
. (2.128)
As, nuestro nuevo algoritmo es:
r
(0)
= B Ax
(0)
(2.129)

i
=
r
(i)
T
r
(i)
r
(i)
T
Ar
(i)
(2.130)
x
(i+1)
= x
(i)
+
i
r
(i)
(2.131)
r
(i+1)
= r
(i)

i
Ar
(i)
. (2.132)
El criterio para interrumpir las iteraciones es el mismo que el aplicado para el mtodo de los
residuos mnimos.
Mtodo de los gradientes conjugados
El mtodo anterior es una mejora notable al mtodo de los residuos mnimos. No slo
mejora la velocidad de convergencia sino que reduce la cantidad de operaciones. Sin embargo
tiene una desventaja importante: suele usar varias veces la misma direccin de acercamiento.
Esto signica que no utiliza bien las direcciones ms empinadas. Veamos por qu.
Vimos que el vector residuo es el gradiente de nuestra forma cuadrtica. Analicemos la
gura 2.2 ms en detalle. El gradiente lo hemos representado con un plano que pasa por un
punto cuya inclinacin nos da una idea del crecimiento (decrecimiento) en ese punto. Pero
en realidad lo que tenemos son varias direcciones posibles que descienden rpidamente hacia el
mnimo. El Mtodo del Descenso Ms Rpido slo exige que los residuos sean ortogonales, pero
no se ocupa de las direcciones con las cuales se aproxima al siguiente resultado, con lo cual puede
repetir cualquier direccin en el proceso iterativo hasta obtener la solucin. As pierde eciencia.
La forma ms rpida de llegar sera usar direcciones que no se repitan durante el proceso
de descenso. Cul sera el conjunto de direcciones que haran ms rpido ese descenso? La
respuesta es: tomemos un conjunto de direcciones d
(0)
; d
(1)
; . . . ; d
(n1)
, tales que sean ortogonales
entre s, o sea que se cumpla que:
d
(0)
d
(1)
= 0; (2.133)
d
(1)
d
(2)
= 0; (2.134)

d
(i)
d
(j)
= 0, para i ,= j. (2.135)
Entonces nuestra expresin inicial ser
x
(i+1)
= x
(i)
+ d
(i)
, (2.136)
- Pg. 52 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
en lugar de la vista para el resto de los mtodos.
Como hemos denido que las direcciones que aproximan nuestra solucin son ortogonales,
entonces tambin el error e
(i+1)
debera ser ortogonal, es decir, se debera cumplir que:
d
(i)
T
e
(i+1)
= 0 (2.137)
d
(i)
T

_
e
(i)
+
i
d
(i)
_
= 0 (2.138)
d
(i)
T
e
(i)
+
i
d
(i)
T
d
(i)
= 0 (2.139)
d
(i)
T
e
(i)
=
i
d
(i)
T
d
(i)
(2.140)

i
=
d
(i)
T
e
(i)
d
(i)
T
d
(i)
. (2.141)
Sin embargo, este algoritmo no es muy til pues debemos conocer el error que estamos
cometiendo para obtener el coeciente
i
. Y si conocemos e
(i+1)
, conocemos la solucin y no
tendra sentido obtener el coeciente .
En lugar de proponer que el error sea ortogonal a la direccin, vamos a proponer que las
direcciones sean conjugadas, tambin llamadas direcciones ortogonales por A. Qu signica esto?
Supongamos por un momento que trabajamos sobre una supercie esfrica similar a un globo, y
dibujamos sobre sta dos lneas que sean ortogonales, como lo son, un meridiano y un paralelo.
Si deformamos nuestro globo de manera que deje de ser esfrico y se convierta en un elipsoide de
revolucin, las dos lneas se cortarn, pero no sern ortogonales. Si volvemos a transformar ese
globo deformado en una esfera otra vez, dichas lneas volvern a ser ortogonales. Las direcciones
en el elipsoide se denominan conjugadas.
La idea del mtodo es partir de la situacin del elipsoide, transformar los vectores de
forma de llevarlos a la esfera, obtener all las direcciones ortogonales y luego trabajar nuevamente
en el elipsoide. De esa forma, las direcciones sern ortogonales en la supercie de la esfera, y
conjugadas en el elipsoide. (Otro ejemplo en ese mismo sentido sera proyectar la esfera sobre un
plano, prctica comn de la cartografa.)
Para obtener nuestro nuevo algoritmo, vamos a proponer que la direccin d
(i)
sea ortogo-
nal a r
(i+1)
, algo que surge de minimizar el gradiente pues
df(x
(i+1)
)
d
= f
t
(x
(i+1)
)
T
dx
(i+1)
d
= f
t
(x
(i+1)
)
T
. .
r
(i+1)
T
d
(i)
= 0; (2.142)
y podemos plantear lo siguiente:
d
(i)
T
r
(i+1)
= 0 (2.143)
d
(i)
T
Ae
(i+1)
= 0 (2.144)
d
(i)
T
A
_
e
(i)
+
i
d
(i)
_
= 0 (2.145)
d
(i)
T
Ae
(i)
+
i
d
(i)
T
Ad
(i)
= 0 (2.146)
d
(i)
T
Ae
(i)
=
i
d
(i)
T
Ad
(i)
(2.147)

i
=
d
(i)
T
Ae
(i)
d
(i)
T
Ad
(i)
(2.148)

i
=
d
(i)
T
r
(i)
d
(i)
T
Ad
(i)
. (2.149)
Con este coeciente
i
nos aseguramos que nuestro mtodo va aproximando la solucin
mediante direcciones conjugadas. Pero nos faltan hallar estas direcciones. Cmo las obtenemos?
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 53 -
2.10. Mtodos iterativos Anlisis Numrico
La forma ms sencilla es aplicar el mtodo de Gram-Schmidt para ortogonalizar vectores. En
este caso lo que haremos es obtener vectores conjugados a partir de un vector inicial, por lo que
la frmula de Gram-Schmidt queda de la siguiente forma:
d
(i)
= u
(i)
+
i1

j=0

ij
Ad
(j)
,
y el coeciente
ij
lo obtenemos mediante:

ij
=
u
(i)
T
Ad
(j)
d
(j)
T
Ad
(j)
, (2.150)
siendo u
(i)
el vector a partir del cual obtenemos las direcciones conjugadas (ortogonales por A).
(Vase [15].)
Nos falta denir el vector u
(i)
. Si proponemos al vector r
(i)
tendremos que:
d
(i)
T
r
(i)
= r
(i)
T
r
(i)
, (2.151)
y entonces, obtendremos lo siguiente:

ij
=
r
(i)
T
Ad
(j)
d
(j)
T
Ad
(j)
. (2.152)
Ahora vamos a obtener el
ij
para poder encontrar nuestras direcciones conjugadas. As,
tenemos que:
r
(i)
T
r
(j+1)
= r
(i)
T
r
(j)

j
r
(i)
T
Ar
(j)
(2.153)

j
r
(i)
T
Ar
(j)
= r
(i)
T
r
(j)
r
(i)
T
r
(j+1)
(2.154)
r
(i)
T
Ar
(j)
=
_

_
1

j
r
(j)
T
r
(j)
si i = j

j
r
(j+1)
T
r
(j+1)
si i = j + 1
(2.155)

j+1 j
=
1

j
r
(j+1)
T
r
(j+1)
d
(j)
T
Ad
(j)
(2.156)
Antes hemos obtenido que:

j
=
d
(j)
T
r
(j)
d
(j)
T
Ad
(j)

j
=
d
(j)
T
Ad
(j)
d
(j)
T
r
(j)
, (2.157)
por lo tanto, nalmente tendremos que:

j+1 j
=
d
(j)
T
Ad
(j)
d
(j)
T
r
(j)
r
(j+1)
T
r
(j+1)
d
(j)
T
Ad
(j)
=
r
(j+1)
T
r
(j+1)
d
(j)
T
r
(j)
=
r
(j+1)
T
r
(j+1)
r
(j)
T
r
(j)
, (2.158)
pues hemos visto que d
(j)
T
r
(j)
= r
(j)
T
r
(j)
. Simplicando la notacin tenemos:

j+1
=
r
(j+1)
T
r
(j+1)
r
(j)
T
r
(j)
. (2.159)
- Pg. 54 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Con este ltimo coeciente, y unicando todo en el ndice i, tenemos el algoritmo para
el Mtodo de los Gradientes Conjugados:
d
(0)
= r
(0)
= B Ax
(0)
(2.160)

i
=
r
(i)
T
r
(i)
d
(i)
T
Ad
(i)
(2.161)
x
(i+1)
= x
(i)
+
i
d
(i)
(2.162)
r
(i+1)
= r
(i)

i
Ad
(i)
(2.163)

i+1
=
r
(i+1)
T
r
(i+1)
r
(i)
T
r
(i)
(2.164)
d
(i+1)
= r
(i+1)
+
i+1
d
(i)
. (2.165)
Este mtodo es muy poderoso y converge muy rpidamente, salvo por la aparicin de
los errores de redondeo en las operaciones, lo que hace que no siempre el producto interno sea
nulo. Ms adelante se vern algunas caractersticas sobre la convergencia que lo convierten en
uno de los mtodos iterativos para sistemas de ecuaciones lineales ralos con matrices simtricas
denidas positivas.
2.10.4. Convergencia de los mtodos no estacionarios
Analizaremos brevemente la convergencia de los mtodos no estacionarios. En primer
lugar nos ocuparemos rpidamente del mtodo de los residuos mnimos, y luego de los otros dos
mtodos.
Mtodo de los residuos mnimos
Ya habamos dicho que para garantizar la convergencia de este mtodo, la matriz A debe
ser denida positiva. El siguiente teorema demuestra esta armacin.
Teorema 2.9. Sea A una matriz denida positiva y sea
=
mn
_
A+A
T
2
_
; = |A|
2
,
entonces el vector r
(i+1)
generado por el mtodo de los residuos mnimos satisface la relacin
_
_
_r
(i+1)
_
_
_
2

_
1

2

2
_
1/2 _
_
_r
(i)
_
_
_
2
,
y el algoritmo correspondiente converge para cualquier valor inicial de x
(0)
.
La demostracin de este teorema puede verse en [13].
Mtodo del descenso ms rpido
Para el anlisis de la convergencia de este mtodo (y el de los gradientes conjugados) nos
basaremos en el estudio de los autovalores y autovectores de la matriz A.
Supongamos que el vector e
(i)
sea un autovector asociado a un autovalor
e
. Entonces el
residuo se puede escribir como:
r
(i)
= Ae
(i)
=
e
e
(i)
, (2.166)
por lo tanto, es tambin un autovector.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 55 -
2.10. Mtodos iterativos Anlisis Numrico
De la misma forma podemos obtener e
(i+1)
, pues es:
e
(i+1)
= e
(i)
+
r
(i)
T
r
(i)
r
(i)
T
Ar
(i)
r
(i)
(2.167)
= e
(i)
+
r
(i)
T
r
(i)

e
r
(i)
T
r
(i)
_

e
e
(i)
_
(2.168)
= 0. (2.169)
Si uno elige
i
=
e
, basta con una iteracin para obtener el resultado exacto! Pero
en realidad, debemos expresar e
(i)
como una combinacin lineal de autovectores, es decir,
e
(i)
=
n

j=1

j
v
(j)
, (2.170)
donde los v
(j)
son vectores ortonormales (elegidos as por conveniencia), y los
j
son las longitudes
de cada vector. Entonces nos queda
r
(i)
= Ae
(i)
=
n

j=1

j
v
(j)
_
_
_e
(i)
_
_
_
2
= e
(i)
T
e
(i)
=

j
2
e
(i)
T
Ae
(i)
=
_
_

j
v
(j)
T
_
_
_
_

j
v
(j)
_
_
=

j
2

j
_
_
_r
(i)
_
_
_
2
= r
(i)
T
r
(i)
=

j
2

j
2
r
(i)
T
Ar
(i)
=

j
2

j
3
Esta ltima expresin la obtenemos al tener en cuenta que el r
(i)
tambin se puede
expresar como la combinacin lineal de autovectores, y que su longitud es
j

j
. Si volvemos a
la expresin del vector e
(i+1)
tenemos:
e
(i+1)
= e
(i)
+
r
(i)
T
r
(i)
r
(i)
T
Ar
(i)
r
(i)
= e
(i)
+

j
2

j
2

j
2

j
3
r
(i)
,
que nos muestra que
i
es un promedio ponderado de
1

j
.
- Pg. 56 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Para analizar la convergencia en forma ms general vamos a denir primero la norma
energtica |e|
A
=
_
e
T
Ae
_
1/2
. Con esta norma tenemos:
_
_
_e
(i+1)
_
_
_
2
A
= e
(i+1)
T
Ae
(i+1)
=
_
e
(i)
T
+
i
r
(i)
T
_
A
_
e
(i)
+
i
r
(i)
_
= e
(i)
T
Ae
(i)
+ 2
i
r
(i)
T
Ae
(i)
+
i
2
r
(i)
T
Ar
(i)
=
_
_
_e
(i)
_
_
_
2
A
+ 2
r
(i)
T
r
(i)
r
(i)
T
Ar
(i)
_
r
(i)
T
r
(i)
_
+
_
r
(i)
T
r
(i)
r
(i)
T
Ar
(i)
_
2
r
(i)
T
Ar
(i)
=
_
_
_e
(i)
_
_
_
2
A

_
r
(i)
T
r
(i)
_
2
r
(i)
T
Ar
(i)
=
_
_
_e
(i)
_
_
_
2
A
_

_
1
_

2
j

2
j
_
2

2
j

3
j

2
j

j
_

_
=
_
_
_e
(i)
_
_
_
2
A

2
con
2
= 1
_

2
j

2
j
_
2

2
j

3
j

2
j

j
Esto quiere decir que el error de la iteracin i + 1 es funcin de los autovalores de A. Como lo
que interesa es un lmite superior del error, y no el error en si mismo, si denimos que
=

max

mn
,
se puede demostrar que
=
1
+ 1
,
con lo cual tenemos que
_
_
_e
(i)
_
_
_
A

_
1
+ 1
_
i _
_
_e
(0)
_
_
_
A
.
(La demostracin indicada se puede ver en [15].)
Mtodo de los gradientes conjugados
Para el mtodo de los gradientes conjugados vale el mismo desarrollo hecho para el
descenso ms rpido, pero con una leve modicacin se llega a que
_
_
_e
(i)
_
_
_
A
2
_
1

+ 1
_
i _
_
_e
(0)
_
_
_
A
.
Podemos decir que el mtodo converge ms rpido que el mtodo del descenso ms rpido,
pues en el primero la convergencia depende de

, mientras que en el segundo depende de
. Puesto que es equivalente a la condicin de A, nalmente tenemos que una matriz bien
condicionada converge rpidamente a la solucin, en tanto que no lo hace si est mal condicionada.
Por esta razn, este mtodo rara vez se aplica directamente sobre el sistema Ax = B, sino que se
precondiciona a la matriz A con una matriz M, formando el sistema M
T
Ax = M
T
B de manera
tal que M
T
A suele tener un nmero de condicin mucho menor que A.
Por otra parte, si la matriz est bien condicionada, el mtodo de los gradientes conjugados
converge luego de n iteraciones. Es ms, si no hubieran problemas derivados de la representacin
numrica en las computadoras, el mtodo convergera despus de k iteraciones, siendo k el nmero
de autovalores no repetidos de A. (Ver en [13] y [15].)
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 57 -
2.11. Errores de los mtodos iterativos Anlisis Numrico
2.10.5. Aspectos computacionales
En general, obtener una solucin eciente de un sistema de ecuaciones lineales por medio
de mtodos iterativos depende fuertemente de la eleccin del mtodo. Si bien podemos esperar
una menor eciencia de estos mtodos respecto de los mtodos directos, los mtodos iterativos
suelen ser ms fciles de implementar y, como no hay que factorizar la matriz, permiten resolver
sistemas mucho ms grandes que los directos.
Como resumen de los mtodos vistos, tenemos lo siguiente:
1. Mtodo de Jacobi: Muy fcil de usar, pero slo converge si la matriz es estrictamente
diagonal dominante. Actualmente slo se lo considera como una forma de introduccin a
los mtodos iterativos.
2. Mtodo de Gauss-Seidel: Converge ms rpido que el de Jacobi, pero no puede competir
con los mtodos no estacionarios. Tiene la ventaja de que tambin converge si la matriz
del sistema es simtrica y denida positiva.
3. Mtodo de las sobrerrelajaciones sucesivas: Converge ms rpido que Gauss-Seidel
si > 1, y suele converger con < 1 cuando Gauss-Seidel no converge. Como vimos, la
velocidad de convergencia depende de , valor que no es fcil de obtener en forma analtica.
Obtener ese valor puede llevar a perder parte de esa ventaja.
4. Mtodo de los residuos mnimos: Converge si la matriz A del sistema es denida
positiva y mejora si adems es simtrica. Es ms fcil de programar pues hay que hacer
operaciones matriciales (vectoriales). La convergencia puede ser lenta, similar a Jacobi.
5. Mtodo del descenso ms rpido: Se aplica a sistemas con matrices simtricas denidas
positivas. Converge ms rpido que el anterior pero si la matriz no est bien condiciona-
da, no converge. Es ms fcil de programar que el anterior porque reduce la cantidad de
operaciones matriciales. Es equivalente a Gauss-Seidel.
6. Mtodo de los gradientes conjugados: Se aplica a matrices simtricas denidas positi-
vas. Cuando la matriz est bien condicionada y adems tiene p autovalores repetidos y bien
distribuidos, converge para k = n p iteraciones (convergencia supralineal). Por este mo-
tivo, suele usarse precondicionado para conseguir convergencias supralineales. Es ms fcil
de implementar que los anteriores mtodos no estacionarios, pero suele tener problemas
con el error de redondeo.
2.11. Errores de los mtodos iterativos
En este punto analizaremos fundamentalmente los errores de los mtodos iterativos es-
tacionarios, pues son conceptualmente ms fciles de entender. Empezaremos por el error de
truncamiento.
Supongamos que x sea la solucin de nuestro sistema de ecuaciones y x
(k+1)
el resultado
luego de k + 1 iteraciones. Entonces podemos denir el error como
x
(k+1)
x = T
_
x
(k)
x
_
.
Si sumamos y restamos Tx
(k+1)
tenemos
x
(k+1)
x = T
_
x
(k)
x
_
+Tx
(k+1)
Tx
(k+1)
= T
_
x
(k)
x
(k+1)
_
+T
_
x
(k+1)
x
_
.
- Pg. 58 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Si tomamos las normas tenemos que
_
_
_x
(k+1)
x
_
_
_ |T|
_
_
_x
(k+1)
x
(k)
_
_
_ +|T|
_
_
_x
(k+1)
x
_
_
_
(1 |T|)
_
_
_x
(k+1)
x
_
_
_ |T|
_
_
_x
(k+1)
x
(k)
_
_
_
_
_
_x
(k+1)
x
_
_
_
|T|
(1 |T|)
_
_
_x
(k+1)
x
(k)
_
_
_ .
Por lo tanto, el error de truncamiento est dado por
E
T

=
|T|
(1 |T|)
_
_
_x
(k+1)
x
(k)
_
_
_ .
Para el caso del error inherente partimos de
x
(k+1)
= Tx
(k)
+C.
Si consideramos los errores inherentes del sistema, el resultado que obtendremos ser en
realidad x
(k+1)
. Supongamos que desechamos todos los errores de los pasos anteriores, es decir,
que x
(k)
x
(k)
, entonces tenemos que
x
(k+1)
= x
(k)
x
(k)
= (T T)x
(k)
+ (C C).
Como x = Tx +C, podemos hacer lo siguiente:
x
(k+1)
x = (T T)x
(k)
+ (C C) Tx C
= T
_
x
(k)
x
_
Tx
(k)
C
= T
_
x
(k)
x
_
Tx
(k)
C +Tx
(k+1)
Tx
(k+1)
= T
_
x
(k+1)x
_
+T
_
x
(k)
x
(k+1)
_
Tx
(k)
C.
Si nuevamente tomamos las normas, obtenemos
_
_
_x
(k+1)
x
_
_
_ |T|
_
_
_x
(k+1)
x
_
_
_ +|T|
_
_
_x
(k+1)
x
(k)
_
_
_ +|T|
_
_
_x
(k)
_
_
_ +|C|
(1 |T|)
_
_
_x
(k+1)
x
_
_
_ |T|
_
_
_x
(k+1)
x
(k)
_
_
_ +|T|
_
_
_x
(k)
_
_
_ +|C|
_
_
_x
(k+1)
x
_
_
_
|T|
1 |T|
_
_
_x
(k+1)
x
(k)
_
_
_ +
|T|
1 |T|
_
_
_x
(k)
_
_
_ +
|C|
1 |T|
.
Si analizamos en detalle esta ltima expresin, vemos que se repite el error de trunca-
miento (primer trmino de la derecha). En consecuencia, el error inherente est dado por
E
I

=
|T|
1 |T|
_
_
_x
(k)
_
_
_ +
|C|
1 |T|
.
Finalmente, analicemos el error de redondeo. Una vez ms, partamos de la expresin
x
(k+1)
= Tx
(k)
+C,
y nuevamente supongamos que lo que obtenemos es en realidad es x
(k+1)
y que x
(k)
x
(k)
.
Entonces nos queda:
x
(k+1)
= Tx
(k)
+C.
Para cada componente de x
(k+1)
tenemos
x
(k+1)
i
x
(k+1)
i
=
_
_

_
_
n

j=1
t
ij
x
(k)
j
_
_
+c
i
_
_
(1
i
) .
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 59 -
2.11. Errores de los mtodos iterativos Anlisis Numrico
Si hacemos un anlisis retrospectivo del error (backward error), y asumimos que n
0,01, nos queda que
x
(k+1)
i
=
_
_

j
t
ij
x
(k)
j
1,01(n + 2 j)
j
_
_
(1 +
i
) +x
(k+1)
i

i
,
con [
j
[ 1 y [
i
[ .
Consideremos ahora el hecho de que generalmente las matrices de los sistemas son ralas.
Entonces podemos denir que
p = max
1in
p
i
, con p
i
: cantidad de elementos no nulos en una la.
q = max
1i,jn
[t
ij
[,
entonces, si tomamos normas nos queda
_
_
_x
(k+1)
i
_
_
_ q
_
_
_x
(k)
_
_
_ 1,01
_
_
p

j=1
(p + 2 j)
_
_
+
_
_
_x
(k+1)
i
_
_
_ ,
y como x
(k)
x
(k+1)
, podemos escribir que
_
_
_x
(k+1)
i
_
_
_
_
_
x
(k)
_
_

_
q 1,01
p
2
+ 3p
2
+ 1
_
.
Ahora estimemos la diferencia x
(k+1)
x. Sabemos que
x
(k+1)
= Tx
(k)
+C x
(k+1)
,
entonces
x
(k+1)
x = Tx
(k)
+C x
(k+1)
Tx C
= T
_
x
(k)
x
_
x
(k+1)
.
Si nuevamente sumamos y restamos Tx
(k+1)
, obtenemos
x
(k+1)
x = T
_
x
(k)
x
(k+1)
_
+T
_
x
(k+1)
x
_
x
(k+1)
.
Una vez ms, tomemos las normas, con lo cual nos queda
_
_
_ x
(k+1)
x
_
_
_ = |T|
_
_
_x
(k+1)
x
(k)
_
_
_ +|T|
_
_
_ x
(k+1)
x
_
_
_ +
_
_
_x
(k+1)
_
_
_
(1 |T|)
_
_
_ x
(k+1)
x
_
_
_ = |T|
_
_
_x
(k+1)
x
(k)
_
_
_ +
_
_
_x
(k+1)
_
_
_ +
_
_
_ x
(k+1)
x
_
_
_ =
|T|
1 |T|
_
_
_x
(k+1)
+ x
(k)
_
_
_
_
_
x
(k+1)
_
_
1 |T|
Puesto que
_
_
_x
(k+1)
i
_
_
_
_
q 1,01
p
2
+3p
2
+ 1
_
_
_
x
(k)
_
_
y como el primer trmino corresponde
al error de truncamiento, nos queda que
E
R

_
_
x
(k)
_
_
1 |T|
_
q 1,01
p
2
+ 3p
2
+ 1
_
.
- Pg. 60 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 2. Sistemas de Ecuaciones Lineales
Finalmente, el error total al aplicar un mtodo iterativo estacionario es la suma de todos
los errores, es decir,
_
_
_x
(k+1)
x
_
_
_ E
T
+E
I
+E
R

|T|
(1 |T|)
_
_
_x
(k+1)
x
(k)
_
_
_ +
|T|
1 |T|
_
_
_x
(k)
_
_
_ +
|C|
1 |T|
+
_
_
x
(k)
_
_
1 |T|
_
q 1,01
p
2
+ 3p
2
+ 1
_

_
_
_x
(k+1)
x
_
_
_
1
1 |T|
_
|T|
_
_
_x
(k+1)
x
(k)
_
_
_ +|T|
_
_
_x
(k)
_
_
_ +|C|
+
_
_
_x
(k)
_
_
_
_
q 1,01
p
2
+ 3p
2
+ 1
_

_
.
Como hemos visto en el captulo 1, siempre es conveniente que los errores de truncamiento
e inherentes predominen respecto al de redondeo. En consecuencia, siempre debemos tratar que
E
R
< E
T
< E
I
, es decir, que el error de redondeo sea el de menor incidencia, y si es posible,
despreciable
5
.
2.12. Notas nales
Los mtodos vistos no son los nicos disponibles para resolver sistemas de ecuaciones
lineales. Dentro de los mtodos directos tambin estn el mtodo QR y el de la Descomposicin
por el Valor Singular (un equivalente a los autovalores para matrices no cuadradas), mtodo muy
usado con matrices muy mal condicionadas, aunque algunos autores sostienen que debera ser
un mtodo bsico, igual que eliminacin de Gauss.
Algo similar ocurre con los mtodos iterativos, particularmente con los no estacionarios.
Adems de los tres que hemos visto, estn el mtodo de los residuos mnimos generalizado, el
mtodo de los gradientes biconjugados y el de los gradientes conjugados cuadrtico, el mtodo
por iteraciones de Chebichev, ms otros derivados fundamentalmente a partir del mtodo de los
gradientes conjugados y de los residuos mnimos.
La existencia de varios mtodos reeja que la eleccin de uno en particular depende
fundamentalmente de las propiedades de la matriz de coecientes del sistema. Es por esto que
cada vez es ms importante saber qu problema (o fenmeno fsico) est siendo representado con
el sistema a resolver. Si buscamos informacin sobre la utilizacin de cada mtodo, veremos que
estn muy ligados al tipo de problema que se estudia y resuelve.
En muchos campos de la ingeniera, los sistemas de ecuaciones lineales estn directamen-
te relacionados con la resolucin de ecuaciones diferenciales en derivadas parciales, por eso es
que mtodos para resolver este tipo de problemas, como el de las diferencias nitas o de los
elementos nitos, han impulsado el desarrollo de mtodos ms potentes y ms precisos, dado que
mayormente trabajan con matrices de dimensiones muy grandes que adems suelen ser ralas,
simtricas y denidas positivas. Ejemplo de esto es el anlisis estructural en tres dimensiones,
que modela las piezas a dimensionar o vericar, en los cuales los programas generan sistemas de
ecuaciones lineales con las caractersticas antes mencionadas, por aplicacin del Mtodo de los
Elementos Finitos.
Finalmente, quien quiera adentrarse en los mtodos iterativos no estacionarios, el libro de
Y. Saad es una muestra muy interesante de cmo la necesidad de contar con algoritmos cada vez
ms veloces y con capacidad de resolver grandes sistemas de ecuaciones, disparan el desarrollo y
la investigacin de la matemtica aplicada.
5
Gonzlez, en su libro, dice que E
T
< E
R
pero eso se contrapone con lo que arman otros autores. La razn
principal es que el error de redondeo tiene un comportamiento errtico, lo que hace difcil acotarlo. (Ver ejemplo
en el captulo 1 con el error de discretizacin.)
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 61 -
2.12. Notas nales Anlisis Numrico
- Pg. 62 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
Captulo 3
Ecuaciones no Lineales
3.1. Introduccin
En el captulo anterior vimos como resolver sistemas de ecuaciones lineales (de la forma
Ax = B o Ax B = 0), sistemas cuya solucin es nica. Pero existe una gran cantidad de
problemas que no pueden representarse mediante ecuaciones lineales. Muchas cuestiones que
debe enfrentar la ingeniera no tienen solucin nica o no se pueden obtener en forma algebraica.
Tomemos el siguiente caso: supongamos que queremos desarrollar una mejora en la costa
y para ello necesitamos un recinto cerrado, el cual vamos a rellenar con arena. Para conseguir ese
recinto necesitamos una pared de contencin que construiremos con tablestacas. Para disear las
tablestacas debemos resolver una ecuacin del tipo a
0
+a
1
x +a
2
x
2
+a
3
x
3
= 0, donde x es la
longitud de hinca, tambin conocida como cha. Esta ecuacin tiene tres soluciones posibles
(tres races). Si bien existe una solucin algebraica para obtener las races de una ecuacin de
tercer grado, en general, es mucho ms prctico resolverla mediante algn mtodo iterativo, y
obtener aquella solucin (raz) que sea compatible con el problema.
Como dijimos, estn tambin aquellas ecuaciones que no tienen solucin algebraica y que,
por lo tanto, slo podrn resolverse mediante aproximaciones. Tenemos como ejemplo, el clculo
de la longitud de onda de una ola martima en aguas intermedias (entre aguas poco profundas,
cerca de la costa, y aguas profundas). La expresin para esto es:
L = L
0
tanh
_
2
L
x
_
,
donde L
0
es la longitud de onda en aguas profundas (x
L
2
) y x es la profundidad del mar.
Esta expresin es vlida para
L
20
x
L
2
. Como podemos ver, esta ecuacin no tiene solucin
algebraica, y, en consecuencia, el nico modo de obtenerla es mediante un mtodo iterativo. (En
realidad, cuando x >
L
2
, tanh
_
2
L
x
_

= 1, y L = L
0
, y cuando x <
L
20
, tanh
_
2
L
x
_

=
2
L
x y por lo
tanto L

2L
0
x.)
Dado que este tipo de problemas son regularmente comunes en la ingeniera, en este
captulo nos ocuparemos de estudiar los distintos mtodos para resolver ecuaciones no lineales,
de manera de obtener resultados muy precisos.
Como repaso, recordemos los teorema del valor medio y del valor intermedio.
Teorema 3.1. (Teorema del valor medio.) Si f C[a; b] y f es diferenciable en (a; b), entonces
existir un nmero c en (a; b) tal que
f
t
(c) =
f(b) f(a)
b a
.
Teorema 3.2. (Teorema del valor intermedio.) Si f C[a; b] y M es un nmero cualquiera entre
f(a) y f(b), existir un nmero c en (a; b) para el cual f(c) = M.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 63 -
3.2. Mtodo de la biseccin Anlisis Numrico
3.2. Mtodo de la biseccin
Supongamos que tenemos una funcin cualquiera f(x) y debemos hallar el valor de x, tal
que f( x) = 0. Asumamos que x est incluido en el intervalo (a; b), con b > a. Para que esto sea
cierto, generalmente se verica que f(a) f(b) < 0. (Sin embargo, hay casos en que f( x) = 0,
x (a; b) y no se cumple que f(a) f(b) < 0.)
Puesto que x (a; b), calculemos nuestra primera aproximacin tomando el valor medio
del intervalo, es decir,
x
1
= a +
b a
2
=
b +a
2
.
Para saber si es o no solucin debemos vericar que f(x
1
) = 0. Si no lo es, debemos volver a
obtener una aproximacin mediante un esquema similar. Para ello, veriquemos que f(a) f( x) <
0. Si es cierto, entonces nuestro nuevo intervalo ser (a; x), si no lo es, nuestro intervalo ser ( x; b).
Supongamos, por simplicidad, que f(a) f( x) < 0 y que nuestro nuevo intervalo es (a; x). Con el
mismo mtodo usado antes, nuestra nueva aproximacin es
x
2
=
x
1
+a
2
=
b+a
2
+a
2
=
b +a
4
+
a
2
,
que tambin puede escribirse como
x
2
= x
1

b a
4
.
Nuevamente vericamos si f(x
2
) = 0. Si seguimos iterando hasta obtener x
n
, tenemos que
x
n
= x
n1

b a
2
n
,
por lo que tambin podemos decir que
[ x x
n
[
b a
2
n
.
Las guras 3.1.(a), 3.1.(b) y 3.1.(c) muestran el proceso de aproximacin del mtodo de
la biseccin, reduciendo el intervalo.
Figura 3.1: Aproximaciones de la raz por el mtodo de la biseccin.
Si queremos hallar el valor exacto de x deberamos iterar hasta que [ x x
n
[ = 0. Pero
si establecemos una tolerancia de modo que [ x x
n
[ < , entonces tendremos que la cantidad
aproximada de iteraciones para obtener este resultado es
[ x x
n
[
b a
2
n
<
b a
2
n
<
n >
ln
_
ba

_
ln(2)
.
- Pg. 64 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
Por ejemplo, si nuestra tolerancia la expresamos como = 10
t
, para que el mtodo de
la biseccin converja se necesitarn n >
ln(b a) ln(10
t
)
ln(2)
iteraciones. Si lo desarrollamos un
poco ms, tenemos:
n >
ln(b a)
ln(2)
+t
ln(10)
ln(2)
n >
1
ln(2)
[ln(b a) +t ln(10)] ,
y podemos escribir que
n >
1
0,69
[ln(b a) +t 2,30]
n > 1,44 ln(b a) + 3,32 t,
con lo cual la cantidad de iteraciones depende mucho ms de la tolerancia que del intervalo.
Si en vez del error absoluto usamos el error relativo como criterio de interrupcin, la
cantidad de interaciones queda:
[ x x
n
[
[ x[

b a
2
n
[ x[
<
b a
2
n
[ x[
<
n >
ln
_
b a
[ x[
_
ln(2)
.
Si consideramos que x
b a
2
, entonces nos queda:
n >
ln
_
b a

ba
2
_
ln(2)
;
n >
ln
_
2

_
ln(2)
;
si = 10
t
;
n >
ln
_
2
10
t
_
ln(2)
= ln(2) +t ln(10)
ln(2)
;
n > 1 +t
ln(10)
ln(2)
.
es decir, incide poco el intervalo, siempre que el mismo sea pequeo o sus extremos no estn muy
alejados del valor exacto.
Este mtodo de aproximacin de las soluciones se conoce como mtodo de la biseccin. Es
muy sencillo y tiene la ventaja de que siempre converge, pues nada exige a la funcin a la cual se
le quiere calcular la raz, salvo que se cumpla que f(x
k1
) f(x
k
) < 0, mientras se est iterando.
Hemos estimado cuantas iteraciones son necesarias para encontrar una solucin aceptable a partir
del error absoluto, pero en realidad los criterios para detener el procedimiento pueden ser los
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 65 -
3.3. Mtodo de la falsa posicin o regula falsi Anlisis Numrico
siguientes:
[x
n
x
n1
[ ,
[x
n
x
n1
[
[x
n
[
,
[f(x
n
[ .
donde es la tolerancia que ya mencionamos.
Cualquiera de los tres criterios es bueno para detener el proceso, pero el segundo es el
ms efectivo, pues se basa en el error relativo, y nos da una idea aproximada de la cantidad
de cifras o dgitos signicativos que tiene el resultado obtenido, pero a costa de hacer todava
mucho ms lenta la convergencia, por lo ya visto al estimar n. En cambio, el ltimo es el menos
conable, pues por denicin f(x
n
) tiende a cero, con lo cual siempre es pequeo.
Si bien no tiene problemas por la convergencia, hemos visto que el mtodo resulta muy
lento para alcanzar un resultado aceptable. Adems, segn sea el criterio de interrupcin aplicado,
en muchas ocasiones puede despreciar un resultado intermedio ms preciso. Es por eso que no
suele utilizarse como nico mtodo para alcanzar la solucin.
3.3. Mtodo de la falsa posicin o regula falsi
Hay otro mtodo que tambin se basa en ir achicando el intervalo en el que se encuentra
la solucin. Se trata del mtodo de la falsa posicin o regula falsi. Consiste en trazar la cuerda
que une los puntos f(a) y f(b) de la funcin dada e ir reduciendo el intervalo hasta obtener el
valor de x tal que f( x) = 0. Al igual que para el mtodo de la biseccin, debemos empezar por
calcular x
1
. Existen dos mtodos equivalentes para obtenerlo:
x
1
= a
f(a) (b a)
f(b) f(a)
, o
x
1
= b
f(b) (b a)
f(b) f(a)
.
La forma de aplicar el mtodo es la siguiente. Utilicemos la primera expresin para obtener
x
1
; entonces veriquemos que f(x
1
) f(a) < 0. Si esto es cierto, para obtener nuestra segunda
aproximacin tendremos la siguiente expresin:
x
2
= a
f(a) (x
1
a)
f(x
1
) f(a)
,
caso contrario, nos queda esta otra expresin:
x
2
= x
1

f(x
1
) (b x
1
)
f(b) f(x
1
)
.
Algo similar ocurre si partimos de la segunda. Si f(x
1
) f(b) < 0, nos queda
x
2
= b
f(b) (b x
1
)
f(b) f(x
1
)
,
y si no
x
2
= x
1

f(x
1
) (x
1
a)
f(x
1
) f(a)
.
Este mtodo no es una gran mejora al mtodo de la biseccin, aunque al trazar las cuerdas,
hace uso de la funcin y generalmente suele converger un poco ms rpido (guras 3.2.(a), 3.2.(b)
y 3.2.(c) ). Un punto importante a tener en cuenta es que al igual que en el mtodo de la biseccin,
los sucesivos x
k
se encuentran siempre en el intervalo de anlisis (el intervalo [x
k2
; x
k1
])y, por
lo tanto, en el intervalo [a; b] inicial. Y anlogamente al mtodo de la biseccin, es posible que
desprecie soluciones ms precisas obtenidas en pasos intermedios.
- Pg. 66 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
Figura 3.2: Aproximaciones de la raz por el mtodo de la Regula Falsi.
3.4. Mtodo de las aproximaciones sucesivas o punto jo
Puesto que los mtodos anteriores no tienen una convergencia rpida, no son muy prc-
ticos para resolver problemas de gran complejidad. Veremos a continuacin un mtodo mucho
ms poderoso y efectivo.
Supongamos que nuestro problema a resolver, f(x) = 0, lo escribimos de una manera
levemente diferente:
f(x) = x g(x) = 0.
Es evidente que podemos despejar x de esta ecuacin sin problemas, por lo que nalmente nos
queda:
x = g(x),
es decir, nuestro problema se resume a encontrar una funcin g(x). Como estamos resolvindolo
en forma iterativa, la expresin que nos queda es:
x
k+1
= g(x
k
),
para k = 1; 2; . . . ; n. El esquema entonces es sencillo: partiendo de una solucin inicial, por
ejemplo x
0
, luego de efectuar n iteraciones tendremos nuestra solucin aproximada x
n
, que
estar mucho ms cerca del resultado exacto que nuestro valor inicial.
Veamos entonces un ejemplo de cmo aplicar el mtodo. Supongamos que nuestra funcin
es
e
0,1x
+ ln(x) = 0.
Sabemos que existe un mtodo algebraico para obtener las races de este polinomio, pero hagamos
uso del mtodo para obtener la raz en el intervalo (1,5; 2,5). Para ello, propongamos la siguiente
funcin g(x):
G
1
(x) = x e
0,1x
+ ln(x),
y resolvamos en forma iterativa tomando x
0
= 2. Calculemos G
1
(x
0
) y obtengamos x
1
, luego x
2
y as sucesivamente:
x
1
= G
1
(x
0
) = 2 e
0,12
+ ln(2) = 1,874
x
2
= G
1
(x
1
) = 1,874 e
0,11,874
+ ln(1,874) = 1,674
x
3
= G
1
(x
2
) = 1,674 e
0,11,674
+ ln(1,674) = 1,343.
La gura 3.3 muestra la progresin de las interaciones.
Es fcil notar que tenemos un problema. Como dijimos, la raz buscada se encuentra en
el intervalo (1,5; 2,5), pero el ltimo resultado nos dio fuera de dicho intervalo. Evidentemente,
esta funcin G
1
(x) no nos sirve.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 67 -
3.4. Mtodo de las aproximaciones sucesivas o punto jo Anlisis Numrico
Figura 3.3: Mtodo de las aproximaciones sucesivas con la funcin G
1
(x).
Cambiemos la funcin y volvamos a intentarlo. Probemos con la siguiente funcin:
G(x) = e
e
0,1x
.
Esta vez iniciemos el proceso con x
0
= 1,5. En este caso al hacer tres iteraciones obtenemos el
siguiente resultado: x
3
= 2,231, valor que est dentro del intervalo. Veriquemos si este valor es
correcto calculando f(x
10
):
f(2,231) = e
0,12,231
+ ln(2,231) = 0,0023.
La gura 3.4 muestra la progresin de las interaciones para esta ltima funcin.
Figura 3.4: Mtodo de las aproximaciones sucesivas con la funcin G(x).
Este valor puede considerarse cercano cero y por lo tanto, hemos podido encontrar la raz
buscada. (La raz de esta funcin es x = 2,226.)
Pero por qu fallamos al usar la primera funcin? Para entender esto veamos los siguien-
tes teoremas.
Teorema 3.3. Si g(x) C(a; b) y g(x) [a; b] para todo x [a; b], entonces g(x) tiene un punto
jo en [a; b].
Teorema 3.4. Si g
t
(x) existe en [a; b], y existe una constante m < 1, tal que

g
t
(x)

m, para toda x [a; b],


entonces, el punto jo en en [a; b] es nico.
- Pg. 68 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
La demostracin de estos teoremas puede verse en [2].
Estos teoremas son sucientes pero no necesarios, es decir, pueden no cumplirse y existir
dicho punto, tal como vimos en el ejemplo anterior. La funcin g
1
(x) no cumple con los teoremas
antes expuestos, sin embargo el punto jo existe
1
.
Si miramos la funcin g
1
(x) rpidamente notamos que la funcin g
1
(x) en 0,5 no se
mapea en el intervalo dado, por lo tanto, no se puede asegurar que exista un punto jo. Y si
hallamos la primera derivada en ese punto tenemos que [g
t
1
(0,5)[ = [11,5[ = 11,5 > 1, con lo cual
si existiera el punto jo, no podramos asegurar que dicho punto jo sea nico. No ocurre lo mismo
con la funcin g
2
(x) puesto que g
2
(0,5) = 1,476 [0,5; 1,5] y [g
t
2
(0,5)[ = [0,932[ = 0,932 < 1,
con lo cual el punto jo es nico. En realidad, deberamos haber vericado ambas funciones g
para varios puntos del intervalo, pero al comprobar que el punto de partida no cumple con las
condiciones de ambos teoremas (funcin g
1
(x)), nos indica que esta funcin no es convergente.
Vericado que la funcin g(x) es convergente, nos falta denir el o los criterios de inte-
rrupcin. Como en los casos anteriores, stos son similares a los ya vistos, es decir,
[x
n
x
n1
[ ,
[x
n
x
n1
[
[x
n
[
,
[f(x
n
[ .
Con el mismo ejemplo tenemos una pregunta: cmo podemos obtener una solucin por
aproximaciones sucesivas (o punto jo) que tenga una convergencia rpida? Para ello tenemos el
siguiente teorema.
Teorema 3.5. Sea g(x) C[a; b] tal que g(x) [a; b] para toda x en [a; b], que existe g
t
(x) en
[a; b] y que una constante k < 1 cuando

g
t
(x)

k, para toda x (a; b).


Entonces, para cualquier nmero x
0
[a; b], la sucesin denida por
x
n
= g(x
n1
), n 1,
converge en el nico punto jo x en [a; b] .
Demostracin El teorema 3.5 implica que existe un punto jo en [a; b]. Como g(x) mapea
[a; b] en s mismo, la sucesin x
n

n=0
se dene para todo n 0 y x
n
[a; b] para todo n. Dado
que [g
t
(x)[ k, si aplicamos el teorema del valor medio, tenemos
[x
n
x[ = [g(x
n1
) g( x)[ =

g
t
()

[x
n1
x[ k [x
n1
x[ ,
donde (a; b). En forma inductiva obtenemos
[x
n
x[ k [x
n1
x[ k
2
[x
n2
x[ . . . k
n
[x
0
x[ .
Como k < 1, entonces
lm
n
[x
n
x[ lm
n
k
n
[x
0
x[ = 0,
y la sucesin x
n

n=0
converge a x.
Corolario 3.5.1. Si g satisface las hiptesis de teorema 3.5, las cotas de error que supone utilizar
x
n
para aproximar x estn dadas por
[x
n
x[ k
n
maxx
0
a; b x
0
,
y por
[x
n
x[
k
n
1 k
[x
1
x
0
[ , para toda n 1.
1
Para x = 1 se tiene g
1
(x) = 1, por lo tanto, el punto jo existe.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 69 -
3.5. Mtodo de Newton-Raphson Anlisis Numrico
Demostracin La primera cota viene de:
[x
n
x[ k
n
[x
o
x[ k
n
maxx
0
a; b x
0
,
porque x (a; b).
Con x 1, la demostracin del teorema 3.5 implica que
[x
n+1
x[ = [g(x
n
) g(x
n1
)[ [x
n
x
n1
[ . . . k
n
[x
1
x
0
[ .
En consecuencia, cuando m > n 1,
[x
m
x
n
[ = [x
m
x
m1
+x
m1
x
m2
+. . . +x
n+1
x
n
[
[x
m
x
m1
[ +[x
m1
x
m2
[ +. . . +[x
n+1
x
n
[
k
m1
[x
1
x
0
[ +k
m2
[x
1
x
0
[ +. . . +k
n
[x
1
x
0
[
= k
n
_
1 +k +k
2
+. . . +k
mn1
_
[x
1
x
0
[ .
Por el mismo teorema, tenemos que lm
n
x
m
= x, por lo tanto
[ x x
n
[ = lm
n
k
n
[x
1
x
0
[

i=0
k
i
.
Pero

i=0
k
i
es una serie geomtrica con razn k. Como 0 < k < 1, esta sucesin converge
a
1
1 k
, por lo que nos queda que
[ x x
n
[
k
n
1 k
[x
1
x
0
[ .
Podemos ver que como [g
t
(x)[ k, la convergencia depende de la primera derivada de
g(x). Cuanto ms chico sea k, ms rpida ser convergencia.
3.5. Mtodo de Newton-Raphson
Este mtodo es uno de los ms poderosos que se conocen para resolver ecuaciones de la
forma f(x) = 0. Curiosamente, el mtodo fue desarrollado tanto por Isaac Newton como por
Joseph Raphson, pero fue ste quien lo public primero, casi 50 aos antes y en una forma
levemente diferente a la de Newton, quien slo la desarroll para resolver races de polinomios.
Su formulacin actual fue desarrollada en realidad por otro matemtico, Thomas Simpson.
Una primera aproximacin para obtenerlo es partir del mtodo de la falsa posicin, y en
vez de trazar una cuerda entre los dos extremos del intervalo, trazar una tangente, que pase por
un punto. Supongamos que para el mismo intervalo [a; b] trazamos la tangente que pasa por f(b).
La ecuacin de la recta tangente ser
t(x) = f
t
(b)(x b) +f(b).
Cuando se cumpla que f(x) = 0 se deber cumplir que t(x) = 0. Por lo tanto podramos
hallar un valor x
1
tal que t(x
1
) = 0 para ir aproximando nuestra raz. As obtenemos
t(x
1
) = 0 = f
t
(b)(x
1
b) +f(b)
x
1
= b
f(b)
f
t
(b)
.
Si f(x
1
) ,= 0, podemos repetir el procedimiento otra vez para obtener un x
2
. En denitiva,
podemos crear una aproximacin iterativa de la siguiente forma:
x
n
= x
n1

f(x
n1
)
f
t
(x
n1
)
.
- Pg. 70 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
Figura 3.5: Mtodo de Newton-Raphson.
La gura 3.5 muestra la aproximacin de la raz por este mtodo.
Existe una forma de deducirlo a travs de la serie de Taylor. Supongamos que f(x)
C
2
[a,b], y sea x una aproximacin de x tal que f( x) = 0. Tambin que f
t
( x) ,= 0 y [ x x[ sea
pequeo. Desarrollemos el primer polinomio de Taylor para f( x) expandida alrededor de x,
f(x) = f( x) +f
t
( x)(x x) +f
tt
((x))
(x x)
2
2
,
donde (x) est entre x y x. Puesto que f( x) = 0, entonces para x = x tenemos
0 = f( x) +f
t
( x)( x x) +f
tt
(( x))
( x x)
2
2
.
Al suponer que [ x x[ es pequeo, podemos despreciar ( x x)
2
, con lo que nos queda
0 = f( x) +f
t
( x)( x x),
y despejando x de la ecuacin nos queda
x = x
f( x)
f
t
( x)
.
Y si en lugar de aproximar con x lo hacemos con x
0
, entonces generamos una sucesin x
n

denida por
x
n
= x
n1

f(x
n1
)
f
t
(x
n1
)
,
que es la misma expresin que ya vimos.
De este desarrollo podemos ver que el error cometido es proporcional a ( x x
n
)
2
o a
f
tt
(x
n
) (puesto que cuando x
n
x podemos suponer que (x
n
) x
n
). De ah que podemos
aplicar los mismos criterios de interrupcin que en los otros mtodos.
Tambin podemos observar que si no elegimos un x
0
lo sucientemente cerca, el mtodo
puede no converger. Para esto tenemos el siguiente teorema.
Teorema 3.6. Sea f C
2
[a; b]; si x [a; b] es tal que f( x) = 0 y f
t
( x) ,= 0, entonces existe
un > 0 tal que el mtodo de Newton-Raphson genera una sucesin x
n

n=1
que converge a x
para cualquier aproximacin inicial x
0
[ x ; x +].
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 71 -
3.5. Mtodo de Newton-Raphson Anlisis Numrico
Demostracin La demostracin se basa en analizar el mtodo de Newton-Raphson como si
fuera el mtodo de las aproximaciones sucesivas, tomando que x
n
= g(x
n1
), n 1, y que
g(x) = x
f(x)
f
t
(x)
.
Entonces, sea k un nmero cualquiera en (0; 1). En primer lugar debemos encontrar un
intervalo [ x; x+] que g mapee en s mismo y en el que [g
t
(x)[ k para toda x [ x; x+].
Como f
t
( x) ,= 0 y f
t
( x) es continua, existe
1
> 0 tal que f
t
(x) ,= 0 para x [ x
1
; x +

1
] [a; b]. Por lo tanto, g est denida y es continua en [ x
1
; x +
1
]. Por otro lado tenemos
que
g
t
(x) = 1
f
t
(x)f
t
(x) f(x)f
tt
(x)
[f
t
(x)]
2
=
f(x)f
tt
(x)
[f
t
(x)]
2
,
para x [ x
1
; x +
1
] y como f C
2
[a; b], tendremos que g C
1
[a; b].
Como hemos supuesto que f( x) = 0, entonces
g
t
( x) =
f( x)f
tt
( x)
[f
t
( x)]
2
= 0.
Adems g
t
es continua y k es tal que 0 < k < 1, entonces existe un , tal que 0 < <
1
, y

g
t
(x)

k para toda x [ x ; x +].


Nos falta todava demostrar que g : [ x ; x +] [ x ; x +]. Si x x ; x +]. El
teorema del valor medio implica que existe un nmero entre x y x para el que se cumple
[g(x) g( x)[ =

g
t
()

[x x[ .
Por lo tanto, se cumple que
[g(x) x[ = [g(x) g( x)[ =

g
t
()

[x x[ k [x x[ < [x x[ .
Como x x ; x + ], podemos deducir que [x x[ < y que [g(x) x[ < . Este ltimo
resultado nos muestra que g : [ x ; x +] [ x ; x +].
En consecuencia, la funcin g(x) = x f(x)/f
t
(x) satisface todas las hiptesis del teore-
ma 3.5, de modo que la sucesin x
n

n=1
denida por
x
n
= g(x
n1
) = x
n1

f(x
n1
)
f
t
(x
n1
)
, para n 1,
converge a x para cualquier x
0
[ x ; x +].
Como vimos, este mtodo es una variante del mtodo de las aproximaciones sucesivas.
Si la funcin f(x) no tiene derivada en el entorno [a; b] no es posible aplicarlo, pero si resulta
difcil calcularla o evaluarla, existe un mtodo alternativo denominado mtodo de la secante, el
cual reemplaza f
t
(x
n1
) por su aproximacin discreta, es decir,
f
t
(x
n1
) =
f(x
n1
) f(x
n2
)
x
n1
x
n2
.
Si reemplazamos esto ltimo en la frmula de Newton-Raphson tenemos
x
n
= x
n1

f(x
n1
)(x
n1
x
n2
)
f(x
n1
) f(x
n2
)
,
que tambin podemos escribir como
x
n
=
f(x
n1
)x
n2
f(x
n2
)x
n1
f(x
n1
) f(x
n2
)
.
- Pg. 72 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
3.6. Anlisis del error
En este punto analizaremos la convergencia de los mtodos iterativos vistos. Nos basare-
mos en la siguiente denicin.
Denicin 3.1. Un sucesin x
n

n=0
convergir a x de orden con una constante asinttica
si se cumple que
lm
n
[x
n+1
x[
[x
n
x[

= ,
con x
n
,= x para toda n, y y son dos constantes positivas.
En consecuencia, tenemos que la convergencia puede ser lineal ( = 1), cuadrtica
( = 2), cbica ( = 3), etc. Dado que obtener un procedimiento con convergencia mayor a la
cuadrtica no es sencillo, nos ocuparemos de analizar solamente los dos primeros casos.
Enunciaremos dos teoremas que se reeren a la convergencia lineal y a la cuadrtica, que
estn basados en el mtodo de las aproximaciones sucesivas.
Teorema 3.7. (Convergencia lineal.) Sea g C[a; b] tal que g [a; b] para toda x [a; b]. Si g
t
es continua en (a; b) y existe una constante k < 1 tal que

g
t
(x)

k, para todo x (a; b),


y si g
t
( x) ,= 0, entonces para cualquier x
0
[a; b] la sucesin
x
n
= g(x
n1
), para n 1,
converge slo linealmente al punto jo x [a; b].
Teorema 3.8. (Convergencia cuadrtica.) Sea x la solucin de la ecuacin x = g(x). Si g
t
( x) = 0
y g
tt
es continua y est estrictamente acotada por una constante M en un intervalo abierto I
que contiene a x, entonces existir un > 0 tal que, para x
0
[ x ; x +], la sucesin denida
por x
n
= g(x
n1
) cuando n 1, converge al menos cuadrticamente x. Adems para valores
sucientemente grandes de n, se tiene
[x
n+1
x[ <
M
2
[x
n
x[
2
.
Las demostraciones de ambos teoremas pueden verse en [2].
El primer teorema nos dice que para que la convergencia sea cuadrtica o superior, se
debe cumplir que g
t
( x) = 0, en tanto que el segundo, nos da las condiciones que aseguran que la
convergencia sea al menos cuadrtica. Este teorema nos indica que el mtodo de las aproxima-
ciones sucesivas nos puede llevar a desarrollar mtodos con orden de convergencia cuadrtica o
superior. En efecto, si partimos de
x
n
= g(x
n1
),
podemos suponer que g(x) se puede escribir como
g(x) = x (x)f(x).
De acuerdo con el segundo teorema, para obtener una convergencia al menos cuadrtica
debemos plantear que g
t
( x) = 0. Dado que:
g
t
(x) = 1
t
(x)f(x) (x)f
t
(x),
entonces
g
t
( x) = 1 ( x)f
t
( x),
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 73 -
3.7. Mtodos de convergencia acelerada Anlisis Numrico
pues f( x) = 0, entonces g
t
( x) = 0 si y slo si ( x) = 1/f
t
( x). Si reemplazamos esto en la funcin
original nos queda
x
n
= g(x
n1
) = x
n1

f(x
n1
)
f
t
(x
n1
)
,
que no es otra cosa que el mtodo de Newton-Raphson.
Del segundo teorema, obtenemos adems que M = [g
tt
(x)[. De ah que si [g
tt
(x)[ = 0, la
convergencia podra ser cbica, es decir, si f
tt
(x) se anula en el intervalo, la convergencia ser
superior a la cuadrtica
2
.
3.7. Mtodos de convergencia acelerada
Si bien hemos visto que el mtodo de Newton-Raphson es de convergencia cuadrtica,
no siempre es posible utilizarlo. La principal razn es que debemos conocer la derivada de la
funcin. Aunque vimos un mtodo alternativo, el mtodo de la secante, ste no resulta ser un
mtodo de convergencia cuadrtica. Veremos ahora un procedimiento para obtener convergencia
cuadrtica a partir de un mtodo linealmente convergente.
Supongamos que tenemos la sucesin x
n

n=0
que converge linealmente y que los signos
de x
n
x, x
n+1
x y x
n+2
x son iguales y que n es sucientemente grande. Para construir
una nueva sucesin x
n

n=0
que converja ms rpido que la anterior vamos a plantear que
x
n+1
x
x
n
x

x
n+2
x
x
n+1
x
,
con lo cual nos queda
(x
n+1
x)
2
(x
n+2
x)(x
n
x).
Si la desarrollamos nos queda
x
2
n+1
2x
n+1
x + x
2
x
n+2
x
n
(x
n+2
+x
n
) x + x
2
,
y
(x
n+2
+x
n
2x
n+1
) x x
n+2
x
n
x
2
n+1
.
Si despejamos x nos queda
x
x
n+2
x
n
x
2
n+1
x
n+2
2x
n+1
+x
n
.
Si ahora sumamos y restamos x
2
n
y 2x
n
x
n+1
en el numerador, tenemos
x
x
2
n
+x
n+2
x
n
2x
n
x
n+1
x
2
n
+ 2x
n
x
n+1
x
2
n+1
x
n+2
2x
n+1
+x
n

x
n
(x
n+2
2x
n+1
+x
n
) (x
2
n
2x
n
x
n+1
+x
2
n+1
)
x
n+2
2x
n+1
+x
n
x
n

(x
n+1
x
n
)
2
x
n+2
2x
n+1
+x
n
.
Si denimos la nueva sucesin x
n

n=0
como
x
n
= x
n

(x
n+1
x
n
)
2
x
n+2
2x
n+1
+x
n
,
obtenemos una tcnica denominada mtodo
2
de Aitken, que supone que la sucesin x
n

n=0
converge ms rpidamente a x que la sucesin x
n

n=0
.
La notacin asociada a esta tcnica est dada por:
2
Si se desarrolla g

(x) se tiene que la derivada que ms incide en la convergencia es f

(x).
- Pg. 74 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
Denicin 3.2. Dada la sucesin x
n

n=0
, la diferencia progresiva x
n
est denida por
x
n
= x
n+1
x
n
, para n 0.
Las potencias ms altas
k
x
n
se denen por medio de

k
x
n
= (
k1
x
n
), para k 2.
A partir de estas deniciones tenemos que
2
x
n
se expresa como

2
x
n
= (
1
x
n
) = (x
n+1
x
n
)
= x
n+1
x
n
= (x
n+2
x
n+1
) (x
n+1
x
n
)
= x
n+2
2x
n+1
+x
n
,
por lo que el mtodo
2
de Aitken puede escribirse como
x
n
= x
n

(x
n
)
2

2
x
n
.
Para analizar la convergencia de este mtodo tenemos el siguiente teorema.
Teorema 3.9. Sea la sucesin x
n

n=0
que converge linealmente a x, y que para valores su-
cientemente grandes de n, se cumpla que (x
n
x)(x
n+1
x) > 0. Entonces la sucesin x
n

n=0
converge a x con mayor rapidez que x
n

n=0
en el sentido de que
lm
n
x
n
x
x
n
x
= 0.
Si aplicamos el mtodo
2
de Aitken a una sucesin cuya convergencia sea lineal, podemos
acelerar la convergencia a cuadrtica. Podemos entonces desarrollar otros mtodos a partir de
esta tcnica.
3.8. Mtodo de Steensen
Si aplicamos esta tcnica a una sucesin obtenida por el mtodo de las aproximaciones
sucesivas tendremos el mtodo conocido como mtodo de Steensen. Este mtodo, en realidad,
tiene una leve modicacin al mtodo
2
de Aitken.
Al aplicar el mtodo
2
de Aitken a una sucesin linealmente convergente, la nueva
sucesin convergente cuadrticamente se construye mediante los siguientes trminos:
x
0
; x
1
= g(x
0
); x
2
= g(x
1
); x
0
=
2
(x
0
); x
3
= g(x
2
); x
1
=
2
(x
1
); . . . .
En cambio, el mtodo de Steensen calcula las tres primeras aproximaciones de la forma indicada
pero introduce una leve modicacin al calcular x
3
. En lugar de obtener a ste a partir de x
2
aplicando el mtodo de las aproximaciones sucesivas, lo hace a partir de x
0
. La secuencia queda
as de la siguiente forma:
x
(0)
0
; x
(0)
1
= g(x
(0)
0
); x
(0)
2
= g(x
(0)
1
); x
(1)
0
=
2
(x
(0)
0
);
x
(1)
1
= g(x
(1)
0
); x
(1)
2
= g(x
(1)
1
); x
(2)
0
=
2
(x
(1)
0
); . . .
o sea, no arma una sucesin completa con el mtodo de las aproximaciones sucesivas sino que
con las tres primeras aproximaciones calcula una nueva aproximacin haciendo uso del mtodo

2
de Aitken, para continuar otra vez con el mtodo de las aproximaciones sucesivas, obtener
dos nuevas aproximaciones y nuevamente aplicar el mtodo
2
de Aitken.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 75 -
3.8. Mtodo de Steensen Anlisis Numrico
De esta manera, el mtodo se asegura una convergencia cuadrtica y mejora notablemente
la precisin en los resultados obtenidos por el mtodo de las aproximaciones sucesivas. En el
siguiente ejemplo podemos ver la diferencia en la convergencia.
Supongamos que para aplicar el mtodo de las aproximaciones sucesivas tenemos la ex-
presin
x
k+1
=
2 e
x
k
+x
2
k
3
, x
0
= 0,50.
Para ver la ecacia del mtodo y poder comparar, obtendremos la raz por el mtodo de
las aproximaciones sucesivas primero, y por el mtodo de Steensen, despus.
Tabla 3.1: Mtodo de Steensen - Algoritmo 1
i x
i
k i x
(k)
i
0 0,50000 0 0 0,50000
1 0,20043 1 0,20043
2 0,27275 2 0,27275
3 0,25361 1 0 0,25868
4 0,25855 1 0,25723
5 0,25727 2 0,25761
6 0,25760 2 0 0,25753
7 0,25751
8 0,25753
En la tabla 3.1 podemos ver los resultados obtenidos al aplicar ambos mtodos. En la
segunda columna estn los obtenidos con aproximaciones sucesivas y en la ltima, los obtenidos
con Steensen. Observemos que el mtodo de Steensen alcanz ms rpidamente el resultado
correcto que el mtodo de las aproximaciones sucesivas. Mientras este ltimo necesit ocho
iteraciones, el de Steensen requiri solamente seis.
Aunque el mtodo es muy conveniente para aproximar la raz, su algoritmo es algo en-
gorroso para implementarlo en una calculadora o computadora. Veamos la forma de mejorarlo.
Como hemos partido del mtodo de las aproximaciones sucesivas, se cumple que x
i+1
= g(x
i
).
Podemos redenir la notacin de Aitken de esta manera:
x
i
= x
i+1
x
n
= g(x
i
) x
i

2
x
i
= x
i+2
2x
i+1
+x
i
= g(x
i+1
) 2g(x
i
) +x
i
.
De esta forma eliminamos explcitamente las iteraciones i +1 e i +2 de aproximaciones sucesivas,
pero la incorporamos en forma implcita. Pero adems como f(x
i
) = g(x
i
) x
i
, pues as surgi
nuestra g(x), podemos volver a modicar la notacin anterior y dejarla as:
x
i
= g(x
i
) x
i
= f(x
i
)

2
x
i
= = g[g(x
i
)] g(x
i
) [g(x
i
) x
i
] = f[x
i
+f(x
i
)] f(x
i
),
pues g[g(x
i
)] g(x
i
) = f[g(x
i
)] = f[x
i
+f(x
i
)]. Ahora, reemplacemos en el mtodo de Steensen
y eliminemos el suprandice y redenamos el subndice para pasos sucesivos:
x
i+1
= x
i

f(x
i
)
2
f[x
i
+f(x
i
)] f(x
i
)
.
Esta formulacin nueva lo asemeja al mtodo de Newton-Raphson y al de la Secante, y reduce
la cantidad de iteraciones, como podemos ver en la siguiente tabla:
- Pg. 76 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
Tabla 3.2: Mtodo de Steensen - Algoritmo 2
i x
i
x
i+1
0 0,50000 0,27455
1 0,27455 0,25761
2 0,25761 0,25753
3 0,25753 0,25753
Este otro algoritmo del mtodo de Steensen es mucho ms conveniente, pues es fcil de
codicar. Slo requiere conocer f(x) al igual que en el mtodo de la secante, pero con la ventaja
de que su orden de convergencia es similar al de Newton-Raphson. Comparado con aqul, tiene
la ventaja de su orden de convergencia cuadrtico (O(h
2
)) y la desventaja de calcular dos veces
f(x)
3
.
3.9. Mtodo de Halley
Hemos visto que podemos desarrollar mtodos con un orden de convergencia mayor al
lineal a partir del mtodo de las aproximaciones sucesivas, cuya convergencia es justamente lineal.
Las dos mejoras obtenidas fueron el Mtodo de Newton-Raphson, y su alternativa, el Mtodo
de la secante, y los mtodos
2
de Aitken y de Steensen. En los casos ms favorables, estos
mtodos alcanzan un orden de convergencia cuadrtico, si bien el
2
de Aitken puede alcanzar
rdenes superiores. El mtodo de la secante no alcanza una convergencia cuadrtica pero es
supralineal.
Tambin mencionamos que obtener un mtodo con un orden de convergencia cbico no
era una tarea sencilla pero tampoco imposible, pues al plantear alguna funcin g(x) tal que
g
tt
(x) = 0 en todo el intervalo, es posible que alcanzar dicha convergencia cbica. En los ltimos
aos, ha resurgido un mtodo cuya convergencia es, justamente, cbica y que fue obtenido a
nes del siglo XVII o a principios del siglo XVIII, es decir, contemporneo al mtodo de Newton-
Raphson. Este mtodo se conoce como Mtodo de Halley, aunque el mismo Halley reconoci que
su mtodo se bas en otro creado por el matemtico francs Thomas Fautet de Lagny en 1691
para aproximar races cbicas mediante frmulas racionales e irracionales (ver [4]).
Existen varias formas de obtenerlo. Nos concentraremos solamente en dos.
Como mejora del Mtodo de Newton-Raphson
De la misma forma que mejoramos el mtodo de las Aproximaciones Sucesivas podemos
obtener una mejora del mtodo de Newton-Raphson. Entonces, denamos una nueva funcin
(x) de la siguiente manera:
(x) = f(x) (x).
Si a nuestra raz de la funcin f(x) = 0 la volvemos llamar x, impondremos que esta nueva
funcin cumpla con lo siguiente:

t
( x) ,= 0,
tt
( x) = 0 y
ttt
( x) ,= 0.
Al imponer que
tt
( x) = 0 nos queda:
f
tt
( x) ( x) + 2 f
t
( x)
t
( x) +f( x)
tt
( x) = 0,
3
La mayora de las calculadoras de bolsillo incorporan el Mtodo de la Secante para obtener la raz de
una ecuacin no lineal; podra ser un trabajo interesante incluir este algoritmo de Steensen en calculadoras ms
modernas o en programas como Matlab, Octave, MathCAD, e incluso SMath Studio.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 77 -
3.9. Mtodo de Halley Anlisis Numrico
y como f( x) = 0, podemos escribir lo anterior as:
f
tt
( x) ( x) + 2 f
t
( x)
t
( x) = 0,
que puede ser convertida en una ecuacin diferencial de la forma
f
tt
(x) (x) + 2 f
t
(x)
t
(x) = 0,
cuya solucin general es:
(x) =
1
_
f
t
(x)
.
Por lo tanto, nuestra funcin (x) queda as:
(x) =
f(x)
_
f
t
(x)
.
Con esta nueva funcin (x) desarrollemos el mtodo de Newton-Raphson:
x
k+1
= x
k

(x
k
)

t
(x
k
)
= x
k

f(x
k
)
_
f
t
(x
k
)
2
_
f
t
(x
k
)
3
2 f
t
(x
k
)
2
f(x
k
) f
tt
(x
k
)
.
Si operamos algebraicamente, obtenemos una frmula ms compacta:
x
k+1
= x
k

2
2
f(x
k
) f
tt
(x
k
)
f
t
(x
k
)
2
f(x
k
)
f
t
(x
k
)
.
Por desarrollo de la serie de Taylor
En forma anloga a como obtuvimos el mtodo de Newton-Raphson, podemos obtener el
mtodo de Halley a partir de la serie de Taylor. Efectivamente, podemos obtener f( x) a partir
de cualquier x si hacemos que
f( x) = f(x) +f
t
(x) ( x x) +f
tt
(x)
( x x)
2
2!
+f
ttt
(x)
( x x)
3
3!
+. . . ,
y como f( x) = 0, nos queda
0 = f(x) +f
t
(x) ( x x) +f
tt
(x)
( x x)
2
2!
+f
ttt
(x)
( x x)
3
3!
+. . .
Si ahora denimos = x x y reemplazamos en la anterior, truncando en f
ttt
(x), nos
queda
0 = f(x) +f
t
(x) +f
tt
(x)

2
2!
+f
ttt
()

3
3!
+. . .
Si dejamos de lado el trmino de truncamiento, nos queda que
0 = f(x) +f
t
(x) +f
tt
(x)

2
2!
,
que nos permite aproximar de esta forma:
=
f(x)
f
t
(x) +
f
tt
(x)
2

.
- Pg. 78 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
Como nos queda una ecuacin implcita, podemos aproximar con Newton-Raphson, es decir,
hacer que
=
f(x)
f
t
(x)
,
y luego reemplazar en la expresin anterior, de modo de obtener lo siguiente:
=
f(x)
f
t
(x) +
f
tt
(x)
2
f(x)
f
t
(x)
.
Si reordenamos la expresin ltima nos queda:
=
2
2
f(x) f
tt
(x)
f
t
(x)
2
f(x)
f
t
(x)
,
y como hemos denido que = x x, entonces x = x + , por lo que si reemplazamos por la
expresin hallada, nos queda
x = x
2
2
f(x) f
tt
(x)
f
t
(x)
2
f(x)
f
t
(x)
,
que para un proceso iterativo se convierte en
x
k+1
= x
k

2
2
f(x
k
) f
tt
(x
k
)
f
t
(x
k
)
2
f(x
k
)
f
t
(x
k
)
,
nuevamente, el mtodo de Halley. Si denimos
L
f
(x
k
) =
f(x
k
) f
tt
(x
k
)
f
t
(x
k
)
2
,
otra forma de escribir el mtodo es:
x
k+1
= x
k

2
2 L
f
(x
k
)
f(x
k
)
f
t
(x
k
)
.
Observemos que nuevamente debemos imponer que f
t
(x) ,= 0 en el intervalo, pues de lo contrario
L
f
(x
k
) y
f(x
k
)
f
t
(x
k
)
quedarn indeterminadas.
Orden de convergencia del mtodo
Para analizar el orden de convergencia del mtodo, nuevamente nos ayudaremos con la
serie de Taylor. Si desarrollamos g(x) a partir de g( x) tenemos que
g(x) = g( x) +g
t
( x) (x x) +g
tt
( x)
(x x)
2
2!
+g
ttt
( x)
(x x)
3
3!
+. . .
Al mismo tiempo, como x es nuestra raz, g( x) = x, o sea que el desarrollo anterior se puede
escribir as:
g(x) = x +g
t
( x) (x x) +g
tt
( x)
(x x)
2
2!
+g
ttt
( x)
(x x)
3
3!
+. . .
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 79 -
3.9. Mtodo de Halley Anlisis Numrico
Por otro lado, sabemos que g(x) = x
(x)

t
(x)
, as que podemos obtener g
t
( x), g
tt
( x),
g
ttt
( x), etc. Si nos limitamos a estas tres derivadas, obtenemos lo siguiente:
g
t
(x) =
(x)
tt
(x)
[
t
(x)]
2
g
tt
(x) =

tt
(x)

t
(x)
+
(x)
ttt
(x)
[
t
(x)]
2
2
(x)
tt
(x)
ttt
(x)
[
t
(x)]
3
g
ttt
(x) = 2

ttt
(x)

t
(x)
+
(x)
iv
(x) 3 [
tt
(x)]
2
[
t
(x)]
2
+ 6
(x)
[
t
(x)]
4
[
tt
(x)]
3

t
(x)
tt
(x)
ttt
(x).
Si reemplazamos x = x, como ( x) = 0,
t
( x) ,= 0,
tt
( x) = 0 y asumiendo que
iv
( x) est
acotada, nos queda
g
t
( x) =
( x)
tt
( x)
[
t
( x)]
2
= 0
g
tt
( x) =

tt
( x)

t
( x)
+
( x)
ttt
( x)
[
t
( x)]
2
2
( x)
tt
( x)
ttt
( x)
[
t
( x)]
3
= 0
g
ttt
( x) = 2

ttt
( x)

t
( x)
+
( x)
iv
( x) 3 [
tt
( x)]
2
[
t
( x)]
2
+ 6
( x)
[
t
( x)]
4
[
tt
( x)]
3

t
( x)
tt
( x)
ttt
( x) = 2

ttt
( x)

t
( x)
.
Ahora podemos reescribir la serie de Taylor:
g(x) = x +g
ttt
( x)
(x x)
3
6
+. . . = x + 2

ttt
( x)

t
( x)
(x x)
3
6
+. . .
Si truncamos en en el trmino con g
ttt
( x) nos queda
g(x) = x +

ttt
()

t
()
(x x)
3
3
,
Ahora consideremos que x = x
k
, entonces
g(x
k
) = x +

ttt
()

t
()
(x
k
x)
3
3
.
Como g(x
n
) = x
k+1
la expresin queda as:
x
k+1
x =

ttt
()
3
t
()
(x
k
x)
3
= (x
k
x)
3
,
o, de esta otra forma
x
k+1
x
(x
k
x)
3
=

k+1

k
3
= .
Hemos podido relacionar el error en la iteracin k + 1 con el error en la iteracin k.
Como vimos en la denicin 3.1, el orden de convergencia lo obtenemos cuando
lm
k
[x
k+1
x[
[x
k
x[

= .
Si aplicamos esta denicin al error del mtodo de Halley, = 3, en consecuencia, el mtodo es
de convergencia cbica.
- Pg. 80 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
3.10. Sistemas de Ecuaciones no lineales
En el captulo anterior hemos analizado como resolver un sistema de ecuaciones lineales
a travs de varios mtodos, todos ellos basados en la facilidad de trabajar con matrices. Pero
no siempre nuestros problemas son lineales. Como hemos visto en este captulo, hay ecuaciones
que no los son y que no tienen solucin algebraica (o analtica) alguna. Lo mismo pasa con los
sistemas de ecuaciones. Consideremos el siguiente ejemplo:
f
1
(x
1
; x
2
) = x
1
2
+x
2
2
1 = 0,
f
2
(x
1
; x
2
) = x
1
2
2x
1
x
2
+ 1 = 0.
Este sistema sencillo no tiene solucin nica, consecuencia de las ecuaciones de segundo grado.
Sin embargo, conocemos mtodos que podemos aplicar para obtener una solucin. Por ejemplo,
podemos partir de los mtodos iterativos vistos en para resolver sistemas de ecuaciones lineales
ralos y reordenar el sistema as:
x
1
=
_
1 x
2
2
,
x
2
= x
1
2
2x
1
+ 1.
Pero este esquema tambin puede ser considerado como la aplicacin del Mtodo de las Aproxi-
maciones sucesivas, que vimos para resolver ecuaciones no lineales. As, nuestro sistema quedara
como un esquema iterativo que escribiremos de esta manera:
x
1
k+1)
=
_
1
_
x
k)
2
_
2
,
x
2
k+1)
=
_
x
k)
1
_
2
2x
1
k)
+ 1,
donde
g
1
(x
1
k)
,x
2
k)
) =
_
1
_
x
k)
2
_
2
,
g
2
(x
1
k)
,x
2
k)
) =
_
x
k)
1
_
2
2x
1
k)
+ 1.
Podemos intuir que la resolucin de sistemas de ecuaciones no lineales es un aplicacin
conjunta de ambos.
Por otro lado, observemos que el esquema anterior es equivalente al Mtodo de Jacobi.
Entonces, una forma de mejorar la convergencia para llegar a la solucin es aplicar el Mtodo
Gauss-Seidel
x
1
k+1)
=
_
1
_
x
k)
2
_
2
,
x
2
k+1)
=
_
x
k+1)
1
_
2
2x
1
k+1)
+ 1,
que aprovecha la solucin de x
1
k+1)
obtenida en la primera ecuacin. Notemos, sin embargo,
que para x
1
existen dos soluciones posibles, por lo tanto, tambin las hay para x
2
. Adems, como
ahora no podemos construir una matriz A como en el caso de los sistemas de ecuaciones lineales,
tampoco podemos hacer un anlisis de la condicin de dicha matriz, por lo que se nos diculta
averiguar si el sistema es convergente o no. Solamente podemos estudiar a las funciones g
1
(x
1
; x
2
)
y g
2
(x
1
; x
2
) segn lo ya visto para ecuaciones no lineales, es decir, adaptar los teoremas vistos
para el caso del Mtodo de las Aproximaciones Sucesivas para una variable.
Si aprovechamos esto, inmediatamente podemos hacer una analoga y pensar, por qu
no aplicar entonces, el mtodo de Newton-Raphson? En realidad, habra que pensar en una
adaptacin. Para ello, apliquemos un desarrollo en serie de Taylor para funciones de dos variables,
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 81 -
3.10. Sistemas de Ecuaciones no lineales Anlisis Numrico
que queda de esta forma:
f
1
( x
1
; x
2
) = f
1
(x
k)
1
; x
k)
2
) +
f
1
(x
k)
1
; x
k)
2
)
x
1
( x
1
x
k)
1
) +
f
1
(x
k)
1
; x
k)
2
)
x
2
( x
2
x
k)
2
) +. . . ,
f
2
( x
1
; x
2
) = f
2
(x
k)
1
; x
k)
2
) +
f
2
(x
k)
1
; x
k)
2
)
x
1
( x
1
x
k)
1
) +
f
2
(x
k)
1
; x
k)
2
)
x
2
( x
2
x
k)
2
) +. . . ,
donde se cumple que:
f
1
( x
1
; x
2
) = 0 ,
f
2
( x
1
; x
2
) = 0.
Si truncamos el desarrollo en los trminos de la primeras derivadas y reordenamos la
expresin en funcin de lo anterior, tenemos que:
f
1
(x
k)
1
; x
k)
2
)
x
1
( x
1
x
k)
1
) +
f
1
(x
k)
1
; x
k)
2
)
x
2
( x
2
x
k)
2
) = f
1
(x
k)
1
; x
k)
2
),
f
2
(x
k)
1
; x
k)
2
)
x
1
( x
1
x
k)
1
) +
f
2
(x
k)
1
; x
k)
2
)
x
2
( x
2
x
k)
2
) = f
2
(x
k)
1
; x
k)
2
),
que ahora s podemos expresar en forma matricial:
_
_
f
1
(x
k
1
;x
k
2
)
x
1
f
1
(x
k
1
;x
k
2
)
x
2
f
2
(x
k
1
;x
k
2
)
x
1
f
2
(x
k
1
;x
k
2
)
x
2
_
_
_
x
1
x
k)
1
x
2
x
k)
2
_
=
_
f
1
(x
k)
1
; x
k)
2
)
f
2
(x
k)
1
; x
k)
2
)
_
.
Si recordamos un poco de Anlisis Matemtico, la primera matriz no es otra cosa que el
Jacobiano de las funciones f
1
(x
1
; x
2
) y f
2
(x
1
; x
2
), lo que nos permite escribir el sistema de una
forma ms sencilla:
J(x
k)
) ( x x
k)
) = F(x
k)
).
Con esta forma de expresarla es fcil obtener nuestra solucin aproximada, pues
x x
k)
= J(x
k)
)
1
F(x
k)
),
x = x
k)
J(x
k)
)
1
F(x
k)
),
que expresado en trminos iterativos queda de esta manera:
x
k+1)
= x
k)
J(x
k)
)
1
F(x
k)
),
y se conoce, como no poda ser de otra manera, como Mtodo de Newton.
Hemos encontrado una forma bastante sencilla de obtener nuestra solucin. Pero de todos
modos, analicemos un poco el mtodo. En primer lugar, podemos ver que para cada caso tenemos
que calcular el jacobiano de las funciones en cada iteracin. eso ya nos diculta un poco el
procedimiento. No es muy distinto al caso del mtodo de Newton-Raphson para una sola variable,
pero en el caso matricial es agregar ms pasos de clculo, pues hay que ingresar cada derivada
parcial y luego calcular su valor para el par x
k)
1
; x
k)
2
.
Pero en segundo lugar, y tal vez ms importante, en cada iteracin debemos invertir la
matriz jacobiana. Vimos cuando analizamos cmo resolver un sistema de ecuaciones lineales que
invertir la matriz no era un procedimiento sencillo ni fcil de llevar a cabo y por esa razn ningn
mtodo estudiado inverta la matriz de coecientes. Busquemos una forma de evitar esto.
Volvamos un poco atrs y analicemos esto:
J(x
k)
) ( x x
k)
) = F(x
k)
).
- Pg. 82 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
Si hacemos
J(x
k)
) (x
k+1)
x
k)
) = F(x
k)
),
esta expresin no es otra cosa que el mtodo de Newton. Denamos un nuevo vector s
k)
de la
siguiente manera:
s
k)
= x
k+1)
x
k)
,
y reemplacemos en la expresin anterior:
J(x
k)
) s
k)
= F(x
k)
).
Ahora lo que tenemos es, . . . un sistema de ecuaciones lineales! Por lo tanto, para hallar
nuestra solucin debemos hacer:
J(x
k)
) s
k)
= F(x
k)
),
x
k+1)
= x
k)
+s
k)
.
Este esquema resulta ser ms sencillo que el anterior, pues ahora no es necesario invertir
la matriz J(x
k)
) en cada iteracin, aunque debemos recalcular para cada paso dicha matriz,
as como el vector F(x
k)
). De todos modos, estamos mucho mejor que al principio, pues ahora
podemos analizar nuestro sistema como si fuera un sistema de ecuaciones lineales y por lo tanto,
aplicar cualquier mtodo de los estudiados. Slo dependemos de las caractersticas propias de la
matriz jacobiana para decidir si aplicamos un mtodo directo o un mtodo iterativo.
Pero el hecho de tener que calcular la matriz jacobiana para cada iteracin no resulta muy
alentador. Tenemos una alternativa, que podemos implementar. Cuando estudiamos el Mtodo
de Newton-Raphson vimos que podamos aproximar la derivada mediante un mtodo discreto que
resultaba en el mtodo de la secante. Si bien el orden de convergencia es menor, la gran ventaja
de este mtodo es no tener que ingresar la derivada de la funcin. Este mismo procedimiento
para el caso de Sistemas de Ecuaciones No Lineales se conoce como Mtodos Quasi-Newton.
Por lo tanto, estimemos las derivadas parciales en forma discreta de la siguiente forma:
f
j
(x
1
; x
2
)
x
1
=
f
j
(x
1
+h
1
; x
2
) f
j
(x
1
; x
2
)
h
1
,
f
j
(x
1
; x
2
)
x
2
=
f
j
(x
1
; x
2
+h
2
) f
j
(x
1
; x
2
)
h
2
.
Como hemos aproximado la matriz jacobiana, y nuestro esquema (algoritmo) es iterativo,
empecemos deniendo que nuestra estimacin inicial sea la siguiente:
x
0)
F(x
0)
); J(x
0)
),
y con la que obtenemos nuestra primera aproximacin iterativa x
1)
. Ahora contamos con dos
soluciones, x
0)
y x
1)
. Como la idea es aproximar el jacobiano para k = 1, necesario para obtener
nuestra siguiente aproximacin, x
2)
, planteemos que
A
1)
(x
1)
x
0)
) = F(x
1)
) F(x
0)
).
Podramos decir que A
1)
es algo parecido a la matriz jacobiana, aunque no existe nada
que pueda denirse como la inversa del vector x
1)
x
0)
. Para relacionar la matriz A
1)
con una
matriz jacobiana, vamos a plantear lo siguiente:
A
1)
z = J(x
0)
) z siempre que (x
1)
x
0)
)
T
z = 0.
Esta condicin surge de considerar que todo vector distinto de cero puede ser expresarse
como la suma de un mltiplo de x
1)
x
0)
y un mltiplo de un vector en el complemento ortogonal
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 83 -
3.10. Sistemas de Ecuaciones no lineales Anlisis Numrico
de x
1)
x
0)
. Para que podamos denir a A
1)
sin ninguna informacin acerca del comportamiento
de F en dicho complemento ortogonal, debemos imponer que (x
1)
x
0)
)
T
z = 0.
De acuerdo con [3], las ecuaciones anteriores determinan unvocamente lo siguiente:
A
1)
= J(x
0)
) +
_
F(x
1)
) F(x
0)
) J(x
0)
) (x
1)
x
0)
)

(x
1)
x
0)
)
T
_
_
x
1)
x
0)
_
_
2
2
.
Como hemos calculado x
1)
, F
_
x
1)
_
y aproximado J(x
1)
) con A
1)
, podemos plantear
la segunda iteracin como:
J(x
1)
) s
1)
= F(x
1)
),
x
2)
= x
1)
+s
1)
.
Pero tambin podemos hacer
x
2)
= x
1)
A
1)
1
F(x
1)
),
lo que parece una total contradiccin pues hemos desarrollado todo el mtodo anterior para no
tener que invertir una matriz.
Nuevamente, la matemtica (ms precisamente el lgebra matricial) viene a ayudarnos.
En su momento hemos denido que s
k)
= x
k+1)
x
k)
, por lo tanto tambin se cumple que
s
k1)
= x
k)
x
k1)
. Tambin denimos que
1
F(x
0)
) = F(x
1)
)F(x
0)
). Por simplicidad, de-
namos y
0)
=
1
F(x
0)
). Si generalizamos, podemos denir y
k1)
=
1
F(x
k1)
). Finalmente,
podemos decir que J(x
0)
) = A
0)
y
Con todo esto podemos generalizar un mtodo para obtener la sucesivas matrices A
k)
.
Si escribimos que
A
1)
= A
0)
+
_
y
0)
A
0)
s
0)

s
0)
T
_
_
s
0)
_
_
2
2
,
entonces tambin podemos escribir
A
k)
= A
k1)
+
_
y
k1)
A
k1)
s
k1)

s
k1)
T
_
_
s
k1)
_
_
2
2
,
y obtenemos nuestras aproximaciones A
k)
en forma iterativa. Eso nos permite obtener A
k)
1
tambin en forma iterativa, pues existe el siguiente algoritmo para calcularla
4
:
A
k)
1
= A
k1)
1
+
_
s
k1)
A
k1)
1
y
k1)

s
k1)
T
A
k1)
1
s
k1)
T
A
k1)
1
y
k1)
,
para A
k)
no singular.
A partir de esto, nuestro algoritmo de solucin resulta ser
x
0)
F(x
0)
) J(x
0)
) = A
0)
x
1)
= x
0)
A
0)
1
F(x
0)
) F(x
1)
)
s
k1)
= x
k)
x
k1)
y
k1)
= F(x
k)
) F(x
k1)
)
A
k)
1
= A
k1)
1
+
_
s
k1)
A
k1)
1
y
k1)

s
k1)
T
A
k1)
1
s
k1)
T
A
k1)
1
y
k1)
x
k+1)
= x
k)
A
k)
1
F(x
k)
).
4
Se trata de la frmula de inversin matricial de Sherman y Morrison.
- Pg. 84 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 3. Ecuaciones no Lineales
Este algoritmo requiere invertir la matriz A
0)
, para luego utilizar solamente la multipli-
cacin de matrices para obtener el resultado. Este mtodo se conoce como Mtodo de Broyden de
primer orden, si bien la convergencia puede tender a ser mayor si se utiliza la J(x
0)
) analtica.
La necesidad de invertir la matriz le quita practicidad al mtodo. Es por eso que en
algunos libros se indica que, dado que el clculo de la inversa de la matriz jacobiana J(x
k)
) es
en realidad una aproximacin numrica de la misma, puede proponerse el mismo algoritmo visto
pero con un cambio: A
0)
= I. De esta forma, no es necesario aplicar ningn mtodo para invertir
A
0)
, al costo de aumentar la cantidad de iteraciones para obtener un mejor resultado.
3.11. Notas nales
Hasta aqu hemos visto seis mtodos iterativos para obtener las races de una ecuacin
del tipo f(x) = 0. Los dos primeros, el de la biseccin y el de la posicin falsa (regula falsi)
son mtodos que aseguran la convergencia pero que son muy lentos. Suelen usarse como una
primera aproximacin cuando no se tiene informacin ms detallada del punto x, de ah que son
conocidos como mtodos de arranque. Sirven para acotar el intervalo en el cual se encuentra la
raz buscada. Los otros cuatro, el de las aproximaciones sucesivas, el Newton-Raphson, el de la
secante y el de Steensen son mucho ms potentes y en el caso de Newton-Raphson y Steensen,
con una rapidez de convergencia cuadrtica.
Tambin hemos visto un mtodo contemporneo al de Newton-Raphson, el mtodo de
Halley, cuyo orden de convergencia es cbico. Si bien asegura una rapidez importante, exige
conocer la segunda derivada de la funcin f(x), adems de la primera, lo que convierte al mtodo
en algo no muy prctico a la hora de implementarlo.
De todos mtodos vistos, los ms usuales para programar son el de las aproximaciones
sucesivas y el de la secante, puesto que son sencillo y no requieren conocer la derivada primera
ni la derivada segunda. Es comn, adems, que cuando no disponemos de un intervalo lo su-
cientemente acotado para trabajar con los mtodos de renamiento, comenzar con el mtodo
de la biseccin, y as, disminuir el costo computacional. Cuando la ecuacin f(x) = 0 tiene
multiplicidad de ceros (ejemplo, la funcin sen(x)), ninguno de estos mtodos puede distinguir
rpidamente esta situacin. Es por eso que existen otros mtodos para resolver este tipo de
problemas (ver [2]).
Tambin nos hemos ocupado de estudiar cmo resolver un sistema de ecuaciones lineales,
analizando varios mtodos para ello. Dado que los sistemas pueden ser de dimensiones mayores
a dos, desarrollar un mtodo similar a la biseccin no es factible (sistemas con n 3 no se
pueden representar grcamente). As, el planteo inicial es una adaptacin del mtodo de las
aproximaciones sucesivas, que es anlogo a plantear del mtodo de Jacobi, mtodo iterativo para
resolver un sistema de ecuaciones lineales. Esto llev a considerar la aplicacin del mtodo de
Gauss-Seidel, para luego pensar en adaptar el mtodo de Newton-Raphson. Esa adaptacin, llev
a transformar el sistema de ecuaciones no lineales en un nuevo sistema lineal, mucho ms sencillo
para resolver.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 85 -
3.11. Notas nales Anlisis Numrico
- Pg. 86 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
Captulo 4
Interpolacin de curvas
4.1. Introduccin
En este captulo nos concentraremos en el estudio de los mtodos de interpolacin de
curvas. Es usual que los ingenieros trabajen con datos extrados de mediciones, relevamientos,
ensayos de laboratorio, etc., los cuales no siempre entregan el valor necesitado para el problema
que se est tratando de resolver. Un ejemplo tpico de interpolacin sencilla utilizado por cualquier
profesional de la ingeniera es la interpolacin lineal en una tabla de datos (por ejemplo, de
estadsticas) para obtener un valor entre dos puntos dados. Este tipo de interpolacin lineal era
muy usado cuando no existan las calculadoras cientcas de bolsillo (ni hablar de computadoras)
y deban usarse las famosas Tablas de logaritmos para obtener logaritmos, senos, cosenos y
cualquier otra funcin trigonomtrica o trascendente.
Un ejemplo de interpolacin muy interesante es la funcin spline del AutoCAD, que
permite dibujar curvas que pasen por puntos determinados en el dibujo, y que no pocos usuarios
no saben usar en forma eciente.
Otro ejemplo de interpolacin ms avanzado es la utilizacin de polinomios interpolantes
en la resolucin de estructuras cuando se utilizan programas de anlisis estructural que aplican
el mtodo de los elementos nitos. All es de fundamental importancia entender los tipos de
polinomios que se pueden usar y los datos necesarios para poder obtener estos polinomios.
Tambin un uso que suele darse a la interpolacin es para obtener qu valor de x hace
y(x) nulo, cuando disponemos de un conjunto de datos en los cuales se tiene que y(x
j
) > 0 para
j = 0; 1; . . . ; i e y(x
k
) < 0 para k = i + 1; i + 2; . . . ; n (o a la inversa). Interpolando entre estos
valores podemos hallar x tal que y( x) = 0. Este tipo de interpolacin se denomina interpolacin
inversa, pues en lugar de interpolar el conjunto [x
i
; y
i
], interpolamos el conjunto [y
i
; x
i
] para
obtener una funcin x(y).
Puesto que hay muchos mtodos y formas de interpolar, nos ocuparemos de los mtodos
clsicos y veremos algunas mejoras que se han desarrollado a estos mtodos. En particular, gracias
al artculo de L.N. Trefethen y J. P. Berrut (vase [18]), analizaremos una mejora al mtodo de
Lagrange bsico, denominada Interpolacin Baricntrica de Lagrange.
4.2. Mtodo de Lagrange
Supongamos que tenemos una lista con datos ordenados de a pares como la de la siguiente
tabla:
Y supongamos que necesitamos conocer el valor de y(x
A
) para un x
A
entre x
1
y x
2
. La
forma sencilla de obtener este valor es gracar estos puntos y trazar un segmento de recta que
una y
1
e y
2
, ubicar x
A
en las abscisas y trazar por l una lnea recta paralela al eje de ordenadas
que corte el segmento ya mencionado. Finalmente, desde este punto, trazamos una lnea recta
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 87 -
4.2. Mtodo de Lagrange Anlisis Numrico
Tabla 4.1: Datos ordenados de a pares
x y
x
0
y
0
x
1
y
1
x
2
y
2
x
3
y
3
paralela al eje de abscisas hasta cortar el eje de ordenadas, con lo cual hemos obtenido el valor
de y(x
A
).
Queda muy evidente que este procedimiento es muy engorroso si se quiere hacerlo en forma
metdica. Sin embargo, es la forma ms sencilla de interpolacin polinomial, la interpolacin
lineal. Efectivamente, si tomamos los dos puntos en cuestin podemos armar una recta mediante
el siguiente sistema:
y
1
= m x
1
+n
y
2
= m x
2
+n
Si restamos y
1
a y
2
obtenemos m:
y
2
y
1
= m(x
2
x
1
) m =
y
2
y
1
x
2
x
1
.
Si ahora reemplazamos m en la primera ecuacin obtenemos n:
y
1
=
y
2
y
1
x
2
x
1
x
1
+n n = y
1

y
2
y
1
x
2
x
1
x
1
.
Finalmente la ecuacin de la recta que pasa por y
1
e y
2
es:
y(x) =
y
2
y
1
x
2
x
1
(x x
1
) +y
1
,
que tambin puede escribirse como
y(x) = y
1
x x
2
x
1
x
2
+y
2
x x
1
x
2
x
1
.
Para hallar y(x
A
) basta con reemplazar x
A
en cualquiera de las expresiones anteriores.
Lo hecho anteriormente es equivalente al procedimiento grco. Pero que pasa si quere-
mos usar ms de dos puntos? Supongamos que necesitamos usar los cuatro puntos de la tabla 4.1
para interpolar un punto cualquiera entre x
0
y x
3
. En ese caso, el polinomio de mayor grado
posible es un polinomio cbico, porque tiene cuatro coecientes, y se puede expresar as:
y(x) = a
0
+a
1
x +a
2
x
2
+a
3
x
3
.
Si reemplazamos los cuatro puntos en esta ecuacin obtenemos el siguiente sistema de ecuaciones
lineales:
y
0
= a
0
+a
1
x
0
+a
2
x
2
0
+a
3
x
3
0
y
1
= a
0
+a
1
x
1
+a
2
x
2
1
+a
3
x
3
1
y
2
= a
0
+a
1
x
2
+a
2
x
2
2
+a
3
x
3
2
y
3
= a
0
+a
1
x
3
+a
2
x
2
3
+a
3
x
3
3
- Pg. 88 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
Basta con resolver este sistema de ecuaciones lineales para obtener los coecientes a
i
.
Analicemos el sistema escribindolo en forma matricial:
_

_
1 x
0
x
2
0
x
3
0
1 x
1
x
2
1
x
3
1
1 x
2
x
2
2
x
3
2
1 x
3
x
2
3
x
3
3
_

_
. .
A
_

_
a
0
a
1
a
2
a
3
_

_
=
_

_
y
0
y
1
y
2
y
3
_

_
Se trata de una matriz especial, que se conoce como matriz de VanderMonde. Tiene la
particularidad de ser mal condicionada, por lo que cualquier mtodo que usemos para resolver
este sistema puede traernos algn problema.
La interpolacin de Lagrange es una forma sencilla y sistemtica de resolver el sistema de
ecuaciones lineales anterior. El polinomio interpolador lo obtenemos siguiendo los pasos descriptos
a continuacin:
1. Calculamos los n + 1 polinomios L
n;i
(x) relacionados cada uno con cada dato x
i
, donde n
es el grado del polinomio e i indica el punto considerado, mediante la expresin:
L
n;i
(x) =
n

j=0
j,=i
(x x
j
)
n

j=0
j,=i
(x
i
x
j
)
=
n

j=0
j,=i
x x
j
x
i
x
j
.
con i = 0; 1; . . . ; n, j = 0; 1; . . . ; n, y x
i
y x
j
reeren a los datos a interpolar.Estos polino-
mios cumplen con la particularidad de que:
L
n;i
(x) =
_
1 si x = x
i
0 si x = x
j
con j ,= i.
2. El polinomio interpolador lo obtenemos mediante la expresin:
P
n
(x) =
n

i=0
y
i
L
n;i
(x).
Por ejemplo, podemos armar una interpolacin lineal mediante los polinomios de Lagran-
ge entre los puntos x
1
y x
2
. Al aplicar el mtodo obtenemos:
L
1;0
=
x x
2
x
1
x
2
L
1;1
=
x x
1
x
2
x
1
P
1
(x) = y
1
L
1;0
(x) +y
2
L
1;1
(x)
P
1
(x) = y
1
x x
2
x
1
x
2
+y
2
x x
1
x
2
x
1
,
que es la ecuacin de la recta que obtuvimos antes.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 89 -
4.2. Mtodo de Lagrange Anlisis Numrico
Para obtener el polinomio de tercer grado tendremos:
L
3;0
(x) =
(x x
1
)(x x
2
)(x x
3
)
(x
0
x
1
)(x
0
x
2
)(x
0
x
3
)
L
3;1
(x) =
(x x
0
)(x x
2
)(x x
3
)
(x
1
x
0
)(x
1
x
2
)(x
1
x
3
)
L
3;2
(x) =
(x x
0
)(x x
1
)(x x
3
)
(x
2
x
0
)(x
2
x
1
)(x
2
x
3
)
L
3;3
(x) =
(x x
0
)(x x
1
)(x x
2
)
(x
3
x
0
)(x
3
x
1
)(x
3
x
2
)
P
3
(x) = y
0
L
3;0
(x) +y
1
L
3;1
(x) +y
2
L
3;3
(x) +y
3
L
3;3
(x)
Como hemos utilizado todos lo puntos de los datos, es evidente que no podemos crear un poli-
nomio de mayor grado que el cbico. Por lo tanto, existe un slo polinomio posible de construir
con todos los datos disponibles. El siguiente teorema dene a este nico polinomio.
Teorema 4.1. Sean x
0
, x
1
, . . ., x
n
, n + 1 nmeros diferentes, y sea f una funcin tal que sus
valores se obtengan a partir de los nmeros dados (f(x
0
); f(x
1
), . . ., f(x
n
)), entonces existe un
nico polinomio P
n
(x) de grado n, que cumple con la propiedad
f(x
k
) = P(x
k
) para cada k = 0; 1; . . . ; n;
y este polinomio est dado por la siguiente expresin
P
n
(x) = f(x
0
)L
n;0
(x) +f(x
1
)L
n;1
(x) +. . . +f(x
n
)L
n;n
(x) =
n

i=0
f(x
i
)L
n;i
(x),
donde
L
n;i
(x) =
n

j=0
j,=i
x x
j
x
i
x
j
,
para i = 0; 1; . . . ; n.
Sin embargo, podemos crear varios polinomios de grados menores a n. As, con los datos
de la tabla 4.1 estamos en condiciones de construir al menos tres polinomios de grado 1 y dos
polinomios de grado 2. (Podemos construir ms polinomios para ambos grados, pero no siempre
son de utilidad prctica.)
Obtenido el polinomio interpolante nos queda un punto por denir: cul es el error que
estamos cometiendo al interpolar mediante un polinomio respecto de la funcin original? Para
ello tenemos el siguiente teorema.
Teorema 4.2. Sean x
0
, x
1
, x
2
,. . . ,x
n
, nmeros distintos en el intervalo [a; b] y sea f C
n+1
[a; b].
Entonces, para cualquier x [a; b] existe un nmero (x) [a; b] para que el se cumple que
f(x) = P
n
(x) +
f
(n+1)
((x))
(n + 1)!
n

i=0
(x x
i
),
donde P
n
(x) es el mximo polinomio interpolante.
Demostracin Si x = x
i
para i = 0; 1; 2; . . . ; n entonces f(x
i
) = P
n
(x
i
) y para cualquier
(x
i
) [a; b] se cumple lo expresado en el teorema. En cambio, si x ,= x
i
para i = 0; 1; 2; . . . ; n,
se puede denir la siguiente funcin g(u) para u [a; b]:
g(u) = f(u) P
n
(u) [f(x) P
n
(x)]
n

i=0
(u x
i
)
(x x
i
)
.
- Pg. 90 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
Como f C
n+1
[a; b], P
n
C

[a; b], y x ,= x
i
para cualquier i, entonces g C
n+1
[a; b]. Si u = x
j
tendremos que
g(x
j
) = f(x
j
) P
n
(x
j
) [f(x) P
n
(x)]
n

i=0
(x
j
x
i
)
(x x
i
)
= 0 [f(x) P
n
(x)]0 = 0.
Tambin tenemos que g(x) = 0, pues
g(x) = f(x) P
n
(x) [f(x) P
n
(x)]
n

i=0
(x x
i
)
(x x
i
)
= f(x) P
n
(x) [f(x) P
n
(x)] = 0,
y en consecuencia, g C
n+1
[a; b] y se anula para x; x
0
; x
1
; . . . ; x
n
, es decir, para n + 2 nmeros
distintos. De acuerdo con el Teorema de Rolle, existe entonces un (a,b) tal que g
n+1
() = 0.
As tendremos que
0 = g
(n+1)
() = f
(n+1)
() P
(n+1)
n
() [f(x) P
n
(x)]
d
n+1
du
n+1
_
n

i=0
(u x
i
)
(x x
i
)
_
u=
.
Como P
n
(u) es un polinomio de grado n, entonces P
(n+1)
n
(u) = 0. A su vez,
n

i=0
(u x
i
)
(x x
i
)
es un
polinomio de grado n + 1, entonces su derivada de orden n + 1 ser
d
n+1
du
n+1
_
n

i=0
(u x
i
)
(x x
i
)
_
=
(n + 1)!
n

i=0
(x x
i
)
.
Si reemplazamos, tendremos que
0 = f
(n+1)
() 0 [f(x) P
n
(x)]
(n + 1)!
n

i=0
(x x
i
)
.
Al despejar f(x) de la ecuacin anterior nos queda
f(x) = P
n
(x) +
f
(n+1)
()
(n + 1)!
n

i=0
(x x
i
).
Desde el punto de vista terico, esta expresin del error es muy importante porque muchas
de las tcnicas de derivacin e integracin numrica se derivan de aplicar la interpolacin por el
mtodo de Lagrange. Sin embargo, para otros casos, no debemos olvidarnos que no conocemos
f(x) (y por lo tanto, tampoco f
(n+1)
(x)), por lo que el error calculado es slo una aproximacin.
Finalmente, podemos ver que el mtodo tiene algunas desventajas:
1. Cada evaluacin del polinomio P
n
(x) requiere O(n
2
) operaciones aritmticas.
2. Agregar un par de datos x
n+1
,f(x
n+1
) requiere rehacer todos lo polinomios L
n,i
(x).
3. Es numricamente inestable.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 91 -
4.3. Mtodo de Newton Anlisis Numrico
4.3. Mtodo de Newton
Una forma alternativa de plantear la construccin del polinomio interpolador es la si-
guiente. Supongamos que queremos usar solamente los primeros tres puntos de nuestra tabla.
Entonces planteemos el siguiente sistema de ecuaciones:
y
0
= a
0
+a
1
x
0
+a
2
x
2
0
y
1
= a
0
+a
1
x
1
+a
2
x
2
1
y
2
= a
0
+a
1
x
2
+a
2
x
2
2
.
Al eliminar a
0
tenemos este nuevo sistema
y
1
y
0
= a
1
(x
1
x
0
) +a
2
(x
2
1
x
2
0
)
y
2
y
1
= a
1
(x
2
x
1
) +a
2
(x
2
2
x
2
1
),
que puede escribirse como
y
1
y
0
x
1
x
0
= a
1
+a
2
(x
1
+x
0
)
y
2
y
1
x
2
x
1
= a
1
+a
2
(x
2
+x
1
).
Si ahora eliminamos a
1
obtenemos el coeciente a
2
que resulta ser
a
2
(x
2
x
0
) =
y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
a
2
=
y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
.
Ahora reemplacemos a
2
en una de las ecuaciones anteriores para obtener a
1
y
1
y
0
x
1
x
0
= a
1
+
y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
(x
1
+x
0
)
a
1
=
y
1
y
0
x
1
x
0

y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
(x
1
+x
0
).
Ahora reemplacemos a
1
y a
2
en la primera ecuacin de todas para obtener a
0
:
y
0
= a
0
+
_
y
1
y
0
x
1
x
0

y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
(x
1
+x
0
)
_
x
0
+
y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
x
2
0
a
0
= y
0

_
y
1
y
0
x
1
x
0

y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
x
1
_
x
0
.
Armemos nalmente el polinomio interpolante reemplazando a
0
, a
1
y a
2
P(x) = y
0

_
y
1
y
0
x
1
x
0

y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
x
1
_
x
0
+
+
_
y
1
y
0
x
1
x
0

y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
(x
1
+x
0
)
_
x +
y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
x
2
= y
0
+
y
1
y
0
x
1
x
0
(x x
0
) +
y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
_
x
2
(x
0
+x
1
)x +x
0
x
1

= y
0
+
y
1
y
0
x
1
x
0
(x x
0
) +
y
2
y
1
x
2
x
1

y
1
y
0
x
1
x
0
x
2
x
0
(x x
0
)(x x
1
).
- Pg. 92 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
Esta forma de armar el polinomio se denomina mtodo de las diferencias divididas de
Newton, y podemos sistematizarla para que sea muy sencillo de realizar. En primer lugar, pode-
mos decir que f(x
i
) = y
i
. Seguidamente vamos a denir que:
f(x
0
; x
1
) =
f(x
1
) f(x
0
)
x
1
x
0
f(x
1
; x
2
) =
f(x
2
) f(x
1
)
x
2
x
1
,
y generalizando
f(x
i
; x
i+1
) =
f(x
i+1
) f(x
i
)
x
i+1
x
i
.
Anlogamente tenemos que:
f(x
0
; x
1
; x
2
) =
f(x
2
)f(x
1
)
x
2
x
1

f(x
1
)f(x
0
)
x
1
x
0
x
2
x
0
= ,
f(x
1
; x
2
) f(x
0
; x
1
)
x
2
x
0
,
y si generalizamos nuevamente tenemos
f(x
i
; x
i+1
; x
i+2
) =
f(x
i+1
; x
i+2
) f(x
i
; x
i+1
)
x
i+2
x
i
.
Finalmente podemos generalizar totalmente las expresiones anteriores a la siguiente ex-
presin:
f(x
k
; x
k+1
; . . . ; x
n1
; x
n
) =
f(x
k+1
; x
k+2
; . . . ; x
n
) f(x
k
; x
k+1
; . . . ; x
n1
)
x
n
x
k
.
Si utilizamos esta notacin para el polinomio que hallamos ms arriba nos queda:
P(x) = f(x
0
) +f(x
0
; x
1
) (x x
0
) +f(x
0
; x
1
; x
2
) (x x
0
) (x x
1
).
Esta forma nos permite agregar un punto ms y aumentar el grado del polinomio en
forma sencilla. Efectivamente, si queremos agregar x
3
, solamente debemos agregar al polinomio
anterior el trmino f(x
0
; x
1
; x
2
; x
3
)(x x
0
)(x x
1
)(x x
2
), con lo cual nos queda
P(x) = f(x
0
) +f(x
0
; x
1
)(x x
0
) +f(x
0
; x
1
; x
2
)(x x
0
)(x x
1
) +
+f(x
0
; x
1
; x
2
; x
3
)(x x
0
)(x x
1
)(x x
2
).
Esta forma de armar los polinomios facilita notablemente el aumentar la cantidad de
puntos para obtener un polinomio interpolante, pues permite usar el polinomio anterior. En la
tabla siguiente se puede ver un esquema de cmo operar.
Observemos que podemos armar dos polinomios a partir del mtodo de Newton. Uno es
el que obtuvimos antes, por el denominado mtodo de la diferencias divididas progresivas. El
otro podemos obtenerlo partiendo de x
3
, que resulta ser
P(x) = f(x
3
) +f(x
2
; x
3
)(x x
3
) +f(x
1
; x
2
; x
3
)(x x
3
)(x x
2
) +
+f(x
0
; x
1
; x
2
; x
3
)(x x
3
)(x x
2
)(x x
1
),
que se denomina mtodo de las diferencias divididas regresivas.
El mtodo de Newton, en sus dos variantes, es muy usado cuando se trabaja con datos
que pueden ser modicados (aumentando la cantidad de puntos disponibles para la interpolacin)
y, en consecuencia, aplicar el mtodo de Lagrange se vuelve muy engorroso. Otra ventaja es que
para evaluar los polinomios P
n
(x) requerimos n operaciones aritmticas, algo bastante menor al
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 93 -
4.4. Interpolacin baricntrica de Lagrange Anlisis Numrico
Tabla 4.2: Mtodo de Newton
x f (x) f (x
i
; x
i+1
) f (x
i
; x
i+1
; x
i+2
) f (x
i
; x
i+1
; x
i+2
; x
i+3
)
x
0
f(x
0
)
f(x
0
; x
1
)
x
1
f(x
1
) f(x
0
; x
1
; x
2
)
f(x
1
; x
2
) f(x
0
; x
1
; x
2
; x
3
)
x
2
f(x
2
) f(x
1
; x
2
; x
3
)
f(x
2
; x
3
)
x
3
f(x
3
)
O(n
2
) que requiere el mtodo de Lagrange
1
. Sin embargo, el mtodo exige que los datos deban
estar ordenados, segn x
i
, en forma ascendente (o descendente) para poder implementarlo. Si
agregamos algn dato intermedio, la ventaja anterior se pierde porque la tabla 4.2 debe rehacerse,
perdiendo practicidad.
Para mejorar esto existe una variante del mtodo de Lagrange que nos permite interpolar
de manera sencilla y al que resulta muy fcil agregarle puntos en cualquier orden.
4.4. Interpolacin baricntrica de Lagrange
Supongamos que denimos un polinomio genrico L(x) tal que
L(x) = (x x
0
)(x x
1
) . . . (x x
n
).
Denamos adems los pesos baricntricos como
w
i
=
n

k=0
k,=i
1
x
i
x
k
, para todo i = 0; 1; . . . ; n.
Entonces podemos escribir cualquier polinomio de Lagrange como
L
n;i
= L(x)
w
i
x x
i
,
y, en consecuencia, el polinomio interpolante ser
P
n
(x) =
n

i=0
f(x
i
)
L(x)w
i
x x
i
= L(x)
n

i=0
f(x
i
)
w
i
x x
i
,
pues L(x) es constante para todos los trminos de la sumatoria.
Esto es una gran ventaja en dos sentidos. Primero, para evaluar P
n
(x) se necesitan slo
O(n) operaciones, lo cual hace mucho ms rpido el procedimiento. Y segundo, si agregamos el
par de datos x
n+1
, f(x
n+1
), slo debemos hacer lo siguiente:
Dividir cada w
i
por x
i
x
n+1
.
Calcular un nuevo w
i+1
.
1
De todos modos, se requieren O(n
2
) operaciones para obtener los coecientes f(x
k
; x
k+1
; . . . ; x
n
).
- Pg. 94 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
En ambos casos el costo computacional es de n + 1 operaciones. Es decir, podemos
actualizar el polinomio P
n
(x) con slo O(n) operaciones! A esta variante del mtodo de Lagrange
suele llamrsela mtodo mejorado de Lagrange y tiene una ventaja adicional respecto al mtodo
de Newton que rara vez se menciona: los coecientes w
i
no dependen de los datos f(x
n+1
). Esto
permite que podamos interpolar varias funciones con el mismo polinomio. Y mantiene, adems,
la ventaja de no necesitar ordenar los datos, como s requiere el mtodo de Newton.
Pero todava no hemos terminado. Supongamos ahora que interpolamos la constante 1
con el polinomio hallado. En ese caso tenemos
1 =
n

i=0
1 L
n,i
(x) = L(x)
n

i=0
w
i
x x
i
,
pues hemos visto que L
n,i
(x) = 1 cuando x = x
i
.
Si dividimos P
n
(x) por la expresin anterior, o sea, que la dividimos por 1, nos queda:
P
n
(x) =
L(x)
n

i=0
f(x
i
)
w
i
x x
i
L(x)
n

i=0
w
i
x x
i
,
y simplicando L(x), obtenemos que
P
n
(x) =
n

i=0
f(x
i
)
w
i
x x
i
n

i=0
w
i
x x
i
,
que se denomina interpolacin baricntrica de Lagrange. Al igual que en el caso del mtodo
mejorado, slo se necesitan O(n) operaciones para actualizar el polinomio si agregamos un par
de datos x
n+1
, f(x
n+1
) adicionales.
De todos modos, si la interpolacin la realizamos con puntos uniformemente distanciados
o distribuidos unos de otros, la mala condicin del problema no se puede evitar (pues ningn
algoritmo la mejora). A pesar de esto, en general, la interpolacin baricntrica de Lagrange es
ms estable numricamente que el mtodo de Lagrange original y que el mtodo de Newton,
segn el anlisis hecho por N.J. Higham en [10].
4.5. Fenmeno de Runge
Supongamos que debemos interpolar los datos que se muestran en la tabla 4.3. Al aplicar
el mtodo de Lagrange tradicional para obtener un polinomio interpolante, el resultado es un
polinomio de grado 10 (n = 10). Las guras 4.1, 4.2, 4.3 y 4.4 muestran el proceso y los resultados
de interpolar un conjunto de datos distribuidos uniformemente.
Como podemos ver, en la gura 4.1, los puntos del conjunto de datos estn distribuidos
en forma uniforme, tal como vemos en la tabla 4.3. En este caso particular, conocemos la funcin
y corresponde a la curva representada en la gura 4.2.
En la gura 4.3 est representada la curva obtenida por aplicacin de la interpolacin
por el mtodo de Lagrange tradicional. Podemos ver que ambas curvas dieren notablemente en
los extremos, no as en la parte central (gura 4.4). Evidentemente, los valores interpolados en
ambos extremos sern de poca utilidad en caso de ser necesarios, pues estn muy alejados de los
valores reales.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 95 -
4.5. Fenmeno de Runge Anlisis Numrico
Tabla 4.3: Conjunto de datos a interpolar
i x
i
y
i
0 0,000 0,500
1 1,000 0,933
2 2,000 0,067
3 3,000 0,500
4 4,000 0,933
5 5,000 0,067
6 6,000 0,500
7 7,000 0,933
8 8,000 0,067
9 9,000 0,500
10 10,000 0,933
Figura 4.1: Conjunto de puntos distribuidos uniformemente.
Figura 4.2: Curva obtenida con la funcin.
- Pg. 96 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
Figura 4.3: Curva obtenida por interpolacin por Lagrange.
Figura 4.4: Comparacin de ambas curvas.
Esta comparacin entre una curva conocida y una obtenida por interpolacin polinomial,
nos ayuda a entender que usar polinomios de grado alto para interpolar un conjunto de datos
distribuidos en forma uniforme, de los cuales no se conoce la funcin que los relaciona (no se
conoce y = f(x)), puede no ser una metodologa aceptable si los puntos que luego debemos
obtener se encuentran cerca de los extremos.
Pero para evitar el fenmeno descripto, debemos cambiar la forma de resolver nuestro
problema. Veamos otras formas de interpolar mediante polinomios.
4.6. Interpolacin de Hermite
Muchas veces disponemos de ms datos para interpolar. Por ejemplo, supongamos que
para una partcula que se desplaza conocemos los siguientes datos: el instante t
i
, la coordenada
de la trayectoria y
i
y la velocidad v
i
, para i = 0; 1; . . . ; n. En este caso adems de los valores de
f(t
i
) conocemos tambin los de f
t
(t
i
) pues v
i
= f
t
(t
i
). Por lo tanto nuestra tabla original podra
ser reescrita como (tabla 4.4):
Ahora contamos con ms informacin para construir nuestro polinomio interpolante. En
efecto, de disponer de slo cuatro valores asociados a nuestros puntos (en este caso, el instante
t
i
), pasamos a tener ocho valores. Si queremos utilizar todos los datos disponibles, en lugar de
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 97 -
4.6. Interpolacin de Hermite Anlisis Numrico
Tabla 4.4: Datos incluyendo la primera derivada
t y v
t
0
y
0
v
0
t
1
y
1
v
1
t
2
y
2
v
2
t
3
y
3
v
3
interpolar con una curva de tercer grado, podemos usar ahora una curva de grado 7, pues este
polinomio tiene ocho coecientes, a saber:
y(t) = a
0
+a
1
t +a
2
t
2
+a
3
t
3
+a
4
t
4
+a
5
t
5
+a
6
t
6
+a
7
t
7
,
del cual podemos hallar la primera derivada, que resulta ser
v(t) = y
t
(t) = a
1
+ 2a
2
t + 3a
3
t
2
+ 4a
4
t
3
+ 5a
5
t
4
+ 6a
6
t
5
+ 7a
7
t
6
.
Al igual que al principio, podemos reemplazar cada uno de los valores en las dos funciones,
con lo cual obtendremos un sistema de ocho ecuaciones con ocho incgnitas, sistema que puede
resolverse sin problemas. Cuando conocemos el valor de la funcin en el punto como as tambin
su derivada, la interpolacin se denomina Interpolacin de Hermite. El siguiente teorema dene
la interpolacin de Hermite.
Teorema 4.3. Sea f C
1
[a; b] y sean x
0
; x
1
; . . . ; x
n
[a; b] distintos, el polinomio nico de
menor grado que concuerda con f y f
t
en x
0
; x
1
; . . . ; x
n
es el polinomio de Hermite de grado a
lo sumo 2n + 1, que est dado por la siguiente expresin:
H
2n+1
(x) =
n

i=0
f(x
i
)H
n;i
(x) +
n

i=0
f
t
(x
i
)

H
n;i
(x),
donde
H
n;i
(x) = [1 2(x x
i
)L
t
n;i
(x
i
)]L
2
n;i
(x),
y

H
n;i
(x) = (x x
i
)L
2
n;i
(x),
donde L
n;i
(x) es el isimo polinomio de Lagrange de grado n. Si adems f C
2n+2
[a; b],
entonces se cumple que
f(x) = H
2n+1
(x) +
(x x
0
)
2
. . . (x x
n
)
2
(2n + 2)!
f
(2n+2)
(),
con tal que a < < b.
Demostracin Primero, recordemos que
L
n;i
(x) =
_
1 si x = x
i
0 si x = x
j
conj ,= i.
,
por lo tanto, tenemos que:
H
n,i
(x
j
) = 0

H
n,i
(x
j
) = 0,
- Pg. 98 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
para j ,= i, en tanto que
H
n,i
(x
i
) = [1 2(x
i
x
i
)L
t
n;i
(x
i
)]L
2
n;i
(x
i
) = [1 2(0)L
t
n;i
(x
i
)] 1
2
= 1,
y

H
n,i
(x
i
) = (x
i
x
i
)L
2
n;i
(x
i
) = (x
i
x
i
) 1
2
= 0.
Entonces, nos queda que:
H
2n+1
(x
i
) =
n

i=0
f(x
i
)H
n;i
(x
i
) +
n

i=0
f
t
(x
i
)

H
n;i
(x
i
) = f(x
i
) +
n

i=0
f
t
(x
i
) 0 = f(x
i
),
para i = 0; 1; 2; . . . ; x
n
, es decir H
2n+1
(x) = f(x) en los puntos dados.
Demostremos ahora que H
t
2n+1
(x) = f
t
(x). Como L
n;i
(x) es un factor de H
t
n;i
(x), entonces
se cumple que H
t
n;i
(x
j
) = 0 cuando j ,= i. Si j = i, tenemos que
H
t
n;j
(x
j
) = 2 L
2
n;j
(x
j
) + [1 + 2(x
j
x
j
)L
t
n;j
(x
j
)]2L
n;j
(x
j
)L
t
n;j
(x
j
)
= 2 L
2
n;j
(x
j
) + 2 L
2
n;j
(x
j
) = 0,
o sea, H
t
n;i
(x
j
) = 0 para todas la j e i.
Por otro lado, observemos que

H
t
n;i
(x
j
) = L
2
n;i
(x
j
) + (x
j
x
i
)2L
n;i
(x
j
)L
t
n;i
(x
j
)
= L
n;i
(x
j
)[L
n;i
(x
j
) + 2(x
j
x
i
)L
t
n;i
(x
j
)],
y en consecuencia, cuando j ,= i tendremos que:

H
t
n;i
(x
j
) = L
2
n;i
(x
j
) + (x
j
x
i
)2L
n;i
(x
j
)L
t
n;i
(x
j
) = 0 + 0 = 0,
pues L
n;i
(x
j
) = 0, y cuando j = i

H
t
n;j
(x
j
) = L
2
n;j
(x
j
) + (x
j
x
j
)2L
n;j
(x
j
)L
t
n;j
(x
j
) = 1
2
+ 0 = 1.
Si combinamos ambos casos tenemos
H
t
2n+1
(x
j
) =
n

i=0
f(x
j
)H
t
n;i
(x
j
) +
n

i=0
f
t
(x
j
)

H
t
n;i
(x
j
)
=
n

i=0
f(x
j
) 0 +f
t
(x
j
) 1 = 0 +f
t
(x
j
) = f
t
(x
j
),
entonces H
2n+1
(x) = f(x) y H
t
2n+1
(x) = f
t
(x) para x
0
; x
1
; . . . ; x
n
.
En realidad, la interpolacin de Hermite es un caso particular de los denominados poli-
nomios osculantes, cuando m
i
= 1. Veamos la siguiente denicin.
Denicin 4.1. Dados x
0
; x
1
; . . . ; x
n
, todos distintos y los enteros no negativos m
0
; m
1
; . . . ; m
n
,
se denomina polinomio osculante que aproxima una funcin f C
m
[a,b] donde se cumple que
m = max m
0
; m
1
; . . . ; m
n
y x
i
[a; b] para cada i = 0; 1; . . . ; n, al polinomio de menor grado que
concuerda con la funcin f y con todas sus derivadas de orden menor o igual m
i
en x
i
para cada
i = 0; 1; . . . ; n. El mximo grado de este polinomio es
M =
n

i=0
m
i
+ n,
pues el nmero de condiciones que debe cumplir es
n

i=0
(m
i
+ 1) =
n

i=0
m
i
+ (n + 1),
y un polinomio de grado M tiene M + 1 coecientes.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 99 -
4.6. Interpolacin de Hermite Anlisis Numrico
Esto quiere decir que adems de las derivadas primeras podemos tener las derivadas se-
gundas, terceras, etc., para armar el polinomio interpolante. Con esos datos (inclusive puede
ocurrir que contemos con datos parciales de las derivadas), el procedimiento visto para la in-
terpolacin de Hermite se puede ampliar para obtener curvas que tengan segundas o terceras
derivadas, si bien esto no resulta tan sencillo de implementar. (Para ms detalles, ver [2].)
Volvamos al mtodo de Hermite. Como est basado en los polinomios de Lagrange, si
se agregan datos, el mtodo tiene las mismas desventajas que el de Lagrange, porque deben
repetirse todos los clculos para obtener el nuevo polinomio interpolante.
Pero tal como vimos para ese mtodo, existe tambin una forma alternativa de armar el
polinomio buscado aplicando el mtodo de Newton, que nos permite desarrollarlo con la siguiente
frmula:
P
n
(x) = f(x
0
) +
n

k
f(x
0
; x
1
; . . . ; x
k
)
k1

j=0
(x x
j
).
Dado que conocemos los valores de la derivada primera, debemos redenir nuestra su-
cesin de datos. Por ejemplo, si tomamos los datos de la tabla 4.4, nuestra nueva sucesin de
puntos es t
0
; t
0
; t
1
; t
1
; t
2
; t
2
; t
3
; t
3
, es decir, denimos una nueva sucesin z
0
; z
1
; . . . ; z
2n+1
tal que
z
2i
= z
2i+1
= t
i
,
con i = 0; 1; 2; . . . ; n. Como con esta nueva sucesin no podemos denir f(z
2i
; z
2i+1
) de la forma
vista anteriormente, resulta conveniente denirla aprovechando que conocemos f
t
(z
2i
) = f
t
(x
i
),
con lo que aprovechamos los datos conocidos. En consecuencia, podemos construir la tabla 4.5
con los coecientes para armar el polinomio segn el mtodo de Newton.
Tabla 4.5: Interpolacin Hermite aplicando el Mtodo de Newton
z f (z) f (z
i
; z
i+1
) f (z
i
; z
i+1
; z
i+2
) f (z
i
; z
i+1
; z
i+2
; z
i+3
)
z
0
= x
0
f(z
0
) = f(x
0
)
f(z
0
; z
1
) = f
t
(x
0
)
z
1
= x
0
f(z
1
) = f(x
0
) f(z
0
; z
1
; z
2
)
f(z
1
; z
2
) f(z
0
; z
1
; z
2
; z
3
)
z
2
= x
1
f(z
2
) = f(x
1
) f(z
1
; z
2
; z
3
)
f(z
2
; z
3
) = f
t
(x
1
) f(z
1
; z
2
; z
3
; z
4
)
z
3
= x
1
f(z
3
) = f(x
1
) f(z
2
; z
3
; z
4
)
f(z
3
; z
4
) f(z
2
; z
3
; z
4
; z
5
)
z
4
= x
2
f(z
4
) = f(x
2
) f(z
3
; z
4
; z
5
)
f(z
4
; z
5
) = f
t
(x
2
) f(z
3
; z
4
; z
5
; z
6
)
z
5
= x
2
f(z
5
) = f(x
2
) f(z
4
; z
5
; z
6
)
f(z
5
; z
6
) f(z
4
; z
5
; z
6
; z
7
)
z
6
= x
3
f(z
6
) = f(x
3
) f(z
5
; z
6
; z
7
)
f(z
6
; z
7
) = f
t
(x
3
)
z
7
= x
3
f(z
7
) = f(x
3
)
Construida nuestra tabla, el polinomio de Hermite se arma de la siguiente manera:
H
2n+1
(x) = f(z
0
) +
2n+1

k=1
_
_
f(z
0
; z
1
; . . . ; z
k
)
k1

j=0
(x z
j
)
_
_
.
- Pg. 100 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
De manera similar a lo visto para el mtodo de Lagrange, el error de interpolar por
Hermite es funcin de los puntos usados para dicha interpolacin, que se expresa as:
E(x) =
f
(2n+2)
()
(2n + 2)!
n

i=0
(x x
i
)
2
.
Si aplicamos esto a nuestros datos originales de la tabla 4.4, obtendramos un polinomio de
grado 7. Pero este polinomio puede sufrir los mismos problemas que ya vimos para los polinomios
de Lagrange, es decir, oscilaciones no deseadas en los extremos del intervalo de interpolacin, si
la distribucin de los puntos es uniforme.
Es por eso que el mtodo de Hermite no suele usarse de esta forma, sino como parte de
una interpolacin por segmentos. As, para cada intervalo entre puntos tenemos cuatro datos
que podemos utilizar para interpolar valores entre x
i
; x
i+1
. Veamos como aplicarlo a nuestra
tabla 4.4.
Para armar la curva que interpola entre t
0
y t
1
, contamos con los valores de y
0
, y
1
, v
0
y v
1
, con lo cual podemos armar un polinomio de Hermite de tercer grado que cumpla con las
condiciones H
3
(t
0
) = f(t
0
) = y
0
; H
3
(t
1
) = f(t
1
) = y
1
, H
t
3
(t
0
) = f
t
(t
0
) = v
0
y H
t
3
(t
1
) = f
t
(t
1
) =
v
1
. Lo mismo podemos hacer entre t
1
y t
2
, y para el intervalo t
2
y t
3
. Tendremos, entonces,
cuatro polinomios de Hermite para todo el intervalo, a saber, H
1;0
(t), H
1;1
(t),

H
1;0
(t) y

H
1;1
(t).
Los polinomios resultantes son:
H
1;0
(t) =
_
1 2(t t
0
)
1
t
0
t
1
_ _
t t
1
t
0
t
1
_
2
H
1;1
(t) =
_
1 2(t t
1
)
1
t
1
t
0
_ _
t t
0
t
1
t
0
_
2

H
1;0
(t) = (t t
0
)
_
t t
1
t
0
t
1
_
2

H
1;1
(t) = (t t
1
)
_
t t
0
t
1
t
0
_
2
Como adems se cumple que H
3;i
(t
i+1
) = H
3;i+1
(t
i+1
) y H
t
3;i
(t
i+1
) = H
t
3;i+1
(t
i+1
), tene-
mos continuidad para la curva y su primera derivada. Podemos armar una curva con segmentos
de curvas de tercer grado, que puede representar a la funcin y a la primera derivada, sin tener
que preocuparnos por los efectos negativos de las oscilaciones no deseadas en los extremos. Este
mtodo se usa en el mtodo de los elementos nitos para armar las funciones de forma en los
elementos de viga.
Tambin podemos armar este polinomio aplicando el mtodo de Newton adaptado, a
partir de la siguiente tabla:
Tabla 4.6: Interpolacin Hermite segmentada aplicando el Mtodo de Newton
z f (z) f (z
i
; z
i+1
) f (z
i
; z
i+1
; z
i+2
) f (z
i
; z
i+1
; z
i+2
; z
i+3
)
z
0
= t
i
f(z
0
) = f(t
i
)
f(z
0
; z
1
) = f
t
(t
i
)
z
1
= t
i
f(z
1
) = f(t
i
) f(z
0
; z
1
; z
2
)
f(z
1
; z
2
) f(z
0
; z
1
; z
2
; z
3
)
z
2
= t
i+1
f(z
2
) = f(t
i+1
) f(z
1
; z
2
; z
3
)
f(z
2
; z
3
) = f
t
(t
i+1
)
z
3
= t
i+1
f(z
3
) = f(t
i+1
)
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 101 -
4.7. Interpolacin por splines Anlisis Numrico
A partir de la tabla 4.6, el polinomio de Hermite segmentado lo armamos de la siguiente
manera:
H
3
(t) = f(z
0
) +f(z
0
; z
1
)(t z
0
) +f(z
0
; z
1
; z
2
)(t z
0
)(t z
1
) +
+f(z
0
; z
1
; z
2
; z
3
)(t z
0
)(t z
1
)(t z
2
),
que podemos escribir as:
H
3
(t) = f(t
i
) +f
t
(t
i
)(t t
i
) +f(t
i
; t
i
; t
i+1
)(t t
i
)
2
+f(t
i
; t
i
; t
i+1
; t
i+1
)(t t
i
)
2
(t t
i+1
),
donde:
f(t
i
; t
i
; t
i+1
) =
f(t
i
; t
i+1
) f
t
(t
i
)
t
i+1
t
i
,
f(t
i
; t
i+1
; t
i+1
) =
f
t
(t
i+1
) f(t
i
; t
i+1
)
t
i+1
t
i
, y
f(t
i
; t
i
; t
i+1
; t
i+1
) =
f(t
i
; t
i+1
; t
i+1
) f(t
i
; t
i
; t
i+1
)
t
i+1
t
i
.
Al igual que para el caso de la interpolacin completa, el error cometido en una interpo-
lacin segmentada es proporcional a la derivas 2n+2 de la funcin. En este caso, puesto que solo
armamos una curva entre i e i + 1, el error en cada tramo est dado por la siguiente expresin:
E(h) =
f
(iv)
()
384
max(h
4
i
),
con [x
0
; x
n
] y h
i
= x
i+1
x
i
.
De todos modos, como para poder armar este tipo de curvas debemos conocer los valores
de las derivadas en cada punto, algo que no siempre es posible, usar estos segmentos de curvas con
polinomios de Hermite no siempre resultan ser una solucin aplicable. Buscaremos otra manera
de obtener polinomios interpolantes que eviten el fenmeno de Runge.
4.7. Interpolacin por splines
Supongamos que en lugar de proponer interpolar los datos de la tabla 4.1 mediante un
solo polinomio que pase por todos los puntos, lo hagamos mediante segmentos de curvas, en
este caso con polinomios de tercer grado, denominados trazadores cbicos, similares al caso de la
interpolacin por segmentos de polinomios de Hermite. Denamos las curvas como
S
i
(x) = a
i
+b
i
(x x
i
) +c
i
(x x
i
)
2
+d
i
(x x
i
)
3
,
con i = 0; 1; . . . ; n 1. Como en el caso anterior, observemos que tenemos cuatro constantes
para cada polinomio, por lo tanto, debemos agregar condiciones para poder armar nuestra curva
interpolante. Como nuevamente no disponemos de ms datos (es decir, no conocemos los valores
de las derivadas en los puntos), vamos a imponer que las curvas cumplan con estas condiciones:
1. S
i
(x
i
) = f(x
i
) para cada i = 0; 1; . . . ; n;
2. S
i+1
(x
i+1
) = S
i
(x
i+1
) para cada i = 0; 1; . . . ; n 2;
3. S
t
i+1
(x
i+1
) = S
t
i
(x
i+1
) para cada i = 0; 1; . . . ; n 2;
4. S
tt
i+1
(x
i+1
) = S
tt
i
(x
i+1
) para cada i = 0; 1; . . . ; n 2;
5. Alguna de las siguiente condiciones de borde:
a) S
tt
0
(x
0
) = S
tt
n1
(x
n
) = S
tt
n
(x
n
) = 0 (frontera libre);
- Pg. 102 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
b) S
t
0
(x
0
) = f
t
(x
0
) = y S
t
n1
(x
n
) = S
t
n
(x
n
) = f
t
(x
n
) = (frontera sujeta).
La primera condicin nos asegura que las curvas pasen por los datos, en tanto que las tres
condiciones siguientes aseguran la continuidad del conjunto de curvas tanto para las funciones
S
i
(x) como para sus derivadas primera y segunda.
Para obtener cada polinomio, empecemos por plantear las condiciones denidas arriba.
En primer lugar, como S
i
(x
i
) = f(x
i
), tendremos que:
S
i
(x
i
) = a
i
= f(x
i
).
Al aplicar la segunda condicin tenemos que:
a
i+1
= S
i+1
(x
i+1
) = S
i
(x
i+1
) = a
i
+b
i
(x
i+1
x
i
) +c
i
(x
i+1
x
i
)
2
+d
i
(x
i+1
x
i
)
3
,
para cada i = 0; 1; . . . ; n 2. Para simplicar la notacin denamos que h
i
= (x
i+1
x
i
), y que
a
n
= f(x
n
). Entonces nos queda que
a
i+1
= a
i
+b
i
h
i
+c
i
h
2
i
+d
i
h
3
i
,
es vlida para cada i = 0; 1; . . . ; n 1.
En forma anloga tenemos que
S
t
i
(x
i
) = b
i
,
por lo tanto, tambin se cumple que
b
i+1
= b
i
+ 2c
i
h
i
+ 3d
i
h
2
i
,
es vlida para cada i = 0; 1; . . . ; n 1.
Finalmente, tenemos que
S
tt
i
(x
i
) = 2c
i
.
Como se cumple que c
n
= S
tt
n
(x
n
)/2, nos queda que:
c
i+1
= c
i
+ 3d
i
h
i
,
una vez ms, para cada i = 0; 1; . . . ; n1. Si despejamos d
i
y reemplazamos en las dos expresiones
anteriores, nos queda:
a
i+1
= a
i
+b
i
h
i
+
h
2
i
3
(2c
i
+c
i+1
),
b
i+1
= b
i
+h
i
(c
i
+c
i+1
),
para cada i = 0; 1; . . . ; n 1.
En la primera ecuacin podemos despejar b
i
, que resulta ser
b
i
=
a
i+1
a
i
h
i

h
i
3
(2c
i
+c
i+1
).
Si usamos la segunda para obtener b
i
en vez de b
i+1
y utilizamos la expresin que hallamos recin
para obtener b
i1
, nos queda
a
i+1
a
i
h
i

h
i
3
(2c
i
+c
i+1
) =
a
i
a
i1
h
i1

h
i1
3
(2c
i1
+c
i
) +h
i1
(c
i1
+c
i
)
h
i1
c
i1
+ 2(h
i1
+h
i
)c
i
+h
i
c
i+1
=
3
h
i
(a
i+1
a
i
)
3
h
i1
(a
i
a
i1
),
para cada i = 1; 2; . . . ; n 1.
Ahora nos falta determinar si con este esquema podemos obtener un resultado nico para
los valores de c
i
. Para ello tenemos el siguiente teorema:
Teorema 4.4. Sea f en a = x
0
< x
1
< . . . < x
n
= b, entonces f tendr un interpolante nico
de frontera libre o natural en los nodos x
0
; x
1
; . . . ; x
n
.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 103 -
4.7. Interpolacin por splines Anlisis Numrico
Demostracin Si la curva es de frontera libre o natural, entonces se cumple que S
tt
0
(a) = 0 y
S
tt
n1
(b) = S
tt
n
(b) = 0, por lo tanto tendremos que
c
n
=
S
tt
n
(x
n
)
2
= 0;
y que
0 = S
tt
0
(x
0
) = 2c
0
+ 6d
0
(x
0
x
0
) c
0
= 0.
En consecuencia, nos queda un sistema de ecuaciones de la forma Ax = B con
A =
_

_
1 0 0 . . . . . . 0
h
0
2(h
0
+h
1
) h
1
.
.
.
.
.
.
.
.
.
0 h
1
2(h
1
+h
2
) h
2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
h
n2
2(h
n2
+h
n1
) h
n1
0 . . . . . . 0 0 1
_

_
,
B =
_

_
0
3
h
1
(a
2
a
1
)
3
h
0
(a
1
a
0
)
.
.
.
.
.
.
3
h
n1
(a
n
a
n1
)
3
h
n2
(a
n1
a
n2
)
0
_

_
y x =
_

_
c
0
c
1
.
.
.
.
.
.
c
n
_

_
.
Este sistema de ecuaciones lineales tiene solucin nica, lo que nos asegura que existe un
slo conjunto de valores c
i
y, en consecuencia, un solo conjunto de curvas S
i
(x). Una vez obtenidos
los valores de los c
i
, podemos hallar los restantes coeciente, b
i
y d
i
con las expresiones ya vistas:
d
i
=
c
i+1
c
i
3h
i
,
b
i
=
a
i+1
a
i
h
i

h
i
3
(2c
i
+c
i+1
),
con lo que obtenemos las S
i
(x) curvas o polinomios que interpolan los datos.
Para el caso de las splines con frontera sujeta tenemos el siguiente teorema.
Teorema 4.5. Sea f en a = x
0
< x
1
< . . . < x
n
= b, y diferenciable en a y en b, entonces f
tendr un interpolante nico de frontera sujeta en los nodos x
0
; x
1
; . . . ; x
n
.
Demostracin Puesto que conocemos f
t
(a) = f
t
(x
0
), tenemos que
b
0
= f
t
(a) = f
t
(x
0
) =
a
1
a
0
h
0

h
0
3
(2c
0
+c
1
),
y nos queda que
2h
0
c
0
+h
0
c
1
= 3
_
a
1
a
0
h
0
f
t
(a)
_
.
Anlogamente, tenemos que
f
t
(b) = f
t
(x
n
) = b
n
= b
n1
+h
n1
(c
n1
+c
n
),
- Pg. 104 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
que podemos escribir como
f
t
(b) = =
a
n
a
n1
h
n1

h
n1
3
(2c
n1
+c
n
) +h
n1
(c
n1
+c
n
)
=
a
n
a
n1
h
n1
+
h
n1
3
(c
n1
+ 2c
n
),
y que nos deja la siguiente ecuacin:
h
n1
c
n1
2h
n1
c
n
= 3
_
f
t
(b)
a
n
a
n1
h
n1
_
.
En consecuencia, nos queda el siguiente sistema de ecuaciones
A =
_

_
2h
0
h
0
0 . . . . . . 0
h
0
2(h
0
+h
1
) h
1
.
.
.
.
.
.
.
.
.
0 h
1
2(h
1
+h
2
) h
2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
h
n2
2(h
n2
+h
n1
) h
n1
0 . . . . . . 0 h
n1
2h
n1
_

_
,
B =
_

_
3
_
a
1
a
0
h
0
f
t
(a)
_
3
h
1
(a
2
a
1
)
3
h
0
(a
1
a
0
)
.
.
.
.
.
.
3
h
n1
(a
n
a
n1
)
3
h
n2
(a
n1
a
n2
)
3
_
f
t
(b)
a
n
a
n1
h
n1
_
_

_
, y x =
_

_
c
0
c
1
.
.
.
.
.
.
c
n
_

_
.
Como en el caso anterior, el sistema de ecuaciones lineales tiene solucin nica, es decir,
existe un nico vector c
0
, c
1
, . . ., c
n
, y consecuentemente, un slo conjunto de curvas S
i
(x).
En cuanto al error que cometemos al interpolar una curva utilizando splines, para el
caso con frontera libre podemos expresarlo como
max
axb
[f(x) S(x)[
5
384
M max
0in1
[h
i
[
4
,
donde S(x) es el conjunto de las S
i
(x) curvas, M = f
iv
() con [x
0
; x
n
] y h
i
= x
i+1
x
i
. Sin
embargo, cuando se utiliza este caso, el orden del error en los extremos es proporcional a [h
i
[
2
y
no a [h
i
[
4
, por lo que no siempre es bueno aplicar el caso de frontera libre o natural.
Finalmente, existe un tercer caso cuando no conocemos las derivadas extremas (f
t
(a) y
f
t
(b)), denominado aproximacin sin un nodo
2
, en el cual se considera que d
0
= d
1
y d
n2
=
d
n1
, que es lo mismo que considerar que S
0
(x) = S
1
(x) y S
n2
(x) = S
n1
(x), lo cual tambin
introduce un error en los extremos del orden de [h
i
[
2
.
Para este ltimo caso tenemos lo siguiente:
c
1
= c
0
+ 3d
0
h
0
d
0
=
c
1
c
0
3h
0
c
2
= c
1
+ 3d
1
h
1
d
1
=
c
2
c
1
3h
1
.
2
Algunos textos denominan a esta aproximacin como condicin no un nodo, por la expresin en ingls not a
knot approximation.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 105 -
4.8. Interpolacin por el mtodo de Akima Anlisis Numrico
Como d
0
= d
1
, entonces
c
1
c
0
3h
0
=
c
2
c
1
3h
1
h
1
c
1
h
1
c
0
= h
0
c
2
h
0
c
1
,
lo que nos deja la siguiente expresin para la primera la del sistema:
h
1
c
0
(h
0
+h
1
)c
1
+h
0
c
2
= 0.
Anlogamente, para d
n2
y d
n1
tenemos algo similar:
c
n1
= c
n2
+ 3d
n2
h
n2
d
n2
=
c
n1
c
n2
3h
n2
c
n
= c
n1
+ 3d
n1
h
n1
d
n1
=
c
n
c
n1
3h
n1
,
con las cuales obtenemos la ltima la del sistema:
h
n1
c
n2
(h
n2
+h
n1
)c
n1
+h
n2
c
n
= 0.
As, el sistema queda como:
A =
_

_
h
1
(h
0
+h
1
) h
0
. . . . . . 0
h
0
2(h
0
+h
1
) h
1
.
.
.
.
.
.
.
.
.
0 h
1
2(h
1
+h
2
) h
2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
h
n2
2(h
n2
+h
n1
) h
n1
0 . . . . . . h
n1
(h
n2
+h
n1
) h
n2
_

_
,
B =
_

_
0
3
h
1
(a
2
a
1
)
3
h
0
(a
1
a
0
)
.
.
.
.
.
.
3
h
n1
(a
n
a
n1
)
3
h
n2
(a
n1
a
n2
)
0
_

_
, y x =
_

_
c
0
c
1
.
.
.
.
.
.
c
n
_

_
.
Esta variante de la interpolacin por spline es poco usada porque tiene muchas ms
indeniciones que la natural.
4.8. Interpolacin por el mtodo de Akima
A nes de los aos 60 el uso de las computadoras empez a generalizarse en muchos
mbitos dedicados a la investigacin y desarrollo. En ese contexto, an algunas tareas seguan
hacindose de manera manual. Una de estas tareas era la construccin de curvas que pasaran
por un conjunto de datos, es decir, una forma de interpolar datos en forma manual sin ayuda
de la computadora. Un investigador, H. Akima, prob interpolar conjuntos de curvas utilizando
los mtodos tradicionales de la poca, entre ellos, la interpolacin polinomial tradicional y los
trazadores cbicos. Sin embargo, los resultados no siempre le satisfacan, pues no coincidan
con las curvas que los ingenieros o cientcos dibujaban a mano. Esas diferencias generalmente
consistan en oscilaciones entre puntos sucesivos que intuitivamente se vean claramente fuera de
lugar.
3
3
El programa SMath Studio incluye el mtodo de Akima como uno de los tres mtodos de interpolacin que
dispone. Los otros dos son la interpolacin lineal segmentada y las splines.
- Pg. 106 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
Segn Akima, cuando alguien dibujaba una curva a mano, el forma surga de considerar
solamente la informacin local y no el conjunto completo de datos. As, tanto la interpolacin
polinmica tradicional como los trazadores cbicos usaban el conjunto completo de datos para
obtener los coecientes del o los polinomios. Esto haca que las curvas no representaran correc-
tamente a los datos.
Se concentr en investigar un mtodo que se pareciera a los trazadores cbicos pero
que solamente usara datos locales. Encontr que un tipo de trazadores cbicos podra ser la
interpolacin por Hermite segmentada. Pero su idea era un mtodo para interpolar conjuntos de
dato que no incluyeran la primera derivada. Para salvar esta falta, Akima propuso aproximar
esas derivadas. Una forma usual de hacer esto era mediante una aproximacin de la pendiente de
cualquier punto mediante dos puntos adicionales, uno a cada lado del punto en anlisis. Como los
resultados no eran muy satisfactorios, Akima propuso aproximar la primera derivada de cualquier
punto (salvo los extremos) con ayuda de cuatro puntos, dos a cada lado.
Figura 4.5: Interpretacin geomtrica de la aproximacin de la pendiente.
Esta aproximacin la hizo mediante un razonamiento geomtrico (como puede verse en
la gura 4.5 adaptada de [1], donde el segmento CD es la pendiente aproximada del punto i),
lo que le permiti generalizar esta aproximacin para cualquier caso y para cualquier sistema
de coordenadas. Como aproximacin de las derivadas primeras de todos los puntos intermedios
propuso la siguiente expresin:
t
i
=
[m
i+1
m
i
[ m
i1
+[m
i1
m
i2
[ m
i
[m
i+1
m
i
[ +[m
i1
m
i2
[
,
donde m
i2
, m
i1
, m
i
y m
i+1
son las pendientes de los segmentos que unen los puntos (x
i2
; y
i2
)
y (x
i1
; y
i1
), (x
i1
; y
i1
) y (x
i
; y
i
), (x
i
; y
i
) y (x
i+1
; y
i+1
), y (x
i+1
; y
i+1
) y (x
i+2
; y
i+2
), respecti-
vamente. Con esta denicin de la pendiente del punto (x
i
; y
i
) obtenemos los siguientes casos:
1. Cuando m
i2
= m
i1
y m
i
,= m
i+1
, entonces t
i
= m
i1
;
2. Cuando m
i2
,= m
i1
y m
i
= m
i+1
, entonces t
i
= m
i
;
3. Cuando m
i1
= m
i
, entonces t
i
= m
i1
= m
i
.
Existe un caso que no puede ser resuelto en forma directa: aquel en el que m
i2
= m
i1
,=
m
i
= m
i+1
, pues la pendiente queda indeterminada. Esto fue resuelto por Akima proponiendo
que
t
i
=
m
i1
+m
i
2
,
al que consider como cuarto caso.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 107 -
4.9. Notas nales Anlisis Numrico
4.9. Notas nales
Hemos visto diferentes mtodos para interpolar valores a partir de datos discretos usando
funciones polinmicas completas, como son los mtodos de Lagrange, de Newton y de Hermite, y
tambin la interpolacin mediante segmentos de curvas, como es el caso del mtodo de Hermite
fragmentado y el de spline cbico. Dentro de este ltimo conjunto est tambin el mtodo de
interpolacin lineal por segmentos, cuyas funciones se obtienen utilizando el mtodo de Lagrange
tradicional entre dos puntos. As, los dos polinomios de Lagrange necesarios son:
L
1;0
(x) =
x x
1
x
0
x
1
L
1;1
(x) =
x x
0
x
1
x
0
,
donde x
0
es el punto inicial y x
1
el punto nal de la interpolacin. Con estos dos polinomios, el
polinomio completo de Lagrange resulta ser:
P
1
(x) = f(x
0
)L
1;0
(x) +f(x
1
)L
1;1
(x)
= f(x
0
)
x x
1
x
0
x
1
+f(x
1
)
x x
0
x
1
x
0
= f(x
1
)
x x
0
x
1
x
0
f(x
0
)
x x
1
x
1
x
0
=
f(x
1
) f(x
0
)
x
1
x
0
x
f(x
1
)x
0
f(x
0
)x
1
x
1
x
0
.
Adems de los mtodos vistos, existen otros ms complejos que mejoran nuestra apro-
ximacin de valores intermedios, pero que suelen ser tambin ms difciles de implementar y
con mayor costo computacional. En particular, para ciertas curvas que no pueden ser denidas
mediante polinomios contamos con curvas paramtricas denominadas curvas de Bezier. (Para
ms datos, vase [2].)
Respecto a la interpolacin baricntrica de Lagrange, Berrut y Trefethen (vase [18])
sealan en su artculo, que resulta curioso que el mtodo no gure en ningn libro de texto de
anlisis numrico como alternativa al mtodo tradicional, teniendo en cuenta la simplicidad del
mismo para ser implementado en una computadora.
Figura 4.6: Cuadro de dilogo del OpenOce Calc para Lneas Suaves.
Por ltimo, resulta interesante observar que las hojas de clculo y el diseo asistido por
computadora (CAD por sus siglas en ingls) hace un uso intensivo de la interpolacin fragmentada
(o segmentada), con las spline, y las curvas paramtricas (curvas de Bezier). Las primeras son
usadas en programas como el AutoCAD
R _
, en tanto que las segundas, en programas como el
Corel Draw
R _
, LibreOce Draw o similares. Por tal motivo, resulta til conocer los fundamentos
matemticos de cada una de ellas.
- Pg. 108 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 4. Interpolacin de curvas
Figura 4.7: Cuadro de dilogo del MS Excel 2003 para Lnea suavizada.
Un caso interesante en el uso de interpolacin con segmentos de curvas es la versin
3.5 del programa LibreOce Calc
4
, la planilla de clculo del paquete de distribucin gratuita
LibreOce
R _
. Para gracar curvas suavizadas aplica la interpolacin mediante trazadores cbicos
o splines, si se quiere que las curvas pasen por los puntos, o mediante B-splines si lo que se
quiere es que que las curvas tengan una forma determinada. Ambas opciones estn disponibles
en el cuadro de control de la curva, como se puede ver en la gura 4.6. No ocurre lo mismo
en el MS Excel
R _
(gura 4.7), al menos hasta la versin 2007, pues la gracacin de la curva
suavizada es hecha mediante un algoritmo no especicado, ni es posible ajustar la densidad de
puntos adicionales para dicha representacin grca.
4
Este paquete de ocina gratuito se puede bajar en: http://es.libreoce.org/.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 109 -
4.9. Notas nales Anlisis Numrico
- Pg. 110 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 5. Mejor aproximacin y ajuste de funciones
Captulo 5
Mejor aproximacin y ajuste de
funciones
5.1. Mejor aproximacin
5.1.1. Introduccin
Uno de los problemas que suele tener que resolver un ingeniero es el de armar una fun-
cin que ajuste datos obtenidos experimentalmente. Hemos visto en el captulo anterior como
interpolar valores mediante el armado de polinomios que pasan por los puntos dados. Adems, si
la cantidad de puntos es muy grande, interpolar mediante polinomios crea curvas de grado muy
alto, que se vuelven muy inestables en los extremos. Vimos que de todos modos esto se poda
resolver en parte mediante interpolaciones fragmentadas o segmentos de curvas (polinomios de
Hermite cuando conocemos la primera derivada en cada punto dato o spline cuando no la
conocemos). Pero en todos los casos, una de las condiciones fundamentales es que los puntos x
i
sean distintos. Qu hacemos cuando esto no es as, cuando la cantidad de puntos exceden la ca-
pacidad de armar polinomios interpolantes o cuando los puntos que usaremos son aproximaciones
de los valores reales?
Supongamos que tenemos una serie de datos empricos obtenidos en laboratorio, tales
que el conjunto de datos no cumple estrictamente que los x
i
sean distintos, con lo cual para un
mismo x
i
tenemos varios valores de f(x
i
). (En realidad suele suceder que aunque los x
i
sean
distintos, varios x
j
sean sucientemente cercanos como para considerarlos iguales.) Adems que
la cantidad de datos disponibles hagan imposible que armemos un polinomio de grado menor a
4 o 5 que pase por todos los puntos y as evitar el mal condicionamiento del problema. Lo que
necesitamos, entonces, es una curva que ajuste lo mejor posible los datos que disponemos, o sea,
que el error entre los puntos y esa funcin de ajuste sea el menor posible, sin que la curva pase
por los puntos dados.
Para ello tenemos una forma de estimar este error. Supongamos que efectivamente se
cumpla que los x
i
sean distintos, que x
0
< x
1
< . . . < x
n
para los cuales conocemos f(x
0
), f(x
1
),
. . . , f(x
n
). Asumamos que la aproximacin la haremos con una funcin que deniremos de la
siguiente manera:
g(x) = c
0

0
(x) +c
1

1
(x) +. . . +c
m

m
(x) =
m

i=0
c
i

i
(x),
donde m < n, es decir, tenemos menos funciones disponibles que puntos, y las
i
(x) son lineal-
mente independientes.
Dado que hemos impuesto que la funcin elegida no debe pasar por lo puntos tomados
como dato, buscaremos que el error entre los datos (f(x
i
))y los g(x
i
) de la funcin de ajuste sea
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 111 -
5.1. Mejor aproximacin Anlisis Numrico
el menor posible, plantearemos que
r
i
= f(x
i
) g(x
i
), para 0 i n,
es decir, que el residuo, sea mnimo. Como se trata de un vector, una forma de analizar este caso
es mediante las normas.
5.1.2. Error y normas
Para obtener una funcin que minimice este residuo, analizaremos que opciones dispone-
mos, a saber:
1. Que la norma uno del residuo sea mnima, es decir, |r|
1
sea mnima;
2. Que la norma innita del residuo sea mnima, es decir, |r|

sea mnima;
3. Que la norma dos (eucldea) del residuo sea mnima, es decir, |r|
2
sea mnima.
La primera norma es buena si uno quiere eliminar aquellos valores considerados como des-
viaciones, por ejemplo, mediciones mal hechas o valores que fcilmente puede inferirse errneos.
Consiste en minimizar la siguiente expresin:
|r|
1
=
n

i=0
[r
i
[ =
n

i=0
[f(x
i
) y(x
i
)[
La segunda, es un caso de mnimo-mximo en la cual se tiene que:
mn
c
0
;c
1
;...;c
m
max
0jn
[f(x
i
) y(x
i
)[ .
Esto es til cuando los valores mximos del error deben ser considerados al momento de la
vericacin.
Ambos casos resultan muy tiles cuando se trabaja con datos discretos, en los que tiene
suma importancia vericar la exactitud de esos datos, o eventualmente, encontrar errores de
medicin, de transcripcin, etc.
Los dos casos recin analizados, |r|
1
, y |r|

llevan a la programacin lineal, materia


que est fuera del alcance de nuestro curso, y que resultan mucho ms complejos de analizar que
la ltima opcin indicada.
sta consiste en minimizar la expresin:
|r|
2
=

_
n

i=0
[r
i
[
2
=

_
n

i=0
[f(x
i
) y(x
i
)]
2
,
o, lo que es lo mismo,
|r|
2
2
=
n

i=0
[r
i
[
2
=
n

i=0
[f(x
i
) y(x
i
)]
2
.
Como nuestra funcin la podemos expresar como:
y(x) =
m

j=0
c
j

j
x,
tendremos que la expresin a minimizar es:
E (c
0
; c
1
; . . . ; c
m
) =
n

i=0
_
_
f(x
i
)
m

j=0
c
j

j
(x
i
)
_
_
2
,
de ah el nombre de mtodo de los cuadrados mnimos, pues lo que se minimiza es el cuadrado
del residuo.
- Pg. 112 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 5. Mejor aproximacin y ajuste de funciones
5.1.3. Mtodo de los cuadrados mnimos
Para obtener que la funcin E(c
0
; c
1
; . . . ; c
m
) sea mnima, debemos aplicar un concepto
conocido: hacer que
E
c
j
= 0, puesto que E es funcin de los coecientes c
j
. En consecuencia,
tendremos que:
E
c
j
=

c
j
_
_
n

i=0
_
f(x
i
)
m

k=0
c
k

k
(x
i
)
_
2
_
_
= 0
=
n

i=0

c
j
_
f(x
i
)
m

k=0
c
k

k
(x
i
)
_
2
= 0.
que si desarrollamos nos queda:
E
c
j
= 2
n

i=0
_
f(x
i
)
m

k=0
c
k

k
(x
i
)
_
(
j
(x
i
)) = 0 para j = 0; 1; . . . ; m.
Al distribuir el producto nos queda:
n

i=0
_
f(x
i
)
j
(x
i
)
m

k=0
c
k

k
(x
i
)
j
(x
i
)
_
= 0
n

i=0
f(x
i
)
j
(x
i
)
n

i=0
m

k=0
c
k

k
(x
i
)
j
(x
i
) = 0
n

i=0
m

k=0
c
k

k
(x
i
)
j
(x
i
) =
n

i=0
f(x
i
)
j
(x
i
),
para j = 0; 1; . . . ; m. Como podemos intercambiar las sumatorias, nalmente nos queda:
m

k=0
c
k
n

i=0

k
(x
i
)
j
(x
i
) =
n

i=0
f(x
i
)
j
(x
i
),
para j = 0; 1; . . . ; m.
Avancemos un poco ms. Al desarrollar la sumatoria en i del trmino de la izquierda, nos
queda:
n

i=0

k
(x
i
)
j
(x
i
) =
k
(x
0
)
j
(x
0
) +
k
(x
1
)
j
(x
1
) +. . . +
k
(x
n
)
j
(x
n
).
Lo mismo podemos hacer con la sumatoria del trmino de la derecha, con lo que tenemos
n

i=0
f(x
i
)
j
(x
i
) = f(x
0
)
j
(x
0
) +f(x
1
)
j
(x
1
) +. . . +f(x
n
)
j
(x
n
).
Para facilitar la notacin, deniremos lo siguiente:
n

i=0

k
(x
i
)
j
(x
i
) = (
k
;
j
)
n

i=0
f(x
i
)
j
(x
i
) = (f;
j
).
Entonces, la expresin que nos queda es
m

k=0
c
k
(
k
;
j
) = (f;
j
),
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 113 -
5.1. Mejor aproximacin Anlisis Numrico
para j = 0; 1; . . . ; m. Ahora desarrollaremos la sumatoria en k, con lo cual obtenemos lo siguiente:
c
0
(
0
;
j
) +c
1
(
1
;
j
) +. . . +c
m
(
m
;
j
) = (f;
j
).
Como j = 0; 1; . . . ; m, entonces podemos armar m+ 1 ecuaciones, lo que nalmente nos deja:
c
0
(
0
;
0
) +c
1
(
1
;
0
) +. . . +c
m
(
m
;
0
) = (f;
0
)
c
0
(
0
;
1
) +c
1
(
1
;
1
) +. . . +c
m
(
m
;
1
) = (f;
1
)
.
.
.
.
.
.
.
.
.
.
.
.
c
0
(
0
;
m
) +c
1
(
1
;
m
) +. . . +c
m
(
m
;
m
) = (f;
m
),
que podemos escribir tambin en forma matricial como
_

_
(
0
;
0
) (
1
;
0
) . . . (
m
;
0
)
(
0
;
1
) (
1
;
1
) . . . (
m
;
1
)
.
.
.
.
.
.
.
.
.
.
.
.
(
0
;
m
) (
1
;
m
) . . . (
m
;
m
)
_

_
_

_
c
0
c
1
.
.
.
c
m
_

_
=
_

_
(f;
0
)
(f;
1
)
.
.
.
(f;
m
)
_

_
.
Esta matriz resulta ser simtrica, pues (
i
;
j
) = (
j
;
i
), y denida positiva. El proble-
ma se reduce a resolver un sistema ecuaciones lineales cuyas incgnitas son los coecientes c
k
.
Obtenidos estos coecientes, los reemplazamos en la funcin que hemos denido, que ser la que
aproxime nuestros puntos.
Existe otra forma de plantear el problema, esta vez en forma matricial desde el principio.
Supongamos que representamos nuestros puntos con la funcin elegida. Entonces nos queda:
f(x
0
) =
m

k=0
c
k

k
(x
0
) = c
0

0
(x
0
) +c
1

1
(x
0
) +. . . +c
m

m
(x
0
)
f(x
1
) =
m

k=0
c
k

k
(x
1
) = c
0

0
(x
1
) +c
1

1
(x
1
) +. . . +c
m

m
(x
1
)
.
.
.
f(x
n
) =
m

k=0
c
k

k
(x
n
) = c
0

0
(x
n
) +c
1

1
(x
n
) +. . . +c
m

m
(x
n
)
Si escribimos esto en forma matricial tenemos
_

_
f(x
0
)
f(x
1
)
.
.
.
f(x
n
)
_

_
=
_

0
(x
0
)
1
(x
0
) . . .
m
(x
0
)

0
(x
1
)
1
(x
1
) . . .
m
(x
1
)
.
.
.

0
(x
n
)
1
(x
n
) . . .
m
(x
n
)
_

_
_

_
c
0
c
1
.
.
.
c
m
_

_
,
que resulta ser un sistema de m incgnitas con n ecuaciones, donde m < n, en el cual no existe
una nica solucin. Si hacemos
f =
_

_
f(x
0
)
f(x
1
)
.
.
.
f(x
n
)
_

_
; =
_

0
(x
0
)
1
(x
0
) . . .
m
(x
0
)

0
(x
1
)
1
(x
1
) . . .
m
(x
1
)
.
.
.

0
(x
n
)
1
(x
n
) . . .
m
(x
n
)
_

_
y c =
_

_
c
0
c
1
.
.
.
c
m
_

_
,
podemos decir que nos queda una ecuacin del tipo f = c. Como lo que buscamos es aproximar
una funcin, denamos el residuo como r = f c. Al igual que en el desarrollo anterior, vamos
a obtener nuestra nueva funcin haciendo que |r|
2
2
sea mnimo. En consecuencia, tenemos
|r|
2
2
= |f c|
2
2
.
- Pg. 114 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 5. Mejor aproximacin y ajuste de funciones
Recordemos que |r|
2
2
= r
T
r, entonces tendremos que
r
T
r = (f c)
T
(f c) .
De nuevo, para obtener que el residuo sea mnimo, anulemos la primera derivada, es decir,
hagamos

_
r
T
r
_
c
j
=

c
j
_
(f c)
T
(f c)
_
= 0.
Al derivar nos queda

T
(f c) (f c)
T
= 0,
que desarrollada se transforma en

T
f
T
c +f
T
c
T

T
= 0.
Como
T
f = f
T
y c
T

T
=
T
c, la ecuacin anterior nos queda como

T
f
T
c +
T
f
T
c = 0
2(
T
f
T
c) = 0

T
f
T
c = 0

T
c =
T
f,
donde
T
es una matriz simtrica denida positiva, y tiene la forma
_

_
(
0
;
0
) (
1
;
0
) . . . (
m
;
0
)
(
0
;
1
) (
1
;
1
) . . . (
m
;
1
)
.
.
.
.
.
.
.
.
.
.
.
.
(
0
;
m
) (
1
;
m
) . . . (
m
;
m
)
_

_
;
y
T
f tiene la forma
_

_
(f;
0
)
(f;
1
)
.
.
.
(f;
m
)
_

_
.
Si hacemos A =
T
, x = c y B =
T
f, volvemos a tener nuestro sistema de
ecuaciones lineales en la forma A x = B. De nuevo, el mtodo de los cuadrados mnimos no es
otra cosa que la resolucin de un sistema de ecuaciones lineales para obtener los coecientes c
k
de nuestra funcin de ajuste, algo a lo que habamos llegado mediante la deduccin anterior.
Este mtodo suele usarse para obtener la recta de regresin. Para obtenerla, basta que
observemos que
y(x) =
m

i=0
c
i

i
(x) = c
0
+c
1
x,
es la recta que ajusta nuestros datos, con lo cual
0
= 1 y
1
= x. El siguiente paso es armar la
matriz A. Sabemos que
(
k
;
j
) =
n

i=0

k
(x
i
)
j
(x
i
) y (f;
j
) =
n

i=0
f(x
i
)
j
(x
i
),
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 115 -
5.1. Mejor aproximacin Anlisis Numrico
entonces podemos escribir las componentes de A y B como
(
0
;
0
) =
n

i=0
1 1 = n + 1
(
1
;
0
) =
n

i=0
x
i
1 =
n

i=0
x
i
(
0
;
1
) = (
1
;
0
) =
n

i=0
x
i
(
1
;
1
) =
n

i=0
(x
i
x
i
) =
n

i=0
(x
i
)
2
(f;
0
) =
n

i=0
(f(x
i
) 1) =
n

i=0
f(x
i
)
(f;
1
) =
n

i=0
(f(x
i
) x
i
),
y nuestro sistema quedar de la siguiente manera:
_

_
n + 1
n

i=0
x
i
n

i=0
x
i
n

i=0
(x
i
)
2
_

_
_
c
0
c
1
_
=
_

_
n

i=0
f(x
i
)
n

i=0
(f(x
i
) x
i
)
_

_
.
Despejando c
0
y c
1
obtenemos:
c
0
=
n

i=0
(x
i
)
2
n

i=0
f(x
i
)
n

i=0
(f(x
i
) x
i
)
n

i=0
x
i
(n + 1)
n

i=0
(x
i
)
2

_
n

i=0
x
i
_
2
c
1
=
(n + 1)
n

i=0
(f(x
i
) x
i
)
n

i=0
x
i
n

i=0
f(x
i
)
(n + 1)
n

i=0
(x
i
)
2

i=0
x
i
Existen algunas variantes para este tipo de regresiones, que son:
ln(y) = ln(c
0
) +c
1
ln(x) (y = c
0
x
c
1
)
ln(y) = ln(c
0
) +c
1
x (y = c
0
e
c
1
x
)
y = c
0
+c
1
ln(x),
que permiten ajustar valores segn distintas curvas. Sin embargo, las primeras expresiones no
son ajustes por cuadrados mnimos en un sentido estricto. Lo correcto sera proponer una funcin
del tipo

i
c
i

i
(x) en lugar de transformar los datos. (Para ms detalles, vase [2].)
Si ampliamos este esquema a una funcin polinmica de grado mayor o igual a 2, tendre-
mos que
y(x) =
m

k=0
c
k

k
(x) =
m

k=0
c
k
x
k
= c
0
+c
1
x +c
2
x
2
+. . . +c
m
x
m
.
- Pg. 116 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 5. Mejor aproximacin y ajuste de funciones
Al armar el sistema de ecuaciones nos quedar
_

_
n + 1
n

i=0
x
i
. . .
n

i=0
x
m1
i
n

i=0
x
m
i
n

i=0
x
i
n

i=0
x
2
i
. . .
n

i=0
x
m
i
n

i=0
x
m+1
i
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
n

i=0
x
m1
i
n

i=0
x
m
i
. . .
n

i=0
x
2(m1)
i
n

i=0
x
2m1
i
n

i=0
x
m
i
n

i=0
x
m+1
i
. . .
n

i=0
x
2m1
i
n

i=0
x
2m
i
_

_
_

_
c
0
c
1
.
.
.
c
m1
c
m
_

_
=
_

_
n

i=0
f(x
i
)
n

i=0
(f(x
i
) x
i
)
.
.
.
n

i=0
(f(x
i
) x
m1
i
)
n

i=0
(f(x
i
) x
m
i
)
_

_
.
La matriz de coecientes es similar a una matriz de Vandemonde, matriz que obtuvimos
para interpolar una serie de puntos, de ah que cualquier ajuste de curvas hecho con polinomios
resulta ser un problema mal condicionado. Por supuesto, la mala condicin de la matriz se hace
cada vez ms evidente a medida que m sea ms grande. Es por eso que no se recomienda trabajar
con polinomios de grado mayor a 4 o 5, para evitar que la mala condicin de la matriz sea un
problema. An as, trabajar con un polinomio de grado 5 conlleva trabajar con coecientes que
incluyen x
10
, lo que resulta casi equivalente a interpolar con polinomios de grado 10. Por esto,
conviene que recordemos que el ajuste polinomial, al igual que la interpolacin polinomial son
problemas con tendencia a ser mal condicionados.
5.2. Ajuste de funciones
5.2.1. Introduccin
En el punto anterior hemos visto un mtodo para ajustar curvas a partir de datos num-
ricos (discretos), con el objetivo de obtener valores de la funcin f(x) para valores de x distintos
a los datos en el intervalo dado. E
Ahora bien, existen situaciones en las cuales an conociendo la funcin f(x), resulta con-
veniente efectuar algn tipo de aproximacin. Un ejemplo tpico de ello es el caso de las funciones
trigonomtricas (por ejemplo, cos(x)), para la cual es necesario realizar alguna aproximacin para
calcular sus valores. La ms comn es la hecha mediante las series de Taylor. Para estas funciones
puede ser muy til aplicar el desarrollo en series, pero no suele ser el caso general, puesto que
las series de Taylor son vlidas slo en el entorno de un punto, lo que le quita generalidad.
Y en qu casos necesitaramos nosotros contar con una aproximacin de una funcin
conocida? Supongamos que tenemos la siguiente funcin:
f(x) =
e
x
cos(x)
ln(x) arctan(x)
,
en un intervalo [a,b]. Supongamos adems, que nuestro problema exige que integremos esa funcin
f(x) en el intervalo dado. Podemos ver que la situacin ya no es tan fcil como parece. Si bien
disponemos de la funcin, hallar la primitiva puede ser todo un desafo, e incluso, imposible.
Pero de alguna manera debemos salvar el escollo.
Que tal si en vez de hacer una integral analtica nos orientamos hacia una solucin
numrica? La idea no es tan descabellada pues lo que nosotros necesitamos generalmente es el
resultado numrico y no la primitiva de la misma. Hagamos uso entonces de nuestras herramientas
numricas aprendidas anteriormente y, si es necesario, adecuemos nuestras expresiones al caso
analizado.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 117 -
5.2. Ajuste de funciones Anlisis Numrico
5.2.2. Aproximacin por mnimos cuadrados
Recordemos qu signica reducir al mnimo el error cuadrtico entre la funcin y el
polinomio de aproximacin. Supongamos por un momento que conocemos tanto la funcin f(x)
como el polinomio de aproximacin P(x), en el intervalo [a; b]. Podemos gracar nuestra funcin
y nuestro polinomio de manera que nos queden las curvas que se ven la gura 5.1.
Figura 5.1: Error cuadrtico
Si denimos que:
E(a
k
) =
_
b
a
_
f(x)
n

k=0
a
k
x
k
_
2
dx = |r(a
k
)|
2
2
,
entonces podemos ver que que el rea bajo la curva r(a
k
)
2
es el valor de nuestra integral. Por lo
tanto, para que nuestro error cuadrtico sea mnimo, deberemos buscar que la curva r(a
k
)
2
sea
los ms parecida al eje de abscisas. (Esta denicin es similar a la vista para ajuste de curvas.)
Para ello, vamos a derivar la funcin E(a
k
) respecto de los coecientes a
k
para obtener
los valores, de dichos coecientes, que hagan mnimo el error cuadrtico, tal como hicimos para
el caso de un ajuste discreto. Entonces tendremos:
E (a
0
; a
1
; . . . ,a
n
)
a
j
= 0

a
j
_
_
_
_
b
a
_
f(x)
n

k=0
a
k
x
k
_
2
dx
_
_
_
= 0.
Al derivar nos queda:
2
_
b
a
_
f(x)
n

k=0
a
k
x
k
_
x
j
dx = 0,
y como el 2 no incide, nos queda:
_
b
a
_
f(x)
n

k=0
a
k
x
k
_
x
j
dx = 0.
Si distribuimos el producto dentro de la integral, nos queda:
n

k=0
a
k
_
b
a
x
k+j
dx =
_
b
a
x
j
f(x)dx para j = 0; 1; . . . ; n.
- Pg. 118 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 5. Mejor aproximacin y ajuste de funciones
Qu es lo hemos obtenido? Nuevamente, como en la aproximacin de puntos discretos,
un sistema de ecuaciones lineales de dimensin n+1n+1. Sin embargo, no todo es tan sencillo.
Analicemos un poco ms en detalle la integral que afecta a los coecientes a
k
. Tenemos que:
_
b
a
x
k+j
dx =
x
k+j+1
k +j + 1

b
a

_
b
a
x
k+j
dx =
b
k+j+1
a
k+j+1
k +j + 1
Si denimos que a = 0 y b = 1, entonces la integral denida resulta en el coeciente:
1
k +j + 1
La matriz que se genera a partir del coeciente anterior es conocida como matriz de
Hilbert, que es una matriz mal condicionada. Como en el caso anterior de ajuste discreto, al
tener una matriz mal condicionada, el sistema es muy sensible a los cambios en los datos, o
modicaciones de la matriz de coecientes, es decir, es muy sensible a los errores inherentes.
Un segundo problema, en este caso operativo, es que si por algn motivo se desea agregar
un trmino ms al polinomio, hay que recalcular el sistema (agregar una columna y una la), lo
que signica mucho trabajo adicional. Y nada asegura que los nuevos resultados estn exentos
de errores. De todos modos, contamos con mtodo muy potente para ajustar funciones pero con
inconvenientes operativos en el planteo numrico. Podemos buscar la forma de mejorarlo. Veamos
como.
Cul sera la mejor matriz de coecientes para resolver un sistema de ecuaciones lineales?
Evidentemente, aquella que independice cada incgnita de las otras. O sea, que la matriz de
coecientes sea una matriz diagonal. Supongamos modicar levemente la expresin del polinomio
de aproximacin por la siguiente:
P(x) =
n

k=0
a
k

k
(x),
En principio, no hemos hecho sino un cambio de notacin, llamando a x
k
como
k
(x).
Veamos qu ventajas nos trae esto. Por lo pronto, ahora disponemos de ms posibilidades porque
el mtodo no cambia si proponemos una suma de funciones en vez de un polinomio como funcin
de aproximacin, tal como vimos para ajuste de curvas. Entonces nos queda:
n

k=0
a
k
_
b
a

k
(x)
j
(x)dx =
_
b
a

j
f(x)dx para j = 0; 1; . . . ; n.
que conceptualmente es muy parecido a lo anterior. Pero con una diferencia: ahora podemos tomar
cualquier funcin para denir nuestras funciones
k
(x) y por lo tanto, tambin nuestros
j
(x).
Busquemos entonces que nuestra matriz de coecientes se convierta en una matriz diagonal. Y
cmo lo logramos? Sencillamente estableciendo que se cumpla lo siguiente:
_
b
a

k
(x)
j
(x)dx =
_
0 si k ,= j
M > 0 si k = j
,
donde M es un valor cualquiera. Por supuesto, lo ideal sera que M = 1. Esta condicin que
deben cumplir las
k
(x) asegura que las funciones sean ortogonales. En consecuencia, nuestra
matriz de coecientes ser diagonal.
No hemos dicho nada an acerca de las funciones
k
(x). Como estamos tratando de
aproximar una funcin cualquiera, una buena idea es proponer que esas funciones sean tambin
polinomios. Para hallar estos polinomios ortogonales entre s, debemos agregar una segunda
condicin que es agregar una funcin de peso. Esta funcin de peso tiene por objeto asignar
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 119 -
5.2. Ajuste de funciones Anlisis Numrico
diferentes grados de importancia a las aproximaciones de ciertas partes del intervalo. En esta
nueva situacin tenemos:
E (a
0
; a
1
; . . . ,a
n
)
a
j
= 0

a
j
_
_
_
_
b
a
w(x)
_
f(x)
n

k=0
a
k

k
(x)
_
2
dx
_
_
_
= 0,
con lo cual nalmente nos queda:
_
b
a
w(x)
_
f(x)
n

k=0
a
k

k
_

j
dx = 0.
En este caso se debe cumplir que:
_
b
a
w(x)
k
(x)
j
(x)dx =
_
0 si k ,= j
M ,= 0 si k = j
.
Si denimos que w(x) = 1, volvemos a tener nuestra expresin original para los
k
(x)
y los
j
(x). Y si, adems, el intervalo de interpolacin lo jamos en [1,1], el resultado es que
mediante este procedimiento obtenemos los polinomios de Legendre. Estos polinomios los
usaremos ms adelante para integrar numricamente.
5.2.3. Polinomios de Legendre
Veremos cmo se calculan los polinomios de Legendre. Antes, debemos recordar cmo
se obtena un conjunto de vectores ortogonales a partir de un conjunto no ortogonal. Esto se
consegua mediante el proceso de Gram-Schmidt. Adaptmoslo para el caso de funciones.
Para empezar, debemos proponer las dos primeras funciones (x). Estas funciones son:

0
(x) = 1;
1
(x) = x B
1

1
(x) = (x B
1
)
0
(x).
donde B
1
es nuestra incgnita. Para obtenerla debemos plantear que:
_
b
a
w(x)
0
(x)
1
(x) dx = 0
_
b
a
w(x)
0
(x)
0
(x) (x B
1
) dx = 0.
Distribuyendo en el parntesis, obtenemos:
_
b
a
w(x)[
0
(x)]
2
x dx B
1
_
b
a
w(x)[
0
(x)]
2
dx = 0
y entonces B
1
podemos hallarla con:
B
1
=
_
b
a
w(x)[
0
(x)]
2
x dx
_
b
a
w(x)[
0
(x)]
2
dx
.
Para los siguientes polinomios, es decir, cuando k 2, debemos proponer que:

k
(x) = (x B
k
)
k1
(x) C
k

k2
(x) en [a; b].
Operando algebraicamente en forma similar a la anterior obtenemos los coecientes B
k
y C
k
:
B
k
=
_
b
a
x w(x)[
k1
(x)]
2
dx
_
b
a
w(x)[
k1
(x)]
2
dx
C
k
=
_
b
a
x w(x)
k1
(x)
k2
(x) dx
_
b
a
w(x)[
k2
(x)]
2
dx
- Pg. 120 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 5. Mejor aproximacin y ajuste de funciones
Como hemos dicho, la funcin de peso en el caso de los polinomios de Legendre es w(x) = 1 y el
intervalo [1; 1], por lo que las expresiones quedan como sigue:
1. El coeciente B
1
se obtiene con:
B
1
=
_
1
1
x dx
_
1
1
dx
;
2. Los coecientes B
k
se obtienen con la expresin
B
k
=
_
1
1
x [
k1
(x)]
2
dx
_
1
1
[
k1
(x)]
2
dx
;
3. Y, nalmente, los coecientes C
k
se obtienen con:
C
k
=
_
1
1
x
k1
(x)
k2
(x) dx
_
1
1
[
k2
(x)]
2
dx
.
Existe un segundo conjunto de polinomios ortogonales muy utilizados que son los polino-
mios de Chebishev. Tambin se generan aplicando las expresiones generales ya vistas, pero con
una funcin de peso diferente: w(x) =
1

1x
2
.
5.3. Notas nales
Tanto la aproximacin discreta de curvas como el ajuste de funciones tienen un amplio
uso en la ingeniera. En el primer caso, existen muchas expresiones matemticas resultantes de
aproximar valores obtenidos experimentalmente en laboratorios o mediante mediciones realizadas
sobre prototipos. En la ingeniera hidrulica se tienen muchas expresiones empricas que surgen
de experiencias en laboratorio que luego resultan en frmulas matemticas obtenidas mediante
aproximaciones discretas.
Con el ajuste de funciones ocurre algo similar. El ejemplo ms interesante es el uso de
polinomios de Legendre en la cuadratura de Gauss para integrar numricamente. Estos polino-
mios ajustan cualquier tipo de funciones y en particular, a cualquier polinomio, lo que facilita
obtener soluciones numricas exactas de cualquier integral numrica que incluya funciones
polinmicas, como se ver en el captulo siguiente.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 121 -
5.3. Notas nales Anlisis Numrico
- Pg. 122 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
Captulo 6
Diferenciacin e integracin numrica
6.1. Diferenciacin numrica
Como dijimos en la introduccin del captulo 2, trabajar en forma simblica resulta
bastante complicado cuando se requiere el uso de computadoras, an cuando existen programas
que lo hagan (en parte). No siempre las soluciones analticas son aplicables al problema que
se est tratando de resolver, y peor an, en muchos casos no hay tal solucin anlitica, como
veremos ms adelante.
Por otro lado, muchas veces tampoco disponemos de las herramientas para trabajar
en forma simblica (analtica). Cuando slo contamos con datos obtenidos de mediciones o de
clculos previos, y no de funciones, no suele ser prctico trabajar en forma simblica. Obtener
la derivada de una funcin con datos discretos no tiene mucho sentido.
Al mismo tiempo, muchos programas de aplicacin ingenieril no pueden almacenar o
guardar en sus lneas de cdigo una base de datos que incluya las derivadas de cualquier funcin
(lo mismo se aplica al caso inverso, la integracin). La cantidad de informacin y la aleatorie-
dad que puede presentar una exigencia de este tipo vuelve impracticable realizar esto en cada
programa, adems de llevar a construir interfaces amigables, que contribuyen a aumentar los
requerimientos de memoria, tanto de operacin como de almacenamiento.
Veremos a continuacin como encarar la diferenciacin mediante mtodos numricos con
ayuda de varios ejemplos, analizando las ventajas y las desventajas de cada mtodo empleado
en la discretizacin para luego analizar la extrapolacin de Richardson, mtodo que puede usarse
tambin para otros casos.
6.1.1. Diferencias progresivas, regresivas y centradas
La diferenciacin es un tema muy conocido por los estudiantes de ingeniera. Los primeros
aos de la carrera consisten en estudiar en detalle cmo caracterizar y conocer a fondo una
funcin dada, de manera que para analizar si tiene mximos o mnimos, si es convexa o cncava,
si puede aproximarse mediante un desarrollo en serie, lo primero que se aprende es el concepto
de derivada, tanto total como parcial. Tomemos, por ejemplo, la funcin
f(x) = seno
_
2
b
x
_
.
Hallar la derivada primera de f(x) respecto de x es un procedimiento sencillo pues resulta
ser
f
t
(x) =
d f(x)
dx
=
_
2
b
_
cos
_
2
b
x
_
.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 123 -
6.1. Diferenciacin numrica Anlisis Numrico
Si queremos conocer la derivada en el punto x =
b
6
entonces basta con reemplazar ese
valor en la expresin anterior y tendremos que
f
t
_
b
6
_
=
_
2
b
_
cos
_
2
b
b
6
_
=
_
2
b
_
cos
_

3
_
Si nalmente le damos un valor a b, (por ejemplo, b = 6), el valor de nuestra derivada en
x =
b
6
= 1 ser
f
t
(1) =
_

3
_
cos
_

3
_
=

6
0,5236
Supongamos ahora que queremos obtener ese mismo valor pero no recordamos cmo
hallar la derivada en forma analtica. Aplicando el concepto del cual se deduce, podemos decir
que
f
t
(x)
f(x + x) f(x)
x
que tambin suele escribirse como:
f
t
(x)
f(x +h) f(x)
h
Para hallar la derivada en nuestro punto x =
b
6
con b = 6 adoptemos el valor h = 0,1.
As tendremos que
f
t
(1)
f(1,1) f(1)
0,1
=
seno
_

3
1,1
_
seno
_

3
_
0,1
f
t
(1)
0,9135 0,8660
0,1
= 0,4750
Podemos ver que nuestra aproximacin es razonable pero no muy buena, y que el error co-
metido es del orden del 10 %. Como no estamos conformes con el resultado obtenido, proponemos
otro algoritmo para hallar el valor buscado. Este algoritmo es
f
t
(x)
f(x) f(x x)
x
o, como tambin suele escribirse
f
t
(x)
f(x) f(x h)
h
Hallemos ahora el valor de la derivada utilizando este nuevo algoritmo. El resultados es
f
t
(1)
f(1) f(0,9)
0,1
=
seno
_

3
_
seno
_

3
0,9
_
0,1
f
t
(1)
0,8660 0,8090
0,1
= 0,5700
De nuevo, el valor obtenido tampoco es una aproximacin muy buena, pues el error
cometido del orden del 8 %. Una vez ms, no estamos conformes con el resultado que nos arroj
este algoritmo y proponemos este otro
f
t
(x)
f(x + x) f(x x)
2x
o tambin:
f
t
(x)
f(x +h) f(x h)
2h
- Pg. 124 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
Reemplazando los valores, tendremos:
f
t
(1)
f(1,1) f(0,9)
0,2
=
seno
_

3
1,1
_
seno
_

3
0,9
_
0,2
f
t
(1)
0,9135 0,8090
0,2
= 0,5225
Evidentemente, el valor de la derivada en el punto pedido es bastante aproximado al
considerado real o exacto. Podemos notar que el error cometido es del orden del 0,2 %. Cada
una de estas aproximaciones son equivalentes a efectuar una interpolacin aplicando el mtodo de
Lagrange y luego derivar el polinomio hallado. Como se tienen dos puntos, el polinomio resultante
es una recta. En la gura 6.1 se pueden ver las aproximaciones de la pendiente.
Figura 6.1: Pendiente segn cada aproximacin.
Hagamos una mejora escribindolo como:
f
t
(x)
f(x +
h
2
) f(x
h
2
)
h
buscando mejorar la aproximacin del resultado buscado. Reemplazando tendremos:
f
t
(1)
f(1,05) f(0,95)
0,1
=
seno
_
2
6
1,05
_
seno
_
2
6
(0,95)

0,1
f
t
(1)
0,8910 0,8387
0,1
= 0,5230
El resultado es una mejor aproximacin pero no se nota una gran diferencia con respecto
al anterior, puesto que el error cometido es del orden de 0,1 %. Pero sin lugar a dudas, este ltimo
algoritmo es mucho mejor.
Esta forma de aproximar la derivada en un punto se conoce como aproximacin por
diferencias, y se pueden clasicar segn tres tipos:
1. Diferencias progresivas: cuando la derivada en un punto se aproxima segn la expresin
vista en primer trmino, o sea:
f
t
(x) =
f(x +h) f(x)
h
;
2. Diferencias regresivas: cuando la derivada en punto se aproxima segn la expresin vista
en segundo trmino, o sea:
f
t
(x) =
f(x) f(x h)
h
, y
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 125 -
6.1. Diferenciacin numrica Anlisis Numrico
3. Diferencias centradas: cuando la derivada en un punto se aproxima segn la expresin
vista en ltimo trmino, o sea:
f
t
(x) =
f(x +h) f(x h)
2h
.
Como vimos, este ltimo esquema es el que mejor aproxima.
Analizaremos ahora el por qu de esta mejor aproximacin. Empecemos por el esquema
de diferencias progresivas. Si desarrollamos por Taylor la funcin f(x +h), tendremos que
f(x +h) = f(x) +f
t
(x)
h
1!
+f
tt
(x)
h
2
2!
+f
ttt
(x)
h
3
3!
+. . . ;
de la cual podemos despejar f
t
(x), que es
f
t
(x)h = f(x +h) f(x) f
tt
(x)
h
2
2!
f
ttt
(x)
h
3
3!
. . . ;
f
t
(x) =
f(x +h) f(x)
h
f
tt
(x)
h
2!
f
ttt
(x)
h
2
3!
. . . .
Si nuestro h es sucientemente pequeo, entonces los h
n
para n 2 se pueden despreciar.
Finalmente tendremos que
f
t
(x) =
f(x +h) f(x)
h
f
tt
()
h
2!
=
f(x +h) f(x)
h
+O(h);
con [x; x +h]. En este caso, nuestra aproximacin tiene un orden de convergencia O(h).
De forma anloga, para el esquema de diferencias regresivas, tendremos que
f(x h) = f(x) f
t
(x)
h
1!
+f
tt
(x)
h
2
2!
f
ttt
(x)
h
3
3!
+. . . .
Como en el caso anterior, la expresin nal ser
f
t
(x) =
f(x) f(x h)
h
+f
tt
()
h
2!
=
f(x) f(x h)
h
+O(h).
Al igual que en lo visto anteriormente, el orden de convergencia es O(h).
Finalmente, hagamos lo mismo para el esquema de diferencias centradas. En este caso
tendremos que
f(x +h) = f(x) +f
t
(x)
h
1!
+f
tt
(x)
h
2
2!
+f
ttt
(x)
h
3
3!
+. . . ;
f(x h) = f(x) f
t
(x)
h
1!
+f
tt
(x)
h
2
2!
f
ttt
(x)
h
3
3!
+. . . .
Pasemos f(x h) al otro lado de la igualdad. Nos queda
f(x +h) f(x h) = 2f
t
(x)
h
1!
+ 2f
ttt
(x)
h
3
3!
+. . . .
Si despejamos f
t
(x) de esta expresin, tenemos que
f
t
(x) =
f(x +h) f(x h)
2h
f
ttt
()
h
2
3!
=
f(x +h) f(x h)
2h
+O(h
2
),
esta vez con [x h; x +h].
Notemos que en este caso la convergencia es O(h
2
), razn por la cual la aproximacin es
mucho mejor respecto de los esquemas anteriores. Entonces es conveniente armar un esquema de
- Pg. 126 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
diferencias centradas para aproximar una derivada en un punto dado. Adems tiene otra ventaja.
Como el error es proporcional a la tercera derivada, podemos obtener resultados muy precisos
(exactos) para un polinomio de grado menor o igual a 2
1
.
Al mismo tiempo, el hecho de que el orden de convergencia sea O(h
2
) nos permite inferir
que si hacemos el paso (h) cada vez ms chico, deberamos tener un resultado con una mejor
aproximacin. Hagamos esto, y con la misma precisin del ejemplo anterior, calculemos de nuevo
la derivada en el punto x = 1 con un nuevo paso, h = 0,01, para cada esquema.
1. Diferencias progresivas: f
t
(1) =
seno(

3
1,01)seno(

3
)
0,01
=
0,87120,8660
0,01
= 0,5200
2. Diferencias regresivas: f
t
(1) =
seno(

3
)seno(

3
0,99)
0,01
=
0,86600,8607
0,01
= 0,5300
3. Diferencias centradas: f
t
(1) =
seno(

3
1,01)seno(

3
0,99)
0,02
=
0,87120,8607
0,02
= 0,5250
Al achicar el paso utilizado para reducir el error cometido podemos notar dos cosas. La
primera es que para los esquemas progresivos y regresivos el resultado obtenido result ser una
mejor aproximacin que en el caso anterior con un paso diez veces ms grande, mientras que
para el esquema centrado, el resultado no fue mejor. La segunda es que hemos perdido precisin,
principalmente en el esquema con diferencias centradas. La pregunta es: por qu? En todo caso,
habremos hecho algo mal?
En realidad no hemos hecho nada incorrecto. Sucede que no hemos tomado en cuenta la
incidencia del error de redondeo en nuestro algoritmo, es decir, el hecho de trabajar solamente
con cuatro dgitos al representar los resultados intermedios. Supusimos que achicar el paso inme-
diatamente nos mejoraba nuestra aproximacin. Pero hemos visto que la aproximacin depende
tambin de la precisin usada en los clculos, es decir, de la representacin numrica, que como
vimos, est asociada al error de redondeo
2
.
El problema es que a medida que el paso h es cada vez ms chico, lo mismo pasa con la
operacin f(x+h) f(x) o sus equivalentes. Esa diferencia se vuelve muy chica y es posible que
nuestra unidad de mquina no pueda representarla correctamente. En consecuencia, debemos
encontrar o desarrollar otro mtodo para mejorar la aproximacin del resultado buscado.
6.1.2. Aproximacin por polinomios de Taylor
Propongamos el siguientes esquema, que se basa en tomar los intervalos x 2h y x h,
y el desarrollo por Taylor para cada caso:
f(x + 2h) = f(x) +f
t
(x)
2h
1!
+f
tt
(x)
4h
2
2!
+f
ttt
(x)
8h
3
3!
+f
iv
(x)
16h
4
4!
+f
v
(x)
32h
5
5!
+. . . ;
f(x +h) = f(x) +f
t
(x)
h
1!
+f
tt
(x)
h
2
2!
+f
ttt
(x)
h
3
3!
+f
iv
(x)
h
4
4!
+f
v
(x)
h
5
5!
+. . . ;
f(x h) = f(x) f
t
(x)
h
1!
+f
tt
(x)
h
2
2!
f
ttt
(x)
h
3
3!
+f
iv
(x)
h
4
4!
f
v
(x)
h
5
5!
+. . . ;
f(x 2h) = f(x) f
t
(x)
2h
1!
+f
tt
(x)
4h
2
2!
f
ttt
(x)
8h
3
3!
+f
iv
(x)
16h
4
4!
f
v
(x)
32h
5
5!
+. . . .
1
Otra forma de demostrar esta mejora del mtodo centrado es considerar que tomamos tres puntos, y(x h),
y(x) y y(x+h), y no dos para armar el polinomio interpolante. El resultado de esta interpolacin es un polinomio
de grado 2 cuyo error es proporcional a la derivada tercera de y.
2
En el captulo 1 vimos como ejemplo de la incidencia del error de redondeo en un algoritmo, el clculo de una
derivada numrica, y como, a partir de un valor del paso h, a medida que se haca ms chico, el error aumentaba.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 127 -
6.1. Diferenciacin numrica Anlisis Numrico
Primero hagamos f(x+2h) f/x2h) y f(x+h) f(xh), con las cual obtendremos
las siguientes igualdades:
f(x + 2h) f(x 2h) = 4f
t
(x)
h
1!
+ 16f
ttt
(x)
h
3
3!
+ 64f
v
(x)
h
5
5!
+. . . ;
f(x +h) f(x h) = 2f
t
(x)
h
1!
+ 2f
ttt
(x)
h
3
3!
+ 2f
v
(x)
h
5
5!
+. . . .
Si queremos mejorar la precisin de nuestros esquemas anteriores para calcular f
t
(x),
anulemos el trmino con h
3
. Para ello, hagamos [f(x+2h)f(x2h)] 8[f(x+h)f(xh)].
As, nos queda la siguiente igualdad:
f(x + 2h) f(x 2h) 8f(x +h) + 8f(x h) = 12f
t
(x)h + 48f
v
(x)
h
5
5!
+. . . .
De esta ltima expresin podemos despejar f
t
(x), que resulta ser:
f
t
(x) =
f(x 2h) 8f(x h) + 8f(x +h) f(x + 2h)
12h
+ 4f
v
(x)
h
4
5!
+. . . ;
y si truncamos en h
4
, nos queda:
f
t
(x) =
f(x 2h) 8f(x h) + 8f(x +h) f(x + 2h)
12h
+f
v
()
h
4
30
.
con [x 2h; x + 2h] y un orden de convergencia O(h
4
). Con esta ltima expresin podemos
decir que una aproximacin de la primera derivada en un punto est dada por:
f
t
(x)
f(x 2h) 8f(x h) + 8f(x +h) f(x + 2h)
12h
.
Ahora, apliquemos este nuevo esquema centrado para calcular la derivada buscada, con
la misma representacin numrica utilizada en los casos anteriores. Tomemos el paso h = 0,1 con
el que obtendremos:
f
t
(x = 1) =
seno
_

3
0,8
_
8 seno
_

3
0,9
_
+ 8 seno
_

3
1,1
_
seno
_

3
1,2
_
12 h
f
t
(x = 1) =
0,7431 6,4721 + 7,3084 0,9511
12 0,1
=
0,6283
1,2
= 0,5236
El resultado obtenido es sorprendente, pues para esa representacin numrica, se lo pue-
de considerar exacto! Bast que ampliramos el intervalo de clculo, es decir, los puntos que
usamos para armar lo que se denomina una malla (en ingls mesh), para que la aproximacin
sea excelente. Este algoritmo se conoce como el mtodo de los cinco puntos y tiene un orden
de convergencia proporcional a la derivada quinta, lo que lo vuelve muy preciso. La nica des-
ventaja es que requiere operar con cinco puntos y esa malla deber densicarse cada vez que la
representacin numrica sea ms precisa, cuidando siempre de evitar que el paso sea muy chico,
por el riesgo de que no pueda representarse correctamente el numerador. Veremos ms adelante
que este tipo de mallas son muy tiles para resolver ecuaciones diferenciales y/o sistemas de
ecuaciones diferenciales.
En la gura 6.2 se puede la aproximacin obtenida utilizando la aproximacin por poli-
nomios de Taylor.
Pero nuestro inters, por ahora, es calcular en forma numrica el valor de la derivada en
un punto dado con la mejor aproximacin posible. Existir otra forma de obtener ese valor con
un grado de aproximacin similar al obtenido con el esquema anterior usando un solo punto?
- Pg. 128 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
Figura 6.2: Aproximacin por polinomios de Taylor.
6.1.3. Extrapolacin de Richardson
Vimos en el punto anterior que para calcular una derivada en un punto y obtener la
mejor aproximacin, debemos trabajar con el esquema centrado y con un paso h pequeo, an
cuando esto trae aparejado una inestabilidad de los resultados. Tal como vimos al analizar la
aproximacin por polinomios de Taylor, nuestra aproximacin de la derivada se puede expresar
como:
M = N(h) +E(h),
donde M es el valor buscado, N(h), la aproximacin de M, E(h), el error cometido y h, el paso.
Supongamos que podemos expresar nuestra E(h) de la siguiente forma:
E(h) = K
1
h +K
2
h
2
+K
3
h
3
+. . . .
Anlogamente al caso anterior, para un h
1
el valor buscado se podr expresar como
(I) M = N
1
(h
1
) +K
1
h
1
+K
2
h
2
1
+K
3
h
3
1
+. . . .
Hagamos lo mismo pero para un h
2
tal que q =
h
1
h
2
. Entonces tendremos:
(II) M = N
1
(h
2
) +K
1
h
2
+K
2
h
2
2
+K
3
h
3
2
+. . . .
Como h
1
= qh
2
podemos escribir (I) como:
(III) M = N
1
(h
1
) +K
1
qh
2
+K
2
(qh
2
)
2
+K
3
(qh
2
)
3
+. . . .
Para mejorar el orden de aproximacin de nuestro resultado, anulemos el trmino lineal de h, es
decir, multipliquemos por q a (II) y luego restmosle (III):
qM M = qN
1
(h
2
) N
1
(h
1
) +qK
1
(h
2
h
2
) +qK
2
_
h
2
2
qh
2
2
_
+qK
3
_
h
3
2
q
2
h
3
2
_
+. . .
qM M = qN
1
(h
2
) N
1
(h
1
) +qK
2
_
h
2
2
qh
2
2
_
+qK
3
_
h
3
2
q
2
h
3
2
_
+. . . .
Si despejamos M, tendremos la siguiente expresin:
M =
(q 1)N
1
(h
2
)
q 1
+
N
1
(h
2
) N
1
(h
1
)
q 1

qK
2
h
2
2
(q 1)
q 1

qK
3
h
3
2
_
q
2
1
_
q 1
+. . .
en la que podemos expresar M como:
M = N
1
(h
2
) +
N
1
(h
2
) N
1
(h
1
)
q 1
. .
N
2
(h
1
)
qK
2
h
2
2
q (q + 1) K
3
h
3
2
+. . . .
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 129 -
6.1. Diferenciacin numrica Anlisis Numrico
Al denir
N
2
(h
1
) = N
1
(h
2
) +
N
1
(h
2
) N
1
(h
1
)
q 1
,
nos queda que:
M = N
2
(h) +K
t
2
h
2
+K
t
3
h
3
+. . . ,
con
K
t
2
= qK
2
;
K
t
3
= q(q + 1)K
3
;
. . . .
Repitamos el proceso tomando nuevamente h
1
y h
2
, entonces tenemos:
(IV) M = N
2
(h
1
) +K
t
2
h
2
1
+K
t
3
h
3
1
+. . . .
(V) M = N
1
(h
2
) +K
t
2
h
2
2
+K
t
3
h
3
2
+. . . .
Al igual que en el paso anterior, impondremos que q =
h
1
h
2
, y reescribamos (IV) de la siguiente
forma:
(VI) M = N
2
(h
1
) +K
t
2
(qh
2
)
2
+K
t
3
(qh
2
)
3
+. . . .
Anlogamente al caso anterior, mejoremos nuestra aproximacin anulando en este caso
el trmino cuadrtico de h, multiplicando por q
2
a (V) para luego restarle (VI):
q
2
M M = q
2
N
2
(h
2
) N
2
(h
1
) q
2
K
t
2
_
h
2
2
h
2
2
_
+q
2
K
t
3
h
3
2
(q 1) +. . .
q
2
M M = q
2
N
2
(h
2
) N
2
(h
1
) +q
2
K
t
3
h
3
2
(q 1) +. . .
De la misma forma que para el caso anterior, obtenemos una nueva aproximacin para
M
M =
(q
2
1)N
2
(h
2
)
q
2
1
+
N
2
(h
2
) N
2
(h
1
)
q
2
1
+
q
2
K
t
3
h
3
2
(q 1)
q
2
1
+. . .
M = N
2
(h
2
) +
N
2
(h
2
) N
2
(h
1
)
q
2
1
. .
N
3
(h
1
)
+
q
2
K
t
3
h
3
2
q + 1
+. . . .
Una segunda forma de escribir esto ltimo en funcin de h
1
es
M = N
2
_
h
1
q
_
+
N
2
_
h
1
q
_
N
2
(h
1
)
q
2
1
. .
N
3
(h
1
)
+
q
2
K
t
3
_
h
1
q
_
3
q + 1
+. . . ,
es decir, nos queda
M = N
3
(h
1
) +K
tt
3
h
3
1
+. . . ;
con
K
tt
3
=
K
t
3
q(q + 1)
; . . . ,
aproximacin que resulta mejor que la anterior.
Finalmente, podemos generalizar el mtodo de aproximacin de la siguiente forma:
N
j
(h) = N
j1
_
h
q
_
+
N
j1
_
h
q
_
N
j1
(h)
q
j1
1
.
- Pg. 130 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
Este mtodo o algoritmo para mejorar una aproximacin se conoce como Extrapolacin de
Richardson. Veremos ms adelante una aplicacin de este mismo mtodo asociado a la integracin
numrica.
Un caso particular muy usado es cuando q = 2, cuya expresin general se dene como:
N
j
(h) = N
j1
_
h
2
_
+
N
j1
_
h
2
_
N
j1
(h)
2
j1
1
.
Este algoritmo permite aproximar una derivada numrica con poco esfuerzo y teniendo en cuenta
la inestabilidad del algoritmo porque no requiere dividir por nmeros excesivamente pequeos.
Apliquemos este mtodo al ejemplo inicial y calculemos la derivada de f(x) = seno
_

3
x
_
en x = 1 con el algoritmo de diferencias progresivas.
Armemos una tabla para aplicar el algoritmo anterior de modo de visualizar fcilmente
cada uno de los pasos. En primer lugar, vamos denir que la primera aproximacin, es decir, N
1
(h)
sea la derivada calculada numricamente con h, que ocupar la primera columna. Usaremos la
expresin:
f
t
(x)
f(x +h) f(x)
h
=
seno
_

3
(x +h)

seno
_

3
x

h
.
Las dems columnas sern N
2
(h), N
3
(h) y N
4
(h). En segundo lugar, tomaremos varios
valores de h, por lo tanto tendremos varias las con diferentes aproximaciones de la derivada
buscada. Para cada caso calcularemos las aproximaciones con la frmula de la Extrapolacin de
Richardson:
N
j
(h) = N
j1
_
h
2
_
+
N
j1
_
h
2
_
N
j1
(h)
2
j1
1
.
En la tabla 6.1 tenemos los resultados obtenidos al aplicar la extrapolacin de Richardson
a nuestro ejemplo.
Tabla 6.1: Extrapolacin de Richardson
h
i
y
t
i
= N
1
N
2
N
3
N
4
0,2 0,4250
0,1 0,4750 0,5250
0,05 0,5000 0,5250 0,5250
0,025 0,5120 0,5240 0,5237 0,5235
Figura 6.3: Aproximacin con N
2
.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 131 -
6.1. Diferenciacin numrica Anlisis Numrico
Figura 6.4: Aproximacin con N
3
.
Figura 6.5: Aproximacin con N
4
.
Analicemos rpidamente los resultados obtenidos. La primera columna contiene los re-
sultados de aproximar la derivada con varios h diferentes. Vemos que a pesar de utilizar un h
relativamente pequeo (h = 0,025) nuestra aproximacin inicial no es muy buena.
La segunda columna es nuestra primera aplicacin de la extrapolacin de Richardson,
usando los valores de la primera columna. A primera vista se puede observar que la aproximacin
es muy superior a la anterior. Algo similar ocurre en la tercera. Finalmente, en la cuarta, la
aproximacin nal resulta ser casi el valor exacto para una representacin de cuatro (4) deci-
males. Y si comparamos con la aproximacin para h = 0,025, ltima la de la primera columna,
vemos que es muy superior. Si quisiramos obtener una aproximacin similar, deberamos trabajar
con ms decimales, puesto que para h = 0,01 el valor de f
t
(1) es 0,5200, que si bien tiene dos
decimales correcto, es menos preciso que el hallado con Richardson.
En las guras 6.3, 6.4 y 6.5 se pueden ver algunas de las aproximaciones de la pendiente
en el punto dado en cada paso.
Si bien aplicamos este mtodo para obtener una derivada numrica, puede aplicarse para
cualquier caso que cumpla la condicin:
M = N(h) +K
1
h +K
2
h
2
+K
3
h
3
+. . . .
como es el caso de la interpolacin polinomial.
6.1.4. Notas nales
Es evidente que la diferenciacin numrica es inestable o, dicho de otro modo, es muy
dependiente de la precisin utilizada. Anar el paso h en un algoritmo dado puede conducir
a resultados de menor precisin o, en trminos numricos, inservibles; en consecuencia, no es
conveniente reducir el paso h suponiendo que eso mejora la aproximacin buscada.
- Pg. 132 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
Los distintos mtodos vistos en los puntos anteriores indican que es preferible mejorar el
algoritmo o desarrollar uno nuevo, antes que anar el paso de clculo. Ms an, es mucho ms
efectivo aplicar el mtodo de extrapolacin de Richardson a un algoritmo conocido y sencillo
que desarrollar uno nuevo. En todo caso, la segunda opcin sera utilizar los polinomios de
Taylor o alguna aproximacin polinomial que utilice la informacin disponible (puntos adyacentes
o aledaos). Si bien esta aproximacin puede ser laboriosa, queda ampliamente justicada al
disminuir la incidencia del error de redondeo en los clculos, sobre todo al no tener que dividir
por un nmero muy pequeo.
Los desarrollos vistos para el caso de aproximar una primera derivada pueden extrapolarse
para derivadas de orden superior. Un ejemplo de ello es la aproximacin centrada de la segunda
derivada en un punto dado, cuya expresin es:
f
tt
(x) =
f (x h) 2f (x) +f (x +h)
h
2
.
que se obtiene de considerar los polinomios de Taylor para x h y x + h. Efectivamente, al
desarrollar ambos polinomios tendremos
f (x +h) = f (x) +f
t
(x)
h
1!
+f
tt
(x)
h
2
2!
+f
ttt
(x)
h
3
3!
+. . . ;
f (x h) = f (x) f
t
(x)
h
1!
+f
tt
(x)
h
2
2!
f
ttt
(x)
h
3
3!
+. . . .
Si sumamos ambos polinomios obtenemos:
f(x +h) +f(x h) = 2f(x) +f
tt
(x)h
2
+f
iv
(x)
h
4
12
+. . . ;
f
tt
(x) =
f(x h) 2f(x) +f(x +h)
h
2
f
iv
[]
h
2
12
;
f
tt
(x) =
f(x h) 2f(x) +f(x +h)
h
2
+O(h
2
),
con [x h; x +h).
Observemos que el error cometido al calcular la derivada segunda con la expresin dada
es proporcional a h
2
y a f
iv
(), es decir, similar al caso de la expresin centrada para la primera
derivada. Podemos asegurar que en el caso de polinomios de grado 3 o inferior, o que no exista
la derivada cuarta, la derivada segunda obtenida en forma numrica, es exacta.
Mediante razonamientos anlogos o similares pueden obtenerse algoritmos para calcular
derivadas numricas de orden superior. Sin embargo, a medida que se aumenta el orden de la
derivada, aumenta el exponente de h, y con ello, la inestabilidad del algoritmo. Calcular una
derivada numrica de mayor orden puede llevar a que obtengamos valores poco satisfactorios
o directamente intiles, si el paso h elegido se demasiado pequeo. Algo de esto se ver ms
adelante cuando tratemos la resolucin de ecuaciones diferenciales.
6.2. Integracin numrica
Como en el caso de la diferenciacin numrica, la integracin numrica tiene la misma
dicultad de trabajar con mtodos simblicos. Existen muchos programas de aplicacin en la
ingeniera que dependen de obtener integrales denidas. Como es prcticamente imposible agregar
una base de datos que incluya las primitivas de cualquier funcin, la nica manera de calcular
estas integrales es mediante mtodos numricos. Un ejemplo en este sentido es la utilizacin
del mtodo de los elementos nitos en el anlisis estructural, que calcula la matriz de rigidez
mediante la integracin numrica.
Veremos a continuacin varios mtodos numricos para calcular integrales denidas, ana-
lizando ventajas y desventajas de cada uno de ellos.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 133 -
6.2. Integracin numrica Anlisis Numrico
6.2.1. Frmulas de Newton-Cotes
Antes de desarrollar las distintas frmulas o mtodos para obtener una integral denida
en forma numrica, daremos algunas deniciones.
Denicin 6.1. Dada una funcin f(x) denida en [a; b], se denomina cuadratura numrica de
la integral I(f) =
_
b
a
f(x)dx a una frmula tal que:
Q
n
(f) =
n

i=1
c
i
f (x
i
) ;
con c
i
1 y x
i
[a; b]. Los puntos x
i
se denominan puntos de cuadratura (o races) y los
valores c
i
, coecientes de cuadratura o de peso. Asimismo, se dene el error de la cuadratura
como E
n
(f) = I(f) Q
n
(f).
Denicin 6.2. Una cuadratura numrica tiene grado de precisin m si E
n
(x
k
) = 0 para
k = 0; 1; . . . ; m y E
n
_
x
m+1
_
,= 0.
Observacin 6.2.1. Si una cuadratura numrica tiene grado de precisin m, entonces E
n
(p
k
) =
0 para todo polinomio p
k
(x) de grado menor o igual a m (k m).
Denicin 6.3. Se denomina frmula cerrada de Newton-Cotes a toda cuadratura numrica
cuyos nodos incluya a los extremos del intervalo.
Denicin 6.4. Se denomina frmula abierta de Newton-Cotes a toda cuadratura numrica
cuyos nodos no incluya a los extremos del intervalo.
6.2.2. Frmulas cerradas de Newton-Cotes
Frmulas simples
Supongamos que tenemos la siguiente funcin (o curva) y queremos hallar el rea bajo
la misma en el intervalo [a; b], como se ve en la gura 6.6.
Figura 6.6: rea bajo la curva.
Para empezar, podemos hacer dos aproximaciones muy groseras como se puede apreciar
en las guras 6.7(a) y 6.7(b):
En la aproximacin de la gura 6.7(a), vemos que el rea obtenida es mucho menor que el
rea buscada. En cambio, en la 6.7(b), podramos suponer que la aproximacin obtenida del rea
es similar o mayor. Podemos ver que si el rea en color claro se compensa con el rea en color
oscuro excedente, entonces estaramos obteniendo una buena aproximacin. Si esto no fuera as,
entonces obtendramos una rea por defecto (la parte oscura es menor que la parte clara) o por
exceso (la parte oscura es mayor a la parte clara).
- Pg. 134 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
(a) Por defecto (b) Por exceso
Figura 6.7: Aproximacin por rectngulos.
Estas dos aproximaciones se pueden expresar matemticamente como:
Q
n
(f) = f(a)(b a);
para el caso (a) y,
Q
n
(f) = f(b)(b a);
para el caso (b).
Otra forma de aproximar el rea la vemos en la gura 6.8.
Figura 6.8: Aproximacin por trapecios.
En este caso particular, no parece que esta aproximacin sea mucho mejor, puesto que
hay un rea excedente en color claro. La expresin matemtica para este caso es:
Q
n
(f) =
f(b) +f(a)
2
(b a).
Vamos a generalizar estas tres expresiones. Denamos h = b a, y escribamos cada una
de las expresiones de la siguiente forma:
Aproximacin por rectngulos (defecto): Q
n
(f) = h f(a);
Aproximacin por rectngulos (exceso): Q
n
(f) = h f(b);
Aproximacin por trapecio: Q
n
(f) =
h
2
[f(a) +f(b)].
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 135 -
6.2. Integracin numrica Anlisis Numrico
Para saber si nuestras aproximaciones son buenas, estimemos el error que cometemos
en cada una. Primeramente, analicemos cualquiera de los dos mtodos que aproximan por un
rectngulo. Al desarrollar f(x) respecto del punto a mediante una serie de Taylor, tenemos que
f(x) = f(a) +f
t
(a)(x a) +f
tt
(a)
(x a)
2
2
+. . . .
Para obtener la integral basta con integrar la serie tambin. Entonces tenemos que
_
b
a
f(x)dx =
_
b
a
f(a)dx +
_
b
a
f
t
(a)(x a)dx +
_
b
a
f
tt
(a)
(x a)
2
2
dx +. . . .
Si integramos y truncamos en el trmino de la derivada primera, nos queda
_
b
a
f(x)dx = f(a)(b a) +f
t
()
(b a)
2
2
,
con [a; b]. Como h = b a nos queda
_
b
a
f(x)dx = f(a)h +f
t
()
h
2
2
= h f(a) +
b a
2
f
t
() h
. .
O(h)
,
es decir, nuestra expresin tiene un error proporcional a la derivada primera y su orden de
convergencia es O(h). Para el caso de usar f(b) el error es anlogo.
Para analizar el mtodo del trapecio, usemos una interpolacin entre el punto a y b usando
el polinomio de Lagrange y su error
3
. En este caso tenemos que
f(x) = f(a)
x b
a b
+f(b)
x a
b a
+f
tt
()
(x a)(x b)
2
.
Integremos el polinomio obtenido; as nos queda
_
b
a
f(x)dx =
f(a)
a b
_
b
a
(x b)dx +
f(b)
b a
_
b
a
(x a)dx +f
tt
()
_
b
a
(x a)(x b)
2
dx
=
f(a) +f(b)
2
(b a) f
tt
()
(b a)
3
12
=
f(a) +f(b)
2
h f
tt
()
h
3
12
_
b
a
f(x)dx =
f(a) +f(b)
2
h
b a
2
f
tt
()
h
2
6
,
nuevamente con [a; b]. Lo que hemos obtenido es un mtodo cuyo error es proporcional a la
derivada segunda, o sea, mejoramos nuestra aproximacin.
Analicemos ahora una segunda mejora. Supongamos que podemos calcular la funcin en
x =
a+b
2
, es decir, podemos obtener f
_
a+b
2
_
. En consecuencia, tenemos ahora tres puntos que
nos pueden servir para obtener el rea buscada. Hagamos pasar una curva por esos tres puntos
utilizando el polinomio de Taylor y asumiendo en este caso que h =
ba
2
, como se ve en la
gura 6.9. Podemos ver en la gura que el rea aproximada es mayor que el rea buscada, lo que
signica que obtendremos un valor por exceso.
La aproximacin usando parbolas de segundo grado es la conocida frmula de Simpson,
cuya expresin matemtica es:
Q
n
(f) =
h
3
_
f(a) +f(b) + 4 f
_
a +b
2
__
.
3
Otro camino es truncar el desarrollo por Taylor del rectngulo en el trmino que contiene a f

(a).
- Pg. 136 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
Figura 6.9: Aproximacin por arcos de parbola cuadrtica.
Analicemos el error cometido con esta nueva expresin. Tomemos nuevamente nuestro
desarrollo de Taylor pero a partir del punto x
1
=
a +b
2
y cortemos la expresin en la derivada
cuarta. Entonces nos queda
f(x) = f(x
1
) +f
t
(x
1
)(x x
1
) +f
tt
(x
1
)
(x x
1
)
2
2
+f
ttt
(x
1
)
(x x
1
)
3
6
+f
iv
(
1
)
(x x
1
)
4
24
,
con
1
[a,b].
Si integramos nuevamente nos queda
_
b
a
f(x)dx =
_
b
a
f(x
1
)dx +
_
b
a
f
t
(x
1
)(x x
1
)dx +
_
b
a
f
tt
(x
1
)
(x x
1
)
2
2
dx +
+
_
b
a
f
ttt
(x
1
)
(x x
1
)
3
6
dx +
_
b
a
f
iv
(x
1
)
(x x
1
)
4
24
dx
= f(x
1
)(b a) +f
t
(x
1
)
(x x
1
)
2
2

b
a
+f
tt
(x
1
)
(x x
1
)
3
6

b
a
+
+f
ttt
(x
1
)
(x x
1
)
4
24

b
a
+f
iv
(
1
)
(x x
1
)
5
120

b
a
Ahora tomemos que h = b x
1
= x
1
a. Entonces nos queda
_
b
a
f(x)dx = f(x
1
)2h +f
tt
(x
1
)
h
3
3
+f
iv
(
1
)
h
5
60
.
Aproximemos la derivada segunda en x
1
mediante una derivada discreta, como la vista
en diferenciacin numrica. Dado que esta aproximacin debe tener un error de truncamiento
similar a nuestra aproximacin de la integral, usaremos la derivada por diferencias centradas,
que tambin es proporcional a f
iv
(
2
):
f
tt
(x
1
) =
f(a) 2f(x
1
) +f(b)
h
2

h
2
12
f
iv
(
2
),
con
2
[a; b].
Al reemplazarla en la frmula de integracin, nos queda
_
b
a
f(x)dx = f(x
1
)2h +
f(a) 2f(x
1
) +f(b)
h
2
h
3
3
f
iv
(
2
)
h
5
36
+f
iv
(
1
)
h
5
60
=
h
3
[f(a) + 4f(x
1
) +f(b)] f
iv
()
h
5
90
=
h
3
_
f(a) + 4f
_
a +b
2
_
+f(b)
_

b a
2
f
iv
()
90
h
4
,
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 137 -
6.2. Integracin numrica Anlisis Numrico
con [a; b]. Usualmente el trmino de error se dene como:
E(h) = M h
4
, con M =
b a
180
f
iv
(),
de ah que el orden de convergencia sea O(h
4
).
Vemos que el error del mtodo de Simpson es proporcional a la derivada cuarta, por lo
tanto, esta expresin nos da una integral exacta para polinomios de grado menor o igual a
tres.
Uniquemos los cuatro casos en un intervalo de integracin. Si tomamos como intervalo
[a; b] el intervalo [1; 1], nos queda para cada mtodo lo siguiente:
Aproximacin por rectngulo (defecto): Q
n
(x) = 2 f(1).
Aproximacin por rectngulo (exceso): Q
n
(x) = 2 f(1).
Aproximacin por trapecios: Q
n
(x) = 1 f(1) + 1 f(1).
Aproximacin por Simpson: Q
n
(x) =
1
3
f(1) +
4
3
f(0) +
1
3
f(1).
Si nos jamos en la denicin de cuadratura podemos ver que hemos denido para cada
caso un valor de c
i
y un valor de x
i
, que son los siguientes:
Aproximacin por rectngulo (defecto): c
1
= 2, x
1
= 1.
Aproximacin por rectngulo (exceso): c
1
= 2, x
1
= 1.
Aproximacin por trapecios: c
1
= c
2
= 1, x
1
= 1, x
2
= 1.
Aproximacin por Simpson: c
1
= c
3
=
1
3
, c
2
=
4
3
, x
1
= 1; x
2
= 0; x
3
= 1;
con lo cual podemos escribirlos segn la forma general denida como cuadratura numrica:
Q
n
(f) =
n

i=1
c
i
f (x
i
) ;
siendo n = 1 para la frmula del rectngulo, n = 2 para la del trapecio y n = 3 para la de
Simpson.
An cuando estas aproximaciones tienen una precisin interesante (sobre todo la lti-
ma), no son lo sucientemente precisas para resolver cualquier problema. Para mejorar nuestra
aproximacin, veremos a continuacin algunas formas de mejorar la precisin de las cuadraturas.
Frmulas compuestas
Supongamos que en lugar de utilizar la frmula del rectngulo con el paso h = b a,
dividimos ese intervalo en intervalos ms chicos. Empecemos por denir un nuevo paso ms chico,
tomando h =
ba
2
. Ahora podemos aproximar la integral con dos subintervalos, tanto por defecto
como por exceso, que resultan ser [a; a +h] y [a +h; b], con los cuales se obtienen las siguientes
aproximaciones:
Q
n
(f) = h f(a) +h f(a +h);
o
Q
n
(f) = h f(a +h) +h f(b).
Ambas aproximaciones se pueden ver en las guras 6.10(a) y 6.10(b). La primera es una
aproximacin francamente por defecto, en cambio, en la segunda tenemos una primer intervalo
con una aproximacin por exceso y otro intervalo por defecto; en conjunto podemos inferir que
la aproximacin resulta ser por exceso.
- Pg. 138 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
(a) Por defecto (b) Por exceso
Figura 6.10: Aproximacin compuesta por rectngulos.
Si hacemos un desarrollo similar con la frmula del trapecio, tomando el mismo paso
(h =
ba
2
), y por ende, los mismos subintervalos, tendremos:
Q
n
(f) =
h
2
[f(a) +f(a +h)] +
h
2
[f(a +h) +f(b)] =
h
2
_
f(a) + 2f
_
a +b
2
_
+f(b)
_
.
La aproximacin obtenida se puede ver en el gura 6.11, que resulta ser una aproximacin
por defecto.
Figura 6.11: Aproximacin compuesta por trapecios.
Al igual que en los casos anteriores, podemos mejorar la aproximacin de la frmula de
Simpson usando la misma tcnica. Si dividimos nuestro intervalo inicial en dos, de manera de
trabajar con dos subintervalos y denimos h =
ba
4
, tendremos la nueva aproximacin:
Q
n
(f) =
h
3
[f(a) +f(a + 2h) + 4 f(a +h)] +
h
3
[f(a + 2h) +f(b) + 4 f(a + 3h)] .
Podemos simplicar la expresin para que nos quede una ms general:
Q
n
(f) =
h
3
[f(a) +f(b) + 2 f(a + 2h) + 4 f(a +h) + 4 f(a + 3h)] .
El resultado de aplicar esta frmula, como se puede ver en la gura 6.12, muestra que la aproxi-
macin obtenida es muy precisa, y que el resultado es muy cercano al exacto.
Podemos generalizar las expresiones de los mtodos para n subintervalos:
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 139 -
6.2. Integracin numrica Anlisis Numrico
Figura 6.12: Aproximacin compuesta por Simpson.
Rectngulos:
Q
n
(f) = h
n1

i=0
f(a +i h),
Q
n
(f) = h
_
n1

i=1
f(a +i h) +f(b)
_
,
con h =
ba
n
;
Trapecios:
Q
n
(f) =
h
2
_
f(a) +f(b) + 2
n1

i=1
f(a +i h)
_
,
tambin con h =
ba
n
; y
Simpson:
Q
n
(f) =
h
3
_
f(a) +f(b) + 2
n1

i=1
f(a + 2i h) + 4
n

i=1
f[a + (2i 1) h]
_
con h =
ba
2n
y n = 1; 2; 3; . . . ; k.
Estas frmulas permiten mejorar la precisin reduciendo el paso h. En particular, en el
caso del mtodo compuesto de Simpson, el error se dene como
E(h) =
b a
180
f
iv
()h
4
= M h
4
, con M =
b a
180
f
iv
(),
con [a; b]. Si bien se trata de una mejora en la precisin, la misma no es demasiado signi-
cativa, pues el orden de convergencia sigue siendo O(h
4
).
Sin embargo, esta metodologa tiene una desventaja. A medida que achicamos el paso
aumentamos notablemente la cantidad de operaciones que debemos realizar, lo que signica
ms tiempo de procesamiento. Esto no siempre es prctico; por ejemplo, dividir el intervalo para
Simpson en 100 subintervalos representa un esfuerzo de clculo que no siempre mejora la precisin
del resultado en el mismo sentido. Puede ocurrir que nuestra representacin numrica nos limite
el tamao del paso h, lo que nos impide anar el paso todo lo necesario. Algo similar puede
ocurrir con las otras frmulas.
Por otro lado, toda vez que querramos anar nuestro clculo reduciendo el paso h, de-
bemos calcular prcticamente todo otra vez, pues salvo los valores de la funcin en los extremos
- Pg. 140 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
del intervalo, el resto de los valores no suelen ser tiles (salvo excepciones). Cambiar el paso no
suele tener costo cero. Busquemos, en consecuencia, otra forma para obtener resultados ms
precisos sin tener achicar el paso, incrementar demasiado las cantidad de operaciones a realizar
o repetir todos los clculos.
Mtodo de Romberg
Como primer paso para desarrollar un mtodo ms eciente que mejore nuestros resulta-
dos, analicemos el error que se comete al aplicar cualquiera de las frmulas de cuadratura vistas
en los puntos anteriores. En forma general, la aproximacin la podemos expresar de la siguiente
forma:
I(f) =
_
b
a
f(x)dx =
_
b
a
n

i=1
f(x
i
)L
i
(x)dx +
_
b
a
f
(n)
[(x)]
n!
n

i=1
(x x
i
)dx
=
n

i=1
c
i
f(x
i
)
. .
Q
n
(f)
+
1
n!
_
b
a
f
(n)
[(x)]
n

i=1
(x x
i
)dx;
y, como vimos al principio, el error est dado por:
E
n
(f) = I(f) Q
n
(f) =
1
n!
_
b
a
f
(n)
[(x)]
n

i=1
(x x
i
)dx.
Para cada uno de los mtodos tenemos:
Rectngulos: E
1
(f) =
ba
2
f
t
() h.
Trapecios: E
2
(f) =
ba
12
f
tt
()h
2
.
Simpson: E
3
(f) =
ba
90
f
iv
()h
4
.
Notemos que las aproximaciones mediante cualquiera de las frmulas vistas se pueden
expresar como:
M = N(h) +K
1
h +K
2
h
2
+K
3
h
3
+. . .
M N(h) = E(h) = K
1
h +K
2
h
2
+K
3
h
3
+. . .
lo que nos permite aplicar el mtodo de extrapolacin de Richardson, visto para diferenciacin
numrica. En el caso particular del mtodo compuesto del trapecio, el error puede expresarse
mediante potencias pares de h
4
:
E(h) = K
1
h
2
+K
2
h
4
+. . . +K
s
h
2s
+O(h
2s+1
).
Esto nos induce a generar una adaptacin de este mtodo a la integracin, que se conoce como
mtodo de Romberg. El desarrollo para obtenerlo es el siguiente. Partamos de la frmula
compuesta del trapecio:
Q
n
(f) =
h
2
_
f(a) +f(b) + 2
n1

i=1
f(a +i h)
_
;
4
Aunque el desarrollo algebraico es bastante laborioso y complejo.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 141 -
6.2. Integracin numrica Anlisis Numrico
y de acuerdo con lo visto, denamos que:
I(f) =
h
2
_
f(a) +f(b) + 2
n1

i=1
f(a +i h)
_

b a
12
h
2
f
tt
();
con a < < b y h =
ba
n
.
Para empezar, obtengamos todas las aproximaciones para m
1
= 1, m
2
= 2, m
3
= 4, . . . , m
n
=
2
n1
, con n positivo. En consecuencia, tendremos un h
k
para cada valor de m
k
que estar denido
como h
k
=
ba
m
k
=
ba
2
k1
. De esta forma podemos expresar la regla del trapecio como:
I(f) =
h
k
2
_
_
f(a) +f(b) + 2
2
k1
1

i=1
f(a +i h
k
)
_
_

b a
12
h
2
k
f
tt
(
k
).
Denamos ahora que:
R
k,1
(h
k
) =
h
k
2
_
_
f(a) +f(b) + 2
2
k1
1

i=1
f(a +i h
k
)
_
_
;
y con esta nueva frmula obtengamos los distintos R
k,1
. En efecto, para k = 1 tenemos que
R
1,1
=
h
1
2
[f(a) +f(b)] =
b a
2
[f(a) +f(b)] ,
con h
1
= b a. Para el caso de k = 2 tenemos que
R
2,1
=
h
2
2
[f(a) +f(b) + 2f(a +h
2
)]
=
b a
4
_
f(a) +f(b) + 2f
_
a +
b a
2
__
=
1
2
_
b a
2
(f(a) +f(b))
. .
R
1,1
+
h
1
..
b a
,2
,2f(a +h
2
)
_
=
1
2
[R
1,1
+h
1
f(a +h
2
)] ,
con h
2
=
b a
2
. Anlogamente, para k = 3, h
3
=
b a
4
, con lo que nos queda
R
3,1
=
h
3
2
_
f(a) +f(b) + 2
_
f(a +h
3
) +f(a + 2h
3
..
h
2
) +f(a + 3h
3
)

_
=
b a
8
f(a) +f(b) + 2f(a +h
2
) + 2 [f(a +h
3
) +f(a + 3h
3
)]
=
1
2
R
2,1
+h
2
[f(a +h
3
) +f(a + 3h
3
)] .
Si generalizamos para todos los k, tenemos que
R
k,1
=
1
2
_
_
_
R
k1;1
+h
k1
2
k2

i=1
f[a + (2i 1)h
k
]
_
_
_
.
- Pg. 142 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
Cada uno de estos R
k,1
son aproximaciones de nuestro valor buscado. Para renar estos
resultados podemos aplicar, ahora s, la extrapolacin de Richardson con q = 4. Por lo tanto
tendremos que:
R
k,2
= R
k,1
+
R
k,1
R
k1;1
4
1
1
;
con k = 2; 3; . . . ; n. Con esta nueva expresin obtenemos un nuevo conjunto de aproximaciones,
cuyo orden de convergencia es proporcional a h
4
, es decir, es similar al mtodo de Simpson.
Si generalizamos para j : 3; 4; . . . ; n, obtenemos la siguiente expresin:
R
k,j
= R
k,j1
+
R
k,j1
R
k1;j1
4
j1
1
;
con k = 2; 3; . . . ; n y j = 2; 3; . . . ; k. Al aplicar este mtodo, generamos una tabla como la 6.2,
donde cada R
k,j
es una mejor aproximacin del resultado, siendo la mejor el R
n,n
.
Tabla 6.2: Mtodo de Romberg
R
1,i
R
2,i
R
3,i
. . . R
n,i
R
1,1
R
2,1
R
2,2
R
3,1
R
3,2
R
3,3
.
.
.
.
.
.
.
.
.
.
.
.
R
n,1
R
n,2
R
n,3
. . . R
n,n
La ventaja de este mtodo es que nos permite calcular una nueva la con slo hacer
una aplicacin de la frmula compuesta del trapecio y luego usar los valores ya calculados para
obtener el resto de los valores de las dems columnas de esa nueva la; no requiere recalcular
todo.
Una cuestin a tener en cuenta al aplicar este mtodo, es que supone que la frmula
compuesta del trapecio permite la aplicacin de la extrapolacin de Richardson, esto es, se debe
cumplir que f(x) C
2(k+1)
[a,b]; si esto no se cumple, no tiene sentido seguir anando el resultado
hasta la iteracin k. Si generalizamos, es evidente que una funcin f(x) que cumpla con tener
innitas derivadas continuas en el intervalo [a; b], es una funcin a la cual resulta muy conveniente
aplicarle el mtodo de Romberg.
6.2.3. Frmulas abiertas de Newton-Cotes
En los puntos anteriores hemos visto las frmulas cerradas para integrar numricamente.
Existen tambin frmulas abiertas de Newton-Cotes. La ms conocida es la del punto medio.
Supongamos que tomamos la frmula del rectngulo pero en lugar de aproximar el rea con
los extremos, tomamos el punto medio del intervalo, es decir, c =
a+b
2
. En ese caso nuestra
aproximacin del rea buscada estar dada por:
Q
n
(f) = (b a
. .
h
) f(c) = h f(c).
La aproximacin efectuada con esta frmula se puede ver en la gura 6.13.
Al igual que en los casos anteriores, se puede desarrollar una frmula compuesta, similar
a la frmula compuesta del rectngulo pero tomando los puntos medios de los subintervalos.
Sin embargo, la idea principal de las frmulas abiertas no est relacionada con tomar
puntos de un intervalo segn un paso uniforme sino en determinar los puntos para efectuar
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 143 -
6.2. Integracin numrica Anlisis Numrico
Figura 6.13: Frmula del punto medio.
la integracin eligindolos de una manera inteligente. Qu signica inteligente? Analicemos
brevemente la frmula del punto medio. Al elegir dicho punto y no los extremos del intervalo,
suponemos que el rectngulo que queda formado aproxima mejor la integral buscada. Si dividimos
este intervalo en varios subintervalos ms pequeos, tendremos la frmula compuesta. As y todo,
estamos algo limitados.
Podramos avanzar en la idea y desarrollar una frmula similar para el mtodo de Sim-
pson, es decir, crear una curva que no pase por los extremos y nos permita obtener una buena
aproximacin. Pero de todas maneras tenemos la misma limitante: debemos trabajar con puntos
equidistantes
5
. Esto puede llevar a que debamos utilizar las frmulas compuestas con muchos
trminos para alcanzar aproximaciones razonables. Veamos en el punto siguiente un mtodo de
integracin que explota la idea de las frmulas abiertas de Newton-Cotes eligiendo puntos en la
curva de manera de optimizar la aproximacin de la integral buscada.
6.2.4. Cuadratura de Gauss
Recordemos la frmula para una cuadratura:
Q
n
(f) =
n

i=1
c
i
f (x
i
) .
Supongamos ahora que elegimos una curva que pase por ciertos puntos y que aproxime
la integral de la funcin dada, usando la frmula de cuadratura. Curvas de ese tipo se ven en la
gura 6.14.
Elegiremos como puntos que optimizan la integral buscada a aquellos en los cuales la
funcin se intersecta con la curva de aproximacin. Entonces, nuestro problema es elegir la curva
ms conveniente. Por ejemplo, en la gura 6.14 elegimos dos, una recta y una parbola. En cada
caso tendremos dos y tres puntos respectivamente que intersectan a la curva. Podramos haber
utilizado una parbola cbica, un polinomio de grado 4, etc.
En los mtodos anteriores, para obtener la integral buscada, hemos utilizado puntos
conocidos o que podamos conocer a partir de denir el paso h. Por ejemplo, en el mtodo del
trapecio utilizamos dos puntos para aproximar nuestra integral, x
1
y x
2
, de manera que nuestra
aproximacin queda de la siguiente manera:
I(f) =
h
2
[f(x
1
) +f(x
2
)] .
5
Recordemos que la base de la integracin numrica es la interpolacin polinmica, que se vuelve inestable
cuando los puntos usados estn separados uno de otro en forma equidistante.
- Pg. 144 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
Figura 6.14: Cuadratura usando curvas de aproximacin.
De la frmula de cuadratura podemos extraer que, si denimos que h = b a, donde [a; b] es
nuestro intervalo de integracin, para el caso del mtodo del trapecio tendremos que:
x
1
= a, x
2
= b, c
1
= c
2
=
b a
2
.
Supongamos ahora que denimos un intervalo jo de integracin, por ejemplo, el [1,1].
En vez de jar los valores x
i
, armemos una aproximacin de nuestra integral de manera tal
que dispongamos de ms variables para aproximar nuestra integral. En esta nueva situacin
debemos obtener para ese intervalo los puntos x
i
y los coecientes c
i
para nuestra frmula de
cuadratura, esto es, debemos buscar los puntos x
1
; x
2
; . . . ; x
n
y los coecientes c
1
; c
2
; . . . ; c
n
que
optimicen nuestra aproximacin. En consecuencia, tenemos 2n incgnitas que debemos obtener.
Si recordamos que un polinomio de grado 2n 1 tiene 2n coecientes (por ejemplo, un
polinomio de tercer grado tiene la forma a
0
+ a
1
x + a
2
x
2
+ a
3
x
3
), podramos decir que hallar
esos parmetros para nuestra frmula de cuadratura es equivalente a obtener los coecientes de
ese polinomio de grado 2n 1.
Por ejemplo, si tomamos aproximamos f(x) con una parbola cbica, tendremos que:
_
b
a
f(x) dx c
1
f(x
1
) +c
2
f(x
2
) =
_
b
a
_
a
0
+a
1
x +a
2
x
2
+a
3
x
3
_
dx.
Notemos que debe cumplirse que
c
1
_
a
0
+a
1
x
1
+a
2
x
2
1
+a
3
x
3
1
_
+c
2
_
a
0
+a
1
x
2
+a
2
x
2
2
+a
3
x
3
2
_
=
_
b
a
_
a
0
+a
1
x +a
2
x
2
+a
3
x
3
_
dx,
de lo que resulta un sistema de ecuaciones no lineales:
c
1
+c
2
=
_
b
a
dx = b a
c
1
x
1
+c
2
x
2
=
_
b
a
x dx =
2
b
2
a
2
c
1
x
2
1
+c
2
x
2
2
=
_
b
a
x
2
dx =
b
3
a
3
3
c
1
x
3
1
+c
2
x
3
2
=
_
b
a
x
3
dx =
b
4
a
4
4
.
Si obtenemos los valores de c
i
y de x
i
,y los reemplazamos en la funcin original, podemos calcular
nuestra integral.
Gauss deni estos polinomios para aproximar la integral, en el intervalo [1; 1] y obtuvo
los c
i
y x
i
para la cantidad de puntos que se deseen utilizar o, lo que es lo mismo, del grado del
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 145 -
6.2. Integracin numrica Anlisis Numrico
polinomio de aproximacin. Estos polinomios son ortogonales y conocidos como polinomios de
Legendre, y son los siguientes:
P
0
(x) = 1 P
1
(x) = x
P
2
(x) =
1
2
(3x
2
1) P
3
(x) =
1
2
(5x
3
3x)
P
k
(x) =
1
2
k
k!
d
k
dx
k
(x
2
1)
k
.
La raz de cada polinomio resultan ser los puntos x
i
. Con stos y la ayuda de un polinomio
interpolante de Lagrange integrado en el intervalo [1; 1], obtenemos los coecientes c
i
. (En [2]
se pueden ver ms detalles de cmo obtener los coecientes de peso.)
En la tabla 6.3 se dan algunos los valores de las races y los coecientes, de acuerdo con
la cantidad de puntos que se utilicen para aproximar la integral.
Tabla 6.3: Races y coecientes de la cuadratura de Gauss-Legendre
n x
i
c
i
1 x
1
= 0,0000000000 c
1
= 2,0000000000
2 x
1
=
1

3
= 0,5773502692 c
1
= 1,0000000000
x
2
=
1

3
= 0,5773502692 c
2
= 1,0000000000
3 x
1
= 0,7745966692 c
1
= 0,5555555556
x
2
= 0,0000000000 c
2
= 0,8888888889
x
3
= 0,7745966692 c
3
= 0,5555555556
4 x
1
= 0,8611363116 c
1
= 0,3478548451
x
2
= 0,3399810436 c
2
= 0,6521451549
x
3
= 0,3399810436 c
3
= 0,6521451549
x
4
= 0,8611363116 c
4
= 0,3478548451
5 x
1
= 0,9061798459 c
1
= 0,2369268850
x
2
= 0,5384693101 c
2
= 0,4786286705
x
3
= 0,0000000000 c
3
= 0,5688888889
x
4
= 0,5384693101 c
4
= 0,4786286705
x
5
= 0,9061798459 c
5
= 0,2369268850
Este mtodo es muy til cuando lo que queremos aproximar son integrales de funciones
polinmicas, puesto que los resultados son exactos cuando g 2n 1, donde g es el grado del
polinomio a integrar y n la cantidad de puntos de Gauss. Por ejemplo, con n = 2, es decir, con
dos puntos de Gauss, podemos aproximar cualquier integral de polinomios cuyo grado sea menor
o igual a tres, pues se cumple que g = 3 2 2 1.
Si el intervalo de integracin no es [1; 1], basta con hacer un cambio de coordenadas. Si
tenemos la siguiente integral:
I(f) =
_
b
a
f(x) dx,
debemos hacer la siguiente transformacin lineal para poder aproximar con cuadratura de Gauss:
x =
b a
2
t +
b +a
2
; I(f) =
b a
2
_
1
1
f(t) dt.
Finalmente, una cuestin a tener en cuenta es el error cometido al aproximar una integral
mediante cuadratura de Gauss. La expresin del error el intervalo [1; 1] est dado por
E =
2
2n+1
(n!)
4
(2n + 1)[(2n)!]
2
f
2n
(),
- Pg. 146 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
donde n es el nmero de puntos utilizados y [1,1]. Si ampliamos el mtodo al intervalo
[a; b], tenemos que el error est dado por
E =
(b a)
2n+1
(n!)
4
(2n + 1)[(2n)!]
2
f
2n
(),
con [a,b]. Vemos que en ambos casos el error cometido es proporcional a la derivada de
orden 2n. Por ejemplo, si n = 2, entonces el error cometido es proporcional a la derivada cuarta
(f
iv
()), pues tenemos
E =
(b a)
22+1
(2!)
4
(2 2 + 1)[(2 2)!]
2
f
22
() =
(b a)
5
(2!)
4
5(4!)
2
f
iv
().
Esto conrma que con dos puntos de Gauss (n = 2) obtenemos una integral exacta para
polinomios de grado 3 o menor, pues en esos casos se cumple que f
iv
(x) = 0 para cualquier x,
por lo tanto, tambin para f
iv
() con [a,b].
Al igual que para los mtodos anteriores, podemos pensar en un mtodo compuesto para
Gauss. Efectivamente, si dividimos el intervalo [a; b] en subintervalos ms pequeos, podemos
utilizar la cuadratura de Gauss en esos subintervalos, con la correspondiente transformacin
lineal, e inclusive usar un aproximacin con n no mayor a 3, con excelentes resultados.
Como hemos dicho, el mtodo es muy bueno para aproximar integrales sobre todo de
funciones polinmicas. El mtodo pierde practicidad si no conocemos la funcin (por ejemplo,
slo conocemos puntos), y si debemos programar una base de datos con todas las races de los
polinomios de Legendre con sus coecientes de peso.
6.2.5. Integrales mltiples
Al igual que para el caso de integrales simples, podemos calcular en forma numrica
integrales mltiples, en dos o tres dimensiones. Tomemos la siguiente integral:
__
A
f(x; y)dA,
donde A es una regin rectangular en el plano tal que
A = (x; y)[a x b; c y d.
Entonces, podemos escribir la integral de arriba como
_
d
c
__
b
a
f(x; y)dx
_
dy.
Integremos respecto a x usando el mtodo del trapecio. De esta manera obtendremos
_
b
a
f(x; y)dx
b a
2
[f(a; y) +f(b; y)] .
Reemplacemos esta expresin en la integral doble y hagamos lo mismo pero respecto a y.
Entonces nos queda que
_
d
c
__
b
a
f(x; y)dx
_
dy
_
d
c
b a
2
[f(a; y) +f(b; y)] dy

b a
2
_
d
c
[f(a; y) +f(b; y)] dy

b a
2
__
d
c
f(a; y)dy +
_
d
c
f(b; y)dy
_
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 147 -
6.2. Integracin numrica Anlisis Numrico
Si aplicamos a cada integral la regla del trapecio, nos queda
_
d
c
f(a; y)dy
d c
2
[f(a; c) +f(a; d)]
_
d
c
f(b; y)dy
d c
2
[f(b; c) +f(b; d)] .
Al reemplazar estas dos expresiones en la general nos queda que
_
d
c
_
b
a
f(x; y) dx dy
(b a)(d c)
4
[f(a; c) +f(a; d) +f(b; c) +f(b; d)] .
En denitiva, podemos obtener una aproximacin de una integral mltiple, en este caso
doble, mediante la aplicacin del mtodo del trapecio en dos dimensiones. Tambin aplicando
el mtodo de Simpson podemos obtener una aproximacin de dicha integral. En este caso, la
expresin es
_
d
c
_
b
a
f(x; y) dx dy
h
x
h
y
9
_
f(a; c) +f(a; d) +f(b; c) +f(b; d) +
+4
_
f
_
a;
c +d
2
_
+f
_
b;
c +d
2
_
+f
_
a +b
2
; c
_
+f
_
a +b
2
; d
__
+
+16
_
f
_
a +b
2
;
c +d
2
___
,
donde h
x
=
ba
2
y h
y
=
dc
2
. Si reemplazamos esto ltimo en la expresin general y adems
denimos x
0
= a, x
1
=
a+b
2
,x
2
= b, y
0
= c, y
1
=
c+d
2
e y
2
= d, tenemos que
_
d
c
_
b
a
f(x; y) dx dy
(b a)(d c)
36
f(x
0
; y
0
) +f(x
0
; y
2
) +f(x
2
; y
0
) +f(x
2
; y
2
) +
+4 [f(x
0
; y
1
) +f(x
1
; y
0
) +f(x
1
; y
2
) +f(x
2
; y
1
) + 4f(x
1
; y
1
)].
El error cometido por aproximar la integral mediante esta frmula est dado por:
E
T
=
(b a)(d c)
12
_
h
2
x

2
f(

; )
x
2
+h
2
y

2
f(

; )
y
2
_
(Mtodo del trapecio),
E
S
=
(b a)(d c)
90
_
h
4
x

4
f(

; )
x
4
+h
4
y

4
f(

; )
y
4
_
(Mtodo de Simpson),
que, como podemos observar, son muy parecidos a los vistos para el caso de integrales simples.
Estos mtodos tambin se pueden modicar para obtener las frmulas compuestas, simi-
lares a las vistas anteriormente. (Para ms detalles, vase [2].)
As como hemos aplicado los mtodos de trapecio y de Simpson, lo mismo podemos hacer
con la cuadratura de Gauss. Si aplicamos el mismo razonamiento para integrar segn x tendremos
que
_
b
a
f(x; y) dx
b a
2
n

i=1
c
i
f(x
i
; y).
- Pg. 148 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 6. Diferenciacin e integracin numrica
Si hacemos lo mismo respecto de y, obtendremos
_
d
c
_
b
a
f(x; y) dx dy
_
d
c
b a
2
n

i=1
c
i
f(x
i
; y) dy

b a
2
n

i=1
_
d
c
c
i
f(x
i
; y) dy

b a
2
n

i=1
d c
2
m

j=1
c
i
c
j
f(x
i
; y
j
)

b a
2
d c
2
n

i=1
m

j=1
c
i
c
j
f(x
i
; y
j
)

(b a)(d c)
4
n

i=1
m

j=1
c
i
c
j
f(x
i
; y
j
),
con
x
i
=
b a
2
t
i
+
b +a
2
y
j
=
d c
2
t
j
+
d +c
2
,
donde t
i
y t
j
son las races de los polinomios de Legendre, y c
i
y c
j
, los coecientes de peso.
Por ejemplo, si tomamos n = m = 2 tenemos que t
1
=
1

3
, t
2
=
1

3
y c
1
= c
2
= 1, y la
aproximacin nos queda como
_
d
c
_
b
a
f(x; y) dx dy
(b a)(d c)
4
[f(x
1
; y
1
) +f(x
1
; y
2
) +f(x
2
; y
1
) +f(x
2
; y
2
)] .
con
x
1
=
b a
2
1

3
+
b +a
2
x
2
=
b a
2
1

3
+
b +a
2
,
y
y
1
=
d c
2
1

3
+
d +c
2
y
2
=
d c
2
1

3
+
d +c
2
.
Podemos ver que con este mtodo solamente tenemos que evaluar la funcin a integrar
en cuatro puntos, en cambio, con el mtodo de Simpson debemos evaluar la misma funcin en
nueve puntos. Este mtodo es muy utilizado por el Mtodo de los Elementos Finitos para obtener
integrales dobles.
6.3. Notas nales
La integracin numrica es uno de los mtodos numricos ms utilizados en la ingeniera
y en la ciencia en general. Inclusive, muchos programas para computadoras hacen usos de los
algoritmos vistos en este captulo. Por ejemplo, el MatLab
R _
aplica el mtodo de Simpson en su
funcin quad que calcula integrales denidas, en tanto que el Mathcad
R _
, aplica el mtodo de
Romberg, entre otros.
Por otro lado, uno de los mtodos numricos ms utilizados en el anlisis estructural,
el Mtodo de los Elementos Finitos, aplica la integracin numrica en forma sistemtica para
obtener la matriz de rigidez de un sistema esttico. Ms an, para ciertos casos especiales hace uso
exclusivo de la cuadratura de Gauss, como es el caso de la integracin en una y dos dimensiones
para elementos lineales o de supercie (elementos de barra, de viga, de estado plano y de placa)
e inclusive para determinados tipos de elementos se ayuda con una integracin reducida para
evitar ciertos problemas del modelo numrico.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 149 -
6.3. Notas nales Anlisis Numrico
- Pg. 150 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
Captulo 7
Ecuaciones diferenciales ordinarias
7.1. Ecuaciones diferenciales ordinarias con valores iniciales
7.1.1. Introduccin
Muchos de los problemas que debemos resolver como ingenieros se pueden representar
mediante ecuaciones diferenciales ordinarias, que son aquellas que estn expresadas en derivadas
totales
1
. Como ejemplos de este tipo de ecuaciones tenemos las siguientes:
El equilibrio de una viga sometida a exin (
dM
dx
+p = 0);
Un circuito del tipo LR (L
di
dt
+R i = V );
La transmisin del calor unidimensional (q = kA
dT
dx
)
2
.
As, buena parte de los mtodos que empleamos para atacar un determinado problema
resultan ser soluciones analticas de ecuaciones diferenciales que se aplican en forma metdica y
que se han obtenido a partir de ciertas condiciones, que pueden ser iniciales o de borde. Un caso
bien conocido es la resolucin de sistemas hiperestticos en Esttica (tambin los isostticos),
en los que se aplican mtodos prcticos y numricos (como el mtodo de Cross) derivados de las
soluciones anliticas.
Del conjunto de ecuaciones diferenciales empezaremos por las ms sencilla, que son aque-
llas que involucran a la primera derivada, de las que basta conocer las condiciones iniciales. Si
bien en cualquier curso de Anlisis Matemtico se aprenden mtodos analticos para obtener las
soluciones de dichas ecuaciones, sabemos que no siempre son aplicables o no siempre obtendremos
soluciones analticas. Por ejemplo, y volviendo al caso de estructuras hiperestticas, no resulta
sencillo resolver la ecuacin diferencial para el caso de una carga concentrada. Es en estos casos
cuando los mtodos numricos se convierten en la nica herramienta para obtener algn tipo de
solucin aproximada que nos permita resolver el problema.
Existen muchos ejemplos de ecuaciones diferenciales con condiciones iniciales, entre los
cuales podemos mencionar los siguientes:
Dinmica de poblaciones. El economista ingls Thomas Malthus propuso el siguiente
modelo matemtico para denir el crecimiento demogrco:
dP
dt
= kP;
1
Para una mejor comprensin del tema, ver [19].
2
En realidad, se trata de un sistema de ecuaciones diferenciales, pues q =
dQ
dt
)
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 151 -
7.1. Ecuaciones diferenciales ordinarias con valores iniciales Anlisis Numrico
con k > 0, es decir, que la tasa de crecimiento de la poblacin es proporcional a la poblacin
total. (Este modelo en realidad no es muy preciso, pues deja de lado otros factores como la
inmigracin, por ejemplo, pero en su momento daba una buena aproximacin al problema
demogrco.)
Desintegracin radiactiva. El siguiente modelo matemtico es el que se aplica para el
estudio de la desintegracin radiactiva:
dA
dt
= kA;
en este caso, con k < 0. Este modelo es la base del mtodo de datacin por Carbono 14,
usado en muchas disciplinas cientcas.
Ley de Newton del enfriamiento o calentamiento. Isaac Newton propuso la siguiente
ley matemtica para el cambio de temperatura:
dT
dt
= k(T T
m
);
con k < 0, donde T
m
es la temperatura del medio, y T la del objeto analizado.
Ley de Torricceli. El drenado de un tanque cumple con el siguiente modelo:
dV
dt
= A
h
_
2gh.
Si denimos V = A
w
h, entonces la expresin anterior se puede escribir como
dh
dt
=
A
h
A
w
_
2gh.
La mayora de los libros toma el caso del pndulo como el ejemplo tradicional de las
ecuaciones diferenciales ordinarias con valores iniciales. El modelo matemtico que representa
este fenmeno est dado por:
d
2

dt
2
=
g
L
sen(),
donde g es la aceleracin de la gravedad, L, la longitud del pndulo, y , el ngulo del pndulo
respecto de la vertical. Este ejemplo suele linealizarse para el caso de ngulos muy pequeos,
pues se cumple que sen() = tan() = , y la ecuacin diferencial queda
d
2

dt
2
=
g
L
,
modelo que en realidad est representado con una ecuacin diferencial de segundo orden.
Otro ejemplo de la ingeniera civil en el mbito del anlisis estructural es la ecuacin del
esfuerzo normal en una barra, que se dene como
dN
dx
= t(x);
donde t(x) es una carga uniformemente distribuida en el eje de la barra.
En lo que sigue veremos, primero, las condiciones para que la solucin de una ecuacin
diferencial ordinaria tenga solucin nica, y en segundo trmino, varios mtodos para resolver
numricamente este tipo de ecuaciones.
- Pg. 152 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
7.1.2. Condicin de Lipschitz
Una ecuacin diferencial ordinaria con valor inicial est denida de la siguiente manera:
dy
dt
= f(t,y) con a t b e y(a) = y
0
.
Una funcin f(t,y) D 1
2
, con D convexo, cumple con la condicin de Lipschitz si
satisface que
[f(t,y
1
) f(t,y
2
)[ L[y
1
y
2
[ ,
o

f(t,y)
y

L,
para todo (t,y) D.
Para que una ecuacin diferencial tenga solucin nica debe satisfacer el siguiente teore-
ma.
Teorema 7.1. Sea f(t,y) continua en D, tal que D = (t,y)[a t b; y +. Si
f(t,y) satisface la condicin de Lipschitz en D en la variable y, entonces el problema de valor
inicial
dy
dt
= f(t,y) con a t b e y(a) = y
0
tiene solucin nica y(t) para a t b.
Por lo tanto, toda ecuacin diferencial con valor inicial que cumpla con la condicin de
Lipschitz tiene solucin nica.
7.1.3. Problema bien planteado
Un problema de valor inicial del tipo
dy
dt
= f(t,y) con a t b e y(a) = y
0
se dice bien planteado si:
El problema tiene solucin nica (cumple con la condicin de Lipschitz);
Para cualquier > 0, existe una constante positiva k() con la propiedad de que siempre
que [
0
[ < , y un (t) que sea continuo, con (t) < en [a; b], el problema tiene solucin
nica z(t); es decir,
dz
dt
= f(t,z) +(t) con a t b e z(a) = y
0
+
0
,
con
[z(t) y(t)[ < k() ,
para toda a t b.
En denitiva, un problema est bien planteado si una perturbacin (un (t)) del problema
original no cambia la esencia del mismo. El siguiente teorema dene la condicin de problema
bien planteado.
Teorema 7.2. Sea D = (t,y)[a t b; y +. Si f(t,y) es continua y satisface la
condicin de Lipschitz en la variable y en el conjunto D, entonces el problema de valor inicial
dy
dt
= f(t,y) con a t b e y(a) = y
0
se dice bien planteado.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 153 -
7.1. Ecuaciones diferenciales ordinarias con valores iniciales Anlisis Numrico
7.1.4. Mtodos de Euler explcito e implcito
Un vez denidas las condiciones que debe cumplir el problema de valor inicial para tener
solucin nica, nos ocuparemos de los mtodos para resolverlo.
Para empezar, tomemos la formulacin del problema
dy
dt
= f(t,y).
Desarrollamos por Taylor la funcin y(t), desconocida, en un entorno [t; t+h] para obtener
y(t +h):
y(t +h) = y(t) +y
t
(t) h +y
tt
(t)
h
2
2
+. . . .
Como y
t
(t) = f(t,y), entonces escribamos la expresin como sigue:
y(t +h) = y(t) +f(t,y) h +y
tt
(t)
h
2
2
+. . . .
Dado que nuestro entorno de la solucin est dado por [a; b], denamos el paso h como
h =
b a
N
, donde N es el nmero de intervalos. Ahora denamos que t
i+1
= t
i
+h. As, nuestra
expresin anterior queda:
y(t
i+1
) = y(t
i
) +h f[t
i
; y(t
i
)] +y
tt
(t
i
)
h
2
2
+. . . .
Si truncamos en la segunda derivada, nos queda
y(t
i+1
) = y(t
i
) +h f[t
i
; y(t
i
)] +y
tt
(
i
)
h
2
2
,
con
i
[t
i
; t
i+1
].
Puesto que lo que buscamos es una aproximacin de y(t
i+1
), deninmosla como w
i+1
,
sin considerar el trmino de error. Entonces nuestra expresin queda de la siguiente forma:
w
i+1
= w
i
+h f(t
i
; w
i
),
para i = 0; 1; . . . ; N 1. Este mtodo se conoce como mtodo de Euler explcito.
Supongamos ahora que desarrollamos y(t) en t
i
+h para obtener y(t
i
). Entonces tendremos
que
y(t
i
) = y(t
i
+h) y
t
(t
i
+h) h +y
tt
(t
i
+h)
h
2
2
+. . . ;
y, como y
t
(t
i
+h) = f[t
i
+h; y(t
i
+h)], nos queda que
y(t
i
) = y(t
i
+h) f[t
i
+h; y(t
i
+h)] h +y
tt
(t
i
+h)
h
2
2
+. . . .
Nuevamente, como t
i+1
= t
i
+h, y despejando y(t
i+1
) limitando otra vez la expresin a la segunda
derivada, tenemos que
y(t
i+1
) = y(t
i
) +h f[t
i+1
; y(t
i+1
)] y
tt
(
i
)
h
2
2
,
con
i
[t
i
; t
i+1
].
En forma anloga al mtodo anterior, lo que en realidad buscamos es una aproximacin
de y(t
i+1
), por lo tanto tendremos la siguiente expresin:
w
i+1
= w
i
+h f(t
i+1
; w
i+1
),
para i = 0; 1; . . . ; N 1. Este mtodo se conoce como mtodo de Euler implcito.
- Pg. 154 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
7.1.5. Mtodo predictor-corrector de Euler
Existe otra forma de salvar esta situacin. Supongamos que planteamos el siguiente sis-
tema:
w

i+1
= w
i
+h f(t
i
; w
i
)
w
i+1
= w
i
+h f(t
i
; w

i+1
).
La idea es obtener una primera aproximacin de w
i+1
con el mtodo explcito, que llamaremos
w

i+1
, para luego usarla en el mtodo implcito y obtener una nueva aproximacin de w
i+1
, que
corrige el valor antes obtenido. La combinacin de estos dos mtodos se conoce como mtodo
predictor-corrector de Euler
3
.
Una forma de mejorar la aproximacin con este mtodo es mediante iteraciones de la
frmula correctora. El mtodo queda de la siguiente forma:
w

i+1
= w
i
+h f(t
i
; w
i
)
w
0
i+1
= w
i
+h f(t
i
; w

i+1
)
w
n+1
i+1
= w
i
+h f(t
i
; w
n
i+1
),
iteracin que podemos truncar cuando

w
n+1
i+1
w
n
i+1

< TOL
4
.
Si bien los mtodos de Euler son bastante sencillos de implementar, los resultados que
se obtienen no son buenas aproximaciones de nuestro problema. Se los usa solamente como
introduccin a los mtodos numricos y para el anlisis del error.
7.1.6. Error cometido al resolver una ecuacin diferencial
Para analizar el error cometido, consideremos estos dos lemas:
1. Para toda x 1 y para cualquier m positiva, tenemos que 0 (1 +x)
m
e
mx
.
2. Si s y t son nmeros reales positivos, a
i

k
i=0
es una sucesin que satisface a
0
t/s, y se
cumple que
a
i+1
(1 +s)a
i
+t, para cada i = 0; 1; 2; . . . ; k,
entonces
a
i+1
e
(i+1)s
_
a
0
+
t
s
_

t
s
.
A partir de estos dos lemas se tiene el siguiente teorema.
Teorema 7.3. Sea f(t,y) continua, que satisface la condicin de Lipschitz con la constante L en
D = (t,y)[a t b; y +,
y existe una constante M, tal que [y
tt
(t)[ M para toda t [a; b]. Si y(t) es la solucin nica
del problema de valor inicial dado por
dy
dt
= f(t,y) con a t b e y(a) = y
0
,
y los w
0
, w
1
, . . . , w
N
son las aproximaciones a nuestra funcin, obtenidas por el mtodo de Euler,
entonces se cumple que
[y(t
i
) w
i
[
h M
2L
_
e
L(t
i
a)
1
_
.
La demostracin de este teorema se puede ver [2].
3
Este mtodo no suele estar incluido en los libros de texto, posiblemente porque no mejora la aproximacin de
una manera signicativa. Una excepcin es [11].
4
En [11] hay una demostracin para algunos casos particulares, en la cual alcanza con dos iteraciones, sin
necesidad de analizar si w
n+1
i+1
w
n
i+1
< TOL.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 155 -
7.1. Ecuaciones diferenciales ordinarias con valores iniciales Anlisis Numrico
Orden de convergencia
El error que acabamos de analizar es el error global, pues hemos estimado una cota del
error entre el valor real (o exacto) y la aproximacin por un mtodo numrico. Sin embargo, los
mtodos numricos suelen denirse segn el error local, es decir, el error entre dos iteraciones
sucesivas. Este error, en el mtodo de Euler, est dado por:
e
L
=
y(t
i+1
y(t
i
)
h
f[t
i
; y(t
i
)].
Como vimos, el mtodo explcito de Euler se puede obtener a partir de una desarrollo de
Taylor, del cual resulta que
y(t
i+1
) = y(t
i
) +hy
t
(t
i
) +
h
2
2
y
tt
(t
i
) +. . . = y(t
i
) +hf[t
i
; y(t
i
)] +f
t
[t
i
; y(t
i
)]
h
2
2
+. . . ;
por lo tanto
y(t
i+1
) y(t
i
)
h
f[t
i
; y(t
i
)] =
h
2
f
t
[; y()]
e
L
=
h
2
f
t
[; y()],
con [t
i
; t
i+1
], lo que muestra que el error local del mtodo de Euler es O(h), es decir, tiene un
orden de convergencia lineal. Con un anlisis similar podemos demostrar que el mtodo implcito
es del mismo orden de convergencia. Y dado que ambos mtodos son de convergencia lineal, lo
mismo podemos decir del predictor-corrector.
7.1.7. Mtodos de Taylor de orden superior
Vimos que el mtodo de Euler es muy fcil de aplicar pero poco preciso. Una forma de
mejorarlo es partiendo otra vez del desarrollo por Taylor pero ampliando la cantidad de trminos
de la serie:
y(t
i+1
) = y(t
i
) +h y
t
(t
i
) +
h
2
2!
y
tt
(t
i
) +
h
3
3!
y
ttt
(t
i
) +. . . +
h
n
n!
y
(n)
(t
i
) +
h
n+1
(n + 1)!
y
(n+1)
().
Como adems tenemos que
d y(t)
dt
= y
t
(t) = f(t; y), y(t
i
) = y
i
y y(t
i+1
) = y
i+1
,
el desarrollo por Taylor lo podemos escribir de la siguiente manera:
y
i+1
= y
i
+h f(t
i
; y
i
) +
h
2
2!
f
t
(t
i
; y
i
) +
h
3
3!
f
tt
(t
i
; y
i
) +. . . +
h
n
n!
f
(n1)
(t
i
; y
i
) +
h
n+1
(n + 1)!
f
(n)
(; y()).
Es decir, podemos armar un esquema para obtener los y
i+1
a partir de un polinomio de
Taylor, calculando las derivadas totales de la funcin f(t; y). En forma genrica, una solucin
aproximada por los polinomios de Taylor la podemos expresar as:
y
i+1
= y
i
+h T
n)
. (t
i
; y
i
) +
h
n+1
(n + 1)!
f
(n)
(; y()),
donde T
n)
(t
i
; y
i
) representa a los trminos del polinomio hasta la derivada de orden n de y(t) o
de orden n 1 de f(t,y), o sea:
T
n)
. (t
i
; y
i
) = f(t
i
; y
i
) +
h
2!
f
t
(t
i
; y
i
) +
h
2
3!
f
tt
(t
i
; y
i
) +. . . +
h
n1
n!
f
(n1)
(t
i
; y
i
),
- Pg. 156 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
o
T
n)
. (t
i
; y
i
) =
n

i=1
h
(i1)
i!
f
(i1)
(t
i
,y
i
).
Por ejemplo, para n = 2 tenemos:
T
2)
(t
i
; y
i
) = f(t
i
; y
i
) +
h
2
f(t; y)
t

t
i
;y
i
+
h
2
f(t; y)
y
f(t; y)

t
i
;y
i
.
Como hemos visto, el error cometido al resolver la ecuacin diferencial aplicando este
esquema es el primer trmino que dejamos de considerar en T
n)
(t,y):
E =
h
n+1
(n + 1)!
f
(n)
[; y()] con [t
i
; t
i+1
],
y como el error local est dado por
e
L
=
y(t
i+1
) y(t
i
)
h
f[t
i
; y(t
i
)];
para este caso queda denido como
e
L
=
h
n
(n + 1)!
f
(n)
[
i
; y(
i
)],
con [t
i
; t
i+1
]. Estos mtodos se conocen como mtodos de Taylor de orden superior, pues
podemos denir el orden de convergencia igual a n, siempre que al menos f(t; y) C
n1
[a; b].
Podemos ver que el mtodo de Euler es un caso particular del mtodo de Taylor para n = 1.
(Podramos armar mtodos de Taylor de orden superior implcitos, aunque de escasa utilidad,
dado que deberamos transformar algebraicamente el algoritmo para obtener una formulacin
explcita.)
7.1.8. Mtodos de Runge-Kutta
Los mtodos de Taylor resultan muy instructivos para entender cmo mejorar nuestras
aproximaciones, pero muy poco prcticos al momento de implementar un algoritmo de clculo. El
principal escollo para esto es la necesidad de calcular las derivadas de y(t) (o de f(t,y)), algo que
no siempre es fcil de hacer. Eso obligara en muchos casos a programar algoritmos particulares
segn el problema que enfrentemos, lo que le quita generalidad.
Un segundo problema est relacionado directamente con la facilidad para obtener las
derivadas de la funcin f(t; y). An cuando se pueda probar que f(t,y) C
n1
[a; b], puede ser
muy complicado obtener las derivadas de mayor orden, perdindose la capacidad de obtener
rpidamente una aproximacin de la solucin buscada.
Es por eso que existen otros mtodos para aproximar la solucin de una ecuacin diferen-
cial que consiguen rdenes de convergencia similares a los de Taylor pero que no requieren la
obtencin de las derivadas de la funcin f(t; y). Son los denominados mtodos de Runge-Kutta.
Para poder construir los mtodos de Runge-Kutta, nos basaremos en el siguiente teorema.
Teorema 7.4. Sea f(t; y) C
n+1
D con D = (t; y)[a t b, c y d, y sea (t
0
; y
0
) D.
Entonces, para toda (t; y) D, existe [t
0
; t] y [y
0
; y] con
f(t; y) = P
n
(t; y) +R
n
(t; y),
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 157 -
7.1. Ecuaciones diferenciales ordinarias con valores iniciales Anlisis Numrico
tal que
P
n
(t; y) = f(t
0
; y
0
) +
_
(t t
0
)
f(t
0
; y
0
)
t
+ (y y
0
)
f(t
0
; y
0
)
y
_
+
+
_
(t t
0
)
2
2!

2
f(t
0
; y
0
)
t
2
+ (t t
0
)(y y
0
)

2
f(t
0
; y
0
)
t y
+
+
(y y
0
)
2
2!

2
f(t
0
; y
0
)
y
2
_
+. . . +
+
_
_
1
n!
n

j=0
_
n
j
_
(t t
0
)
nj
(y y
0
)
j

n
f(t
0
; y
0
)
t
nj
y
j
_
_
,
y
R
n
(t,y) =
1
(n + 1)!
n+1

j=0
_
n + 1
j
_
(t t
0
)
n+1j
(y y
0
)
j

n+1
f(; )
t
n+1j
y
j
.
A la funcin P
n
(t; y) se la denomina polinomio de Taylor de grado n en dos variables
para la funcin f(t; y) alrededor de (t
0
; y
0
), en tanto que R
n
(t; y) es el residuo o error asociado
a P
n
(t; y).
Esto es necesario pues los mtodos de Runge-Kutta se basan en aproximar el polinomio
de Taylor para una variable mediante polinomios de Taylor de dos variables.(Para ms detalles
de cmo se obtiene esta aproximacin, ver [2].)
Existen varios mtodos de Runge-Kutta que se clasican segn del orden de convergencia.
Los ms sencillos son los de orden 2, los que obtenemos a partir de del mtodo de Taylor de
segundo orden si hacemos lo siguiente:
f(t +; y +) = f(t; y) +
h
2
f(t; y)
t
+
h
2
f(t; y)
y
f(t; y).
Si desarrollamos el primer miembro otra vez por Taylor, tenemos:
f(t +; y +) = f(t+; y+) +
f(t,y)
t
+
f(t,y)
y
+. . . .
Ahora igualemos a
1
f(t +,y +) con T
2)
(t,y). Los que nos queda es lo siguiente:
a
1
f(t+; y+) +a
1

f(t,y)
t
+a
1

f(t,y)
y
= f(t; y) +
h
2
f(t; y)
t
+
h
2
f(t; y)
y
f(t; y).
Si igualamos los trminos equivalentes de cada miembro obtenemos:
a
1
f(t,y) = f(t,y) a
1
= 1
a
1

f(t,y)
t
=
h
2!
f(t,y)
t
=
h
2
a
1

f(t,y)
y
=
h
2
f(t,y)
y
f(t,y) =
h
2
f(t,y).
As obtenemos el equivalente al trmino T
2)
(t
i
,y
i
) de nuestra aproximacin por polino-
mios de Taylor, sin calcular las derivadas de f(t,y):
T
2)
(t
i
,y
i
) = f
_
t
i
+
h
2
,y
i
+
h
2
f(t
i
,y
i
)
_
,
- Pg. 158 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
y, entonces, nuestra aproximacin por mtodos de Taylor de orden superior podemos escribirla
as:
y
i+1
y
i
+h T
2)
f(t,y)
y
i+1
y
i
+h f
_
t
i
+
h
2
,y
i
+
h
2
f(t
i
,y
i
)
_
w
i+1
= w
i
+h f
_
t
i
+
h
2
,w
i
+
h
2
f(t
i
,w
i
)
_
,
para i = 0; 1; 2; . . . ; n 1. Este mtodo se conoce como Mtodo del Punto Medio.
Si operamos de forma similar, pero proponiendo que a
1
f(t,y) +a
2
f(t
i
+, y
i
+) =
T
2)
(t
i
,y
i
), podemos obtener otros mtodos de orden 2. Los ms conocidos son:
1. Mtodo de Euler modicado. Tambin llamado Mtodo de Euler mejorado, su formu-
lacin es
w
0
= y
0
w
i+1
= w
i
+
h
2
_
f(t
i
; w
i
) +f[t
i
+h; w
i
+hf(t
i
; w
i
)]
_
,
cuando a
1
= a
2
=
1
2
, = h y = h f(t
i
,w
i
), para i = 0; 1; 2; . . . ; n 1.
2. Mtodo de Heun. Su formulacin es
w
0
= y
0
w
i+1
= w
i
+
h
4
_
f
_
t
i
; w
i
_
+3f
_
t
i
+
2
3
h; w
i
+
2
3
h f(t
i
; w
i
)
_
_
,
cuando a
1
=
1
4
, a
2
=
3
4
, =
2
3
h y =
2
3
h f(t
i
,w
i
), para i = 0; 1; 2; . . . ; n 1.
Otro mtodo conocido como de Runge-Kutta de orden 2 es el Mtodo implcito pon-
derado o de Crank-Nicolson, cuya formulacin es
w
0
= y
0
w
i+1
= w
i
+
h
2
_
f
_
t
i
; w
i
_
+f
_
t
i+1
; w
i+1
_
_
,
para i = 0; 1; 2; . . . ; n 1.
Paralelamente, los mtodos del Punto Medio y de Crank-Nicolson podemos obtenerlos
tambin integrando la funcin f(t; y) en el intervalo [t
i
; t
i+1
], si aplicamos los mtodos de in-
tegracin numrica del rectngulo y del trapecio respectivamente. En efecto, si partimos de la
ecuacin
dy = f(t,y)dt,
e integramos, obtenemos
_
y
i+1
y
i
dy =
_
t
i+1
t
i
f(t,y)dt,
que podemos escribir as
y(t
i+1
) = y(t
i
) +
_
t
i+1
t
i
f(t,y)dt.
Si aplicamos el mtodo del rectngulo para aproximar la integral, obtenemos
y(t
i+1
) = y(t
i
) +h f
_
t
i
+
h
2
; y(t
i
) +
h
2
f
_
t
i
; y(t
i
)
_
_
,
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 159 -
7.1. Ecuaciones diferenciales ordinarias con valores iniciales Anlisis Numrico
por lo que la aproximacin podemos escribirla como
w
i+1
= w
i
+h f
_
t
i
+
h
2
; w
i
+
h
2
f(t
i
; w
i
)
_
.
De forma anloga, si aplicamos el mtodo del trapecio obtenemos
y(t
i+1
) = y(t
i
) +
h
2
_
f
_
t
i
; y(t
i
)
_
+f
_
t
i+1
; y(t
i+1
)
__
,
y nuestra nueva aproximacin podemos escribirla como
w
i+1
= w
i
+
h
2
[f(t
i
; w
i
) +f(t
i+1
; w
i+1
)] .
Para obtener mtodos de mayor orden de convergencia, debemos aplicar el teorema 7.4.
Con l obtenemos podemos obtenter un mtodo de Runge-Kutta de orden 3
w
0
= y
0
k
1
= h f(t
i
; w
i
)
k
2
= h f
_
t
i
+
h
2
; w
i
+
1
2
k
1
_
k
3
= h f
_
t
i
+h; w
i
k
1
+ 2 k
2
_
w
i+1
= w
i
+
1
6
(k
1
+ 4 k
2
+k
3
) ,
para i = 0; 1; 2; . . . ; n 1; el de Heun de tercer orden (tambin incluido en los mtodos de
Runge-Kutta de orden 3)
w
0
= y
0
k
1
= h f(t
i
; w
i
)
k
2
= h f
_
t
i
+
h
3
; w
i
+
1
3
k
1
_
k
3
= h f
_
t
i
+
2
3
h; w
i
+
2
3
k
2
_
w
i+1
= w
i
+
1
4
(k
1
+ 3 k
3
) ,
para i = 0; 1; 2; . . . ; n1; y uno de los mtodos ms usados para resolver ecuaciones diferenciales
ordinarias, el de Runge-Kutta de orden 4, cuya formulacin es la siguiente:
w
0
= y
0
k
1
= h f(t
i
; w
i
)
k
2
= h f
_
t
i
+
h
2
; w
i
+
1
2
k
1
_
k
3
= h f
_
t
i
+
h
2
; w
i
+
1
2
k
2
_
k
4
= h f
_
t
i
+h; w
i
+k
3
_
w
i+1
= w
i
+
1
6
(k
1
+ 2k
2
+ 2k
3
+k
4
) ,
tambin para i = 0; 1; 2; . . . ; n 1.
Los mtodos de Runge-Kutta de orden 3 y 4 tiene un error local de truncamiento O(h
3
)
y O(h
4
), siempre que la funcin y(t) tenga al menos cuatro y cinco derivadas continuas, respec-
tivamente.
- Pg. 160 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
Este mtodo es tan preciso, que programas como el MatLab
R _
y el Mathcad
R _
tienen
desarrollados distintas funciones que aplican este mtodo. Por ejemplo, Mathcad
R _
cuenta con
la funcin rkfixed(y;x
1
;x
2
;npoints;D) que resuelve ecuaciones diferenciales de primer orden
utilizando dicho mtodo, en la cual y es el valor inicial, x
1
y x
2
son los extremos del intervalo,
npoints es la cantidad de intervalos, y entonces h =
x
2
x
1
npoints
, y D es la funcin f(x,y) que debemos
resolver.
Este mtodo puede asociarse a la siguiente formulacin:
w
i+1
= w
i
+
h
6
_
f(t
i
; w
i
) + 4f
_
t
i+
1
2
; w
i+
1
2
_
+f(t
i+1
; w
i+1
)
_
,
equivalente al mtodo de Simpson de integracin numrica, cuya convergencia es O(h
4
).
7.1.9. Mtodos de paso mltiple
Los mtodos anteriores se basan en obtener los valores siguientes utilizando solamente el
valor anterior, sin tener en cuenta los dems valores ya calculados. Es por eso que se denominan
de paso simple. Pero la pregunta que nos podemos hacer es: si estamos tratando de aproximar
una funcin, tal que se cumpla que
d y
dt
= f(t; y), por qu no utilizar el conjunto de los valores
obtenidos, o al menos un grupo de ellos, para obtener los puntos siguientes.
Esa idea es la que domina a los denominados mtodos de paso mltiple. El mtodo ms
sencillo es el denominado mtodo del salto de rana, cuya expresin es
w
0
= y
0
w
i+1
= w
i1
+ 2h f(t
i
; w
i
),
para i = 1; 2; . . . ; n 1. El valor de w
1
debemos calcularlo con otro mtodo. Como las apro-
ximaciones que obtenemos por el mtodo del salto de rana son del mismo orden que las que
se obtienen por cualquier mtodo de Runge-Kutta de orden 2, es conveniente aproximar w
1
con alguno de esos mtodos. De todos modos, el mtodo del salto de rana es inestable para
determinado tipo de ecuaciones diferenciales.
Existen otros mtodos, muy utilizados, que mejoran la notoriamente la aproximacin que
podemos obtener.
Mtodos de Adams
A partir de esta idea, de utilizar la informacin de los puntos calculados, se han desa-
rrollado mtodos de paso mltiple muy utilizados, los mtodos de Adams. Los podemos dividir
en dos grupos: los mtodos explcitos, o de Adams-Bashforth, y los mtodos implcitos, o de
Adams-Moulton.
En ambos casos, la idea es usar los puntos w
i
; w
i1
; . . .;w
i+1p
para obtener el w
i+1
,
en el caso de los mtodos de Adams-Bashforth, en tanto que en los de Adams-Moulton se usan
los w
i+1
; w
i
; w
i1
; . . .;w
i+2p
, donde p es el orden de convergencia. As, un mtodo de Adams-
Bashforth de orden 2 usa los puntos w
i
y w
i1
, en tanto que un mtodo de Adams-Moulton usa
los puntos w
i+1
y w
i
. Veamos como obtener algunos de estos mtodos.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 161 -
7.1. Ecuaciones diferenciales ordinarias con valores iniciales Anlisis Numrico
Mtodos de Adams-Bashforth
Para obtener el mtodo de Adams-Bashforth de orden 2 partamos de:
_
y
i+1
y
i
dy =
_
t
i+1
t
i
f(t,y)dt,
y(t
i+1
) y(t
i
) =
_
t
i+1
t
i
f(t,y)dt,
y(t
i+1
) = y(t
i
) +
_
t
i+1
t
i
f(t,y)dt.
Para aproximar
_
t
i+1
t
i
f(t,y)dt, armemos un polinomio interpolante, utilizando el mtodo
de Newton de diferencias divididas regresivas, que aproxime f(t; y). As, nos queda que
f(t; y) f
_
t
i
; y(t
i
)
_
+
f
_
t
i
; y(t
i
)
_
f
_
t
i1
; y(t
i1
)
_
t
i
t
i1
(t t
i
)
f
_
t
i
; y(t
i
)
_
+
f
_
t
i
; y(t
i
)
_
f
_
t
i1
; y(t
i1
)
_
h
(t t
i
).
Al integrar el polinomio interpolante obtenemos
_
t
i+1
t
i
f(t,y)dt h f
_
t
i
; y(t
i
)
_
+h
f
_
t
i
; y(t
i
)
_
f
_
t
i1
; y(t
i1
)
_
2
.

h
2
_
3f
_
t
i
; y(t
i
)
_
f
_
t
i1
; y(t
i1
)
__
.
y si reemplazamos en la expresin inicial, tenemos
y(t
i+1
) y(t
i
) +
h
2
_
3f
_
t
i
; y(t
i
)
_
f
_
t
i1
; y(t
i1
)
__
.
Como siempre, lo que buscamos es una aproximacin de y(t
i+1
), entonces el mtodo de
Adams-Bashforth de orden 2 queda formulado de la siguiente manera:
w
i+1
= w
i
+
h
2
[3f(t
i
; w
i
) f(t
i1
; w
i1
)] ,
para i = 1; 2; . . . ; n 1. Por lo tanto, debemos calcular w
1
con algn otro mtodo. Dado que el
mtodo es de orden de convergencia 2, lo ms conveniente es usar algn mtodo de Runge-Kutta
de orden 2.
De todos los mtodos que se pueden desarrollar, uno de los mtodos de Adams-Bashforth
ms usados es el de orden 4, cuya expresin es
w
i+1
= w
i
+
h
24
[55f(t
i
; w
i
) 59f(t
i1
; w
i1
) + 37f(t
i2
; w
i2
) 9f(t
i3
; w
i3
)] ,
para i = 3; 4; . . . ; n1. Nuevamente, debemos hallar w
1
; w
2
y w
3
con ayuda de otro mtodo. Al
igual que en el mtodo de orden 2, en este caso podemos usar el RK O4.
Mtodos de Adams-Moulton
Los mtodos de Adams-Moulton los obtenemos de forma anloga a la aplicada para los
mtodos de Adams-Bashforth. Por ejemplo, para obtener el de orden 2, planteemos el siguiente
- Pg. 162 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
polinomio interpolante para aproximar f(t; y):
f(t; y) f
_
t
i+1
; y(t
i+1
)
_
+
f
_
t
i+1
; y(t
i+1
)
_
f
_
t
i
; y(t
i
)
_
t
i+1
t
i
(t t
i+1
)
f
_
t
i+1
; y(t
i+1
)
_
+
f
_
t
i+1
; y(t
i+1
)
_
f
_
t
i
; y(t
i
)
_
h
(t t
i+1
).
Al integrarlo, obtenemos que
_
t
i+1
t
i
f(t,y)dt h f
_
t
i+1
; y(t
i+1
)
_
+h
f
_
t
i+1
; y(t
i+1
)
_
f
_
t
i
; y(t
i
)
_
2
.

h
2
_
f
_
t
i+1
; y(t
i+1
)
_
+f
_
t
i
; y(t
i
)
__
.
Nuevamente, al reemplazar en la expresin inicial, tenemos
y(t
i+1
) = y(t
i
) +
h
2
_
f
_
t
i+1
; y(t
i+1
)
_
+f
_
t
i
; y(t
i
)
__
,
y como lo que buscamos es una aproximacin de y(t
i+1
), tenemos que
w
i+1
= w
i
+
h
2
[f(t
i+1
; w
i+1
) +f(t
i
; w
i
)] .
Resulta interesante ver que el mtodo de Adams-Moulton de orden 2 es el mtodo de Crank-
Nicolson.
Al igual que con Adams-Bashforth, uno de los mtodos ms usados es el de Adams-
Moulton de orden 4, cuya expresin es
w
i+1
= w
i
+
h
24
[9f(t
i+1
; w
i+1
) + 19f(t
i
; w
i
) 5f(t
i1
; w
i1
) +f(t
i2
; w
i2
)] ,
para i = 2; 3; . . . ; n 1. Nuevamente, debemos obtener w
1
y w
2
con ayuda del RK O4.
En general, suelen ser ms precisos los mtodos de Adams-Moulton que los de Adams-
Bashforth. El de Adams-Moulton de orden 4 entrega resultados muy parecidos, en precisin, al
mtodo de Runge-Kutta de orden 4. Sin embargo, por una cuestin de sencillez al momento
de programar, los paquetes de software preeren incluir este ltimo y no el mtodo de Adams-
Moulton de orden 4. Una excepcin parece ser la versin 14 del Mathcad
R _
, que dispone de
una funcin Adams(init,x1,x2,npoints,D,[tol]) para resolver ecuaciones diferenciales, que
de acuerdo con la ayuda del programa, utiliza mtodos de Adams-Bashforth, aunque no especica
el orden. Los parmetros de la funcin son:
init: Valor inicial de la funcin;
x1,x2: Extremos del intervalo;
npoints: Cantidad de puntos a obtener (equivalente al paso h);
D: Ecuacin diferencial escrita en forma vectorial, permite resolver tambin un sistema
de ecuaciones diferenciales;
tol: Tolerancia.
Tambin cuenta con una funcin para resolver Ecuaciones Diferenciales Ordinarias que
aplica mtodos de Adams en forma predenida (Odesolve([vector],x,b,[step])). Todas estas
funciones entregan, adems, una curva obtenida por interpolacin de los valores calculados.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 163 -
7.1. Ecuaciones diferenciales ordinarias con valores iniciales Anlisis Numrico
Mtodos de las Diferencias Regresivas
Existe otro grupo de mtodos multipasos conocido como Mtodos de las Diferencias
Regresivas. Son mtodos implcitos, como los Adams-Moulton, pero con la particularidad de
que se obtienen a partir de aproximar la derivada primera en el punto t
i+1
con ayuda de puntos
anteriores y una interpolacin polinomial que aproxima y(t) y no f(t,y) como en el caso de los
mtodos de Adams.
Estos mtodos surgieron para resolver algunos problemas de ecuaciones diferenciales en
los cuales los mtodos tradicionales fallaban: los problemas denominados rgidos.
Al igual que en el caso de mtodos de Adams, existen varios algoritmos en funcin del
orden de convergencia. As, para obtener el mtodo de las diferencias regresivas de orden uno,
O(h), basta con obtener el polinomio interpolante entre los puntos t
i
; y
i
y t
i+1
; y
i+1
:
P
1
(t) = y
i
t t
i+1
t
i
t
i+1
+y
i+1
t t
i
t
i+1
t
i
=
y
i
h
(t t
i+1
) +
y
i+1
h
(t t
i
).
Si derivamos P
1
(t) obtenemos:
dP
1
(t)
dt
=
y
i
h
+
y
i+1
h
,
que aproxima f(t,y). Por lo tanto, podemos aproximar f(t
i+1
,y
i+1
) y obtenemos
f(t
i+1
,y
i+1
)
dP
1
(t
t
i
+1
)
dt
=
y
i
h
+
y
i+1
h
y
i+1
y
i
+h f(t
i+1
; y
i+1
),
que no es otro que el mtodo de Euler implcito, cuyo trmino de error es:
E(h) =
f
t
(; y())
2
h,
con (t
i
; t
i+1
).
Para mejorar nuestro algoritmo, agreguemos un tercer punto, (t
i1
; y
i1
). Con l podemos
obtener un nuevo polinomio interpolante:
P
2
(t) = y
i1
(t t
i
)(t t
i+1
)
(t
i1
t
i
)(t
i1
t
i+1
)
+y
i
(t t
i1
)(t t
i+1
)
(t
i
t
i1
)(t
i
t
i+1
)
+y
i+1
(t t
i1
)(t t
i
)
(t
i+1
t
i1
)(t
i+1
t
i
)
.
Al igual que en el caso anterior, derivemos este nuevo polinomio:
dP
2
(t)
dt
=
y
i1
2h
2
[(t t
i
) + (t t
i+1
)]
y
i
h
2
[(t t
i1
) + (t t
i+1
)] +
y
i+1
2h
2
[(t t
i1
) + (t t
i
)].
Ahora obtengamos la derivada en el punto t
i+1
. Si tomamos un paso constante, es decir,
h = t
i+1
t
i
= t
i
t
i1
, la derivada la podemos expresar como
dP
2
(t
i+1
)
dt
=
y
i1
2h
2
(h + 0)
y
i
h
2
(2h + 0) +
y
i+1
2h
2
(2h +h),
que simplicada y reagrupada nos queda as:
dP
2
(t
i+1
)
dt
=
y
i1
2h

2 y
i
h
+
3 y
i+1
2h
.
Esta derivada no es otra cosa que la aproximacin de f(t
i+1
; y
i+1
) por lo tanto podemos
armar la expresin anterior de esta otra manera,
f(t
i+1
; y
i+1
) =
y
i1
2h

2 y
i
h
+
3 y
i+1
2h
,
- Pg. 164 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
y despejar y
i+1
:
y
i+1
=
y
i1
3
+
4 y
i
3
+
2
3
h f(t
i+1
; y
i+1
).
El error de la aproximacin polinomial est dado por:
E
P
(t) =
y
ttt
()
3!
(t t
i1
)(t t
i
)(t t
t+1
).
Si derivamos esta expresin, obtenemos el error de nuestra aproximacin de la derivada
primera con el polinomio interpolante:
dE
P
(t)
dt
=
y
ttt
()
3!
[(t t
i1
)(t t
i
) + (t t
i1
)(t t
t+1
) + (t t
i
)(t t
i+1
)].
Reemplacemos t por t
i+1
, y tendremos el error de la derivada en ese punto. Si adems
recordamos que h = t
i+1
t
i
= t
i
t
i1
, la expresin nal queda de esta forma:
dE
P
(t)
dt

t
i+1
=
y
ttt
()
3!
[(2h)(h) + (2h)(0) + (h)(0)],
que al agrupar en funcin de h, y dado que y
ttt
() = f
tt
(; y()), podemos expresar como
E(h) =
f
tt
(; y())
3
h
2
,
con (t
i1
; t
i+1
). Esto conrma que el mtodo es de convergencia cuadrtica. Por lo tanto, y
como lo que estamos obteniendo son aproximacin de y
i
, el mtodo lo escribimos as:
w
i+1
=
w
i1
3
+
4 w
i
3
+
2
3
h f(t
i+1
; w
i+1
).
As como obtuvimos un mtodo de convergencia cuadrtica, podemos obtener mtodos
con rdenes de convergencia mayores. Entre ellos podemos destacar a los siguientes:
w
i+1
=
2 w
i2
11

9 w
i1
11
+
18 w
i
11
+
6
11
h f(t
i+1
; w
i+1
) (mtodo de orden 3),
w
i+1
=
3 w
i3
25
+
16 w
i2
25

36 w
i1
25
+
48 w
i
25
+
12
25
h f(t
i+1
; w
i+1
) (mtodo de orden 4).
Los errores para estos mtodos son:
E(h) =
f
ttt
(; y())
4
h
3
, con (t
i2
; t
i+1
) y;
E(h) =
f
iv
(; y())
5
h
4
con (t
i3
; t
i+1
);
respectivamente.
Estos mtodos suelen ser muy precisos a pesar de que muchas veces requieren algn tipo
de solucin iterativa cuando la derivada, o sea, f(t; y) no es una funcin lineal.
7.1.10. Mtodos predictores-correctores
Mtodo predictor-corrector de Adams
Como hemos visto, el uso de los mtodos de Adams-Moulton conlleva la necesidad de
reformular la expresin para convertirla en un mtodo explcito. Como esto no siempre es posible,
y gracias a la idea de los mtodos predictores-correctores, una forma de aplicarlos es mediante
la combinacin de un mtodo de Adams-Bashforth y uno de Adams-Moulton, ambos del mismo
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 165 -
7.1. Ecuaciones diferenciales ordinarias con valores iniciales Anlisis Numrico
orden de convergencia. Esta combinacin se conoce como mtodo predictor-corrector de Adams.
Por ejemplo, el mtodo predictor-corrector de orden 2 es el siguiente:
w

i+1
= w
i
+
h
2
[3f(t
i
; w
i
) f(t
i1
; w
i1
)]
w
i+1
= w
i
+
h
2
_
f(t
i+1
; w

i+1
) +f(t
i
; w
i
)

,
para i = 2; 3; . . . ; n 1 y donde el valor de w
1
= w

1
debemos obtenerlo usando el mtodo de
Runge-Kutta de orden 2 o resolviendo en forma explcita la segunda ecuacin del mtodo. Uno
de los mtodos ms usados es el predictor-corrector de Adams de orden 4, cuya expresin es:
w

i+1
= w
i
+
h
24
[55f(t
i
; w
i
) 59f(t
i1
; w
i1
) + 37f(t
i2
; w
i2
) 9f(t
i3
; w
i3
)]
w
i+1
= w
i
+
h
24
_
9f(t
i+1
; w

i+1
) + 19f(t
i
; w
i
) 5f(t
i1
; w
i1
) +f(t
i2
; w
i2
)

,
para i = 4; 5; . . . ; n 1 y donde w
1
= w

1
, w
2
= w

3
y w
3
= w

3
los obtenemos usando RK O4.
Al igual que lo visto para el mtodo predictor-corrector de Euler, en estos mtodos tam-
bin cabe la posibilidad de iterar con la frmula correctora hasta obtener la solucin buscada.
Por ejemplo, el mtodo predictor-corrector de Adams de orden 2 podemos escribirlo como:
w

i+1
= w
i
+
h
2
[3f(t
i
; w
i
) f(t
i1
; w
i1
)]
w
0
i+1
= w
i
+
h
2
_
f(t
i+1
; w

i+1
) +f(t
i
; w
i
)

,
w
n+1
i+1
= w
i
+
h
2
_
f(t
i+1
; w
n
i+1
) +f(t
i
; w
i
)

,
en tanto que al mtodo predictor-corrector de Adams de orden 4 lo podemos escribir as:
w

i+1
= w
i
+
h
24
[55f(t
i
; w
i
) 59f(t
i1
; w
i1
) + 37f(t
i2
; w
i2
) 9f(t
i3
; w
i3
)]
w
0
i+1
= w
i
+
h
24
_
9f(t
i+1
; w

i+1
) + 19f(t
i
; w
i
) 5f(t
i1
; w
i1
) +f(t
i2
; w
i2
)

,
w
n+1
i+1
= w
i
+
h
24
_
9f(t
i+1
; w
n
i+1
) + 19f(t
i
; w
i
) 5f(t
i1
; w
i1
) +f(t
i2
; w
i2
)

.
En ambos casos, las iteraciones las truncamos cuando

w
n+1
i+1
w
n
i+1

< TOL
o

w
n+1
i+1
w
n
i+1
w
n+1
i+1

< TOL.
Mtodo predictor-corrector de Milne
Existe otro mtodo predictor-corrector multipaso muy conocido. Es el mtodo predictor-
corrector de Milne, cuya formulacin es:
w

i+1
= w
i3
+
4
3
h
_
2f(t
i
,w
i
) f(t
i1
,w
i1
+ 2f(t
i2
,w
i2
)
_
,
w
0
i+1
= w
i1
+
h
3
_
f(t
i+1
,w

i+1
) + 4 f(t
i
,w
i
) +f(t
i1
,w
i1
)
_
,
w
n+1
i+1
= w
i1
+
h
3
_
f(t
i+1
,w
n
i+1
) + 4 f(t
i
,w
i
) +f(t
i1
,w
i1
)
_
.
en el que tambin truncamos las iteraciones con los criterios ya vistos. Este mtodo es de orden
cuatro, pero no es de los ms usados pues los resultados no son mejores que los obtenidos pro
los mtodos de Adams. (Para ms detalles, ver [2].)
- Pg. 166 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
7.2. Anlisis de estabilidad
Uno de los temas que tienen singular importancia en la resolucin numrica de ecuaciones
diferenciales es la estabilidad de los mtodos. Sin embargo, en este caso, el concepto de estabilidad
no est ligado al error de redondeo sino al tamao del paso de clculo.
Supongamos que tomamos una ecuacin sencilla como la siguiente:
y
t
(t) = y con a t b y y(a) = y
0
.
Planteemos el mtodo de Euler explcito como mtodo de resolucin. El esquema quedar
de esta forma:
y
i+1
y
i
+h y
i
,
que al agrupar queda:
y
i+1
(1 +h ) y
i
.
Como esto se repite para todas las iteraciones, podemos expresar cualquier iteracin y
i+1
en
funcin del valor inicial y
0
:
y
i+1
(1 +h )
i+1
y
0
,
es decir, que cualquier valor y
i+1
es el producto de y
0
por un factor constante que depende del
paso h y de . Como este ltimo es dato del problema, se pueden dar dos posibilidades:
1. > 0: En este caso y
i+1
> y
i
, por lo que el error absoluto crece junto con y
i+1
, en cambio
el error relativo tiende a ser estable. En efecto, si suponemos que
y
i+1
+
i+1
= (1 +h) (y
i
+
i
),
y si simplicamos la expresin nos queda

i+1
= (1 +h)
i
.
Como podemos ver, el crecimiento del error es similar al crecimiento de y.
Si analizamos el error relativo tenemos lo siguiente:

i+1
y
i+1
=
(1 +h)
i
y
i+1
=
(1 +h)
i
(1 +h) y
i
=

i
y
i
,
vemos que tiende a ser constante, lo que no trae aparejado ningn inconveniente grave.
2. < 0: En este caso, se cumple que [y
i+1
[ [y
i
[ y en consecuencia debe cumplirse que
[1 h[ 1.
Esto podemos formularlo as
1 1 h 1 h 2 h
2

.
Es evidente que en este caso no podemos elegir cualquier h, que depender de . Estamos
ante un caso en que la estabilidad est condicionada.
Analicemos ahora el caso del mtodo de Euler implcito. Anlogamente, al caso anterior
tendremos que
y
i+1
y
i
+h y
i+1
,
y
i+1
h y
i+1
y
i

y
i+1

y
i
1 h
.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 167 -
7.3. Consistencia y convergencia Anlisis Numrico
Nuevamente, cualquier y
i+1
puede ser expresado en funcin de y
0
, por lo tanto nos queda
que
y
i+1

1
(1 h)
i+1
y
0
.
Tambin podemos efectuar un anlisis de los resultados en funcin del , que resulta en
dos posibilidades otra vez:
1. > 0: Tambin se cumple que y
i+1
> y
i
, por lo que el error absoluto crece junto con y
i+1
,
y el error relativo tiende a ser estable.
2. < 0: Tambin, se cumple que [y
i+1
[ [y
i
[ y en consecuencia debe cumplirse que
1
[1 +h[
1.
Es evidente que esta condicin se cumple para cualquier valor de h, y por lo tanto, la
eleccin del paso no est condicionada.
Si hacemos un anlisis similar para los mtodos de Euler Modicado y de Crank-Nicolson,
ambos mtodos de Runge-Kutta de Orden 2, obtenemos resultados parecidos. Para el mtodo
de Euler Modicado, que es explcito, si > 0, no tenemos inconvenientes con el paso, y cuando
< 0, tenemos que
h
2

,
es decir, el paso est condicionado al valor de . En el caso del mtodo de Crank-Nicolson, que
es implcito, la situacin cuando > 0 es anloga al caso de Euler Modicado, y cuando < 0
tenemos que
h
2

y h 0.
Esta condicin se cumple para cualquier valor de h.
Si bien deberamos hacer un anlisis para cada mtodo, con lo hecho podemos sacar
algunas conclusiones importantes:
Los mtodos explcitos son ms sencillos para trabajar pero el paso depende de las carac-
tersticas de la ecuacin a resolver;
Los mtodos implcitos son algo ms complicados para operar, pero no tienen complicacin
alguna para la eleccin del paso.
De este anlisis surge otra forma de clasicar a los mtodos:
Mtodos condicionalmente estables, aquellos en los que la estabilidad est condicio-
nada a la eleccin del paso, generalmente mtodos explcitos, y;
Mtodos incondicionalmente estables, aquellos que no tienen ningn tipo de condi-
cionamiento para su estabilidad, generalmente mtodos implcitos.
7.3. Consistencia y convergencia
Por otro lado, tambin debemos vericar la consistencia y la convergencia de los
mtodos respecto de la solucin analtica. Un mtodo es consistente si
lm
h0
max
1in[E(h)[=0
,
- Pg. 168 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
donde E(h) es el error de truncamiento del mtodo. A su vez, la convergencia est denida
como
lm
h0
max
1in[w
i
y(t
i
[=0
,
donde w
i
y(t
i
) es el error global. Como hemos visto, para el mtodo de Euler tenemos que
[w
i
y(t
i
)[
hM
2L
_
e
L(t
i
a)
1
_
,
por lo que el mtodo es convergente pues se cumple que
lm
h0
hM
2L
_
e
L(t
i
a)
1
_
= 0.
De acuerdo con lo visto, para una ecuacin diferencial de primer orden con valores iniciales
denido por
dy
dt
= f(t,y); a t b; y(a) = ,
que aproximaremos con un mtodo que deniremos as
w
0
= ,
w
i+1
= w
i
+h (t
i
; w
i
; h),
con
h > 0 y (t
i
; w
i
; h) C[a; b].
Como vemos esta denicin es para cualquier mtodo de paso simple.
Si (t
i
; w
i
; h) cumple con la condicin de Lipshitz en:
D = (t; w; h)[a t b, < w < +, 0 h h
0
,
entonces:
El mtodo es estable;
Es convergente si y solo si es consistente, es decir, se cumpla que
(t; w,0) = f(t,w);
Si existe E(h), entonces:
[y
i
w
i
[
E(h)
L
e
(t
i
a) L
En el caso de los mtodos multipaso, al analizar la consistencia debemos asegurarnos
adems que
lm
h0
[E(h)[ = 0 para i = m, m+ 1, . . . , n
lm
h0
[
j
y(t
j
)[ = 0 para j = 1; 2; . . . , m1.
donde los
j
son los valores adicionales que deben calcularse para empezar a iterar.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 169 -
7.4. Ec. diferenciales ordinarias de orden superior Anlisis Numrico
7.4. Ecuaciones diferenciales ordinarias de orden superior
Nos hemos ocupado de resolver numricamente ecuaciones diferenciales ordinarias de
primer orden con valores iniciales. Existen tambin ecuaciones similares pero de orden superior
como stas:
d
2
y
d t
2
= f(t; y; y
t
) con a < t < b, y(a) = , y
t
(a) = ,
que es una ecuacin de segundo orden.
La forma general de una ecuacin de orden superior es:
d
n
y
d t
n
= f(t; y; y
t
; . . . ; y
n1)
) con a < t < b, y(a) = y
0
, y
t
(a) = y
t
0
, . . . , y
n1)
(a) = y
n1)
0
.
El planteo y la resolucin de este tipo de ecuaciones requiere un estudio casi detallado en
funcin del orden de la ecuacin. En los puntos siguientes nos concentraremos en las de segundo
orden y veremos varias formas de plantear una solucin numrica aproximada.
7.4.1. Aplicacin de los mtodos para ecuaciones diferenciales de primer or-
den
Una forma de resolver es aplicar cualquiera de los mtodo vistos para ecuaciones de
primer orden pero efectuando un cambio de variable. As, para la ecuacin de segundo orden, la
transformacin queda as:
d y
d t
= z(t,y)
d z
d t
= f(t,y,z).
con las mismas condiciones ya vistas: a < t < b, y(a) = y
0
y z(a) = y
t
(a) = z
0
.
Por ejemplo, si aplicamos el mtodo de Euler explcito, y si hacemos w
i
= y
i
y v
i
= z
i
,
la aproximacin nos queda de la siguiente forma:
w
i+1
= w
i
+h v
i
v
i+1
= v
i
+h f(t
i
,w
i
,v
i
).
Si aplicamos un mtodo de Runge-Kutta de orden 2, por ejemplo, el mtodo de Euler
modicado, tenemos:
k
1
1
= h v
i
; k
2
1
= h f(t
i
; w
i
; v
i
)
k
1
2
= h (v
i
+k
2
1
); k
2
2
= h f(t
i
+h; w
i
+k
1
1
; v
i
+k
2
1
)
w
i+1
= w
i
+
1
2
_
k
1
1
+k
1
2
_
,
v
i+1
= v
i
+
1
2
_
k
2
1
+k
2
2
_
.
Algo similar podemos hacer con el mtodo de Runge-Kutta de orden 4. El sistema de
ecuaciones quedar de esta forma:
k
1
1
= h v
i
; k
2
1
= h f(t
i
; w
i
; v
i
)
k
1
2
= h (v
i
+
1
2
k
2
1
); k
2
2
= h f(t
i
+
1
2
h; w
i
+
1
2
k
1
1
; v
i
+
1
2
k
2
1
)
k
1
3
= h (v
i
+
1
2
k
2
2
); k
2
3
= h f(t
i
+
1
2
h; w
i
+
1
2
k
1
2
; v
i
+
1
2
k
2
2
)
k
1
4
= h (v
i
+k
2
3
); k
2
4
= h f(t
i
+h; w
i
+k
1
3
; v
i
+k
2
3
)
w
i+1
= w
i
+
1
6
_
k
1
1
+ 2 k
1
2
+ 2 k
1
3
+k
1
4
_
v
i+1
= v
i
+
1
6
_
k
2
1
+ 2 k
2
2
+ 2 k
2
3
+k
2
4
_
.
- Pg. 170 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
Este mismo concepto podemos aplicarlo si queremos usar algn otro mtodo, sea de paso
simple, sea de paso mltiple. En estos ltimos el esquema es ms sencillo, pues lo nico que
hay que cuidar es la formulacin para las distintas ecuaciones. As, la aplicacin del mtodo de
Adams-Bashforth de orden 2 resulta ser:
w
i+1
= w
i
+h (3 v
i
v
i1
)
v
i+1
= v
i
+h [3 f(t
i
,w
i
,v
i
) f(t
i1
,w
i1
,v
i1
)] ,
obteniendo los valores de w
i1
y v
i1
de la misma forma a la vista para el caso de ecuaciones de
primer orden.
Evidentemente, resolver ecuaciones diferenciales de orden superior con mtodos explcitos
no conlleva ms que una complicacin en la formulacin algebraica del mtodo elegido, sobre todo
en el caso de los mtodos de Runge-Kutta.
As como analizamos cmo aplicar los mtodo explcitos, veamos brevemente qu ocu-
rre con la aplicacin de mtodos implcitos. Supongamos ahora que para resolver la ecuacin
diferencial de segundo orden aplicamos el mtodo de Euler implcito. El esquema quedar as:
w
i+1
= w
i
+h v
i+1
v
i+1
= v
i
+h f(t
i+1
,w
i+1
,v
i+1
).
De nuevo, la formulacin es sencilla pero ahora depende del f(t,y,y
t
) para poder resolver
el sistema. En efecto, si f(t,y,y
t
) no es lineal, tendremos la misma dicultad que habamos visto
anteriormente; debemos obtener v
i+1
de manera iterativa. Esto no siempre es fcil de hacer. Sin
embargo, el sistema podemos reescribirlo as:
_
1 h
0 1
_

_
w
i+1
v
i+1
_
=
_
w
i
v
i
+h f(t
i+1
,w
i+1
,v
i+1
)
_
Supongamos por un momento que f(t
i+1
,w
i+1
,v
i+1
) = t
2
i+i
+ 2 w
i+1
v
i+1
, entonces
nuestro sistema quedar de la siguiente manera:
_
1 h
2 h 1 +h
_

_
w
i+1
v
i+1
_
=
_
w
i
v
i
+h t
2
i+1
_
Nuestra solucin analtica ser:
_
w
i+1
v
i+1
_
=
_
1 h
2 h 1 +h
_
1

_
w
i
v
i
+h t
2
i+1
_
pero podemos aplicar cualquier mtodo de resolucin de ecuaciones lineales visto. En este caso
particular, podemos ver que para cualquier 0 < h < 1, la matriz es denida positiva y estricta-
mente diagonal dominante, as que la solucin es nica para cada i.
7.4.2. A partir de la serie de Taylor
Una segunda forma de encarar el problema es una vez ms partir de un desarrollo en
serie de Taylor para y
i+1
:
y
i+1
= y
i
+y
t
i
h +y
tt
i
h
2
2!
+y
ttt
i
h
3
3!
+y
iv
h
4
4!
+. . . .
Como y
tt
(t) = f(t; y; y
t
), el desarrollo anterior podemos escribirlo as:
y
i+1
= y
i
+y
t
i
h +f(t
i
; y
i
; y
t
i
)
h
2
2!
+f
t
(t
i
; y
i
; y
t
i
)
i
h
3
3!
+f
tt
(t
i
; y
i
; y
t
i
)
h
4
4!
+. . . .
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 171 -
7.4. Ec. diferenciales ordinarias de orden superior Anlisis Numrico
Al mismo tiempo, si hacemos lo mismo para y
t
(t), tenemos,
y
t
i+1
= y
t
i
+y
tt
i
h +y
ttt
i
h
2
2!
+. . . ,
que tambin podemos escribir como
y
t
i+1
= y
t
i
+f(t
i
; y
i
; y
t
i
) h +f
t
(t
i
; y
i
; y
t
i
)
h
2
2!
+. . . .
Ambas series representan a la funcin y su primera derivada. Por lo tanto, si quere-
mos obtener una aproximacin de ambas, truncamos las series de Taylor correspondientes y as
obtenemos dos ecuaciones.
y
i+1
= y
i
+y
t
i
h +f(t
i
; y
i
; y
t
i
)
h
2
2!
+f
t
[; y(); y
t
()]
h
3
3!
,
y
t
i+1
= y
t
i
+f(t
i
; y
i
; y
t
i
) h +f
t
[; y(); y
t
()]
h
2
2!
,
y entonces, nos queda que:
y
i+1
y
i
+y
t
i
h +f(t
i
; y
i
; y
t
i
)
h
2
2!
,
y
t
i+1
y
t
i
+f(t
i
; y
i
; y
t
i
) h.
Si denimos que y
i
= w
i
y y
t
i
= v
i
, nos queda un sistema de ecuaciones:
w
i+1
= w
i
+v
i
h +f(t
i
; w
i
; v
i
)
h
2
2!
,
v
i+1
= v
i
+f(t
i
; w
i
; v
i
) h.
Esta aproximacin sencilla es de convergencia lineal, similar a los mtodos de Euler para ecua-
ciones de primer orden. A partir de este tipo de formulacin obtenemos dos mtodos ms:
El Mtodo de Taylor, que est dado por las ecuaciones
w
i+1
= w
i
+v
i
h +f(t
i
; w
i
; v
i
)
h
2
2!
,
v
i+1
= v
i
+h [ f(t
i
; w
i
; v
i
) + (1 ) f(t
i+1
; w
i+1
; v
i+1
)], y ;
El Mtodo de Newmark, que est dado por estas dos ecuaciones
w
i+1
= w
i
+v
i
h +
h
2
2!
[ f(t
i
; w
i
; v
i
) + (1 )f(t
i+1
; w
i+
; v
i+1
)] ,
v
i+1
= v
i
+h [ f(t
i
; w
i
; v
i
) + (1 ) f(t
i+1
; w
i+1
; v
i+1
)].
Ambos mtodos tiene la particularidad de ser implcitos, el de Taylor slo para la ecuacin
de la derivada primera, en tanto que el de Newmark lo es para las dos ecuaciones.
7.4.3. Aproximacin de la derivada segunda
Existe una manera ms de encarar la resolucin de ecuaciones diferenciales de orden
superior con valores iniciales. Si aproximamos la segunda derivada, como se vio en diferenciacin
numrica, tenemos
d
2
y
dt
2

y
i+1
2y
i
+y
i1
h
2
,
- Pg. 172 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
y obtenemos una nueva aproximacin de y
i+1
:
y
i+1
2y
i
y
i1
+h
2
f(t
i
; y
i
; y
t
i
),
es decir,
w
i+1
= 2w
i
w
i1
+h
2
f(t
i
; w
i
; v
i
),
si hacemos nuevamente y
t
i
= v
i
.
Pero ahora necesitamos calcular w
1
para poder empezar a iterar y no contamos con una
forma de aproximar v
i
(o sea y
t
i
). Esto ltimo se puede resolver aproximando la primera derivada
por el mtodo de las diferencias centradas:
y
t
i

y
i+1
y
i1
2h
v
i
=
w
i+1
w
i1
2h
,
con lo que evitamos tener que agregar un algoritmo para calcular dicha derivada.
An nos falta obtener w
i
. Podemos aplicar uno de los mtodos ya vistos, como por
ejemplo:
y
1
y
0
+y
t
0
h +f(t
0
; y
0
; y
t
0
)
h
2
2!
w
1
= w
0
+v
0
h +f(t
0
; w
0
; v
0
)
h
2
2!
.
Si agrupamos todo y reemplazamos en la ecuacin original, tenemos:
w
1
= w
0
+v
0
h +f(t
0
; w
0
; v
0
)
h
2
2!
;
w
i+1
= 2w
i
w
i1
+h
2
f
_
t
i
; w
i
;
w
i+1
w
i1
2h
_
;
que se conoce como Mtodo de Nystrm para ecuaciones diferenciales de segundo orden,
que como podemos ver, es un mtodo implcito. As planteado, el mtodo tiene un orden de
convergencia cuadrtico, pues:
d
2
y
dt
2
=
y
i+1
2y
i
+y
i1
h
2
y
iv
()
h
2
12
, y
dy
dt
=
y
i+1
y
i1
2h
y
ttt
()
h
2
6
.
En algunos problemas particulares, la forma implcita no resulta conveniente, por lo
que suele reemplazarse la aproximacin centrada de la derivada primera por una aproximacin
regresiva pero perdiendo orden de convergencia.
7.5. Sistemas de ecuaciones diferenciales de primer orden
Lo visto anteriormente para ecuaciones diferenciales de orden superior podemos aplicarlo
para resolver un sistema de ecuaciones diferenciales de primer orden del tipo:
d u
1
d t
= f
1
(t,u
1
; u
2
; . . . ; u
n
)
d u
2
d t
= f
1
(t,u
1
; u
2
; . . . ; u
n
)
.
.
.
d u
n
d t
= f
n
(t,u
1
; u
2
; . . . ; u
n
)
con las condiciones siguientes: a < t < b; u
1
(a) =
1
; u
2
(a) =
2
; . . . ; u
n
(a) =
n
.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 173 -
7.6. Ecuaciones diferenciales con cond. de contorno Anlisis Numrico
Ahora, en lugar de transformar la ecuacin diferencial, lo que tenemos son varias funciones
u
i
(t) entrelazadas. La solucin de cada funcin u
i
(t) depende de las dems u
j
(t), que es anlogo
al caso anterior, donde y(t) dependa de z(t).
En consecuencia, podremos aplicar cualquiera de los mtodos vistos para resolver ecua-
ciones diferenciales ordinarias de primer orden, cuidando de armar la formulacin algebraica
para cada u
i
(t)). Debemos tener en cuenta que obtendremos un conjunto de valores u
i,j
con
j = 0; 1; . . . ; m y h =
b a
m
. (Para ms detalles acerca de sistemas de ecuaciones diferenciales de
primer orden, ver [2].)
7.6. Ecuaciones diferenciales ordinarias con condiciones de con-
torno
7.6.1. Introduccin
En puntos anteriores hemos visto los diferentes mtodos numricos para la resolucin de
ecuaciones diferenciales ordinarias con valores iniciales. Estos mtodos son principalmente para
resolver ecuaciones diferenciales de primer orden, tanto lineales como no lineales, y que podemos
adaptarlos para ecuaciones diferenciales de orden superior con valores iniciales.
Pero este caso no suele ser el ms comn o usual. Las ecuaciones diferenciales de orden
dos o superior generalmente son de valores de contorno o frontera, es decir, no disponemos de
todos los valores para t = a, sino que tenemos valores para t = a y t = b. Una ecuacin diferencial
de orden 2 con valores de contorno est dada por:
d
2
y
dt
2
= f(t,y,y
t
), en [a,b];
similar a lo visto, pero con las condiciones en los extremos del intervalo:
y(a) = ; y(b) = .
Como podemos ver, con estas condiciones no parece posible utilizar los mtodos estu-
diados, ni siquiera transformando la ecuacin diferencial de segundo orden en un sistema de
ecuaciones diferenciales primer orden. Debemos buscar alguna forma que nos permita aproximar
nuestra ecuacin diferencial y obtener los resultados de la funcin y(t).
Es necesario analizarlo con ms detalle el procedimiento para resolverlas? Como dato
importante, basta mencionar que buena parte de los problemas que debemos resolver los inge-
nieros, ya sean civiles, mecnicos, electrnicos, etc., estn expresados en trminos de ecuaciones
diferenciales de orden superior. Un ejemplo que suele ser muy usado es el caso de la ecuacin
diferencial de equilibrio para una viga, dada por la expresin:
EI
d
4
w
dx
4
p(x) = 0.
que requiere de cuatro condiciones de contorno para ser resuelta. Estas condiciones pueden ser:
1. Condiciones de borde esenciales (Dirichlet);
2. Condiciones de borde naturales (Neumann);
3. Una combinacin de ambas.
Por ejemplo, para una viga doblemente empotrada, de longitud L, como se ve en la gura,
las condiciones de borde son:
w(0) = 0; w(L) = 0; w
t
(0) = 0; y w
t
(L) = 0.
- Pg. 174 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
Figura 7.1: Viga doblemente empotrada
Este es el tpico caso de condiciones de borde esenciales (o forzadas), puesto que las
restricciones estn asociadas a los desplazamientos y los giros en los extremos de la viga. Esta
ecuacin no es posible resolverla aplicando en forma directa los mtodos mencionados anterior-
mente. En consecuencia, para poder aproximar una solucin, debemos buscar alguna forma de
adaptar los mtodos vistos para tener en cuenta estas condiciones de frontera o de contorno.
Veremos a continuacin dos mtodos que pueden usarse para resolver este tipo de ecua-
ciones diferenciales. Empezaremos por el ms sencillo, el mtodo del disparo lineal, que hace uso
de los mtodos ya estudiados.
7.6.2. Mtodo del tiro o disparo lineal
Supongamos que tenemos la siguiente ecuacin diferencial:
y
tt
= f(t,y), t [0; 1];
que debe cumplir con las condiciones:
y(0) = y
0
; y(1) = y
1
.
Como vemos, no tenemos dos condiciones iniciales, sino una para el valor inicial y otra
para el valor nal que debe tomar la funcin buscada.
Para encarar el problema haremos una modicacin. Resolveremos el siguiente problema
de valores iniciales, suponiendo que lo que buscamos es una aproximacin a y(t) que llamaremos
u(t
i
). Entonces nuestro sistema quedar de la siguiente forma:
u
tt
= f(t,u), u
1
(0) = y
0
y u
t
1
(0) =
1
.
donde
1
es el primer ensayo para u
t
1
(0). Apliquemos para ello cualquiera de los mtodos vistos
anteriormente, por ejemplo el de Euler. Con l obtendremos un valor para u
1
(1) igual a
1
, que
seguramente ser distinto a y
1
.
Nuevamente, resolvamos con Euler un sistema similar pero proponiendo que u
2
(0) = y
0
y u
t
2
(0) =
2
. Obtendremos otro valor para u(1), es decir, un u
2
(1) =
2
, probablemente distinto
a y
1
.
En consecuencia, tendremos dos aproximaciones de y
1
. Para continuar, vamos a suponer
que existe una relacin lineal entre u(t
i
), u
1
(t
i
) y u
2
(t
i
). Esta relacin lineal estar dada por:
u(t
i
) u
1
(t
i
)
y
1

1
=
u
2
(t
i
) y
0

2
y
0
.
Para calcular u(t) debemos despejarla de la expresin anterior. As obtenemos:
u(t
i
) = u
1
(t
i
) +
y
1

2
y
0
[u
2
(t
i
) y
0
] .
Para entender como opera el mtodo, veamos un ejemplo prctico, resolviendo una ecua-
cin diferencial de orden 2.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 175 -
7.6. Ecuaciones diferenciales con cond. de contorno Anlisis Numrico
Ejemplo
Resolver la siguiente ecuacin diferencial ordinaria con valores de frontera, aplicando el
mtodo de Euler:
y
tt
= 4(y x); 0 x 1;
con los valores de contorno:
y(0) = 0; y(1) = 2.
Para resolver la ecuacin por el mtodo de Euler plantearemos primero que y
t
(x) = z(x),
con lo que tendremos que la ecuacin diferencial se transforma en:
y
t
(x) = z(x)
z
t
(x) = 4(y x)
Si aplicamos el mtodo de Euler, y hacemos u
i
= y(x
i
) tendremos las siguientes ecuacio-
nes:
u
i+1
= u
i
+h z
i
z
i+1
= z
i
+h 4(u
i
x
i
)
Como vemos, debemos resolver dos ecuaciones para obtener el valor de u
i+1
. Por ello,
en primer trmino, vamos a resolver el sistema obteniendo, primero, valores para unas funciones
v
1
(x) y adoptando las siguientes condiciones iniciales:
v
1
(0) = 0; z
1
(0) = 0
por lo que el sistema a resolver ser:
v
1
i+1
= v
1
i
+h z
1
i
z
1
i+1
= z
1
i
+h 4(v
1
i
x
i
)
En segundo trmino, haremos lo mismo pero para las funciones v
2
(x) y z
2
(x) = v
t
2
(x)
con los valores de contorno levemente distintos. Estos son:
v
2
(0) = 0; z
2
(0) = 1,
y el sistema a resolver ser:
v
2
i+1
= v
2
i
+h z
2
i
z
2
i+1
= z
2
i
+h 4(v
2
i
x
i
)
Con los valores para cada una de las soluciones y por cada iteracin, calcularemos los
valores denitivos mediante la expresin:
u
i
= v
1
i
+
y(1) v
1
(1)
v
2
(1) y(0)
[v
2
i
y(0)]
En la tabla 7.1 podemos ver los resultados obtenidos.
En la penltima columna podemos ver el valor exacto de la funcin buscada, dado que
la solucin analtica de la ecuacin diferencial es:
y(x) = e
2
_
e
4
1
_
1
_
e
2x
e
2x
_
+x.
Los valores de u(x
i
) obtenidos no son muy precisos, dado que el mtodo utilizado para
resolver el sistema de ecuaciones es el de Euler, pero igualmente sirven como demostracin de la
efectividad al aplicar este mtodo. Podemos ver que la ltima columna muestra el error absoluto
entre el valor obtenido numricamente y el valor exacto. Observemos que el error cometido es,
del orden de 10
1
, un error razonable para este mtodo. (Recordemos que el mtodo de Euler
tiene un error O(h).)
- Pg. 176 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
Tabla 7.1: Resultados obtenidos aplicando el mtodo de Euler
x
i
z
1,i
v
1,i
z
2,i
v
2,i
u
i
y(x
i
) e
0,00 0,000 0,000 1,000 0,000 0,000 0,000 0,0
0,10 0,000 0,000 1,000 0,100 0,252 0,156 9,7 10
2
0,20 0,040 0,000 1,000 0,200 0,504 0,313 1,9 10
1
0,30 0,120 0,004 1,000 0,300 0,752 0,476 2,8 10
1
0,40 0,242 0,016 1,000 0,400 0,992 0,645 3,5 10
1
0,50 0,408 0,040 1,000 0,500 1,220 0,824 4,0 10
1
0,60 0,624 0,081 1,000 0,600 1,432 1,016 4,2 10
1
0,70 0,896 0,143 1,000 0,700 1,621 1,225 4,0 10
1
0,80 1,234 0,233 1,000 0,800 1,784 1,455 3,3 10
1
0,90 1,647 0,356 1,000 0,900 1,913 1,711 2,0 10
1
1,00 2,150 0,521 1,000 1,000 2,000 2,000 0,0
7.6.3. Diferencias nitas
En el punto anterior hemos resuelto una ecuacin diferencial lineal con condiciones de
contorno utilizando un mtodo de resolucin que transforma las condiciones de contorno en
condiciones iniciales. Sin embargo, este mtodo tiene como desventaja que es inestable en ciertas
ocasiones. Por lo que su utilizacin se ve reducida generalmente a unos pocos casos o problemas.
Uno de los mtodos ms aplicados para aproximar una solucin de ecuaciones diferenciales
de orden mayor o igual a dos, es el que reemplaza las derivadas por diferencias nitas mediante
un cociente de diferencias, tal como vimos en diferenciacin numrica. La aplicacin de estas
diferencias nitas generan un sistema de ecuaciones lineales del tipo Ax = B, sistema que puede
resolverse mediante alguno de los mtodos ya vistos. Est claro que estamos limitados en la
eleccin de nuestro intervalo h, que no puede ser muy chico. Veamos en qu consiste el mtodo,
aplicndolo a nuestro ejemplo anterior.
Para aproximar las derivadas, tomaremos el mtodo de las diferencias centradas, que per-
miten una mejor aproximacin de las derivadas. Para empezar, desarrollemos y(x
i+1
) y y(x
i1
)
por Taylor hasta el cuarto trmino, por lo que tendremos:
y(x
i+1
) = y(x
i
+h) = y(x
i
) +hy
t
(x
i
) +
h
2
2
y
tt
(x
i
) +
h
3
6
y
ttt
(x
i
) +
h
4
24
y
(iv)
(
+
i
),
para alguna
+
i
en (x
i
; x
i+1
), y
y(x
i1
) = y(x
i
h) = y(x
i
) hy
t
(x
i
) +
h
2
2
y
tt
(x
i
)
h
3
6
y
ttt
(x
i
) +
h
4
24
y
(iv)
(

i
),
para alguna

i
en (x
i1
; x
i
). Dems est decir que se supone que y(x) C
4
[x
i1
; x
i+1
]. Si
sumamos ambas expresiones y despejamos y
tt
(x
i
), tendremos:
y
tt
(x
i
) =
1
h
2
[y(x
i+1
) 2y(x
i
) +y(x
i1
)]
h
2
24
_
y
(iv)
(
+
i
) +y
(iv)
(

i
)
_
.
Si aplicamos el teorema del valor medio, podemos simplicar la expresin a:
y
tt
(x
i
) =
1
h
2
[y(x
i+1
) 2y(x
i
) +y(x
i1
)]
h
2
12
y
(iv)
(
i
),
para alguna
i
en (x
i1
; x
i+1
).
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 177 -
7.6. Ecuaciones diferenciales con cond. de contorno Anlisis Numrico
Reemplacemos esta ltima expresin en nuestra ecuacin diferencial:
1
h
2
[y(x
i+1
) 2y(x
i
) +y(x
i1
)]
h
2
12
y
(iv)
(
i
)
. .
O(h
2
)
= 4 [y(x
i
) x
i
] .
De esta manera, nuestra ecuacin diferencial se transforma en:
[y(x
i+1
) 2y(x
i
) +y(x
i1
)] = 4h
2
[y(x
i
) x
i
] ,
y desarrollando algebraicamente, obtenemos:
_
y(x
i1
) 2(1 + 2h
2
)y(x
i
) +y(x
i+1
)

= 4h
2
x
i
,
por lo tanto, para cada i tenemos una ecuacin lineal. Denamos, entonces, el intervalo o paso
h como
ba
N
siendo N > 0; de esta manera obtendremos N intervalos para i [0; N]. Con i y h
podemos armar nuestro sistema de ecuaciones para i [1; N 1]. La matriz resultante ser:
A =
_

_
1 2(1 + 2h
2
) 1 0 0 . . . 0
0 1 2(1 + 2h
2
) 1 0 . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 . . . 0 1 2(1 + 2h
2
) 1 0
0 . . . 0 0 1 2(1 + 2h
2
) 1
_

_
.
Si hacemos que y
i
= y(x
i
) tendremos que nuestras incgnitas son:
y =
_

_
y
0
y
1
.
.
.
y
N1
y
N
_

_
.
Nuestro vector de trminos independientes ser:
B =
_

_
4h
2
x
1
4h
2
x
2
.
.
.
4h
2
x
N2
4h
2
x
N1
_

_
.
Pero hemos armado un sistema con N 1 las y N + 1 incgnitas y
i
. Para completar
el sistema debemos recordar que y
0
= y y
N
= , por lo que nuestro sistema de ecuaciones
lineales quedar como:
_

_
1 0 0 0 0 . . . 0
1 2(1 + 2h
2
) 1 0 0 . . . 0
0 1 2(1 + 2h
2
) 1 0 . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 . . . 0 1 2(1 + 2h
2
) 1 0
0 . . . 0 0 1 2(1 + 2h
2
) 1
0 0 0 0 . . . 0 1
_

_
_

_
y
0
y
1
y
2
.
.
.
y
N2
y
N1
y
N
_

_
=
_

4h
2
x
1
4h
2
x
2
.
.
.
4h
2
x
N2
4h
2
x
N1

_
.
Armemos el sistema denitivo con x [0; 1], y(0) = y
0
= 0, y(1) = y
N
= 2 y N = 10.
Con estos parmetros tendremos que h =
10
10
= 0,1. Entonces, en la matriz A tendremos el
coeciente (adems de 1):
2
_
1 + 2(0,1)
2

= 2 (1 + 0,02) = 2,04;
- Pg. 178 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico 7. Ecuaciones diferenciales ordinarias
y en el vector de trminos independientes:
4(0 + 0,1)
2
0,1i = 4(0,1)
2
0,1i = i 4(0,1)
3
;
con i [1,N 1]. El sistema denitivo quedar con la matriz de coecientes:
A =
_

_
1 0 0 0 0 0 0 0 0 0 0
1 2,04 1 0 0 0 0 0 0 0 0
0 1 2,04 1 0 0 0 0 0 0 0
0 0 1 2,04 1 0 0 0 0 0 0
0 0 0 1 2,04 1 0 0 0 0 0
0 0 0 0 1 2,04 1 0 0 0 0
0 0 0 0 0 1 2,04 1 0 0 0
0 0 0 0 0 0 1 2,04 1 0 0
0 0 0 0 0 0 0 1 2,04 1 0
0 0 0 0 0 0 0 0 1 2,04 1
0 0 0 0 0 0 0 0 0 0 1
_

_
,
y con el vector de trminos independientes:
B =
_

_
0
0,004
0,008
0,012
0,016
0,020
0,024
0,028
0,032
0,036
2
_

_
.
Al resolver el sistema de ecuaciones por alguno de los mtodos numricos que hemos
estudiado en el captulo 2, obtenemos el siguiente vector solucin:
y =
_

_
0,000
0,156
0,313
0,476
0,645
0,824
1,017
1,225
1,455
1,711
2,000
_

_
.
Si lo comparamos con el vector y obtenido con el mtodo de Euler, podemos observar
que la solucin por diferencias nitas es mucho ms precisa, ya que los y obtenidos son iguales a
los hallados por aplicacin de la solucin analtica.
7.7. Notas nales
Casi podra decirse que todos los problemas que debe enfrentar un ingeniero pueden
formularse mediante ecuaciones diferenciales. Desde el anlisis estructural hasta el diseo de
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 179 -
7.7. Notas nales Anlisis Numrico
un avin de pasajeros, las ecuaciones diferenciales intervienen en forma explcitas (deben ser
resueltas) o e forma implcita (se aplican soluciones anliticas de dichas ecuaciones).
Hasta la mitad del siglo XX, muchas de las limitaciones en los aspectos ingenieriles esta-
ban dados por las pocas soluciones analticas que se podan obtener de muchas de las ecuaciones
diferenciales, y en consecuencia, se dependa de los ensayos en modelos fsicos o en prototipos.
Con el desarrollo de las computadoras, a partir de los aos 50, y principalmente, con la aparicin
de las computadoras personales hace 25 aos, obtener soluciones aproximadas de las ecuaciones
diferenciales dej de ser un escollo en cuanto a tiempo de clculo. Prcticamente todas las dis-
ciplinas cientcas y tecnolgicas basan sus soluciones en la aplicacin de mtodos numricos.
Dentro del conjunto de mtodos numricos para resolver ecuaciones diferenciales, los
mtodos de las diferencias nitas y de los elementos nitos, y en particular este ltimo, son los
ms usados para encarar soluciones aproximadas. Y en los ltimos aos, la gran capacidad de
clculo de las computadoras han permitido adentrarse en la resolucin aproximada de problemas
con ecuaciones diferenciales no lineales, permitiendo el estudio de muchos fenmenos que antes
se consideraban como imposibles de abordar. Basta con ver el avance en el campo de los
estudios climticos, el comportamiento de los ros, el avance en la hidrulica martima, etc., que
han reemplazado el uso de modelos fsicos (muy caros y lerdos) por modelos matemticos (ms
baratos y rpidos).
- Pg. 180 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico A. El anlisis numrico y la ingeniera
Apndice A
El anlisis numrico y la ingeniera
Una de las caractersticas principales de la ingeniera es la utilizacin de herramientas
fsicas y matemticas para encarar y resolver cada uno de los problemas que enfrenta. Por algo
los estudiantes de ingeniera estudian en los primeros aos una gran cantidad de matemtica y
fsica (y qumica tambin), herramientas que nalmente sern la base para aprender los temas
ms especcos. Es comn que hoy muchos estudiantes acepten que deben aprender Anlisis
Matemtico (o Clculo), lgebra, Fsica, Qumica sin hacerse demasiadas preguntas al respecto,
aunque en muchas ocasiones no tienen bien claro cul es el uso de cada una de estas disciplinas
en la carrera elegida. Es por eso que uno de los grandes temas que se debaten en la actualidad es
cmo articular los conocimientos bsicos y los conocimientos especcos que deben ser aprendidos
y captados por los futuros ingenieros.
Dentro de estos conocimientos bsicos es donde suele ubicarse al Anlisis Numrico,
asumiendo que se trata de una herramienta matemtica esencial para todo ingeniero. Pero resulta
que no est claro cual es la incidencia de esta herramienta dentro de la gama de problemas que
resuelva la ingeniera ni cmo ineracta con el resto de los conocimientos que sta incluye.
El captulo inicial comenz con una denicin del Anlisis Numrico dada por el Dr.
Lloyd N. Trefethen, profesor de Anlisis Numrico de la Universidad de Oxford en Inglaterra,
que es la que actualmente se considera como la ms representativa:
Anlisis numrico es el estudio de los algoritmos para resolver problemas de la ma-
temtica continua.
En su artculo Numerical Analysis (ver [17]), Trefethen se explaya bastante acerca de
los alcances del anlisis numrico, su historia, la necesidad que de ella tienen los cientcos y los
ingenieros, y propone o expone cual es a su entender el futuro para esta disciplina. Pero la visin
es la de un matemtico orientado casi exclusivamente a una rama de la matemtica aplicada,
aunque hoy puede decirse que casi es una rama ms de la matemtica terica.
La visin de los ingenieros (y de los estudiantes de ingeniera) probablemente no coincida
con la de Trefethen, pues en general, pocas veces se dedican a estudiar cuestiones tericas o
no disponen de tiempo para renar o proponer nuevos algoritmos o mtodos de resolucin para
problemas conocidos o nuevos. Generalmente, estn ms dispuestos a aprender cmo usar los
modelos matemtico-numricos, entender cmo es la aplicacin prctica y eventualmente como
mejorar su aplicacin pero sin avanzar en mejoras explcitas de los mtodos sino mediante un
uso no del todo convencional, aprovechando al mximo las capacidades de los modelos. Incluso,
la utilizacin generalizada hoy de programas que permiten manejar la matemtica simblica casi
de la misma forma que en la hoja de papel, hace parecer que el entender los procesos que llevan
a la contsruccin de los algoritmos que aplican esos modelos sea, en cierta forma, superua o
innecesaria.
Sin embargo, esa visin puede ser equivocada. Y por qu? Buena parte de los mtodos
numricos aplicados en la actualidad tuvo su primer desarrollo embrionario en manos de ingenie-
ros necesitados de resolver problemas sin soluciones conocidas. Un ingeniero suele tener diferentes
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 181 -
Anlisis Numrico
problemas para encarar y resolver. Existen aquellos que ya fueron resueltos hace muchos aos,
que cuentan con soluciones tericas, a veces aproximadas, que se ajusten casi perfectamente al
problema y que no suele requerir demasiadas herramientas matemticas. Hoy se pueden citar co-
mo ejemplos de esto a una gran cantidad de temas de la ingeniera estructural relacionados con
la mecnica del slido, de la ingeniera mecnica, de la electrnica, etc. Existe una gran cantidad
de ingenieros que con ayuda de las herramientas matemticas con niveles de complejidad media,
resuelvan una gran cantidad de problemas, incluso con ayuda de programas que en algn sentido
se pueden considerar como elementales. El uso de planillas de clculo, hojas matemticas (como
el MathCAD o el SMath Studio, por ejemplo) o entornos como MatLab, Octave o Maxima da
la idea de estar utilizando algo equivalente a la hoja de papel que utilizaban los ingenieros antes
de la aparacin de la computadora personal. Pero en rigor no es los mismo.
Existe una segunda parte en la ingeniera y puede resumirse en esto: puede decirse que
hay una cantidad similar de temas que no cuentan con una solucin matemtica conocida o por
lo menos, cuya aplicacin sea sencilla o prctica para el ingeniero, y en algunos casos, todava no
hay una comprensin total del tema. Lo que no impide que sean temas que deben ser resueltos
de alguna forma o por lo menos analizados hasta el nivel de conocimiento actual para dejarlos
en evidencia y resolverlos a medida que se maniestan. Y tal vez, con los anlisis en directo
se pueda encontrar una solucin prctica, aunque fuere circunstancial. Esta es la base de la
aplicacin de los modelos fsicos a escala.
Y esto es as, porque una de las cualidades del ingeniero es la necesidad de que todo aquella
en lo que trabaja o desarrolla sea aplicado de la forma ms eciente y completa en la vida real
por la sociedad en la que vive. Disear puentes o mquinas, por citar dos ejemplos, que solamente
sean expuestas en museos o exposiciones de tecnologa no es precisamente el ideal de cualquier
ingeniero en ejercicio de su profesin. En todo caso, si est desarrollando algo nuevo y para ello
debe primero fabricar un prototipo (o un modelo en escala), lo que busca es poder entender
y resolver el problema a partir del cual no cuenta con la soluciones matemticas tradicionales
o corrientes y que ese mismo prototipo, una vez adecuado y ajustado a las condiciones reales,
sea construido y puesto a disposicin de la sociedad. tambin aspira a que los resultados de
analizarf varios de esos modelos fsicos le permitan, a veces con gran ayuda de los matemticos
y los fsicos, encontar un modelo matemtico que solucione el problema sin tener que apoyarse
permanentemente en el modelo fsico. Porque, ya se sabe, los modelos fsicos son muy caros y
difciles de ejecutar.
Dentro de esta visin, el anlisis numrico queda relegado a un conocimiento adicional
pero que pocas veces aplicar en su vida profesional. Pocas veces? Un ejemplo de que esto no es
cierto se puede ver en la utilizacin de sistemas de ecuaciones linales para resolver inumerables
problemas a lo largo del perodo de estudio. Los estudiantes de ingeniera pasan muchas horas
de su vida acadmica resolviendo cantidad de ejericios cuya base de resolucin es el planteo
de un sistema de ecuaciones lineales (Ax = B). Y cul es el mtodo pra resolverlos? Lo ms
usual es que traten siempre de usar lo aprendido en lgebra, o sea, plantear x = A
1
B. Rara
vez se plantean usar un mtodo numrico aprendido en las clases de Anlisis Numrico. Esto
es ayudado en muchos casos por la facilidad que programas como MS Excel, el MatLab o el
MathCAD, entre otros,pueden invertir la matriz. Nunca, o casi nunca, se plantean cmo hacen
esos programas para obtener los que les parece elemental. Tampoco se plantean si pueden
obtener un mejor resultado que el que les entrega el programa o mejor dicho, la funcin del
programa.
Aqu podra surgir la pregunta: es posible mejorar el resultado que entrega un programa?
Por ejemplo, la inversin de una matriz por el MS Excel, puede ser mejorada? Aqui entra
el concepto del Anlisis Numrico como herramienta del ingeniero. Supuestamente, no sera
necesario analizar esto puesto que si el MS Excel entrega un resultado, el mismo debe ser correcto.
La pregunta que un alumno o ingeniero debera hacerse no es si el resultado es correcto o no
sino, qu algortimo utiliza MS Excel para obtener esa matriz inversa? Mejorar los resultados no
- Pg. 182 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico A. El anlisis numrico y la ingeniera
pasa por la exactitud de los resultados en pantalla solamente sino por la rapidez, conabilidad
y robustez del procedimiento, que debe asegurar, por supuesto, valores numricos precisos.
Si los ingenieros slo se hubieran preocupado por resultados numricos correctos, posi-
blemente seguiran usando los mismos procedimientos de clculo que en su momento us el ing
Alexandre Eiel para calcular y luego construir la torre que lleva su nombre en Pars. Pero eso no
fue lo nico que les precup o interes. Hoy ningn ingeniero estructural trabaja con los mtodos
grco-numricos del siglo XIX y de principio del siglo XX. Tampoco utiliza los mismos criterios
de clculo que en esa poca. Lo mismo puede decirse para otras ingenieras y ramas de la ciencia.
(Como ancdota fuera de la ingeniera, los astrnomos y astrofsicos actuales estn sorprendidos
por la precisin de los clculos astronmicos de Le Verrier, un matemtico francs dedicado a la
mecnica celeste, para analizar las perturbaciones de la rbita de Urano, que le permitieron pro-
nosticar la existencia de un planeta desconocido como causa de dichas perturbaciones. Gracias
a sus indicaciones, el astrnomo alemn Johann Galle, del Observatorio de Berln, lo encontr
en la noche del 23 de septiembre de 1846, apenas cinco horas despus de recibir la carta enviada
por Le Verrier. Es Neptuno.)
Gracias a la rpida expansin del uso de las computadoras y sus programas asociados,
muchos de los problemas que la ingeniera tardaba das y meses en resolver, hoy pueden ser
resueltos en cuestin de horas. Esto le permite a los ingenieros imaginar y llevar a cabo soluciones
nuevas y ms ecientes que se comportan y se aproximan mejor a la realidad. Y al mismo tiempo,
evitan el uso de modelos fsicos que son engorrosos y, en algunos casos, muy costos. Slo apelan a
ellos en momentos indispensables en los que hay que validar el diseo. (Un ingeniero aeronutico
seal alguna vez que nunca volara en un avin cuyo diseo no fuera probado y calibrado en
un tnel de viento.)
Por eso creemos que el anlisis numrico debera ser considerado por todos los ingenieros
y, particularmente, por los estudiantes de ingeniera, como la otra herramienta prctica ms
importantes con la que disponen para su profesin, junto con el dibujo y la representacin grca.
Sin estas dos, difcilmente un ingeniero pueda desarrollar su trabajo con eciencia capacidad e
idoneidad.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 183 -
Anlisis Numrico
- Pg. 184 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico B. Un poco de historia
Apndice B
Un poco de historia
Es poco o nada lo que se ve y aprende de historia de la matemtica (y de las ciencias
en general) en la escuela media y en la universidad. No se considera como un conocimiento que
sirva para entender los procesos, el razonamiento y la lgica que sustentan esta disciplina. Esto
se puede extender a todas las ramas, como la geometra, el lgebra. el anlisis matemtico y,
por supuesto, el anlisis numrico. Eso ha llevado a que no se conozca cmo fue en realidad la
evolucin a travs del tiempo de la matemtica como disciplina y herramienta de la humanidad
para resolver una gran cantidad de problemas y cuestiones que resultaron en la evolucin de la
humanidad propiamente dicha. Sin esa evolucin de la matemtica no se habra alcanzado el
grado de desarrollo que todos conocemos hoy.
Suponer que el anlisis numrico es una disciplina moderna y que naci junto con el
anlisis matemtico o con el lgebra, es probablemente una concepcin simplista del asunto. Hay
una tendencia a considerar que la primera disciplina matemtica en desarrollarse fue la geometra,
pues la forma ms sencilla de obtener resultados numricos en la antigedad era mediante la
representacin grca. Lo interesante es que la segunda disciplina dentro la matemtica que se
comenz a desarrollar, tal vez a la par de la geometra, fue el anlisis numrico o, como se lo
llamaba antes, el clculo numrico.
La necesidad de calcular cuantos trabajadores era necesario para construir un canal de
irrigacin (como en Babilonia), o las tierras que eran necesarias para la siembra (en Egipto), o
cualquier otro caso que slo era posible representar mediante clculos aritmticos, llev a dos
cosas que son la base de la matemtica actual: la representacin numrica, y la construccin de
algoritmos de clculo, esto es, el desarrollo del anlisis numrico.
Cada pueblo de la antigedad desarroll su propio sistema de representacin numrica. y
sus formas de calcular y resolver los diferentes problemas que el avance tecnolgico les presentaba.
As, entrfe otras cosas, tanto los babilonios, los egipcios, los indios, los chinos, los grieos, los
romanos, los rabes, los mayas y los incas, entre los ms destacados, desarrollaron sus propios
sistemas numricos.
Es opinin universal que el pueblo que mayor desarrollo le impregn a la matemtica en
la antigedad fue el griego. Los matemticos griegos de la antigedad se caracterizaron por ser
brillantes y desarrollaron una ciencia de una forma jams vista antes, y con una proyeccin a
futuro muy importante, tanto que sin ella la civilizacin actual no sera lo que es. La brillantez
de los griegos se observa en que estuvieron a punto de descubrir el clculo diferencial e integral
(Arqumedes desarroll un mtodo numrico de integracin), cuyo descubrimiento por Newton
en el siglo XVII revolucion la matemtica y la fsica de la poca, y entre otras cosas permiti
conrmar el modelo heliocntrico propuesto por Coprnico y desarrollado por Kepler
1
. Hay que
recordar la cantidad de teoremas adjudicados a griegos que se estudian (por ejemplo, el famoso
Teorema de Pitgoras) y la importancia de la obra de Euclides en geometra, tanto que recin en
1
Lo notable es que Aristarco de Samos propuso un modelo heliocntrico del sistema solar que nalmente no
tuvo cabida en la ciencia ocial de la poca, dominada por las ideas de Aristteles y la teora geocntrica.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 185 -
B.1. Los egipcios Anlisis Numrico
el siglo XIX se comienza a imaginar una geometra no euclideana
2
, considerada como una gran
hereja entre algunos matemticos.
Por lo tanto, estamos muy acostumbrados y conocemos casi todas las contribuciones de
los matemticos griegos. Pero la matemtica no se construy slo con los matemticos griegos,
muy por el contrario, se nutri de muchas y fundamentales contribuciones de matemticos no
griegos. Veamos un poco cuales fueron algunos de esos aportes, alguno de los cuales fueron
decisivos y cambiaron el rumbo de la matemtica.
B.1. Los egipcios
Los egipcios construyeron un imperio que dur varios milenios, hasta que fueron conquis-
tados por los macedonios (Alejandro Magno) y los griegos, para luego ser nuevamente conquis-
tados por los romanos y luego por los turcos y los franceses y nalmente por los ingleses.
Como la idea es analizar los primeros pasos de la matemtica y en particular del anlisis
numrico, nos ocuparemos de los egipcios del perodo antiguo, entre los aos 3.000 a 600 antes
de Cristo (A.C.). Por lo pronto, el Antiguo Egipto es muy conocido por la construccin de las
pirmides, sobre todo por las tres ms famosas: las de Keops (o Jufu, tambin Khufu), Kefren
(o Jafra, tambin Khafra) y Micerino (o Menkaura), conocidas como las Pirmides de Guiza,
Giza o Gizeh (en rabe, Al Yiza). Alcanza con estas construcciones para imaginar el gran
conocimiento prctico que tenan en arquitectura e ingeniera, lo que lleva a considerar que
tambin llegaron a tener algn tipo de conocimiento matemtico. Hay que mencionar que fueron
ellos, los egipcios, los que dividieron el ao en 365 das al confeccionar un calendario solar para
determinar los perodos en los cuales deban sembrar los granos para alimentar a la poblacin.
El concepto que tenan de la matemtica en realidad era de un procedimiento prctico
para resolver problemas. Se han encontrado varios elementos que documentan esto, en los cuales,
est el sistema de representacin numrica. No se trat de un sistema posicional como el actual,
sino de un sistema parecido al romano, lo que haca que la nica operacin posible de hacer era
la suma. La multiplicacin y la divisin eran prcticamente imposibles.
Figura B.1: Nmeros egipcios en escritura jeroglca.
En la gura B.1 estn representados los nmeros egipcios en escritura jeroglca. Pero los
egipcios contaban con otro sistema de escritura, el hiertico, que era el usado por los escribas, los
funcionarios encargados de los registros y de los clculos. Son estos nmeros los que se usaban
para los clculos matemticos (gura B.2).
Ambas representaciones numricas hicieron que los clculos fueran muy complicados,
pues el sistema numrico no es posicional, tal como el actual. No obstante, se las ingeniaron para
resolver muchos problemas ingenieriles y contables. Existen dos documentos histricos que dan
muestra de esto: el Papiro de Rhind y el Papiro de Mosc, que datan del ao 1.650 A.C., si bien
el primero reere estar basado en un documento anterior del ao 1.850 A.C. El Papiro de Rhind
incluye 87 problemas en tanto que el Papiro de Mosc incluye 25. Todos estos problemas fueron
encarados de un modo estrictamente prctico.
Uno de los grandes problemas ingenieriles resueltos fueron las pirmides, en particular,
la Gran Pirmide de Guiza, la pirmide de Keops. El relevamiento de las medidas de la pirmide
2
Sin la geometra no euclideana, cuyo mximo exponente fue Georg Riemann, Einstein nunca hubiese podido
desarrollar su Teora General de la Relatividad.
- Pg. 186 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico B. Un poco de historia
Figura B.2: Nmeros egipcios en escritura hiertica.
llev a que algunos investigadores esgrimieran que los egipcios conocieron la proporcin urea
(

5+1
2
) y el nmero , en tanto que otros argumentan que no era ese el caso, y que los nmeros
hallados fueron una coincidencia.
3
En algo que s concuerdan es que tenan la nocin geomtrica
del tringulo de Pitgoras de lados 3 y 4 e hipotenusa 5. (Ese tringulo cumple con el teorema,
pues 3
2
+ 4
2
= 5
2
.)
Figura B.3: El Papiro de Rhind.
Lo ms notable es que los egipcios desarrollaron una serie de procedimientos para resolver
varios de esos problemas que se encuentran en los documentos mencionados. Podemos decir que
3
Como acotacin a ese debate, es indiferente que conocieran o no el nmeros o a la proporcin urea tal
como los conocemos hoy, pues lo importante es que de alguna forma los calcularon o aproximaron y los usaron en
forma prctica. Con lo cual podra decirse que estaban en el camino correcto que luego deriv en la matemtica
abstracta de los griegos.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 187 -
B.2. Los babilonios Anlisis Numrico
se dedicaron a construir algoritmos de clculo sencillos, o lo que es lo mismo, se dedicaron a
una forma incipiente del anlisis numrico. Por ejemplo, en el Papiro de Rhind hay una forma
preliminar del mtodo de la Regula-falsi para resolver ecuaciones lineales.
4
Pero los egipcios
todava estn algo lejos de desarrollar algo parecido a procedimientos de clculo sistematizados,
an cuando muchos suponen que la inuencia sobre el resto de las culturas contemporneas y
posteriores es importante y notable.
B.2. Los babilonios
Los primeros babilonios fueron un pueblo que vivieron en la zona de la Mesopotamia
asitica, en lo que hoy es parte de Irak, entre los aos 2.000 y 1.500 A.C. Fueron tal vez los
primeros en desarrollar una matemtica incipiente y, particularmente, en crear los primeros pasos
de la matemtica que hoy conocemos. Esto se debi a que las ciudades babilnicas contaban con
importantes avances tecnolgicos para la poca como son los sistemas de canales de irrigacin,
que no solo servan para transportar agua, sino tambin mercaderas y armas.
Para entender la capacidad de los babilonios, hay que tener en cuento que fueron unos
astrnomos extraordinarios. Ejemplo de ello es que gracias a sus observaciones astronmicas
dividieron el da en 24 horas, las horas en 60 minutos y los minutos en 60 segundos. Es decir,
crearon un sistema de representacin numrica sexagesimal. Creo que eso basta para captar
enorme inteligencia de los matemticos babilnicos, pues estamos usado ese mismo sistema,
4.000 aos despus! Y no slo lo usamos para medir el tiempo, sino que tambin para medir la
posicin geogrca y los ngulos planos.
Figura B.4: Nmeros babilnicas.
Pero no se quedaron con eso. Hay que considerar que el sistema numrico de los babilonios
fue el primer sistema posicional, lo cual muestra lo avanzados que estaban en trminos matem-
ticos. Adems del sistema numrico posicional que idearon, gracias a que adoptaron la escritura
cuneiforme en tablas de arcilla cocida, se dedicaron a fabricar muchas tablas con ayudas num-
ricas. Por ejemplo, tenan tablas con los cuadrados (a
2
) de 59 nmeros y con los cubos (a
3
) de
32 nmeros, por supuesto, en el sistema sexagesimal. Esto los indujo a considera la formulacin
de mtodos de clculo que facilitaran el uso de dichas tablas.
4
Es muy interesante el anlisis del Papiro de Rhind que est en [12]
- Pg. 188 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico B. Un poco de historia
Figura B.5: Ejemplo de tablas babilnicas.
As, para calcular el producto de dos nmeros (a b), disponan de dos procedimientos:
a b =
(a +b)
2
a
2
b
2
2
o,
a b =
(a +b)
2
(a b)
2
4
.
Convirtieron el producto en la suma algebraica de tres cuadrados divididos por 2 en el
primer caso, y de dos cuadrados divididos por 4, en el segundo. Con el segundo algoritmo, slo
tenan que buscar en la tabla los cuadrados de la suma y la diferencia de dos nmeros, tomar
un cuarto de esos resultados y restarlos. Impresionante! Esto no es otra cosa que un algoritmo
segn el concepto moderno del mismo.
Alguien podra objetar que resolvieron el producto pero que nada hicieron con la divisin.
Efectivamente, la divisin es ms complicada y siempre gener dicultades en la antigedad. Pero
los babilonios encontraron que hacer
a
b
es lo mismo que hacer a
1
b
. Qu hicieron? Pues fabricaron
tablas con los inversos de los nmeros.
Con las tablas que fabricaron se dedicaron a resolver una gran cantidad de problemas
concretos. Tomemos por ejemplo el siguiente: determinar los lados de un rectngulo cuya rea es
0,75 y su diagonal es 1,25
2
. Escrito en lgebra actual equivale al siguiente sistema de ecuaciones:
x y = 0,75
x
2
+y
2
= 1,25
2
.
La segunda ecuacin no es otra cosa que ... el Teorema de Pitgoras! Por supuesto, los
babilonios conocan dicho teorema pero no con la formulacin algebraica actual.
5
Saban que

2
era la diagonal de un cuadrado con lado unitario. En rigor, para ellos

2 = 1,4142963, en vez
de

2 = 1,414213562.
6
Pero lo ms interesante es la forma en que resolvieron el sistema anterior: utilizaron un
algoritmo casi moderno. La secuencia de procedimiento es la siguiente:
1. Calcule 2xy 1,50
5
Pitgoras tampoco lo escribi en la forma algebraica actual. El lgebra, tal como lo conocemos ahora, fue un
desarrollo de los matemticos rabes.
6
Ver en [12] Pythagorass theorem in Babylonian mathematics.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 189 -
B.3. Los indios Anlisis Numrico
2. Reste 2xy a x
2
+y
2
1,25
2
1,50 = 0,0625
3. Saque la raz cuadrada para obtener x y

0,0625 = 0,25
4. Divida por 2 para obtener
xy
2

0,25
2
= 0,125
5. Divida x
2
+y
2
2xy por 4
0,0625
4
= 0,015625
6. Sume xy a este resultado 0,015625 + 0,75 = 0,765625
7. Saque la raz cuadrada para obtener
x+y
2

0,765625 = 0,875
8. Sume
xy
2
a
x+y
2
para obtener x 0,875 + 0,125 = 1
9. Reste
xy
2
a
x+y
2
para obtener y 0,875 0,125 = 0,75
10. Solucin: x = 1 y y = 0,75.
Es un ejemplo que hoy se usara como seudocdigo de programacin, que se encontr en
una tabla conocida como Tabla de Tell Dhiyabi, salvo que los nmeros estn representados en el
sistema sexagesimal babilnico. Un algoritmo maravilloso!
B.3. Los indios
Es ms que evidente el gran aporte de los matemticos indios a la matemtica en ge-
neral. Y no es otra cosa que el sistema numrico que usamos hoy en forma cotidiana para la
representacin nuestro sistema decimal. Se trata de los mal llamados nmeros arbigos, que
fueron en realidad una creacin de los matemticos indios, que adoptados y modicados por los
rabes, fueron introducidos en Occidente en el siglo XIII por Leonardo de Pisa, ms conocido
como Fibonacci .
La cultura india tuvo varias etapas. La ms antigua se remonta a alrededor del 2.500 A.C.
sobrevivi hasta el 1.700 A.C. A esta etapa se la conoce tambin como la civilizacin Harappan.
Aqu se destaca el uso de un sistema decimal de medidas cuya unidad de medicin fue la pulgada
del indo, que meda unos 3,35 cm (o 1,32 pulgadas actuales).
El siguiente avance o aporte se produjo a partir del 800 A.C., poca en se escribieron los
Sulbasutras, compilacin del conocimiento matemtico entre el 800 y el 200 A.C. Aqu el aporte
se concentr en geometra y tena un n religioso, pues domina la religin vdica que favoreci
el desarrollo matemtico asociado a la astronoma.
Esta religin fue reemplazada por el jainismo a partir del siglo VI A.C., poca en la que
se crey que comenz una etapa declinante del conocimiento matemtico indio. Hoy se sabe, en
cambio, que se avanz en la teora de los nmeros, en operaciones aritmticas, en geometra,
ecuaciones lineales, cbicas y curticas, y en el clculo combinatorio. Adems desarrollaron una
teora del innito con varias clases de innitos (2.000 aos antes que Cantor!) y tenan nociones
del logaritmos de base 2 (sorprendente tambin, pues el sistema numrico era decimal).
Es a partir del 500 despus de Cristo (D.C.) cuando se desarroll lo que se conoce como
el perodo clsico de la matemtica india, la cual es tambin el comienzo de una nueva era
en la astronoma y la matemtica. Una de las obras fundamentales de esta poca es la del
matemtico Aryabhata, que introdujo la trigonometra en la India, lo que dio un gran impulso
a la ciencias ya mencionadas. Adems de Aryabhata, otros matemticos importantes fueron sus
casi contemporneos Varahamhina y Yativrsaha.
Pero es el matemtico Brahmagupta a principios del siglo VII D.C. quien hizo una de
las mayores contribuciones a la matemtica y a los sistemas numricos al introducir el concepto
de los nmeros negativos y el cero. A eso, que ya es probablemente lo ms revolucionario en su
momento, hay que agregar que contribuy con frmulas y mtodos de interpolacin que invent
- Pg. 190 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico B. Un poco de historia
para calcular tablas con la funcin seno. Resulta ms que notable que el matemtico que introdujo
la mayor revolucin en la matemtica se haya dedicado al desarrollo de mtodos de interpolacin,
algo que hoy es casi monopolizado por el anlisis numrico.
Figura B.6: Evolucin de los nmeros de la India.
Si nos concentramos en los nmeros indios, pues resultan ser la mayor contribucin a la
matemtica, veremos en la gura B.6 la evolucin de los smbolos numricos (o numerales) a lo
largo de los siglos. Observemos que en los primeros dos casos, los smbolos son bastante sencillos
para los nmeros 1 a 3, en cambio, el resto cuenta con smbolos ms trabajados, an cuando en
nada se parecen a los que usamos nosotros actualmente. En cambio, en el ltimo grco, notemos
que los nmeros 1 a 3 tienen una grafa similar a la nuestra, lo mismo que el cero, no as para
el resto, que mantiene cierta diferencia con los actuales. Como una curiosidad, podemos ver que
el smbolo que usamos para el cuatro corresponde al nmero cinco y que el smbolo del ocho
corresponde al nmero cuatro, en tanto que el smbolo del nueve se parece bastante al actual
aunque invertido. Resulta que si bien el origen de los nmeros que hoy usamos es de la India, la
grafa corresponde a la rabe, quienes tomaron los nmeros y los adaptaron a su grafa.
La introduccin de los nmeros indios no slo facilit la representacin de los nmeros si
no que agreg algo ms: el sistema posicional en base diez, gracias a la introduccin del cero. Si
bien los babilonios ya haban desarrollado un sistema posicional pero con base sesenta, no haban
conseguido desarrollar o inventar el concepto de cero. Por lo tanto, estas dos contribuciones de
la matemtica india fueron la gran revolucin para la matemtica toda, que Occidente comenz
a usar en el siglo XV y adopt en el siglo XVI D.C. en forma denitiva.
Hay todava cierta controversia acerca del origen del smbolo del cero en los nmeros
indios. Algunos autores estiman que el origen del cero es propiamente de la India, en tanto que
otros creen ver una adaptacin de un smbolo parecido que usaban los astrnomos griegos (en
particular, por Tolomeo en el siglo II D.C.) y que fue adoptado por los indios en el siglo I o siglo
II D.C.
7
B.4. Los chinos
Los chinos tuvieron durante los primeros siglos o milenios de su dilatada civilizacin un
desarrollo matemtico independiente del resto del mundo o del resto de las culturas, principal-
mente en el mundo antiguo. Esa independencia en el desarrollo estuvo signada por las caracte-
7
Hay un artculo interesante en [12] acerca de la historia del cero, A History of Zero.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 191 -
B.4. Los chinos Anlisis Numrico
rsticas geogrcas de China, separada del resto del continente asitico por cadenas montaosas
y mares, y por el hecho de que las conquistas que sufrieron terminaron con la asimilacin de los
conquistadores a la cultura china y no al revs, como usualmente ocurri.
La matemtica china se caracteriz por un desarrollo conciso, a diferencia de la matem-
tica griega, es decir, fue pensada como herramienta para resolver problemas concretos derivados
del comercio, la arquitectura, la astronoma o el cobro de impuesto.
Si bien la civilizacin china data del ao 1.000 A.C., el avance notable de la matemtica
se dio alrededor del siglo IV A.C. Fueron los primeros en usar unas pizarras o tablas de clculo,
lo que supone el uso de un sistema numrico decimal. De todas formas, hay poca informacin
del conocimiento matemtico chino anterior al ao 100 A.C. Slo se cuenta con un libro del ao
180 A.C. aproximadamente, ms otros posteriores, aunque no estn completos. Se conoce un
texto astronmico, recopilacin de conocimientos entre el 100 A.C. y el 100 D.C., que incluye
una versin china del Teorema de Pitgoras.
Figura B.7: Representacin numrica utilizada en las pizarras o tablas de clculo.
Otra de las recopilaciones chinas en materia de conocimiento matemtico es el libro
Jiuzhang suanshei (Prescripciones matemticas en nueve captulos). Este libro contiene
muchos problemas con sus respectivas soluciones. Entre los temas que incluye estn las soluciones
para obtener las races cuadrada y cbica mediante una tcnica geomtrica que es equivalente al
uso del tringulo de Pascal, y la solucin de sistemas de ecuaciones lineales, que logra obtener
soluciones numricas explcitas manipulando los coecentes de las ecuaciones, que no es otra cosa
que uno de los mtodos ms utilizados en el anlisis numrico, conocido como Eliminacin de
Gauss.
Otro de los logros chinos fue la aproximacin del nmero , al que denieron dentro de
estos lmites: 3,1415926 < < 3,1415927. El matemtico Zu Chongzhi (429-501 D.C.) -o Tsu
Chung Chi- recomendaba tomar el valor
355
113
como una muy buena y precisa aproximacin, y
22
7
,
para una precisin normal.
8
Por otro lado, el desarrollo matemtico chino estuvo muy ligado a la astronoma. Y en la
astronoma, una de las herramientas ms utilizadas era la interpolacin, por lo que el astrnomo
Liu Zho introdujo la interpolacin cuadrtica con un mtodo de diferencias de segundo orden
(siglo VI D.C.).
Como se escribin al principio, hasta el siglo XIV D.C., se puede considerar que la ma-
temtica china avanz en forma autnoma respecto del resto del mundo, si bien hay algunos
investigadores que encontraron el uso de un smbolo para el cero muy similar al usado por los
matemticos indios. An as, desarrollaron mtodos para hallar races de polinomios (usaron un
mtodo conocido hoy como de Runi-Horner para ecuaciones hasta grado 10) y un mtodo de
interpolacin cbico similar al mtodo de las diferencias progresivas de Newton.
8
El mtodo utilizado por Zu Chongzhi para obtener la aproximacin del nmero se bas en un polgono
de 3.072 lados. Arqumedes, quien clculo el valor de en el siglo III A.C. y es considerado como el primero en
calcular ese nmero en forma sistemtica, utiliz uno de 96 lados y lo deni como
223
71
< <
22
7
. Esta coincidencia
podra suponer que la matemtica china en esa poca ya estaba vinculada con el resto del mundo, tal vez ms
de lo que se piensa. De todos modos, la mayora de los investigadores considera poco probable que Zu Chongzhi
conociera el trabajo de Arqumedes.
- Pg. 192 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico B. Un poco de historia
Figura B.8: Nmeros chinos.
En pocas posteriores y hasta la actualidad, la matemtica china se integr a la del resto
del mundo y fue inuida por el conocimiento occidental, pero manteniendo su particularidad en
algunos temas.
Puede decirse que uno de los grandes aportes a la aritmtica es el famoso baco chino,
tal vez la primera herramienta de clculo mecnica y antecesor de la regla de clculo y las
calculadoras modernas.
B.5. Los rabes
Si la matemtica actual tiene una deuda con los matemticos indios, que introdujeron el
sistema numrico posicional que se utiliza en casi todo el mundo, tanto que algunos investiga-
dores la llaman la gran deuda, entonces puede considerarse que los otros grandes aportantes
no debidamente reconocidos son los matemticos rabes, quienes aportaron conocimientos y
nuevos desarrollos a la matemtica actual en el mismo nivel que los considerados padres de la
matemtica, los griegos.
Durante mucho tiempo los matemticos rabes fueron considerados errneamente como
reproductores del conocimiento matemtico griego, algo que hoy se sabe, no se ajusta a la
verdad. An no se sabe a ciencia cierta cmo se desarroll la matemtica rabe a partir del ao
800 D.C. en el rea que hoy ocupan Irn e Irak, y en particular, en Bagdad, pero se estima que
la inuencia de los matemticos indios fue determinante en este desarrollo, producto tal vez del
comercio entre rabes e indios.
Los rabes comenzaron traduciendo los viejos textos griegos, es cierto, pero aportaron a
la matemtica otra de las grandes ramas de la matemtica actual. Entre las traducciones ms
importantes hechas por los rabes se encuentran las de las obras de Euclides (entre ellas, los
Elementos, fundamental en geometra), algunas obras de Arqumedes y las obras completas de
Diofanto y Menelao, en matemtica, y el Almagesto de Claudio Tolomeo
9
, el mayor astrnomo
y gegrafo de la antigedad, que vivi alrededor del siglo II D.C., que fuera fundamental como
piedra angular del conocimiento astronmico y geogrco entre el siglo VIII y el siglo XV D.C.
en Asia menor y Europa.
10
9
En realidad, el nombre de la obra fue El gran tratado, en griego H Megal Syntaxis, cuya traduccin al rabe
se denomin Al-Majist, que al ser traducido al latn tom el nombre de Almagesto.
10
Es probable que sin el Almagesto de Claudio Tolomeo, Coln nunca hubiese evaluado navegar hacia el
oeste en bsqueda de las Indias Orientales. An con el error maniesto en la determinacin del radio del globo
terrestre, los mapas y los conocimientos astronmico y geogrco incluidos en dicha obra ayudaron a denir la
idea de Coln.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 193 -
B.5. Los rabes Anlisis Numrico
Figura B.9: Nmeros arbigos.
Para tener una idea cabal de la contribucin de los rabes a la matemtica actual, basta
saber que una de las ramas ms importantes de la matemtica actual, el lgebra, nace con
uno de los matemticos ms brillantes de la Edad Media: Abu Jafar Muhammad ibn Musa al-
Khwarizmi, o simplemente, al-Khwarizmi, quien vivi entre los aos 780 y 850 D.C., aunque no
hay datos certeros al respecto. Su gran revolucin consisti en cambiar el viejo concepto griego de
una matemtica geomtrica para pasar a una matemtica unicadora de todos los conocimientos
disponibles hasta el momento: el lgebra. Su obra ms importante, Kitab al-Mukhtasar
hisab al-jabr wal-muqabala, que traducido signica Libro conciso de clculo de restauracin y
oposicin, es justamente la que sirvi para darle el nombre a esta nueva rama de la matemtica
(al-jabr)
11
y, por supuesto, es el primer libro de lgebra. No contento con esto, la latinizacin
de su apellido en las publicaciones occidentales, que se tradujo como Algoritmi, Algorizmi
o Alchorismi, llev a la creacin de la palabra que hoy es fundamental en el anlisis numrico:
algoritmo.
No slo invent el lgebra sino que adems fue el que introdujo en el imperio arbigo el
sistema numrico posicional y los smbolos numricos de la matemtica india, en su obra Kitab
al-hisab al-cadad al-hindi , o sea, Libro del clculo con los nmeros hindes, con todo lo que
ello signica. Posteriormente, otros matemticos le dieron la forma actual a los nmeros, que
pasaron a ser conocidos como nmeros arbigos, y que son los que todos conocemos y usamos,
entre ellos al-Biruni (Abu Rayhan al-Biruni ) y al-Banna al-Marrakushi (Abul-Abbas Ahmad ibn
Muhammad ibn Uthman al-Azdi ), como se ve en la gura B.9.
A al-Khwarizmi se suma otro de los grandes matemticos rabes, Omar Khayyam (Ghi-
yath al-Din Abul-Fath Umar ibn Ibrahim Al-Nisaburi al-Khayyami ), de origen persa y que vivi
en el siglo XI D.C., que se ocup de mejorar el lgebra de al-Khwarizmi, al armar una clasicacin
completa de las ecuaciones cbicas con soluciones geomtricas que se basaron en intersecciones
de secciones cnicas.
El matemtico al-Karaji (Abu Bakr ibn Muhammad ibn al-Husayn Al-Karaji ), que vivi
entre 953 y 1.029 D.C., parece ser que fue el primero en liberar al lgebra de las operaciones
geomtricas como solucin de los problemas y las reemplaz por operaciones aritmticas. Tambin
fue quien descubri el teorema del binomio con exponentes enteros, que fue un factor fundamental
en el desarrollo del anlisis numrico con el uso del sistema decimal.
11
El nombre lgebra provino de la traduccin al latn hecha por Gerardo de Cremona, aproximadamente en
1.170 D.C., cuyo ttulo fue: Liber Maumeti lii Moysi Alchorismi de Algebra et almuchabala, cuya traduccin
al castellano es: Libro de Mahoma, hijo de Moiss, Alchorismi, de lgebra y almuchabala.
- Pg. 194 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico B. Un poco de historia
Y hay ms. El matemtico Ibrahim ibn Sinan (908-946 D.C.) introdujo un mtodo de
integracin ms general que el desarrollado por Arqumedes, en tanto que los matemticos Abul
Wafa (Mohammad Abul-Wafa al-Buzjani ), Abu Nasi Mansur (Abu Nasr Mansur ibn Ali ibn
Iraq) y el mencionado al-Biruni, usaron frmulas matemticas que incluan a las funciones seno
y tangente, en sus clculos astronmicos. Justamente, en astronoma es donde se dieron unos
avances extraordinarios que mejoraron notablemente los conocimientos de la poca, que estaban
basados en el famoso Almagesto de Claudio Tolomeo. Fueron los avances ms importantes
hasta el Renacimiento, slo superados por la teora heliocntrica de Coprnico.
B.6. Los mayas
La civilizacin maya vivi en la zona de la pennsula de Yucatn, en lo que hoy es Belize,
Honduras, El Salvador, Guatemala y parte de Mxico. Se estima que dur entre el 2.000 A.C. y
el 900 D.C. Cuando los espaoles conquistaron Amrica, la civilizacin haba declinado y buena
parte del territorio estaba bajo dominacin azteca.
12
Fue el monje franciscano Diego de Landa quien se ocup de ayudar y proteger al pueblo
maya de los abusos de los espaoles de la poca, probablemente en la segunda mitad del siglo XVI
D.C. Sin embargo, su falta de conocimiento de la cultura y su mala interpretacin de la escritura
jeroglca de los mayas, lo llev a quemar casi toda la obra escrita existente, lo que produjo
una angustia terrible en el pueblo. Pocos documentos sobrevivieron semejante destruccin, entre
ellos, el denominado Cdigo de Dresde. Pero, ms adelante, y probablemente arrepentido de la
destruccin cometida, se encarg de escribir un libro dedicado a la cultura maya cuyo ttulo es
Relacin de las cosas de Yucatn, publicado alrededor de 1.566.
Por lo pronto, el perodo ms importante de los mayas se dio entre los aos 250 y 900 D.C.,
llamado hoy el perodo clsico y en el que produjeron los mayores avances y conocimientos en
varias reas. En esa poca construyeron varias ciudades, como Tikal, por ejemplo, ciudad que lleg
a albergar a 50.000 habitantes. Tambin construyeron sistemas de irrigacin para sosticados
sembrados que abastecan de alimentos a la poblacin, lo cual da una idea de conocimientos
avanzados en hidrulica, adems de arquitectura e ingeniera.
Figura B.10: Nmeros mayas.
Otra caracterstica es que la religin que profesaban los convirti en unos astrnomos ex-
traordinarios. Esto deriv en el desarrollo de importantes conocimientos matemticos. Es notable
que los mayas fueron el otro pueblo -conocido- que desarroll un sistema numrico posicional que
12
Hernn Corts desembarc en el norte de la pennsula y rpidamente logr tomar posesin de la zona porque
los descendientes de los mayas apenas opusieron resistencia.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 195 -
B.7. Los incas Anlisis Numrico
inclua al cero, que era de base 20 (no de base 10 como el nuestro). Este notable sistema no fue
un sistema posicional en el sentido actual, pues en la posicin tres (el equivalente nuestro a las
centenas) en lugar de corresponder a 20
2
, o sea, 400, corresponda a 360, es decir, a 18 20, para
luego continuar con posiciones en base 20. Por ejemplo, el nmero [8; 14; 3; 1; 12] en notacin
maya, convertido a notacin actual es:
12 20
0
+ 1 20 + 3 20 18 + 14 20 18 20 + 8 20 18 20
2
=
12 + 20 + 3 360 + 14 7.200 + 8 144.000 = 1.253.912.
La descripcin de este sistema se encontr en el Cdigo de Dresde, el cual contiene buena
parte del conocimiento astronmico de los mayas, por lo cual algunos investigadores consideran
que es muy posible que contaran con al menos dos sistemas numricos: uno para la astronoma,
el que acabamos de mostrar, y otro para las operaciones normales, ese s posicional completo y
de base 20.
13
El conocimiento astronmico de los mayas es ms que asombroso. Fueron unos extraor-
dinarios observadores que guardaban todas las mediciones y observaciones que hicieron. Eso los
llev a denir la duracin del ao solar en 365,242 das de duracin, que estaba dividido en en
18 meses de 20 das, a los que agregaban un mini-mes de 5 das al nal del ao. Ese calendario
era el calendario civil. Es notable esa divisin del ao, pues da la impresin que esa es la razn
del sistema posicional visto antes. Adems, contaban con otro calendario, el ritual o religioso, de
260 das al ao, dividido en 13 meses de 20 das (otra vez la base 20). Esa diferencia entre ambos
calendarios haca que ambos coincidieran en un mismo ciclo cada 18.980 das, o sea, cada 52 aos
civiles, que era justamente la duracin del ciclo sagrado. Tengamos en cuenta que hoy en da la
duracin del ao solar est calculado en 365,242198 das, lo que muestra la asombrosa capacidad
de los mayas para las mediciones y los clculos, As tambin, fueron muy precisos para calcular
el mes lunar. De acuerdo con las mediciones hechas en Copn (acttualmente en la frontera de
Guatemala y Honduras), el mes lunar dura 29,5302, en tanto que segn las mediciones hechas
en Palenque (Mxico), el lunar dura 29,5308 das. El valor actual es 29,53059, casi el promedio
de ambas mediciones. Nuevamente, asombroso!
Lamentablemente, no se conocen otros detalles del desarrollo matemtico de los mayas,
pero s se sabe que tuvieron un conocimiento geomtrico muy avanzado, que se observa en la
arquitectura.
B.7. Los incas
Los incas fueron imperio que se extendi entre el norte de Ecuador y la provincia de
Mendoza (Argentina) al sur, y desde el altiplano de Bolivia y Per hasta la costa del Ocano
Pacco. En relacin con otros imperios, incluyen el maya y el azteca, fue de muy corta duracin,
pues en su mximo apogeo alcanz a durar unos 100 aos, entre 1.430 y 1.530 aproximadamente,
cuando fue conquistado y destruido por los espaoles, en medio de una guerra interna pr la
sucesin del Inca.
Una de las peculiarides del imperio inca es que no tuvieron un sistema de escritura tra-
dicional, por lo que la transmisin de buena parte del conocimiento se haca en forma oral o me-
diante representaciones o dibujos, tanto en telas como en vasijas u otros elementos, generalmente
producto de la alfarera. Esta falta del sistema escrito formal, ha dicultado enormemente
entender el alcance de los conocimientos que haban alcanzado.
An as, tuvieron un sistema de registro contable, si se quiere, bastante avanzado, que
consisti en un conjunto de cuerdas anudadas que servan como representacin de cantidades
(nmeros). Estos registros se denominaban quipu y estaban basado en sistema de represen-
tacin numrica de base 10. Era bastante complejo y permita representar nmeros bastante
13
Esta hiptesis no es tan descabellada, pues algo parecido sucede hoy con el sistema numrico posicional
decimal y el sistema sexagesimal usado en mediciones geogrcas y astronmicas.
- Pg. 196 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico B. Un poco de historia
grandes, en el orden de 10
5
. Tengamos en cuenta que los nmeros romanos eran muy pobres
como representacin numrica, lo mismo que los griegos, en algn sentido, en tanto que los n-
meros indo-arbigos eran muy ecientes, lo mismo que el sistema de los mayas. Esta forma de
representacin inclua una forma de cero, mediante la ausencia de nudos.
Figura B.11: Representacin del nmero 586 en un quipu.
El quipu era usado esencialmente como un sistema de registro contable o equivalente,
lo que requera de personal capacitado para descifrarlos. Esos empleados, de alto rango, eran
conocidos como quipu-camayo. El sistema de registro permita que de las cuerdas principales
salieran cuerdas subsidiarias, lo cual pareciera darles una exibilidad muy importante al momento
de manejar esos registros.
Figura B.12: Ejemplo de un quipu con cuerdas subsidiarias.
Como indicamos antes, La falta de u n sistema de escritura tradicional ha dicultado
el entendimiento de la matemtica inca. S se conocen elementos que se asocian a una especie
de baco inca o pizarra (o tabla) de clculo, cuyo nombre es yupana, que de acuerdo con los
investigadores, era un sistema de ayuda en los clculos numricos. Pero tambin hay otros que
indican que los mismos quipus eran usados como elementos de clculo.
Dentro los conocimientos avanzados de los incas se encuentran la hidrulica, la ingeniera,
la arquitectura y la astronoma. En los pocos aos que dur el imperio, construyeron varios canales
de irrigacin en la zona del Cusco (o Cuzco), grandes reas para cultivo en forma de terrazas
escalonadas con canales de irrigacin
14
, carreteras para la comunicacin del imperio
15
y templos
14
En la Quebrada de Humahuaca quedan restos de una de ellas en la zona de Coctaca, a unos 6 km al este de
la ciudad de Humahuaca.
15
Lo curioso es que las carreteras no fueron hechas para vehculos sino para mensajeros a pie, los chasquis,
pues no conocieron la rueda.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 197 -
B.7. Los incas Anlisis Numrico
y edicios que se caracterizaron por un espectacular conocimiento en el uso de la piedra como
elemento base en el diseo de estructuras.
Y respecto del conocimiento astronmico, lo incas usaron un calendario solar de 365 das,
muy similar al usado por los mayas y los egipcios, aunque con algunas peculiaridades debidas a
su sistema numrico. Existen algunos investigadores que creen que para los clculos astronmicos
lo incas contaban con un sistema numrico similar al maya, pero de base 36 y 40. Es por eso
que debera seguirse la investigacin acerca de la matemtica inca, pues es probable que se
encuentren muchos ms datos y de esa forma, tener un mejor entendimiento de los conocimientos
matemticos que parecen haber sido muy importantes.
- Pg. 198 - Resumen de las Clases Tericas Revisin: 02/2013
Anlisis Numrico Bibliografa
Bibliografa
[1] Akima, H. A New Method of Interpolation and Smooth Curve Fitting Based on Local Pro-
cedures. J.ACM, vol. 17, no. 4, pp. 589-602, 1970.
[2] Burden, R. L. & Faires, J. D. Anlisis Numrico. Sexta Edicin, International Thomson,
1998.
[3] Dennis Jr., J. E. & More, J. J. Quasi-Newton methods, motivation and theory. SIAM
Review, Vol 19, No 1, pp. 46-89. January 1977.
[4] Ezquerro, J. A., Gutirrez, J. M., Hernndez, M. A. y Salanova, M. A. El mtodo de Halley:
posiblemente el mtodo ms redescubierto del mundo.Universidad de La Rioja, Espaa. 2001
[5] Gavurin, M. K. Conferencias sobre los mtodos de clculo. Editorial Mir, 1973.
[6] Goldberg, D. What every Computer Scientist should know about Floating-Point Arithmetic.
ACM Computing Surveys, March 1991.
[7] Gonzlez, H. Anlisis Numrico, primer curso. Primera Edicin, Nueva Librera, 2002.
[8] Higham, N. J. Accuracy and Stability of Numerical Algorithms. SIAM, 1996.
[9] Higham, N. J. How accurate is Gaussian Elimination. Numerical Analysis 1989, Proceedings
of the 13th Dundee Conference, volume 228 of Pitman research Notes in Mathematics.1990.
[10] Higham, N. J. The numerical stability of barycentric Lagrange interpolation. IMA Journal
of Numerical Analysis. 2004.
[11] Marshall, G. Solucin numrica de ecuaciones diferenciales, Tomo I. Editorial Revert S.A.,
1985.
[12] OConnor, J. J. & Robertson, E. F. MacTutor History of Mathematics. University of St
Andrews. (http://www-gap.dcs.st-and.ac.uk/ history/Indexes/HistoryTopics.html)
[13] Saad, Y. Iterative Methods for Sparse Linear Systems. Second Edition, 2000.
[14] Samarski, A. A. Introduccin a los mtodos numricos. Editorial Mir, 1986.
[15] Shewchuk, J. R. An introduction to the Conjugate Gradient Method without the agonizing
pain. Edition 1
1
4
. School of Computer Science. Carnegie Mellon University.
[16] Trefethen, L. N. The Denition of Numerical Analysis. SIAM News. November 1992.
[17] Trefethen, L. N. Numerical Analysis. Princeton Companion to Mathematics. 2008.
[18] Trefethen, L. N. & Berrut, J. P. Barycentric Lagrange Interpolation. 2004.
[19] Zill, D. G. Ecuaciones diferenciales con aplicaciones de modelado. Sptima Edicin, Inter-
national Thomson, 2002.
Revisin: 02/2013 Resumen de las Clases Tericas - Pg. 199 -