Vous êtes sur la page 1sur 196

http://www.elsolucionario.blogspot.

com

LIBROS UNIVERISTARIOS
Y SOLUCIONARIOS DE
MUCHOS DE ESTOS LIBROS

LOS SOLUCIONARIOS
CONTIENEN TODOS LOS
EJERCICIOS DEL LIBRO
RESUELTOS Y EXPLICADOS
DE FORMA CLARA

VISITANOS PARA
DESARGALOS GRATIS.
Hernán González

Análisis numérico
PRIMER CURSO

10
nueva
- i co librería

i
índice general

Capítulo I. Errores en el Cálculo Numérico


1.1 Introducción 1
1.2 Definiciones Primarias 5
1.3 Fuentes de error y error final 6
1.4 Error absoluto, error relativo y cota del error 8
1.5 Propagación de errores inherentes 12
1.6 Representación de números 24
1.7 Errores de redondeo en operaciones aritméticas
en puntó flotante 36
1.8 Cálculo de la propagación de errores inherentes y
de redondeo utilizando la gráfica de un proceso 38
1.9 Cálculo de l;i propagación de errores inherentes y
clt! icdundco iitiii/ando los números de condición 49
1.10 Errores do truncamiento y de discretización 61
1.11 Error total, aplicaciones y recomendaciones generales 65
Ejercicios 72

Capitulo II. Álgebra lineal numérica 77


11.1 Introducción 77
11.2 Conceptos básicos de Álgebra Lineal 78
11.3 Métodos directos para resolver sistemas
de ecuaciones lineales 82
11.4 Matrices especiales 103
II !• Métodos iterativos . 106
índice general xv
xiv Análisis numérico. Primer curso

11.6 Errores en la resolución de sistemas de ecuaciones lineales 118 V.3 Otros métodos de integración numérica 283
V.4 Error total en la integración numérica 289
Ejercicios 140
V.5 Diferenciación numérica 293
Ejercicios 297
Capítulo III. Ecuaciones no lineales 145
111.1 Introducción 145 Capítulo VI. Resolución numérica de ecuaciones
111.2 Aproximaciones iniciales. Métodos de arranque 146 diferenciales ordinarias 301
111.3 Error de truncamiento en la resolución de ecuaciones
VI.1 Introducción 301
no lineales 153
VI.2 Problemas a Valores Iniciales. Métodos de paso simple 312
111.4 Métodos de refinamiento 158
VI.3 Problemas a Valores Iniciales. Métodos de paso múltiple 331
111.5 Raíces Múltiples 179
VI.4 Resolución de Sistemas de Ecuaciones Diferenciales
111.6 Sistemas de ecuaciones no lineales 180
Ordinarias de Primer Orden y Problemas de Orden Superior 348
111.7 Error total en la resolución de ecuaciones no lineales 181
VI.5 Métodos Directos para la resolución de Problemas a Valores
Ejercicios 189
Iniciales de Segundo Orden 361
VI.6 Problemas a Valores de Contorno 366
Capítulo IV. Aproximación o ajuste de funciones 193 Ejercicios 374
IV.1 Conceptos básicos 193
IV.2 Aproximación de funciones por cuadrados mínimos 196 Bibliografía 383
IV.3 Polinomios como funciones aproximantes o de ajuste 202
IV.4 Polinomios ortogonales 212
IV.5 Funciones Spline 215
IV.6 Métodos simples para derivar fórmulas de interpolación 222
IV.7 Diferencias finitas y su aplicación a interpolación 232
IV.8 Algunas fórmulas de interpolación 241
IV.9 Propagación de errores en la interpolación 256
IV.10 Extrapolación Repetida de Richarson 265
Ejercicios 270

Capítulo V. Integración y Diferenciación Numérica 273


V.1 Reglas simples de integración 273
V.2 Algunas dificultades y formas de solucionarlas 281
CAPÍTULO I

Errores en el Cálculo Numérico

I.l Introducción

La aproximación es un concepto central en casi todos los usos de las ma-


icmáticas. A menudo debemos contentarnos con valores aproximados de las
cantidades con las que trabajamos. Otro tipo de aproximación se da cuando
ignoramos algunas cantidades que son pequeñas comparadas con las restan-
U's. listas aproximaciones son muchas veces necesarias para asegurar que el
Iratainicnto m a t n n á l i u ) y numérico de un problema no se torne extrema-
'I.míenle complicado.
Para definir OHK rplos elementales que manejaremos a lo largo de nuestro
trabajo, vamos a plantearnos un problema muy simple, y para resolverlo su-
pondremos poseer una muy limitada capacidad de instrumentos:
Debemos determinar la altura de un cerro, teniendo como datos la distan-
11.1 desde cierto punto de nivel cero a la base de su cumbre ( d( A , B ) ) , deter-
minada con cierta aproximación, y el valor de n con una cierta cantidad de
ilícitos. Los instrumentos que poseemos son un teodolito, una calculadora sin
I I I I H iones científicas, lápiz y papel.
2 Análisii numérico. Primer curso Errores en el cálculo numérico 3

ilr los polinomios que resultan, sabiendo que los errores cometidos serán
m> nores a las cotas halladas. Este tipo de error se identifica generalmente con
1 1 nombre de Error de Discretización o de Truncamiento.
v) Estamos en condiciones de definir el Problema Numérico que aproxi-
ni.i ,1 nuestro problema matemático (1.1):
A

a
= d(A,B)- 180
1-2)

Podemos definir nuestro Problema Matemático de la siguiente forma:

d( B ,C ) = F( d( A,B } ,<x ) = d( A , B ) . tg( a ) ( 1.1 ) 4") En este momento debemos hacer las siguientes consideraciones:
I.as cuentas se realizan utilizando solo una cantidad finita de dígitos, por
10 que cada una de ellas puede introducir un nuevo error, que llamaremos
Para resolverlo procederemos así: T.rror de Representación o Redondeo; la suma de estos errores se manifestará
1") Con nuestro teodolito mediremos el ángulo a en grados sexagesimales. i - i i el resultado final.
Por supuesto, esta medición se hará con la precisión que permita el teodolito, Estos errores dependerán de la cantidad de operaciones que realicemos
o lo que es lo mismo, irá acompañada de un cierto error o incertidumbre. I MI ,1 llegar a un cierto resultado y, como luego veremos, del orden en que ellas
•.e dectúen.
2°) Tendremos que calcular la tangente de a . Aquí no existe otra posibili-
El tipo de operaciones que se realicen para resolver un problema numéri-
dad que aproximar este número; utilizaremos para ello un Método Mate-
i (i, y el orden preciso de las mismas, se denomina Algoritmo.
mático, que también es un Método Numérico y posiblemente el más usado:
Se llaman Algoritmos Matemáticamente Equivalente aquellos que para
la Fórmula de Taylor, que expresamos en forma general:
los mismos datos arrojan los mismos resultados, si las cuentas se hacen sin
11 mieter errores de redondeo.
lx-aj
f( x ) = I ( f"'( ) + f ( N + l '( a + 6 ( x - a ) ) , I6K 1 Resumiendo: dado el problema numérico ( 1.2 ), deberemos elegir el algo-
n=0 n! (N+ 1 r i lino más conveniente para resolverlo, pues algoritmos matemáticamente
c(|iiivalentes, producen en la práctica resultados distintos.
para una f( x ) que cumpla con ciertas condiciones de derivabilidad en un
Kn el caso que tomamos como ejemplo, debemos evaluar los polinomios,
entorno del punto a.
y existen distintas formas de hacerlo: podríamos evaluar cada potencia de x
En este caso aplicaremos la fórmula a las funciones seno y coseno para primero, luego multiplicar por el coeficiente correspondiente y luego sumar
obtener la tangente como el cociente de ambos resultados. termino a término; la suma podríamos hacerla en distintos órdenes, y luego
A esta altura de nuestro trabajo comprendemos que no podremos calcular veremos que en general, el resultado de una suma depende del orden de los
los términos complementarios en las fórmulas para el seno y el coseno, por lo MI mandos (no vale la propiedad asociativa). Pero también podríamos trans-
que solo nos queda acotar estos términos y dar como resultado la evaluación lormar la expresión del polinomio, encontrando una expresión matemática-;
4 Análisis numérico. Primer curso Errores en el edículo numérico 5

mente equivalente, pero m i u lio m.r. pie. ill .1.••..!' , I p u n i ó de visl.i numéri- no existen errores de redondeo, por lo que todos los algoritmos equivalentes
co (esquema de Horner). darán los mismos resultados para los mismos datos.
5") Finalmente evaluaríamos el resultado «m rl ,il|',oi i i m o circulo y en- b) ERROR DE REDONDEO PROPAGADO: El error de redondeo final será
contraríamos una estimación del error ioi.il > ( m u - l u l o el producto de la propagación de los errores de redondeo en los cálculos y de-
penderá esencialmente del algoritmo que elijamos para resolver nuestro
Estamos ahora en condiciones de anali/ar ( ualilaliv.míenle |,r, pi m. ipales
problema.
Fuentes de Error, y luego los Errores Propagados ,il l i n . i l de un p n u e s o de
cálculo. c) ERROR DE DISCRETIZACIÓN O DE TRUNCAMIENTO: Es cualitativa y
En cuanto a las Fuentes de Error, nos ocuparemos .le l.r. Mámenles tres: i uantitativamente el mismo que analizamos como fuente de error.
i ) ERRORES INHERENTES (El): Son los errores que ale, i.m .1 los dalos del
problema numérico y pueden tener distintos orígenes, l'm ejemplo, pueden
ser el resultado de la incertidumbre en cualquier medición, como en nuestro
1.2 Definiciones Primarias
ejemplo la que acompaña a los datos 'd(A , B) y « . Pero también tendremos
un error inherente al pretender ingresar en nuestra calculadora el v.ilor de TI ,
ya que usaremos solo una cantidad finita cíe dígitos para representarlo, dando PROBLEMA MATEMÁTICO (PM): Es una descripción clara y no am-
lugar a un error inherente por redondeo o representación; t a m b i é n un dato bigua de la conexión funcional entre los datos de entrada (variables indepen-
puede ser el resultado de un proceso de cálculo anterior, por lo que estará dientes) y los datos de salida (resultado buscado).
afectado de un error final, que podrá ser de cualquiera de los tipos que men-
cionaremos más adelante. PROBLEMA NUMÉRICO (PN): Es una descripción clara y no ambigua
ile la conexión funcional entre los datos de entrada y los de salida. Los datos
ii) ERRORES DE REDONDEO (ER): Así denominaremos a los posibles erro- di- entrada y los de salida deben estar conformados por una cantidad finita de
res de representación que se produzcan al realizar cada cálculo que indique números reales o complejos, y por lo tanto, pueden ser representados por vec-
nuestro algoritmo. tores de espacios vectoriales de dimensión finita. La conexión funcional entre
iii) ERRORES DE DISCRETIZACIÓN O DE TRUNCAMIENTO (ED): Son los los datos de entrada y los de salida debe implicar una cantidad finita de opera -
que se producen al pasar del problema matemático al problema numérico, i iones elementales realizables por computadora.
cuando este pasaje implica el truncamiento de un proceso de límite, como en Queda claro que todo problema numérico es un problema matemático,
nuestro caso ocurre al despreciar el término complementario, suplantando IHTO la recíproca no siempre es válida.
una suma infinita por una finita, despreciando la cola de la serie. MÉTODO NUMÉRICO: Es un procedimiento comúnmente útil para
En cuanto al Error Final, podemos dividirlo también en tres partes de Aproximar un problema matemático con un problema numérico, o para re-
acuerdo a su origen: i l i u ir un problema matemático a otro que pueda ser aproximado más fácil-
mente por un problema numérico.
a) ERROK I N I l i ; m N I I I'KOPAGADO: Aun resolviendo "exactamente" el
problema numei u o, esto es, suponiendo que no cometemos errores de repre- ALGORITMO: Es, para un dado problema numérico, una descripción
sentación o redondeo al reali/ar las operaciones, la incertidumbre en los da- < limpíela y bien definida de una cantidad finita de operaciones elementales a
tos, o sea, los errores inherentes, producirá una incertidumbre en los resulta- 11 .>ves de las cuales es posible transformar los datos de entrada en los datos de
dos. I,.i l o i m a en que se propaguen los errores inherentes quedará definida
por el piolilema n u m e n . o , pues para realizar este análisis supondremos que
Análisis numérico. Primer curso Errores en el cálculo numérico 1

Por operaciones elcmcnt.ilrs entendemos aquellas que el lenguaje com- I ) ) SIMPLIFICACIONES EN EL MODELO MATEMÁTICO: Son el resultado
putacional que cslemos usando tenga a n u e s l i a disposición, incluyendo las « l e "idealizaciones" que nosotros hacemos en la mayoría de las aplicaciones
funciones previstas por el mismo. matemáticas. Por ejemplo, para estudiar el período de un péndulo, supo-
nemos que la masa de la cuerda es nula, que el rozamiento es despreciable,
• u el era.
1 ,a cuantificación de este tipo de errores no está dentro de nuestros obje-
1.3 Fuentes de error y error final nvos, ya que comenzaremos nuestro trabajo una vez planteado el problema
matemático.

Vamos a desarrollar en esta sección los conceptos introducidos en la sec- F.) ERRORES HUMANOS Y/O DE MÁQUINA: En todo trabajo numérico,
ción 1.1. podemos esperar errores de copiado, errores en los cálculos previos, etcétera.
Debemos estar alertas ante la posibilidad que tablas impresas contengan
i nores. Al usar computadoras podemos esperar errores de programación,
Fuentes de error i 11 ores en los datos, errores de operación y, muy rara vez, errores de máquina.
I slos últimos son excepcionales y su solución está fuera de nuestro alcance.
Hn cuanto a los errores humanos, solo diremos que un buen plan de tra-
A) ERRORES EN LOS DATOS DE ENTRADA: Vimos en 1.1 que los datos de
l>.i|o debe prever controles para evitarlos o disminuir significativamente la
entrada pueden estar afectados de errores de medición, de representación al posibilidad de que ocurran.
almacenarlos en máquina o en caso de ser resultados de un problema anteri-
or, de los errores finales correspondientes. En cualquier caso estos errores se
denominan INHERENTES.
i.rrorfinal
B) ERRORES DE REDONDEO DURANTE EL CÁLCULO: Si nuestra máquina
opera con t dígitos, el resultado de una operación entre números almacena- Las fuentes de error analizadas en los puntos A ), B ), y C ) del apartado
dos en ella tendrá generalmente más de t dígitos, y al ser guardado en memo- .interior, producen en el resultado final un error total que ya hemos analiza-
ria con solo t dígitos se cometerá un error que llamaremos de Representación do en 1.1.
o Redondeo. El efecto de estos redondees puede ser trágicamente notable
Para fijar ideas construiremos una tabla que sintetiza la situación:
para cierto tipo de algoritmos que llamaremos Inestables.
C) ERRORES DE DISCRETIZACIÓN O TRUNCAMIENTO: Llamaremos
preferentemente errores de truncamiento a los que se cometen al "truncar"
un proceso i n f i n i t o , como hicimos en 1.1 al aproximar s e n ( x ) y cos(x) por
sumas finitas.
Y llamaremos error de disi retí/ación al que ocurre cuando una derivada
es aproximada por un u n i e n t e de incrementos, o un.i ( m u ion no lineal es
aproximada por una que si lo es, ele. Algunos autores ll.im.m ,i esle tipo de
errores "errores de l i m u .milenio o analíticos".
8 Análisis numérico. Primer curso Errores en el cálculo numérico 9

Antes que nada, notemos que estas definiciones tienen valor en función de
CASO El ER ED ERROR FINAL
Lis consecuencias que se desprenden de ellas, y no en sí mismas, pues en la
1 NULO NULO NULO: PM = PN NULO práctica toda vez que podamos calcular ea, podremos conocer "exactamente"
<-I valor de a:
Propagación de errores
II NO NULO NULO NULO: PM = PN inherentes. Dependen solo
del PN. a = a + e.

Propagación del redondeo


III NULO NO NULO NULO: PM = PN en las operaciones. Dependen En los hechos son raras y poco interesantes las veces en que conocemos a,
del algoritmo. y podemos calcular exactamente ea.
Error de discretización o de La primera consecuencia de esta observación es que normalmente traba-
IV NULO NULO NO NULO: PM * PN
truncamiento. jamos con cota^_deLerror; y la segunda es que para el error relativo usamos la
aproximación:
Figura 2.1
er, = e /a = e,, / a 4.3).

Los casos aquí considerados en general no se presentan aislados en la prác- que es buena si | ea | « | a |.
tica, pero el error final se acota sumando las cotas obtenidas para cada tipo de
error como es analizado en las sección 1.11. Pero por otro lado notemos que a pesar de no conocer el valor verdadero,
el mismo "existe" (dentro de nuestros modelos matemáticos), y por lo tanto
El objetivo de las secciones siguientes es dar las herramientas para estimar ea y era existen y tienen signo. Muchas veces junto con una cota, podemos
los errores finales en los casos II y III, ya que los errores de discretización o conocer el signo del error, y esto nos permitirá obtener información más pre-
truncamiento se estudian con recursos matemáticos que suponemos conoci- cisa de la influencia del mismo en los cálculos posteriores.
dos y aplicaremos en cada caso particular.
EJEMPLO 4.1
Si el resultado de medir cierta longitud con una regla graduada hasta el
1.4 Error absoluto, error relativo y cota del error milímetro es

Sea a, el v . i l . » i «le un.i u u l . i M i . i r m l i u l v -.(-.i . i , c l v.iloi i n c d u l o ( a = 3 mm, entonces | ea | < 1 mm, y | era | < 0.33
por nosotmv I V l m i m o s rniomc-v
Pero si con la misma precisión medimos
ERROR ABSOLUTO IMi ¡i: i., a -a •u )
a = 1 m, entonces | ea | < 1 mm, y | era | < 0.001
ERROR RELATIVO Dli a : n, i /¿i 4,2 )
10 Análisis numérico. Primer curso Errores en el cálculo numérico 11

EJEMPLO 4.2 0h ' i vamos el decimal que está en el lugar t + 1; s|es menor que 5, dejamos
i H i d valor los primeros t decimales que tenía; si este decimal es igual o
Supongamos querer evaluar z = x - y, sabiendo que x = 2, y = 1, M I u oí que 5 le sumamos 10"' a nuestro valor, y luego tomamos losi plimeros
|e x |<0.1 y |e y |<0.1. I iln ¡males que queden.
Entonces el menor valor que puede tener z es:
(Cuando procedamos de alguna de estas dos maneras, diremos que nuestro
i. MI I lado está escrito EXACTAMENTE CON SUS DECIMALES SIGNIFICATI-
1.9 - 1.1 = 0.8 y el mayor 2.1 - 0.9 — 1.2, por lo que sólo podemos afirmar que: VOS o está CORRECTAMENTE REDONDEADO.

z e [0.8,1.2 ] .
CONVENCIÓN 4.3
Pero si además supiéramos que los errores ex y e son posititivos, podría- Supongamos que a está escrito exactamente con sus decimales significa-
mos concluir que: n vos; entonces:
I") si fa i > 1, la cantidad de DÍGITOS SIGNIFICATIVOS de a coincide
0 < x - x < 0 . 1 , d e donde x < x < x -f 0.1, o sea 2 < x < 2.1; de la misma i un la cantidad de dígitos empleados para su representación, y
forma resulta que 1 < y < 1.1, de donde resulta que el menor valor posible
para z es 2 - 1.1 = 0.9 y el mayor es 2.1 - 1 = 1.1, de donde concluimos que 2") si | a | < 1, la cantidad de DÍGITOS SIGNIFICATIVOS de a resulta de
11-.lar a la cantidad de dígitos empleados para su representación, los ceros que
/ e f 0.9, 1.1 | . estén a la izquierda del primer dígito distinto de cero.

Observemos que la información sobre el signo del error en los datos nos EJEMPLO 4.3
permitió obtener una cota "más fina" para el error en los resultados. Supongamos que los números que siguen están escritos exactamente con,
US decimales significativos, entonces:
CONVENCIÓN 4.1
a = a ± e significa | a - a | < e , o sea a - e < a < á + e , e>0 \, tiene dos decimales significativos y cinco dígitos significativos.
x = 0.025, tiene tres decimales significativos y dos dígitos significativos.
\, tiene cero decimales significativos y cinco dígitos significativos.
CONVENCIÓN 4.2
a tiene t decimales significativos |>i y solo $ | a - a |<k 10 ' (k puede tomar Si x = 0.2489 + 0.6 10"4, entonces 0.2489 tiene tres decimales y tres dígi-
el valor 1 ó 0.5; nosotros generalmente utilizaremos este último). tos significativos, por lo tanto: x = 0.249.
De ahora en adelante cuando el resultado de una operación tenga más de Si x = 12.8974 ± 0.4 10"3, entonces 12.8974 tiene tres decimales signi-
t decimales, pero sólo sean significativos t de ellos, escribiremos este valor so- ln ativos y cinco dígitos significativos, por lo tanto: x = 12.897.
lamente con sus t primeros decimales si en la convención anterior utilizamos
k = 1; y si utilizamos k = 0.5 procederemos de la siguiente manera:
12 Análisis numérico. Primer curso Errores en el cálculo numérico 13

CONVENCIÓN 4.4 Supongamos conocer X = [ x, , . . . , xn ]' y ex. = x¡ - x¡ , entonces si las


De ahora en adelante salvo mención en contrario, supondremos tener ex- y,(X) son suficientemente derivables, el desarrollo de Taylor de orden uno
presado todo valor aproximado a, exactamente con sus decimales signifíca- p;ira la función Y(X) nos conduce a:
tiros, y podremos escribir a = a sin posibilidad de confusión, ya que la can-
tidad de decimales nos permite deducir una cota para el error de a. Y(X) = y' T ( X - X ) (5.1)

donde el segundo sumando indica el producto de la Matriz Jacobiana por el


1.5 Propagación de errores inherentes vector que indica la variación de los datos respecto de los valores que usamos
para realizar los cálculos, y el tercer término es el resto del desarrollo de Tay-
lor, y es de segundo orden con respecto a las variaciones de los datos.
Deduciremos ahora una fórmula que nos permitirá calcular la propaga- Por lo tanto si x- - x¡ es suficientemente pequeño para todo i entre 1 y
ción de un cierto error en los datos, al resultado de una serie de operaciones n, podemos escribir despreciando T( X - X ):
que consideraremos se realizan sin errores de redondeo.
Esta técnica nos permitirá deducir en cualquier caso los errores finales del
tipo II. i - 1,. .., m (5.2

que escrita en términos del error, significa:


Fórmula general para estimar el error final debido
a la propagación de errores inherentes
(5.3
Supongamos estar frente a un PROBLEMA NUMÉRICO expresado por la
siguiente ley funcional: Si | ex. | < r - , j = 1 , . . . , n , podemos decir que:
X -> Y = Y( X ), siendo X un vector de R" que representa n datos, e Y
un vector de Rm que representa m resultados; entonces:
(5.4)

y,
donde en este caso "<" significa "menor o aproximadamente igual".
Y(X) = y¡(X):R"->R, Y(X): Rn -> R" Si queremos una cota estricta, en lugar de las derivadas parciales debemos
utilizar una cota de las mismas, y aplicando el Teorema del Valor Medio dedu-
cimos que si:

d 7,
Z ) | < M (j con i = 1 , . . . , m , j -• 1 , . . . , n y | zk - xk| < rk ,

y k = 1 , . . . , n entonces:
14 Análisis numérico. Primer curso Errores en el cálculo numérico 15

I u manto al error relativo:


(5.5)

rv = er«x, ,x - ervx, +er


2 x2
(5.9)
obteniendo de este modo una cota del error.
Algunas veces, para simplificar la escritura usaremos "=" en lugar de "=" y I'.I error relativo del producto es igual a la suma de los errores relativos de
"<" enlugarde"<". I" 'l.llOS.

I >i visión
Propagación del error en las operaciones elementales
X
y( x, , x2 ) = -^-, x2 5¿ O, de modo que para el error absoluto tenemos:
Suma y Resta

y( x, , x2 ) = x, ± x2 , entonces para el error absoluto tenemos 1 (5.10)


(x 2 ) z

ev = ex, ±x 2 = ^ (^x, , x- ,) e ++ ^-
2 xi
x,l
¿y (^x, ,-x ) e
CfX, L -
2
/ '
xi
x2
, finalmente \a el error relativo:

ex,±x2 = eXi±eX2 (5.6) (5.11 )

Podemos decir que el error absoluto de una suma algebraica es igual a la


Hntonces podemos decir que el error relativo de un cociente es igual a la
suma algebraica de los errores absolutos.
i ' .1.1 de los errores relativos de los datos.
Para los errores relativos:
U .1 i /.Cuadrada
± er (5.7)
x, ± x2 "2 y( x ) = Vx , x > 0;
Para el error absoluto resulta:
Producto
(5.12)
y( x, , x2 ) = x, x 2 , entonces para el error absoluto tenemos:

y para el error relativo:


x, , o sea:

iT = er = 0.5'er (5.13)
(5.8)
16 Análisis numérico. Primer curso Errores en el cálculo numérico 17

CONVENCIÓN 5.1 «le donde deducimos que usando n con cuatro decimales significativos y no
K¡metiendo errores apreciables de redondeo en el producto, x tendrá tres
Diremos que una operación elemental es ESTABLE, si dada una cota para decimales correctos o significativos, o sea, como:
los errores inherentes relativos, los errores propagados relativos se mantienen
acotados por un valor independiente de los datos de entrada.
1.3134 3.1416 = 4.1261774, resulta x = 4.12617.74 ±0.0005,
Vemos que el producto, el cociente y la raíz cuadrada son operaciones
estables, mientras que la suma y la resta son INESTABLES. o mejor aun:

x = 4.126
EJEMPLOS
EJEMPLO 5.1 EJEMPLO 5.2
Calcular con tres decimales correctos o significativos la siguiente expresión: Supongamos que los valores x = 2.00 e y = 3.00 estuvieran correcta-
mente redondeados. Se pide determinar cotas para los errores propagados
x = a TC, siendo a =1.3134 .ibsoluto y relativo del siguiente cálculo:

De acuerdo a lo convenido, asumimos que 1.3134 está correctamente z = x sen( y/40 ) ( 40 es un valor exacto )
redondeado, por lo tanto su error absoluto inherente es menor o igual que
0.5 10 4 . Debemos trabajar con todos los decimales posibles, de modo que sea co-
Por otro lado el problema numérico planteado propagará los errores inhe- necto despreciar los errores de redondeo.
rentes de acuerdo a la siguiente expresión:

rusocdu.blogspot.com
Calculemos primero:

' ' ex = -7ie U I 3 4 +1.3134 e,


2 s e n ( 3 / 4 0 ) = 0.149859414

Tres decimales correctos o significativos significa de acuerdo a la Conven-


ción 4.2, que el error absoluto del resultado obtenido debe ser menor o igual, Estudiemos ahora el error propagado:
en módulo, a 0.5 10"3; por lo tanto nuestro objetivo es que:
ez = sen( y / 40 ) ex + 1/40 x eos ( y / 40) e y ,
|ej < 3.15 0,5 10 4 + 1.3135 | ej < 0.5 10l
entonces para el error absoluto tenemos:
Esta última desigualdad se cumplirá si:
I e7 I < 0.5 10'2 0.075 + 0.998 0.5 10'2 2/40 * 6.245 10'4,
,„
C *r \^
^ 0.5 10' 3 -0.5 10 4 3.15 _ - , . , ,
— — — — ¿.01
in . 4
1U .

71 1.3135
18 Análisis numérico. Primer cursn Erro/Ufen el cálculo numérico 19

y para el error relativo: Debemos evaluar todas las expresiones e indicar cual es la que da el mejor
resultado.
Antes que nada, observemos que todas estas expresiones dan el mismo re-
'"'' ' - "O 'I I ' W >• sultado si utilizamos para calcularlas el valor exacto de la raíz cuadrada de
dos. Pero si en lugar de la raíz cuadrada de dos, ponemos un valor de x arbi-
De acuerdo a lo calculado, si un cxplii 11 niño» el error, debemos escribir: trario, estas expresiones generan problemas numéricos distintos, y cada uno
de ellos propaga los errores inherentes en forma distinta. Debemos evaluar
/ o,n que problema numérico está "mejor condicionado", o sea, cual propaga en
menor medida los errores inherentes para un x cercano a la raíz cuadrada
Un resultado más preciso serín: de dos.
/ o.i'.o ± i< i i" ' Primero convengamos que de acuerdo a los datos, debemos suponer una
cota para el error en la raíz cuadrada de dos de 0.5 10 ' .
HIMPLO 5.3 Ahora para cada expresión acotemos el error propagado en función del
error en la raíz, y luego calculemos z :
Debemos calcular la i ' x | > i r s u > i i
i) |ej < 6 0.45 0.05 < 3.1 10~ 3 ;

como 0.4h = 4.096 10', resulta que no podeníos garantizar ningún decimal
teniendo para la MI/ * u.idud.i de .' vio <•! v.iloi . i p K i x i n i . u l o 1.4. distinto de cero de este resultado.
Podemos dq',ir s i r . i i i u n el v.ilor .ipioximado en la expresión dada, o en t !¡ !• > ' • . ' , • . ' • • • . ' • ' , . . •

una cualquiera de las siguientes: ii) |ej < 6 2.4'70.05 < 6.55 10' 4 ;

ü) ionio 2.4"6 = 5.2327809 10 3, vemos que la situación es similar ala^del caso


(A/2+1 .interior. , ,.• •;••

iii)
mi |ej < 3 0.22 2 0.05 < 1.2 lO^ 2 , mientras que 0.23 = 8 10 3;

iv) ( mno antes, no podemos afirmar nada acerca del resultado.


(3 + 2V2)3

iv) |ej < 3 5.8-4 2 0.05 < 2.66 10 4; ahora 5.8 3 = 5.1252614 10'3,y
v) z = 99 - 70 V2
entonces podemos afirmar que z = 0.005
vi z=
99 + 70 V2
20 Análisis numérico. Primer curso Errores en el cálculo numérico 21

v) | e, | < 70 0.05 < 3.5, mientras que 99-70 1.4w¿l;<entonces no Supongamos que como resultado de mediciones hemos obtenido:
.
podemos hacer ninguna afirmación sobre z. z = 0.400 ± 0.003, e y = 0.340 ± 0.005
.:<"• ' .'.; i'<¡ i ' » , ; . - '

vi) | e, | < 197 2 70 0.05 < 9.1 105, mientras que L Queremos evaluar I( z , y); ¿qué incertidumbre debemos esperar en el re-
sultado 1.398464?
197"' = 5.0761421 10"3, pudiendo entonces afirmar que: ,. Debemos usar la fórmula conocida para la propagación de errores inhe-
rentes:
z = 0.005

Evidentemente, el problema numérico planteado en vi) es el que itps per-


mite aproximar el resultado con el menor error inherente propagado. En este caso las derivadas parciales las obtendremos en forma aproxima-
da, utilizando los cocientes de incrementos que nos permita calcular la tabla
EJEMPLO 5.4 ilada:
Disponemos de un algoritmo para evaluar la siguiente integral:
1(0.41 ,0.34) - I (~
0,39 , 0.34)
1 c -i« -2'6041
I(a,b) = I ~ dx
o a + x-
^L I (0.40 , 0.36) - I ( 0.40 . 0.32)
Utilizando el algoritmo para distintos valores de a y b obtuvimos: ay ~wT
De donde obtenemos que | e, | < 0.011, y por lo tanto:
a b 1
I( z , y ) - 1.4 ± 0.5 10 ' suponiendo despreciables otros tipos de errores.
0.39 0.34 1.425032

0.40 0.32 1.408845


Perturbaciones experimentales
0.40 0.34 1.306464
En problemas de cálculo de cierta envergadura, las relaciones entre los
0.40 0.36 i :«iiti'in
<latos de entrada y los de salida pueden ser tan complicadas que resulte pro-
0.41 0.34 1.372950 hibitivo aplicar directamente las fórmulas generales para la propagación de
errores inherentes.
El Ejemplo 5.4 nos indica un camino empírico para estudiar la sensibili-
dad de los datos de salida con respecto a los errores en los datos de entrada, el
de' las PERTURBACIONES EXPERIMENTALES: Realizamos los cálculos varias
22 Análisis numérico. Primer curso Errores en el cálculo numérico 23

veces, con datos de entrada perturbados, y estudiamos la relación entre la per- Los resultados los obtuvimos en base al algoritmo que damos a continua-
turbación de los datos de entrada y la variación de los datos de salida. < ion. Observemos que y( x ) = ln( 1 + x ).
Este cálculo de perturbaciones no sólo nos ayuda a estimar la propagación
x es el valor en donde queremos estimar el ln( 1 + x ).
de los errores inherentes, sino que muchas veces nos ayuda a comprender más
profundamente el problema. xr es el valor de la perturbación relativa con respecto a x.
Ocasionalmente puede resultar difícil la interpretación correcta de los re- y es la aproximación de ln( 1 + x ( 1 - xr ) ) que obtenemos.
sultados perturbados dado que los cambios en los datos de salida no depen-
den solamente del problema numérico, sino también del algoritmo utilizado, algoritmo 'aproximación del l n ( l + x ( l - x r ) ) '
y los errores de redondeo propagados pueden diferir sensiblemente del pro- comienzo
blema original al problema perturbado. En estos casos resultará conveniente leer x , xr ;
planear una serie de experimentos de perturbación para separar las distintas x = x*( 1 - xr ) ;
fuentes de error. Una forma posible consiste en resolver más de una vez el .
y = 0;
mismo problema numérico trabajando con distinta cantidad de dígitos en las ts = -1 ;
operaciones. para k desde 1 hasta 10 hacer
Queda claro que si la fuente dominante del error proviene del algoritmo, ts = - ts*x ;
debemos cambiarlo por uno más "estable". y - y + ts/k ; < • -- ' * • < >*
i
finpara
EJEMPLO 5. 5 escribir 'x ='., x , 'y = ' , y , 'error relativo inherente', xr
Elaborar un programa computacional para evaluar la serie fin • ••• i ••• .'•• • ,.-• -.-i-

Si construimos un programa en base al algoritmo anterior que opere sin


y ( x ) =1
n=l rrrores de redondeo, y lo hacemos correr con los siguientes datos:
M ,x, _=n. 0.4567
,r¿-7 ... = ~
xr 2) x = 0.4567 xr = -10"3 ;í ,;
donde x es un dato y lo tomaremos entre O y 0.5. Otra condición es que
debemos sumar una cantidad de términos que garantice un error de trun- .<) x = 0.4567 xr = 10'3 4) x = 0.4567 xr = -4 10'3
camiento menor que 0.0001.
Suponiendo que x esté afectado de un error inherente relativo del orden ni limemos los siguientes resultados:
de 0.5 10 4 , debemos determinar en cuanto afecta esto al resultado utilizando
el programa desarrollado, y luego compararlo con el resultado teórico. 1) y =0.376162 2) y =0.376475
Siendo la serie de términos alternados y decrecientes en módulo, el error 3) y = 0.375849 4) y 0.377415
de truncamiento resultará en módulo menor al módulo del primer término
despreciado, por lo tanto, si sumamos los primeros nueve términos de la serie, Si comparamos los casos 2), 3), y 4) con respecto al 1), observamos que la
dicho error resultará menor que: Iiriturbación relativa en el resultado dividida la perturbación relativa en el
titilo, resulta para cada caso:
0.51(
< 9.77 10'5 < 10'4
10
24 Análisis numérico. Primer curso
Errores en el cálculo numérico 25

2) ( 0.376162 - 0.376475 )/( 0.376162 ( -0.001 ) ) = 0.83 Un sistema de numeración posicio nal queda caracterizado por la base (B),
que debe ser un número natural mayor o igual que dos, y por un conjunto de
3) ( 0.376162 - 0.375849 )/( 0.376162 0.001 ) = 0.83 B símbolos que determinan el "alfabeto" del sistema de numeración, debien-
4) ( 0.376162 - 0.377415 )/( 0.376162 ( -0.004 ) ) = 0.83 do representar los mismos los enteros de O a B - 1. La convención para expre-
sar un número en un sistema de este tipo es universal, y la ejemplificaremos
usando B = 10 (nuestro conocido sistema decimal). En este caso el alfabeto
La concordancia entre estos resultados es un hecho alentador; pero en este
está formado por los dígitos del O al 9, y si escribimos
caso, considerando que estamos aproximando'el valor de ln( 1 + x ), pode-
mos avanzar aún más, aplicando la fórmula que estudiamos para estimar la
propagación de errores inherentes: x = ± a M a M , ... a 0 , a , , a _ 2 . . . a N a¡ es un número entre O y 9

M
erx , y para x = 0.4567 obtenemos: estamos simbolizando x=± £ a 10n
n=-N

erv = 0.83 erx. Es fácil ver que si permitimos representar números con una sucesión infi-
7 A

nita de elementos del alfabeto, podemos simbolizar todos los números reales
cualquiera que sea la base elegida.
Vemos así que en ciertos casos el uso de perturbaciones experimentales Por razones técnicas, las computadoras digitales modernas representan in-
nos permite obtener muy buenos resultados. ternamente los números en sistema binario. Aquí los "bits" juegan el papel de
En el ejemplo considerado, como el error absoluto de truncamiento está los factores de las sucesivas potencias de dos en la descomposición de un
acotado por 10"4, el error relativo inherente por 0.5 10 4, y el error de redondeo número, o sea:
lo consideramos despreciable, podemos decir que el error absoluto total está
M
acotado por la suma: x = ± aM aM , ... a 0 , a , a 2 ... a^ N = ± 'L an 2" donde los an son O ó 1,
n=-N

104 + 0.38 0.83 0.5 10"4 =1.157 10"4, y entonces podemos escribir: y M y N son naturales.
En este caso la coma (o el punto) que separa la parte entera de la parte
ln( 1.4567 ) = 0.376 menor que 1, se llama coma (o punto) binaria/o, y los elementos del alfabeto
se llaman bits.
Para no confundir la representación decimal con la binaria, usaremos un
subíndice que indique la base; de no haber ninguna indicación, se sobreen-
1.6 Representación de números tenderá que la base usada es diez.

Sistemas de numeración
Los sistemas de numeración utilizados en la actualidad se denominan po-
sicionales, debido a que el valor de un mismo símbolo depende de la posición
en que se encuentre dentro de la representación de un número.
26 Análisis numérico. Primer curso Errores en el cálculo numérico 27

EJEMPLO 6.1 Representación en sistemas de punto flotante


1012 = 1 2° + O 2' + 1 22 = 510 =
lin estos sistemas, la posición del punto decimal con respecto al primer dí-
1 2°+ 1 2 ] = 3.5 l'.iiu es indicada por otro número llamado exponente.
10112 = lin otras palabras, cada número real puede ser representado en la forma:
Nosotros usaremos preferentemente el sistema decimal, marcando la dife-
rencia entre los sistemas solo en los casos en que sea necesario. x = a 10b, con | a | < 1, b entero (6.1)
En general las computadoras digitales asignan una cantidad fija y deter-
minada de "palabras" para representar un número. i límele el "exponente": b indica la posición del punto decimal con respecto al
Supongamos que el espacio destinado a simbolizar un número permite re- |M inicr dígito de la "mantisa": a.
presentar n dígitos, más uno o dos signos según sea necesario. Se dice que un sistema es de "punto flotante normalizado" si imponemos
Existen dos formas universales de utilizar estos lugares, que estudiaremos .1 l.i mantisa la condición que su primer dígito después del punto decimal sea
a continuación. • l i .linio de cero, o sea:

0.1 < I al < 1 ( 6.2 )


Representación en sistemas de punto fijo
Todo lo dicho puede ser generalizado a un sistema de base B. Por ejem-
Se toman dos números fijos n, y n2 tales que n = n, + n2, asignándose
plo, la condición ( 6 . 2 ) quedaría:
n t lugares a los dígitos enteros y n2 lugares a los dígitos decimales.
(Usualmente n, = n y n2 = 0.)
1/B< I al < 1 6.3)
EJEMPLO 6.2
Una computadora asignaría una cantidad fija y finita de t cifras para la
Si n = 10, n, = 4 , y n2 = 6: ni.iniisa y otra de e cifras para el exponente, de forma tal que:
25.543 se representará 0025 543000
n=
0.0673 se representará 0000 067300
En este tipo de representación el número 12345 o no se representa, o se EJEMPLO 6.3
representa con un enorme error, a pesar de tener solo cinco dígitos.
Tara n = 6, t = 4, y e = 2, el número 6382 se representa:
Salvo para casos especiales este tipo de representación no es utilizado.
Mucho más importante, en particular para cálculos científicos, es la repre- 6382 -> 6382 04
sentación de números en sistema de punto flotante.
y el 25.3

25.3 2530 02
28 Análisis numérico. Primer curso Errores en el cálculo numérico 29

En lo que sigue nosotros consideraremos solamente sistemas de repre- l'or "redondeo" entenderemos dos formas distintas de aproximar un valor
sentación de punto flotante normalizado y la correspondiente aritmética de s perteneciente al rango de la máquina, por otro x perteneciente al conjun-
punto flotante. to de los números de máquina; una forma suele llamarse corte o trunca-
miento (nosotros la denominaremos "corte") y la otra forma suele llamarse
Los números t y e, junto a la base B, determinan el conjunto A de nú-
«•Jondeo simétrico. (La expresión "error de truncamiento", usada para los
meros racionales que pueden ser representados exactamente por la máquina.
• i m res de representación, no debe confundirse con el "error de truncamien-
A es el conjunto de los números de máquina.
i»" cometido en ciertos casos al pasar del problema matemático al problema
Existe un conjunto más amplio, denominado rango de la máquina, for- numérico, una etapa completamente distinta del proceso de cálculo.)
mado por aquellos números reales que podamos representar aproximada-
mente en nuestra máquina, de acuerdo al siguiente criterio:
Sea x un número real, y sea su representación en punto flotante normali- (.orle o truncamiento
zado la siguiente:
\o un x en el rango de la máquina, procedamos a escribirlo en punto
lidiante normalizado:
x = a 10b

Diremos que x pertenece al rango de la máquina, si b puede ser repre- x = a 10h, con | a | = O.a_,a 2 . .. a ta , , . . . 6.4
sentado exactamente en los e lugares asignados al exponente. De esto pode-
mos deducir que: En este caso definimos a = signo ( a ) O . a _ , a _ 2 . . . a_ t 6.5

y x= a 10b , que pertenece al conjunto A y será almacenado exac -


Rango = { x e R / 1 x | e [ 10'10', lO 1 0 ""' ] } (el límite superior es aproximado). Límente en la máquina como aproximación de x.

Si un número pertenece al rango de la máquina, el error relativo de repre- Redondeo o redondeo simétrico
sentación admite una cota muy útil, denominada "unidad de redondeo", que
Si como antes, x pertenece al rango de la maquinadlo escribimos en punto
deduciremos en las próximas secciones.
lliii.inte normalizado como en ( 4 ). Definamos ahora:

/ a \) \ O.a,a.2...a.t
—a — sieno(
• si O < a.M <, 4
Redondeo O. a_,a_ 2 ...a_ t + si 5 < a , ,

Ahora la máquina almacenará x =1 10b. (En este caso puede haber pro-
El estudio de los efectos de los errores de redondeo sobre las operaciones lilemas si al sumar 10"( el número resultante quedara fuera del rango, pero
lo haremos bajo la hipótesis que todo resultado intermedio pertenece al rango i n i consideraremos esta situación.)
de la máquina, porque en caso contrario las cotas que obtendremos no serán
válidas. Hl siguiente algoritmo define una función: fnred( x ), que redondea la
variable x a t dígitos, con redondeo simétrico si red = 1 , o con corte para
t ualquier otro valor de red.
30 Análisis numérico. Primer curso
1 Errores en el cálculo numérico 31

x : valor que será redondeado a t dígitos. irror relativo máximo de representación. Unidad de redondeo

red : si vale 1 fnred hará redondeo simétrico a t dígitos, para otro Si x pertenece al rango de la máquina, de los dos apartados anteriores de-
valor de red fnred cortará a t dígitos. < l i u irnos que x = a 10b, y

signo( x ) : vale 1 si x > O y -1 si x < 0.


10"' para corte o truncamiento
a - a I< (6.6)
c: cantidad de lugares que debe correrse la coma de x para que 0.5 10"' para redondeo simétrico
el primer dígito a la derecha de ella sea distinto de cero, y la parte
entera sea cero. donde
parteentera ( x ): devuelve el mayor entero menor que x.
er i = !x-x| ^ |a-a|10b ^ |a-a| <
log( x ) : devuelve el logaritmo en base 10 de x. * I x l . . , > , - : • , I al 10b 0.1 T

abs( x ) : devuelve el módulo de x. V-t


(6.7)
0.5 101 ' redondeo simétrico
A es el símbolo que indica potencia.

Fácilmente podemos generalizar estos resultados a una base cualquiera.


función fnred( x , t , red ) I >efinamos entonces la UNIDAD DE REDONDEO "|l" de la siguiente forma:
comienzo
si x = O entonces devolver( O ) finsi
B' para corte
s = signo( x ); (6.8)
x = abs( x ); 1/2 B para redondeo simétrico
c = log( x );
c = parteentera( c ) + 1; En este hecho (la existencia de una "buena cota" para los errores relativos
si red = 1 entonces x = x + 0.5 1 0 A ( c - t ) finsi de representación), radica la ventaja esencial de los sistemas de numeración
x = parteentera( x 10A( t - c ) ); de punto flotante normalizado.
x = s x 10A(c-t);
devolver( x ) ;
EJEMPLO 6.4
fin
Es importante conocer la cantidad de dígitos con que trabaja la máquina
que usamos para hacer nuestras cuentas; escribiremos ahora un algoritmo
I>.ira calcularlo experimentalmente (justificarlo):
32 Análisis numérico. Primer curso Errores en el cálculo numérico 33

algoritmo "cálculo de t" EJEMPLOS


comienzo EJEMPLO 6.5
s = 1;
t=l; Dados los siguientes números con sus respectivas bases, encontrar qué nú-
x = 2; meros representan en el sistema decimal:
mientras x > 1 hacer
escribir x , t 0.111 . . . , = S 2'" = 1/2 ( 1 - 1/2 )-' = 1
t = t + 1;
s = s/10; 71.23.. = 7 8' + 1 8° + 2 8'1 + 3 8 2 = 57.296875
x= 1 + s;
finmientras
fin O.FFF .. = I 15 16~n = 15 16'1 (1 - 16'1)"1 = 1

Este algoritmo va escribiendo sucesivos valores de x y de t para hacer


más gráfica la situación; el último valor de t que escribe nos indica aproxi- EJEMPLO 6.6
madamente a cuantos dígitos equivalen las cifras que utiliza la máquina para Probemos que para toda base B, 0.( B - 1 ) ( B - 1 ) ( B - 1 ) . . . „ = 1. Esto
guardar las mantisas en la base por ella utilizada. es así pues: '• • " • * • : ' ''•"' •'. ••-••

CONVENCIÓN
Í ( B - j . ) B ; ° = ( B - . l ) 3 - 1 ( i -B- 1 )-'*t. •
Mediante [ G( b , m , n ), red [ corte ] ], designaremos el siguiente sistema
de numeración en punto flotante normalizado:
EJEMPLO 6.7
b representa la base
Sea el sistema de numeración [ G( b , m , n ) , rd ].
m representa la cantidad de cifras para la mantisa. ( Hay además Debemos calcular el número máximo, el mínimo, el máximo negativo y el
lugar para el signo ) mínimo positivo, representables en el sistema:

n representa la cantidad de cifras para el exponente. ( También


hay otro lugar para el signo ) m veces n veces

red significa que hacemos redondeo simétrico, (b - 1) (1 - b"m)


La mantisa resulta: ( E ( b - 1 ) b"k ) = ,,| , - h = 1 - b'm , y el
k=l
corte significa que hacemos corte.
ex ponente:

( b - 1 ) I bk = ( b - 1 ) ( b" - 1 )/( b - I ) = bn - 1, entonces


k=0
34 Análisis numérico. Primer curso Errores en el cálculo numérico 35

amax = v( 1 - b m ') bbM 1/2 = 0 + 1/2 -> r4 = 1, resulta entonces

_max . ° ;
8 = 10002
• • • - • • ' , [' • i
apositivomin = 1/b b - ( b n - 1 ) = b-b" Queda como ejercicio la justificación de este algoritmo.

anegativomax = - apositivomin , • 2) Para la parte decimal procedemos de la siguiente forma: multiplicamos


l.i parte decimal por dos y observamos el valor de la parte entera del resulta-
do, que puede ser O ó 1. Este será el primer bit después del punto binario,
Por ejemplo, para b = 10, m = 8 y n = 2, resulta:
'lomamos a continuación la parte decimal de este primer producto y la mul-
tiplicamos nuevamente por dos, reiterando el procedimiento hasta obtener
amax = ( 1 - 10 8 ) 10" = 0.99999999 10" . ;í
mía parte decimal nula. En caso de no obtener nunca una parte decimal nula,
I.) expresión binaria del número considerado tendrá infinitos bits.
apositivomin = 10-100 = 0.1 10 " ' •. "..
l ¡ 11 nuestro ejemplo:

EJEMPLO 6.8 0.25 2 = 0.50 -> a., = 0


Convertir el siguiente número del sistema decimal al binario: 8.25
0.50 2 = 1.00 -> a_, = 1, y entonces
Debemos proceder de la siguiente manera:
1) Pasamos la parte entera al sistema binario, dividiéndola sucesivamente 0.25 = 0.01,, así tenemos finalmente
por dos y anotando los restos de las divisiones, hasta que en el enésimo paso
el resto será 1 y el cociente 0; tendremos entonces los restos ordenados así: r p 8.25= 1000.01-,
r2, r 3 ,,, rn., , 1. La parte entera se representa en base dos ordenando los restos
de la siguiente forma: EJEMPLO 6.9

rn., . . . r3 r2 r,. Sea el sistema de numeración [ G( 2 , 3 , 2 ) , rd ]; representar en este sis-


tema los siguientes números:

En nuestro caso: 1 ) 2.38 = 10.010 ...2, será representado por 101 10


2 ) - 0.0071 = - 0.000000011101 .. , 2 , su representación sería - 1 1 1 - 1 1 1 ;
8/2 = 4 + 0/2 -> r,=0 I KM o observamos que no podemos almacenar el exponente, por lo tanto este
rs un número que no admite representación en el sistema dado. En com-
4/2 = 2 + 0/2 -> r2 = 0 putación se dice que este es un caso de underflow. (El número es menor en
módulo que el menor número positivo representable.)
2/2 = 1+ 0/2 ->
3 ) 8.234 = 1000.00... 2 , y su representación sería 100 100; en este caso
i.impoco podemos almacenarlo, y decimos que es un caso de overflow, o lo
36 Análisis numérico. Primer curso Errores en el cálculo numérico 37

que es lo mismo, que el número a almacenar es mayor que el máximo repre- donde op representa una operación elemental y e es el error relativo de re-
sentable. dondeo o representación de la operación x op y.
4 ) 0.2 - 0.00110011 . . . 2 , y se representa 110-10 Las operaciones fl( x op y ) tienen propiedades distintas a las operaciones
exactas, como veremos en el siguiente ejemplo:

EJEMPLO 7.1
1.7 Errores de redondeo en operaciones aritméticas
La asociatividad no vale en general para las operaciones en punto flotante.
en punto flotante Utilicemos t = 7, corte, y sumemos a + b + c con

a = 0.1234567 10° b = 0.7654321 104 C = -b


Cota del error relativo de redondeo para cualquier operación
elemental Hagamos primero fl( fl( a + b ) + c ):
Aún en el caso en que los operandos de una operación de máquina per-
Para sumar en la UAL se llevan los números al exponente mayor:
tenezcan a A, es poco probable que el resultado exacto de la operación sea un
número de A. Por ejemplo, el producto exacto de dos números de t dígitos
a =0.00001234567000 104
cada uno, puede llegar a tener 2t dígitos:
b =s 0.765 432 100 000 00 104
0.5 0.5 = 0.25
a-t-b = O765J44M567000 104,
En esta sección supondremos que los datos pertenecen a A, o sea, supon-
4=*
dremos que no existen errores inherentes.
entonces el número almacenado en memoria será:
Sean x e y que pertenecen a A. Denotaremos con
fl( a + b ) = 0.765 444 4 104; completemos la operación:
fl( x + y ) , fl( x - y ) , fl( x.y ) , fl( x/y )
fl( a + b ) = 0.765 444 400 000 00 104
a los números almacenados en máquina como resultado de las operaciones
c = - 0.765 432 100 000 00 104
indicadas.
Para aclarar ideas, supongamos que la máquina opera en la "Unidad Arit- fl(a+b)+c= 0.00001230000000 10 4 , y entonces:
mético - Lógica" (UAL) con 2 t dígitos y luego almacena en la memoria el re-
sultado redondeado a t dígitos. De acuerdo a ( 6.7 ) y ( 6.8 ) podemos es- fl( fl( a + b ) + c ) = 0.123 000 O 10°
cribir:
En cambio si hacemos fl( a + fl( b + c ) ) tenemos:
fl( x op y ) = ( x op y ) ( 1 - e ), con | e | < ( 7.1 )
fl( a + fl( b + c ) = fl( a + O ) = a = 0.123 456 7 10°
38 Análisis numérico. Primer curso Errores en el cálculo numérico 39

EJEMPLO 7.2 I )ebemos identificar las flechas de forma tal que el error relativo total en el
irsultado de cualquier operación aparezca en el resultado de la siguiente mul-
Sea el sistema de numeración [ G( 2 , 3 ,2 ) , rd ]. tiplicado por el término que identifica a la flecha correspondiente. Sumando
Representar 1.00 y 1.25 en dicho sistema. estos productos para todas las flechas que llegan a un resultado, obtenemos el
, error relativo propagado hasta él; para obtener el error relativo en cada paso,
¿Podemos representar exactamente su suma? debemos sumar al propagado desde el paso anterior el error relativo de re-
Veamos: dondeo de la operación correspondiente.
Repitiendo este proceso a lo largo de la gráfica obtenemos la expresión del
1.00= 100 01 error relativo total.

1.25 = 101 01 Vamos a ejemplificar, identificando las flechas asociadas a las cuatro ope-
raciones algebraicas elementales (Figura 8.1). La idea puede extenderse a
La suma resulta ser 2.25, que se representaría 1001 10. Como el cuarto cualquier operación considerada elemental.
bit de la mantisa es 1 debemos sumar un 1 en esa posición, resultando 1010
10, y ahora al representar la suma en nuestro sistema obtenemos:

101 10

Este valor es igual a 2.5. Por lo tanto no podemos representar la suma


exactamente, y el error relativo resulta:

0.25/2.25 = 0.11, mientras que

f i = 1/2 2'' 3 = 1/8 = 0.125

+1 +1 +1 -1
1.8 Cálculo de la propagación de errores inherentes y de
redondeo utilizando la gráfica de un proceso

Gráfica de un proceso

Una Gráfica de Proceso es la representación pictórica de un Algoritmo,


con una convención para identificar las flechas que aparecen en la Gráfica, de
forma que sea fácil determinar el error relativo total (propagación del inhe- Figura 8.1

rente más propagación del de redondeo) en el resultado final.


40 Análisis numérico. Primer curso
Errores en el cálculo numérico 41

EJEMPLO 8.1 \l error relativo total al final del proceso será:

Supongamos querer efectuar la suma de tres números: er,, n + i a


er,. + E 2 , y reemplazando
a+n
y=a+b+c
aia + b ib + c ic b +c
para lo cual utilizamos el siguiente algoritmo: er = p 4. c
a+b+c a+b+c ' 2

n=b+c
Si suponemos quedes una cota para los errores relativos inherentes, ob-
y=a+n leñemos una cota para el error relativo total al final del proceso:

Llamaremos a los errores relativos inherentes i a , i b , i c ; ya los errores rela- b+c


I ery | < r + (1 + )u ^
tivos de redondeo en cada suma e, y E2. I a + b + cI a+b+c
Sabemos que I e, I y I e2 I < [i. El término que multiplica a r es designado con el nombre de CONDI-
La gráfica correspondiente es: CIÓN DEL PROBLEMA (C ), y es el factor de amplificación de los errores re-
lativos inherentes. La condición del problema depende exclusivamente del
e, problema numérico, es decir que para cualquier algoritmo que elijamos para
resolver nuestro problema, la condición del problema será la misma.
El término que multiplica a u se denomina TÉRMINO DE ESTABILIDAD
(T(J, y depende del problema numérico y del algoritmo elegido.

Estabilidad de un algoritmo
Un algoritmo se dice numéricamente más estable que otro, si su término
de estabilidad es menor.
Un algoritmo es NUMÉRICAMENTE ESTABLE si y solo si (definición)

CP t Te
>/> 1 (no es mucho mayor que 1).
v_/_

El error relativo total de n será

er =
b+c
42 Análisis numérico. Primer curso Errores en el cálculo numérico 43

Una situación conveniente es aquella en que el término de estabilidad es En esta máquina resulta |l = 0.5 103.
aproximadamente igual a la condición del problema, o sea: Observando la gráfica obtenemos:

— O
2ia + e i ) a 2 - b 2 ( 2 i b + e 2 )
er, = r,
C a22 - U2
b

y separando los términos que dependen del error inherente de los términos
EJEMPLOS que dependen del error de redondeo:
EJEMPLO 8.2
2 a 2 i a - 2 b 2 ib a2 e, - b2 E2
Sea a = 43.21 y b - 43.11. Deseamos calcular z - a2 - b2 en el sistema de er, = :—-r + : : + e 3 , y acotando resulta:
numeración [ G( 10,4,1 ), rd ]. Indicar cual de los dos algoritmos que figu- a22 _- K2
b a2-b2
ran abajo es el más conveniente. Justificar.
2 a 2 + 2 b2 a 2 + b2
er.. I < 1+ ) (I, de donde:
1) ..- a a-b b a2- I a 2 - b2

2) (a+b )(a-b)
T e = ( 1 + - _^
Operemos de acuerdo al algoritmo 1): fa2-

z = fl( fl( a . a ) - fl( b . b ) ) = fl( 1867 - 1858 ) = 9 La condición del problema vale:

2 a 2 + 2 b2
Hagamos ahora la gráfica de proceso y calculemos el término de estabilidad:
P " I a 2 - b2
e,
Si operamos con el algoritmo indicado en 2) obtenemos:
,-b 2
fl( fl( a + b ) fl( a - b ) ) = fl( 86.32 A 0.1 ) = 8.632, y construyendo la grá-
fica de procesos:

+1
Errores en el cálculo numérico 45
44 Análisis numérico. Primer curso

Nos está quedando un C distinto al del algoritmo 1 ) , cosa que no puede


ser, ya que como se dijo anteriormente la condición del problema depende ex-
clusivamente del problema numérico.
+1
Lo que ocurre es que estamos "acotando antes de tiempo"; si antes de aco-
tar sacamos denominador común a2 - b2 queda:

(a-b)(aia a + b ) ( a i a - b ib
er + e, + e2 + e3 , y
a - b¿

desarrollando el numerador del primer término se simplifican los términos


en los que aparece el producto a b, quedando en definitiva:

er, - + E, + E, + E3
a2 - b2

Ahora sí, tomando módulos nos queda el mismo C que antes, pero el tér-
mino de estabilidad disminuye sensiblemente:
entonces:
T =
a i, i, - b ih
er, = Esto nos muestra que el segundo algoritmo es el más conveniente, ya que
a-b
operando como él indica, el error de redondeo propagado será mucho menor.
(Antes de analizar esta expresión, digamos que en este ejemplo se buscó
resaltar los efectos de elegir bien un algoritmo, sin considerar la propagación EJEMPLO 8.3
de errores inherentes; si lo hiciéramos veríamos que el segundo resultado no
Deseamos calcular
tendría porqué ser mucho mejor que el primero pues este problema numéri-
co está mal condicionado).
1 1 -a
Veamos qué ocurre si acotamos ahora: x = con I a I « 1
2a 1+ a

Consideremos primero el algoritmo sugerido por la forma de la expresión:


la + b a - b

Luego analizaremos esta expresión desde el punto de vista de la propa- n, = l/n 2 n4 = 1 - n,


gación de errores de redondeo. Para aclarar cuestiones respecto a la condición n6 = n 4 /n s
del problema y los signos de los errores hagamos las siguientes considera- n 7 - n 3 - n6
ciones:
(Luego obtendremos un algoritmo más estable que este )
46 Análisis numérico. Primer curso Errores en el cálculo numérico 47

Primero construyamos la gráfica de proceso del algoritmo dado:


er I < 2 I i ! + ——- + + |l, de donde resulta:
al 2|a

( a - 1) (1 + 2 a ) __ 1 + a 2|a
2a 2 2a 2 2a2
Si por otro lado resolvemos: x = , (verificar que se trata
(1 + 2a) (1 + a )
del mismo problema numérico) tenemos la siguiente gráfica de proceso:

- i

De aquí resulta:

-2 a (ia + r, )
er,=
1 + 2a

-ai a i,
" rs + r 6' 7 considerando | a | « 1 ,
1 -a 1+ a
48 Análisis numérico. Primer curso Errores en el cálculo numérico 49

que responde a la siguiente secuencia de operaciones: 1.9 Cálculo de la propagación de errores inherentes
y de redondeo utilizando los números de condición
n, = 2 a n2 =

n3 = 1 + a =n n Análisis retrospectivo de errores


ns = a a La ecuación ( 7.1 ) nos da la herramienta principal para realizar el análisis
retrospectivo de errores, que es una técnica para evaluar el efecto de los errores
n 7 = n6 / n4 x = n. de redondeo en el resultado final. Ella nos permite suponer, por ejemplo, que la
multiplicación fl( x . y ) es el producto exacto de "x" por "y ( 1 - e )", siendo
Entonces: E función de los operandos y de módulo menor o igual que [i.
De lo misma manera el resultado de cualquier operación elemental puede
2a ser interpretado como el resultado de la operación exacta aplicada a operan-
er2 = ( i a + r , ) -j +
dos perturbados en una cantidad relativa de módulo menor o igual a [i.
Aplicar análisis retrospectivo de errores significa utilizar la interpretación
2 a ( ia + r , ) aia anterior paso por paso, comenzando por las últimas operaciones y retroce-
h r2 + — ~~
1 +2a diendo hasta las primeras.

EJEMPLO 9.1
= 2 ia + r5 + r 6 , y ,í;

Sea w = x + ( y + z ), entonces
| er x ! = 2 | i | + 6 n , resultando entonces

-: ' ' Te =6 ' w = ( x + fl( y + z ) ) ( 1 - £2 ) =

lo que muestra que este segundo algoritmo es mucho más estable que el pri- = ( x + ( y + z ) ( 1 - e, ) ) ( 1 - e2 )
mero.

w-w = e,, de donde

er = (£,-£,£,)
x+y+z
50 Análisis numérico. Primer curso Errores en el cálculo numérico 51

Si despreciamos los términos cuadráticos en el error obtenemos la misma Entonces resulta: (tomamos 80 = O ) ; ;
expresión del Ejemplo 8.1 .
Observamos entonces que el método de la gráfica de proceso permite esti- i y - f i ( y ) i = i im a¡ b.d-d-E;) n n - S j ) ) i < • • • "• •; '• •• •• • "'•••'<•''•' '•'
i=0
m

j=¡
maciones de primer orden de los errores inherentes y de redondeo propaga-
dos, mientras que con el análisis retrospectivo de errores podemos estimar los
m m
errores de redondeo propagados utilizando términos de orden superior. < £ I a¡b¡ I ( ( 1 + (1 ) m+2 " - 1 ) < Z a, b¡ 1.12 (m + 2 - i ) n :':;
1=0 i=(l •*?*-

EJEMPLO 9.2
Si I a¡ I < a y I b¡ I < b, resulta:
Acotar los errores de redondeo propagados por la operación: • * • .'..'/'.;$ i, •,•:':"".;.••' ' o
m '
m
| y - f l ( y ) | < 1 . 1 2 a b n Z (m + 2 - i) = 0.56 a b (m + 2) (m + 3) ^i
y = I a, b¡. i=o •' • \'
¡=o

Demostremos primero una desigualdad que nos será útil: Por medio de este tipo de análisis, se ha demostrado, incluso para algorit-
mos muy complicados, que los datos de salida son los resultados exactos del
Si n \l < 0.1 entonces ( 1 + u. ) n < 1 + 1.12 n [i. problema numérico, con los datos de entrada variados relativamente una cier-
la cantidad de veces (I.
Los siguientes pasos demuestran la afirmación anterior: Más adelante veremos que utilizando esta técnica, transferimos el proble-
ma de estimar los efectos de los errores de redondeo durante el cálculo, al pro-
blema de estimar ciertas perturbaciones en los datos de entrada.
k=0

Números de condición
n \i u"-' ñ u ( I O.l k
n! k=0
Pueden existir varias razones por las cuales los resultados de un cálculo
posean poca precisión. Por ejemplo el algoritmo puede no ser el más conve-
< 1 + 1.12n|l c.q.d. niente. Pero también, un resultado poco preciso puede ser consecuencia del
problema numérico mismo, es decir, los resultados pueden ser muy sensibles
Comencemos ahora el análisis retrospectivo de errores: .1 las perturbaciones en los datos de entrada, independientemente del algorit-
mo elegido.
a¡ b¡) = fl( ... fl(fl(fl(an b0) + fl(a, b,)) + fl(a, b 2 )) + ...) fl(am
i=0 Kn el primer caso se dice que "el algoritmo está mal condicionado"; en el
= ( ... ( ( a0 b0 ( 1 - e0 ) + a, b, ( 1 - e, ) ) ( 1 - 6, ) + .'•|;undo, que "el problema numérico está mal condicionado". También dire-
11 ios para el primer caso que "el algoritmo es numéricamente inestable", y para
a 2 b 2 ( 1 - e2 -8 -5 ) = '•I segundo que "el problema numérico es inestable".
Errores en el cálculo numérico 53
52 Análisis numérico. Primer curso

Número de condición del problema


El número de condición del problema (es el Cp utilizado sin definir for-
malmente al trabajar con las gráficas de proceso) nos permite medir cuanti- Supongamos estar ante un problema numérico representado por
tativamente la estabilidad del problema, y el número de condición del algo-
ritmo ( C a ) cuantificará la estabilidad del algoritmo. Y = P(X); P ( X ) : Rn -> Rm como en 1.5
Antes de definir formalmente los números de condición debemos intro-
ducir una medida para vectores que nos será de gran utilidad de ahora en ade- Definamos
lante: n dP

II^
CJ = i - 1 , . . . .m (9.1)
La Norma Infinito I P¡ ( X
Sea X = [ x, , x 2 ,..., xn ]' (Para operar en forma matricial identificamos
los vectores de Rn con las matrices de nxl); se define la "norma infinito" de y el número de condición del problema V,
\p - max { C p ', i = 1,..., m } =
X de la siguiente forma:
(9.2)
|| X |L = max { | x¡ | }
Definamos el vector de errores relativos inherentes:

Puede probarse que esta definición induce sobre las matrices la siguiente erx = [ er X| ,... , er Xn ]', y supongamos que || erx || á r.
norma: tf~^-^_
^# ~t
m De ( 5.1 ) y ( 5.2 ), obtenemos:
A nxm, entonces || A IL = max { Z | aik | }
e,, =
De ahora en adelante salvo mención en contrario cuando utilicemos una
norma será la norma infinito y la simbolizaremos sencillamente con las barras. ile donde dividiendo por P¡(X ), tomando módulos y acotando resulta:
Las siguientes son propiedades conocidas de una norma vectorial y la nor-
ery. < er
ma que induce sobre las matrices:
Si X e Y son vectores de Rm, A y B son matrices de nxm y C de mxp,
Si definimos ery = [ er ,..., erv ]', resulta:
< + Y A + B < | | A | | + ||B||, || AX || < || A || || X ||,
er || < C p ||erx|| < Cp r (9.3)

I'or lo tanto podemos decir de C , que depende de los datos de entrada y


que es una cota del cambio relativo que el resultado exacto del problema
54 Análisis numérico. Primer curso
Errores en el cálculo numérico 55

puede tener, medido en unidades de r, n\ priuliurn perturbaciones rela- Número de condición del algoritmo
tivas en los datos de entrada acotados por r.
- f, '

Asumiendo que r es lo sufícienk-mi'iilr ( hito como |>.u,i que: Simbolicemos por y = A( X ) : Rn -> Rm

.uv I\(XM',( X) al algoritmo utilizado para resolver el problema Y = P( X ): Rn -> Rm .


1 ' Xk Pk(X) Si no existieran errores de redondeo:

dejamos como ejercicio demostrar la siguiente de.sigunld.iil: A(X) = P(X).

P i
Pero en este momento nos interesa cuantificar la influencia de los errores
de redondeo, por lo tanto utilizaremos la notación:
xk = x k ( l - e k ) , | e k | < r (9.4)
Y = A(X) " ':'' ' ' •"'"•'
(Ayuda: | eryk | | Pk( X ) | - | P k ( X ) - P k ( X ) | > | | Pk( X ) | - | P k ( X )
para simbolizar el resultado considerando sólo los errores de redondeo.
Utilizándola Convención 4.1 podemos escribir: Sea y¡ = A¡( X ). Si el cálculo de A¡( X ) implica L operaciones, efectuando
un análisis retrospectivo de errores al primer orden, obtendremos:
l±Cpr)
_ L . .
y, = y, ( l + X Fiik( X ) e k ), con | ek | < u .
EJEMPLO 9.3
Si consideramos nuevamente y = P( x ) = x x, de acuerdo a (9.1 ) vale: Llamaremos a los F, k , FACTORES DE AMPLIFICACIÓN.
Definamos:
| x||x| + |x||x|
c >=ííí =2 - - . L
(9.5)

y i.,-
EJEMPLO 9.4
E,
Estudiemos ahora el problema y = P ( a ) b , c ) = (9.6)

De acuerdo a (..1 ) tenemos: Con estos valores definimos el número de condición del algoritmo como:

C a -rnax{C a ¡ , i = l,...,m} (9.7)


a| + |b| + |c
|P(X)|
Resultado que coincide con el obtenido en 1.8.
56 Análisis numérico. Primer curso Errores en el cálculo numérico 57

EJEMPLO 9.5 * y, -y¡ =: k-l


onde si | ek | < u ,
Consideremos nuevamente y = A( x ) = x x. De la igualdad: E¡
y=fl(xx)=xx(l-e)
y entonces para los errores de redondeo propagados: ,,
y de ( 9.5 ) resulta E = 1. Utilizando ahora el resultado del Ejemplo 9.3 y la
definición dada en ( 9.7 ), resulta:
Hery||< CpCau „ (9.8)
Ca = 1/2
( 9.8 ) caracteriza al número de condición del algoritmo:

EJEMPLO 9.6 Dado un problema numérico, y un algoritmo para resolverlo, una cota
del error relativo de redondeo propagado por el ALGORITMO se obtiene de
Consideremos nuevamente y = A ( a , b , c ) = a + (b + c) la cota del error relativo propagado por el PROBLEMA NUMÉRICO cuando
Vimos que el análisis retrospectivo de errores de primer orden nos con- perturbamos los datos de entrada en una cantidad relativa acotada por
duce a:

y = y ( 1- —-— e, - e, ), de donde deducimos que Simbólicamente, si utilizamos la notación Y = A( X ) para representar


el resultado considerando sólo la propagación de errores de redondeo, ten-
emos que:
|b + c|
E= , y utilizando el resultado del Ejemplo 9.4
|| A( X ) - A ( X ) || < || A( X ) || Cp Ca 9.9)

EJEMPLO 9.7
C =E < 2
|a|+|b|+|c |a|+|b|+|c Si nuestro problema numérico es y = x x , en ejemplos anteriores calcu-
lamos
De ( 9.3 ) deducimos que si perturbamos los datos de entrada en una can-
tidad relativa acotada por Ca M-, una cota para el error relativo propagado está cp = 2, ca = i/2,- ;
dada por
(le donde se deduce para el error relativo total:
CpCa u
|er y | < 2 ( 1/2 H + r) = 2 r + jl,
y usando ( 9.5 ), ( 9.6 ) y ( 9.7 ) veremos que esta es una cota para los errores
relativos de redondeo propagados: tota que coincide con la obtenida mediante la gráfica de procesos.
Errores en el cálculo numérico 59
58 Análisis numérico. Primer curso

EJEMPLO 9.8
Entonces para el error total tenemos:

Consideremos y = A ( x , z ) = x + z b+c
| e r l < C D ( C u + r) = r+ ( 1 +

Este resultado es idéntico al obtenido mediante la gráfica de proceso.


Pero de acuerdo a ( 9.2 )
Este ejemplo nos permite deducir que si tenemos que sumar una cierta
cantidad de números de igual signo, conviene ordenarlos en módulo, de me-
nor a mayor, para efectuar las sumas.
x-rZl

Por otro lado como E = l.de (9.6) y ( 9 . 7 ) resulta: Estabilidad de un algoritmo


x + zI Incorporando el concepto de números de condición, los siguientes resul-
C =
X + Z tados se deducen de las definiciones dadas en 1.8:
Un algoritmo es numéricamente más estable que otro si su número de
y para el error relativo total obtenemos: condición ( C a ) es menor.
Un algoritmo es numéricamente estable si y solo si Ca >/> O
I erv | <
x+z X + Z x+z Un algoritmo es aceptable si y solo si Ca = 1

Observemos que este algoritmo, como todo algoritmo elemental, está bien
condicionado, mientras que si la suma es pequeña el problema es inestable. Estimación experimental del Término de Estabilidad
EJEMPLO 9.9 En 1.5 vimos que el método de las perturbaciones experimentales nos
permite estimar el C de un problema numérico. En esta sección veremos
Consideremos el problema del Ejemplo 9.4 en donde calculamos:
como obtener una estimación del Te del algoritmo empleado para resolver
un problema numérico. La idea es sencilla, y consiste en resolver el problema
dos veces con el mismo algoritmo y los mismos datos de entrada, pero usan-
CP ~ a + b + c|
do distinta precisión para los cálculos, o sea, empleando distinta cantidad de
dígitos para la mantisa.
Si lo resolvemos con el algoritmo del Ejemplo 9.6 obtenemos: ,
Supongamos entonces que al resolver nuestro problema trabajando con t
|b + c| dígitos, obtenemos la solución y t , y al resolverlo utilizando s dígitos, la solu-
1+
a+b+c ción ys. Como en los dos casos tomamos los mismos datos y empleamos los
mismos algoritmos, los errores inherentes propagados ( e¡ ), y los de discre-
o. t i/.ación ( ed ) coinciden, y podemos escribir:
Errores en el cálculo numérico 61
60 Análisis numérico. Primer curso

y - yt = ed + e¡ + e( t ) r 1.10 Errores de truncamiento y de discretización

y - ys = ed + e¡ + e( s ) r ,
Estimación experimental de los errores de truncamiento
siendo "y" la solución verdadera de nuestro problema y e( t ) r y e( s ) r los y discretización
errores de redondeo propagados al trabajar con t y con s dígitos respectiva-
mente. Cuando los resultados de nuestro problema numérico no coinciden con
Restando ambas expresiones deducimos: los del problema matemático planteado originalmente, ocurre generalmente,
que nuestro problema numérico depende de algunos parámetros no incluidos
|y ( .y s | = | e ( t ) r - e ( s ) r | = l y | T e l m + nJ (ysy.sy.) en el problema matemático, que al variar en cierto sentido, nos aproximan al
resultado deseado. Generalmente podemos enmarcar este tipo de errores en
y entonces obtenemos para el término de estabilidad: .ilguno de estos dos casos:
i) La solución de nuestro problema matemático es F( x ). Nuestro proble-
Te =
y,-y s '(•«.*«$. ma numérico depende de x y de un número n, y la solución P( x , n ), apro-
~ i —
y ( M, + xima mejor la solución de nuestro problema matemático al aumentar n. En
estos casos puede hacerse la siguiente aproximación:
EJEMPLO 9.10
Consideremos el problema numérico del Ejemplo 5.5, y el algoritmo ahí | F ( x ) - P ( x , n + l ) | = K | F ( x ) - P( x , n ) l p p>l p es un n" fijo
desarrollado para resolverlo. Modifiquemos ahora el algoritmo haciendo que
la función fnred, desarrollada en 1.6, actúe después de cada operación. Esta- (K es función de x y de n, pero podemos suponerla constante si estamos
mos en condiciones de resolver nuestro problema simulando máquinas con trabajando con un x dado y valores de n suficientemente grandes; p se
distinto valor de t. Al hacerlo con x = 0.45 y red = O, obtenemos los si- llama orden de convergencia del problema )
guientes resultados:
ii) La aproximación P( x , h ), depende de x y de un h y mejora cuando
t= 7 . y7 = 0.3715533 - •',=". \17 = 10~6 disminuye h.'En estos casos puede demostrarse que:

| F( x ) - P( x , h) | = K p es un n° fijo
t = l4 -.-:• y u = 0.37155368849760 |^14 = 10'13

y aplicando (9.10) obtenemos: (K es función de x y de h, pero podemos suponerla constante si estamos


trabajando con un x dado y valores pequeños de h; p es el orden del mé-
todo y/o de la aproximación)
T=1.05
En el primer caso mejoramos la aproximación aumentando n, y decimos
que el error es de TRUNCAMIENTO. El caso más común es el cálculo del lí-
mite de una sucesión.
62 Análisis numérico. Primer curso Errores en el cálculo numérico 63

En el segundo caso mejorarnos la aproximación disminuyendo h, y deci- 1.732050807568877...


mos que el error es de DISCRETIZACIÓN. Los casos más comunes surgen al 1.732050807568877...
aproximar derivadas o integrales.
Debemos elegir 4 valores para hacer los cálculos que indica ( 10.1 ). No
conviene utilizar los primeros porque están lejos del límite, y no conviene uti-
Truncamiento. Estimación de K y de p lizar los últimos porque la diferencia de los dos finales es muy pequeña. En-
tonces:
Debemos considerar cuatro aproximaciones del resultado y utilizar la últi-
ma como el valor verdadero:
= 1.99805 = p
1) | P ( x , n + 3 ) - P ( x , n + 2)| = K | P( x , n + 3 ) - P( x , n + 1 ) |p x. -x,
Iní
x4-x,
2) | P( x , n + 3 ) - P( x , n + 1 ) | = K | P( x , n + 3 ) - P( x , n ) |p

Dividiendo ambas expresiones y tomando logaritmos obtenemos: K= = 0.29


! x4 - x2 I •
' Wl P ( x , n + 3 ) - P ( x , n + 2) , }
P ( x , n + 3 ) - P ( x , n + 11)
=P Sv (10.1)
w i P( x, n + 3 ) - P( x, n + 1 ) , , Discretización. Estimación de K y de p
U P( x, n + 3 ) - P( x, n )
Primero estimaremos p; para eso utilizaremos tres aproximaciones al
Una vez conocido p, utilizando cualquiera de las expresiones 1) o 2) po- resultado: (supondremos que los términos de la izquierda en i ), ii ) y iii )
demos despejar K. mantienen el signo)

EJEMPLO 10.1 F( x ) - P( x , h ) = K hP
Un método muy conocido que estudiaremos más adelante, nos permite h hp
asegurar que la sucesión: F(x)-P(x,-- )= K-
q qp
X0 = 2 > X n+l = ~ + ~' üi ) F( x ) - P( x , A ) = K —
ZA n
q2 q2p
Converge a la raíz cuadrada de 3. Los primeros valores de esta sucesión son: Ahora restando ii ) de i ), luego iii ) de ii ) y dividiendo miembro a
miembro obtenemos:
2. h
1.75 P( x , h) - P( x,
1.732142857142857... ( 10.2 )
1.732050810014727...
64 Análisis numérico. Primer curso Errores en eí cálculo numérico 65

Esta igualdad nos permite obtener una estimación de p. Si operamos como indica ( 10.2 ) obtenemos:

Restando iii) de i ) podemos obtener una estimación de K:


Tx o - T
'i
= 17.177.
h
P( x , — ) - P( x , h ) = K hp ( 1
1 ) , y entonces:
T
A i - T
1 ->

q2 q2p
h TL } - T
12
P(x,—)-P(x,h) = 16.066,
Ti, - Ti.
K =-

valor que podemos aproximar por: = 16.000...

h
»: K = ( P( x ,— ) - P( x , h ) ) ( 10.3 )
De donde deducimos que la aproximación es de orden 2.
Para K tenemos, de acuerdo a ( 10.3 ):
EJEMPLO 10.2
2 T,-T,
K = —5 i— = 0.14
Más adelante veremos que para aproximar I = J sen2( x ) dx puede prece-
( l )2
derse de la siguiente forma: ( 756 J v.-,,:v ,-„:< '
Dividimos el intervalo [ 1 , 2 ] en n subintervalos de longitud h, obte-
niendo los puntos: x¡ = 1 + i h con h = 1 /n. Luego calculamos:

1.11 Error total, aplicaciones y recomendaciones


T( h ) = h ( n - ) + I f( x, ) ) , siendo f ( x ) = sen2( x ). generales

Tomando h = 1 y q = 4, obtenemos los siguientes valores:


Cota para los errores absoluto y relativo finales, debido a la
T0 = T( 1 ) = 0.7674476143526886... propagación de errores inherentes y de redondeo en las
T, = T( 1/4 ) = 0.907811003517944... operaciones, y al error de truncamiento o discretización
T2 = T( 1/16; = 0.915982489008729...
T, = T( 1/64 ) = 0.91649108309199... Simbolizaremos con Y = F( X ) a un dado Problema Matemático, con
T4 = T( 1/256 ) = 0.916522861975641... Y = P( X ) a su correspondiente Problema Numérico, y con Y = A( X )
T5 = T( 1/1024 ) = 0.916524848123669... .il Algoritmo que lo resuelve.
T6 = T( 1/4096) = 0.916524972257791...
66 Análisis numérico. Primer curso Errores en el cálculo numérico 67

Para simbolizar el resultado teniendo en cuenta los errores de redondeo || A( X ) - A( X ) || = || A( X ) - A( X ) + A( X ) - A( X ) || <


utilizaremos A, y para simbolizar los datos teniendo en cuenta los errores
inherentes utilizaremos X. [ ) - A ( X ) | | + | | A ( X ) - A ( X ) | | < | | A ( X ) | | C p r + ||A(X)||CpCan =

Observemos que A( X ) = P( X ) para todo X. = || A( X ) || ( Cp r + Cp Ca Jl), de donde vemos que:


Simbolicemos ahora los errores absolutos al final del cálculo:
ery || S :C a jl + r ) "(11.1)
F( X ) - P( X ) = F( X ) - A( X ) = ed error de discretización
Ya vimos que C coincide con la condición del problema, y ahora vemos
P( X ) - P( X ) = A( X ) - A( X ) = e¡ error inherente propagado que:

A ( X ) - A ( X ) = er error de redondeo propagado T = ^r


J (11.2)

Veamos ahora que el error absoluto total del resultado es la suma de los Observemos finalmente que los números de condición dependen de los
errores absolutos considerados: datos de entrada, y que pueden tener valores completamente distintos entre sí.

e,o,ai= F(X)-A(X) = F(X)-A(X) +A(X)-A(X) + A(X)-A(X)


Definición de precisión máxima
total
Dado un Problema Matemático Y = F( X ), su correspondiente Problema
Para los errores relativos observemos que: Numérico Y = P( X ), y el Algoritmo para resolverlo Y = A( X ), diremos que
lo hemos resuelto con PRECISIÓN MÁXIMA si se cumple la siguiente con-
Cr Cr
dición:
pr — ~
•>erd =
r A(X) ~ F(X; A( X ) F( X F(X)
Ed < 0.2 E¡ ( 11.3)
de donde deducimos que:
siendo
c tolal

Crtotal ~
F(X) Er una cota de los errores absolutos de redondeo propagados

Ahora obtengamos expresiones en función de los errores en los datos y la Ed una cota del error absoluto de discretización
unidad de redondeo.
Si r es una cota para el error relativo en los datos de entrada, desprecian- E¡ una cota del error absoluto inherente propagado
do los términos de orden mayor que uno, y utilizando las expresiones ( 9.3 )
y ( 9.8 ) obtenemos: Si expresamos ( 11.3 ) en función de una cota para los errores inherentes
y (0., tenemos que Precisión Máxima equivale a:
Errores en el cálculo numérico 69
68 Análisis numérico. Primer curso

ps = x - -r- = 0.499 674 179


|| A( X ) || Cp Ca A( X ) - F( X ) || < 0.2 || A( X ) || Cp r o

Si el error de discretización A( X ) - F( X ) es nulo, entonces Precisión Má- Pe = 1 - — = 0.862 922 161


xima equivale a:

Ca 11 < 0.2 r, y si r = n y Ed = O, equivale a Ca < 0.2 Por lo tanto en nuestra máquina la tangente resultará:

Ps
= 0.579048959
Resolución del problema planteado en 1.1 Pe
El error de discretización de esta aproximación es igual al error propaga-
Supongamos |l = 0.5 10'8, d( A , B ) = 2000 m ± 20 m, a = 30° ± 1°, y do al cociente por las "perturbaciones" Ts y Te:
que nos piden estimar d( b , c ) con un error relativo inferior a 0.1
Observemos primero que | e r d ( A B)| < 0.1 y que | era | < 0.034 , , ,. „. ., , , 3.3 10 4 3.2 10'2 < 0.0044
e r . l ( discretización ) < H
18 0.49967 0.86292
Nuestro objetivo es que:
Para el error de discretización relativo total, tenemos:
Error relativo discretización + Errores relativos propagados < 0.1
I e r d( n , r > I ( discretización ) =
Error relativo de discretización
_ d(A,B)tg(x)-d(A,B)Tg(x) _ tg(x)-t¡(x)
Vamos a suponer N = M = 2 para estimar el seno y el coseno, y acotemos
el error de discretización de la tangente: d(A , B ) tg( x ; tgU
( vemos que el error relativo de discretización total es igual al error relativo de
Observemos que x = 3071/180 = 0.523598775
discretización de la tangente )

sen( x ) = x - — + Ts( x ) = Ps + Ts ery | | ertg | < 0.0044

cos( X ) = 1 - - + Tc( x ) = Pe + Te Tenemos que el error relativo en 71/180 es despreciable con respecto al
error relativo en a , por lo tanto el error relativo inherente en x está acota-
do por 0.034, y para estudiar la propación de este error y de los errores de
Ts| < — < 0.00033 redondeo en el cálculo de la tangente, construyamos la gráfica de proceso:

| Te | < — < 0.0032


4!

En nuestra máquina obtenemos para Ps y Pe:


Errores en el edículo numérico 71
70 Análisis numérico. Primer curso

( oino el error relativo propagado por el producto es igual a la suma de los


• 1 1 < > i es relativos, tenemos:

erd ( B , C ) Crd ( A , B )

(••,!(.• último e es el error de redondeo del producto de la tangente por d(A, B)),
entonces:

er.d ( B , C ) < 0.048 + 5.42 (i -t- 0.01 < 0.058

lista última expresión incluye los errores inherentes y de redondeo propa-


l',,ulos; si le agregamos el error de discretización tenemos el error total:

i e r d ( B C ) | < 0.0044 + 0.058 < 0.063

I í ntonces:

d ( C , B ) = 1158.1 ±(0.063 1158.1) = 1158.1+73

i )bservemos que el error que más peso tiene en el resultado es el del ángu-
0.034 lo, que es propagado por la tangente, y que los errores de redondeo, debido a
la poca cantidad de cuentas y al valor pequeño de la unidad de redondeo, son
•«preciables.

0.034 0.034
Recomendaciones para lograr mayor precisión

Siguiendo la gráfica obtenemos: I ) Para sumar números del mismo signo, ordenar de menor a mayor en
I nodulo.
| er | (inherentes más redondeo) < .') Evitar restas de números aproximadamente iguales.
3) Si hay que efectuar a c - b c o a/c - b/c y a = b,
0.068 + E, + e, 0.068 + £ 5 + £ 6 i onviene sacar factor común:
< ! í 0.046 + 0.034+ e, + e4 + 0.138
0.954 O.ooz
c ( a - b ) o (a-b)/c
4 ) Minimizar el número de operaciones.
erlg | < 0.048 + 4.42 u
Errores en el cálculo numérico 73
72 Análisis numfró^sffrimer curso

' ! %.:^^-v'Á. .;-,->,-•.:: EJERCICIOS '


propagado al logaritmo suponiendo que el error inherente en x es nulo. Ob-
tenga una mejor aproximación del valor buscado construyendo un problema nu-
tf 1) Calcular con tres decimales correctos o significativos las siguientes expre- mérico más estable que el propuesto para los datos que se poseen.
siones:
(i) Se están realizando observaciones de un satélite para determinar su velocidad.
a) 1.3134 TC b) 0.3751 e c) Tte En la primera observación la distancia medida al satélite fue r = 30000 ± 10
km. Cinco segundos más tarde se determina un aumento en la distancia 8 r =
/ 2) Hallar cotas para los errores inherentes propagados (absolutos y relativos) en los 125.0 ± 0.5 km y el cambio en la orientación resultó de &)> = 0.00750 ±
' siguientes cálculos, donde x = 2.00 , y = 3.00 y z = 4.00 0.00002 radianes. Hallar la velocidad del satélite suponiendo que el mismo se
y mueve en línea recta y a velocidad constante durante ese intervalo de tiempo;
a) f = y-z c) f = xsen( -) indicar la precisión del resultado. Considerar exacto el lapso de 5 segundos.

3) Siendo x = 2.0 ±0.1 , y = 3.0 ± 0.2 y z = 1.0 ± 0.1 hallar una cota para el /) Se dispone de un algoritmo para computar la siguiente integral:
error absoluto inherente propagado de la siguiente expresión:
, b) = j dx
xy 2 o a+x
w
Utilizando dicho algoritmo se obtuvo la siguiente tabla:
4) Calcular la expresión:
a b
a) f = ( V~2 - 1 )6
0.39 0.34 1.425032
utilizando para -\T2 el valor aproximado 1 .4. Sustituir el valor aproximado en a) 0.40 0.32 1.408845
y en cada una de las expresiones siguientes: 0.40 0.34 1 .398464
0.40 0.36 1.388198
1 0.41 0.34 1.372950
( ^ 2 + 1) 6
c) f = ( 3 - 2 V~2 )3
Se pretende estimar l(z, y), siendo y, z cantidades físicas obtenidas de un pro-
ceso de medición:
z = 0.400 ± 0.003 y y = 0.340 ± 0.005
d)f=
(3 + 2
e) f = 99 - 70
Aproximar el número buscado y dar una cota para el error inherente propagado.

1 ii) Dibujar las gráficas de proceso, determinar la condición del problema y el tér-
f)f =
99 + 70 V 2 mino de estabilidad para los siguientes casos:

5) Aproximar la expresión ln( x - V x2 -1 ) para x = 30, sabiendo que la raíz


cuadrada se conoce con 6 decimales significativos. Hallar una cota para el error b) v = 2 a
74 Análisis numérico. Primer curso
Errores en el cálculo numérico 75

c)u = a + a + a 1 1 ) Calcular u2 - v2 en el sistema de numeración [ G( 10 ,4 , 1 ) , red ] con u =


d) v = 3 a 43.221 y v = 43.11 , utilizando los siguientes algoritmos:

Suponer que a posee cierto error inherente y que los errores inherentes de 2 a) uu-vv b) (u + v ) ( u - v )
y 3 son nulos y pueden ser representados exactamente. Comparar los resulta-
dos y extraer conclusiones. Efectuar los cálculos con a = 0.6992 en el sistema Indicar cuál algoritmo es más conveniente y justificar.
[ 6 ( 1 0 , 4 , 1 ) , red]
\?) Indicar cuál de los siguientes algoritmos es más estable para calcular la menor
9) Considere las expresiones: raiz de la ecuación:

a) T-
a-b
V b) -c- - c - 2 x + a= 0 0<a«1
Suponga que a, b y c son todos positivos, sin errores inherentes y además a a) ti! = 1 - a; ^2 = ^ ^ ; x = T]3 = 1-Ti 2 ;
es aproximadamente igual a b.
b) T], = 1 - a;
Demostrar que el término de estabilidad en b) puede ser mucho mayor que en a).
Efectuar los cálculos con a = 0.41 y b = 0.36 y c = 0.70 en [G( 10,2,1), red].
Preguntas Teóricas
10) a) Demostrar con los siguientes ejemplos que en [ 6 ( 1 0 , 5 , 1 ) , red] no valen
la ley asociativa ni la distributiva: l. Identificar y describir las principales fuentes de errores.
0.98765 + 0.012424-0.0065432
'i. Indicar qué significa que un algoritmo es menos estable que otro. Ejemplificar.
( 4.2832 - 4.2821 ) 5.7632
1 Indicar cómo haría para determinar la influencia de los errores de redondeo
sobre-los resultados de un algoritmo utilizando la computadora.
b) Trabajando en [ G( 10 , 3 ,1 ) , corte ] evaluar:
4. Pretendemos evaluar:
P ( x ) = x 3 - 6 x 2 + 3 x - 0 . 1 4 9 en x = 4.71
S(x) = n!
Repetir utilizando el esquema de Horner:
Hallar estimaciones de los errores de truncamiento, de los inherentes propaga-
P(x) = ( ( x - 6 ) x + 3)x-0.149 dos y de los de redondeo propagados al efectuar los cálculos.
Comparar ambos resultados con el que se obtiene trabajando con todos los dígi-
tos de su calculadora.
CAPÍTULO II

Álgebra lineal numérica

II.l Introducción
rusocdu.blogspot.com

Los problemas lineales son los problemas matemáticos más simples, sin
embargo son comunes en casi todas las aplicaciones, por lo cual es importante
(jue sepamos resolverlos rápida y precisamente.
Si A es una matriz cuadrada tenemos dos problemas fundamentales en el
algebra lineal:
1) Resolver el sistema lineal de ecuaciones A X = B, donde X y B son vec-
tores columna.
2) Resolver el problema de autovalores, es decir, determinar los autovalores
(escalares) \ los autovectores Xk tales que A Xk = \k, k = 1,...,
Kxisten estimaciones que indican que la resolución de un problema lineal
mUTviene en el 75% de todos los problemas científicos. Por ejemplo, se nos
plantean problemas lineales cuando interpolamos o aproximamos una serie
• le datos con una familia de funciones o cuando resolvemos ecuaciones dife-
inidales por métodos de diferencias. Incluso cuando resolvemos sistemas de
n naciones no lineales, a menudo aproximamos la solución resolviendo suce-
sivos sistemas lineales (método de Newton).
I-os problemas de autovalores surgen de problemas físicos tales como vi-
IH.K iones, resonancia, criticalidad de reactores y muchos otros.
H álgebra lineal es una buena ilustración de la diferencia entre matemáti-
i .11 lasica y análisis numérico. Aunque la teoría es conocida desde hace siglos,
78 Análisis numérico. Primer curso Álgebra lineal numérica 79

solo en las últimas décadas se ha avanzado decisivamente en la solución En particular definimos la matriz identidad o unidad I como:
numérica de los problemas 1) y 2 ). Por ejemplo las fórmulas para hallar un I = diag(l, 1 ,..., 1), es decir I = (8^), donde 5,. es la delta de Krorxecker, _
determinante en forma explícita, para la inversión de una matriz y para la re- O sea: 8^ = O si i ^ j, 8¡: = 1 si i = j
solución de un sistema lineal utilizando la regla de Cramer, son muy poco
económicas e introducen grandes errores de redondeo salvo para matrices de Dos matrices son iguales, A = B si y solo si a ^ - b ^ para todo i y para
2x2, 3x3 o matrices de estructura muy especial. todo j.
El producto de una matriz A por un escalar k es la matriz k A = (k a¡.).
Si dos matrices tienen la misma cantidad de filas y la misma cantidad de
utlumnas, su suma C = A + B, es la matriz con elementos c¡ • = a¡ • + b¡ •.
11.2 Conceptos básicos de Álgebra Lineal
Si A tiene m filas y p columnas, o sea A(mxp) y B(pxn), podemos de-
linir C(mxn) como el producto de A por B de la siguiente forma:
En esta sección repasaremos brevemente los conceptos básicos del álgebra p
lineal. C = A B si y solo si c i ; = £ a ; , b t i
k=l
Una matriz A es una colección de mxn números reales o complejos, orde-
nados según el siguiente esquema: Para la multiplicación valen las propiedades asociativas y distributiva; no
vale en general la propiedad conmutativa:
•1,1 a l,2 a l,n
A (B C) = (A B) C, A (B + C) = A B + A C, A B * B C
a 2,l a2,2 a 2,n
A= La transpuesta, A', de una matriz A es la matriz cuyas filas son las colum-
n.is de A:
a m,l am,2
Si A' = (b¡.), entonces b¡_. = a-, para todo i,j. Para la transpuesta de un
producto vale:
La notación ( mxn ) significa que la matriz tiene m filas y n columnas.
Vamos a abreviarlo escribiendo A = ( a¡.), i = 1,..., m , j = 1,..., n. Si m = n (A B)1 = B1 A'
diremos que la matriz es cuadrada. Un vector columna X = ( x¡ ), i = 1,..., m
Diremos que una matriz es triangular si tiene una de las siguientes formas:
es una matriz de una sola columna.
Una clase importante de matrices son las "diagonales", que representare- O 0 '•;' FI
1,2
mos así: 2,1 2,2 0 u 0 '2,2 2,n
0 o $= 0
d, . o 0
0 d2 0
1
!„,„ 0
= diag(d,,...,dn)
Denominaremos a una matriz del tipo L, izquierda o inferior y a una ma-
0 ;" 0 ; d nn lii/. del tipo &, derecha o superior. Sumas, productos e inversas de matrices
11 ungulares de un mismo tipo son nuevamente matrices triangulares del mis-
ino tipo.
80 Análisis numérico. Primer curso Álgebra lineal numérica 81

Denotaremos el determinante de una matriz cuadrada A por det(A). Las De esta forma podemos pensar una matriz constituida por matrices de or-
siguientes tres propiedades lo determinan, o sea, son suficientes para calcu- den menor:
larlo:
Au
i) El valor del determinante no cambia si a una fila (columna) se le suma
otra fila (columna) multiplicada por un escalar k. 2,, A,.
A=
ii) El determinante de una matriz triangular es el producto de los elemen-
tos de la diagonal principal:
det(S) = r u l r2i2 ... rn,n , det(L) = 1,, 12.2... lnjl
donde las Ay (p¡ x q.) son matrices. Decimos entonces que A está parti-
iii)Si dos filas (columnas) son intercambiadas, el valor del determinante i ionada. Usualmente nos interesa el caso en el que las matrices en la diagonal
cambia de signo. A,,, son cuadradas; entonces m = n y p, = q¡, i = 1 ,..., n. Para matrices par-
Las siguientes reglas también son válidas: ialonadas convenientemente, podemos ejecutar formalmente la suma y mul-
liplicación como si los bloques fueran escalares. Por ejemplo para el produc-
det(A) = det(A'), det(A B) - det(A) det(B) lo tenemos:

Si det(A) -£ O, la matriz A no es singular. Para toda matriz no singular n
existe una matriz inversa A"1, con la propiedad A ' A = A A ' = I. C - A B, con C¡ • = I A, k B k .
Para la matriz inversa de un producto tenemos: (A B)" 1 = B'1 A"1
Decimos que una matriz es diagonal en bloques, si en forma particionada
Una matriz simétrica es una matriz igual a su transpuesta:' A = A' /
puede escribirse como:
Si A y B son simétricas, entonces, A B es simétrica si y solo si A B = B A
Decimos que una matriz (mxn) es ortogonal si y solo si Q' Q = I A = diag(A, j,..., A n n ) donde las A¡ ¡ son matrices cuadradas.

Si m = n tenemos que Q' = Q ' y entonces también Q Q' = I.


Igualmente podemos definir matrices triangulares en bloques; en este caso
Las matrices reales simétricas y ortogonales juegan un papel importante v.ile, por ejemplo, que:
en el álgebra lineal.
Decimos que una matriz real y simétrica es definida positiva si la forma det(R) = det(RM) det(R 22 ) ... det(Rn,n)
cuadrática asociada es definida positiva, es decir:
X' A X > O para todo vector columna X real y distinto de cero. Podemos pensar una matriz constituida por vectores fila o vectores colum-
A menudo es conveniente particionar una matriz en bloques, por ejemplo: n.is. El número máximo de vectores fila linealmente independientes es igual
<il número máximo de vectores columnas linealmente independientes. Este
7 5 8 4 7 5 8 4 7 5 8 4 11 u mero r se llama rango de la matriz A y se denota rango(A) = r. Con-
2 3 9 5 — 2 3 9 5 - i luimos inmediatamente que r < min(m , n). En particular si r = m = n, A
2 3 9 5
rs no singular.
1 8 4 2 1 8 4 2 1 8 4 2
82 Análisis numérico. Primer curso Álgebra lineal numérica 83

Un sistema de m ecuaciones lineales con n incógnitas, se expresa de la I < >s métodos iterativos nos permiten construir una secuencia de solu-
siguiente forma: u-s aproximadas, que converge a la solución exacta cuando el número de
íi Y -4- i "V -4- -\- í\ h
tiende a infinito. Estos pueden proveernos resultados útiles (a pesar de
d l,l X l T d l,2 A2 T •" T d l,n A n ul
IIOM-IT error de truncamiento) con menos operaciones aritméticas (esto im-
i ' I u .1 en general, menor propagación de los errores de redondeo) que los mé-
imíos directos, aunque solo puedan aplicarse a sistemas con propiedades es-
l'fuales. En consecuencia, la elección entre métodos directos e iterativos
am,! X l + am,2 X2 + "• + am,n Xn = bm • Irpcnde de la proporción, distribución, signo y magnitud de los elementos no
nulos de A.
También puede expresarse en notación matricial como: I'.n esta sección consideraremos distintos métodos directos.

AX = B
Sistemas triangulares
Si B = O, el sistema se llama homogéneo. Un sistema homogéneo de ecua-
ciones siempre admite la solución trivial X = 0. Si rango (A) = r, y r < n, el I, os sistemas de ecuaciones lineales donde la matriz es triangular son par-
sistema homogéneo tiene (n - r) soluciones linealmente independientes. n« alármente simples de resolver. Un sistema U X = B, donde la matriz U es
1 1 ungular superior tiene la forma:

U U Xl Xn-, + U , , n Xn
II.3 Métodos directos para resolver sistemas de ecuaciones
lineales
U n-l,n-l Xn-1 + U n-l,n Xn "Vi
Un,n Xn ~ "n
Se llaman métodos directos aquellos que dan la solución exacta de un sis-
tema de ecuaciones lineales (salvo errores de redondeo) luego de un número
de pasos de cálculo finito y conocido de antemano. (Tenemos entonces que Si suponemos que u u * O , i = 1, 2 ,..., n , podemos calcular las incógni-
en el orden:
son métodos en los que el problema numérico coincide con el problema ma-
temático, o sea, son nulos los errores de truncamiento).
\ x n _, ,..., x, de la siguiente forma;
Para un sistema de ecuaciones A X = B, donde la matriz A es llena (es
decir, la mayoría de los elementos de A son no nulos), los métodos de elimi-
nación directa son casi siempre los más eficientes.
En los casos en que A es rala (es decir, cuando una gran proporción de
los elementos de A son nulos), los métodos iterativos ofrecen cierta ventaja
sobre los directos, es más, para sistemas ralos muy grandes se vuelven indis-
pensables.
84 Análisis numérico. Primer curso Álgebra lineal numérica 85

Podemos escribir esto en forma mas compacta: Supondremos en lo que sigue que la matriz A = (a¡ •) es no singular. Enton-
n > i-, d sistema A X = B tiene solución única. Ahora supongamos que aj , & 0.
x¡ = (b¡- Z u i k x k )/u H , i = n , n - 1, ... , 1 (3.1) línlonces podemos eliminar x, de las (n - 1) últimas ecuaciones de la si-
k=i+l " C.ninite forma:
Dado el orden en que obtenemos las incógnitas, este algoritmo se denomi- a la i-ésima ecuación se le resta la primera ecuación multiplicada por:
na SUSTITUCIÓN INVERSA.
itij, = a^/a,, , i = 2, 3,..., n
Podemos resolver en forma similar un sistema lineal triangular inferior
L X = B; suponiendo que lu # O , i = 1, 2 , ... , n, las incógnitas pueden ser
Fn consecuencia las últimas ( n - 1 ) ecuaciones se transforman en
obtenidas por SUSTITUCIÓN DIRECTA:
(2) a (2>2¿,n x n = b (2)22
i-l

I
xi = (b i -2l i > k x k )/l u , i=l,2,...,n
k=l
(3.2)
(3.4)

De estas fórmulas podemos deducir que la solución de un sistema trian-


n
X =
guiar requiere de n divisiones y £ (i - 1) = 1/2 n (n - 1.) sumas y multipli-
i=i
caciones, o sea un total de n + n (n - 1) = n2 operaciones. donde los nuevos coeficientes se obtienen mediante las relaciones:
La bondad de estos sistemas se comprende si observamos que multiplicar
¡,j = a ,j - m u a i,j' j = 2 ,..., n, b(2)¡ = b¡ - m u b,, i = 2 ,..., n .
un vector por una matriz triangular de orden n requiere exactamente n2
operaciones. (no es necesario hacer el cálculo para j = 1 pues sabemos que a <2) ¡, = 0)
Tenemos entonces un sistema de ( n - 1 ) ecuaciones en las ( n - 1 ) incóg-
Eliminación de Gauss nitas x2, x3,..., xn.
Queda claro de acuerdo a lo visto en la sección II. 1, que las soluciones de
El método directo más importante para resolver un sistema lineal general ( 3.3 ) y las del sistema formado por la primera ecuación de ( 3.3 ) y las del
cualquiera es la eliminación de Gauss. ( 3.4 ) son coincidentes.
La idea del método es eliminar las incógnitas en forma sistemática, de
modo de transformar el sistema original en uno equivalente triangular, para Si a ( 2 ) 2 2 # O, podemos en forma análoga, eliminar X2 de las últimas (n-2)
proceder luego como vimos en la sección anterior. ecuaciones de ( 3.4 ) obteniendo un sistema de (n - 2) ecuaciones en las in-
cógnitas X 3 ,x 4 , ...,xn.
Consideremos el sistema:
Si denotamos m j 2 = a (2)u / a (2)2 2 , los coeficientes del nuevo sistema estarán
dados por:

Xl + a 22
2,2 X22 + - + 3 2n
2,n Xnn = (3.3)
a (3) a (2) _ (2) j _ -3 L(3) _ U(2) m L(2) :_ T n
¡,j ¡,j i,2^ 2,j > > J > ••• > n> ° i ~ ° í m¡,2 D 2 , i — j ,..., n
3 n,l X l + an,2 *2 + ™ + an,n Xn
86 Análisis numérico. Primer curso Álgebra lineal numérica 87

Los elementos a , ,,, a ( 22)2 > a ( 333) ,, ...,


..., a(n n_} _„_,, que aparecen durante la eli- Luego de la eliminación obtendremos Xw haciendo sustitución inversa en
minación se llaman elementos pivotantes. Si todos ellos son no nulos, pode- el sistema formado por la matriz resultante de tomar las n primeras colum-
mos continuar la eliminación hasta que luego de (n - 1) pasos obtengamos nas de la matriz ampliada transformada por la eliminación simultánea (la
el siguiente sistema equivalente al ( 3.3 ): triangulación de A), y como término independiente la columna n + i) de la
matriz ampliada transformada por las operaciones de la eliminación simul-
a- i v ' J ,_ 2 x -t-... -4-
v 2 -4- -t- aa ' , n xVn -— uIV ',
11
tánea (transformación de B (l) ).
a (2) Y -I- 4- a' 2) V - h (2)
a 2,2 X2 + ••• + a 2,n Xn~D 2 Tenemos entonces que resolver p sistemas triangulares, con el costo de
( 3.5 ) una única triangulación para A, más la transformación simultanea de las p
(n) „ _ U(n)
3 n,nXn - D i, H (l) y las p sustituciones inversas.
El número de operaciones aritméticas requeridas para reducir un sistema
(hemos introducido la notación a (1) ¡_j = a¡_., b(1)¡ = b¡) i on p lados derechos a forma triangular puede estimarse en:
Observemos que el lado derecho B, se transforma de la misma forma que
la columnas de A. Por lo tanto si consideramos que B es la última columna 2/3 n3 + n2 ( p - 1/2 ) - n ( p + 1/6 )
de una matriz- A ampliada, podemos simplificar la descripción de la elimi-
nación haciendo: Como el número de operaciones necesarias para resolver un sistema trian-
gular, de acuerdo a lo estimado anteriormente es n2, observamos que el tra-
a (k) _u(k) i,- i . 7 . n • • • < . :;':' - • ' . • " - l>,ijo principal en la resolución de los p sistemas reside en la reducción a la
lorma triangular, sobre todo si p « n.

Entonces podemos resumir la eliminación Gaussiana como sigue:


EJEMPLO 3.1
La eliminación se logra en (n - 1) pasos.
Resolvamos el sistema A X = B, con:
En el paso k los elementos a(k)¡ . , con i , j > k, se transforman de acuer-
do a la siguiente relación:
1 2 3 4 2
(k> ,...,n (3.6) 1 4 9 16 10
A= B
1 8 27 64 44
Notemos que si tenemos que resolver varios sistemas con la misma matriz A, 1 16 81 256 190
A X (1) = B (1) , A X (2> = B ( 2 ) , , , A X ( P> - B(P>
uiili/,ando eliminación de Gauss.
los podemos tratar simultáneamente, adjuntando B''' (que es un vector) a Ordenaremos primero el vector de términos independientes a continua-
A como la (n + j)-ésima columna de la matriz ampliada. La única variación i u MI de los elementos de la matriz A:
que sufrirá (3.6) es que el índice j tomará los valores k+1,..., n,..., n+p.
88 Análisis numérico. Primer curso Álgebra lineal numérica 89

1 2 3
A
4
l
2
b- Efectuemos ahora la sustitución inversa, obteniendo primero el valor de x4
1
1 4 9 16 10 24 x4 = 24 entonces x4 - 1
44 (matriz ampliada)
1 8 27 64 ' 2 4 x 4 = 18 entonces x3 = -1
1 16 81 256 , 190 2 x2 + 6 x3 + 12 x4 = 8 entonces x2 = 1
1 x, + 2 x2 + 3 x3 + 4 x4 = 2 entonces x, = -1

Ahora procederemos a multiplicar la primera fila por el multiplicador


apropiado, para que restando este producto de cada una de las filas segunda, Estrategias de pivoteo
tercera y cuarta, anulemos el primer elemento de las mismas. En este caso
todos los multiplicadores valen uno. Hemos visto que si en la eliminación de Gauss el elemento pivotal a ( k ) k k se
.ínula para algún valor de k, el método falla. Un ejemplo simple de tal caso es
1 2 3 4 el siguiente:
0 2 - 6 12
i l
O 6 24 60 42 2x3 = 2 -)
O 14 78 252 188 2x 2x3 = 1

Debemos anular ahora los elementos de la segunda columna que están por
Este sistema es no singular y tiene la solución única:
debajo de la diagonal principal, multiplicando la segunda fila en un caso por
tres y en otro caso por siete y restando de la tercera y cuarta fila respectiva-
mente.
No obstante luego del primer paso de la eliminación se obtiene:
1 2 3 4 ^ 2
O 2 6 12 8
O O 6 24 18 x2 + x3 = O
O O 36 168 132
de modo que a (2)2 2 = O y no podemos seguir con la eliminación de la forma
usual. El remedio es obviamente, intercambiar las ecuaciones 2 y 3 antes
Para el último paso de la eliminación, el multiplicador resulta seis. ilcl próximo paso, que en éste caso particular, provee directamente el sistema
triangular. Podríamos también intercambiar las columnas 2 y 3, pero esto
1 2 3 4 2 nos llevaría a tener que intercambiar también el orden de las incógnitas.
O 2 6 12 8 Consideremos ahora el caso general en el cual en el paso k obtenemos
O O 6 24 18 ,i"° kk = 0. En este caso, algún otro elemento a (k)ik , i = k+1, ... , n de la colum-
O O O 24 24 na k debe ser no nulo (de no ser así, las primeras k columnas serían lineal -
mente dependientes y en consecuencia A sería singular). Supongamos que

3 i/o o L'S, 1 i¿
90 Análisis numérico. Primer curso
Álgebra lineal numérica 91

a (k)rk sea distinto de cero. Entonces podemos intercambiar las filas k y r y Ahora eliminemos el cero que está debajo de la diagonal en la columna 2:
proseguir con la eliminación. Concluimos pues, que cualquier sistema de
ecuaciones no singular puede ser reducido a un sistema triangular por elimi- 1 1 1 1
nación de Gauss combinada con intercambio de filas. O l í O'
Ahora vamos a analizar en forma introductoria con la ayuda de un ejem- O O 0.999 1
plo, la relación entre la propagación de los errores de redondeo y un determi-
nado criterio para elegir los pivotes. De donde deducimos: x3 = 1.00, x2 = - 1.00, x, = 1.00, mientras que la
solución exacta vale:
Consideremos el sistema de numeración [G(10 ,3 ,1) .corte] y el sistema
de ecuaciones lineales: x3 = -x 2 = 1.00010001..., x,= 1
X, + x, + x3 = 1
Este ejemplo pone de manifiesto la importancia del pivoteo en el control
0.0001 x
ile la propagación de los errores de redondeo. Notemos entonces, que para
x2 + x3 = O
prevenir catástrofes como la mostrada, es usualmente necesario elegir el ele-
mento pivotal en el paso k utilizando una de las siguientes estrategias:
Apliquemos eliminación de Gauss hasta obtener la solución en el sistema
i) PIVOTEO PARCIAL: Consiste en elegir r como el menor entero para el
de numeración indicado: . cual

r,k - max }, k < i < n


1 1 1 1 1 1 1 1
0
0
0.0001 1
1 1
1
0
O
O
0.0001
O
1 1
- 9990 - 10000
I ii) PIVOTEO COMPLETO: Consiste en elegir r y s (utilizando por ejem-
plo un orden de tipo lexicográfico) como el "menor par" de enteros
para los cuales

= max ,(k)
De donde deducimos: x3 = 1.00, x2 = 0.00, x, = 0.00
Vamos a resolver ahora el mismo sistema, pero utilizando como pivote en
e intercambiar las filas k y r y las columnas k y s.
el paso k, el elemento de mayor módulo de la columna k desde la diagonal
para abajo, técnica conocida con el nombre de pivoteo parcial: Observemos que haciendo pivoteo completo, seleccionamos como pivote
i .ula paso, al elemento de mayor valor absoluto de entre todos los posibles.
Comenzamos entonces invirtiendo las filas 2 y 3:
||i l.i práctica, el pivoteo parcial es generalmente satisfactorio, y debido a la
llu yo r cantidad de búsqueda que implica el pivoteo completo, éste no resulta
1 1 1 1 1 1 1 1 Htiy usado.
0 0.0001 1 1 O 1 1 o
0 1 1 0 O 0.0001 1 1 líxisten dos casos importantes en los cuales la eliminación de Gauss puede
lli/.iirse sin intercambio de filas o columnas.
Álgebra lineal numérica 93
92 Análisis numérico. Primer curso

Estos corresponden a sistemas en los cuales la matriz A es de uno de los comenzo


siguientes tipos: a,,i = a¡,j - m %; ;
a) Diagonal dominante, es decir: fin(j)
finí i)
|a¡>1| > L |a¡g|, i = l , 2 , . . . , n fin( k )
para k = 1, ..., p hacer
b) Simétrica y Definida Positiva, es decir: comienzo
para i = n, n - 1, ..., 1 hacer
A' = A X' A X > O para todo X* O comienzo
s = O;j = i + 1 ;
mientras j < n hacer
comienzo
Algoritmo para la eliminación de Gauss con pivoteo parcial
s = s + a¡,j xj,k ;
j=j+l;
comienzo finmientras
entrada : n, p, (a¡.) i = 1,..., n, j = 1, —, n + p;
XiJ< = ( 3,,n+k - S ) / ai,i !
para k = 1 , 2 , . . . , n - 1 hacer finfí)
comienzo fin( k )
(* búsqueda del pivote e intercambio de filas *) salida: ( x^ ) i = l , . . . , n , j = l , . . . , p
max - abs(ak>k); fin
ind = k ;
para i = k + 1,..., n hacer Dejamos como ejercicio agregar las preguntas necesarias para distinguir
comienzo una matriz singular y en ese caso detener el proceso de cálculo.
si abs(a, k ) > max entonces max = abs(aik) ; ind = i finsi;
fin( i)
para j = k,..., n + p hacer Descomposición LU
comienzo
aux = a nd,j Kl algoritmo anterior resuelve simultáneamente p sistemas de ecuaciones
3ind,j ~ ak,j ' u)ii una matriz común a todos ellos utilizando la eliminación de Gauss, con
akj=aux; la condición de conocer de antemano los p términos independientes. Sin
fin(j) nnkirgo existen situaciones en las cuales no conocemos todos los miembros
(* fin del intercambio de filas *) • I' icchos desde un principio. Por ejemplo, podemos querer resolver:
para i = k + 1, k + 2, ..., n hacer
comienzo A X ( I ) = B(1> y AX <2) = B(2), siendo B(2) una función de X(1).
= a,,k akik
, (ionio no conocemos de antemano B (2) , no podemos aplicar el algoritmo
para j = k + 1, ..., n + p hacer !• • K n desarrollado. Puede parecemos necesario en este caso repetir la elimi-
94 Análisis numérico. Primer curso Álgebra lineal numérica 95

nación de Gauss sobre A para operar sobre el segundo término indepen- ii) E¡ . es la matriz que se obtiene permutando las filas i y j de la iden-
diente. Veremos ahora que utilizando la descomposición L U esto no es nece- tidad.
sario. iii) E¡(t) - es la matriz que se obtiene sumando a la fila i de la identidad la
Dada una matriz A nxn supongamos conocer una matriz L y otra U fila j multiplicada por la constante c.
con las siguientes propiedades: Hs fácil ver que premultiplicando una matriz A por una matriz elemental
.( obtiene la matriz que resulta de aplicar a A la misma operación elemental.
A = L U, L triangular inferior y U triangular superior.
Como ya vimos que la eliminación de Gauss podemos realizarla aplican-
En este caso para resolver A X = B procedemos de siguiente forma: do una sucesión de operaciones elementales de los tipos mencionados en ii)
y i i i ) queda claro que:
Resolvemos primero mediante una sustitución directa L Y = B y luego
mediante una sustitución inversa U X = Y.
En consecuencia, conociendo estas dos matrices podemos resolver el sis-
tema donde simbolizamos las matrices del tipo ii) (de permutación) con la letra
I ', y las del tipo iii) con la letra E.
AX=B Para establecer el teorema debemos observar que para dos matrices ele-
mentales cualesquiera P y E resulta:
efectuando 2 n2 operaciones, mientras que la eliminación de Gauss requiere
2/3 n3 operaciones. P E = P E (P P) ya que P es inversa de sí misma, y entonces:
Estableceremos ahora los fundamentos de la descomposición L U:
P E = (P E P) P y P E P es una matriz del tipo iii) que llamaremos E',
Multando:
Teorema 3.1
E = E'P.

Dada una matriz A de nxn no singular, existen una matriz P de per-


Aplicando resursivamente el resultado anterior llegamos a:
mutaciones, una matriz L triangular inferior con unos en la diagonal, y una í ;.
matriz U triangular superior, tales que: |<;(io p(q) £(k-D p(i) A = E' (k) E' (k " 1) E' (1> ( P íq) P (1) )A = U
PA = LU
kcsta observar que cualquier matriz elemental E' obtenida en este proce-
La demostración de este teorema resulta sencilla usando matrices elemen-
tales, las que se obtienen realizando operaciones elementales de filas sobre la
matriz identidad:
i) E(c) ¡ es la matriz que se obtiene multiplicando la fila i de la identidad
por la constante c.
t mentó es triangular inferior con unos en la diagonal, y por lo tanto tiene
crsa, que también resulta triangular inferior con unos en la diagonal, y
¡unces llamando P al producto de las matrices P(l) la matriz L buscada
ulta ser:

L = ( E I(1) )-' ... ( E'(k) )-' c.q.d.


96 Análisis numérico. Primer curso Álgebra lineal numérica 97

La solución de A X = B es la misma que la de (P A) X = (P B), que obtení Almacenamos los multiplicadores mj;k en la forma ya indicada; notemos
mos mediante las dos sustituciones que nos permiten resolver que ellos serán intercambiados junto a las filas correspondientes.
LUX=PB Al querer resolver A X = B, aplicamos los intercambios de fila k por
|\ k = 1, 2,..., n al vector B, obteniendo el vector P B. Finalmente resolve-
Para construir el Algoritmo de la descomposición L U debemos observar mos el sistema haciendo las dos sustituciones.
que U es la misma matriz que resulta de la Eliminación de Gauss y L se cons-
truye con los multiplicadores utilizados en la eliminación: Algoritmo para la descomposición L U con pivoteo parcial

s
con comienzo
entrada : n, ( a y ) i = l,...,n, } = l , . . . , n ; .'."' ,V
para i = 1,..., n hacer
Como determinamos los mi,k de forma tal que a (k+1)ik sea nulo, pode-
comienzo
mos superponer la escritura de m j k sobre a""""^ y al finalizar la Elimina- i ' i '"i * f !

ción de Gauss tendremos en A todos los valores necesarios para construir L


fin(i)
y U, pues los elementos diagonales de L son triviales y no necesitamos alma-
cenarlos. En consecuencia una vez finalizadas las operaciones dispongamos parak= 1,2, ...,n- 1 hacer
comienzo
de la siguiente matriz almacenada en A:
(* búsqueda del pivote, intercambio de filas y actualización de p *)
max = abs( a k k );
U ,,, U ,,2 - U!,n
ind = k ;
para i = k + 1,..., n hacer . -
kl U2,2 - U2n
comienzo
si abs( a l k ) > max entonces max = abs( a ij( ) ; ind = i ÉtpÉÍ;
kl k,2 -
u n,m fin(i) . ' -
para j = 1,..., n hacer
Resumiremos ahora la forma en que la descomposición LU es utilizada comienzo
en la práctica para resolver un conjunto de sistemas lineales aux = a ind . ; .:••• "; '. ;/
aind,i - %; •
A X(l) = B(l) , i = 1, 2,..., p en donde puede ocurrir que B (l) sea función a k j = aux; • .'
de X(i) con j < i. fiñ(j)
aux = D: ,;
'-. "• ' ' • ' ' . " • ' • •';. ' ;.
Realizamos la Eliminación de Gauss con pivoteo parcial sobre A y alma-
cenamos los índices de las filas pivotantes en un vector ( p,, p2,..., pn ); este pk = aux ;
quiere decir que p¡ indica que fila de A es la i-ésima de P A. (* fin del intercambio de filas y actualización de p *)
para i = k + 1, k + 2,..., n hacer
comienzo
98 Análisis numérico. Primer curso Álgebra lineal numérica 99

para j = k + 1,..., n hacer comienzo


comienzo s = s + ai,j x i;
ai,j ~ ai,j " 3i,k 3k,j > .' j = j + i;
fin(j) finmientras
fin(i) x¡ = ( y i - s ) / a i . ;
fin(k) fin(i)
salida : ( p¡) i = 1,..., n , ( a^) i = 1,..., n , j = 1,..., n salida : ( x¡) i = 1, ...,n
fin fin
Nuevamente dejamos como ejercicio agregar al algoritmo las preguntas Es útil mencionar que la mejor forma de calcular el determinante de una
necesarias para distinguir una matriz singular, y en ese caso detener el pro- matriz A es generalmente, realizar Eliminación de Gauss sobre A y utilizan
ceso. /
det(A) = signo(P) a (1)u a(\.'.. aM^
Algoritmo para las sustituciones directa e inversa
siendo signo(P) igual a 1 ó -1 de acuerdo a que la cantidad de intercam-
comienzo bios de filas realizados en la eliminación halla sido par o impar respectiva-
entrada: n, p, A, B ; (* p y A son las salidas de la descomposición L U *) mente.
para i - 1,..., n hacer
comienzo
bp¡ = b pi ; Esquemas compactos para la Eliminación de Gauss
fin(i)
(* sustitución directa *) Cuando resolvemos un sistema lineal por Eliminación de Gauss debemos
para i = l , . . . , n hacer escribir aproximadamente n 3 /3 resultados intermedios (uno para cada mul-
comienzo lí plicación); incluso para valores de n pequeños esto es muy tedioso y da lu-
s = 0; j = 1 ; . i;.ir a muchos errores de redondeo.
mientras j < i hacer Si A = L U o si conocemos de antemano una P tal que P A = L U pode-
comienzo mos modificar el algoritmo de forma tal que los elementos de L y de U sean
tleierminados directamente sin utilizar la Eliminación Gaussiana.

finmientras Hi La igualdad A = L U es equivalente a las ecuaciones:


y¡=bp r s;
fm(i) m k, Pu p,j = min(k,j)
(* sustitución inversa *)
para i = n, n - 1,..., 1 hacer i L.. Así tenemos n2 ecuaciones con n2 incógnitas.
V* ¿
comienzo I Demos a k un valor entre 1 y n y observemos las siguientes ecuaciones:
s = 0 ;j = i+ 1 ;
mientras j < n hacer a,,: = a¡,k = P=I , u Dk , i > k.
P=I
CJ
p)
100 Análisis numérico. Primer c,urso Álgebra lineal numérica 101

Considerando que m k k = 1, los elementos: j*


'•*
u k,j = aak,¡ - °s> •
•ur j = j + 1 ;
Uk,k > U k,k + l ' •- Uk,n y m k + l,k> "W' -> m n,k •:.. f i n m i e n t r a s ( j)
, i=k+l;
pueden ser calculados en ese orden de: ; ; ,t; mientras i < n hacer
k-l comienzo
u k j = a k . - E m k p up>j , j = k , k+1,..., n ,.;', í ; h x i ; > s = 0; ....**) '
P=I
í - "SÍ
k-l
mientras p < k - 1 hacer ,,m 2 ~^s)
n\ = (a. k - S m i p up,k)/uk>k , i = k+1, k+2 ,.... n ; ,,noitn
comienzo
P =I rlMW*
s - s + 1, u . ;
Este método es llamado Método de Doolittle.
finmientras( p)
Algoritmo de Doolittle
i'=i+l';
comienzo finmientras( i)
entrada : n , (a¡p , i = 1,..., n , j = 1,..., n fin( k)
para i = 1,..., n hacer para i - 1,..., n hacer
comienzo comienzo
para j — 1,..., n hacer W
comienzo finí i)
salida : (1^ ) , ( u^ ) , i = 1,..., n , j = 1,.... n
u(. = Q;
fin( j)
fin( i) Si en vez de imponer la condición m k k = 1, adoptamos la convención
para k = 1,..., n hacer u k k = 1, k = 1, 2,..., n , obtenemos una versión ligeramente distinta, llamada
comienzo Método de Crout:
j = k;
mientras j < n hacer m¡,k = ai,k - 2 m i p u pk , i = k , k + 1,.... n
comienzo K-:'t>
k-l
s = 0; J, mk,P UP;)) / mk,k > j = k + 1,..., n
mientras p < k - 1 hacer
En lo anterior hemos supuesto que no hay pivoteo; sin embargo es esen-
comienzo
i ial para la utilidad de estos métodos que puedan ser combinados con pivo-
s = s + kP UP,J ; ico parcial de una forma directa; no obstante esto no es sencillo.
fínmientras( p ) f ., ,
"* Ar '
Álgebra lineal numérica 103
102 Análisis numérico. Primer curso

Para matrices simétricas definidas positivas, los esquemas compactos 11.4 Matrices especiales
son particularmente atractivos dado que el pivoteo no es necesario. Un méto-
do muy conocido se obtiene imponiendo la condición U = L1 , entonces
En la práctica encontramos a menudo sistemas A X = B en los cuales la
uk,k = mk,k Y up,k = mk,P Y las fórmulas anteriores adquieren la forma simplifi-
matriz A tiene propiedades especiales, de forma tal que podemos ahorrar
cada: operaciones y espacio en memoria modificando el algoritmo. En lo que sigue
.malizaremos brevemente algunos casos importantes.
mk,k = (a k , k ~ k ¿K p ) 2 ) 1 / 2
P =i
k-l
m¡ mk , ) / m kkkk , k = l , . . . , n , i = k+l,...,n Matrices simétricas definidas positivas

Este es el popular Método de Choleski o de la raiz cuadrada. Si A = (a¡.) es una matriz simétrica, los elementos transformados por Eli-
minación de Gauss sin pivoteo, también forman una matriz simétrica. En
umsecuencia, necesitamos solo computar los elementos de A (k) que están en,
y por encima de la diagonal, reduciéndose el número de operaciones y el espa-
Matrices inversas i io de memoria utilizado a casi la mitad.
Si conocemos la matriz inversa A"1, podemos calcular directamente la so- No siempre podremos realizar la Eliminación de Gauss en matrices simé-
lución de A X = B utilizando la fórmula: I ricas sin pivoteo. La simetría es preservada si se elige el pivoteo a lo largo de
la diagonal principal; sin embargo este procedimiento no es siempre estable.
X = A ' B. En consecuencia, no podemos utilizar para todas las matrices simétricas la
Eliminación de Gauss Simétrica.
Puede ser entonces tentador calcular la inversa de A, especialmente si
debemos resolver sistemas con la misma matriz y distintos términos inde Puesto que la Eliminación de Gauss sin pivoteo es siempre estable para
pendientes. Sin embargo en estos casos suele ser conveniente utilizar la des- matrices simétricas definidas positivas, será conveniente que enunciemos
un criterio accesible para determinar cuando una matriz posee esa propiedad:
composición L U.
De todas formas a veces es necesario calcular la inversa (por ejemplo, en
(TÍterio de Sylvester:
conexión con análisis regresivo en estadística). Podemos entonces calcularla
de la siguiente forma: Una matriz A de nxn simétrica, es definida positiva si y solo si
Si llamamos X a la inversa, o sea X = A"1, tenemos que A X = I, o sea:
det(Ak) > O, k - 1,2, ...,n,

«londe Ak es la matriz de kxk formada por la intersección de las primeras k


donde X(i) y E® son la j-ésima columna de X e I respectivamente. lilas y las primeras k columnas de A.
Entonces la columna j-ésima de A"1 es la solución del sistema lineal de
matriz A que tiene por término independiente la columna j-ésima de la ma-
triz identidad.
104 Análisis numérico. Primer curso Álgebra lineal numérica 105

Matrices banda Si la descomposición L U existe, puede ser escrita como:

Muchos problemas (por ejemplo problemas de valores de contorno para •i ; 1 0 0 0 0 0


ecuaciones diferenciales ordinarias) producen sistemas lineales ralos, donde 1 0 0 0 0
P2
los elementos no nulos se localizan en una banda centrada a lo largo de la
diagonal principal. En general, una matriz A para la cual: L _
0 P3 1 0 0 0
.
a¡ j -O p o 0 0 0 1 0 0
•-.-'•!.
0 0 0 Pn-, 1 0
se llama matriz banda, con ancho de banda w = p + q + 1 . 0 0 0 0 >Ó 1
Pn
Los sistemas de ecuaciones asociados con matrices banda son particular-
mente aptos para ser tratados con la Eliminación de Gauss, ya que la estruc-
tura de banda se mantiene en lo esencial al efectuar la eliminación. i
*
a, c. 0 0 0 o"
Si no hay pivoteo, las matrices triangulares L - (m¡.) y U = (u¡ p, serán -i»¡ 0 «2 C2
0 0 0
matrices banda con: 0 0 «3 0 0 0
U= :
m^^O si j > i o i > j + q, y
0 0 0 «n-2 C n-2
0
i-, . 0 0 0 0
u¡- = O si >j o j>i +p «n-, C n-l

0 0 0 0 0 «n
A menos que A sea diagonal dominante o definida positiva, debería usar-
se pivoteo parcial. Esto no cambia el ancho de banda de L, pero el de U es Efectuando el producto de L por U y luego igualando, podem
ahora el mismo que el de A, es decir: jur primero a, y luego fik , ak en éste orden:
s
a. = a,, ,
La reducción en tiempo y almacenamiento para sistemas banda con p, q « n
Pk = bk / cck., , cck = ak - pk c k _, , k = 2, 3,..., n.
es considerable.
Un caso especial muy frecuente es el de las matrices tridiagonales, o sea Entonces la solución del sistema A X = F la encontramos por sustitución
tli i ceta e inversa mediante las fórmulas:

4 -1 -1 0 y, = f. . Yi = f¡ - P¡ Yu , i = 2,3,...,n
-1 4 0 -1
-1 4 -1
xn = y n / a n , xi = (yí-c¡xi+l)/a¡, i = n - l,n - 2,..., 2, 1.
0
0 -1 -1 4
106 Análisis numérico. Primer curso Álgebra lineal numérica 107

El número total de operaciones aritméticas necesarias es sólo de 3 (n - 1) Entonces podemos reescribirlo de la siguiente forma:
sumas y multiplicaciones y 2 n - 1 divisiones.
A pesar de la utilidad de la Eliminación de Gauss para muchos sistemas
)*>
con estructuras de banda, a veces impone serias limitaciones el hecho de que
el método no preserva el raleado dentro de la banda. En estos casos, es más El Método de Jacobi consiste en tomar una aproximación inicial X(0)
conveniente utilizar métodos iterativos. (usualmente X(0) es el vector nulo) y construir una secuencia de aproxima-
ciones X ( 1 ) , X ( 2 ) ,... utilizando la expresión:

u-(k+l) _
(5.1)
II. 5 Métodos iterativos
Tomando límite a ambos lados de la ecuación ( 5.1 ) observamos que si
el límite existe, o sea:
Los métodos que hemos discutido hasta ahora son directos, esto quiere de-
cir que la solución que hallamos en un número finito de operaciones no tiene
lim x(k)¡ = x, , i - 1, 2, ..., n,
error de truncamiento. (También podemos decir que para éstos métodos el
problema matemático coincide con el problema numérico.)
debe ser una solución del sistema original, pues:
Contrariamente a éstos, los métodos iterativos comienzan con una prime-
ra aproximación, que es sucesivamente mejorada por los elementos de una
secuencia de números que convergen a la solución exacta. Evidentemente el
J*>
proceso se trunca cuando los números obtenidos alcanzan la precisión desea-
da, dando lugar entonces a la existencia de un error de truncamiento. (En es-
tos métodos, la solución del problema numérico es sólo una aproximación de
la solución del problema matemático.) El Método de Gauss-Seidel
Los métodos iterativos son usados a menudo para resolver grandes siste- Observemos que en el Método de Jacobi, no usamos los valores mejorados

E
mas de ecuaciones ralos. Estos sistemas se presentan por ejemplo, en estudio sta haber completado la iteración. En cambio, en el estrechamente relacio-
de redes de corriente eléctrica, modelos de sistemas económicos y procesos do Método de Gauss Seidel, usamos los valores mejorados apenas calcula-
físicos tales como difusión, radiación y elasticidad. s (lo que en general acelera el proceso de convergencia), es decir:

x ,k +1)¡ = ( . X a¡ .. x <k+u . I a .. x(k). + b. ) / a[ . > i = u 2,...; n ( 5.2 )


El Método de Jacobi

Consideremos el sistema lineal: Desde el punto de vista computacional el Algoritmo de Gauss-Seidel es


nuis sencillo de programar que el de Jacobi, ya que no necesita de un vector
A X = B, y supongamos que au & O , i = 1, 2,..., n. I tara los valores de X (k) y otro para los valores de X (k+1) al almacenar en un
mismo vector los valores recién calculados.
108 Análisis numérico. Primer curso Álgebra lineal numérica 109

EJEMPLO 5.1 listo es generalmente así, pero existen casos en los cuales el Método de
i.uiss-Seidel diverge y el de Jacobi converge.
Sea A X = B con:

4 -l -1 0 1
Método de Sobrerrelajaciones Sucesivas
A= -1 4 0 -1 2
y B=
- 1 0 4 -1 i) Si introducimos una simple modificación al Método de Gauss-Seidel, po-
0 -1 -1 4 1 demos obtener una mejora sustancial en la velocidad de convergencia. No-
l finos que la ecuación ( 5.2 ) puede ser escrita como:

Con el Método de Jacobi obtenemos la secuencia siguiente: I r

v (k) Y (k) Y (k)


k x (k) , A 2 A 3 A 4 donde r <k> ¡ es el residuo de la i-ésima ecuación:
1 0.25 0.5 0 0.25
2 0.375 0.625 0.125 0.375 ( 5.3 )
3 0.4375 0.6875 0.1875 0.4375
0.21875 0.46875 El Método de Sobrerrelajaciones Sucesivas o SOR (successive overrelaxa-
4 0.46875 0.71875
lion) está caracterizado por la fórmula:
5 0.48344 0.73438 0.23438 0.48344
6 0.49219 0.74172 0.24172 0.49219
7 0.49586 0.74609 0.24609 0.49586
8 0.49805 0.74793 0.24793 0.49805
umsiderando que el parámetro de relajación cu debemos elegirlo de modo
0.5 i|iie nos permita obtener la máxima velocidad de convergencia.
°° 0.5 0.75 0.25
Vamos ahora a generalizar lo dicho en las secciones precedentes para luego
Con el método de Gauss-Seidel obtenemos en cambio: poder profundizar en cada uno de ellas.

Y (k) Y (k) x (k)


k x (k) , A 2
X 3 A 4

1 0.25 0.5625 0.0625 0.40625 Métodos Iterativos Estacionarios


2 0.40625 0.70312 0.20312 0.47656
Hn esta sección veremos que resolver un sistema de ecuaciones lineales:
3 0.47656 0.73828 0.23828 0.49414
4 0.49414 0.74707 0.24707 0.49854
A X = B , A nxn , B nxl ,
5 0.49854 0.74927 0.24927 0.49963
utilizando cualquiera de los métodos descriptos anteriormente es equivalente
°° 0.5 0.75 0.25 0.5
resolver el sistema de ecuaciones:
Observemos que Gauss-Seidel converge más rápidamente que Jacobi.
110 Análisis numérico. Primer curso Álgebra lineal numérica 111

X = E X + C , E n x n , C nxl, Este resultado puede generalizarse aunque los V¡ no sean linealmente in-
dependientes, o sea:
mediante el siguiente proceso recursivo:
Teorema 5.1
X(k+1) = E X(k) + C , k = 0,1, 2,3,... (5.4)
Suponiendo que exista un vector X tal que:
siendo E la "matriz de iteración" (distinta para cada uno de los métodos).
X=EX+C,
Un método que puede ser expresado por una fórmula como la ( 5.4 ) so
llama iterativo porque calculamos un vector a partir del anterior para acer- una condición necesaria y suficiente para que el método iterativo estado-
carnos a la solución, y estacionario porque la matriz E y el vector C per- n.irio:
manecen invariables (para un dado sistema) a lo largo del proceso iterativo.
Por supuesto que estamos interesados en que el proceso sea convergen U , = £ x(k> + C, converja desde un X (0) cualquiera es que:
o sea que tomando límites a cada lado de ( 5.4 ) resulte:
p(E) =i <;<r,
max { I X¡ | } < 1 , (los X¡ son los autovalores de E)
X=EX+C (5.5)
( p(E) es llamado el radio espectral de E).
Vamos a encontrar condiciones que garanticen la convergencia del méto-
do iterativo estacionario suponiendo que existe un X que satisface ( 5.5 ). No demostraremos este resultado.
Supongamos primero, que los n autovectores de E, V,, i = 1,..., n, sean En la práctica los autovalores de E no son conocidos y su cálculo no es
linealmente independientes, y sean \ = 1,..., n, los correspondientes auto sencillo. Sin embargo existe una condición suficiente para la convergencia,
valores. (|ue es fácil de verificar:
Tomemos un X (0) cualquiera y escribamos X(0> - X como combinación
lineal de los V¡, entonces: Teorema 5.2
.
n
Si existe solución de ( 5.5 ), y alguna norma de E es estrictamente menor
X (0) - X = £ a, V¡, de donde: (|iic 1, partiendo desde un X(0) cualquiera el método iterativo ( 5.4 ) con-
i=l
n n verge a la solución buscada.
E (X(0) - X) = I; a¡ E V4 = £ a, X¡ V¡, de donde:
I >c mostración
X (k+u .x= (X(0) - X) =Z a¡ X k+1 V, ,
X(k) - X = Ek (X(0) - X), entonces:
de donde deducimos que suponiendo que exista una solución X de ( 5.5
el método converge para cualquier X(0) de partida si y solo si el módulo || X'k> - X || < || E ||k || X(0> - X ||,
todos los X¡ es menor que 1 .
de donde tomando límites surge inmediatamente lo enunciado.
112 Análisis numérico. Primer curso Álgebra lineal numérica 113

Error de truncamiento en los Métodos Iterativos Estacionarios A = D (L + I + U) ,

Sea X la solución de ( 5.5 ), y sea X (k) el valor obtenido por el método Mc-ndo I la matriz identidad.
iterativo en el paso k partiendo de un X(0) cualquiera, entonces: lis inmediato verificar que debe ser:

X(k) - X = E (X"'-1' - X) = E (X(k-" - X) + E X (k) - E X (k) = D - (a- SJ , siendo 8¡- la delta de Kronecker,

= - E (X(k) - X (k -") + E (X (k) - X), de donde tomando normas obtenemos: L = (1¡ •), con 1; ^ = a.t. I a ;i , si i > j y ltj = O, si i < j

X|| < || E || || X (k > - X (k ~'> || + II E || || X (k) - X ||, o sea: U - (u M ),con Ujj = a^ / au , sii<j y u^ = O, s i i > j

X | | ( l - | | E | | ) < || E INI X (k) - X < k -<> || ,


De donde es inmediato que resolver A X = B es idéntico a resolver:

y suponiendo || E || < 1, deducimos el sorprendente resultado: D (L + 1 + U) X = B ( 5.7 )


E II
X (k) - X || < 5.6) Por lo tanto el Método de Jacobi consiste en considerar que:
1-IIE
(L + U) X + X'. = O'1 B, y entonces:
Si || E || < 0.5, el factor de || X (k) - X0*'" || en ( 5 . 6 ) es menor o igual
que 1, por lo tanto la norma del error de truncamiento en el paso k, es me-
X ( k + l ) = - (L + U) X (k> + D ' B, de donde deducimos que:
nor o igual que la norma de la diferencia entre las dos últimas aproxima-
ciones calculadas:
E, = - (L + U), C, = B
|| E || <. 0.5 , entonces || X(k) - X || <. \(k) - X^1» ||
Para obtener las matrices del Método de Gauss-Seidel, observemos que
5.7 ) es idéntica a:

Matrices de los Métodos Iterativos ¡ (L -i- 1) X = - U X + D"1 B, de donde obtenemos:


Vamos a calcular la matriz E y el vector C para los distintos métodos des-
x <k + i) _ _(L + r) -i y X (k) + (D ( L + I) )-' B, o sea:
criptos en las secciones anteriores.
Primero supongamos que A es tal que a¡¡ ^ O para todo i, de donde E G S - - ( L + I)-' U, CGS = (D (L + I))- 1 B
deducimos que existen tres matrices D, L, y U, tales que D es diagonal, L
triangular inferior y U triangular superior y se verifica la identidad: Para obtener las matrices del Método SOR, comenzamos por considerar
i|iu- Gauss-Seidel puede escribirse:
114 Análisis numérico. Primer curso Álgebra lineal numérica 115

(L + I) X(k+1) = - U X(k) + D ' B, de donde: E || = = max { Z I a¡. | / 1 au | }

X (k+ü = X(k) . L X (k+i) . (u + I) X(k) + D ' B Sacando | a u I'1 factor común de la suma sobre j, y de ( 5.8 ) surge que
la norma de Ej es menor que 1.
Por lo tanto SOR es expresado así:
La demostración para EGS requiere del siguiente hecho fácilmente com-
X (k + i) _ X(k) + w (. L X (k+1) - (U + I) X (k) + D'1 B) , probable:
II F X I !
Si E es una matiz de nxn, || E || = max { ¡
y entonces: x*0
11 V
|| X||
II

(I + co L) X (k+1) = (I - o U - co I) X (k) + co O"1 B, Hagamos Y = EGS X, de donde || EGS || = max { —- }

de donde obtenemos:
Consideremos ahora un X cualquiera y el correspondiente Y - Eüs X
£„ = ( 1 + 0)1)-' ( ( I - O » ) I - « U ) , C w = ( l + c0L)-' w D 1 B
De la definición de norma infinito surge inmediatamente que:

existe un p tal que 1 < p < n y vale:


Condiciones suficientes de convergencia
En todo lo que sigue trabajaremos con la norma infinito, ya definida ante- II Y || = |y p |
riormente.
Por otro lado Y = EGS X = - (L + I)'1 U X implica:
Vamos a probar que tanto para Jacobi como para Gauss Seidel, una condi-
ción suficiente de convergencia es que A sea estrictamente diagonal domi- (L + I) Y = - U X , y entonces Y = - L Y - U X , de donde:
nante, o sea:
II Y || = | y p | < | ( L Y ) p | + | ( U X ) p | <
Si

= Bcon (5.8)

tanto el Método de Jacobi como el de Gauss-Seidel resultan convergentes.


Ante todo debemos observar que una matriz estrictamente diagonal do-
minante es no singular, por lo que la condición de existencia de la solución y llamando sp al factor de ||Y|| y rp al factor de || X ||, comprobamos que
pedida en el Teorema 5.2 se cumple para una matriz de este tipo. 1 10 1 ser A estrictamente diagonal dominante:
1
Veremos ahora que tanto la matriz de Jacobi como la de Gauss-Seidel deri-
vadas de ( 5.8 ) tienen norma menor que 1:
Álgebra lineal numérica 117
116 Análisis numérico. Primer curso

(5.9) I'oí otro lado puede probarse que si A es real, simétrica y defínida posi-
0< r , O < s_ , O < r p + sp < 1 ,
tiva:
y entonces:
0 < co < 2 implica la convergencia del método SOR.
I I Y || < —-— || X ||, de donde deducimos que para cualquier X
1 ,a práctica demuestra que en muchos casos los valores de co próximos a
I 5 aceleran la convergencia.
fHEGSX|| ,
- max { } < max {—^ Para algunas clases de matrices de importancia práctica, el valor óptimo de
X*0 II A || 1< p < n 1- S
ni es conocido: el siguiente teorema es un ejemplo:
Pero de ( 5.9 ) deducimos que r < 1 - s cualquiera sea p, de donde se
Teorema 5.4
deduce la tesis propuesta.
Quedan por estudiar condiciones suficientes para la convergencia del mé-
todo SOR. Si A es una matriz simétrica, definida positiva y tridiagonal en bloques,
Bltonces:

Teorema 5.3 p (E GS ) = p (E,) 2 < 1;


P(EJ > 1 ( 0 - 1 \l factor de relajaciónóptimo vale:

Demostración:
det(EJ = det((I + o> L )"') det((l - co) I - co U) = (1 - co)n, co (óptimo) =
l+Vl-p(EGS)
pues I + coL es una matriz diagonal de determinante 1, y por lo tanto su
inversa tiene determinante 1 y (1 - co) I - CúU es una matriz diagonal con Con este valor de co resulta: p(E m ) = co - 1
todos sus elementos diagonales iguales a (1 - co).
Pero si A,¡, i = 1,2,..., n son los autovalores de E a) , resulta: líjcmplo 5.2
Si consideramos nuevamente el sistema del Ejemplo 5.1, podemos demos-
det(Em) = A,, X 2 ... Xn , de donde: ii que la matriz A es definida positiva y puede particionarse en forma tridia-
jnal a bloques:
p(E a ,) = m a x { | X 1 | } > | 1 - co | c.q.d.
1 <i<n 4 -1 -1 0
De este teorema surge un corolario evidente: -1 4 0 -1
A=
-1 0 4 -1
Si co £ [ 0 , 2 ] el método SOR no converge.
0 -1 -1 4
118 Análisis numérico. Primer curso Álgebra lineal numérica 119

Podríamos probar que en éste caso: lin esta sección vamos a hacer consideraciones sobre la propagación de
1 1 1 oí es inherentes y de redondeo para los dos tipos de métodos, de tal forma
. iur reuniendo todo lo visto podamos obtener cotas para el error total.

y aplicando el Teorema 5.4 resulta ü) (óptimo) - 1.0718.


l'ropagación de errores inherentes en la resolución directa de
La sucesión de valores obtenidos con el método SOR y este co(óptimo) Maternas de ecuaciones lineales
la siguiente:
lin el análisis que haremos a continuación vamos a suponer que los errores
k Y (k)
xl
Y (k)
A2
Y (k)
A3
v
A4
(k)
redondeo son nulos o despreciables.
1 0.26795 0.60770 0.07180 0.45002 ( liando queremos resolver el sistema:
2 0.43078 0.72828 0.23086 0.49264
3 0.49402 0.74798 0.24780 0.49940
4 0.49930 0.74980 0.24981 0.49994
r IH matriz A y el vector B están formados por números que pueden tener
¡ errores inherentes, y la incertidumbre de estos parámetros generará una in-
La velocidad de convergencia es evidentemente mucho mayor que con el ' certidumbre en el cálculo de:
Método de Gauss-Seidel (que corresponde a co = 1).
Para sistemas grandes, la diferencia en la velocidad de convergencia usan- = A' B
do el (O óptimo es mucho más espectacular que en este ejemplo.
Analicemos que ocurre cuando resolvemos un sistema perturbado en la
motriz y en el término independiente, o sea que en vez de resolver

II.6 Errores en la resolución de sistemas A X = B como deseamos, resolvemos:


de ecuaciones lineales t&jb ,
A X = B , o sea (A - 8 A) (X - 8 X) = (B - 8 B) ,

En la sección II.3 vimos métodos directos para la resolución de sistemas H-iuloSB el vector error absoluto inherente de B, 8 A el vector error abso-
lineales, y ahí dejamos aclarado que para tales métodos el problema matemá- iilo inherente de A , y X - 8 X la solución que obtenemos; por lo tanto 8 X
tico coincide con el problema numérico, por lo tanto tales métodos no poseen <•! vector que mide el error propagado a dicha solución.
error de truncamiento.
(Considerando A X = B, deducimos:
En cuanto a los métodos iterativos, en la sección II.5 vimos como estimar • ' « • S Í Í Y ir-
los errores de truncamiento.
A 8X + 8 A X - S A 8 X - 8 B; despreciado SA 6X resulta:

8X = A-' 8 B - A 1 8A X,
120 Análisis numérico. Primer curso
Álgebra lineal numérica 121

y tomando norma a ambos lados (en todo lo que sigue trabajaremos uní EJEMPLO 6.1
norma infinito),
< onsideremos un sistema de ecuaciones lineales con la siguiente matriz:
II8X 8 A I I II X
1.2969 0.8648
Por otro lado de A X = B obtenemos || B || < || A || || X ||, y dividiendo A =
0.2161 0.1441
de forma tal que se mantenga el sentido de la desigualdad, obtenemos:

el siguiente vector de términos independientes: ¡0.8642 , 0.1440]'


5X 8B 5A
I A || || X||
< HA || B La solución exacta vale: [2 , -2]'
y pasando de término ¡| A || llegamos a:
Pero si cambiamos el vector de términos independientes en una cantidad
rl orden de 10"8, osea:
I 8X
• < II A u || A-1 || ( (6.1)
B B = [0.86419999 , 0.14400001]',

Al término || A || || A"11| lo llamaremos número de condición de A y lo la solución resulta aproximadamente:


simbolizaremos de la siguiente forma:
¡0.9911 , -0.4870] 1
K(A) ~ || A || || A-'||
1.a explicación de éste resultado la encontramos en el número de condi-
Diremos que un sistema está bien condicionado, si el número de condi- i'm de A:
ción es "suficientemente pequeño", y que está mal condicionado en caso con-
trario. 0.1441 -0.8648
Como A"1 = 108
Supongamos que 8 A y 8 B son producto únicamente de errores de re- -0.2161 1.2969
presentación, entonces:
sulla:
l a ^ - I . j l < n | a ¡ j | y |b¡- b¡| < u l b j ,
K(A) = ||A|| || A'1 || = 2.1617 1.5130 108 = 3.3 108
siendo u la "unidad de máquina o de redondeo"; de acá se deduce fácilmente:
líntonces observamos que una perturbación en B del orden de 10"8 pro-
|| 8 A || < ji|| A || y || 8 B || < u || B ||, por lo tanto ( 6.1 ) se transforma en: ilure una perturbación relativa en X del orden de:

||8X|| < 2 u K ( A ) | | X | | 8X|| 8B 3.3 108 10'


= 3.8
0.8642
122 Análisis numérico. Primer curso Álgebra lineal numérica 123

Estamos entonces en presencia de una matriz notablemente mal con di Uniendo las dos expresiones obtenemos:
clonada.
C p( ' * < K(A) cualquiera sea i, entonces:

Relación entre el Número de Condición de una matriz y la Cp < K(A)


Condición del Problema lineal asociado
EJEMPLO 6.2
Vamos a considerar solo el caso en que existan perturbaciones en B, es di-
cir 8 A = O, o sea que podemos pensar que nuestro problema numérico tiene (kmsideremos el sistema A X = B
B, con
como dato a B, y como resultado a X, es decir:
—i r- —,
5 7 12
X = A"1 B A= y B=
7 10 17
— —
Si usamos la definición ( 9.1 ) del Capítulo I, tenemos: En este caso resulta:

10 -7
Cp« = y entonces:
-7 5
(A'1 B ) , 9 . c.«
10 12 + 7 17
siendo A"1 = (a 'ij) = 239 \ 12 + 5 17
10 1 2 - 7 17
Suponiendo que todos los x¡ son del mismo orden resulta:
C<2>_= =169 :
BU -7 12 + 5 17
c ( 1 > < HA-' „
p II X H I )e donde deducimos:

(en este caso "<" significa: "menor o aproximadamente igual")


Cp = 239
Pero de B = A X, deducimos || B || < ||A || || X || , y entonces
l'or otro lado, || A || = 17, y || A ' || = 17 , de donde-
II B II
II A | K(A) = 289

I Vjamos como ejercicio realizar las mismas operaciones para el sistema


'!' I líjemplo 6.1.
124 Análisis numérico. Primer curso Álgebra lineal numérica 125

Propagación de errores inherentes en la resolución de sistemas Restando las dos ecuaciones obtenemos:
lineales usando métodos iterativos
X (k) - X - E (X ík -'> - X) - 6 E X (k -'> - 6 C
Vimos que dado el problema matemático
Sumando y restando E X (k) y reordenando, obtenemos:
(6.2)
X (k) - X - E (X(k) - X) - E ( X (k) - X (k -") - 5 E X (k -" - 6 C
la resolución del mismo utilizando un método iterativo estacionario consiste
en encontrar una matriz apropiada E y un vector C, tal que el proceso ite- Si ahora tomamos normas en ambos miembros:
rativo:
X ( k > - X || < || E || || X(k) - X || + || E || || X (k) - X (k -" || + || 6E || || X(k-" || +1| 8C||
X(k+" = E X(k) + C, k = 0,1,2, ... (6.3)
Considerando que estos métodos se usan si || E || < 1, y pasando a la iz-
nos permita obtener una sucesión de vectores que converja a la solución i|iiicrda el primer término de la derecha:
de ( 6.2 ); ( 6.3 ), el valor X (n> , y la condición para detener el proceso iterati-
vo, definen el problema numérico asociado a ( 6.2 ). < ||E||||X ( k ) -X < k -"|| + ||8E||||X ( k - 1 ) || + ¡|SC||,
Considerando la propagación de errores inherentes, la sucesión obtenida A 1 donde:
partir de ( 6.3 ) podemos simbolizarla de la siguiente forma:
X (M)
SC
x(ü) ' x(k) || X (k) - X || <
1-IIE| 1-IIE 1-IIE
Detengamos el proceso al calcular X(k>. Enseguida veremos que el error Si observamos la fórmula ( 5.6 ) de éste capítulo, vemos que el primer tér-
propagado podemos acotarlo en función de la diferencia ( X (k) - X (k "" ) y las ii no de la expresión hallada corresponde al error de truncamiento, por lo
matrices E y C. Podemos por lo tanto tomar a X(k~ ' como valor de refe- «lito, para los errores inherentes propagados de E y C resulta:
rencia sin interesarnos en los errores que posea:

X(k " - X*"1'1', si el proceso se detiene al calcular X(k) (6.4)


1-IIE 1-IIE
Teniendo en cuenta los errores para E y C, podemos escribir para el úll:
mo paso: l'iopagación de errores de redondeo en la resolución directa de
Maternas de ecuaciones lineales
X<k) = X(k) - 8 X (k) = (E - 5 E) X (k - n + (C - 5 C), por otro lado:
Antes de hacer un estudio más profundo sobre los errores de redondeo
X=EX+C 'I 1 1 1 nos permita modificar los cálculos para disminuirlo, veremos una senci-
H,i .u otación para el error de redondeo.
126 Análisis numérico. Primer curso Álgebra lineal numérica 127

Dado el sistema: A X = B, 1 1 "K in.i 6.1

Las matrices L y U calculadas por eliminación gaussiana con pivoteo


llamaremos X al vector que hallamos como solución del mismo incluyendo!
• il, usando aritmética de punto flotante con unidad de redondeo j¿, sa-
los errores de redondeo.
ii .LU cu la ecuación:
Como la cantidad de operaciones necesarias para hacer A X es mutlio
menor que la cantidad necesaria para la Eliminación de Gauss, podemos con. con
siderar despreciable el error de redondeo de esta operación con respecto al del
X y considerar que el término residual: | E || < n 2 p | | A | | M -

D = A X - A X = B-B tiene errores despreciables, entonces: nú mío n la unidad de máquina y p = max

X - X - A - ' D y H X - X H < | A-'|| IID||. lin otras palabras, L y U forman la descomposición exacta de cierta ma-
lí i/ perturbada.
Como || B || < || A || || X ||, resulta:
( lomo la resolución de A X = B, pasa ahora por resolver dos sistemas trian-
X-X D| lliil.ires, debemos conocer la propagación de errores de redondeo que se da en
< K(A) linios casos.
l'll siguiente teorema nos da la información necesaria:
Expresión que acota el error de redondeo en función del término residual.
' IV» rema 6.2
Enunciaremos ahora una serie de resultados referidos a la propagación de
La solución de R X - B, teniendo en cuenta los errores de redondeo y sien-
errores de redondeo en la resolución de sistemas lineales mediante la descom-
iln R una matriz triangular, es la solución exacta de un sistema perturbado
posición LU o la Eliminación de Gauss, ya que estos dos algoritmos en lo que i
respecta a los errores de redondeo son esencialmente iguales.
Se puede probar que el vector X considerado anteriormente, satisface ( R - 8 R ) X = B con || 8R || < 1.01 max
exactamente la expresión:
Apliquemos el Teorema 6.2 a los dos sistemas triangulares que debemos
(A - 8A) X = B , Esolver para encontrar la solución buscada:

siendo 8A una matriz que acotaremos a continuación en función de A y de «i--


LY = B, UX = Y, entonces la solución hallada satisface: >
la unidad de redondeo (i.
(L - 8L) (O - 8U) X = B y como L Ü = A - E resulta: , ,6

(A - E - 8L Ü - L 6U + 8L 8U) X = B
128 Análisis numérico. Primer curso Álgebra lineal numérica 129

Entonces la consideración de los errores de redondeo en todos los pasos iiV (lonsideremos ahora las siguientes relaciones:
cálculo efectuados para solucionar A X = B, nos permite afirmar que la solu
ción hallada satisface la ecuación: U A X = (A - SA) X - A X = - SA X, entonces tomando normas:

(A - 8A) X = B , con SA = E + 8L O + L 8U - SL 8U ( 6.5 ) | | R | I - I I B - A X I I < ||8A || || X|| < 1.01 ( n 3 + 3 n 2 ) p | | A | | u | | X | |

Enunciemos ahora el resultado clave de esta sección: (lomo generalmente ||A|| es un número mucho menor que K(A), vemos
jur si la solución numérica del sistema tiene norma pequeña, es probable que
residuo también tenga norma pequeña.
Teorema 6.3
La solución de A X = B, calculada en punto flotante por eliminación gau-
ssiana con pivoteo parcial, satisface la ecuación: ^ropagación de errores de redondeo en la resolución de
ústemas de ecuaciones lineales utilizando métodos iterativos
( A - 8 A ) X = B,
Ya vimos en II.6, que si detenemos el proceso iterativo en
donde 8A está definida por ( 6.5 ), y si n2 (J. < 1 además resulta:
(6.8)
||8A|| < 1.01 (n 3 + 3n 2 ) p || A || (J. (6.6)
podemos considerar nulos los errores de X (k) , y suponer que damos un solo
Estamos en condiciones de estimar una cota para la norma del SX origi paso partiendo de: >'
nado en los errores de redondeo:
_ - . ¿ í ítí 1V' ''-"i "•'•-" ::>. Ü •' "
X(k)= "
(A - 8A) (X - 8X) = B, de donde:
Por lo tanto estudiaremos como se propagan los errores de redondeo sólo
8X = - A"1 SA (X - 8X), y tomando normas: rn este último paso.
II 8A Consideremos entonces: •'ó-sí tnofií» uiínfes» ¿. •.• ..•/; .-'.•
SX||(redondeo)<K(A)||X-8X
II A || •••'.íflt'-írra) oí»l fu;;
donde 8A está definida por ( 6.6 ), entonces:
Haciendo análisis retrospectivo de errores para el primer factor de la dere-
),redondeo, ^ K(A) 1.01 (n 3 + 3n2) p u (6.7) cha con n [i < 0.01 resulta:
| X - 8X
n
. 8x,(k+1> = ( I e¡j x/k) 1.01 (n + 2 - j) u ep (1 + 8,) + Xj(k+I) 8, ( 6.9 )
-
130 Análisis numérico. Primer curso Álgebra lineal numérica 131

Como los métodos iterativos se usan generalmente para matrices ralas, ilr Si ahora sumamos y restamos EX ( k h i ) obtenemos:
finamos:
X (k +1) .x = £ (X (k+1) - X) + E (X íkl - X (k+1) ) - 8X (k+1)
p¡ = cantidad de elementos no nulos de la fila i , p = max { p¡}
y finalmente q = max {| e¡ ¡ |} lomando norma a ambos lados y recordando que || E j| < 1, obtenemos:
1 < i,j < n '
E II II SX (k+ " II
Si ahora tomamos normas en ( 6.9 ), despreciando los términos de orden | X<k+" - X || < li - X(k> |
superior resulta: 1-1ÍE! 1-IIE
l;,l primer término de la derecha corresponde al error de truncamiento,
1.01
I 'i ii lo tanto el valor absoluto del error de redondeo propagado tiene un efec-
i" medido por:
Y suponiendo que estamos cerca del límite, o sea que las diferencias enin
X(k) y x (k+I) son despreciables, tenemos: u v(k+l) y II <
II A ' A 1 1 (redondeo) -

8X(k+1) || p2 + 3p p2 + 3p
< ( q i.oi L + 1) u (6.10) (1.01 - (6.12)
I X (k) 2

Si consideramos que generalmente q < 1, el error de redondeo propagado


es del orden de:
p2 + 3p Error final total en la resolución directa de sistemas lineales
(6.11)
Si unimos los resultados obtenidos en II.6 ( ( 6.1 ) y ( 6.7 ) ), podemos
lo que hace que generalmente para matrices ralas el error de redondeo sea rsi ribir para el error total en la resolución directa del sistema:
despreciable.
Pasemos a estimar ahora la diferencia X (k+1) - X :
Por un lado tenemos que: |ue la solución X obtenida es tal que:

X< k+1 > = E X (k) + C - 8X ( k + 1 ) , y por otro: SX || || SB || || 8A || ' q v a ¿¿^


—- < K(A) ( —— + —- + l.di Tn3V4Wn
.. .. ..B|| || A ||
X = E X + C de donde restando miembro a miembro:
Veremos más adelante cómo disminuir el término que 'corresponde a la
X (k+1) - X = E (X(k) - X) -8X (k+1) propagación de errores de redondeo.

' " • ' ••""" u,.


132 Análisis numérico. Primer curso Álgebra lineal numérica 133

Error final total en la resolución de sistemas lineales utilizando Hrfinamiento Iterativo en la resolución directa de sistemas
métodos iterativos lineales

Unamos los resultados obtenidos en II.5 ( 5.6 ) y en II.6 (( 6.4 ) y Si por alguna razón no estamos conformes con la exactitud de la solución
(6.12)) - i.iluilada por eliminación gaussiana, la técnica de mejoramiento iterativo
i|uc describiremos a continuación puede darnos una respuesta muy exacta en
Sea: V ; = AX = B, y '"- •••<' - < 1 1 mayoría de los casos, con una pequeña cantidad de trabajo adicional.
Supongamos tener que resolver el sistema:
X (k+1) = E X(k) + C el método iterativo correspondiente.
AX = B, (6.13)
Sea ET una cota para el error de truncamiento, E, una cota para el inhe- /!
rente propagado y ER una cota para el de redondeo propagado, entonces: y i|ue por eliminación gaussiana encontramos la solución aproximada X 1 ''.
\s a construir una sucesión de vectores X ( 2 > , X ( 3 ) ,... trabajando del si-
ET< - X (k) guiente modo:
1-IIE
Calculamos primero el vector residual:
II E ||
| 5E || || X (k) | 6C
D (m) = B - A X ( m > (6.14)

liste valor D (m) , será el término independiente del próximo sistema a re-
nolvcr:
Uti " 1- IIEII 2

(p es el máximo de elementos no nulos por fila de E) A 8 (m) = D (m) (6.15)

Utilizando estas expresiones en la ya conocida: I'ara resolver (6.15) usaremos las mismas L y U que usamos para calcu-
i X'".
* •
*.. ||II A
Y< k + 1 > - A.
Y ||II ;i
< CFT T
- rr,j
F -r
+Fr, R ,
Una vez que tenemos la corrección 5 (m> , la usamos para calcular la nueva
aproximación:
tenemos la cota para el error absoluto total.
Es deseable E, y E R no superen a ET. X(m+" - X (m) + 8(m> 6.16)

Najo ciertas condiciones este proceso resulta convergente y estos tres pasos
i opilen hasta que X tm) alcance la precisión deseada.
Un análisis completo de este proceso es algo difícil, y los aspectos impor-
tdilles tienden a perderse en pormenores.
134 Análisis numérico. Primer curso Álgebra lineal numérica 135

En cambio investigaremos una versión idealizada: supondremos qiu- !.>•. i >e mostración:
errores de redondeo solamente ocurren en el cálculo de las correcciones de Im
I'ara probar a) usaremos el contrarrecíproco, o sea, supondremos que
residuos. O sea, supondremos que las ecuaciones (6.14) y (6.16) seresiu-l
I i l ; es singular, entonces existe un X*0, tal que:
ven exactamente, y que cometemos errores de redondeo sólo al resolver (6.1M •

Este es un supuesto razonable si usamos aritmética de doble precisión pa i .1


(I + F) X = O, de acá deducimos:
resolver (6.14) y (6.16).
De todas formas, aunque se hagan todas las operaciones en simple pre- II F X|| = || X||, y entonces
cisión, el refinamiento iterativo generalmente mejora los resultados oble
nidos en el primer paso. F II = max I | F X | > 1, en contra de la hipótesis.
De acuerdo a lo visto anteriormente, resolver ( 6.15 ) equivale a resolvn IIXH
exactamente:
Para probar b), hagamos G = (I + F)' 1 . Entonces G = I - F G, y toman-
(A + 5A) 8(m) = D (m) (6.17) > ! < > normas:

Vamos a definir las matrices F (m> , que nos serán útiles más adelante: II G || < || 11| + ||F|| || G||, y como || 11| = 1, resulta:

p(m> _ ^-i (g^ v entonces ( 6.17 ) se transforma en: 1


II G || S - • c.q.d.
l-.IIFJI
A ( I + F ( m ) ) 8(m) = D (m> (6.18)

Veremos que éstas matrices F (m) , determinan por completo el compor- Pasemos ahora a demostrar el teorema fundamental de esta sección:
tamiento de esta versión idealizada del refinamiento iterativo.
Teorema 6.4
Probemos primero un lema que nos será de utilidad más adelante:
Sea la sucesión X (m) definida por el refinamiento iterativo con las ideali-
Lema 6.1 ce iones propuestas, y sea X la solución exacta de ( 6.13 ), es decir:

Supongamos que F es una matriz tal que en alguna norma asociada a un.i B
norma de vectores resulta:
Siendo como antes: F (m > = A'1 5 A, supongamos que en alguna norma aso-
|| F || < 1. Entonces vale: i u da a una norma vectorial:

a) I + F es no singular

1
b) || (I + F)- 1 || S
1-1IF
136 Análisis numérico. Primer curso
Álgebra lineal numérica 137

1
II F (m) I! < s < — , para todo m, entonces: i niño s < — , resulta t < 1, y entonces ( 6.19 ) implica el enunciado del
*")

Irorema. c.q.d.
X< m > -» X cuando m tiende a infinito, es decir que:
( lomo las matrices F (m) son casi imposibles de calcular, un resultado más
.u lico es el siguiente:
|| X (m) - X || -> O, cuando m->

nrolarlo 6.4
Demostración: 1
Si 1.01 (n3 + 3 n2) p u. K(A) < — , el refinamiento iterativo conduce a la
De (6.14) y (6.18) obtenemos: iI|IK ion exacta de A X = B.

I H-inostración:
Como A es no singular: Como F (m) = A"1 8 A, tomando normas resulta:

(I + F (m) ) 5!m) = X - X (m) , y reemplazando 8 lm> por X (m+1i - X (m) : || F (m) || < || A'1 || || 8A || < || A'1 || 1.01 (n 3 + 3 n 2 ) p \i || A |

(I + F (m) ) X (m+1> = F ( m ) X (m) + X 1 )e donde obtenemos, utilizando la hipótesis:

Si restamos miembro a miembro (I + F < m ) ) X, obtenemos: 1


||F ( m ) || < K(A) 1.01 (n 3 + 3n 2 ) p f
2
(I + F ( m ) ) (X (m+1) - X) = F (m) (X (m) - X) I,a tesis sigue del Teorema 6.4. c.q.d.

Pero de nuestras hipótesis y del Lema 6.1, deducimos que (I + F (m) ) es Un defecto de nuestro análisis idealizado es que nos permite concluir que
lindemos aproximarnos a la solución verdadera tanto como queramos, cosa
no singular, entonces:
i|iic no es cierta. Esta contradicción surge de las idealizaciones que hicimos, y
X< m+1 > - X = (I + F ( m ) V' F (m> (X (m) - X) ni verdad nunca podremos corregir X (m) más allá del nivel unitario de re-
di mdeo.
Tomando normas y aplicando la parte b) del Lema 6.1, obtenemos:

X( m)
Intimaciones prácticas de K(A)
< X (m) - X II <
(m)
Kn lo que sigue no indicaremos específicamente los vectores obtenidos con
Definamos t = s (1 - s)'1, entonces razonando inductivamente: u n > r de redondeo, pues consideramos que en este momento las ideas están
liaras y esto ya es innecesario.
(6.19) •
138 Análisis numérico. Primer curso Álgebra lineal numérica 139

Al aplicar refinamiento iterativo, vimos que la clave para disminuir los I,a mayoría de los términos a¡jXj (1) de (6.21) se cancelan recíprocamente
errores de redondeo de la primera solución X (l) , es el cómputo en doble pre- \í algunos dígitos principales de b¡. Esto deja un valor para d¡(1) que es
cisión del residuo D 0) = B - A X(1). Vimos que una vez calculado D (1) , debi- ni.is o menos del tamaño de los dígitos menos significativos del mayor (en
mos resolver A S (1> = D (1) para obtener el valor X (2) = X (1) + 8(1). Si pudú- v.ilor absoluto) de los términos &• x^'1', es decir del orden de:
ramos calcular 5 (1) exactamente, X(2) seriasolucionexactadelsistemaorigin.il,
pues: max

A X(2) = A (X(1) + 8 (1) ) = A X (1) + A 8 ( l i = A X (1) + D (1) = B. I )e aquí tomando normas obtenemos:

Pero generalmente 8 (l) tiene solo unos cuantos dígitos exactos, por lo que = b"
debemos repetir el proceso hasta obtener la solución con un error del orden
de u. ( k>mo ( 6.20 ) es aproximadamente una igualdad, obtenemos:
Repetimos que para obtener resultados óptimos, es necesario que los re-
siduos D (m) , y los vectores X (m> , se calculen con mayor precisión que la usada || E (1) || = || A'1 || || A || || X<" || b-1 » K(A) || X<" || b'1 ( 6.22
en el resto de los cálculos.
I )e aquí que si K(A) = bp, resulta:
Observemos ahora que el error E ( 1 ) de X o \tiene una simple relación con

E ( I > = X (1) - X = X (1) - A ' B = A-' (A X<" - B ) - -A'1 D Si p > t el refinamiento iterativo no disminuye el valor del error y no tiene
sentido aplicarlo. Si p < t - 1 y definimos q = t - p, tenemos:
Entonces:
cd)
< || A" ( 6.20 )
HX<"||
Supongamos ahora que trabajamos en un sistema [G(b , t , e) , corte).
O sea que X (1) tendrá más o menos correctos sus primeros q dígitos; tam-
Entonces el error absoluto cometido al representar un número "y" en este sis-
liicn las futuras soluciones del sistema, 8(m), tendrán más o menos correctos
tema está acotado por:
ÑUS primeros q dígitos, por lo que aproximadamente el refinamiento itera-
tivo va ganando en los primeros k pasos, q dígitos por paso, hasta que
b1"' 1 7 I > Y podemos decir que es del orden de k »| > t aproximadamente.
Ahora veamos que como 8 (l) concuerda con - E (1) en aproximadamente
i| dígitos, podemos escribir:
Analicemos ahora el cálculo de D(1):
¡8 (1)
( 6.21 )
140 Análisis numérico. Primer curso Álgebra lineal numérica 141

Utilizando ésta aproximación y ( 6.22 ) obtenemos: ;i) Hesolver el siguiente sistema:


3.241 x + 160 y - 163.2
10200x + 1540 y = 11740
K(A) = b', ( 6.23 )
I) Utilizar el método de eliminación de Gauss sin pivoteo en [ G (10, 4 , 2 ) , rd].
b) ídem que en a), pero con pivoteo parcial.
y podemos estimar la condición de A a partir de la primera iteración. ' i ídem que en a), sin pivoteo y con refinamiento de la solución.
Al mismo tiempo tenemos una estimación de la cantidad de iteración'•.
necesarias para obtener la máxima precisión posible: 4) Considerar la matriz A definida por:

"X '• -' A = (a¡¡), donde a¡¡= -—: 1 < U <4


.•dojxü
Considerar el sistema A X = B , donde:
B = ( 0.58333 , 0.21667 , 0.11666 , 0.07381 )'.
Si p > t, lo cual estaría indicado por || 8 (1) || > || X (1) ||, para resolver el sis
tema y aplicar el refinamiento iterativo no queda otra posibilidad que au- Resolver el sistema utilizando eliminación de Gauss con pivoteo parcial. Operar
con cinco decimales.
mentar la precisión hasta que t > p.
6) Considerar la matriz A del problema 4) y
B = (2.66666 , 1.50000 , 1.06666 , 0.83334)'.
Ejercicios
Resolver A X = B utilizando la descomposición L U de A. Operar con cinco
decimales.
1) Resolver el sistema lineal A X = B utilizando eliminación de Gauss sin pivoteo:
6) Resolver el siguiente sistema utilizando el método de Gauss Seidel, iterando
hasta que la norma infinito de la diferencia entre dos vectores sucesivos sea
1 2 3 4 2 menor que 0.02. Indicar si ésto último significa que la solución obtenida está
1 4 9 16 10 en un "intervalo" de longitud 0.02 alrededor de la exacta .
A= B ——
1 8 27 64 44 Operar con tres decimales.
1 16 81 256 190
10 x + 2y + 6 z = 28
2) Programar el método de eliminación de Gauss sin pivoteo para la resolución del
sistema lineal A X = B. x + 1 0 y + 4 z =

2 x 7 y - 10 z = -17
142 Análisis numérico. Primer curso Álgebra lineal numérica 143

7) Resolver el siguiente sistema de cuatro ecuaciones utilizando el método do a) Trabajando en [G( 10 , 3 , 2 ) , rd] hallar la solución utilizando primero ia
Gauss Seidel, Operar con tres decimales. regla de Cramer y luego eliminación de Gauss.
a + + d = 2 b) Estimar el error de redondeo en los resultados anteriores utilizando la gráfi-
a + 4b - d = 4 ca de proceso. Considerar nulos los errores inherentes.
a c _ o
c) Indicar cual de los métodos es más estable y porqué.
c + d = 2
Datos: au = 1.58 , a 12 = -2.31 , ^ = 3.35
8) Considerar el sistema "poco denso" de ecuaciones: a 21 = 0.524 a2i2 = 3.42 b2 = -1.37
2 a - b = 1
- a + 2 b - c = 1
b + 2 c d = 1
- c + 2 d = 1 PREGUNTAS TEÓRICAS

Mostrar que el sistema permanece "poco denso" cuando se lleva a la form;i 1) Indicar en qué casos puede resultar más conveniente utilizar métodos iterativos
triangular utilizando el método de eliminación de Gauss. en lugar de métodos directos para resolver sistemas de ecuaciones lineales.
Hallar una solución por Gauss y otra por Gauss-Seidel. Operar con tres deci-
males. 2) Explicar en qué consisten las estrategias de pivoteo parcial y total en la elimi-
nación de Gauss y para qué sirven.
9) Resolver el siguiente sistema:
2.15 x - 0.924 y 1.29 z = 1.22 :t) Se ha de realizar un cálculo mediante un método iterativo hasta lograr una pre-
-4.12 x + 2.29 y + 0.294 z = -3.56 cisión de "m" dígitos. Suponiendo que el algoritmo es estable indicar cual es el
1.01 x +. 0.872 y 3.25 z = -0.972 orden de precisión que hay que tomar en las operaciones para lograr que los
Utilizar eliminación de Gauss con pivoteo parcial. Hallar la descomposición L U errores de redondeo no influyan en los resultados.
de la matriz del sistema y utilizarla para retinar la solución. Hallar una esti-
mación del error de redondeo trabajando en [ G( 10,3 , 2 ) , corte ]. <l) Describir la influencia de los errores por truncamiento, inherentes propagados y
por redondeo en las operaciones, en el caso de resolución de sistemas de ecua-
10)Sea el siguiente sistema de ecuaciones: ciones lineales por métodos directos y por métodos iterativos.

81,1 * + a1j2 y = b,

»2,2 y = b2
CAPÍTULO III

Ecuaciones no lineales

I I I . I Introducción

I,as raíces de una ecuación no lineal F(x) = 0 no pueden ser expresadas


p urialmente en forma cerrada; incluso si esto fuera posible, la expresión re-
ii 111.1 a menudo tan complicada que no es práctico utilizarla.
Entonces para resolver ecuaciones no lineales, estamos prácticamente
il'Iirados a usar métodos aproximados. Estos métodos están usualmente ba-
iilos en las ideas de aproximaciones sucesivas y/o linealización. Son itera -
Ivns, es decir, parten de una o más aproximaciones iniciales de la raíz y pro-
IIH cu una secuencia x 0 , x, , x2 ,... que presumiblemente converge hacia la
u/ deseada. Para garantizar la convergencia con ciertos métodos es suficiente
iiiocer un intervalo [a , b] que contenga a la raíz (métodos de arranque).
Oíros métodos requieren una aproximación inicial que sea sufíciente-
iiule cercana a la raíz deseada; en compensación estos métodos convergen
n i ápidamente (métodos de refinamiento). En consecuencia a menudo es
iii\aliente comenzar con un método grosero y luego cambiar a uno más
||do,
Por simplicidad la mayor parte de nuestra discusión se limitará a tratar el
>l>laiia de determinar una raíz real simple, oc, de la ecuación F (x) = O ;
!« u que supondremos
Ecuaciones no lineales 147
146 Análisis numérico. Primer curso

'•i i pongamos que F(x) es continua en el intervalo I0 = [a () , b0] y que:


III.2 Aproximaciones iniciales. Métodos de arranque
F(a0) F(b 0 ) < 0.

Introducción Deducimos entonces que existe una raíz de F(x) = O en el intervalo I0 =


A menudo podemos obtener aproximaciones iniciales a las raíces de uní lvboi-
ecuación F(x) = O graneando la función F(x). Otra posibilidad consiste ni I )eterminaremos una secuencia de intervalos [a, , b,] , [a 2 , b2] ,... , Ik =
construir una tabla con algunos valores de la función F(x). . i, , 1\],... cada uno de ellos contenido en el anterior y todos conteniendo la
i . n / buscada.
EJEMPLO 2.1 Supongamos haber obtenido el intervalo I k _, con las propiedades del I 0 ,
• ik-cir:
Obtener una estimación grosera de la raíz positiva de la ecuación:
l ; ( a k , ) F(b k _,) < O, (o sea que a e I k _,); llamemos mk a su punto medio,
Ir donde:
— - sen(x) = O
4
ak i + b k-i
m, =
Para hacerlo podemos construir la siguiente tabla:

l'odemos suponer que F(m k ) ^ O, (ya que en caso contrario detenemos el


X (x/2)2 sen( x ) s¡gno( f( x ) ) ,>u)ceso por ser mk la raíz buscada) entonces hacemos:

0.64 0.9996 <0


1.6
0.81 0.974 <0 [m k , bk.,] si F(m k ) F(ak.,) > O
18
1.00 0.909 >0
2.0
[ak_, , m k ] si F(m k ) F(ak.,) < O

De esta tabla concluimos que la raíz Ot, pertenece al intervalo (1.8 , 2.0). l'or construcción surge inmediatamente que para todo k, F(a k ) F(b k ) < O,
Notemos que en general, si una función F(x) es continua y F(a) F(b) < f I M U lo que todos los intervalos contienen la raíz; después de n pasos la raíz
la ecuación F(x) - O tiene al menos un cero real en el intervalo [avb]. • .i.nn contenida en el intervalo [a n , bj de longitud:

b n-! - Vi Vao
Método de la bisección ~n n 2 "" 2"

El método de la tabulación recién expuesto puede ser usado sistemática 1 Si tomamos m n+l como estimación de la raíz, tenemos que:
mente de la siguiente forma:
bn - a n
« = m n+1 ± 8n+1 , siendo 8n+, = , o sea:
148 Análisis numérico. Primer curso Ecuaciones no lineales 149

No obstante estos métodos más refinados requieren en general, buenas


, de donde resulta evidente que:
in-H Aproximaciones iniciales para garantizar la convergencia. Estas aproximacio-
8n+1 -> O si n -> °° nes iniciales pueden a menudo ser determinadas convenientemente por el
método de la bisección.
Entonces si queremos hallar a con un error menor que e, bastará con
tomar un n tal que 6n+, < £ y aproximar ex por m n+1 ; como a pertenece Algoritmo para la determinación de una raíz utilizando el método
a I n , distará del punto medio de I n , m n+] , a lo sumo una distancia 8 n+] ,resul tic la bisección
tando:
comienzo
entrada : f, a, b, e ;
a = m n+1 ± e , como pretendíamos.
mientras ( b - a )/2 > e hacer
comienzo
EJEMPLO 2.2 m = ( a + b )/2;
si f( m ) = O entonces comienzo salida : m ; parar finsi
El método de la bisección aplicado al caso del Ejemplo 2.1, con I0 = [ 1.5,21
si f( a ) f( m ) > O entonces a = m sino b = m
produce la siguiente secuencia de intervalos: finmientras
salida : ( a + b )/2
fin
k ak mk+1 s¡9( f( mk+1 )
"k

ü 1.5 2 1.75 < 0


1 1.75 2 1.875 < 0
2 1.875 2 1.9375 > 0 Método de Regula-Falsi
3 1.875 1.9375 1.90625 < 0
4 1.90625 1.9375 1.921875
Este método como el anterior, construye una sucesión de intervalos enca-
|,idos que contienen a la raíz, pero en este caso hacemos uso de la forma de la
limdón para llegar más rápidamente al valor deseado. Veremos que para este
La convergencia del método de la bisección es lenta. En cada paso se gana Mu-todo la longitud de los intervalos no tiende a cero; por otro lado esto no
una cifra binaria en exactitud. Dado que 10"' = 2 3 3, ganamos en promedio un r,H inconveniente para hallar la raíz con la precisión requerida.
dígito decimal cada 3.3 pasos. Notemos que la velocidad de convergencia <lr| Nuevamente imponemos para una F(x) continua sólo la condición de
método de la bisección es completamente independiente de la función i I-.u lula:
Esto es así porque solo hemos hecho uso del signo de los valores de la fun> :> m
en los puntos calculados. F(a) F(b) < O , y tomamos a0 - a , b0 = b;
Haciendo un uso más efectivo de estos valores (y posiblemente también di
los valores de la derivada), podemos obtener una convergencia significativi Ahora si tenemos ak y bk , el punto mk+1 será la intersección del eje x
mente más rápida. 11 u i l.i secante que une los puntos (ak , F(a k )) y (bk , F(b k )), o sea:
150 Análisis numérico. Primer curso l^bSík.Ffc- Ecuaciones no lineales 151

F(ak) (bk - ak) Fh-V ^ i por lo tanto tiene límite. Sea


•——1>- Jtc-|
=a - FV3 H,
F(bk) - F(ak)
lim mk = a
k->°°
y con el mismo criterio del método de las bisecciones para elegir los extremos
del nuevo intervalo construimos [ak+1 , bk+1]. Si tomamos límite a ambos lados de ( 2.1 ) resulta:
Suponiendo que dentro del intervalo [a0 , b0] existe una sola raíz simpK
de F(x) ( F'(cc) * O ), y no se anula la derivada segunda de F(x), probaremos F(a) (a - a)
que m k , k = 1, 2, ... es una sucesión convergente y su límite es la raíz busc.,1 a =a -
F(a) - F(a)
da: a.
Sin pérdida de generalidad asumimos que F"(x) > O en [a0 , b n ] (en olio Si suponemos a ^ a, debe ser F(a) = 0; pero a era la única raíz dentro
caso basta considerar - F(x) = O ); entonces la curva será cóncava en el inlcr ik'l intervalo de trabajo, por lo tanto a = ot; esta contradicción surge de
valo considerado y estará por debajo de todas las cuerdas que tracemos. suponer distintas a y a , por lo tanto:

Son posibles ahora dos casos: ct = a c.q.d.

1 ) F(a) > O y F(b) < O Daremos una fórmula que permita estimar el error absoluto de trunca-
o miento de un valor aproximado mk en función de m k _,. Supondremos que
2 ) F(a) < O y F(b) > O 1.1 derivada F'(x) es continua y no se anula en el intervalo [a , b]; entonces
existen dos números positivos c y C tales que:
El razonamiento es similar para los dos casos por lo que sólo considerare
mos el primero. O < c < | F'(x) | < C < oo , para x e [a , b]
En este caso el extremo izquierdo: a, permanecerá fijo, y los extremos
derechos de los intervalos serán los mk que obtendremos de la relación re- Escribamos ahora:
cursva:
mk-i
mk = m k _, - F( mkk__,
m0
F(m k ) (m k - a)
= mk - k = 0,1,2, (2.1) pasando de término obtenemos:
~F(mk) - F(a)

F(mk,,) - F(a),
Es fácil ver que el segundo término de la derecha es siempre positivo, poi (mk - mk.1) - = - F( m k _, ), y como F(a) = O,
lo que al ser restado hace que m k4 , sea menor que mk , o sea los mk for-' m,k-i - a /
man una sucesión monótona decreciente y acotada inferiormente:
(F(r(i k . 1 )-F(a))(m k -m k . 1 )
F(a)-F(m k .,) =
a < a < ... < mk < m k _, < ... < m, < m0 , m k-i -a
152 Análisis numérico. Primer curso Ecuaciones no lineales 153

Utilizando ahora el teorema del valor medio del cálculo diferencial oble Algoritmo para la obtención de una raíz por el Método
nemos: de kcgula-Falsi
comienzo
(a - m^,) F'(ock.,) = (mk - mk.,) F'(m k .,), entrada : a, b, tol, nmax;
(* a y b son los extremos del intervalo, tol es la precisión requerida, y nmax
donde ock_, pertenece al (ce, m k ] ) y m k _, al (a , m k l ) . De aquí restando .1 l.i cantidad máxima de iteraciones permitidas *)
ambos lados de la ecuación:
error = 1;
F'(ock ,) (m k - mk.,) , y luego tomando módulos resulta: m = a - 1;
mientras n < nmax y error > tol hacer
.F(m k .,) - F'(« k ,) | _ ( comienzo
a - mk | = aux = a - f (a ) ( b - a )/( f( b ) - f( a ) );
I F'(ak.,)
error = abs( aux - m );
Como F'(x) tiene signo constante en el intervalo [ a , b ] tenemos senci- m = aux;
si f( m ) = O entonces retornar( m ) finsi;
llamente:
si f( m ) f( a ) > O entonces a = m sino b = m finsi
n=n+1
| F'(m k _,) - F'(oc k _,) | < C - c, deducimos por lo tanto:
finmientras
C-c si n < nmax entonces retornar( m )
| a - mk | < - | mk - mk., | sino escribir( "no hubo convergencia" ) finsi
c
fin
Si [a , bj es lo suficientemente estrecho como para que:

C < 2c obtenemos:
I1I.3 Error de truncamiento en la resolución de ecuaciones
oc - mk | < | mk - mk.1 no lineales
En este caso cuando ocurra que:
Es común al querer resolver el problema F(x) = O, pensar equivocada-
| mk - mk , | < e podremos asegurar que: mente que xn es una buena aproximación de la raíz, si F(x n ) es un valor
pequeño. Veremos al enunciar y demostrar el sencillo teorema que sigue, que
I mk - a | < e oto no es suficiente.
Llamaremos al enunciado siguiente: Teorema Fundamental de Acotación
del Error de Truncamiento:
154 Análisis numérico. Primer curso
Ecuaciones no lineales 155

Teorema 3.1 Utilizaremos el método de regula falsi, para lo cual determinaremos un


Sea a la raíz exacta de F(x) = O, y sean I = [a , b] y M > O tal que: i Hiérvalo en el cual esté la raíz, y tal que dentro de él el módulo de la deriva-
il.i primera esté acotado inferior y superiormente por dos números positivos
a e I , F'(x) es continua en I , y i y C, de forma que podamos aplicar la fórmula hallada en III.2 para acotar
el error de truncamiento.
| F'(x) | > M > O para todo x en I ; Fs fácil ver que la raíz está entre O y 1, pues
Entonces si xn pertenece a I , resulta: «x- Y,^- F(V> 1
F(0) = 1 >0, y F(l) = 2 < 0.
,
|x-a| <
e
M Calculemos las derivadas primera y segunda para estudiarlas en el [0,1 ];
>

l : '(x) = - (e * + 2); F"(x) = e x, por lo tanto una es negativa y la otra positiva


Demostración: ni todo el [ 0 , 1 ] .
Aplicando el teorema del valor medio del cálculo diferencial tenemos:
Para aplicar también el teorema fundamental de acotación del error de
11 lincamiento, acotemos inferiormente la derivada primera en el [ 0 , 1 ] :
F(xJ - F(oc) = F'(s) (xn - a) , s e l ;

Pero como F(a) = 0 y | F' (s)| > M , resulta: | F'(x) | = e x + 2 > 2 + — > 2.36; tomamos entonces:
e
| F (x n ) | > M | xn - a | , de donde: M = 2.36

c.q.d. Comencemos a avanzar en el cálculo y apliquemos cada vez ambos crite-


x -a I<
M rios de acotación del error para comparar entre ellos:

Este resultado provee un criterio para detener cualquier método iterativo m0 = 1 , entonces:
de resolución de ecuaciones no lineales, ya que depende sólo de la F(x) y del F(m0) (m0 - 0)
valor xn. m = 0.380
' u F(m0) - F(0)

EJEMPLO 3.1 Apliquemos el teorema fundamental:


Determinar con un error de truncamiento menor que e = 0.5 10 2, l,i |F(m,)l |e-mi-2m,|
única raíz de: < 0.033
M 2.36
156 Análisis numérico. Primer curso Ecuaciones no lineales 157

Como: Por lo tanto la respuesta que debemos dar es:

2.36 < | F ' ( x ) | < 3 en el [O , 1], resulta C < 2 c, Ct= 0.352 ± 0.5 10 ~ 2 .

y podemos utilizar el criterio visto en III.2:


l'recisión Máxima
m -a | < - m0 | = 0.62
Desde el punto de vista de los errores propagados, tanto inherentes como
Evidentemente, debemos seguir calculando. tli- redondeo, el Teorema 3.1 también nos da una herramienta para estu-
Ji.irlos.
F(m,)(m,-0)
m2 = m, - = 0.353 Supongamos que al pretender calcular F(x) se producen errores que nos
F(m,)-F(0) 1 1. icen obtener en verdad:

Ahora: F(x) = F(x)-S(x);


I F(m 2 ) "m2 - 2m2
< 1.46 10 3 < e , El caso más favorable en nuestro cálculo se dará si conseguimos que
M 2.36~ I (x) = 0 , pero entonces:
por lo tanto este criterio nos permite concluir que 0.353 aproxima a la raí/ |E(x)-S(x)|
buscada tanto como deseábamos; veamos ahora: |x - ,
M M M | F'(oc) |
| m2 - m, | < 2.7 10~2 ; Hiendo 8 una cota de los errores cometidos al evaluar F(x).
De acuerdo a este criterio debemos seguir avanzando: La expresión anterior es independiente del algoritmo utilizado para apro-
M mar la raíz y definimos entonces PRECISIÓN MÁXIMA obtenible al cociente
F(m 2 ) (m2 - 0)
m3 = m 2 - = 0.352 8'
F(m ? ) - F(0)
I F'(cc) i
Ahora | m3 - m2 | < 0.1 10 2 < e , y en este paso los dos criterios nos
permiten detener el cálculo. ()bservemos que si la derivada de F es muy chica en la raíz buscada el pro-
blcma numérico resultará inestable y también cualquier algoritmo que utili-
Cualquiera de las dos aproximaciones obtenidas cumple con lo pedido y.i
irmos para aproximar dicha raíz.
que la solución con 5 decimales vale:

oc= 0.35173...
158 Análisis numérico. Primer curso Ecuaciones no Lineales 159

III.4 Métodos de refinamiento I» que implica, suponiendo que f(x) sea continua:

o. = f(a).
Por adquirir ciertos resultados una forma más sencilla y/o más fácil ih
conceptualizar, nos propondremos en este y otros apartados la resolución ilr
la ecuación: Hl siguiente teorema nos dará condiciones suficientes para que ( 4.3 )
converjai
x = f(x) (4.1)
Teorema 4.1
Veremos más adelante que siempre podemos construir un problema de I
tipo: Si fe C [ a , b ] y f ( x ) e [ a , b ] para toda x e [a , b], entonces f tiene
un punto fijo en [a , b].
F(x) = O, (4.2) Si además existen f ' en [a , b] y una constante m < 1 tal que:
tal que ( 4.2 ) y ( 4.1 ) sean equivalentes, o por lo menos uno de ellos tenga I | f'(x) | < m < 1, para toda x e [a , b],
las soluciones del otro que nos interesan encontrar.
entonces el punto fijo en [a , b] es único, y puede hallarse como límite de la
llicesión:
Método de las aproximaciones sucesivas o del punto fijo
x n+i = f( xn )> partiendo de un x0 cualquiera en [a , b].
Nos planteamos resolver la ecuación (4.1 ), esto es hallar un valor a , i.il
que la función f(x) lo transforme en sí mismo, esto es, a es un punto fijo ilc
I >cmostración:
f(x):
Si f(a) = a o f(b) = b ya tenemos el punto fijo; supongamos lo contrario:
a = f(a) entonces f(a) > a y f(b) < b. Definamos h(x) = f(x) - x ; entonces h es con-
tinua en [a , b] y h(a) = f(a) - a > O y h(b) = f(b) - b < O, por lo que un
El método de las aproximaciones sucesivas propone construir la sucesi lonocido teorema del análisis nos asegura que existe a que anula a h(x), y
entonces:
V,-f(x n ) (4.3)
a = f(a).
Si esta sucesión es convergente, el límite es necesariamente un punto l u -
de f(x), pues: Supongamos ahora que existen dos puntos fijos en [a,b]:p y q con
Hl teorema del valor medio nos asegura que existe c; e [p , q] tal que:
lim x n+] = lim f(xn) ,
n->°° n-><*>
f(p)-f(q)
= f'(c;) y entonces:
p-q
160 Análisis numérico. Primer curso Ecuaciones no lineales 161

I p - q I = I f(p) - f(q) I = I f'(5) | | p - q | < m | p - q | < | p - q | , (lonsideremos las siguientes igualdades:

lo cual es una contradicción que proviene de la hipótesis p ^ q. Por lo tanio *„+,-« = «*„) - f(«) = f'(U ( x n - a )
bajo las hipótesis del teorema el punto fijo es único.
Sumando y restando al último miembro f'( £n ) x n+) y reordenando:
Sea ahora la sucesión xn+1 = f(x n ) con x0 en [ a , b ] ;
Como f manda [a , b] en sí mismo, la sucesión está dentro de [a , b |, xn+1 - ce - f(U (xn - xn J + f'féj (xn+1 - a)
aplicando el teorema del valor medio:
De donde tomando módulos resulta:
| xn - a | = | f( - f(a) | < | f '( - a | < m | xn., - a |,
pues cj e [a , b] | xn+I - a | < m | xn+1 - xn | + m | xn+] - a |, y como m < 1 resulta:

m
Aplicando inductivamente esta desigualdad obtenemos: V, - « I < Xn+l ' Xn (4.4)
1 -m
| ^ - ce | < m | x n _ , - a | < m2 1 xn 2 - a | < ... < m" | x,, - a |, y como m < 1 ,
Notemos que cuanto menor sea m más rápida será la convergencia del
lim | xn - a | < lim m" | x() - a | = O, método. No debemos confundir este m con el del teorema fundamental, ya
íi-.>£» n-~>o<>
que para resolver F(x) = O nos interesa que alrededor de la raíz la F(x) tenga
derivada grande para acelerar la convergencia, mientras que para resolver
y entonces xn -> a para n -> °° . c.q.d.
X = f(x) nos interesa que alrededor del punto fijo f(x) tenga derivada cercana
Dejamos a cargo del lector una interpretación gráfica del método de las a cero para acelerar la convergencia. (Recomendamos granear los dos casos.)
aproximaciones sucesivas.
Antes de seguir queremos hacer notar que este método es importante, no Método de sobrerrelaj aciones sucesivas (SOR)
sólo porque a partir de él podemos generar otros métodos útiles, sino porque1
Vamos a tratar de modificar el método de las aproximaciones sucesivas de
él mismo es muy usado en ciertos casos en que su sencillez lo hace inevitable;
lorma tal que la convergencia resulte acelerada. Para lograrlo pensemos la
por ejemplo cuando resolvamos ecuaciones diferenciales lo utilizaremos en
ecuación ( 4.3 ) de la siguiente forma:
muchas ocasiones.

Error de truncamiento en el método de las aproximaciones Vemos entonces que ( f(xn) - x n ) es la corrección que debemos aplicar a
sucesivas xn para obtener xn+1.

Bajo las condiciones que garantizan la convergencia del método de las] El método SOR, consiste en encontrar un <B , tal que
aproximaciones sucesivas vamos a encontrar una expresión muy útil para]
acotar el error de truncamiento.

converja más rápidamente a a.


162 Análisis numérico. Primer curso Ecuaciones no lineales 163

De acuerdo al signo de f'(x) y al valor de m, se pueden elegir valores «I. lista claro que no podemos conocer el valor de i;n. Pero resolviendo apro-
co que aceleren la convergencia. ximadamente el problema obtendremos dos importantes métodos para la re-
• •!iiiión de ecuaciones no lineales.
Vamos a plantearnos ahora un problema que sólo puede resolverse ex.u
lamente conociendo la raíz a. Nuestro análisis adquirirá sentido cuando ve.i
mos que distintas soluciones aproximadas del problema originan distintos
métodos para resolver la ecuación: Método de Newton-Raphson
x = f(x).
Método de Newton-Raphson para resolver x-f(x)
Tratemos entonces de resolver el siguiente problema: l
Sien co = —— aproximamos f'(tj n ) por f'(x n ) el método SOR
Partiendo de un cierto xn, ¿qué valor debemos darle a co para que x n l , rCSUlta: . , ! " f ^n) . „,;,..:.:. . . . . . ,;.. . . ... % .. ¡ .,»

sea exactamente a ?
f(x n )-x n :.-./.)., v;. . ^ : .'v-
Resolvamos entonces la ecuación:
- f'(x n )
ex - xn + co ( f(x n ) - x n ), de donde obtenemos: u sea:

f(x n )-x B f(x n )


1 = f(x ~ } ' x "
(4.5)
Vt-1
co a-xn l-f'íx») '

y sumando y restando a al numerador del término de la derecha: f esta fórmula define el Método de Newton-Raphson (N-R) para resolver
; . , . - ' • f . - . - : ' . J>5í-' "íiií*i\. :: ' • '• ' • . i,'
1, -_
f(x n ) - a i i "" x=f(x). : ' ;, , , '.'••. • " "'í ' . -.j'fVJ^'St'5
co a-xn
Observemos que si definimos una nueva función:.
Pero como f(a) = a , resulta:
f(x)-xf'(x)
1 f(x n ) - f(a) (p(x) =
+ 1, - f'(x)
co ex - xn
I método de N-R, no es otra cosa que el método de las aproximaciones suce-
y aplicando el teorema del valor medio: v.is aplicado a la resolución de:
1 x = cp(x).
= 1 - f'(cj n ) con c;n entre a y x n ,o sea:

1
co - con cj n entre a y xn
164 Análisis numérico. Primer curso Ecuaciones no lineales 165

Por lo tanto las condiciones de convergencia las deducimos del Teorema 4.1 ¡ m
Debemos hallar un intervalo [a , b] tal que <p [a , b] ) cr [a , b]' y tal i|in < 1 , de donde:
1 -m
dentro de él:
I xn+, - « I < I xn+1 - xn |,
| <p'(x) | < m , para cierto m que cumpla: O < m < 1.
• Crestón comunmente usada para controlar el error en el proceso iterativo
Veamos la forma de (p'(x): !.• N-R.

f "(x) (f(x) - x)
(l-f'(x))2 Ictodo de N-R para resolver F(x) = O

Para que la raíz sea simple debe ser f '(a) + 1, por lo tanto existe un cu I'ara resolver F(x) - O, podemos proceder de la siguiente forma:
torno de la raíz dentro del cual el denominador de (p'(x) está acotado inlc Definimos f(x) = F(x) + x ; entonces las soluciones de F(x) = O y las de
nórmente (suponiendo f '(x) continua); si existe otro entorno de la raíz den f(x) son las mismas; apliquemos ahora ( 4.5 ) para obtener:
tro del cual | f "(x) | esté acotada superiormente, tomando un x de partida
suficientemente próximo a a resultará garantizada la pequenez de 9'(x). Hl 3 (Xn)+Xn-Xn(F'(Xn)+D
más, a medida que nos acerquemos a la raíz se irá achicando el términu , de donde:
l - ( F ' ( x n ) + l)
( f(x) - x ), y por lo tanto el módulo de (p'(x), lo que irá acelerando la con
vergencia. Ffv 1
X n +1 = Xn + hn ' C0n hn = - Tí (4.6) '"'"

Observemos que en este caso N-R equivale a aplicar el método de las


Error de truncamiento cometido al resolver x = f(x) con el Iproximaciones sucesivas a:
método de N-R
F(x)
Vimos anteriormente que si |(p'(x)| < m < 1 en un entorno de cc,p;ii x = <p(x) con <p(x) = x -
F'(x)
tiendo de un punto de este entorno resulta:
m F(x)
Si hacemos h (x) = - tenemos que:
1 -m F'(x)
Expresión válida para estimar el error de truncamiento en el método tic 1 F"(x) P(x) F"(x)
N-R. F'2(x) F'(x)
Pero ahora observemos que al acercarnos a la solución, podemos tomar I
valores de m cada vez más chicos, por lo que siempre resultará cierto qufl Podemos entonces deducir que si F'(x) es continua alrededor de a y dis-
estando suficientemente cerca de a, m pueda considerarse menor o igual a l iila de cero en a ,y F"(x) se mantiene acotada en un entorno de a, partien-
0.5, y entonces, i de un XQ suficientemente próximo a a, el método de N-R para F(x) = O
i convergente.
166 Análisis numérico. Primer curso Ecuaciones no lineales 167

Puntualicemos: debemos hallar un intervalo [a, b], tal que 9 lo aplique Método de N-R complejo
en sí mismo; luego debemos hallar dos constantes K y d tal que para todi i
x en [a , b] se cumpla: El Método de Newton puede ser fácilmente generalizado para resolver el
problema de hallar una raíz compleja de

• < K para algún K positivo, F(z) = 0.


I F'(x)
F(x) Supongamos que oc es una solución de la ecuación anterior con F'CoO^O
|h| < d con h = y que conocemos un entorno de E(cc) en el plano complejo tal que para
v ' . '' ífA/ -A; F(z)
y Kd = m < 1; entonces si tomamos x0 en [ a , b ] queda garantizada la con ffl(z) - z - valen:
vergencia-de N-R:a la raíz de F(x) = 0. } '-' F(z)
1 ) < p ( E ( a ) ) c E(a) y
Error de truncamiento cometido al resolver F(x) - O con el
2 ) | (p'(z) | < m < 1 para todo z en E(oc);
método de N-R

Siguiendo con la idea desarrollada para garantizar la convergencia, obsn Entonces repitiendo los razonamientos de las secciones anteriores pode-
vemos que en el paso n-ésimo: mos probar que partiendo de un z() en E(oc) la sucesión:

mn = K hn < 1, y entonces:

m converge a a.
m.
1 -m.
¡ Algoritmo de Newton-Raphson para resolver F(x) = O
Si estamos suficientemente cerca de a como para que sea
Intenta aproximar una raíz sin haber asegurado la convergencia.
I K hn | < 0.5 resulta: Controla el valor de la derivada de f [x] aproximándola en "control". Ver
M.ll )
No considera los errores inherentes y de redondeo.
n+ ,

(ilgontmo "newton-raphson"
comenzar
definir F[ x ];
definir f[ x ] = x - F[ x ]/F'[ x ];
leer x,,, eps, nmax;
n = l;
168 Análisis numérico. Primer curso Ecuaciones no lineales 169

x, = f[ Xo ]; l ; ,l Método de la Secante tiene la ventaja sobre el de N-R , que no hay que


error = abs[ x, - XQ ]; . il. ular la derivada de f(x) en cada paso; pero tiene como desventaja el que
mientras n <= nmax y. error >= eps hacer licu-sitamos trabajar con xn , y xn para obtener xn+1. .
X2 = f[ x i]; I 'ara comenzar el proceso iterativo debemos utilizar un x,, y un xr
error = abs[ x2 -x, ];
control = abs[ ( x - x, )/( x, - x0 ) ];
escribir x2 , control; Mctodo de la secante para resolver F(x) - O
n = n + 1;
Si queremos resolver una ecuación del tipo:
xo = xi >
= x2
F (x) = O,
finmientras
si n >= nmax entonces escribir "el procedimiento fracasó"; parar ÍÍHM
podemos definir como hicimos anteriormente,
escribir "la raíz es", x2
fin

\o ( 4.7 ) a esta función obtenemos:


Método de la secante
=X (4.8)
Método de la secante para resolver x - f(x)

con hn = - F(x n )
Sien co = , aproximamos f'(s n ) Por "
-x
Esta es la expresión del Método de la Secante para resolver la ecuación
el método SOR resulta:
Hx) = 0.
El Método de la Secante es una variante del Método de Regula Falsi, en el
=X (4.7) que elegimos la secante a través de los dos últimos valores hallados sin pedir
1 -- que la raíz esté entre ellos; si bien el Método de la Secante no converge incon-
x., - x.. clicionalmente para funciones continuas como Regula Falsi, cuando lo hace es
i Ir convergencia más rápida que éste último.
Esta expresión define el Método de la Secante para resolver x = f(x); cornt
veremos más adelante tanto el Método de N-R como el de la secante conver-
gen más rápido que el de las aproximaciones sucesivas; a su vez el método di
N-R converge más rápido que el de la secante.
170 Análisis numérico. Primer curso Ecuaciones no lineales 171

EJEMPLO 4.1 Notemos que si la ecuación ( 4.8 ) es reescrita en la forma:

Resolvamos la ecuación del Ejemplo 2.1:

— - sen(x) = O,
4
Imeden surgir dificultades con la cancelación cuando xn = v, Y F(xn) F(xn.,) >0.
utilizando el Método de la Secante:
Esta forma no es entonces aconsejable. Podemos encontrarnos con gran
i -mudad de problemas si no tenemos en cuenta estos detalles en un programa
n F(xn) «le computadora. La elección entre el Método de la Secante y el de N-R
xn
depende de la cantidad de trabajo requerido para computar F'(x). Suponga-
0 1 0.59147 mos que esta cantidad es r veces la cantidad de trabajo requerido para calcu-
1 2 -0.090703 l.ir F( x ). Por medio de un análisis asintótico puede obtenerse la siguiente
2 1.86704 0.084980 regla: si r > 0.44 conviene usar el Método de la Secante; en caso contrario
0.003177 conviene usar N-R.
3 1.93135
4 1.93384 -0.000114
5 1.93375 0.000005
6 1.93375
Propiedades de convergencia

Definición de orden de convergencia. Orden de convergencia del


En este ejemplo la convergencia del Método de la Secante es rápida debido método de las aproximaciones sucesivas
a que el valor que tomamos para x, está próximo a la raíz.
Sea XQ., x, , x 2 , ... una sucesión que converge a a, y sea en = a - x
Si existe un número p y una constante C ambas no nulas tal que:
Cuando | xn - xn , | sea pequeño el cociente sera
F(xn) - F(xn.,)
determinado en general con baja precisión relativa. Si por ejemplo, elegimos lim (4.9)
n -><»
las aproximaciones iniciales xfl y x, muy cercanas a a , | x2 - a ¡ puede resul-
tar más grande debido a los errores de redondeo. Sin embargo el análisis de decimos que el método que genera tal sucesión tiene orden de convergencia
error de truncamiento del método muestra que en general | xn - xn 5 | >: p y C es llamada la constante asintótica del error.
|xn-Ct|.
Una forma resumida de escribir ( 4.9 ) es la siguiente:
Sucede que la contribución dominante al error relativo de hn proviene de
error de redondeo de F(x n ). en+i - 0( en» ) ,
Una baja precisión en los otros factores tiene menos importancia.
y decimos que en+1 es un "O grande de enp".
172 Análisis numérico. Primer curso Ecuaciones no lineales 173

Para p = 1,2,3, la convergencia se dice lineal, cuadrática, y cúbica resp


tivamente. O = F(ct) - F (xn) + F'(xn) (oc - x n ) + F"(cj
Observemos que ocurre en el Método de las Aproximaciones Sucesivas: ton £ entre xn y a.
Como F'(xn) * O, podemos escribir:

(<*-x n ) 2
Si ce es el punto fijo entonces: + (a - x ) =
2 F'(x n )
xn+, - a = f(xn) - f(a) = f '(U (xn - a) y resulta:
Pero el término de la izquierda es a - x n+1 , entonces tenemos:

Cn+. = - (4.10)

De acá deducimos que si f '(a) & O el método de las aproximaciones sin y entonces cuando n -» «>, xn -» a , y tenemos:
sivas es de orden 1 y C = f'(oc).
Si £'(«) = O y f "(00*0: "•iH-1 F"(a)

(x - a)2 2F'(a)
xn+1 - a = f(x n ) - f(a) = f '(«) (xn - a) + f "(£ n ) --- . , y entonces
listo nos muestra que si F"(oc) * O , N-R es un método de orden 2, y la
• "listante asintótica del error vale:
f"(a)
F"(a)
2F'(cc)'
F(x)
Orden de convergencia del método de N-R y control del orden Revisando las deducciones de la sección anterior para f(x) = x - —
bservemos que: F'(x)
de convergencia
_ F"(a) F(a)
Estudiaremos el caso F(x) = 0. Supondremos en lo que sigue que la ra I (°0 - _,2 • .— - O, lo que nos permite asegurar nuevamente que el
que nos ocupa es simple, o sea, F'(ot) ^0, y que F(x) tiene sus dos primen
derivadas continuas en un entorno de a, entonces F'(x) conserva el si¡;i létodo de N-R es por lo menos de orden 2.
y no se anula en un entorno de oc; bajo estas suposiciones para un x un
tenido en la intersección de ambos entornos escribimos el siguiente desarn F"(a)
lio de Taylor de orden 2: i P(<x) st O , resulta f"(a) = * o y obtenemos nuevamente-
F'(cc)
F"(a)
C=-
2F'(a)
174 Análisis numérico. Primer curso Ecuaciones no lineales 175

Finalmente diremos que en la práctica es común intentar resolver mu 1 >espejemos F( xn ) de (4.8) y reemplacemos en (4.12). Luego tomemos
ecuación utilizando un método iterativo sin haber verificado que se cumpl.ii i u , y recordando que F(cc) = O, obtenemos:
las condiciones de convergencia, en cuyo caso se hace necesario ir controlan
do el proceso. Una forma razonable consiste en construir los cocientes:
(oc - x n+1 ) F[x n _, , xn] + (a - xn.,) (a - xn 0.

X n+l " Xn
(4.11)
Xn - X n-, Si utilizamos el teorema del valor medio del cálculo diferencial:
que sabemos tienden a f '(a); si este cociente tiende a cero el método de N
F [ x n l , x n ] = F'(c¡') con cj1 entre xn , y xn , y entonces tenemos:
está convergiendo con orden 2; si se acerca a un valor distinto de cero es pro
bable que estemos en presencia de una raíz múltiple y la convergencia puali
hacerse muy lenta, siendo conveniente entonces utilizar un método para MI
ees múltiples.

Vamos a determinar el orden del método de la secante:


Orden de convergencia del método de la secante
Si el método converge, tomando límite para n tendiendo a °° , de ( 4. 1 3 )
Nuevamente estudiaremos el caso F(x) = 0. De ( 4.8 ) obtenemos: obtenemos:

O = F(x n ) + ( x n+1 - x n ) F[x n _, , x,J , siendo i. .^


lina = C,
en e n _,
F(x,,,)-F(x n )
siendo esta C la misma constante asintótica del error que obtuvimos para
N-R.
expresión que usaremos con mucha frecuencia cuando estudiemos interpo Supongamos ahora que el orden del método de la secante es p, entonces
lación; también ahí demostraremos que para toda función suficientementí existe algún K positivo tal que:
buena que pase por:
P =K e P v
c n+l - ^ cn ' 7
e --K^ Cen-l P•
cn
x n-i - F( V. ) ) y por ( xn , F( xn ) ), vale:

F"(cJ Entonces de ( 4.13 ) obtenemos:


F(x) = F(x n ) + (x - x n ) F [x,,., , x n ] + (x - v,) (x - xn) —— , ( 4.12 )

con £, en el menor intervalo que contenga a x , xn., , y xn. K e/s


(Observemos que los dos primeros términos de la derecha forman la eci
ción de la recta que pasa por los puntos: (xn , , F(xn ,) ) y ( x n , F(x n ))).
Ecuaciones no lineales 177
176 Análisis numérico. Primer curso

Esta relación puede ser válida únicamente si: (iomo (p es positiva en I, vemos que manda I en sí mismo.
Iodo esto implica que tomando como punto de partida cualquier valor en
C = K 1+1/p y p = 1 + 1/p , de donde: I queda garantizada la convergencia; veamos los cálculos escribiendo los
M-Miltados finales con cuatro dígitos:
K = C1/P y p = 1.618 ... , de donde:

_ r0.6180... 1.618... n >i


n+1 ~ n ' — n xn F<x n ) F'UJ hn

Vemos entonces que el orden del método de la secante es algo menor que 0 0.2500 0.27880000 -2.779 0.10030000
1 0.3503 0.00387700 -2.704 0.00143400
el orden del método de N-R.
2 0.3517 0.00009114 -2.704 0.00003371
3 0.3517
EJEMPLO 4.2
Utilizando el método de N-R hallar la raíz de la ecuación del Ejemplo 3.1,
i
F(x) = e x - 2 x = 0.
()tro método de segundo orden
El método de la secante no alcanza a dar convergencia cuadrática. En reali-
Partir de un x0 que verifique las condiciones de convergencia.
il.icl se puede mostrar bajo muy débiles condiciones que ningún método ite-
Construyamos la función de la que buscamos el punto fijo: 1,11 ¡vo que use una sola evaluación de la función en cada paso puede tener
mxlen 2.
f * . ?v tv -i. 11 o * e01 (e~ K -2x)
<p(x) =x- .entonces 9'(x) = ; — . El Método de Steffensen's definido por:
-(e' x + 2) 2+e

Es sencillo deducir que la raíz que buscamos es positiva y que está en el in Xn+l = , con G(xn) =
G(x n )
tervalo:
rs de segundo orden, pero requiere dos evaluaciones de la función por paso
I - [ O ,0.5].
(aunque no hay que evaluar ninguna derivada).
Acotemos 9' en I; Este método relacionado al de la secante, es de particular interés para re-
'.olver sistemas de ecuaciones no lineales en varias variables.
| e~ x | < 1; | e'x - 2 x | < 1 y | (e'x + 2 ) 2 1 > 4 , entonces | (p'(x) I < 0.25 en I ;] Veamos que el método de Steffensen's es de orden 2; para ello hagamos:
Por otro lado 9(0) = 0.333... , y aplicando el teorema del valor medio:
bn = F(x n ) , y apliquemos Taylor a G(x n ) alrededor de xn ; entonces:
9(x) = 9(0) + 9'(£) (x - 0) < 0.333... + 0.25 x < 0.4583... si x e I;
Ecuaciones no linea íes 179
178 Análisis numérico. Primer curso

111.5 Raíces Múltiples


G(xn) =
En toda la discusión previa hemos supuesto que la raíz buscada era simple
o de multiplicidad 1. En general decimos que una raíz a de la ecuación
F(x n ) !•'( x ) = O tiene multiplicidad q si:
donde hn - - es la corrección de Newton.
F'(x n )
F(x)
O * lim G(x) < °° , donde G(x) =
Entonces podemos escribir: (x - ce)"

Xn+i = Xn + hn (1 + 0.5 hn F"(x n ) + 0(b n2 ) ) , y también: Si la raíz tiene multiplicidad q > 1, los resultados previos en cuanto al
(4.14) orden de convergencia no son válidos. Por ejemplo el Método de N-R es sólo
1 i acálmente convergente para raíces múltiples. Es decir que ya para q = 2 su
Convergencia es asintóticamente la misma que la del Método de la Bisección.
Es fácil ver que: lim —- = 1 y lim - - = -F'(a);
- El método iterativo modificado:
Ahora restamos a a ambos lados de ( 4 . 1 4 ) y reemplazamos el primci F(xn
h n del término de la derecha por la ecuación ( 4 . 1 0 ) escrita de la forma:

i-s nuevamente cuadráticamente convergente. No obstante supone que la


2F'(x n )
multiplicidad q es conocida a priori, lo cual no es en general cierto.

para obtener: No es difícil obtener métodos iterativos para los cuales el orden de con-
vergencia sea independiente de q.
£51 + 0.5 h,' F"(xn) + hn O(b n >), Es fácil ver que la definición que dimos de raíz de multiplicidad q equi-
2F'(x_) v.ile a pedir que las derivadas de F de orden menor que q se anulen en a y
Entonces:
y dividiendo por en2 de los dos lados obtenemos:
F(x) U(x) 1
F"(a) , „ si U(x) = - , vale: lim = - = — .
F(x) x^a x-a q
„_». e2n 2F'(a)
Entonces la ecuación U(x) = O tiene una raíz simple en x = a y pode-
Esta última igualdad nos prueba que el Método de Steffensen's es de mos aplicar todos los métodos estudiados previamente a la solución de esta
gundo orden. ci nación. En particular el método de N-R da:
180 Análisis numérico. Primer curso Ecuaciones no lineales 181

La ecuación ( 6 . 1 ) define un sistema lineal de ecuaciones en la incógnita


U'(x n ) '(x n ) X a " '. Si F'( X(k) ) es no singular, podemos resolver este sistema por los méto-
dos comunes ya discutidos.
y el de la secante: De forma análoga podemos generalizar el método de la secante.
U(x n )(x n -x n .,) Otro tratamiento que a veces resulta apropiado consiste en usar la i-ésima
-
n+,
= X

U(xn) - U(x n . t ) « nación con i = 1, 2, ..., n para encontrar

x (k+1) como solución de la ecuación no lineal:


Notemos que estos métodos son menos efectivos que en el caso de una raíz
simple ya que debemos computar una derivada más de F(x). (k-H}
, ... ,x(k+!) , x , x(k>
x
. ( . . . ,x(k) 1j _-
Y n

Este es el Método de Gauss-Seidel no lineal. De la misma forma podemos


III.6 Sistemas de ecuaciones no lineales definir los métodos de Jacobi y SOR para sistemas no lineales.

Muchos de los métodos presentados para resolver una ecuación no linea


pueden ser generalizados para resolver sistemas de ecuaciones no lineales. 111.7 Error total en la resolución de ecuaciones no lineales
Consideremos un sistema general de n ecuaciones no lineales con n in
cógnitas:
Error total en el método de la bisección
, x 2 , ... ,x n ) = 0 , con
En la sección III.2 vimos que si nos detenemos una vez obtenidos a n , bn
y m n+1 podemos acotar el error de truncamiento por:
En términos vectoriales podemos reescribirlo como:
b -a
= "V. ± d n+1 = -=—í- (7.1)
F(X) = 0, con X = (x,, x 2 , ... , x n ) y F = (f, , f 2 ,..., f n )..

Entonces el Método de N-R queda definido por la fórmula: Observemos primero que podemos considerar nulos los errores inheren-
ics de a n y bn, pues lo único que pedimos de ellos es que sean extremos de
F'(X' (k) ) (X (k+1) - X ( k ) ) + F( X ( k ) ) = O ( 6.1 ) un intervalo que contenga la raíz y podríamos considerarlos los extremos de
partida del proceso iterativo. Por lo tanto el problema en este caso, consiste en
donde F'(X) es la Matriz Jacobiana de la función vectorial; es decir una ma- estudiar la propagación de errores de redondeo al evaluar F(x) de forma tal
triz de nxn con elementos: que podamos asegurar que al evaluar la función el signo del resultado sea co-
necto.
di.
182 Análisis numérico. Primer curso Ecuaciones no lineales 183

Simbolicemos con F(x) el resultado de la evaluación de F(x) cónsul' x0 = b que convergía a la raíz buscada;
rando los errores de redondeo, o sea que el error de redondeo propagado v.ilr
Para acotar el error de truncamiento suponíamos además que I era lo
F (x) - F(x). .i 11 ¡cienteniente chico como para que dentro de él:

Vamos a considerar un entorno suficientemente chico de la raíz que llaiu.i O < c < | F'(x) | < C < °° y C < 2c, de donde obteníamos para el error
remos I , tal que los sucesivos an , bn, que calculemos desde un n en adelan >lr iruncamiento:
te estén dentro de él.
Utilizando una gráfica de proceso o un análisis retrospectivo de erro |mk-a| < |mk-mk.,|.
estimaremos una cota para los errores de redondeo absolutos propagados; NIM
esta Er.
Nuevamente consideremos que al estar ante un método iterativo podemos
Entonces resulta que: suponer que m k , no tiene errores inherentes ni de redondeo, o sea íñ k , =
"Vi-
F(a n ) = F ( a n ) ± E r y F(b n ) = F(b n ) ± Er
De todas formas para pasar de un valor al siguiente debemos evaluar (7.2),
Por lo tanto los signos estarán garantizados siempre que: por lo que será necesario estudiar como se propagan en este último paso los
mores absolutos en las evaluaciones de la función; supondremos entonces
Er < min{ | F(a n ) | , | F(b n ) | }, i|iie el módulo del error absoluto total (de redondeo é inherente) al evaluar
( 7.2 ) dentro de I está acotado por un valor E, o sea:
y en este caso la expresión (7,1 ) será correcta.
8 k , con | 5k | < E;
F(m k _,) - F(a)
Error total en el método de Regula-Falsi
Haciendo operaciones elementales sobre esta última igualdad llegamos a:
Para fijar ideas vamos a trabajar en este apartado sobre las hipótesis hecha
en el III.2, que nos permitieron deducir para el método de Regula-Falsi I F(m t .,)-F(a) F(m k .,) - F(a)
- - 5k - -
fórmula ( 2.1 ) o sea:
m

F(m k .,) (mk., - a)


(7.2) Sumemos F(oc) al término de la izquierda de esta igualdad:
F(mk.)-F(a) (recordemos que F(oc) = 0)
F(mk.,) - F(a) F(m k .,) - F(a)
Para comenzar las iteraciones tomábamos un intervalo I = [a , b] tal qi
8k •
dentro de él la derivada de F mantuviera el signo (con las suposiciones qi m k-i -a m k-i -a
habíamos hecho se mantenía menor que cero) y formábamos una sucestf
decreciente a partir de: y ¡ihora apliquemos el teorema del valor medio del cálculo diferencial:
184 Análisis numérico. Primer curso Ecuaciones no lineales 185

FCn k .,) (« - mk.,) = (mk - mk.,) F(^k.,) - 5, , de donde Ahora procederemos de la misma forma que hicimos en III.4 restando
miembro a miembro de ( 7.3 ) la ecuación a = f(a), resultando luego de
aplicar el teorema del valor medio:
F(Tl k .,) (a + mk - mk - m k .j) = (mk - mk.,)

F(r,k.,) (a - mk) = (mk - mk.,) ( F£k.,) - F - 6k F(£ k .,), y x n+1 - a = f'(£ n ) (xn - a) + 8n , con £n entre a y xn ; entonces:

_ , ,_ . F'^ k .,)-F(Ti k ,) x n+1 - a = f'(£ n ) (xn - xii+1 + x n+l - a) + 5n , y tomando módulos:


(a - mk) = (mk - mk.,) ——
|xn+1-a| <

y usando las hipótesis respecto a las cotas de F' llegamos a: Mi-ndo m la cota (menor que 1 ) de la derivada en el intervalo en que estamos
C 1 1 abajando; si además los Sn están acotados en módulo por un cierto d,
C-c
| m,, - a | < - | mk.,k - mE — < | mk - mk., | + 2 E. i i-sulta:
m
-aI<
Observemos que el primer término de la derecha acota el error de trun 1 - m '" n+i ""' '
camiento, mientras que el segundo acota la propagación de errores inherentes Observemos que el primer término es el que acota el error de trun-
y de redondeo. uimiento y el segundo el que acota la suma del error inherente propagado y
Finalmente digamos que los errores inherentes en éste caso estarían local i el de redondeo propagado.
zados en eventuales coeficientes que definieran la F(x).
Error total en el método de Newton-Raphson
Error total en el método de aproximaciones sucesivas
A título de ejemplo vamos a considerar sólo el caso en que resolvemos:
Consideremos la expresión:
F(x) = 0.
(7.3)
De acuerdo a (4.6 ) los términos de la sucesión surgen de la fórmula:
en donde razonando en forma similar a la anterior podemos suponer que
no posee errores inherentes y 5n representa los errores totales al evaluai =X
f(x n ), o sea los errores propagados debido a posibles incertidumbres en la uti
lización de coeficientes para evaluar la función y los errores de redondeo pro F(x)
pagados; o sea que podemos pensar que: Hagamos <p (x) = x y llamemos como antes I a un intervalo
F'(x)
5n = einh + ered'
| a , b] con la propiedad:
186 Análisis numérico. Primer curso Ecuaciones no lineales 187

F( I) c I , y tal que dentro de él: i >l)icuernos los siguientes valores:

| < p ' ( x ) | < m < 1;


n Xn F(xn) F'Un) Un
Vimos que tomando x0 en I queda garantizada la convergencia, y ap 0 1.5 0.4375 - 0.679999999 0.643382352
cando lo estudiando en la sección anterior al proceso iterativo: 1 2.143382352 -0.308521977 -1.611691176 -0.191427478
2 1.951954874 -0.022531958 -1.345977437 -0.016740219
xm-i = (PCxJ» deducimos:
3 1.935214654 - 0.006263940 -1.327607327 -0.004718217
m 4 1.930496437
( 7.4 )
n +1 Xn+l - Xn
1-m 1- m

siendo d una cota para los errores propagados totales en <p (x). En este punto evaluemos el error de truncamiento; para eso primero aco-
i temos
EJEMPLO 7.1
|F"(x)| |-sen(x) - 0.5 | 1.5
< < < 1.16 ;
Sea nuestro problema encontrar una raíz de: I F'(x) 1.3 1.3

F(x) = sen(x) - - - , utilizando el Método de N-R. Por otro lado:


4
| h 3 | < 0.0048, de donde 1.16 0.0048 < 0.0056 = m, entonces:
Si nosotros resolvemos este problema con una computadora ó una calcu-
ladora con rutinas científicas, como el cálculo de F(x) requiere de pocas ope- m
< 5.64 10~3 y finalmente:
raciones y las rutinas para seno y coseno aseguran casi hasta el último dígito,
el d de la fórmula (7.4) será del orden de Ji y los efectos de los errores pro
pagados serán despreciables. Para apreciarlos tendríamos que elegir una F(x) I | x 4 - c c | < 5.64 10-3 4.8 10 3 < 0.3 10'4
con muchas operaciones o suponer que las rutinas para evaluar el seno y el
coseno poseen un error considerable. Esto último lo simularemos así: traba Sin embargo a =1.9337538 de donde en verdad:
jaremos con todos los decimales de nuestra calculadora salvo para el seno y ei
coseno, en donde redondearemos los resultados a dos dígitos significativos; | x 4 - c c | > 3.25 10'3.
entonces:
Esta aparente contradicción deriva de no haber tenido en cuenta los erro-
sen(xn) - - res propagados; estimemos entonces un valor para d considerando solamen-
te los errores propagados al calcular el seno y el coseno con un error absolu-
Xn-H = Xn '• — = Xn + h n ' to acotado por 0.5 10"2.
cos(xn) - J»_
188 Análisis numérico. Primer curso Ecuaciones no lineales 189

Vemos que el valor de la derivada no parece tender a cero lo que justifica


_ a(P 39 _ esen F(X) lenta convergencia. Es probable que estemos en presencia de una raíz
e f>~ asen escn + 3eos e<:os p'(x) p'2(x) oble.
Construyamos entonces H(x) = G(x)/G'(x) y apliquemos el mismo algo -
y tomando módulos y acotando: i iimo partiendo del mismo XQ y con un eps = 10 1 0 ; nuestra salida será:
0.5 ID'2 0.0064 0.5 10 2
* 3.87 1.41421356053304 control = 0.00510178055121544
1.41421356053304 control = 0.

Tomando d = 3.87 10 3 resulta: Hl último valor tiene ocho decimales correctos.

m
| x4 - a | <
1 -m 1 -m
Ejercicios
0.00387
< 5.64 10"3 0.0048 + < 0.00392
1 - 0.0056
1) Las siguientes ecuaciones tienen todas una raíz en el intervalo ( O , 1.6).
Vemos entonces que esta es una buena cota para el error total. Hallar dichas raíces con un error absoluto menor que 0.01 trabajando con cua-
tro dígitos; acotar la influencia de los errores propagados; usar el método de la
bisección.
EJEMPLO 7.2
a) x cos(x) = ln(x) , b) 2 x - e-* = O , c) e-2 * = 1 - x .
Utilizando el Método de Newton-Raphson intentaremos hallar la raíz ]
sitiva de 2) Programar el método de la bisección suponiendo que la cota para los errores ab-
solutos propagados en el cálculo de la función es un dato. La cota para el error
G(x) = x4 - 4 x2 + 4 = O absoluto de truncamiento requerida también es un dato. El programa determina
si puede ser alcanzada o no.
Aplicando el algoritmo de newton con control del valor de la derivada i
f(x) y partiendo de x^ = 1.4 obtenemos los valores: 3) Estudiar la convergencia del método de N-R aplicándolo a la ecuación:
1.41068709209572 control • 0.496192893401061 x2 - 2 = O,
1.41245253112368 control 0.498115686867059 Hallar estimaciones de la raíz con precisión sucesivamente creciente. Deter-
1.4133335956573 control : 0.499062567245139 minar para el último valor el error total.
1.41377371598594 control : 0.499532454037792
1.41399367339026 control : 0.499766518411633 4) La raíz real de la ecuación:
1.4141036264304 control : 0.499883331829517
1.41415859653853 control
x3 = x + 4
0.499941684770595
190 Análisis numérico. Primer curso Ecuaciones no lineales 191

puede ser escrita en la forma: en el intervalo [a, b], partiendo de cualquier punto del intervalo tal f(x0) f "(Xo)
> O queda garantizada la convergencia a la única raiz que existe dentro de él
321 (Cálculo Numérico Fundamental. B. P. Demidovich, I. A. Marón).
a= V 2 + 2 -
11)Sea la ecuación
a) Utilizar esta expresión para calcular a con cuatro decimales correctos. F(x) = x3 - 9 x2 + 24 x - 20 = 0.
b) Recalcular a con la misma precisión usando el método de N-R.
a) Aplicar el método de N-R utilizando aritmética de punto fijo con 5 decimales
5) Determinar la raíz no nula de la ecuación: y tomando 1.5 como punto de partida. Detener el proceso cuando se ten-
gan dos decimales significativos.
y —1 - p 2 x,
A — I C
b) Resolver el punto a) aplicando el método de N-R para el caso de raíces
utilizando el método de N-R. Acotar el error total de forma que podamos ase| múltiples.
gurar 4 decimales correctos.
12)Sea el sistema de ecuaciones no lineal:
6) Determinar con 5 decimales correctos una raíz de la ecuación: F(x , y) = x2 + y2 - 4 = O
x ln(x) - 1 = 0 . G(x , y) = x y - 1 = O
Utilizar el método de N - R. Resolverlo utilizando el método de N-R tomando como punto de partida el (2,0).
7) Aplicar el método de N-R para determinar una raíz compleja de la ecuación: 13) Suponiendo que poseemos una rutina para evaluar la exponencial hallar el loga-
x2 + 1 = O ; ritmo neperiano de un número a utilizando el método de N-R. Efectuar los
comenzar las iteraciones con x0 = 1 + i cálculos para a = 1.2 en aritmética de punto flotante con 4 dígitos de precisión.
Estimar los errores totales.
8) Utilizando el método de la secante determinar las raíces de las siguientes ecua
ciones con un error absoluto de truncamiento menor o igual que 0.5 10~5: )4)Trabajando en [ G(10 ,4 ,2), rd ] hallar la raíz negativa de la función
F(x) = x2 - x - 2 ,
a) 2 x = e-* b) tan(x) + cos(x) = O .
utilizando el método de N-R. Acotar el error final total.
9) Obtener la raíz cúbica de un número c utilizando el método de N-R. Haciend
todas las consideraciones necesarias determinar el valor de partida .para un 15) Resolver con un error relativo de truncamiento menor que 0.5 10'3 el siguiente
cualquiera. sistema de ecuaciones no lineales:
x2
10)Suponiendo que poseemos una rutina para calcular el seno, hallar el arcsenfc 1.021 — = -4.953
utilizando el método de N-R. Determinar el valor de partida y acotar los errorc y
Determinar arcsen(0.5) con 3 dígitos significativos. 5.040 x y = - 0.05440
NOTA: Un criterio práctico para garantizar la convergencia del Método de N-R
el siguiente: SI l(a) t(b) < O y f '(x) y f "(x) no se anulan y conservan el sigr Utilizar el método de N-R. Usar r como punto de partida el vector (0.3 , - 0.03).
192 Análisis numérico. Primer curso

16) Indicar en qué casos conviene utilizar el método de la secante en lugar del < CAPÍTULO IV
N-R para evaluar la raíz de una función.
Aproximación o ajuste de funciones
17) Representar gráficamente un caso en el que al buscar la raíz de una fumín
F(x) mediante el método de N-R el proceso iterativo oscila entre dos valoi
sin converger nunca.

1V.1 Conceptos básicos

Un problema fundamental que se nos presenta con muchas variantes es el


de aproximar una función f por otra f* de una clase de funciones fáciles de
manejar matemáticamente (por ejemplo polinomios, funciones racionales,
polinomios trigonométricos, etc.), donde cada función f*, queda determina-
da asignando valores numéricos a un cierto número de parámetros. En lo que
sigue trabajaremos con funciones de una variable definidas en un intervalo
cerrado y acotado.
Debemos tener en cuenta dos tipos de inconvenientes: los asociados a los
datos de entrada, y los asociados al modelo particular que intentamos adap-
tar a esos datos (clase de funciones). Por simplicidad denominaremos a estos
inconvenientes, errores de medición y errores en el modelo respectivamente.

EJEMPLO 1.1

Los puntos de la Figura 1.1 nos muestran para n = 1, 2, 3, 4, 5, el tiempo


t para la enésima pasada de un péndulo oscilante a través de su punto de
equilibrio.
Las condiciones del experimento nos permiten suponer una relación de la
lorma:
t = a + b n.
194 Análisis numérico. Primer curso Aproximación o ajuste de fundones 195

La desviación observada respecto de la linealidad se debe fundarnciil il l'or ejemplo si (p¡(x) = x1 la clase de posibles f* es la de polinomios de
mente a errores de medición aleatorios. irado menor o igual a n.
Esta desviación produce una incertidumbre respecto a los valores de a y l;,l conjunto { 1, x , x 2 , x 3 ,..., xn } es una base de la clase de polinomios
de grado menor o igual a n.
Tenemos cinco puntos y sólo dos parámetros a determinar; decimos
tonces que tenemos un problema sobredeterminado. La función f puede estar dada de diferentes formas. Es común que conoz-
i .unos sus valores a través de una tabla sobre la malla { x 0 , x, , x 2 , . . . , xm }:
Más adelante veremos que a este tipo de problemas podemos tratarle
el Método de los Cuadrados Mínimos.
{x 0 , f (x,,) } , {x, , f (x,) } , { x 2 , f (x2) } , . . . , { xm , f(xj }.

j Supongamos ahora que queremos determinar los n+1 parámetros c ( ) ,c p


• . , . . . , cn de forma tal que f*(x¡) y f(x¡) coincidan o difieran tan poco como
3 - '.IM posible para i - O , 1 , 2 ,..., m. Este planteo nos conduce a un sistema de
ni i-l ecuaciones con n+1 incógnitas:
n

^ Cj 9j(x¡) = f(x¡) , i = O, 1, 2,..., m .

Si A = (a,p , con a,, = q>.(x¡) y B = (f(x () ) , f(x,) ,..., f(x m ))',

encontrar la solución equivale a encontrar un C = (c0 , c, ,..., c n ) 1 tal que sea


Figura l.l solución del sistema lineal:

A C = B , con A de ( m+1 )x( n+1 ).


Podemos considerar la aproximación de funciones como un caso especil
de un problema más general e importante: ajustar unjnad£l0_mateinático | Si m = n este sistema tiene normalmente solución única y en éste caso el
ciertos datos y a otros hechos conocidos. procedimiento se denomina INTERPOLACIÓN (interpolación lineal es el caso
Trataremos en lo que sigue el problema de la aproximación lineal, particular en que n = 1 , (p0 = 1 , <p, = x).
decir: una función f debe ser aproximada por una función f* que puede Si n > m el problema está subdeterminado, y este caso no nos interesa ya
expresada como una combinación lineal de n+1 funciones (p() , cp, , (p2 , ..» que no ocurre eri la práctica.
(pn elegidas de antemano, o sea:
Si m > n existen más ecuaciones que incógnitas y el sistema está sobre-
ieterminado. En este caso el objetivo es satisfacer las ecuaciones sólo en for-
f*(x) = £ c¡ <p¡ (x) ; m.i aproximada (ver Ejemplo 1.1 en donde n = 1 y m = 4).
i=0
La sobredeterminación nos permite lograr dos tipos distintos de "sua-
El problema consiste en determinar los parámetros c¡. vi/ación":
196 Análisis numérico. Primer curso Aproximación o ajuste de fundones 197

a) Reducir el efecto de errores aleatorios en la determinación de los v.iln


res de la función. ( 2.2 )

b) Dar a la curva una forma más suave entre los puntos de la malla (.11111 Las funciones f y g se dicen "ortogonales" si y solo si ( f , g) = 0.
que los valores de la función no tengan error).
Una secuencia (finita o infinita) de funciones (p 0 , tp, , ... , cpn ,..., for-
Un método importante para el tratamiento de sistemas de ecuaciones ll liuin un Sistema Ortogonal si y solo si
neales sobredeterminados es el MÉTODO DE LOS CUADRADOS MÍNIM( >s I
aplicación a la aproximación de funciones conduce a cálculos relativameittl ((Pi.cpj) = 0 para i ^ j y (cp¡, (p¡) ?t O para todo i.
simples. En muchas aplicaciones es motivado por consideraciones estadísi i< .1
(Notemos que ((p, , (p¡) = II <P¡ ||2).
Por ejemplo la secuencia de funciones:
IV.2 Aproximación de funciones por cuadrados mínimos
<P¡(x) = cos(i x) , i = O, i,..., n con w¡ = 1 forman un sistema ortogonal
71
Sea f una función continua a la que pretendemos aproximar en el intcr sobre x¡ = j con j = O, 1,.... m.
valo [a , b] por la combinación lineal: m 4- I
n

f>(x) = Z c¡ <p¡(x) Fs fácil demostrar que las funciones de un sistema ortogonal son lineal-
1=0
icnte independientes de donde se deduce la correspondencia biunívoca en-
• las funciones f* y las n+1-uplas:
El problema de aproximación por cuadrados mínimos plantea determi-
nar los coeficientes

c0 , c, , ... , cn de forma tal que: Volvamos ahora a la ecuación ( 2 . 1 ) y derivémosla con respecto a c¡ para
m ;illar las condiciones de mínimo:
|| f* - f ||2 = (definición) = I w, ( f*(x) - f (x) )2, ( 2.1 )
| f* - f ||2 = Z 2
sea mínima en función de los c¡ . (Los w¡ son positivos y arbitrarios.) de

Notemos que ( 2.1 ) es una medida del error cometido al aproxiirun I = I 2 ( P ( x ) - f ( x ) ) ( p ] ( x ) w;


por f* ; ( 2.1 ) define la "seminorma euclideana de pesos w¡" para ( f* - I l j=ü
Para poder expresar la solución de éste problema en forma relativamentÉ
sencilla nos será útil introducir el concepto de "seudo-producto interne Igualando a O obtenemos:
calar" de dos funciones continuas y reales f y g conocidas sobre una ni.ill.i m ni
finita; lo definimos como: 2 ^ ^(x.) <p¡(xj) = Z Wj f(xp 9 L (Xj) osea:
198 Análisis numérico. Primer curso Aproximación ó ajuste t& fundones 199

((p 0 , (p0) = 1 + 1 + 1 + 1 + 1 = 5
Z Wj ( Z ck <p k (Xj)) (p¡(Xj) = ( f , (p¡);
j=0 k=0
(9 0 , (p,) = 1 + 3 + 4 + 6 + 7 = 21
intercambiando el orden de las sumatorias obtenemos:
n
(9, . 9o) - (9o' 9.) = 21
£ ((p¡, (pk) ck = ( f , <P¡) i =1,2,..., n (2.3)
k=o ((p, , (p,) = 1 + 9 + 16 + 36 + 49 = 111

Lo que simboliza un sistema de n+1 ecuaciones con n+1 incógnil.r. < | i ( f , (p0) = -2.1 - 0.9 - 0.6 + 0.6 + 0.9 = -2.1
bajo amplias condiciones admite solución única. (Observemos que la nniti
del sistema es simétrica.) ( f , (p,) = -2.1 - 2.7 - 2.4 + 3.6 + 6.3 = 2.7
Si las cp¡ forman un sistema ortogonal ( 2.3 ) se reduce a:
l'or lo tanto ( 2.3 ) se transforma en:
(f,9¡)
C: = i = O, 1,..., n, (2.4) 5 cf) + 21 c, = -2.1
(9¡ > <P¡)

denominándose a estos coeficientes "ortogonales o de Fourier". 21 c0 + 111 c, = 2.7

De donde obtenemos:
EJEMPLO 2.1

Usar el método de los cuadrados mínimos para ajustar una función de • c() =-2.542, c¡ =0.5053 ósea:
forma
f*(x) = -2.542 + 0.5053 x
f*(x) = c0 + c, x , al siguiente conjunto de datos:
EJEMPLO 2.2
(considerar los pesos iguales a 1)
Consideremos el caso n = O , <p 0 (x) = 1;
1 3 4 6 7
este caso ( 2.3 ) se reduce a la única ecuación:
f(x) -2.1 -0.9 -0.6 0.6 0.9
(<p 0 , q>0) c0 = ( f , <p u ) de donde:
Consideramos (p0(x) = 1, <p,(x) = x.
Debemos calcular (cp¡ , cpp para i = O , 1 y j = O , 1 y (f , (p¡) p.
w f(x.)
i = O , 1; entonces:
co ~
200 Análisis numérico. Primer curso Aproximación o ajuste de funciones 201

c0 se denomina "promedio pesado" de los valores f(x¡); EJEMPLO 2.3


Si todos los pesos son iguales a 1 tenernos: I' I nivel de agua en el Mar del Norte está determinado principalmente por
ll.unada Marea M2, cuyo período es de aproximadamente 12 horas, y enton-
buscaremos una aproximación de la forma:

co ~ 2 JTt 27Tt
m+1 I I*(t) = hfl + a, sen( ) + a ? cos( ) con t medido en horas.
12 12

de donde deducimos que el cálculo del promedio es un caso partícula i .1. Se han efectuado las siguientes mediciones:
cuadrados mínimos.
Una medida de la "bondad" del ajuste la da precisamente el valor que un t 0 2 4 6 8 10 horas
nimizamos para un dado conjunto de funciones B = { (p¡ }." : H (t) 1.0 1.6 1.4 0.6 0.2 0.8 metros

f-f* Debemos ajustar H(t) a la serie de mediciones utilizando el método de


los cuadrados mínimos.
Si este valor no resulta satisfactorio debemos modificar el conjunto II Resulta natural elegir una base de funciones de periodo 12:
Generalmente agregando funciones al mismo y recalculando todos los codi
cientes de f*. TI t 71 t
(t) - = sen( = cos(
6 6
Notemos que de acuerdo a ( 2.4 ) si las q> son ortogonales el
coeficiente c¡ depende solamente de f y de 9 . . Esto nos permite Calculemos ahora los coeficientes del sistema de ecuaciones lineales:
incrementar la cantidad de funciones de la base sin tener que
recalcular los c¡ previos.
(<p0 , <p0) = 6 , (tp() , (p,) = O , (<p0 , <p2) = O ;
Los sistemas ortogonales no sólo son ventajosos porque simplifican le
(<P! ,cp,) = 3 , (9, ,<p 2 ) = 0;
cálculos; usándolos también evitamos las dificultades numéricas con los err
res de redondeo que pueden presentarse al resolver el sistema de ecuacior
. (<p2 , (p2) = 3 ;
originado por un sistema no ortogonal.
(<pfl , H) = 5.6 ;

( ( p , , H ) = Vl ;

(q)2 , H) = 0.8 ;
202 Análisis numérico. Primer curso Aproximación o ajuste de fundones 203

Observamos que las (p¡ forman un sistema ortogonal, por lo tanto: I >iscutiremos algunas de las propiedades de los polinomios como funcio-
iii", aproximantes en un intervalo cerrado [a , b].
5.6
hn = = 0.933 1 )efmamos primero la norma infinito para funciones continuas en un in-
6
tervalo [a,b]:

a, = = 0.577 Si f pertenece a Ctí[a , b] entonces || f IL = max { | f(x) ¡ }


xe[a,b¡
3
0.8 Ahora estamos en condiciones de definir para una función continua:
a, = = 0.267 , entonces:
Si fe C ° [ a , b j entonces:
711 ut
H*(t) = 0.933 + 0.577 sen( ) -t- 0.267 cos( - -). E n ( f ) = ínfimo { | | f - P | L }
6 6 F (polinomio
de grado < n)

1.5 - Con estas definiciones estamos en condiciones de enunciar el siguiente


1.25 - teorema fundamental:
1 -

0.75 - Teorema 3.1 (Weierstrass)


0.5 -
0.25 - Si f e C° [ a , b] entonces lim E n (f) = 0.
n >°°

Este resultado nos permite asegurar que una función continua en un in-
tervalo cerrado y acotado puede ser aproximada dentro de él por medio de un
Figura 2.1 polinomio, con un error tan chico como querramos con tal de elegir poli-
nomios apropiados de grado suficientemente alto. Cuanto más suave sea f ,
más rápido decrecerá E n (f), es decir menor será el grado del polinomio nece-
s.irio para aproximarla con un cierto error.
IV.3 Polinomios como funciones aproximantes o de ajuste Por otro lado en muchos casos, E n (f) decrece tan lentamente que no resul-
ta práctico aproximar f con polinomios.
Propiedades y representaciones Los métodos más usados para construir aproximaciones polinómicas pro-
ilucen a menudo errores máximos significativamente mayores que E n (f), y ni
Sabemos que un polinomio de grado n es una función de la forma: siquiera podemos estar seguros de que, con el tipo de polinomios que traba-
j.iinos, el error tienda a cero al tender n a infinito, aún cuando f sea bastante
P(x) = an xn + an., x"-1 + ... + a, x + a 0 . regular.
204 Análisis numérico. Primer curso Aproximación o ajuste de fundones 205

EJEMPLO 3.1 <Po(x) = a oo


1
La función f(x) = tiene derivadas continuas de todos los ónlcí
1 + x2
sobre cualquier intervalo acotado. Sin embargo la Serie de Taylor:

1
= 1 - x2 + x4 - x6 + ...,
+x 2
<Pn W = an(, + 3n. X

cuyas sumas parciales proveen aproximaciones polinómicas de grado


i un aü -¿ O se denomina una "familia triangular de polinomios".
cíente, converge sólo en el subintervalo (-1 , 1).
Podemos demostrar fácilmente que todo polinomio de grado n admite
Existen varias formas de especificar polinomios. La más conocida consistí una representación única de la forma:
en dar los coeficientes de una expansión de la forma:
P(x) = ... + cn (p n (x)
n

P(x) = E a. x'
j=o
Una familia triangular para interpolación
Una forma alternativa es la siguiente:
n
Supongamos que x0 , x, , ... , xm , son los m+1 puntos de una malla
P(x) = Z b¡ (x - c)> con c en [a , b] dada dentro del intervalo [a , b].
j=o ;
Entonces las fórmulas siguientes definen una importante familia triangular:
Matemáticamente no hay diferencias entre las dos formas, pero computa
cionalmente la elección de la representación (algoritmo de cálculo) puede le (p0(x) - 1
ner una influencia importante en la propagación de los errores de redomlc
Usando la segunda forma resulta conveniente elegir: (pj(x) =x.-x0

a+b
c—
p t (x) = ( x - x 0 ) ( x - x , ) ... (x-x¡.,)
Existen otras representaciones más ventajosas aún. Una secuencia (finita I
infinita) de polinomios cp 0 , cp, ,..., (pn ,..., de la forma:

<P m+ i(x) = (x - XQ) (x - x,) (x - x 2 ) ... (x - xj


206 Análisis numérico. Primer curso Aproximación o ajuste defunciones 207

La representación resultante: ()bservemos que los c¡ se pueden despejar inmediatamente en orden cre-
•u(c, ó sea que vamos obteniendo polinomios de la forma:
P(x) = c0 + c, (x - x,,) + c2 (x - X0) (x - x,) + ... -f cm (x - x,,) (x - x,)... (x - x,
P¡(x) = ¿ c, <p¡(x) - Pj.,(x) + c, <p¡(x) i = 0,1,...,:
o sea:
la condición:
P(x) = Cj (3.1)
;) = f(Xj).

es muy práctica para expresar polinomios de grado m , especialmente |>.u .


Es evidente que si PM (x¡) - f(x¡), c¡ será nulo, lo que garantiza que el poli-
problemas de interpolación.
nomio interpolante será de grado mínimo.
Más adelante veremos que <p m+1 (x) participa en la expresión del erroi il
Por otro lado este teorema nos permite construir un algoritmo para calcu-
discretización de la aproximación ( 3 . 1 ) a una cierta función f.
l.ir los coeficientes del polinomio interpolante:

Teorema 3.2
Algoritmo elemental para hallar los coeficientes del polinomio
El problema de interpolación, que consiste en determinar un polinoi ..... interpolador
de grado mínimo que acuerde con los valores de una función dada sobre mu
malla de m+1 puntos, siempre tiene una única solución que puede ser I, u 1 1
comienzo
mente expresada en la forma (3.1 ).
entrada : m, ( x¡, f¡) i = O,..., m ;
C0 ~ *0 '
Demostración: para i = l , . . . , m hacer
Primero observemos que el grado del polinomio interpolador será men<>i comienzo
o igual que m. s = c¡-i
>
d = x¡ - xj., ;
Escribamos las ecuaciones que se desprenden de la condición pedida: P(x)
y f(x) deben coincidir sobre los puntos de la malla, entonces: mientras j > O hacer
comienzo
=c d = d(xi-xj);
S
O =3
> ^; fA.JY - AYj )^ T
4 -Cjr ', ' - :
f(x,) = c0 + c, (x, - x0)
finmientras
f(x 2 ) = c0 + c, (x2 - x,,) + c2 (x2 - XQ) (x2 - x,)

= c0 + c,(xm - x,,) + c2 (xm - x0)(xm - x,)...+ cm ^ - xa)(xm - x,)...(xm - x,


Aproximación o ajuste defunciones 209
208 Análisis numérico. Primer curso

c, - ( f¡ - s )/d
Nolcmos que de acuerdo a ( 3.2 ), f(x¡) - P(x¡) = O , i = O , 1,..., m como
ramos para el polinomio interpolante.
finí i)
salida : c¡ i = O, ..., m
fin I K-mostración:
Tomemos un z fijo y arbitrario para el cual querramos evaluar
Este algoritmo para calcular los coeficientes del polinomio interpolai
implica 2 + 3 ( i - l ) sumas y restas y i multiplicaciones y divisiones por \\\;
f(z) - P(z) con z it x. para i = O ,..., m;
lo que hace un total de:
m
m m
D (2 + 3 (i - 1) + i) = £ (4 i - 1) = 2 m2 + m operaciones Sea Pro(x) = **
i=o
(x - x¡) ; entonces grado (Pro (x) ) = m+1;
i=l i=l
Definamos ahora la función:
Luego obtendremos un algoritmo que implica una cantidad menoi < l >
operaciones, lo que lo hace un poco más estable. U(x) = f(x) - P(x) - k Pro(x) con k elegido de tal forma que:
Para evaluar el polinomio interpolante recién obtenido es conveniente uti- z) - P(z)
lizar el algoritmo: U(z) = O , ósea k =
Pro(z)
P = cm , P = V; + P (x - O , i =1,2,..., m. (Observemos que siempre podemos hallar k , ya que con las condiciones
impuestas Pro(z) ^ O .)
P(x) es el valor obtenido para i = m.
Con esta elección de k , U(x) tiene por lo menos m+2 raíces en el inter-
Nos será muy útil el siguiente teorema que expresa la forma del error i v.ilo í, y U'(x) tiene por lo menos m+1 raíces, y razonando inductivamente
discretización en la interpolación: lj (m+l) (x) tiene por lo menos una raíz en I; sea c;,, dicha raíz, entonces:

U(m+1)(c;2) = f (m+l) (cj - k (m+1)! = O, de donde:


Teorema 3.3 (Sobre el Término Residual en Interpolación)
f(z) - P(z)
Sea f una función dada con derivadas continuas hasta al menos el ordc k= , y entonces:
m+1 en cierto intervalo I = [a , b].
(m + 1)! Pro(z)

Si P(x) es el polinomio de grado mínimo para el cual (Polinomio ínter


polante):
f(z) - P(z) = Pro(z)
(m + 1)!
P(x¡) = f(x¡) i = O, 1, ..., m , x¡ en I ; entonces para todo x en I:
Como z era arbitrario en I, obtenemos la tesis del teorema, c.q.d.
f(x)-P(x)= (3.2)

donde cjx es un punto interior al intervalo I.


210 Análisis numérico. Primer curso Aproximación o ajuste de fundones 211

El Fenómeno de Runge '.i bien el acuerdo de esta curva con la función f , es relativamente bueno
. I M ! intervalo central [-0.2 ,0.2], se torna pésimo en los extremos, donde la
El Fenómeno de Runge es una dificultad asociada a la interpolación |>i>h i ni va de interpolación tiene una trayectoria extraña entre los puntos de la
nomial cuando la malla está compuesta por nodos equidistantes. malla. Este comportamiento que puede ser explicado teóricamente, constitu-
Ilustraremos este fenómeno con el siguiente ejemplo: ir d Fenómeno de Runge. Es típico de interpolación equidistante con poli-
nomios de alto grado.

EJEMPLO 3.2
La curva punteada ha sido determinada por interpolación usando las de-
nominadas abcisas de Tchebycheff (ver más adelante):
La función f, cuyo gráfico es la curva continua mostrada en la Figura » I
es aproximada de dos formas distintas utilizando polinomios de grado 10 it 2i+ 1 71
= 0,1,2,..., m (3.4)
el intervalo [-1 , 1 j. m,+ 1 2
La curva con línea quebrada ha sido determinada por interpolación sol» Observemos que en éste caso no se presenta el Fenómeno de Runge.
la malla equidistante de 11 puntos (m = 10): Aún así la aproximación no es del todo buena; obtendríamos un mejor
2i i estillado usando funciones aproximantes racionales o polinómicas a trazos.
i = 0,1,2,...,!^ (3.3) Trabajando con datos equidistantes podemos obtener una mejor aproxi-
m
mación si en lugar de interpolar ajustamos un polinomio de grado menor
(por ejemplo n - 6) usando el método de los cuadrados mínimos. General-
mente eligiendo n < 2 V m el ajuste polinomial es un problema bien condi-
cionado.
El Ejemplo 3.2 nos muestra la importancia de estudiar la trayectoria de la
nirva f*(x) entre los puntos de la malla utilizada antes de aceptar la aproxi-
mación. Cuando usamos procedimientos para aproximar para los cuales no
leñemos un análisis teórico completo deberíamos hacer un cálculo perturba-
livo experimental. En el caso del Ejemplo 3.2 un cálculo de este tipo muy pro-
bablemente nos revele que el polinomio interpolante reacciona fuertemente
ante pequeños cambios en los valores de la función. Esto nos daría la base pa-
ra rechazar la interpolación equidistante del ejemplo, aunque sólo conozca-
mos f(x) en los nodos de la malla.

Figura 3.1
212 Análisis numérico. Primer curso Aproximación o ajuste de fundones 213

IV.4 Polinomios ortogonales 1.a M1NIMIZACIÓN DE LA NORMA INFINITO de q (x), ( || q(x) |L =


i.ix | q( x ) |) y en consecuencia del TÉRMINO RESIDUAL para interpolación
. i
ni polinomios de grado m , se obtiene eligiendo { x 0 , x, ,..., xm } como los
Polinomios de Tchebycheff •i os de Tm+1(x).

Los polinomios de Tchebycheff constituyen quizás, el ejemplo más imp I n este caso decimos que efectuamos la INTERPOLACIÓN DE TCHEBY-
tante de una familia triangular de polinomios ortogonales. i IIEFF.
Hl importante hecho recién visto hace que siempre que podamos elegir li-
Están definidos por las fórmulas:
IH emente los puntos de una malla, de entre todas las aproximaciones polino-
T n (x) = cos(n arcos(x)) , -l<x<l, n = 0,1,2, ... mi.iles, sea conveniente usar la de Tchebycheff, interpolando en el intervalo
| 1 , 1 ] sobre los puntos:
Entonces los primeros componentes de la familia son: 2i+ 1 7t
y
x. = cos( ), i = O, 1, 2,..., m.
T0(x) = l , T,(x) = x , T2(x) = 2 x 2 - l , T3(x) = 4 x 3 - 3 x , m+ 1 2

T4(x) = 8 x4 - 8 x2 + 1
EJEMPLO 4.1
Los polinomios de Tchebycheff tienen muchas propiedades útiles: fórr
Aproximar f(x) = en el intervalo [ - 2 , 2 ] por un polinomio de
las de recurrencia, simetría, ortogonalidad, etc. Las expansiones en térmii 10x2
de estos polinomios constituyen una importante ayuda en el estudio de :
ciones sobre el intervalo [-1 ,1]. o menor ó igual a 10.

Si nuestra variable t , varía en el intervalo [ a , b ] debemos hacer la sus Primero tomamos una malla de puntos equidistantes xl = -2 + i 0.4 con
tución i O , 1 , ... , 10 y luego hallamos los valores f¡ = f(x¡), resultando:

a+b b -a 1 -2. -1.6 -1.2 -0.8 -0.4 0. 0.4 0.8 1.2 1.6 2.
t= H x , con x en el [ - 1 , 1 ] y t en el [a , b].
¿- ¿i

La ecuación ( 3.2 ) muestra la expresión del término residual (error


r 0.02439 0.03759 0.06494 0.13514 0.38462 1.00000 0.38462 0.13514 0.06494 0.03759 0.02439

Utilizando ahora el algoritmo de IV.3 obtenemos los coeficientes para es-


discretización) de la interpolación polinomial.
11 ibir el siguiente polinomio interpolador:
Aunque cjx depende de x , podemos decir que la curva de error se cor
porta en su mayor parte como el polinomio: |>(x) = 0.02439 + (x + 2) (0.03301 + (x + 1.6) (0.04418 + (x + 1.2) (0.07480 +
m
y = a q(x) con a = cte y q(x) — O (x - x¡) I (x+0.8) (0.1753 + (x+0.4) (-0.04679 -I- (x+0) (-0.60222 + (x-0.4) (1.0398 +

i (x - 0.8) (-0.95934 + (x - 1.2) (0.61893 + (x - 1.6) ( - 0 . 3 0 9 4 6 ) ) ) ) ) ) ) ) ) ) .


214 Análisis numérico. Primer curso Aproximación o ajuste de fundones 215

Ahora construyamos, para resolver el mismo problema, el polinomio 1 1 1 1 < i


pelador de Tchebycheff. Utilizando la fórmula ( 3.4 ) calculemos las raí*
T n (x):

2i + 1 K
t i -cos( n - 1\ y nJ ") ... , 10 , resultando:

to *1 <2 «3 '4 '5 «6 '7 «8 '9 'id

-0.9898 -0.9096 -0.7558 -0.5406 -0.2817 0.0 DOO 0.2817 0.5406 0.7558 0.9096 O.'Wiii

Figura 4.1

Debemos ahora transformar el intervalo [-1,1] en el [ - 2 , 2 ] utiliza mln

x(t) = 2 t y calcular x¡ = x(t¡) y f¡ = f(x¡) obteniendo la siguiente labl.i:


IV. 5 Funciones Spline

-1.9796 -1.8193 -1.5115 -1.0813 -0.5635 0.0000 0.5635 1.0813 1.5115 1.8193 1.9798
En diseño ingenieril, construcción de barcos y otras actividades, son co-
f(x) 0.0249 0.0293 0.0419 0.0788 0.2395 1.0000 0.2395 0.0788 0.0419 0.0293 0.024!) múnmente utilizadas las llamadas "funciones spline", las cuales pueden ser
descriptas como "varillas elásticas" que pueden ser dobladas de forma tal
Utilizando ahora el mismo algoritmo de IV.3 calculamos los coeficiente que pasen por un dado conjunto de puntos (x¡, y¡) , i = O, 1,..., m.
para construir el nuevo polinomio interpolador: Sea y - f*(x) la ecuación de la curva que está definida por la spline; bajo
ciertas hipótesis de acuerdo a la teoría de la elasticidad, f*(x) puede ser des-
q(x) = 0.0249 + (x + 1.9796) (0.02772 + (x + 1.8193) (0.02829 + cripta aproximadamente como formada por trozos de polinomios de grado 3,
unidos de tai forma que tanto f*(x) como sus dos primeras derivadas son
+ (x+ 1.5115) (0.03594 + (x+ 1.0813) (0.07385 + (x + 0.5635) (0.05668 f (unciones continuas. La tercera derivada puede presentar discontinuidades en
los puntos de la malla. Esta función se denomina "spline cúbica" sobre los no-
+ x (-0.2534 + (x - 0.5635) (0.2837 + (x - 1.0813) (-0.20222 + dos de la malla.
El concepto de función spline puede generalizarse de la siguiente forma:
+ (x - 1.5115) (0.11433 + (x - 1.8193) (- 0 . 0 5 7 7 5 ) ) ) ) ) ) ) ) ) ) .
Sea a = Xjj < x, < ... < xm = b, una subdivisión del intervalo [a , b].
Grafiquemos ahora f(x) con trazo continuo, p(x) con trazos disconti-
nuos y q(x) con línea punteada para observar las diferencias entre las IH-.
Una función spline de grado p con nodos en los puntos x¡, i = O,..., m
Notemos que en el centro del intervalo p(x) ajusta mejor a f(x), pero en lu-.
es una función s(x) con las siguientes propiedades:
extremos es mejor el ajuste de q(x).
216 Análisis numérico. Primer curso Aproximación o ajuste de fundones 217

a) En cada subintervalo [x¡,xi+1) , i = 0, ...,m-l, s(x) es un polinom| d1+1h¡


de grado p. — jc-u
b) s(x) y sus p-1 primeras derivadas son continuas en [ a , b ] . ¡L )(x l + , -x), (5.1)
Si p = 1, s(x) es lineal a trozos y está unívocamente determinada. Las íuil
ciones spline pueden ser usadas en muchos casos en donde una aproximad^
polinomial sobre el intervalo completo no es apropiada por producir oscili 1(111 =X
ciones indeseadas.
y d, , d2 , ... , d m _,, solución del sistema de ecuaciones lineales:
Con el uso de splines no debemos temerle a los datos equidistantes cor
era el caso con polinomios de alto grado. Sin embargo no podemos afirml
que las funciones spline son siempre mejores que un polinomio con el misr +, - i + 1 - i - - - (y.-y ) ( 5 . 2 )
hi h,-¡
número de parámetros.
i = 1, 2, ..., m-1
Discutiremos ahora con algún detalle el caso de interpolación con luj
ciones spline cúbicas; las condiciones a) y b) en este caso permiten infir
tas soluciones pues para construir s ( ) , s t , ..., s m _, , necesitamos 4 m ce I >emostración:
ficientes mientras tenemos 2 condiciones de interpolación sobre caJ
intervalo (s^Xj) = y¡, s¡(xj+)) = y j+1 ), las que totalizan 2 m condiciones (estf Definamos d¡ = s"(x¡) = lim SM"(X) = lim s¡"(x) i = l,...,m-l;
x->x¡ x->x¡
también son las condiciones de continuidad), 1 condición sobre cada noJ
interior para la derivada primera ( SM'(X¡) = s^xj ) y otra condición paral (vemos entonces que la condición en los extremos implica automáticamente
derivada segunda ( s¡_,"(xi) = s^X;) ) , que agregan 2 reí - 2 condiciones 1 '!„ = d m = 0)
ciendo un total de 4 m - 2 condiciones. Nos quedan dos grados de liber
que pueden ser usados de distintas formas. ('orno s, es un polinomio cúbico en [x^x^J, s¡" es una función lineal que
s.ilisíace:
Analizaremos el caso de la spline cúbica natural que surge de imponer:
s¡"(x¡) = d¡ y Sj"(x i+1 ) = d i+1 ; de donde deducimos que:
d, d,.
"
Teorema 5.1 h h
Supongamos tener una tabla de valores { ( x¡, y¡) } ™ 0 ; La spline cúbica :
tural s ( x ) que interpola esta tabla está formada por las s¡( x ) sobre el inte Si integramos dos veces con respecto a x obtenemos:
valo [ X j , Xj + , ) definidas por:
d,,
s'(x) = ~ (x-+1 " (x " Xi)3 + c (x " x-} + D (x-+

siendo C y D las constantes de integración.


Aproximación o ajuste de fundones 219
218 Análisis numérico. Primer curso

D=[d,,d2,d3)d4j'
Imponiendo las condiciones s¡(x¡) = y¡ y s i (x i+1 ) = y1+1 obtenemos '
D, y reemplazando obtenemos la expresión ( 5.1 ). y
B = [b, , b 2 , bj, bjl , con
Para determinar los valores d, ,..., d m , utilizaremos la continuidad di
6
Si derivamos ( 5.1 ) y hacemos para i desde l a m í
b¡= Y ( ^ < " 2 yi + K-i)
obtenemos ( 5.2 ) c.q.d.
Vamos a aplicar estos resultados interpolando con una spline cúbica natu-
Cuando aplicamos estas condiciones para aproximar funciones cuyas de
ral la función:
rivadas segundas no se anulan en los extremos a y b, aún obtenemos un
buen ajuste en la parte central del intervalo, pero el error es mayor en lim
f(x) = e "2 en el intervalo [ - 1 , 1 ] ; para m = 5 resulta h = 0.4 ; entonces:
extremos.
Formulando las condiciones adicionales en forma adecuada podemos obJ
x0 = 1.0 , x, = -0.6 , x2 = -0.2 , x3 = 0.2 , x4 - 0.6 , x5 = 1.0;
tener un error uniforme en todo el intervalo.
Las ecuaciones ( 5.2 ) dan lugar a un sistema lineal tridiagonal para deterJ yo = f(X()) = 0.36787944 , y, - f(x,) = 0.69767633,
minar los d¡ . El número de operaciones requeridas para resolver sistemas < | .
este tipo crece solo linealmente con m. Por lo tanto el trabajo requerido parlj y2 = f(x 2 ) = 0.96078944 , y, = f(x3) = 0.96078944,
determinar una función spline es razonable incluso usando un número .Ir
puntos grande. y4 = f(x 4 ) = 0.69767633 , y5 = f(x 5 ) = 0.36787944;

b, - -1.00026 , b2 = -3.9467 , b3 = -3.9467 , b4 = -1.00026


EJEMPLO 5.1

Si tenemos 6 puntos equidistantes: y el sistema a resolver resulta:

x0 , x, , ... , x5 ó sea h¡ = x j+1 - x¡ = h , i = O, 1, 2, 3, 4 , A D = B, con


r
1.6 0.4 O O
el sistema formado por ( 5.2 ) resulta ser:
0.4 1.6 0.4 O

A D = B con
A = O 0.4 1.6 0.4! y
O O 0.4 1.6

4h h 0 0 B = [-1.00026 , -3.9467 , -3.9467 , -1.00026]'


A = h 4h h 0
0 h 4h 0 donde resulta:
0 0 h 4h
220 Análisis numérico. Primer curso Aproximación o ajuste de fundones 221

d, = -0.138761 S0(x) , s,(x) , ..., S9(x);

d2 = -1.9456 I )cfmamos ahora s(x) en base al siguiente algoritmo:

d3 = -1.9456 Algoritmo para el cálculo de la spline

d4 =-0.138761 comenzar
entrada: x ;
Con los valores encontrados y considerando que d0 = d5 = O , poden i si x < Xo entonces devolver( s0( x ) ) finsi;
armar los 5 tramos de la función spline utilizando (5.1 ): si x > xrn entonces devolver( s m .,( x ) ) finsi;
para i desde O hasta m-1 hacer
s 0 (x) = 0.9197(-0.6 - x) + 1.75344(x + 1) - 0.0578172(x + I) 3 si x¡ < x y x <,x;.,., entonces devolver( s,( x ) ) finsi
finpara( i)
s,(x) = 1.75344(-0.2 - x) - 0.0578172(-0.2 - x) 3 + 2.53168(x + 0.6) - fin

- 0.810665(x + 0.6)3 Si ahora graneamos f(x) con línea llena y s(x) con línea a trazos obser-
vamos que el acuerdo es mejor que el obtenido por los polinomios interpo-
s 2 (x) = 2.53168(0.2 - x) - 0.810665(0.2 - x) 3 + 2.53168(x + 0.2) - ladores de grado 10, ya sea el obtenido con intervalos equidistantes ó el de
Tchebysheff.
- 0.810665(x 4- 0.2) 3

s 3 (x) = 2.53168(0.6 - x) - 0.810665(0.6 - x) 3 + 1.75344(x - 0.2) -

-0.0578172(x-0.2) 3

s 4 (x) = 1.75344(1 - x) - 0.0578172(1 - x) 3 + 0.919699(x - 0.6)

Las funciones spline pueden usarse para derivar, integrar, esolver ecuací
nes diferenciales, etc.

EJEMPLO 5.2
1
Consideremos nuevamente f(x) = como en el Ejemplo 4.1;
1 + 10 x2
Tomemos igualmente x¡= -2 + 0.4 i , i - O , ..., 10 y procediendo conuí
en el Ejemplo 5.1 construyamos los diez tramos de la spline: Figura 5.1
Aproximación o ajuste de fundones 223
222 Análisis numérico. Primer curso

También es instructivo comparar los siguientes tres números: i) Usando el Método de los Coeficientes Indeterminados. (Ver Ejemplo
6.1 y Ejemplo 6.2)
max { | f( x ) - p( x ) | } = 2.796 ii) Haciendo uso de propiedades conocidas de los polinomios. (Ver
-2<x<2
Ejemplo 6.3)
max { | f ( x ) - q ( x ) | } = 0.182 iii) Reemplazando la función por un polinomio aproximante. (Ver Ejem-
-2 < x < 2
plo 6.4 )
max { | f( x ) - s( x ) | } = 0.058
-2 < x < 2 iv) Por Serie de Operadores. (Ver sección IV.7)
v) Por Extrapolación Repetida de Richardson. (Ver sección IV.10)

Una cuestión de importancia es la estimación de los errores de estas fór-


IV.6 Métodos simples para derivar fórmulas mulas. Tendremos errores de discretización (E D ), propagación de errores
de aproximación inherentes (E,) y propagación de errores de redondeo (E R ).
La estimación estricta de E D no siempre será trivial. Más común será ob-
lener estimaciones asintóticamente correctas (para h —> 0) que generalmente
Definición del problema consisten en aproximar el primer término despreciado en una serie de poten-
i ias de paso h ó en una expansión en diferencias de orden creciente.
Supongamos conocer ciertos datos acerca de una función; por ejemplo • I
valor de la función y posiblemente el de algunas de sus derivadas sobre muí
malla { x, };=0 .
Métodos elementales
Nuestro problema consiste en calcular otros datos acerca de la función,
por ejemplo: Ilustraremos con ejemplos los métodos recién enunciados en i), ii), y iii).
Utilizaremos la notación:
a) El valor de la función en un punto x que no pertenece a la malla; oíslo
se denomina "interpolación" si x pertenece al intervalo definido p< u l.i
malla y "extrapolación" en caso contrario.
b) El valor de alguna derivada de la función en un punto ("diferenciació
EJEMPLO 6.1
numérica").
c) El valor de la integral de la función sobre un intervalo ("integración 1 Derivar una fórmula de interpolación de la forma:
cuadratura numérica").
f, /2 = af ( ) + b f , + c f '0 (6.1)
Para funciones que pueden ser aproximadas localmente por medio de- |>o
linomios es natural usar fórmulas que sean exactas para polinomios. Pode- i|ur sea exacta para polinomios del mayor grado posible. Obtener una esti-
mos obtener estas fórmulas de varias maneras: in.ii.ion del error.
224 Análisis numérico. Primer curso Aproximación o ajuste defunciones 225

Verificar la fórmula y la estimación del error para el caso: Ahora imponemos las siguientes condiciones:

f(x) = ex , XQ = O , x, = 0.2 a + b =1

Debemos determinar cuatro coeficientes; Utilizando Taylor desarrollen! ha + hb - 4c +• 4d = O


(6.2)
f 0 , fj , f ' 0 , f ' , , alrededor de x1/2 = x0 H = y anulemos
Resultará que:
primeros coeficientes resultantes de la expresión ( 6.1 ):
a f 0 + b f, + c f'0 + d f, = f,/2 + ED , siendo
h h2 h3 (3) h4 ( 4) h4 h4 (4)
fO - f 1/7 f 1/7
+ f " 1/7 - _ f1/7 + f1/7 + v-/^ii
Ofh 5 )) y
2
L
8 48 384 E D = ((a + b) — + ( d - c ) — ) f, /2 +

h2 h3 h4
— + a O(h 5 ) + b O(h 5 ) + c O(h 4 ) + d O(h 4 );

La solución de ( 6.2 ) resulta ser:

a = b = 0.5 , c = -d = — , de donde obtenemos:


8
f' + + f,« + o(h<) ,
0(h 5 ),
384
De donde resulta:
o sea:

a f 0 + b f, + c f '„ + d f ' , = f1/2 (a + b) + f ' 1/2 (-a — + b — + c + d) + fn + f, h


_^ L+ f f ' f ' "i
2 8 ( ° l)j
h2 h2 h h (3) h3 h3 h2 h2
1/2 o n r^ ^ ' 1/2 ^- A f. i n. n f*. ' ion un error:
8 8 2 48 48 8 8

h4 h4 h3 h3 h4
f1/2 ( a - - + b - - c — + d— ) + aO(h 5 )+bO(h 5 )+cO(h 4 )+dO(h < ED=" con x 0 < c ; < X )
384 384 48 48
Aproximación o ajuste de fundones 227
226 Análisis numérico. Primer curso

Verifiquemos el resultado tomando: h3

f(x) - e x , x,, = O y x, = 0.2; entonces:


f"0+
1 + e0-2 1 - e0-2
0.2 = 1.10516633, con
Procediendo como en el ejemplo anterior obtenemos las siguientes condi-
0.2" i iones:
D = 5.1 10-',
a + b + c =O
la que resulta ser una buena cota ya que:
~ hb + 2hc = O
| 1.10516633-e01 | < 4.57 10'6

— h2 b + 2 h2 c = 1
EJEMPLO 6.2 2

Utilizaremos el Método de los Coeficientes Indeterminados para apro.xi lie este sistema resulta:
mar derivadas con esquemas en diferencias.
Podemos decir que con el método de los coeficientes indeterminados l.i -2 1
aproximación de la derivada u (n) (x) es escrita como una suma ponderada di = yentonces:
los u(x¡) con coeficientes de ponderación a determinar, con la condición di
que el esquema sea exacto para el polinomio del mayor grado posible qin- f, +0(h2);
cumpla: h2

P(x¡) = u(x¡) para los x¡ usados. Vemos entonces que si aproximamos la derivada segunda en x0 por el
primer miembro de la expresión anterior, el error de discretización vale apro-
Sean XQ , x, , x 2 , f 0 , f, , f 2 , y tratemos de aproximar f "0: x irnadamente:

ED = h f 0 , ó sea es de orden h.

Debemos obtener tres ecuaciones para despejar las incógnitas, entom La fórmula que relaciona el orden de la derivada (OD), el orden de pre-
desarrollando por Taylor alrededor de XQ obtenemos: cisión de la aproximación (OP), y el número de nodos involucrados en la ex-
presión (NN), es

OP = NN - OD,
228 Análisis numérico. Primer curso Aproximación o ajuste de funciones 229

salvo en el caso de tratarse de una aproximación centrada, y de que la p¡n i n nH /r \ '


n+10 = -1- + — ( f n - f n+l
dad de NN y OD sean distintas, en cuyo caso con la misma cantidad de no- 2 o
dos ganamos un orden de precisión. Veamos como ejemplo el caso siguiente!
r ii _ xn *• *n+l ' *n+
f ' . - a f o + bf. + cf,,; »+' = ~2

Desarrollando alrededor de x, , y procediendo como en los casos anterio-


res, resulta: EJEMPLO 6.3

a + b + c =O
Derivar una fórmula de integración de la forma:
-h a + xn+h
he = O
i _ f(x) dx = a f , + b f0 + c f, , x_, = xfl - h , x, = x0 + h,
h2 x,,-h
—a + + — c = 1 y entonces:
que sea exacta para polinomios del mayor grado posible, y obtener una esti-
mación del error de discretización.
-2
a - c= - r , b= ; por lo tanto: Supongamos x0 = 0; aplicando la Fórmula de Taylor tenemos:

fo -2 V3
X (4)
V4
X
HA, - iQ -r i O A T I O T I O , LQ + 0(x5),
2 o z4
ó sea ( como c - a = O ): donde los dos últimos términos son nulos para todos los polinomios de gra-
do < 3.
f0-2f, h2
• = f 1+ Integrando término a término tenemos:
h2 24
h h3 h5
Tenemos entonces: J f(x) dx = 2 h f 0 + O + -f"0 + O + — f (04) + 0(h6);
-h ^ bu

Usando el resultado de la segunda parte del Ejemplo 6.2 resulta:


ED = — f 4 ) (£), ó sea, el error es de orden h2.
f . - Z f o + f, h2
Las fórmulas de los Ejemplos 6.1 y 6.2 pueden escribirse en forma más ge- f °= h2 ~2f°
neral:
230 Análisis numérico. Primer curso Aproximación o ajuste de fundones 231

donde los dos últimos términos son nulos para todos los polinomios de grat¡ EJEMPLO 6.4
menor ó igual a tres; reemplazando obtenemos finalmente:
Supongamos conocer los valores de una función en los puntos equiditantes:

hr h h5 (4 ) h5 ( 4,
xn = x() + n h.
f ( x ) d x = - ( f 1 + 4 f 0 - f f , ) - — - f 0 + — f 0 + 0(h6),
-h 3 36 60
Supongamos que para un cierto n tenemos f n _, > f n < f n+] .
resultando:
Nos proponemos determinar el x donde f alcanza el mínimo, y el valor
de ese mínimo.
E 3- Aproximemos f por medio de un polinomio de grado 2, al que llamare-
90
mos p(x), entonces:
En general podemos escribir esta fórmula así:
p(x) = a + b (x - x n ) + c (x - x n ) 2

Haciendo coincidir los valores de la función dada y los del polinomio en


los puntos de la malla, obtenemos:
Esta es la clásica Fórmula de Simpson para integración numérica.
f n ., - a - h b + c h2
Cuando utilizamos Simpson para calcular la integral sobre un intervall
[a, b] dividimos a este en 2 m pasos de longitud h:

x¡ = x0 + i h , a = x0 2m f n+1 = , de donde:

y la fórmula de Simpson se usa en cada uno de los m intervalos [x¡ , x, , , |


i = 0, 2 , 4,..., 2 m - 2 . c=
2h 2h2
En este caso el error global se obtiene como suma de los errores locales,
decir: Ahora aproximaremos el x de mínima por el x que haga mínimo el valor
del polinomio, ó sea aquel que anule la derivada primera del mismo; y luego,
el valor de la función en ese punto lo aproximaremos por el valor del polino-
mio en ese punto, o sea:

donde cj¡ pertenece a [x¡ ,x i+2 ¡, £, pertenece a [a , b ] , y donde hemos usa<


b-a
2m = . Notemos que mientras el error local es un O(h5), el globa

es un O(h 4 ).
232 Análisis numérico. Primer curso Aproximación o ajuste de fundones 233

p'(x) = b + 2 c (x - xn) = O, de donde: EJEMPLO 7.1


Si y = (1, 2 , 3 , ... , n , ...) entonces Ey = ( 2 , 3 , 4 , ... , n , n+1, ...) , y

A y =(1,1,1,..., 1,...)

min f(x) = p(xmin) = a - Vemos entonces que estos operadores aplicados a una secuencia producen
4c otra secuencia. Podemos definir las potencias de E y A en forma recursiva
ilc la siguiente forma:
Utilizando el Teorema para el Término Residual en Interpolación olii
nemos como estimación del error de discretización: A2 y = A(Ay) = A(y n t ] - yn) = (y n+2 - 2 y n+1 + y n )

(los máximos y los mínimos se calculan en el intervalo [xn_, , xn+1] ) E2 y = E(Ey) - E(y n + I ) = (y n+2 ) = (y3 , y4 , ...)

| m i n f x ) - min p(x) | < max | f(x) - p(x)| < Utilizaremos una notación abreviada para indicar el elemento enésimo de
la secuencia resultante:
M Mh3
< — max | (x - xn.,) (x - xn) (x - x n+l ) | < —= , Eyn = y,,+, - E 2 yn = yn+2 , etc.
V243
donde M es una cota superior para la derivada tercera de f(x) que puede se . etc-
estimada usando diferencias de orden 3.
Teorema 7.1
v (-1)' ( k ) y ,,
A k yn = i ¡=0 j / n+t
IV. 7 Diferencias finitas y su aplicación a interpolación
Demostración:

Operadores en diferencias y sus propiedades mas simples Utilizaremos inducción sobre k:

Sea y el nombre de una secuencia numérica (yn) , ó sea y = (yn).


Base de la Inducción:
Definimos el "operador de corrimiento": E , y el "operador de diferencia
hacia adelante": A , por medio de las relaciones: ^ yn = Ayn = yn+. - yn = yn+, + (-D1 yn = £ (-D1 ( . ) yn+H
. Aproximación o ajuste defunciones 235
234 Análisis numérico. Primer curso

Etapa Inductiva Icorema 7.2


Si definimos A° yn = yn , y A1 yn =Ayn , resulta:
Suponiendo válida la hipótesis para k - p , debemos deducir su v.ih.l.
para k = p + 1 ; k k
yn+k = £1=0( .i )A'y n
Entonces escribimos:
I ,i demostración es similar a la anterior.
(,!)' ( ) Ay,U|, ,
Notemos que estos resultados pueden ser obtenidos simbólicamente como
u-oremas binominales; en efecto, si definimos:

I y = y , resulta:

A = E -1,

y entonces los teoremas anteriores expresan las relaciones:


yn
A k = ( E - I ) k , E k = ( I + A)k.
p p+i p P p+i
Ahora tengamos en cuenta que ( ) = ( ) » y ( )+( )=( Un ESQUEMA EN DIFERENCIAS consiste en una secuencia, y sus secuen-
de donde: P P+l i »' l ¡ i las en diferencias, escritas en la forma:

p+1

Observemos que la simetría de los números combinatorios nos permili


deducir:
A 2 y,
Corolario 7.1
k

Ay 3
j=0
Y4
236 Análisis numérico. Primer curso Aproximación o ajuste defunciones 237

EJEMPLO 7.2 [Demostración:


El esquema en diferencias para la secuencia y = (O , O , 1 , O , 0), es: Utilizaremos el segundo principio de inducción sobre k;

liase
Utilizando Taylor:
m
v f (x)
Af(x) = f(x + h) - f(x) = ~ —— k¡ ,

mn resto nulo por ser f un polinomio de grado m.


Pero f '(x) es un polinomio de grado m - 1, y las otras derivadas son poli-
nomios de grado menor, por lo tanto la tesis de la base está probada.
Los operadores en diferencias también pueden aplicarse a funciones.
Etapa Inductiva

Los operadores E y A aplicados a la función f producen funciones cin " Nuestra hipótesis es que para todo polinomio de grado m, y para todo k
valores en el punto x son: rnlre 1 y m - 1 resulta:

Ef(x) = f(x + h) , A f(x) = f(x + h) - f(x) , A k f un polinomio de grado m - k .

donde h es el paso de la tabulación de f. Debemos probar para el mismo polinomio de la hipótesis que Ak+1 f es
un polinomio de grado m - k - 1, pero:
Como la operación depende de este paso, en algunas circunstancias esto I»
haremos notar explícitamente escribiendo por ejemplo: Ak+1 f = A(A k f ), pero Ak f es un polinomio de grado m - k; razonando
iomo en la base:
Ah f(x) = f(x + h) -f(x)
A ( Ak f ) es un polinomio de grado m - k - 1 .
Los operadores en diferencias son en muchos aspectos similares a los of
radores diferenciales; en efecto, la mayor importancia de los primeros Ahora, de lo demostrado hasta el momento concluimos que si k = m ,
asociada al hecho de que la diferenciación es un caso límite de las diferencii A"1 f tiene grado m - m = O, ó sea es constante, de donde deducimos que:

Teorema 7.3 Am+1 f es la función nula. c.q.d.


Si f es un polinomio de grado m, entonces Ak f, para 1 < k < m, es m
polinomio de grado m - k y Am+1 f es el polinomio nulo. Podemos desarrollar fórmulas para diferencias que son análogas (aunque
más complicadas) a las fórmulas para derivadas:
238 Análisis numérico. Primer curso Aproximación o ajuste de fundones 239

A(cf(x)) = cAf(x). Sin pérdida de generalidad supongamos h > O , y pasemos a probar la tesis
Inductiva:
A k (a x ) = (a h - l) k a x .
Si f e Cn [x , x + n h] , entonces: An f(x) = hn f"1^) ;
A ( u n v n ) - u n Av n +
sv.imos:
Z un Avn - un vn - ufl v0 - I Au n vn+1
n=0 n=0 = A(A n -'f(x)) = , con £, en [ x , x + (n - 1) h],

Utilizando el siguiente teorema podemos obtener aproximaciones a la ilt entonces:


rivada k-ésima usando la diferencia k-ésima.

Teorema 7.4
y usando el teorema del valor medio:
Si todas las derivadas de f hasta la n-ésima son continuas en el Ínter
lo [x , x + n h] , entonces: An f(x) = h" £"'(£) , con c; en [^ , c;, + h] , ó sea £, en [x , x + n h]
A k f(x) = hk f k) (c;) con c; en [x , x + k h] k<n Y esta es la tesis de la etapa inductiva, de donde concluimos la validez del
teorema.
Demostración: c.q.d.
Haremos inducción sobre k :
El teorema anterior nos muestra que:
Base
Si la derivada de f es continua en [x , x + h] entonces: Akf(x)
- es una aproximación a ^'(x); el error de ésta aproximación tiende
Af(x) = f(x + h) - f(x) = h f'(5) con c; en [x , x + h].
a cero cuando h tiende a cero.
(Teorema del Valor Medio)
Akf(x)
Se puede probar que aproxima mejor aún a f*n)(a),
Etapa Inductiva
La hipótesis de esta etapa es que: siendo a = x + k — , tal cual lo ilustra el siguiente ejemplo:
2
si fe C1"1 [x , x + (n - 1) h] entonces

^-"(x) = h"'1 (""'>(£) con c; en [x , x + (n - 1) h]


240 Análisis numérico. Primer curso Aproximación o ajuste de fundones 241

EJEMPLO 7.3 Teorema 7.5


Sea f(x) = ex y h = 0.1, entonces: Si f pertenece a C°° [a - e , a + e] con e > O, entonces:

Af(0) e0-1- e° 8 k f(a) v


= 1.05171; f<W(a) = Z c¡ h 2i f k+2i) (a) (7.1)
h 0.1
Este resultado puede probarse usando inducción completa.
Observemos que f ' ( 0 ) = 1 y que f'(0.05) = 1.05127;
Más adelante veremos que ( 7 . 1 ) es la condición que nos permite aplicar
Este ejemplo nos sugiere definir los OPERADORES CENTRADOS:
Hxtrapolación de Richardson al cálculo de la derivada utilizando diferencias
Definimos el operador "en diferencias centradas" 8 , como sigue: centradas.
Es fácil demostrar que si P es un polinomio de grado 2 se verifica:
h h
5f(x) - f(x + - ) - f( x - - ),
u,8P(a) 8P(a)
P'(a)'= -
y el "operador promedio" \l, de la siguiente forma: h

h h 8 2 P(a)
P"(a) =-
f(x + - ) + f(x - -
Hf(x) =
La segunda fórmula vale también para polinomios de grado 3.
El ejemplo anterior nos permite escribir:

5f(0.05)
= 1.05171 = f'(0.05) IV.8 Algunas fórmulas de interpolación
h

Las siguientes fórmulas son fáciles de deducir: Fórmulas de interpolación de Newton y de Gregory-Newton
82 f(a) = f(a + h) - 2 f(a) + f(a - h) En la sección anterior mostramos que el problema de interpolación que
innsisr» en hallar un polinomio Q de grado menor ó igual que m tal que:
f(a + h) - f(a - h)
u8f(a) =
Q(x i ) = f¡, i = 0,l,...,m ,

k h lime solución única, y que para un x cualquiera:


8kf(a)- X ( | ) ' ( . )f(a
2
Aproximación o ajuste de fundones 243
242 Análisis numérico. Primer curso

Entonces:
f(x) - Q( x) = TI (x - x,) ,
f(x) =
siendo c; un punto interior al intervalo definido por x más los puntos di- l.i
malla. Los errores en los datos de la tabla propagan un error al resultado acota-
do por:
También hablamos sobre el hecho de que la interpolación equidistan ti
puede generar problemas mal condicionados. No obstante esto vale para po
E[ = p 0 . 5 U + (l - p) 0.5 U = 0.5 U;
nomios de alto grado y en las partes periféricas del intervalo. La interpolación
equidistante en la parte central del intervalo es una operación bastante bien
Por otro lado:
condicionada y muy poderosa.
La primera pregunta que podemos hacernos es: ¿cuándo es suficiente l.i A 2 f|
II c
^D iI —
~ nU.D
s l| f'YMl
I l^JI lI v
X - vX n |i i| X
v - vX n+ , |i 0.5 "h1" h 2 ( l - p ) p ,
interpolación lineal? Esta pregunta puede contestarse con el siguiente teorem.i

entonces:
Teorema 8.1
En una sección de una tabla de abscisas equidistantes y valores correcta- |ED| < 2 U p ( l - p ) , con 0 < p < l ;
mente redondeados de una función, donde:
Pero p (1 - p) alcanza su máximo para p = 0.5, entonces:
i A2 f | < 4 U (U es una unidad en el último dígito de los valores de la función I,
| ED | < 0.5 U, por lo tanto:
el módulo del error total de la interpolación lineal sólo puede exceder levi-
mente a U. | ED | + | E, | < U cq.d.
El teorema considera el error de discretización (E D ), y la propagación
los errores inherentes de la tabla (E,).
U Fórmula general de interpolación de Newton
Ignoramos los errores de redondeo durante el cálculo (E R ), (si (j. « -
Vimos que la solución al problema de interpolación puede escribirse en la
son despreciables) y suponemos nulo el error inherente en el argumento x. forma:

Demostración: l(x) = c0 + c, (x - x,,) + c2 (x - x0) (x - x,) f ... + cm (x - x,,) ... (x - xm.,) + T(x),
donde:
Sea p ¡.al que: O < p < 1 , y x = p xn 4- (1 - p) xn+1 , ó sea:
T(x)=A(x) 11 ( x - X i ) , y
Xn+
-x X - X.,
P=
- X
A(x) = •
(m + 1)!
244 Análisis numérico. Primer curso Aproximación o ajuste de fundones 245

Sabemos que c0 = f^) = f0 ; definamos ahora: Utilizando inducción podemos ver fácilmente que:

f [x] = f (x): Diferencia dividida de orden cero de f con respecto ;i \] - f[X¡] fi fx


^AQ , ... x
AI^J , xl
AJ =

ck t ck+1 (x - xk) + ... -f cm (x - xk) ... (x - xm.,) + A(x) (x - xk) ... (x - x m ) ,


f[x,x¡] = - = f[x¡ , x]: Diferencia dividida de primer ordi-i > .1.
x¡ f con respecto a x, x¡ ( k = 1 ,... , m ) ,

y observemos que: f[x 0 > ... ,x k ] = c k , (k = 0,... , m),y

flXo.x] = c, + c 2 ( x - x , ) + ... + c m (x-x,)... (x-x m .,)+A(x) (x-x,)... (x ,... , x m , x j =A(x)


de donde: Llegamos entonces a la FÓRMULA GENERAL DE INTERPOLACIÓN DE
NEWTON:

Antes de dar el paso inductivo veamos que:

f[x 0 ,x] - f [ x 0 , x , i i on un error de discretización:


X -X ftm+1)
ED = f (x) - Q(x) = f [x0 , ... , xm , x] Fí (x - x¡) = (x - x¡)
¡=o (m + 1)! ¡=o
= c2 + c3 (x - x2) + ... + cm (x - x2) ... (x - xm.,) + A(x) (x - x2) ... (x - xJ,
Para obtener un esquema que permita evaluar fácilmente las diferencias
y entonces si definimos: divididas observemos que:

f[x 0 ,x 2 ] - a ) Si P(x0 , ... , xk) simboliza una permutación cualquiera de (x,, , ... , xk):
f [x0 , X! , x2] = - - , resulta:
X2 " Xl
,... ,x k ] = f [ P ( x 0 , . . . , x k ) ] , l < k < m.

Esta expresión se deduce fácilmente observando que si consideramos el


Generalizando, definamos recursivamente las Diferencias divididas polinomio que interpola a f en los puntos x0 , ... , xk:
orden k+1 de f con respecto a Xj , x,,..., x k , x, como:
, ... , Xj = Ck ,
i
riY Y Y Y!
H-^0 > A| > •«• » ^-j^] > A J
Í*ÍY
ÍLA0
Y
>A J ) *•• )
v 1
AkJ

y la unicidad del polinomio interpolante nos permite deducir que este


X-Xt
coeficiente no depende del orden en que consideremos los nodos de la
malla pues es el coeficiente de xk.
246 Análisis numérico. Primer curso Aproximación o ajuste de funciones 247

Algoritmo para calcular los coeficientes del polinomio


b ) f [ x 0 , . . . ,x k ] =
Xk " X0
interpolador de Newton
(los coeficientes se devuelven en el vector f )
Esta última expresión la deducimos así:
comenzar
_f[ entrada: m , x¡, f¡, i = O , 1 , . . . , m ;
11 x i+i > xi+2 ' •" ' Xk ' X J = ~ para } desde 1 hasta m hacer
X - X,
para i desde m hasta j paso -1 hacer
Si tomamos x = x ; : f, - (f; - f^/U,-^)

finpara( i)
finpara( j )
i+1 ,... ,x k ] salida: f¡, i = O , 1 , ... , m ;
, ... , xk , x¡J:
x i- x k fin

y utilizando a) tenemos:
Esquema de Horner para evaluar el polinomio interpolador
conocidos los coeficientes
f[x¡ , ... , xk] = , y tomando i = 0 resulta b), comenzar
xk-x¡
entrada: x, m , x¡, c¡, i = O , ..., m ;
Entonces el cálculo de los coeficientes del polinomio interpolador pode p = cm;
para i desde 1 hasta m hacer
mos hacerlo de acuerdo al siguiente esquema:
P = P ( x ; x m - , ) + cm-i
finpara( i)
devolver: p
«o fo fin
f [ X() , X,
X, f,
f [ X, , X2 r [ XQ > Xj , x2 , EJEMPLO 8.1
x2 f2
Calcular el polinomio de interpolación para la siguiente tabla:
f f X2 , X 3

X3 f3

12 23
248 Análisis numérico. Primer curso Aproximación o ajuste de fundones 249

Entonces el esquema en diferencias divididas resulta: I MU lomos escribir la FÓRMULA DE GREGORY-NEWTON para puntos equidis-
l.intes de la siguiente forma:
X f f[x¡,x¡ +1 ] f[x¡,x i+1 ,x¡ +2 ] f[x0,x1,x2,x3]

1 0
= f0+ I ( . ) A ' f 0 (8.1)
H J
2
2 2 1 con un error de discretización:
5 0.25
4 12 2
P
11
5 23
.Observemos que el Teorema 7.2 es un caso particular de ( 8.1 ) para p
entero.
Por lo tanto el polinomio interpolador tiene la forma:
EJEMPLO 8.2
Q(x) = O + 2 (x - 1) + (x - 1) (x - 2) 4- 0.25 (x - 1) (x - 2) (x - 4)
Dada la siguiente tabla, interpolar usando diferencias divididas (Newton),
Q(x) = 0.25 x3 - 0.75 x2 + 2.5 x - 2 y diferencias (Gregory-Newton).

Fórmulas para interpolación equidistante ^^^B x 0 1 2 3

0 1 4 9
Si x^, - X; = h para todo i , y x = xn + p h, la fórmula de Newton toma^^^^B y
la forma: ^^^^B

,, r
r f v l n n ) —\
y P(P-D-(P-JA
+D' f
í f
i h m+ '
, + 1 p ( p - l ) . . . ( p -Pmm+) Jr if/ E \B ,t^^B Newton
^ P ) ° H j! ° (m+1)! ^ ^^^H

Rsta fórmula ln nhtpnpmns a partir H<= la rlp NIpwtrm ci r>Kcpr^í.m^c qiií> f- ^^^^B X y
ra una malla de nodos equidistantes es válida la siguiente igualdad: ^^^^H - 0 0

flx X l - A j f i . H • 1
f[x,,..., V) ]- ,¡tí , ^H 12
1
4
3

5
1
1
0

<íi arlrvntarnni; 1^ nntzrinn- ^^^^^m


^^^^^^^^^B Q
9

P P(P- O... ( p - j + i) Q(x)=x + x ( x - l ) = -


( . )=
250 Análisis numérico. Primer curso Aproximación o ajuste de fundones 251

Gregory-Newton
n
l'or lo tanto: 8¡ (x;) = -
n (x, - Xj)
Y entonces la Fórmula de Lagrange asume la forma:
0
1
1 2
JL /
r*
3 0
4 2 Utilizando la Fórmula de Lagrange debemos efectuar todos los cálculos
5 cada vez que deseemos calcular un Q(x), mientras que las Fórmulas de New-
9 ton nos permiten calcular los coeficientes del polinomio interpolador, lo que
las hace preferibles si debemos evaluar varias veces dicho polinomio.
Si x = = obtenemos:

P(P-1) Fórmula de interpolación de Hermite


Q(x) = O + p + 2 = p2 = x2
2!
Cuando conocemos una ó más derivadas en los puntos de interpolación
podemos usar una generalización de la Fórmula de Interpolación de Newton.
Para lograrla definimos las diferencias divididas en valores coincidentes de
Fórmula de interpolación de Lagrange los argumentos por medio de un paso al límite; por ejemplo:
Podemos expresar la solución al problema general de interpolación de la
siguiente forma, conocida como FÓRMULA DE INTERPOLACIÓN DE LA- f(x) -
f[x 0 , x,,] = lim f[x , x()] = lim = f '(x0) .
GRANGE: x~>x 0 X->XQ X -

Aunque no haremos la demostración formal de la validez de la fórmula de


Q(x)= ^ f j S j í x ) , Hermite, veremos un caso particular para inducir el resultado general.
Construyamos ahora la tabla de diferencias divididas de la siguiente tabla
donde 8¡(x) es un polinomio de grado m que satisface las siguientes igual- de valores:
dades:
(x 0 , f 0 ) , (x¡ , f,) , (x, + h , f(x, + h)):
f O , si i * j
8'(xP = 6 ijH l , s i i = j Í = 0,l,...,m
252 Análisis numérico. Primer curso Aproximación o ajuste de fundones 253

EJEMPLO 8.3
Calcular un polinomio de grado menor ó igual que 3 para el cual:

Q(0) = O , Q'(0) = 1 , Q(l) = 3 , Q'(D = 6.


x, + h f(x 1
Formemos entonces el siguiente esquema en diferencias divididas:
Siendo el polinomio interpolador:
0 0
Q(x ; h) = ffl + f [x0 , x,] (x - x0) + f [x 0 , x, , x, + h] (x - x0) (x - x,).
i
,0 0 2
En este caso es inmediato comprobar que tomando límite para h -> O, rej
3
sulta:
1 3 3
6
) = f0 + f [ x 0 , x , ] ( x - x ^ + f t x o . x , ,x,] ( x - x 0 ) ( x - x , ) ,
1 : 3
y las diferencias divididas resultan de la tabla:
Entonces Q(x) = O + x + 2 x x + x x (x - 1) = x3 + x2 + x . t/
x
f[ XQ , XT ]
X1 fi f[ x0 , Xi , x, ]
f[ XT , XT ] Método de Neville
X1 fl
Si vamos a utilizar valores de una tabla para calcular un único valor del po-
en donde en lugar de f [ x , , x , ] colocamos f'(x,). linomio interpolador resulta razonable pensar que un algoritmo como el de
Este proceso puede generalizarse: Si queremos que el polinomio interpo Newton que primero calcula los coeficientes del polinomio interpolador pue-
lante tenga derivada primera y derivada segunda dadas en cierto punto x¡, ar- de no ser el más eficiente; por otro lado si utilizamos el algoritmo de Lagrange
maremos la tabla de diferencias divididas en la parte que corresponde a x de y la aproximación obtenida no nos satisface, agregar un punto a la malla sig-
la siguiente forma: nifica hacer todos los cálculos nuevamente; Un algoritmo eficiente y al que se
le pueden agregar puntos sin tener que recalcular los valores encontrados has-
ta el momento lo provee el Método de Neville.
f[x¡,x¡] Sea la tabla de valores {x,,^}^,, y llamemos Q n 0 n l nk (x) al polinomio
Í '¡ f[x¡,x¡,x¡] que interpola los puntos {x ni , f ni }]!„ de la tabla dada;
N f[x,.x,]
Y. i
\e en lugar de f [x¡, x¡, x¡] colocamos La siguiente proposición fundamenta el Método de Neville:
Si i * j con i , j < m , el polinomio Q(x) definido como:
2!
254 Análisis numérico. Primer curso Aproximación o ajuste defunciones 255

Los valores interpolados son dados por la función f(x) ~x2, y por eso la
(x-x,)Q 0 > 1.....M (x)
Q(x) = 3
e u arta columna de la tabla ya nos da exactamente f( —),
2
interpola todos los puntos de la tabla { x¡, f, } i=0 .
Algoritmo de Neville
Esta proposición se verifica simplemente reemplazando por los x¡ de la in.i
( calcula Q( x ) en y 0 )
lia , y observando que Q(x) es un polinomio de grado menor o igual que ni
comenzar
Para aplicar en forma eficiente este resultado se arma una tabla de l.i M entrada: m , x , x¡, f¡, i = O , ..., m ;
guíente forma: para i desde O hasta m hacer y¡ = f¡ finpara( i ) ;
para j desde 1 hasta m hacer
para i desde O hasta m - j hacer
f(x¡ y, = ( ( x - x¡) yi+1 - ( x - x i + j ) y.)/( x¡+j - x¡)
finpara( i)
xo finpara( j)
salida: y0 ;
X1
fin
Xo 23

Interpolación inversa
En la práctica se presenta comúnmente el problema de aproximar una raíz
Es importante observar que el primer elemento de cada columna es una ile una función de la que sólo conocemos una tabla de valores { x¡ , f¡ }¡™ 0 , ó
aproximación al número buscado; si la aproximación resulta insuficiente po-1 sea que nos interesa aproximar el valor de la función inversa de f en O
demos agregar un valor a cada columna sin tener que recalcular los obtenidos (f'(0) ).
anteriormente.
El problema se resuelve evaluando el polinomio que interpola una canti-
dad de puntos conveniente de la tabla { f¡, x¡ }™0 , en cero, y en este caso resul-
EJEMPLO 8.4 la apropiado el Algoritmo de Neville al que le daremos como datos los f¡ en
lugar de los x¡, los x¡ en lugar de los f¡ y O en lugar de x.
Dada la tabla de valores del Ejemplo 8.2 calcular Q( — ).

0 0 3/2 9/4 9/4 Comentarios generales


1 1 5/2 9/4
La interpolación tiene interés como medio de derivar fórmulas para va-
2 4 3/2 rios propósitos.
3 9
256 Análisis numérico. Primer curso Aproximación o ajuste de fundones 257

Si diferenciamos o integramos el polinomio interpolante, podemos oí.


tener fórmulas útiles para calcular numéricamente derivadas é E (i - 1) + 2 (i - 1) = I (3 i - 3) =_ m (m - 1),
<=i i=1 2
respectivamente.
La interpolación con polinomios de grado mayor que uno es de intcn y este número es sensiblemente menor que las 2 m2 + 3 m operaciones nece-
práctico, ya que una tabla construida para usar este tipo de interpolación puc sarias para desarrollar el algoritmo de IV.3; esto nos permite esperar mayor
de hacerse mucho más pequeña que una para la cual la interpolación liiu-.i! estabilidad para el algoritmo de Newton.
sea suficiente. Por otro lado el cálculo de los coeficientes aplicando el Método de Grego-
Por ejemplo, una tabla de la función ln(x),con 1< x< 5, dada a 5 dai i y-Newton para el caso de poseer una malla de puntos equidistantes implica:
males, debe contener 450 valores de la función para obtener aproximad.i
mente 5 decimales si deseamos interpolar linealmente; pero sólo necesita m restas para el cálculo de la primera columna de diferencias, ( m - 1 ) restas
mos 100 valores si usamos interpolación cuadrática. para el cálculo de la segunda, y así decreciendo hasta la única resta necesaria
para el cálculo de la última diferencia, lo que da un total de 0.5 m (m + 1)
En computadoras digitales es común el uso de tablas ralas e interpolación
operaciones. Este valor es menor que el obtenido para Newton aún para valo-
de grado mayor que uno para evaluar funciones de cálculo difícil, tratando ili
res de m relativamente pequeños.
optimizar la relación entre el uso de memoria y el número de operaciones.

Propagación de errores inherentes en el Método de Gregory-


IV.9 Propagación de errores en la interpolación Newton

Vamos a considerar la propagación de los errores inherentes en los valores


A pesar de la importancia que tiene el estudio de la propagación de errores de la función a partir de los cuales construimos la tabla de diferencias y calcu-
inherentes y de redondeo en los distintos métodos de interpolación, anali/.i lamos los coeficientes del polinomio interpolador.
X -X
remos el tema con cierto detenimiento sólo para el caso de una malla form;i Generalmente la propagación del error en el cálculo de p = es des-
da por puntos equidistantes (Método de Gregory-Newton); respecto al Méto-
do de Newton para el cálculo de los coeficientes del polinomio interpolado) preciable en comparación a los que vamos a considerar.
sólo diremos que implica menos operaciones que el algoritmo desarrollado
en IV.3 a partir del Teorema 3.2. Sea entonces e¡ el error inherente absoluto del valor de la función en x¡ ;

Observemos entonces que el Método de Newton requiere m divisiones y Resulta entonces la siguiente tabla en diferencias:
2 m restas para el cálculo de la primera columna de diferencias divididas,
( m - 1 ) divisiones y 2 (m - 1) restas para el cálculo de la segunda columna
de diferencias divididas, y así decreciendo hasta las dos últimas restas y la úit i Af0 + Ae0
ma división necesaria para calcular la última diferencia dividida. Tenemos en-
tonces que el total de operaciones necesarias resulta ser: Af, + Ae,
A2 f, + A2 e,
Af, + Ae2
258 Análisis numérico. Primer curso Aproximación o ajuste de fundones 259

Usando el Corolario 6.1 resulta que para el error inherente propagado i p m


Si x es un punto interior a la malla, | ( ) ! < ( , ) y entonces:
soluto del coeficiente k-ésimo del polinomio vale: k k
k k ™ m
| 5( Q(x) ) | < E I ( ) 2k = 3m E
8(A k f 0 )=A k e 0 = (-l) k £(-!)'( . )e¡; k=o k
j=o } }
Si suponemos que: Es evidente que estas cotas son groseras, pero de todos modos, nos alertan
acerca del mal condicionamiento del problema de interpolación.
| fj | < F y | e¡ | < E para O < i < m , resulta:

v k Propagación de errores de redondeo en el Método de Gregory-


| 8 ( A k f 0 | < i ( ) E < 2k E,

de donde el error relativo para el coeficiente k-ésimo del polinomio de Gi| Consideremos primero el efecto de los errores de redondeo en el cálculo
gory-Newton resulta: de los coeficientes del polinomio interpolador, o sea en las diferencias:

E F Ak f ( ) , k = O,..., m.
er | < 2k -^ < 2k r,
|cj F
Definamos ahora:
siendo r una cota para el módulo de los errores inherentes relativos.
A% = Ak f¡ + 8(Ak f¡) , Mk = max { | Ak f, | } y Ek = max { | 8(Ak f¡) | },
De acá deducimos que para el problema de calcular los coeficientes del ] Í ¡

linomio interpolador de Gregory-Newton resulta:


considerando en el 8 sólo los errores de redondeo; entonces:

C = 2m — , siendo C = min | ck
C k Ak+1 f, - (A k f1+l - Ak f,) (1 + ej , con | e k . | < u , ó sea:

Vemos que el Problema de Interpolación es en general mal condicionadc A k+1 f¡ - (A k f i+! + 8(Ak f i+1 ) - Ak f¡ - 8(Ak f,)) (1
Veamos ahora de acuerdo a estos resultados, cual es la incertidumbre en i
valor de Q(x) debida a la propagación de los errores inherentes en los vale y despreciando los términos de orden superior a uno:
res de la función de partida:
A k + i f_ _ A k + i f¡ + Ak+i f¡ £ki donde resuita.

| 5 ( Q ( x ) ) | < E + S|(. ) | 2 k E ; 8(Ak+1 f,) = Ak+1 f, e k . + 8(Ak f i+1 ) - 8(Ak f,),


k=l K

y tomando módulos y acotando:


260 Análisis numérico. Primer curso Aproximación o ajuste de fundones 261

Estimaciones experimentales de los errores propagados


Ek+1 < Mk+1 u + 2 Ek , k = O , ... , m-1;
Sabemos que cualquiera sea el método de interpolación con intervalos
Consideremos M - max { Mk } y observemos que E0 = O, E, < M n, .
k equidistantes, el error de discretización es menor en el centro de la tabla y cre-
ic considerablemente en los extremos de la misma .
Ek < M u + 2 Ek,, < M f i + 2 ( M n + 2 E k _ 2 ) < M u + 2 k_2
Al hacer las deducciones para el Método de Newton no impusimos condi-
< M n + 2 M ¿i + 22 M u + ... + 2k-' M (j. < (2k - 1) M u. ciones respecto al orden en que armamos la tabla, por lo que es evidente que
reordenándola en cualquier forma obtendremos siempre el único polinomio
Estudiemos ahora la expresión para evaluar Q(x): interpolante; podríamos por ejemplo armar la tabla de la siguiente forma:

Xm - fm

xm , L,
y suponiendo que los errores de redondeo propagados por los combinatorios
y la suma son despreciables en comparación a los errores de redondeo prop.i
gados por las diferencias, resulta: Xm ' X m-l ' "• ' X

m p
8(Q(x) ) = X ( ) 6(Ak f 0 ) , y entonces aproximadamente: f[ x, , x0 ]
k— 1 K
E,

k=l y entonces armar el polinomio interpolante como sabemos:


Si x es interior a la malla, ó sea p < m, resulta:
p(x) = f m + f[xm , xm.,] (x - xj + f[x m , xm., , xm.2] (x - xj (x - xm.,) +...+
m
8( Q( x ) ) | < (2k - < ( 3m - 1 - (2m - Mu + f íx m ,..., xj (x - xj (x - x m .,) ... (x - x0) ,

o sea: | 6( Q(x) ) | < (3m - 2m) M u y dada la simetría de las diferencias divididas esto no es más que tomar de la
tabla que antes habíamos armado las diferencias de la diagonal inferior con
Como estos resultados hablan del mal condicionamiento del problema f los nodos correspondientes.
del algoritmo de interpolación, es aconsejable en problemas de cierta magni- Esta forma se denomina Fórmula de Newton de diferencias divididas ha-
tud, hacer perturbaciones experimentales, y resolver el algoritmo con distin- cia atrás.
tos valores de (0., para hallar experimentalmente la condición del problema
la del algoritmo. Debe quedar claro que a pesar de ser distintas las diferencias divididas (sal-
vo la última) el polinomio es siempre el mismo.
Veremos ahora con un ejemplo qué ocurre si los errores inherentes en los
datos de la tabla merecen ser considerados.
262 Análisis numérico. Primer curso Aproximación o ajuste de fundones 263

1 Respecto a la propagación de errores de redondeo un análisis del mismo


Consideremos la íiinción f(x) = en el intervalo [-1 ,1] y sea p(x) el tipo nos permite observar algunas diferencias respecto a los errores antes ana-
l+x¿ lizados.
i
polinomio interpolante en la malla x¡= -1 + i — , i = O ,..., 32 , calculado Utilizando la misma función de antes, ahora sin perturbar los valores de la
con 32 dígitos; 16
tabla, resolvamos el problema de interpolación trabajando con i 6 dígitos, y
Perturbemos los valores de la tabla con valores aleatorios acotados poi sea r(x) el polinomio calculado; sea p(x) el polinomio antes calculado con
10"8 y sea q(x) el nuevo polinomio interpolador; Podemos comprobar que 32 dígitos;
Obtenemos en este caso los siguientes valores:
max { | f(x) - p(x) | } = 2.7 10 9
-1<X<1

max { | f(x) - r(x) | } s 6 10'5


max { | q(x) - p(x) | } = 2.7 10'3, . -1 < x < 1

max { ! f(x) - p(x) | } = 2.7 109


-1 < X < 1

lo que en principio confirma las conclusiones que obtuvimos de nuestros cálcu


los para Gregory-Newlon, respecto a la inestabilidad del problema de interpo Nuevamente esto está de acuerdo con nuestras consideraciones acerca de
la inestabilidad del algoritmo de cálculo.
lación.
Al granear f(x) - p(x) observamos claramente el Fenómeno de Runge:
Sin embargo un análisis más detallado nos permite ver que existe un feno
meno similar al del error de discretización: el error en el centro del intervak
es mucho menor que en los bordes; observemos un gráfico de q(x) - p(x):
-9
2. 10
-9

0.002

0.001
A l
-0.5
" 0.5
A 1 1
-9
-1. 10
-9
-0.5 0.5 -2. 10

-0.001 1
-0.002

Figura 9.2

Figura 9.1
Si graneamos p(x) - r(x), o sea el valor del error de redondeo propagado
en la aproximación de f(x), observamos lo siguiente:
Podemos decir que en general en el centro de la tabla el error inherente pro
pagado es menor y el problema numérico es más estable que en los bordes.
Aproximación o ajuste de funciones 265
264 Análisis numérico. Primer curso

Vemos que en este caso la fórmula produce mejores resultados para un x


en la parte inferior de la tabla.
0.0004
De todo lo visto podemos concluir que salvo casos especiales, la Fórmula
0.00002 de Newton de diferencias divididas hacia adelante nos permite obtener bue-
nos resultados para valores de x en la parte superior de la tabla y no muy cer-
-0.5 0.5 canos al borde de la misma, y la Fórmula de Newton de diferencias divididas
-0.0002
hacia atrás nos permite obtener buenos resultados para valores de x en la
parte inferior de la tabla y no muy cercanos al borde de la misma.
-0.0004

Figura 9.3 IV. 10 Extrapolación Repetida de Richardson

Si usamos los coeficientes de la diagonal superior para armar el polinomii Supongamos querer conocer un valor a 0 . Es para nosotros familiar el calcu-
interpolante, los errores de redondeo son mucho más importantes cuando ' lar cierto valor F(h) como aproximación a a n , sabiendo que la aproximación
está cerca de los valores inferiores de la tabla. mejora al disminuir el valor de h; más aún, F(h) -> a() cuando h -> 0.
Si utilizamos la Fórmula de Newton de diferencias divididas hacia atrás, < Generalmente el trabajo para calcular F(h) aumenta notablemente al ten-
sea, usamos las diferencias divididas de la diagonal inferior para construir un der h a cero. Además los errores de redondeo suelen imponer un límite prác-
nuevo polinomio interpolador r(x), la gráfica de los errores de redondeo m tico al valor mínimo de h que puede elegirse.
metidos al aproximar f(x) con este polinomio ( p(x) - r(x)), es la siguiente:
La Extrapolación Repetida de Richardson es un Método Numérico
que nos permite reducir los errores de discretización sin disminuir el
-6 paso h a límites prohibitivos desde el punto de vista de los errores
6. 10
-6
de redondeo.
4. 10
-6 Veremos que si tenemos algún conocimiento acerca de como se comporta
2. 10
el error de discretización F(0) - F(h) cuando h -> O, sabremos si estamos en
-1 -0.5 0.5 1 condiciones de aplicar Extrapolación de Richardson.
-6
-2. 10
Por ejemplo si:
-6
-4. 10

-6. 10 F(h) = a() + a, hp + O(h r ) , con r > p , podremos estimar a0 con un error
de orden O(h r ) con sólo computar F para dos longitudes de paso distintas,
Figura 9.4
h y q h, con q > 1.
(Observemos que a0 es el valor exacto que buscamos)
266 Análisis numérico. Primer curso Aproximación o ajuste de fundones 267

Haciendo los dos cálculos mencionados obtenemos el sistema: F k (h) - Fk(q h)


F,(h) = F(h) y
F(h) - a0 + a, hp + 0(h r ) - k ^
vale:
: F(q h) = a0 + a, (q h)p + O(hr)
F n (h) = an + a n <"> h"ín)
Observemos que un O(qr h r ) es un O(h r );
Notemos que h p(n) disminuye al aumentar n, lo que nos permite asegu-
Multiplicando la primera ecuación por qp , y luego restando miembro .1
rar que cuando n aumenta, F n (h) aproxima mejor a afl.
miembro, podemos despejar F(0) que resulta ser:
La demostración se obtiene fácilmente usando el principio de inducción
F(h) - F(q h) completa.
F(0) = a0 = F(h) + —¡ + 0(hr).
qP- 1
EJEMPLO 10.1
Vemos entonces que con F(h) y F(q h) podemos aproximar F(0) con Calcular f '(3), siendo f(x) = ln(x); elegir h() = 0.8
una precisión mayor que la que nos da cada una de ellas por separado; esi<
proceso se denomina Extrapolación de Richardson, y puede aplicarse reí li-
ln(3 + h) - ln(3 - h)
radamente. Usaremos F(h) = h=
2h
Supongamos conocer la forma de una expansión más completa de F(h I
en potencias de h, (por ejemplo la expansión de la fórmula ( 7.1 ) utilizad.! Si calculamos F(h) con 16 dígitos y hacemos variar a m desde O hasta
para el cálculo de la derivada usando diferencias finitas centradas); en este i ,i 60 obtenemos una tabla de valores de la que mostramos sólo algunos:
so podemos repetir el uso de la Extrapolación de Richardson. Este proceso i-.
especialmente simple cuando las longitudes de los pasos forman una sene m F(h)
geométrica:
9 0.333333363474182
, ho ho . . .
n 0 , — , —- , ...; en este caso tenemos el siguiente resultado: 19 0.333333333401242
q q
29 0.333333313465118
Teorema 10.1
Supongamos que: 39 0.333328247070312
00
49 0.312499999999999
F(h) = atl + E a¡ hp(" , con O < p(i) < p(i+l),
59 0.000000000000000
entonces si definimos inductivamente:
268 Análisis numérico. Primer curso Aproximación o ajuste de funciones 269

Observando todos los valores vemos que la mejor aproximación se obi u i n Ahora vamos a escribir un algoritmo muy simple para aplicar Extrapo-
cuando m = 16 ( h - 0.000012207... ) y resulta ser: lación de Richardson a una tabla de valores ya definida que entra como dato.

0.333333333328483 m: cantidad de elementos de la tabla.


q: relación entre los valores de h que se usaron para construir la tabla.
Vamos a efectuar los cálculos utilizando Extrapolación de Richardson: u: tabla de valores.
Observemos primero que: p: tabla de potencias sucesivas de h en el desarrollo del error.
r ' : (transpuesta de r ) matriz de salida. ( rn n es la mejor aproximación )
P + I ) (3)
F (h) = P=o h 2p ; ó sea p( n ) = 2 n; Algoritmo de Richardson
(2p +
comienzo
si q = 2 , entonces: entrada: m, q, ( u¡), ( p¡), i = 1 , . . . , m;
para i = 1,..., m hacer
qp(k) _ ] _ 22k - i y entonces obtenemos la siguiente tabla: comienzo
ri,¡ = u¡;
fin( i)
F^h) A/3 F 2 (h) A/15
para j = 2,..., m hacer
comienzo
0.8 0.3415898164800435
0.4 0.3353299832433492 0.3332433721644510 para k = j,..., m hacer
0.2 0.3338284815613068 0.3333279810006260 0.3333336215897043 comienzo
0.1 0.3334568724933618 0.3333330028040467 0.3333333375909414 *i* '= rHA+í^u-'W-i^^""- 1 )
0.05 0.3333642026759187 0.3333333127367710 0.3333333333989526 fin( k)
0.025 0.3333410497042344 0.3333333320470063 0.3333333333343553 fin(j)
0.0125 0.3333352623657770 0.3333333332529579 0.3333333333333547 salida: r ' ;
0.00625 0.3333338155876753 0.3333333333283080 0.3333333333333313 fin
Dejamos como ejercicio construir un algoritmo que no utilice la matriz r,
Observemos que la aproximación obtenida en la tercer columna de la I i 1.1 dejando los valores calculados sobre el mismo vector u.
con m = 7 es mucho mejor que la mejor aproximación obtenida sin extrapo
lación.
Como los errores en la tercer columna son del orden de h6, podemos pi <•
decir que salvo errores de redondeo el último valor obtenido tiene un error tic
discretización del orden de 6 10"14;
Como f '(3) = 1/3, resulta f '(3) - F3(0.00625) = 0.2 10'14, lo que nos pu
mite verificar la bondad del método y de la expresión para el orden del emití j
Aproximación o ajuste de funciones 271
270 Análisis numérico. Primer curso

5) Utilizando la Fórmula de Lagrange encontrar el polinomio de grado 3 que pasa


Ejercicios por los siguientes puntos:
X 0 1 2 4
1) Dada la siguiente tabla de valores: 2 5
f(x)1 1 1
x 1 2
f(x O 2 12 21 6) Hallar los valores de Vl.01 y Vi.28 a partir de la siguiente tabla, utilizando
Calcular f( 3) utilizando la Fórmula de Newton, usando: interpolación de Newton. Garantizar 3 dígitos significativos.
a) { X ¡ } = {1, 2, 4} y luego {x¡} = { 2 , 4, 5 } . x 1.00 1.05 1.10 1.15 1.20 1.25 1.30

b) Todos los puntos, ó sea por interpolación cúbica. (x) 1 ' 2 1.00000 1.02470 1.04881 1.07238 1.095441.118031.14017
c) Comparar los resultados de a) y b). 7) Programar el cálculo de los coeficientes del polinomio interpolante que surge de
d) Estimar el error de discretización para los valores obtenidos en a), aproxi la Fórmula de Newton.
mando A( x ) por la diferencia dividida correspondiente obtenida en b).
8) Encontrar un algoritmo para evaluar el polinomio interpolador de Newton mini-
2) Dada la siguiente tabla de valores: mizando las operaciones.
x 0.1 0.2 0.4 0.8
9) Calcular el sen( 0.390736) conociendo la siguiente tabla:
f(x; 64987 62055 56074 43609
x sen( x )
Calcular f( O) utilizando la Fórmula de Newton con todos los valores de la tabla.
0.390 0.380188415
Notemos que estamos ante un caso de extrapolación.
0.391 0.381113134
0.392 0.382037472
3) Utilizando la Fórmula de Newton encontrar el polinomio de grado 3 que pasa
0.393 0.382961427
por los siguientes puntos:
Utilizar la Fórmula de Gregory-Newton para obtener un polinomio interpolante
4 6 8 10
de grado 2.
f(x) 1 8 20
10) Hallar un polinomio Q( x ) de grado 3 , tal que:
4) Utilizando la Fórmula de Newton encontrar el polinomio de grado 4 que pasa
por los siguientes puntos: Q(0) = 0, Q'(0) = 1 , Q(1 ) = 3 , Q'(1) = 6.

1 2 3 4 5 11) En base a la siguiente tabla:


f(x) 1 -1 1 -1 1 X 0 1 3
f(x) -1.201 0.8204 2.253
272 Análisis numérico. Primer curso

a) Trabajando en [G(10 ,4 , 2), rd] construir el polinomio interpolante P,,(x) CAPÍTULO V


que surge de la Fórmula de Newton. Luego reescribirlo de la forma:
2
Integración y diferenciación numérica
P,(x) = I a¡ x'
i=0

b) Demostrar que el error de redondeo propagado durante las operaciones no


cesarías para evaluar Pn(2) es algo menor que el propagado al evaluar P,(2),

12) Indicar las diferencias y similitudes conceptuales entre "ajustar una curva" o
"interpolar".

V.l Reglas simples de integración

El problema de la integración numérica consiste en calcular una aproxi-


mación a

I = Jf(x)dx,
a

usando valores de f en puntos de una malla contenida en [a , b]. Veremos


primero una serie de métodos que utilizan puntos equidistantes, y para ellos
utilizaremos la notación:

b-a
n= x¡ = a + i h , i = O,..., n , entonces XQ = a , y xn = b

Veremos ahora algunas reglas simples de integración.


Una forma obvia de resolver el problema consiste en aproximar f(x) por
una función simple, fácilmente integrable. Los dos métodos siguientes están
basados en la idea de aproximar a la función f(x) por medio de funciones li-
neales a trazos.
Integración y diferenciación numérica 275
274 Análisis numérico. Primer curso
n-
JU
Desacuerdo a la fórmula del error de discretización en interpolación, si lla-
Si llamamos f¡.1/2 = f( x, - - ) , la Regla del Rectángulo se expresa: mamos P,(x) a la función lineal que interpola a f(x) entre x¡., y x¡ resulta:

, n
j f(x) dx = R(h) = h 2 f¡.1/2 (1.1) h

Notemos que este método usa los, valores de f en el punto medio de caí f(x) - Pj(x) - — - (x - x,.,) (x - x,).
subintervalo (x^,,^).
Vamos a estimar el error de discretización de la fórmula ( 1.1 ):
Si ahora consideramos I f"(x) I < M para todo x en el intervalo [ a , b ] ,
n

ED = I - R(h) = 2
i—i
M , siendo
Xj ED= (f(x)-P,(x))dx =
AI¡ = j (f(x) - f¡_1/2 ) dx , y haciendo un desarrollo de Taylor:
xi i
con | A 1¡ | < M - - , y entonces para la Regla del Trapecio,
(f' (x - x )+ (x - x ) 2 ) dx
b-a
•Mh2.
12
y teniendo en cuenta que la integral del primer término es nula, resulta, sil
consideramos
Vamos a deducir ahora la Regla de Euler-Mc Laurin:
h3
| f"(x) | < M dentro del intervalo de integración: AI¡ < M — ; Para aproximar la integral de f(x) sobre el intervalo [a , b] , a la que de
24
ahora en adelante llamaremos I, vamos a suponer que F(x) es una primiti-
Sumando de 1 a n , y teniendo en cuenta que n h = b - a , resulta parí va de f(x), o sea:
la Regla del Rectángulo:
F'(x) = f(x), y que f(x) es suficientemente derivable, entonces:
b-a
| ED | < M h2
24
« (i + 1)!
La Regla del Trapecio queda definida por la fórmula:
y aplicando esta identidad a los puntos de la malla resulta:

í f ( x ) d x = T (h) = h ( -^- + Z f , ) , (1.2)


a 2 >=1

que es el resultado de integrar en [a , b] una interpolación lineal a trozos i


la f(x).
Integración y diferenciación numérica 277
276 Análisis numérico. Primer curso

Vamos a determinar los c¡ de forma que se anulen los paréntesis del últi-
mo miembro:

1 1 1
ci ' Cl 12 ' Cs ' c/» ~~- ' cs " > C6
720 30240

Observemos que los coeficientes se obtienen de la relación recursiva:


=
y sumando estas identidades obtenemos:
n-l
(n + l)! n! (n-1)! 2!

= F(xn)-F(x0) =
Di ¡=o j=o (i + 1)1 Con los c¡ obtenidos de esta forma resulta:

Razonando de la misma forma para f'(x), f"(x),..., obtenemos: n-1 "o

I = E f( Xj ) h - c, h ( f(b) - f(a) ) - E c,+1 hi+1 (F (b) - f" (a) ) =


\ n-1 ft k+i)
J f k > ( x ) d x = f k - ' H x n ) - f k - ' > ( x 0 ) = E E -i llh'+'= E E - " f(a) + f(b) nv' "
a H> '=0 ( i + 1)! ¡=0 H> ( Í + 1)! =h ( + E f( X j )) -E c,+1 h'+1 (^ (b) - P" (a) ) ;
2 )=' ¡=i
Si ahora sumamos a la primera ecuación la segunda multiplicada por c, h
la tercera multiplicada por c 2 h 2 , ... , la k-ésima por c k _, h k ~' , obtenemos: En el primer término del último miembro reconocemos la regla de los tra-
pecios, resultando:
I+E
:_/i
c¡. , h i+1 (f« (b) - f» (a) ) =
~ 1 ri

("

E f(xp h + Ef'(Xj) - + ...) + c, h ( E f'(x,) h + E f"(Xj) - + . . - )


21 Puede demostrarse que salvo c,, los coeficientes impares se anulan y en-
n-, tonces sintetizando, la Fórmula de Euler-Mc Laurin resulta:
+c2h2(Ef'(x))h+Eft3)(x)-T- c3h3(Eft3)(xi)h+Efí4)(x¡) —
j=o ' j=o '21 j=o j=o ' 2 1
1= T(h) + E c 2 l ( f 0 ( 2 i - 1 ) - f n ( 2 i - ' > ) h 2 ' . (1.3)
n-1 j n-1 l e ""'
... )+ ... = Ef(x¡) h + ( — + c,) Ef'(X;) h2 + ( 1—+ c2) E f"(Xj) h3 + ...
j=o 21 j=o 3! 2! j=o Observemos que este resultado nos permite aplicar Extrapolación Repeti-
da de Richardson al Método de los Trapecios, obteniendo en primera instan-
cia, el Método de Simpson:
278 Análisis numérico. Primer curso Integración y diferenciación numérica 279

Dividamos el intervalo [a , b] en una cantidad par de subintervalos, < > siendo ED una cota para el error de discretización, podemos pensar
b-a que dividiendo p veces el subintervalo h tendremos un error del or-
que n debe ser par, y calculemos T(h) y T(2h) ( h = ; los resultado-, den del propuesto.
n b-a
3) Primeramente debemos evaluar el integrando en los 2P puntos
de IV.6 nos permiten afirmar que:
de la malla más fina, ó sea en:
T(h) - T(2h)
S(h) - T(h) (1.4) h b-a
22-l ^Xo + i V \=y . « < i < -^-

es una aproximación a I de orden 4, llamada Fórmula de Simpson.


4) Finalmente armamos una tabla como la del Ejemplo 10.1 del Capítulo
Si definimos: IV, o sea:

A A
SP= 2 Í 2 l , y SI == X f 2 . , , R,(h) = T ( h ) R2(h)+
3 15 63

reemplazando en ( 1.4 ) T(h) por su valor, obtenemos la expresión más co-


nocida para la Fórmula de Simpson:
T(h,) R2( ^ )

S(h) = — (f 0 + f n + 2 SP + 4 SI) (1.5) T(h 2 ) R 2 ( h2 ] R3( h2 )

Si seguimos aplicando Extrapolación de Richardson a ( 1.5 ), y luego al


resultado obtenido, y así de seguido, obtenemos un método muy interesante
llamado Método de Romberg.
Vamos a hallar el algoritmo utilizado en la aplicación de éste método:
siendo para R^hj), h¡ = — , A = Rj.,(hj) - R-.,^.,), y el divisor de
1) Generalmente el valor de q se toma igual a 2 , o sea, se aplica el meto
do de los trapecios primero con un intervalo de longitud h, y luego con A : 2 2 j - 1 , con j'= 1,2,..., i
intervalos de longitud mitad que el anterior.
2) Para decidir cuantas subdivisiones del h original debemos hacer, ob EJEMPLO 1.1
servemos que el error en el método de los trapecios es de orden 2, y
cada vez que extrapolemos el orden del error aumentará en 2, por lo Utilizando el Método de Romberg calcular aproximadamente:
tanto si:
sen(x)
dx
280 Análisis numérico. Primer curso Integración y diferenciación numérica 281

Vamos a operar con 6 dígitos, por lo tanto no será razonable pretendí V.2 Algunas dificultades y formas de solucionarlas
un error de discretización menor que 10"6; si dividimos el intervalo dado 1 1 «
veces, tenemos que el error de la última extrapolación será del orden de
0.8 La medida del éxito en el uso de la Extrapolación Repetida de Richardson
(—) 8 = 10~8; trabajaremos entonces con h = 0.8,0.4,0.2, y 0.1; comencemo depende de cuan bien pueda ser aproximado localmente el integrando por un
polinomio. A menudo es ventajoso investigar si podemos transformar o mo-
entonces por evaluar el integrando de 0.1 en 0.1: dificar el problema dado haciéndolo más adecuado para integrar numérica-
mente.
sen (x)
Si el integrando se hace infinito en un punto, esa modificación es nece-
X
X saria. Incluso, si alguna derivada de bajo orden se hace infinita en un punto
dentro, o cerca del intervalo de integración, alguna modificación es aconse-
0 1.000000 jable. No es infrecuente que un paso ubicado cerca de un punto donde, por
0.1 0.998334 ejemplo, la derivada del integrando es infinita, dé un error mayor que el de
0.2 0.993347 todos los otros pasos acumulados.
0.3 0.985067 Presentaremos ahora algunas situaciones comunes, y las posibles vías de
0.4 0.973546 solución. Consideraremos primero algunos casos en donde el integrando tie-
0.5 0.958851 ne una singularidad o es "casi singular".
0.6 0.941071
0.7 0.920311
EJEMPLO 2.1
0.8 0.896695
(Sustitución)

Ahora construyamos la tabla para efectuar las sucesivas extrapolaciones: t e j


I = J ,— dx
o Vx
A A A
h R1(h) = T(h) Ri(h) + - R2(h) + — R3(h)+—
3 15 63 La función se hace infinita en el origen. Tomando x = t2 resulta:

0.8 0.758678
- I = 2 J e' dt ,
0.4 0.768757 0.772117

0.2 0.771262 0.772097 0.772096 y ésta integral puede ser tratada sin dificultad usando por ejemplo el Método
de Romberg.
0.1 0.771887 0.772095 0.772095 0.772095 á

R3(0.1) = 0.772095 es correcto con todos sus decimales.


Integración y diferenciación numérica 283
282 Análisis numérico. Primer curso

EJEMPLO 2.2
la regla del trapecio o la del rectángulo dan resultados sorprendentemente
buenos si integramos sobre el intervalo [-R, , R2] para R, y R2 suficiente-
(Integración por partes) mente grandes, suponiendo que f(x) y sus derivadas de bajo orden sean
pequeñas para x fuera del intervalo [-R,, R 2 j. Podemos también intentar una
' e" ' sustitución que, por ejemplo, transforme el intervalo (O , °°) en el (0,1),
I = | ~p dx = 2 e - 2 j Vx ex dx,
o "Vx o 1
como por ejemplo t = . No obstante estos casos suelen introducir
1+x
y la segunda integral puede resolverse numéricamente; puede verse que M-I
terando el procedimiento obtenemos cada vez integrales más estables desde d singularidades en el integrando.
punto de vista numérico.

EJEMPLO 2.3 V.3 Otros métodos de integración numérica


(Problema de Comparación Simple)
Sea w(x) una función dada, no negativa e integrable. Si queremos inte-
ee"
i = 0.1Jr —
X
dx
3
grar f(x) w(x) en un cierto intervalo, podemos proceder de la siguiente for-
ma: elegir una malla de (m+1) puntos en [a , b] ( { x, }™0 ) é interpolar
sobre ella a f(x); Luego realizamos la aproximación:
El integrando se hace infinito cerca del límite inferior; la idea es separar l.i
singularidad en una integral que podamos resolver analíticamente: b b b m -
I = J w(x) f(x) dx = J w(x) P(x) dx = J w(x) £ f. S¡ (x) dx =

— iex-l-x --
- J - dx + | -— dx ¡ w(x)8,(x)dx =B 0 fm, (3.1)
1-0

B¡ - } w(x) 6¡ (x) dx ,
La primera integral podemos calcularla analíticamente, y la segunda nu-
méricamente.
siendo 8¡(x) el factor de f¡ en el polinomio interpolador de Lagrange.
Es común encontrarse con intervalos de integración infinitos. Para inte-
grales de la forma: Evidentemente esta fórmula es exacta si f(x) es un polinomio de grado
menor o igual a m. También es claro que los coeficientes de ( 3.1 ) no depen-
den de f(x). Si nos proponemos resolver el problema para el intervalo de inte-
I = Jf(x) dx , gración [-1 , 1] tomando la malla de puntos equidistantes resulta que los B¡
dependen sólo de m y pueden ser tabulados. En la práctica estos coeficientes
se calculan fácilmente usando el método de los coeficientes indeterminados.
284 Análisis numérico. Primer curso Integración y diferenciación numérica 285

Cuando el intervalo es el [-1 , 1], los puntos de la malla son equidisl.mir Tabularemos estos coeficientes para algunos valores de m:
y la función de peso w es igual a 1, las fórmulas de integración se llaman I < > i
muías de Cotes:
m Ao Al A2 A3 A4 A5 As
1 m 2
I = J f(x) dx =£ A¡ f¡, con x¡ = -I + i h , h =— , 1 4 1
m 2
3 3 3

A¡ = J 8¡(x) dx , y 1 3 3 1
-i 3 ~4~ ~4~
4 4

n (x - x¡) 4
7 32 12 32 7
45" 45 "45" 45 45
8:(X) =
n (x - x)
í L \A--
psi
AJ
'
19 75 50 50 75 19
b 5 144 144 144 144 144 T44
Si queremos aproximar I = J f(x) dx, debemos efectuar el cambio de va
riable: 41 216 27 272 27 216 41
5
420 420 420 420 420 420 420
a+b b- a
x(t) = +— t que transforma el intervalo [ - 1 , 1 ] en el [a , h|,

resultando: Para calcular el error de discretización de la Fórmula de Cotes observemos


que de acuerdo a la expresión para el error en interpolación:
b m
b-a r b - a ^. b - a ^-,
1= J f(x) dx = J f(x(t)) dt = i))A¡= If.A,
a 2 - 1
b-a
2 ¡=o ' '
ED = Í - + 1)1
n ( X -x)
i=n
i=0 IX X¡;

siendo f( = f(x¡) , x¡ = a + i h , h =
m y entonces si | f ím+1) (x) | < M para todo x en [a , b], resulta que para la Fór-
mula de Cotes el error de discretización cumple con la desigualdad:

Iii
M
( m + 1)! a ' ¡=o
í i n (X -
Cuando podemos elegir los puntos de la malla arbitrariamente, existe una
distribución de los mismos que minimiza el valor del error de discretización,
la que se deduce del siguiente teorema:
286 Análisis numérico. Primer curso Integración y diferenciación numérica 287

jrf2m+2)
Teorema 3.1 (Cuadratura de Gauss) ( n (x _ x )
( 3 X
fUm+2) ít\"m; (2m + 2)!
Sea w(x) una función de peso positiva en [ a , b j .
cm puede calcularse aplicando la fórmula a un polinomio de grado 2 m+2
Existe una familia { cp¡(x) }™0 , de polinomios ortogonales asociado. .1
w(x) en [a ,b], tal que si elegimos las raíces de tpm+1(x) (x^x, ,... ,xm) conm
Vamos a ejemplificar esta última afirmación deduciendo la fórmula para
los nodos para aplicar la Fórmula de Cotes:
calcular I G ( I ) y el valor de c,.
b
f b-a v La malla estará formada por las dos raíces del polinomio de Legendre de
1= J f(x)W(x)dX= — ¿V;, grado 2:

esta resulta exacta para todos los polinomios de grado menor o igual a 2 m i I 3 1 1 1
P 2 (x) =— x2 - — , o sea x,, - - —= , x, =
y recibe el nombre de Fórmula de Gauss. ¿, /* VT
Este resultado es comunmente usado en el intervalo [ - 1 , 1 ] y con la (un
ción de peso w(x) = 1. Como 80(x) = y 8,(x) = , integrando resulta:
En este caso los polinomios ortogonales resultan ser los de Legendre, c]iic
A0 = 1, A, = 1, y entonces la Fórmula de Gauss con interpolación lineal
podemos definir recursivamente de cualquiera de estas dos formas:
resulta:
2n + 1
P0(x) = l, P,(x) = x, ..., Pn.,(x),o
- T=
V3 V3

Para calcular el coeficiente en la fórmula del error de discretización to-


mamos:
Vale entonces el siguiente resultado:
f(x) = x4 y la integramos primero utilizando la fórmula de Gauss, y luego
exactamente:
Teorema 3.2
Sea f(x) diferenciable con continuidad hasta el orden (2 m + 2) por
menos. ] I G(1) = — , por otro lado I = — ;
Sea I = J f(x) dx , y llamemos I G(m) a la integral de Gauss sobre la malj 2 2
-i Vemos entonces que: --- = c , 4 ! , de donde c, = 7.4 10"3 y entonces,
formada por las m + 1 raíces del polinomio de Legendre de grado m + en general:
P m+1 (x) (o sea que interpolamos f(x) con un polinomio de grado m),
tonces: I-I G ( 1 ) = 7.4 10-3 con ^ en el [ - 1 , 1 ] .
288 Análisis numérico. Primer curso Integración y diferenciación numérica 289

Dejamos como ejercicio para el lector comprobar que la fórmula es C-\.M V.4 Error total en la integración numérica
ta para cualquier polinomio de grado menor o igual a 3.
Dada la practicidad del Método de Gauss es conveniente disponer de- l.i
Error total en el Método del Rectángulo
constantes para los casos más usuales:
Comenzaremos por recordar la Fórmula del Rectángulo:
Tabla de raíces de los Polinomios de Legendre y coeficientes para la
Cuadratura Gaussiana. R(h) = h I f¡i-l/2 •

Para simplificar el estudio de la propagación de errores de redondeo va-


n «1 A¡ mos a suponer que la f(x) conserva el signo en todo el intervalo [a,b].
Sea U la unidad en el último dígito significativo de f¡ 1/2, o sea que si su-
2 0.5773502692 1.0000000000
ponemos correctamente redondeados los valores de f resulta:
-0.5773502692 1.0000000000
U
3 0.7745966692 0.5555555556 le, I < — para todo i.
'1-1/2 2
0.0000000000 0.8888888889
-0.7745966692 0.5555555556
Vamos a suponer que a y b no tienen errores inherentes, y que el error
de redondeo al calcular h es despreciable, entonces aplicando la fórmula para
4 0.8611363116 0.3478548451
calcular la propagación de errores inherentes resulta:
0.3399810436 0.6521451549
-0.3399810436 0.6521451549
U b-a
-0.8611363116 0.3478548451 | E i < h n — = - U.

5 0.9061798459 0.2369268850
Por otro lado construyendo la gráfica de proceso y utilizando la hipótesis
0.5384693101 0.4786286705
sobre conservación de signo de la f( x ), resulta para la propagación de errores
0.0000000000 0.5688888889 de redondeo: ,
-0.5384693101 0.4786286705
-0.9061798459 0.2369268850 | ers. | < ( i - l ) ( J . , siendo |¿ la unidad de redondeo, y
290 Análisis numérico. Primer curso Integración y diferenciación numérica 291

Si despreciamos el error en h tenemos entonces: b-a b-a b-a


M h2 +
12 2
b -a siendo M como antes una cota de | f " (x) | en [a , bj.
|R(h)| h
Si unimos todos los resultados hallados, tenemos para el error total en l.i Error total en el Método de Simpson
Regla del Rectángulo:
Vamos a estimar primero el error de discretización en el Método de Simp-
b-a b-a b-a son. Apliquemos la fórmula ( 1.3 ), primero trabajando con una longitud de
E R ( h) ^ —2 4M h2 + —2 u + ~T~
2 l R ( h ) I ^. intervalo h y luego con una longitud 2 h. Si multiplicamos por 4 la primera
igualdad y a este resultado le restamos la segunda igualdad obtenemos:
siendo | f"(x) | < M para todo x en [ a , b ] .
b-a
I = S(h) + h4 + O(h6), siendo £ un punto de [a , b].
180
Error total en el Método del Trapecio

Nuevamente comencemos por recordar la Fórmula del Trapecio: Supondremos que M es una cota del módulo de la derivada cuarta de f(x).
Tenemos entonces:
n-l
b-a
T(h) - h ED< Mh 4 .
180

Si hacemos el mismo tipo de consideraciones que en el punto anterior re-


sulta para la propagación de errores inherentes: Haciendo las mismas consideraciones que en los apartados anteriores es-
tudiaremos primero la propagación de errores inherentes utilizando la expre-
sión ( 1 . 5 ) para el cálculo de S(h). Vemos entonces que:
U U U b-a
- - U;
h U U n U n U b-a
T S*~ -,-,-n / —. I —.

U.
Si construimos la gráfica de proceso para esta fórmula veremos que las di- E' - 3( 2 + 2 2 "! ^ 2 +4 2 2)= 2
visiones por 2 y el sumando adicional con respecto a la fórmula del rectán-
gulo, agregan un 2 |i al error de redondeo relativo propagado, cosa despre- Esta expresión es idéntica a las obtenidas anteriormente.
ciable con respecto a los otros términos, por lo que finalmente utilizaremos
para el error de redondeo propagado la misma expresión que para el Método
del Rectángulo, resultando entonces para el error total en la Regla del Tra-
pecio:
Integración y diferenciación numérica 293
292 Análisis numérico. Primer curso

En cuanto a la propagación de errores de redondeo, dependerá del algoi u


mo utilizado. Si utilizamos la expresión (1.5) para calcular S(h), haciendo E, < (m + 1) F \l + E A¡ — = (m + 1) F u + U , siendo F una cota para
i=o 2
la gráfica de proceso obtenemos una expresión del orden de las anterior. el módulo del integrando.
por lo tanto el error total para el MÉTODO SIMPSON resulta:
Por otro lado haciendo análisis retrospectivo de errores como en el Ejem-
plo 9.2 del Capítulo 1, tenemos para la propagación de errores de redondeo:
b-a b-a b-a
^S(h) - Mh 4 + U+ I S(h) | u.
180 E R < 0.56 F (m + 2) (m + 3) u,

Si no hacemos la consideraciones respecto a la conservación del signo di (recordemos que A¡< 1 para todo i)
f(x), tenemos para la propagación de los errores de redondeo: Llegamos entonces para el error absoluto total en la Fórmula de Gauss a:

(b-a)2 F E,, < cm M + (m + 1) F |l + U + 0.56 F (m + 2) (m + 3) \L .


ER< (i, siendo F una cota para | f(x) | en el intervalo [ a , b |
h2 2
Notemos que en todos los métodos de integración el error de discreti-
zación disminuye cuando aumenta la cantidad de nodos de la malla usada,
pero el error de redondeo aumenta, en el mejor de los casos linealmente, con
Error total en la Cuadratura de Gauss la cantidad de nodos, de donde concluimos que para resolver un dado proble-
ma numérico habrá un h óptimo que podríamos determinar minimizando
Ante todo recordemos que integrando en el [ - 1 , 1 ] resulta:
la expresión del error total.

Sea M una cota del módulo de la derivada 2 m + 2 de la función iniY V.5 Diferenciación numérica
grando. De acuerdo al Teorema 3.2, tenemos que:
Ya nos hemos encontrado anteriormente con el problema de calcular valo-
M
res aproximados para la derivada de una función que está definida por una ta-
bla, y que se supone apropiada para ser aproximada localmente por un poli-
Los errores relativos en los coeficientes pueden considerarse del orden de f i .
nomio. Vimos que en este caso las derivadas pueden ser aproximadas por
Si consideramos que los errores absolutos en los valores de f(x) están acol.i
diferencias. Si trabajamos sobre una malla de nodos equidistantes, demostra-
U mos que la extrapolación repetida de Richardson nos da la posibilidad de re-
dos en módulo por — , tenemos para la propagación de errores inherentes:
ducir el error de discretización.
Por otro lado, si Q(x) es una buena aproximación polinómica de f(x),
podemos usar Q'(x) como una aproximación polinómica a f '(x); no obs-
tante la precisión de los valores de la derivada así obtenidos es en general
menor que la precisión con que Q(x) aproxima a f(x).
294 Análisis numérico. Primer curso Integración y diferenciación numérica 29í>

EJEMPLO 5.1 Las siguientes son algunas fórmulas para diferenciación numérica:
X
1 1
Sea í(x) = e x ; consideremos el polinomio aproximante: Q (x) = 1 + x + - si p = r + — , o sea : x = x0 + (r 4- — ) h , utilizando la Fórmula de

Entonces f '(x) = f "(x) - f '"(x) - f(x), y Interpolación de Bessel puede deducirse:

Q'(x) = 1 +x, Q"(x) = 1, Q'"(x) = 0. Para x en el [-0.1 ,0.1] tenemos


r 3r 2 -
4r3-5r
max | f(x) - Q(x) | = 2 10 4 , h f'(x) = A f0 + -- (A2 f , + A2 f 0 ) + i- A3 f , + (A4f,+A4f. ) +
48
m a x | f ' ( x ) - Q ' ( x ) | = 5 10~ 3 ,
Utilizando la Fórmula de Interpolación de Stirling puede encontrarse:
m a x | f " ( x ) - Q " ( x ) | = 10'1 ,

m a x | f ' " ( x ) - Q " ' ( x ) | = 1.1 h f'(x) = u¿f(J- - (1 - 3 p2) jiS 3 f 0 + - - (4 - 15 p2 + 5 p 4 ) u85 f ü + ...
6 120

Sólo como ejemplo hallaremos una fórmula para aproximar la derivad.i Cuando queremos calcular la derivada en un nodo de la malla un método
primera utilizando cuatro puntos de una tabla { x¡, f¡ }f=0 con nodos equidis muy eficiente para descubrir fórmulas de aproximación es el de Los Coefi-
tantes. cientes Indeterminados que hemos estudiado anteriormente.
Utilizaremos el polinomio interpolante de Gregory-Newton:
Cálculo con operadores
p(p-D p(p-l)(p-2)
q(x) = f0 + p Af 0 A2fn •A3fn,
Ya hemos hablado de la posibilidad de efectuar cálculos con operadores en
diferencias.
X -
Los cálculos formales con operadores utilizando las reglas del análisis y del
siendo p = —;— , y h = x .. ,- x¡ ; teniendo en cuenta que — = — , resulta: álgebra son a menudo un medio elegante para encontrar fórmulas de aproxi-
h dx h mación.
No obstante estas fórmulas deben ser luego probadas de alguna otra forma.
Af0 3p2 - 6p + 2
f'(x) = q'(x)=- - A2f+ Ya hemos definido el operador de corrimiento E, el de diferencias hacia
h 2h 6h adelante A, el de diferencias centradas 8, y el promedio (I.
Si f(x) es un polinomio de grado menor o igual a 3, la expresión ante También utilizaremos los siguientes operadores:
rior es exacta.
Integración y diferenciación numérica 297
296 Análisis numérico. Primer curso

Df(x) = f'(x) : Operador diferencial 86


(hD) 2 = 8 2 - — +
12 90 560
Vf(x) = f(x) - f(x - h) : Operador de diferencias hacia atrás

Todos estos operadores son lineales y cumplen con las propiedades o>n -
uS3 i
u8 5
_. _
hD =
mutativa, asociativa y distributiva para la suma y el producto. 6 30
En términos prácticos, nos interesa establecer relaciones entre ellos. l..i n
lación fundamental surge de expresar la serie de Taylor:

f(x + h) - f(x) + h f'(x) + — f"(x) + — f'"(x) + ... , Ejercicios


2 6

que toma la forma operacional:


1) Calcular la siguiente integral utilizando las Fórmulas del Trapecio y de Simpson,
(hD)2 (hD)3 n n
Ef(x) = (1+ hD + -+ - + ... )f( x ), simbólicamente: con h = — , y h = — ;
2 4
2n
n r 2sen(x)
_ _ J
2 o
A partir de esta relación podemos encontrar una variedad de resultadc
que proveen distintas fórmulas de aproximación. Por ejemplo: 2) Integrar la función y = V x entre los valores del argumento 1.00 y 1.30, uti-
lizando la tabla del Problema 6 del capítulo anterior, con los siguientes métodos:
E = I 4- A _= e~1h D
a) Fórmula del Trapecio
A2 A3
•— b) Fórmula de Simpson

2 3
que significa: 3) Integrar la función y = sen( x) entre O y — a partir de la siguiente tabla:

X 0 it 2it ÍK 4x 5re 6K
A2 A3 12 12 12 12 12 12
h f '(x) = ( A — + ~ - ... )f(x).
sen( x ) 0 00000 0.25882 0.50000 0 70711 0.86603 0 96593 1.00000
Otras fórmulas importantes son: a) Por el método del trapecio
b) Por el método de Simpson
c) Acotar el error de truncamiento
d) Comparar los resultados con el valor exacto
298 Análisis numérico. Primer curso Integración y diferenciación 'numéi ico 299

sen(x) 9) Indicar que tipo de error puede minimizarse utilizando extrapolación de Ri-
4) integrar la función y = entre O y 0.8. Utilizar el Método de Romberg chardson.
hasta garantizar 5 dígitos. 10) Indicar hasta polinomios de que grado integra exactamente la Fórmula de
Gauss con 3 puntos.
5) Integrar la función y = f( x) entre O y 4 utilizando el Método de Romberg. La
función está dada por la siguiente tabla de valores correctamente redondeados:

0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0


f(x) -4271 -2522 -0499 1795 4358 7187 10279 13633 17247

6) Integrar la función y - e-* entre O y 10, utilizando el Método de Gauss de 5


puntos. Comparar con el resultado exacto a 6 decimales : 0.999955.

7) Evaluar la integral de y = sen2( x ) entre O y 2 .


a) Operando en [ G( 10 ,5 , 2 ) , rd ] ; utilizar el Método de Romberg hasta ob-
tener 4 dígitos significativos.
b) Estimar el error de redondeo en los resultados parciales obtenidos por la Re-
gla del Trapecio. Respetar el orden en que efectuó las operaciones.

8) Evaluar la misma integral del problema anterior utilizando la cuadratura de Gauss


con 3 puntos.
Proceder de la siguiente forma:
a) Hallar la fórmula de cuadratura sabiendo que el polinomio de Legendre de
grado 3 es:

P 3 ( x ) = y ( 5 x 2 - 3)

b) Realizar los cálculos.


c) Estimar el error de truncamiento en base al desarrollo en serie de Taylor del
integrando.
< •"
CAPÍTULO VI

Resolución numérica
de ecuaciones diferenciales ordinarias

VI. 1 Introducción

Al estudiar un fenómeno físico con frecuencia no es posible hallar de in-


mediato las leyes que enlazan las magnitudes que caracterizan dicho fenó-
meno. Pero al mismo tiempo es fácil establecer la dependencia entre esas
magnitudes y sus derivadas o sus diferenciales. Así obtenemos ecuaciones que
contienen las funciones desconocidas, escalares o vectoriales, bajo el signo de
derivada o de diferencial.
Las ecuaciones en las cuales la función desconocida, escalar o vectorial, se
encuentra bajo el signo de derivada ó de diferencial, se llaman ecuaciones di-
ferenciales.
Veamos algunos ejemplos de ecuaciones diferenciales:
dx
1) - = - k x , es la ecuación de la desintegración radioactiva.
dt
(k es la constante de desintegración ; x es la cantidad de sustancia no
desintegrada en el momento de tiempo t ; la velocidad de desinte-
gración es proporcional a la cantidad de sustancia no desintegrada).
d2F - . dr
2 ) m —— = F ( t , r , ~ ) , es la ecuación de movimiento de un punto
dt2 dt
302 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 303

— ,- « - k t (1.2)
de masa m, bajo la influencia de una fuerza vectorial F dependiente tiene la'solución: x(t) = ce
di
del tiempo, del vector de posición del punto ( r ) , y de su velocidad donde c es una constante arbitraria.
til
Es evidente que la ecuación diferencial ( 1 . 1 ) aún no determina por com-
La fuerza es igual al producto de la masa por la aceleración. pleto la ley de desintegración x = x(t). Para su completa determinación hay
que conocer la cantidad de sustancia x,, existente en el instante inicial t0 .
3) D^ U + D U + Dzz U = 4 K p(x , y , z), es la ecuación de Poisson, la Si x,, es conocida, entonces tomando en cuenta la condición x(t0) = x,, de
cual es satisfecha, por ejemplo, por el potencial Ü^x , y , z) del campo ( 1.2 ) hallamos la ley de desintegración radioactiva:
electrostático; p( x , y , z ) es la densidad de las cargas.
-k(t-t 0 )
x(t) =
Si se conocen los métodos para hallar las funciones incógnitas determi
nadas por las ecuaciones diferenciales, se podrá determinar la dependencia
El proceso de determinación de las soluciones de una ecuación diferencial,
entre las magnitudes implicadas.
se llama integración de la misma.
La búsqueda de las funciones desconocidas, determinadas por las ecua-
ciones diferenciales, es precisamente el problema fundamental de la teoría cil- En el ejemplo anterior hallamos fácilmente por cuadraturas la solución
las ecuaciones diferenciales. exacta. Pero la clase de las ecuaciones diferenciales integrables por cuadra-
turas es sumamente limitada; por ello ya desde los tiempos de Euler tuvieron
Si en una ecuación diferencial, las funciones desconocidas, escalares o vec- gran importancia los métodos aproximados en la teoría de ecuaciones dife-
toriales, son funciones de una sola variable, la ecuación diferencial es llamada renciales.
ordinaria; por ejemplo las ecuaciones de 1) y 2). Si en cambio, la función
desconocida es una función de dos o más variables independientes, la ecua- En la actualidad gracias al rápido desarrollo de las técnicas de cálculo los
ción diferencial se llama ECUACIÓN EN DERIVADAS PARCIALES; por ejem métodos de aproximación adquieren un valor incomparablemente mayor.
pío la ecuación de 3). Actualmente a menudo resulta conveniente utilizar métodos aproximados
Se denomina orden de la ecuación diferencial al orden de la derivada (o de aún en los casos en que la ecuación se puede integrar por cuadraturas. Es más,
la diferencial) máxima de la función desconocida que figura en la ecuación. aunque la solución pueda ser expresada como una sencilla combinación de
funciones elementales, frecuentemente la utilización de las tablas de éstas fun-
El grado de una ecuación diferencial ordinaria no trascendente, es el grado
ciones, o su aproximación numérica, resulta más difícil que la integración
algebraico de la derivada que determina el orden de la ecuación diferencial, aproximada de la ecuación utilizando computadoras.
habiendo eliminado de la misma cualquier potencia fraccionaria.
Sin embargo, para aplicar uno u otro método de integración aproximada
Se llama solución de la ecuación diferencial, a una función que al ser susti- de ecuaciones diferenciales, debemos estar seguros ante todo de la existencia
v tuida en la misma la convierte en una identidad.
de la solución buscada, así como de la unicidad de la misma, ya que cuando
Por ejemplo la ecuación de la desintegración radioactiva: no existe unicidad, no queda claro cuál solución debemos determinar aproxi-
madamente.
dx Con frecuencia la demostración de teoremas de existencia de la solución
— =-kx (1.1) nos da un método para la determinación exacta o aproximada de la solución,
dt
lo cual aumenta aún más la importancia de los teoremas de existencia.
304 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 30í>

Por ejemplo el Teorema 1.1, explicado más adelante, da la fundamen x,, , x, , x2 , ..., x n _, , xn , donde xn = b.
tación del Método de Euler para la integración aproximada de ecuacioiu-,
diferenciales. La idea de éste método consiste en sustituir la curva integi.il La longitud de cada segmento [x¡ , x i+1 ] , xi+1 - x¡ = h , se llama paso del
buscada, solución de la ecuación diferencial de primer orden: cálculo.
El valor aproximado de la solución en los puntos x¡ se designará por u¡ ,
dy ó sea:
— = f(x , y), con condiciones iniciales:
dx
y( x¡ ) = u¡ .
y( xo ) = 7o •
Para el cálculo de u, se sustituye en el intervalo x0 < x < x, la curva inte-
por una quebrada constituida por segmentos lineales, cada uno de los cuali-. gral buscada por el segmento de su tangente en el punto (xn , y0). Por lo tanto:
es tangente a una curva integral de la ecuación diferencial:
uo = Yo . u. = uo + h y'(*o) = un + h f (x0 , u0) .
dy
- = f(x,y) En forma análoga calculamos:
dx

u2 = u, + h f ( x , ,u,)

Si b < x0 el esquema de cálculo es el mismo pero el paso h es negativo.


Es natural esperar que para h—> O, las "Quebradas de Euler" se aproximen
a la gráfica de la curva integral buscada. Por lo tanto al disminuir el paso h,
el Método de Euler da un valor cada vez más exacto de la solución buscada en
el punto b.
La demostración de ésta afirmación nos conduce al mismo tiempo a la de-
XQ X,
mostración del siguiente teorema fundamental de existencia y unicidad, bajo
condiciones suficientes muy amplias impuestas a la función f(x , y).
Figura 1.1

Para calcular el valor aproximado de la solución en x = b utilizando


Método de Euler comenzamos dividiendo el intervalo [x,, , b] en n parte
iguales por medio de los puntos:
306 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 307

Existencia y unicidad de la solución del problema matemático.


Convergencia del Método de Eulerpara un Problema a Valore^,
Iniciales (PV1)

Teorema 1.1
Sea la ecuación diferencial:

dy
;= f(x,y), (1.3
dx

con f(x , y) continua en el rectángulo: D = [x,, - a , x0 + a] x [yfl - b , y(, + h|


También f(x, y) satisface en D la siguiente condición de Lipschitz:
Figura 1.2
| f(x, y,) - f(x , y0) | < N | y, - y() | con N = cte;

Entonces existe una única solución de ( 1.3 ) : y - y(x) definida sobre En el ejemplo de la figura la solución puede no estar definida para x fuera
de [x, ,x 2 ].
[x0 - H , X,, 4- H] que satisface la condición y(x0) = y0 donde:
Podemos garantizar que la curva integral y = y(x) no sale de los límites
b 1
M = max | f(x , y) I con (x , y) en D , H < min { a , — , -*-} de D cuando .x varía en el segmento [x() - H , xtí + H] , donde H es el menor
M N b
A un problema de este tipo, en donde la unicidad surge de fijar el valor ilr de los números a y — , puesto que el coeficiente angular de la tangente a la
la incógnita para el XQ inicial, (ya sea que avancemos a la derecha ó a la i/
quierda) lo llamaremos un Problema de Valores Iniciales (PVI). curva integral buscada se encuentra entre los coeficientes angulares M y -M
de la rectas representadas en la Figura 1.3:
Si bien no daremos los detalles de la demostración, enunciaremos los p.i
sos iniciales de la misma; antes haremos algunas consideraciones sobre las
condiciones del teorema; no es posible afirmar que la solución buscada y
y(x) de la ecuación ( 1.3) que satisface la condición y(x0) - y0 existirá pan
[x,, - a , XQ + a] ya que la curva integral puede salir de D a través de sus
superior y/ó inferior como muestra la Figura 1.2:
308 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 309

a) Es-fácil ver que el PVI:


dy
= f(x,y)
dx
( 1.5 )

es equivalente a la ecuación integral:


X
|3 tgP = -M
y(x) = y0 + J f(x, y) dx (1.6)

x0-a x0-h x0 x0+h x2 Construyamos ahora la quebrada de Euler: yn = y n (x), que parte del
H
Figura 1.3 punto (XQ, y()) con un paso hn = — , definida en el segmento [x0, x (l +H];
n
n es un entero positivo.
Se puede demostrar la existencia de la solución buscada en el segmento (En forma análoga se demuestra la existencia de solución en el interva-
b lo [x0 - H , xj ).
[xy - H , x0 + H], donde H = min { a , — }; sin embargo es más sencillo de- Para eso definamos: u0 = y 0 , u k+] = uk + hn f(x k , uk) , y hagamos:
M
mostrar primero la existencia de la solución en el segmento [x0 - H , x0 + H | u¡= u(x¡; h n ), entonces:
conH<U,-,i}.
yn(x¡) = u(x¡; h n ) , y si x pertenece a [x j ; x i + l ] con 0 < i < n - l :

Existen condiciones bajo las cuales la solución pude ser continuada.


y n (x) = u¡ + (x - x¡) (1.7)
La condición de Lipschitz puede ser suplantada por una más grosera, pero
fácilmente verificable en la práctica:
Por otro lado la quebrada de Euler que pasa por el punto (x ( ) , y0) no
f(x,y) pertenece a C'(D), (1.4) puede salir de la región D para x en [x0 , x0 + H] ( o bien x en
[x,, -H , xj ), ya que el coeficiente angular de cada segmento de la que-
que significa que f(x , y) tiene derivadas continuas en D, de donde podemos brada es menor que M en valor absoluto.
deducir el cumplimiento de la condición de Lipschitz pedida por el teorema. b) Se demuestra que la sucesión de quebradas yn = yn(x) es uniforme-
La demostración del teorema consta de las siguientes partes: mente convergente a una función y(x).
c) La función y(x) es solución de la ecuación integral (1.6).
d) La solución de ( 1.6 ) es única.
310 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 311

Sistemas de Ecuaciones Diferenciales y Ecuaciones Mientras que la condición inicial asume la forma:
Diferenciales Ordinarias (EDO) de orden superior a 1

Hasta ahora hemos considerado ecuaciones diferenciales ordinarias qu<-


involucraban una única función incógnita. Más generalmente, nosotros po
demos considerar un "sistema de n ecuaciones diferenciales ordinarias": (1.10)

y,1 = *i'(x,y,,y a ,..., yn) Yn-LO

Yn.O
y2' = f 2 (x , y, , y2 ,..., yj
(1.8)
Por otro lado la mayoría de las ecuaciones diferenciales de m-ésimo orden
yn-i' = f n-i( x >yi >y 2 >">y n ) que aparecen en la práctica pueden escribirse de la forma:

Yn' = f n( X • Yl ' Y2 ' - ' Yn) (1.11)


para n funciones reales y¡ = y¡ (x), i = 1,..., n, de una variable real.
Si introducimos las funciones auxiliares:
Tal sistema puede ser escrito en forma análoga a ( 1.3 ) utilizando nol.i
ción vectorial: z,(x) = y(x) ,

z2(x) = y'(x) ,
Y' = F ( x , Y )
siendo:
Y(x 0 )=Y 0

y, f,(x,y,,y 2 ,...y n )
Y2 f 2 (x,y,,y 2 ,...,y n )
(1.11) puede transformarse en un sistema de m ecuaciones diferenciales de
F(x,Y) = (1.9) primer orden:

y-.
fn(x,y,,y2,...,yB)
312 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 313

~z/~ Plantearemos nuevamente nuestro Problema Matemático:


Z2

y' = f(x, y)
Z2' Z3

vfx 1- v
MA0' ~~ 70
( 2.1 )
• •
= F(x , Z) = (1-12)
Z m-l' Zm cuyos datos de entrada f( x , y ) y (XQ , y 0 );
Como resultado, podemos suponer que buscamos el valor y(b) para un
C
r(x, Zp z2, ..., zm j, z m )
cierto b, o la función y(x) definida sobre un cierto intervalo que contenga al
XQ inicial.

con condiciones iniciales: Toda expresión de la forma:

uo = 7o ' uk+i = uk + h <|> (xk , u k , u kH ; h ; f) (2.2)

Z2,0
constituye un método de paso simple para aproximar numéricamente a y(x).
Evidentemente ( 2.2 ) simboliza el Problema Numérico.
(1.13) Si en la función <)> aparece explícitamente uk+1 , decimos que el método es
implícito; en caso contrario decimos que es explícito.

m,0 EJEMPLO 2.1

y = — +x
que equivale a: y(k) (x0) = z k + 1 0 , k = O, 1,..., m-1. (1.14) Dado el PVI: . , aproximar y( 1) utilizando el Método de
y(0) = i
Euler.
VI.2 Problemas a Valores Iniciales. Métodos de paso
En VI. 1 definimos el Método de Euler de la siguiente forma:
simple
U0 = y(x,,) , ui+1 = u¡ + h f(x¡ , u¡) = Uj + h f¡ ;
Mientras no indiquemos lo contrario, supondremos que la EDO involu-
La función que define al método de Euler como un método de paso sim-
cra una única función; como veremos en la práctica, conocido el método para
ple es:
resolver una única ecuación, la generalización para resolver sistemas de ecua-
ciones es completamente natural.
314 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 315

<|> (xk , uk , uk+l ; h ; f) = f(xk , u k ) , Definamos ahora la diferencia:

y en éste caso el problema numérico queda definido por: p(x , y ; h ; f) = A(x , y ; h ; f) - <|)(x , y , z(x + h) ; h ; f) ( 2.5 )

u0 = 1 , ui+1 = u¡ + h (- 0.5 u¡ + x¡) = (1 - 0.5 h) u¡ + h x,. Decimos que ( 2.2 ) es consistente de orden p , sí y sólo sí ( def)

Si tomamos h = 1 , resulta x, — 1 , u, = 0.5 ; p(x , y ; h ; f) = O(h?) ( 2.6 )

con h = 0.5 , x, = 0.5 , u, = 0.75 , para toda f en Cq( D ) , y para todo (x , y) en D , con O < p < q.

y x2 = 1 , u2 = (1 - 0.25) 0.75 + 0.5 0.5 = 0.8125 ;


EJEMPLO 2.2
con h = 0.25 , resulta x4 = 1 , u4 = 0.9309... Estudiemos la consistencia del Método de Euler:

con h = 0.015625 , resulta x64 - 1 , u64 = 1.0267... z(x + h) - z(x)


p ( x ,y ; h ; f ) = f(x, y) ;
Tomando valores de h cada vez más pequeños los valores de u corres
pendientes a x = 1 se acercan muy lentamente a 1.0326...
Recordemos que z(t) es la solución de ( 2.3 ) , y entonces z(x) = y , y
z'(x) = f(x , y) ; entonces aplicando Taylor a z(x + h) resulta:
Consistencia de un método de paso simple h h2
p (x , y ; h ; f) = z'(x) + z"(x) - - + z (3) (x) - -. + ...- f(x , y) =
Supongamos tener definido ( 2.1 ) en un dominio D donde se cumplen 2 6
las condiciones de existencia de la solución. h h2
= 2"(X) _ + Z<3)( X ) --
Tomemos un (x,y) arbitrario en D y sea z(t) la solución exacta del PVI:

z' = f(t, z) Esta última igualdad es válida si f( x , y ) es infinitamente derivable, pero


(2.3) es suficiente considerar el conjunto de funciones f con derivadas continuas en
z(x) = y el dominio de trabajo para que Euler resulte un método de orden 1.

Definamos ahora la función incremento para z(t) así:


Convergencia de un método de paso simple

A(x,y;h;f) = , (2.4) Tomemos un x dentro del intervalo de existencia de la solución, y con


x - x0
f(x,y) si h = 0 h= avancemos n pasos en el cálculo hasta llegar a xn = x ; represente-
n
mos la solución aproximada en x de la siguiente forma:
316 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 317

un = u( x ; hn) , y sea e(x ; hn) el error de discretización en x , o sea: Lema 2.1


Si los números s, satisfacen desigualdades de la forma:
e(x ; hn) = y(x) - u(x ; hn) ( 2.7 )
| si+1 | < (1 + d¡) | s¡ | + B¡, O < d¡ < d , O < B¡ < B , i = O, 1, 2, ...
siendo y(x) la solución del problema ( 2 . 1 ) .
Diremos que el método de orden p ( 2.2 ) es convergente sí y sólo sí (del) Entonces:
nd
lim e(x ; h n ) = O para toda f e Cq(D) con q > p (2.8) B

Teorema fundamental para métodos de paso simple Demostración:

Antes de enunciar y demostrar el teorema fundamental daremos una defi-


nición y demostraremos un lema previo.
|s 2 | < (1 + d) 2 |s 0 | + B ( l + d ) + B
Definición:
Sea (|>(x , y , z ) definida sobre una cierta región del espacio. I sn | < (1 + d)n | s 0 1 + B (1 + (1 + d) + ... + (l + d)"- 1 ) =
Diremos que <j) es Lipschiziana en sus segunda y tercera variables, sobre
esa región, si y solo si (def ) . (l+d)»-l

Existen L2 y L3 positivas, tales que:


Como para todo x : 1 + x < e x , si (1 + d) > O podemos elevar de ambos
, y2 , z2) - <|>(x , y, , z,) | < L2 1 y2 - y, | + L3 1 z2 - Zj | ,
lados manteniendo la desigualdad, y entonces:
cualesquiera sean (x , y2 , z2) , (x, y, , z,) en la región considerada.
nd
Si L = max j L, , L2 } resulta: I «„! ^ e n d |s 0 | c.q.d. (2.9)

| <|>(x - 72 , z2) - 4>(x , y, , z,) | < L ( I yz - y, I + I z2 - z, | ).


Podemos ahora probar el siguiente teorema fundamental:
Vamos ahora a la demostración de un lema de uso común:
Teorema 2.1

Un método consistente de orden p, con p > O, y con una <|> Lipschiziana


en sus segunda y tercera variables, es convergente.
318 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 319

Demostración: | <t» (x¡ , y(x¡) , y(xi+1) ; h ; f) - <)> (x¡ , u¡ , ui+1 ; h ; f ) | < L2 1 e¡ | + L3 1 ew |.

Sea x fijo y arbitrario y definamos:


Para acotar la segunda diferencia, partiendo de la consistencia hagamos es-
ta consideración:
X - X«

i $ (x, , yíxj), y(x i+1 ) ; h ; f) - A (x¡ , y(x¡) ; h ; f ) | = | O(h") | <

Tomemos un i entre 1 y n-l:el error de discretización en x = x¡ vale: < 00(h"),

e¡ = e(x¡; h) = y(x¡) - u¡ = y(x¡) - u(x¡; h); en donde hemos acotado los factores de la potencias de h en los términos del
O(hp) para que no dependan del x¡ , entonces:
Tengamos en cuenta que:
|e i + 1 | < |e¡| + h ( L 2 | e i | + L 3 |e 1 + , | + O 0 (h p ) ), de donde:
u i+1 = u, + h <t»(x¡, u,, u,+, ; h ; f) ( 2.10 )
| e i + 1 | ( l - h L 3 ) < ( l + h L 2 ) | e , | + hO^hf1)
y
1
y(x, +] ) = y(x,) + h A(x,, y( X] ) ; h ; f) , ( 2.11 ) Tomemos ahora h0 < — ; entonces para todo h < h0 resulta (1 - h L3) > O y:
^3

de donde deducimos que: 1 + h L, h

ei+1 = e¡ - h ( (Kx,, u¡ , u i+l ; h ; f) - A(x¡, y(x¡) ; h ; f ) )


Considerando:
Si dentro del paréntesis del segundo miembro sumamos y restamos:
1
(jKXj.yUj) ,y(x i+1 ) ; h ; f ) , •^ rr Lk , resulta:
l-hL k=0 3

obtenemos estas dos diferencias:


h (L2 + L3) + L3 0( h 2 ) ) | e, | +^~^ O0(
«Kxj, u¡, ui+1 ; h ; f) - (j)^ , y(x¡) , y(x j + 1 ); h ; f) ,

y haciendo d = h (L, + L3) + L3 O(h 2 ), B = •0 0 (h"), e0 = u 0 - y 0 =


1 -hL
<t>(x¡, y(x¡), y(x i+] ); h ; f ) - A(x¡, y(x¡) ; h ; f) ; podemos aplicar el Lema 2.1 para obtener:

Para acotar la primera diferencia recordemos que (|> es Lipschiziana, o sea


que existen L2 y L3 tales que:
320 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 321

e n(h(L 2 +L 3 }+L 3 0(h 2 )) _ Algunos Métodos de Paso Simple


I y(x) - u(x ; h) I = |e n | <
h(L 2 L3 0(h 2 ) i-hL
Para aproximar la solución de ( 2 . 1 ) existen numerosos métodos; noso-
e (L 2 +L 3 )(x-x 0 )+L 3 0(h) _} Q
tros mencionaremos sólo algunos de ellos:
L2 + L3 + L3 O(h) hL
1) Método de Euler
e(L2+L3)(x-x0)+L30(h) _ j
0( (2.12) Toma u0 = y 0 ; una vez que aproximó y(x n ) por u n , avanza sobre la
L2 + L3 + L3 0(h) tangente a la solución de la ecuación diferencial que pasa por el punto

Esta expresión nos permite asegurar que el método es convergente; ade-


más de ella se desprende que el orden del error de discretización global es < > Un

mismo orden que el del método.


Si el método es explícito podemos considerar L3 = O, resultando en este Es explícito y ya demostramos que es de orden 1 .
caso:
2) Método Fuertemente Implícito o de Euler Inverso
Toma u0 = y0 ; una vez que aproximó y(x n ) por u n , avanza sobre la
| y(x) - u (x; 00(hP). tangente a la solución de la ecuación diferencial que pasa por el punto

La expresión anterior nos indica que para un método explícito de pas


simple las potencias de h en el desarrollo del error global siguen la misma le>
que la obtenida al estudiar la consistencia del método; esta observación nc
Es implícito y de orden 1.
será útil cuando debamos aplicar Extrapolación de Richardson a un proble-
ma de resolución de ecuaciones diferenciales utilizando un método explícito.
3) Método Implícito Ponderado
Si el método es implícito el segundo término de ( 2.12 ) tiene la forma:
Toma u0 = y 0 ; una vez que aproximó y(xn) por u n , avanza sobre una
recta cuya pendiente es el promedio ponderado de las pendientes de las
k=0 rectas utilizadas en los métodos 1) y 2):

que también nos indica la forma de aplicar Extrapolación de Richardsor un+1 = un + h f(xn , u n ) + p f(x n+1 , u n+1 ) ) 0<
cuando resolvemos un problema utilizando un método implícito de pase
simple. Si p = O tenemos el Método de Euler, y si P = 1 tenemos el Fuerte-
Otra consideración importante es que en el mejor de los casos, con una mente Implícito.
constante de Lipschitz muy cercana a O, el error global es aproximadamente Si = 0.5 resulta el:
(x - x0) veces el local.
322 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 323

4) Método Implícito Ponderado de Orden 2 ó de Crank-Nicholson 8) Predictor Corrector Implícito

n+l n
h
U n + l = Un + Y ( f(Xn ' Un ) + f ( X n+l > U n+1 ) )
un+1 = un + h ((3 f(x n+1 ,u* n+1 ) + (1 - P) f(xn , u n ) )

5) Método del Punto Medio -^ 9) Método de Runge-Kutta de orden 4


Toma u0 = y 0 ; una vez que aproximó y(x n ) por u n , avanza sobre la \a u0 = y 0 ; una vez que aproximamos y(x n ) por un , hacernos:
tangente a la solución de la ecuación diferencial que pasa por el punto
h h h q, - h f(xn , u n ) , q2 = h f( x n + 1 / 2 , u n + -!-) ,
(xn + —, un + — f(x n , u n ) ): (escribimos x n+1/2 = xn + — )
¿* ¿. ¿*

h z
Un+l = Un + h f ( X n + l/2 > Un + ^ f(Xn ' Un ) )
=h . un + ) ' q4 = h f( Vi > un
Es de orden 2. la solución avanza sobre una recta cuya pendiente es el promedio pesa-
do de las pendientes de las rectas tangentes a las soluciones que pasan
por los puntos:
6) Método de Heun
q, ^2
( X n - U n) ' (Vl/2 ' U n + — ) ' ( X n + ./2 > "„ + — ) , (X n+ , , Un + q3) :

U n+1 = un + h/4 ( f(xn , u n ) + 3 f(x n+2/3 , u n+2/3 )) q, + 2 q2 + 2q3 + q4


U n+, = "„ +

7) Método de Euler Modificado o Runge-Kutta de orden 2


Posiblemente éste sea el más famoso de los métodos explícitos.
Toma u0 = y0 ; una vez que aproximó y(x n ) por u n , avanza sobre un;i
recta cuya pendiente es el promedio de las pendientes de las rectas tan
gentes a las soluciones que pasan por los puntos 10) Método de Taylor de orden p

(Xn ' U n) > ( X n + l ' "„ + h f(xn , U n ) ): u n+1 = u n + h (f n + h/2 f n ' + h2/6 fn" + ... + hP-'/p! fn(^)

q, = h f(xn , u n ) ; q2 = h f ( x n + 1 ) u n + q,);

Un+l = Un
324 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 325

Propagación de errores inherentes y de redondeo en los factor de amplificación tenga módulo menor ó igual que 1 , y tendremos una
condición óptima de trabajo.
Métodos de Paso Simple
Si la función O(h) es positiva, tendremos que trabajar con valores de h
que la hagan muy pequeña, y no podremos avanzar mucho en la solución sin
Estabilidad de un Método de Paso Simple que los errores propagados se hagan notar.
Si la solución de nuestro problema es una función decreciente debemos
Como la cantidad de pasos necesarios para evaluar un cierto u n con un
descartar trabajar con métodos que produzcan para ese problema una O(h)
error de discretización razonable puede llegar a ser grande, nos interesa que
positiva.
una cierta perturbación en un paso no se propague al siguiente creciendo di-
forma tal que no podamos controlar convenientemente con h; esto es lo que
expresa la siguiente condición de estabilidad: EJEMPLO 2.3
Sea ek una perturbación de u k , Consideremos el siguiente problema matemático:

Diremos que un Método (definido por ( 2 . 2 ) ) es estable, sí y sólo sí (del)


Existe una función de orden h, O(h),talque
y(0) - 1,
£k+1 = (I + O(h)) ek para todo k. (2.13)
y utilicemos para resolverlo el Método de Crank-Nicholson:
(1 H- O(h)) es el factor de amplificación, y haciendo un desarrollo de pri
mer orden vale: u kn = uk + h (a uk + a u k+1 ).

Si reemplazamos por las soluciones perturbadas obtenemos:


d<\>
h( (Xk ' Uk ' Uk+1 ; h ; f) ' Uk ' Uk+1 ; h ; f)
Para valores de h suficientemente chicos ( 2.13 ) implica: y agrupando convenientemente y simplificando el factor de amplificación
resulta: f * H = tK+h_ l* tic. f <*-£«: * i )
| e k + I | < (l + 0 ( h ) ) | e k | . (2.14) 1 (
ah
Si O( h ) es menor que cero, en lugar de la ( 2.14 ) podemos usar: e k+i -
1 -ah
-
Podemos concluir que al resolver un dado problema numérico, las propa- Si a > O los errores se irán amplificando igual que la solución del proble-
gaciones de los errores las maneja la función O(h) que aparece en la defini- ma y deberemos proceder con suma cautela.
ción de estabilidad a través del Factor de Amplificación: (1 -t- O(h)). Si la I
función O(h) es negativa, para ciertos valores de h podremos hacer que el I Si a < O la solución será decreciente, igual que la propagación de los erro-
res, sin que existan limitaciones para el h que no sean las que impone el error
326 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 327

de discretización. Decimos en este caso que el Problema Numérico en Incon Si llamamos rrk al error relativo de redondeo, irk al error relativo inhe-
•^. ^.^—*-.*«.*AAV J v J * A V **A V"* * ^A AV.At4VJ.VV/ VAV A V-VJ. W*1VÍ\-V/J 11 K O.1 ti I L71 1 ^.lú. 11 V U 11111C~

dicionalmente Estable. rente propagado (debido a la incertidumbre en eventuales coeficientes),


coeficientes), ir0 al
errorr relativo inherente en la condición inicial, y 8 a una cota de los eerrores
relativos en los coeficientes tal que | ir 0 1 < 8 y | irk | < M 8 para k > O,
resulta:
Propagación de errores inherentes y de redondeo en un
método estable R,,
HE | rrk | < rr < K u, = | irk | < M 8 = ir, y entonces:
u,.
Sea Rk el error absoluto de redondeo al evaluar u k , Ik el error absoluto
inherente propagado de los eventuales coeficientes usados en el cálculo de ern | < ed(x *<> _^_ | ir 0 1 + (ir + rr) i ° ' - , que podemos escribir:
dh
uk , y sea I0 el error absoluto inherente en la condición inicial, entonces:
gd(x - x0) _
|er| < M)8
uo - «o = y0 - Ü0 = I0 = e 0 , dh dh

e k = ( l + 0 ( h ) ) e M + I k + Rk De esta última expresión deducimos:


Supongamos | Rk | < R para todo k entre 1 y n , y | Ik | < I para to-
do k entre O y n.
dh
Por otro lado de la definición de infinitésimo resulta que existen h0 y d
e d(x - x () ) . j
mayores que cero tales que si h < h0 resulta:
Te = K
dh
| O(h) | < h d. Por lo tanto si h < h0 resulta:
Si los errores inherentes debidos a eventuales coeficientes son despreciables,
| e k | < ( l + h d ) | e k . , | + I + R;

Aplicando el Lema 2.1 resulta:


= ed(x - V - - y recordando ( 1 1 . 2 ) del Capítulo I:

| e i < enhd | e R) Tc
hd C A - —- = ;Ysi d = l y e - , resulta:
<^

Esta expresión es equivalente a: c _ KJ £


g d(x-x 0 ) _ A Iu0| h
e < R) (2.15)
dh
328 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 329

Lema de la Estabilidad para Métodos de Paso Simple Por lo tanto para éstos problemas lo primero que debemos hacer es deter-
minar el h0 que garantice las desigualdades anteriores para h < h u .
Si (J) es Lipschiziana el método es estable. Trabajando en estas condiciones, de ( 2.14 ) deducimos:

Demostración: < Ie (2.16)

En este caso resulta:


uk - uk =
uo X-XQ
uk+i = uk + h <t> (*k , uk , uk+1 ; h ; f) M,
p ~~
un
uk+i = uk + h <|> (xk , uk , u k+1 ; h ; f)
rr
x - x ,o
y restando miembro a miembro resulta:

< |e h L( | e i + |e En este caso si los errores propagados por eventuales coeficientes son des-
preciables resulta:

Tomemos ahora h0 < — . Entonces si h < h() resulta:


CP =
hL
l e , ! , o sea:
1 -hL CA = n

c.q.d.

EJEMPLO 2.4
Problemas Numéricos de Paso Simple Fuertemente Estables
y=y
Son particularmente interesantes aquellos problemas en los cuales para li Dado el PVI:
menor o igual a un cierto h0 , en (2.13) el O(h) es menor o igual a cero. y(o) -
Evidentemente en estos casos existe un h0 tal que si h < h() el O(h) es
menor o igual a O y de módulo menor que 1. Llamaremos a estos proble- estimar y( 3 ) utilizando el Método de Euler y Extrapolación de Richardson.
mas fuertemente estables.
Vamos a trabajar con 16 dígitos y a comenzar nuestros cálculos con h = 0.1.
En estos casos las únicas soluciones numéricas que conviene ensayar son
Al avanzar 30 pasos de cálculo con el Método de Euler tendremos una pri-
aquellas con un h tal que:
mera estimación de y( 3 ) con un error del orden de 0.1.
O < | O(h) | < 1.
330 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 331

En la segunda etapa de cálculo dividiremos h por 10, o sea tomaren !«•.


VI.3 Problemas a Valores Iniciales. Métodos de Paso
h = 0.01; aplicamos nuevamente el Método de Euler y luego de avanzar ion
pasos tendremos una estimación de y( 3 ) con un error del orden de 0.01. Múltiple
¿Hasta cuando tiene sentido seguir achicando el paso y repitiendo los cáku
los para armar la primera columna de nuestra tabla?
Si trabajamos con un método de paso múltiple para resolver el PVI:
Si observamos el resultado obtenido el el Ejemplo 2.2 y la fórmula ( 2 . 1 . ' i
del Teorema 2.1 concluimos que para el Método de Euler el error global ;ul y' = f(x,y) (31)
mite un desarrollo en potencias de h1 con i-= 1, 2, 3,... ; tenemos entóneos
los elementos necesarios para aplicar la Extrapolación de Richardson. y( x o) = YO
Vamos a tratar de contestar la pregunta recién planteada. Con las dos esli
maciones de y( 3 ) recién supuestas podemos extrapolar y obtener una cst i calculamos el u n+r que aproxima el valor y(x n+r ) utilizando los r valores uk>
mación con un error del orden de 0.012; si agregamos otra fila y otra columna con n < k < n + (r - 1), ó sea:
la última estimación tendrá un error del orden de 0.0013; con otra fila y otra
columna llegaremos a 0.00014; estamos con un orden del error más allá del u n , u n+1 , ..., u n+M -» u n + r ;
último dígito de los 16 que vamos a usar; teniendo en cuenta la posibilidad de
un factor apreciable para 0.00014 tomaremos una fila y una columna más. Si r = 1 tenemos un método de paso simple.

Armaremos pues nuestra tabla para aplicar Richardson: Si r > 2 tenemos un método de paso múltiple.
Para comenzar a aplicar el método de paso múltiple necesitamos cono-
cer los r valores:
h Ri(h) A /9: R2( h ) A 799: R3( h ) A/999:R4(h) A/9999:R5(h)
u 0 , u , , ..., UM ;
0.1 17.4494... ...

0.01 19.7884... 20.04836...


u0 surge de la condición inicial; los otros r-1 valores debemos calcular-
0.001 20.0554... 20.08511... 20.08548749... ... ^
los con un método de paso simple del mismo orden que el del método de
0.0001 20.0825... 20.08553... 20.08553686... 20.08553691690... paso múltiple que estemos usando.
0.00001 20.0852... 20.08553... 20.08553692... 20.08553692318... 20.0855369231876.

El último valor de la tabla tiene todos los dígitos correctos.


Fórmula General de los Métodos de Paso Múltiple
Un método de paso múltiple puede ser expresado en forma general me-
diante la igualdad:
332 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 333

h R^h) A/99: R 2 ( h )
u n+r + I ak u n+k = h F(xn , u n+r , ... , un ; h ; f) ( 3.2 )
k=r-l
0.1 19.98762550...
( 3.2 ) representa un método de paso r.
0.01 20.08453440... 20.0855132805...
Si F tiene la forma: 0.001 20.08552688... 20.0855369071...
o 0.0001 20.08553682... 20.0855369231...
F(xn , u n + r ,..., u n ; h ; f) = I bk f(xn+k , un+k); (3.3)

El último vale>r tiene todos los dígitos correctos; debemos notar que los re-
Con { bi} 1=0 constantes que dependen del método, decimos que el meto sultados obtenid os con el método de la rayuela fueron mejores en todos íos
do de paso r es lineal. casos a los obten idos con el Método de Euler.
Los valores u () , u, ,..., u r _, definen una única secuencia u n con n > r ;
Por supuesto que el error global de u n dependerá de la elección que haga-
Consistencia de un Método de Paso Múltiple. Error de
mos de estos primeros valores.
discretización local
EJEMPLO 3.1 Sea f que pertenece a C q (D), con D contenido en [a , b] x R, y sea (x, y)
que pertenece a D; definamos z(t) como la solución de
Dado el PVI ( 3.1 ) el método de paso múltiple más sencillo y natural sur-
ge de la idea de avanzar desde (x n _, , u n .[) a (x n+l , u n+1 ) a través de la rect.i
de pendiente idéntica a la de la recta tangente a la solución de la ecuación di-
ferencial que pasa por el punto (xn , un):
u0 = y 0 , u n+l = un , + 2 h f(xn , u n ); u, surge de un método de paso simple.
Éste método se llama Método de la Rayuela ó Método del Salto de Rana. Entonces el error de discretización local del método ( 3.2 ) queda de-
Vamos a aplicar éste método a la solución del problema del Ejemplo 2.4. finido por la cantidad:

Estimaremos u, haciendo uso de la solución exacta del problema: e" . h T ( x , y ; h ) - z(x + r h) +


Haremos por lo tanto u, = eh. (3.4)
o
El esquema iterativo resulta el siguiente: 4- ¡—r_
I i a¡ z(x + i h) - h F(x , z(x + r h) ,..., z(x) ; h ; f);

3
uft = 1 , u, = eh , uk = u k _, + 2 h u k , ; n = — , k = 2 , 3 ,... , n

Más adelante veremos que el método de la rayuela es de orden 2; con este


dato podemos hacer un paso de la extrapolación de Richardson:
334 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 335

Decimos que (3.2) es consistente de orden p con p > 0 , p < q , s i y sólo si la definición de convergencia es un poco más complicada que para métodos
existe una función CT(h) = O(h p ) tal que: de paso simple.
Si definimos
| T ( x , y ; h ) | < a(h) = O(h p ), para toda f que pertenezca a C q (l».

Obtendremos una condición necesaria para la consistencia que usaremos


más adelante; para eso supongamos que el método ( 3.2 ) es consistente y £=
apliquémoslo al problema matemático:

y'=Ü
, entonces: podemos representar el error de discretización global de la siguiente forma:

e(x ; e ; h) = y(x) - u(x ; e ; h) ( 3.7 )


1
T(x ,y; h) = - (y (1 + aM + ... + a()) - h F( x, y,..., y ; h ; O ) ) = O(h"), x-x,,
h (donde u(x ; £ ; h) = u n , siendo n = )
h
suponiendo F continua y acotada deducimos:
El método de paso múltiple dado en ( 3.2 ) es llamado convergente
1 + a r _, + ... + a0 = O (3.5
si y sólo si (def)
Por otro lado para que un método nos interese vamos a imponerle la con-
dición de regularidad: Para toda e = e (z ; h) que cumpla:

F(x , u r , u r _, ,..., u 0 ; h ; 0) = O (3.6)

para todo x , h , y u^ con j = O ,..., r . y tal que exista r(h) con lim r(h) = O, y
h->0

| e (z ; h) | < r(h) , para todo z = x¡, i = O , ..., r - 1,


Convergencia de un Método de Paso Múltiple. Error de
discretización global y para toda f que pertenezca a Cq( D ) resulte:
Puesto que la solución aproximada de una ecuación diferencial obtenkl.i
X-X,,
por medio de un método de paso múltiple depende de lim u(x ; e ; hn) = y(x) , con hn = (3.8)

x fijo , x en [a , b].
336 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias t (/

Ecuaciones lineales en diferencias La expresión ( 3.13 ) nos permite deducir que si \s un cero de orden
n+1 del polinomio característico, las expresiones (3.11) nos dan soluciones
La siguiente expresión simboliza una ecuación en diferencias lineal y ho- de la ecuación en diferencias para p = O, 1, ..., n
mogénea de orden r: Con estos resultados es sencillo probar el siguiente teorema:

akuj+k = (3.9) Teorema 3.1


k=0
Sea <|í(X) como en ( 3 . 1 0 ) con a0 ^ O, y sean [\i=1 , k ceros distin-
Para toda secuencia u0, u,,..., ur., de valores de partida podemos determinar
tos de \|/(X,), cada uno de multiplicidad s¡, i = 1, 2, ..., k
exactamente una sucesión:
Sea p t (t) es un polinomio arbitrario tal que grado(p¡) < s¡ , i = 1, 2, ..., k,
uj+r, j = 0,1,..., solución de ( 3 . 9 ) entonces u n es solución de ( 3.9 ) si y sólo si

A la ecuación en diferencias ( 3.9 ) nosotros le asociamos el polinomio ca- k


racterístico: un = 2 p¡(n) X," n = 0,1,2,...

\|f (A,) = a r ?ir + a r _ , X"1 + ... + a, A, + a0 ( 3.10 ) Una nueva definición nos permitirá avanzar en el estudio de las ecuacio-
nes en diferencias:
Nos proponemos estudiar soluciones de ( 3.9 ) de la forma:
Vamos a decir que (3.10) satisface la condición de estabilidad si y sólo si

(3.11) Si { \M son los ceros de ( 3.10 ) entonces cumplen:

a) | X¡ | < 1 para todo i


Nos será útil recordar un resultado del Análisis Matemático:
(3.14)
b) si | X¡ | = 1 entonces X¡ es un cero simple
dp L P dpl d¡
—- (f(x) g(x) ) = ? „ ( . ) -T— (f(x)) -r- (g(x)) (3.12)
dxp 1=0 i dx p ' dx' Con sencillos recursos de análisis se puede demostrar el siguiente teorema:

Reemplacemos ahora (3.11) en (3.9):


Teorema 3.2

r
•»-» HP
vi .. r
«-i dUp _ . ^ . r
^-i p- c - iPr HP-
Q r
ji ( 3.9 ) cumple la condición de estabilidad si y sólo si
= a — (X k )
k=0
el conjunto { un }^10 está acotado, siendo un solución de (3.9) para u0,
dp- ..., u r _, complejos cualesquiera.
3.13)
¡=o i
338 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 339

Condiciones para la convergencia de un Método de Paso No daremos aquí la demostración de este Teorema, pero de ella surge el
siguiente:
Múltiple
Antes de enunciar condiciones necesarias y suficientes para la convergen- Corolario 3.1
cia del método ( 3.2 ): Si agregamos a las hipótesis del Teorema 3.3, la de que el método es de
orden p, o sea
n , U n+r , ... , Un j h ; f),
CT (h) = O( h p ), con f que pertenece a C P (D), y además
definamos la ecuación en diferencias asociada al mismo como:
r(h) = O( h p ), entonces
v n + r + Z ak 11=0,1,;..
k=r-l y(x) - u(x ; e ; h n ) = O(V)
y el polinomio característico asociado al mismo como:
Un Ejemplo de Divergencia
r .,
Podemos verificar que:
Observemos que la consistencia del método implica ( 3.5 ), de donde se u n+2 + 4 u n+1 - 5 un - h ( 4 f n + 1 + 2 f n ) ,
deduce que en este caso X = 1 es una raiz de V|/ (\).
Antes de enunciar el Teorema fundamental de este apartado definiremos resulta un método de orden 3.
una condición adicional sobre F, que es una condición de Lipschitz con cier- Resolvamos con este método el PVI:
tas restricciones para h y f :
Si f pertenece a C'(D), entonces existen M y h0 tales que: y'=-y
y(0) = 1
si h < h() resulta:
r Entonces resulta:
| F ( x ) u r ) . . . ) u 0 ; h ; f ) - F ( x , v r > . . . , v o ; h ; f ) | < M 2 [u.-vj (3.15)
u n +2 + 4 u n+i - 5 un = h (- 4 un+1 - 2 Un ) , o sea:
Teorema 3.3
(3.16)
Sea el método ( 3.2 ) consistente en el sentido ( 3.4 ); además F satisface
la condición de regularidad ( 3.6 ) y es Lipschiziana según ( 3.15 ), entonces: Utilizaremos esta expresión para aproximar y(0.5) = e"05 = 0.606530...
con valores de h decrecientes tomando u, = y(h) = e~h (trabajaremos con 16
El método es convergente según ( 3.8 ) si y sólo si
dígitos, así que los errores de redondeo no influirán en los dígitos que obser-
varemos).
vale la condición de estabilidad ( 3.14 ).
340 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 341

Antes veamos que utilizando, para ejemplificar, h = 0.1: Métodos Lineales de Paso Múltiple
Con Euler obtenemos u2 = 0.81,
Como ya dijimos, los Métodos Lineales son aquellos para los que vale la
Con el Método del Salto de Rana, tomando u, = e 0 1 , obtenemos u2 = siguiente igualdad:
0.81903... r

Y con el método que estamos estudiando u 2 = 0.818715... F(xr, u j + r ,..., U j ; h ; f) = £, bk f(xj+k , u j+k ) ( 3.17 )
Como e"02 = 0.818730..., observamos que en 0.2 el método que estamos
Un método lineal de paso múltiple queda entonces determinado por los
estudiando nos da mejor resultado que un método de orden menor. ¿Pero qué
coeficientes:
pasa cuando avanzamos una cierta cantidad de pasos con este método?:

h = 0.1 , u0 = 1 , u, = e ai = 0.9048374..., u5 = 0.608199... a 0 ,..., a r _, , b 0 ,..., b r ;

h = 0.05 , u0 = 1 , u, = e-°-05 = 0.951229..., u,0 = 0.252934... Si br * O , decimos que el método es implícito o corrector;
Si br = O , decimos que el método es explícito o predictor.
h = 0.01 , u 0 = 1 , u, = e ° 01 = 0.990049... , u50 = - 5.46... 1024
Evidentemente si f pertenece a C'(D), siendo D acotado, la F de todo
Si graficamos las 3 soluciones obtenidas observando únicamente los val- método lineal es Lipschiziana y Regular, por lo tanto:
ores que toman entre -1 y 2 resulta: es consistente y cumple la condición de estabilidad si y solo si es conver-
gente
Vamos a observar que forma toma la consistencia en este caso.
Construyamos:
r-l i
L[z(x) ; h] = z(x + r h) + Z a¡ z(x + i h) - hZ b¡ f(x + i h , z(x + i h) ) =
r-l
= z(x + r h) + Z a¡ z(x + i h) - h Z b¡ z'(x + i h) = h l(z , y ; h) ( 3.18 )
i=0 ¡=0

Supongamos que f es suficientemente diferenciable; si desarrollamos por


Taylor alrededor de h = O, obtenemos:

h T(X , y ; h) = £ c. tí z(i) (x) + O(h" +1 ) ,

Más adelante analizaremos el fenómeno de la divergencia. siendo las dos primeras constantes:
342 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 343

r., 3) Métodos Implícitos de Adams-Moulton


De orden 1: ull+1 = u n + h fn+1 (Fuertemente Implícito, de paso simple)
c, = r + ( r - 1 ) aM + ... + a, - ( b0 + ... + br );
De orden 2 : u n+1 = un + h/2 (f n + f n+1 ) Crank-Nicholson, de paso
Si ahora definimos: simple)
De orden 3 : u n+1 = un + h/12 (5 f n+1 + 8 f„ - f n .,)
(3.19)
De orden 4 : u n+1 = u n + h/24 (9 f n+1 + 19 f n - 5 f n _, + f n . 2 )
valen las igualdades:
4) Método Predictor-Corrector de Milne (de orden 4)

También vale la siguiente igualdad:

t ( x , y ; h ) = ~ z(x) + c, z'(x) + 0(h),


Errores en los Métodos de Paso Múltiple
h
Propagación de errores inherentes. Estudio de primer orden de
y entonces son válidas las siguientes afirmaciones: la estabilidad local
consistencia si y solo si c0 = c, = O si y solo si \|/(1) = 0 y \|/'(1) = X (1) Supongamos estar frente al problema matemático expresado por ( 3.1 ) y
supongamos que ( 3.2 ) define el problema numérico asociado a ( 3.1 ). Los
El método será de orden p si y solo si c0 = c¡ = ... = c = O, c , 0. datos del problema numérico serán los r valores:

u0 , u, , ... , u,. , ;
Algunos Métodos de Paso Múltiple
Vamos a suponer nulos o despreciables los errores inherentes en los a¡ y
1 ) Método del Salto de Rana o de la Rayuela en los coeficientes que pueda contener la F.
Consideraremos entonces sólo los errores inherentes:

2) Métodos explícitos de Adams-Bashforth u - =

- De orden 1 : u n+] = un + h f(xn , u n ) (Euler, de paso simple)


De orden 2 : u n+1 = u n + h/2 (3 f(xn , u n ) - f(xn,, , u n ,) )
De orden 3 : u n+1 = un + h/12 (23 f n - 16 fn., + 5 f n . 2 )
De orden 4 : u n+1 = un + h/24 (55 f n - 59 f n ., + 37 fn.2 - 9 fn.3)
344 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias W>

Definamos ahora la perturbación en el paso j+r , Diremos entonces que el problema numérico es fuertemente estable

u j+r - u j+r = e j + r , si y solo si

donde u-+r se obtiene al resolver ( 3 . 2 ) , o sea: existe un h0 tal que para h < h0, y para cada x - , u- , ..., u - , las raíces de
r-l ( 3.20 ) son de módulo menor o igual a 1.
ü j + r + £ aiüj+i = h F ( x j , ü j + r , . . . > ü j ; h ; f ) .
EJEMPLO 3.2
Si aplicamos Taylor a la expresión anterior, desarrollando alrededor de los
u¡, obtenemos como estimación de primer orden: Consideremos el siguiente PVI de segundo orden:

r-l r
y "+ ay' = O a>0
E i+r + £ a¡ ej+i = h 2 y( xo ) = Yo 7 'K) = Yo'
i=0 i=0
Deseamos estudiar la estabilidad del problema numérico que resulta al
y agrupando convenientemente obtenemos la ecuación en diferencias: intentar resolver el problema matemático anterior utilizando el Método de
Adams-Bashforth de orden 2.
r-l
Primero transformamos en un SEDO de primer orden:

y' = z
Las derivadas de F que aparecen en la ecuación anterior están evaluadas z' = -az
en Uj +r , ... , u. , por lo tanto la expresión anterior depende del punto que este- y( x ( ) ) = y() z( x 0 ) = y,,'
mos considerando; de ahí que digamos que este es un análisis local.
Supongamos ahora que para cada punto y para ciertos valores de h las El problema numérico resulta:
raíces
uul ° -- v70 ' u
U2
°- v
70' '

h
,, k+1 _ ,, k i fí .. k ,, k-l\, - u, + — (3 u2 - u2 )
del polinomio característico asociado a ( 3.20 ) cumplen con la condición de 2
estabilidad; los resultados previamente obtenidos nos permiten asegurar que
en este caso las perturbaciones se mantendrán localmente acotadas cuales-
h
u 2k+l = u2k + — (- 3 a u2k + a u/'1).
quiera sean los valores originales de las mismas. 2
346 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 347

Como las ecuaciones en diferencias son lineales, al perturbar se obtienen Con un pequeño esfuerzo de cálculo obtenemos los cuatro autovalores:
ecuaciones idénticas:
2 - 3 a h + V 9 a2 h 2 - 4 a h + 4
— O, A¡ — 1 ,
e ] k + 1 =e 1 k + y (3E 2 k -e 2 k -')
2 - 3 a h -V 9 a2 h2 - 4 a h + 4

tr.2k+1 -£
_0 k i
2 -h —

Mediante manipulaciones algebraicas y desarrollos de primer orden, po-


Tenemos entonces un sistema de dos ecuaciones en diferencias de segun- demos probar que si:
do orden. Utilizando una técnica similar a la que nos permite pasar de una
ecuación diferencial de orden superior a un sistema de ecuaciones diferen-
h<
ciales de primer orden, transformaremos el sistema anterior en uno de cuatro 9a
ecuaciones en diferencias de primer orden:
los autovalores tienen módulo menor o igual a 1. Decimos entonces que el
problema es fuertemente estable.
w 2k+1 = £2k Observemos que si a » 1 tenemos una gran limitación sobre el valor de h.

w h £2k Propagación de los errores de redondeo en los métodos lineales


de paso múltiple
h
£k+1 = — a w k - — ah)£k

2 2 Si llamamos eim al error de redondeo local cometido al evaluar ün+r po-
demos escribir la siguiente relación:
Ahora podemos estudiar la matriz de amplificación: r-l r

"n+r + £ \n+r = h I bk f(X n+k , ü n+k ) + E n+r , 0 =0 , 1 , 2 , . . .


k=0
O O 1
Nuestro problema es estudiar la influencia de estos errores locales sobre el
O o O 1 error de redondeo propagado:
h
O
2
1 lh rn = Un - Un >

23
O O l--ah Supongamos: I en I < E y rk = O para k = O , 1 ,..., r-l
2
348 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 349

Bajo estas condiciones podemos probar que: Y' = F(x,Y)


siendo: (4.2)

siendo G, B y L constantes definidas por el problema. f1(x,y,)y2,...,yn)

Y' = , F(x,Y) =
VI.4 Resolución de Sistemas de Ecuaciones Diferenciales
Ordinarias de Primer Orden y Problemas de Orden yn-i
Superior
yn'

Mientras que la condición inicial asume la forma:


Sistemas de Ecuaciones Diferenciales Ordinarias de Primer
Orden

Recordemos la forma que toma en este caso un PVI:

y/^iU-y, > y 2 ' - > yn)


y2' = f 2 (x , y, , y2 ,..., yn)
(4.1)
Supongamos ahora que <t>(x k , u k , u k+1 ; h ; f) define un método de paso
simple para la resolución de una ecuación diferencial ordinaria; el método
y»' = fn ( x . y,»v 2 > -. yn) que induce para resolver un problema del tipo ( 4.2 ) se obtiene mantenien-
do la forma de la (¡) y reemplazando uk por
y utilizando notación vectorial:

Uk _ , donde u¡k aproxima a y¡(xk), o sea Uk aproxima a Y(x k );


350 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 351

Definimos entonces: U° = [ 4. , 1.25 ]'


(j)(xk)Uk)Uk+1;h;f1)
Uk+I = Uk + h F(xk , Uk)
0(xk,Uk,Uk+1;h;F) = (4.3)
^(xk)Uk,Uk+I;h;fn)
Resolviendo el problema en el intervalo [0,1] con h = 0.001 se obtuvie-
ron los siguientes resultados:
donde <j)(xk , Uk , Uk+l ; h ; f¡) tiene la misma forma que <|>(xk , u k , u k+1 ; h ; f).
max { | y( xk ) - u, k | }™ = 0.36
Finalmente el Problema Numérico originado por ( 4.2 ) y ( 4.3 ) toma
la forma: max { | z( xk ) - u2k | } k 0 = 0.18
rjO
LJ _ y
I0 Trabajando con h = 0.0001 se obtuvo:
(4.4)
,10000
Uk+1 = Uk + h <D(x k , Uk , U k+I ; h ; F) max { | y( xk ) - u = 0.036
JOOOO
EJEMPLO 4.1 max { | z( x, ) - u?k
2 k=0 = 0.018

Resolver numéricamente el siguiente PVI: Si resolvemos el mismo problema matemático utilizando el Método de Run-
ge-Kutta de orden 2, resulta:
y1 = y + 4 z - e x = f l ( x , y , z )
Q 1 (x k ,U k ) = h F ( x k , U k )
z' = y + z + 2 ex = f 2 (x , y , z)
Q2(xk , U k ) - h F(xk + h , Uk + Q,(xk , U k ) ),
y(0) = 4 , z(0) = 5/4
y entonces el Problema Numérico queda expresado por:
Comparar el resultado obtenido con la solución analítica:
U° = [ 4. , 1.25]'

Uk+1 = Uk + 1/2 ( Q,(xk , Uk) + Q2(xk , Uk) )

Para h = 0.01 resulta:


Utilizaremos primero el Método de Euler. En este caso
r max { I y(xk) - u, k | }k°=°0 s 0.035
f , ( x k ) u Ik ', u-2'
k)
100
<D (x k , Uk , Uk+1 ; h ; F) = F( x k , Uk ) = max { I z(xk) - u2k I }k=0 = 0.017
f2(xk,uk,uk)
y el Problema Numérico queda expresado por:
352 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinaria; i'> (

Observemos que Runge-Kutta de orden 2 con h = 1 0 ~ 2 nos permite oh U 0 =[3.,l.]'


tener valores un poco mejores que Euler con h = 104
h2
U k+I = Uk + h ( F(xk , Uk) + ~ F ' ( x k , U k ) + -
-F"(xk,Uk))
¿ o
EJEMPLO 4.2
Consideremos el siguiente SEDO: El gráfico de las soluciones numéricas obtenidas con h = - 0.1 es el si-
guiente:
y' = y + z2 - X3

z' = z + y3 + cos(x)

Dada la condición "final" y(l) = 3 , z(l) = 1, deseamos conocer la solu-


ción en el intervalo [-2,1].
Este sigue siendo un PVI en el que simplemente debemos trabajar con
h < 0; utilizaremos el Método de Taylor de orden 3.
Tomemos:

z2-x3

f 2 (x , y , z) = z + y3 + cos(x) ,

f , ' ( x , y , z ) = f , ( x , y , z ) + 2 z f 2 ( x , y , z ) - 3 x2 ,
Problemas a Valores Iniciales de Orden Superior
f 2 '(x , y , z) = f 2 (x , y , z) + 3 y2 f,(x , y , z) - sen(x) , Ya vimos en VI. 1 como transformar una ecuación diferencial de orden su-
perior en un SEDO; vamos aplicar esta técnica al siguiente PVI:
Se desea conocer y(x) en el intervalo [ 0 , 1 ] sabiendo que:
f2"(x , y , z) = f2' + 3 (2 y f, f, + y2 f/) - cos(x) ;
y" = -3 y' - 2 y + 6 x + 9
Con estos resultados podemos calcular:
y(0) = 3 , y'(0) = - l .
f,(xk, u k , u 2 ) ~f,'~ "f,""
F( x k , Uk ) - f 2 (x k , u k , u 2k ) , F' = , F" = f2"
V

y entonces el Problema Numérico queda definido por:


354 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias 355

El problema planteado origina el siguiente SEDO: Utilizando el Método de Paso Simple O (x k , U k , U k+1 ; h ; F) obtenemos
el Problema Numérico:

Uk+1 - Uk + h <D (xk , Uk , U k + I ; h ; F)


y(0) = 3, z(0) = - l .
Consideremos que en el paso de cálculo k-ésimo obtenemos los valores
Con el objetivo de resaltar solo lo esencial utilizaremos para resolverlo el U k como resultado de los errores propagados hasta ese momento:
Método de Euler:
£k =
U° = = Uk-Uk

6x
Queremos medir en forma aproximada la propagación de estos errores al
Los valores que nos interesan son los de u, , ya que u, k = y( xk ). paso siguiente:

Resolviendo con h = 10 3 y comparando los valores obtenidos con la solu- ijk+i . £ k+i = uk - ek + h d> ( x k , Uk - e k , Uk+1 - ek+l ; h ; F )
ción analítica y(x) = e~2 x + 2 e' x + 3 x obtuvimos:
Para conseguirlo haremos un análisis local de primer orden de la propa-
max { I y(xk) - u, kk < r ! =0.017. gación del error utilizando un desarrollo de Taylor de primer orden que nos
permite obtener la siguiente igualdad:
Repitiendo los cálculos con h = 10 4 obtuvimos:
k +l (4.5)
| y ( x ) - u M } ! 0 = 0.0017.
Donde J(O) representa a la matriz Jacobiana de O con respecto a las va-
riables Uk y Uk+1 ; ( 4.5 ) puede escribirse de la siguiente forma:
Análisis de la Estabilidad en la resolución numérica
de Sistemas de Ecuaciones Diferenciales Ordinarias de £k+1 = (l + h J(<D)(x k , U k , U k+1 )). e k ,
Primer Orden
donde I representa la matriz Identidad de nxn.
Consideremos nuevamente el SEDO ( 4.2 ): Llamaremos a I + h J(O)(x k , Uk , U k+1 ), matriz de amplificación.
' = F(x,Y) Diremos que un Problema Numérico es fuertemente estable si y solo si
para valores de h suficientemente chicos el radio espectral de la matriz de
I Y(x 0 )=Y 0 amplificación es menor o igual que 1 dentro de la región en que permanecen
los valores de la solución hallada.
356 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias

La condición anterior nos garantiza que trabajando con un h apropiado Problemas Rígidos
las perturbaciones no crecerán en forma preocupante durante el proceso de
cálculo. Un SEDO se dice rígido cuando en sus soluciones intervienen escalas de
tiempo muy distintas. Las escalas de tiempos mas chicas imponen restric-
ciones a el paso de cálculo que no pueden ser eliminadas aún en las partes de
EJEMPLO 4.3
la solución en que predomina el aporte de las escalas de tiempo mas grandes.
Analizaremos la estabilidad del problema numérico planteado en la sec- Consideremos el caso de cierta reacción química que se describe con el si-
ción anterior: guiente sistema rígido:

y ' = - lOOOy + z
Uk+1 = Uk + h [u2k , -3 u2k - 2 u, k + 6 xk • z ' = 1000 y - 2 z
P
C
O 1
y(0) = 1, z(0) = O
Observemos que _9 -3
Queremos conocer el estado del sistema en t = 0.5 con un error absolu-
y entonces la matriz de amplificación resulta: to del orden de 102.
Sí intentamos usar el Método de Euler, como sabemos que es de orden
1 h
uno, esperamos que un h = 0.01 nos garantice un error de discretización del
-2h 1 -3h orden requerido.

Los autovalores de esta matriz se obtienen de la ecuación: Utilizaremos entonces el siguiente algoritmo con h = 0.01:

U°= [1 ,0]'
det( -2h 1 - 3h - ) = O
Uk+1 = Uk + h [-1000 u, k -i- u2k , 1000 u, k - 2 u2k]'
que resultan ser: A,, = 1 - h, X2 = 1 - 2 h. Luego de realizar 50 pasos obtenemos:
Vemos que si h < 1 los autovalores tienen módulo menor que 1 por lo
que el problema numérico es fuertemente estable. y(0.5) = u,50 = 5.4 1047
En este caso la limitación mas importante sobre h surgirá al querer con-
z(0.5) = u250 = -5.4 1047 (¡resultados incorrectos!)
trolar el error de discretización.
Si intentáramos granear la solución obtenida veríamos un conjunto de lí-
neas casi verticales oscilando violentamente, mientras que las soluciones ver-
daderas son:
358 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales oidmaini\i

Vamos a plantearnos la aproximación del problema matemático utili/.;m-


y(t) = 0.998999... e 1001001 ' + 0.00100... e °-9990 •' do el Método Fuertemente Implícito:

z(t) = - 0.9999980... e- 1001 - 001 ' + 0.9999980... e a"90 ' U°= [1 ,0]'

El gráfico de las soluciones analíticas en el intervalo [0,0.02] es el siguiente:

Mediante simples operaciones algebraicas llegamos a:

r,1 + 1000 h -h
U k+l = Uk
-lOOOh 1 +2h

Dada la linealidad del problema las perturbaciones responden al mismo


0,1 tipo de ecuación, por lo que la matriz de amplificación resulta ser la inversa de:

0.2
1 + 1000 h -h
A =
-1000 h 1 +2h
0.005 0.015 0.02
Si A., y A,2 son los autovalores de A , X,"' y ^ 2 "' resultan ser los auto-
valores de A '.
Observemos que fuera de un pequeño lapso de tiempo las soluciones va- Los autovalores de A resultan ser:
rían muy lentamente.
La explicación a los pésimos resultados numéricos la obtendremos estu- \1 + 1001.001 h y X2 = 1 + 0.999 h,
diando la estabilidad del problema planteado.
de donde obtenemos que el problema numérico originado por el método
La matriz de amplificación resulta ser:
fuertemente implícito es incondicionalmente estable.
1 - 1000 h h Si resolvemos con h = 0.01 ygraficamos y(t) y u, k obtenemos:
1000 h 1-2 h
o.oi
y los correspondientes autovalores: 0.008

0.006
X, = 1 - 0.999 h, Xj ~ 1 - 1001.001 h, 0.004

0.002
de donde concluimos que debemos trabajar con h < 1001.001"' para evitar
alejarnos de la solución verdadera con fuertes oscilaciones.
0.2 0.4 0.5
Resolución numérica de ecuaciones diferenciales ordinarias 361
360 Análisis numérico. Primer curso

El acuerdo de las dos funciones desde t = 0.1 en adelante es bueno, no ,IM VI.5 Métodos Directos para la resolución de Problemas a
desde O a 0.1 en donde la solución verdadera tiene una pendiente muy gran Valores Iniciales de Segundo Orden
de que la numérica no puede alcanzar avanzando con el h elegido.
Para aproximar la solución en todo el intervalo podernos hacer lo siguicn
La forma general explícita de un PVI de segundo orden es la siguiente:
te: en el intervalo en donde prevalece la componente de variación rápida re
solvemos con un paso muy pequeño con un método implícito o explícito;
luego utilizamos un método implícito que nos permite avanzar con un paso y " = f(x , y ,y ')
mayor sin problemas de estabilidad.
Resolvamos el problema matemático siguiendo los siguientes pasos:
La idea central para generar métodos directos es el desarrollo de Taylor.
i) En el intervalo [O , 0.1] utilizamos el Método Fuertemente Implícito
con h = 10 4
Método de Taylor
(observando las soluciones analíticas vemos que podríamos utilizar U>
davía un intervalo mucho menor para este paso) "o = Yo ' uo' = Yo'

u k+l = uk + h uk' + h2/2 uk" = uk + h uk' + h2/2 f(xk , u k , uk')


ii) En el intervalo [0.1 , 0.5] utilizamos el mismo método con h = 10~ 2

Con este procedimiento obtenemos: u'k+1 = uk' + h ( p u k " + ( l - p ) u " k + 1 ) =

= uk' + h (P uk" + ( 1 - P) f(xk+1 , uk+1 , u'k+1 ) )


m a x { | y ( t k ) - u 1 k | } 1 ™ = 0.018
Observemos que u k+1 se calcula en forma explícita, mientras que para
El máximo se alcanza en la parte de variación rápida de la solución.
calcular u' kl _, debemos resolver en general una ecuación no lineal.
Si hubiéramos resuelto el problema utilizando en el paso i) el Método de
Euler con el mismo paso ( h = 1 0 ~ 4 ) y el paso ii) con el Método Fuertemente Método de Newmark
Implícito, hubiéramos obtenido un resultado similar al anterior. Para mejorar el orden de aproximación también se toma implícita la ecua-
ción para estimar uk+1:

u k+I = uk + h uk' + h2/2 (a uk" + ( 1 - a) uk+1" )

En este caso para avanzar un paso en la solución debemos resolver en ge-


neral un sistema de dos ecuaciones no lineales.
362 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinarias <(> 1

Método de Nystrom siendo m la masa colocada en el extremo del resorte y H la energía total del
sistema.
Es un método de paso doble que se obtiene aproximando la derivadas pri-
mera y segunda por las conocidas expresiones centradas de segundo orden: Al resolver esta ecuación diferencial debemos ir controlando que la expre-
sión anterior se mantenga constante.
k+i Vamos a resolver el problema u^ípndo el Método de Taylor que en este
• u k _, - 2 uk + uk+1 = h2 f( x k , u k , caso resulta explícito pues en la f no aparece y'.
2h

i Así planteado el método es implícito. Existen problemas matemáticos que u k+ , = uk + h uk' + h 2 /2 (- co2 uk)
requieren aproximar la derivada primera por una diferencia hacia atrás (el
problema numérico resulta explícito) o una diferencia hacia adelante, aunque u' k+1 = < + h ( P (- co2 u k ) + (1 - P) (- co2 u k + 1 )),
perdamos un orden de precisión en la aproximación.
Evidentemente necesitamos de otro método para aproximar u , . haciendo p = co2 h2 y simplificando:

h2 uk+1 = ( l - p / 2 ) u k + hu k '
Puede ser: u, = u0 + y0' h + — f( x 0 , y 0 , y0' )
p
k+l ^ k
Problemas a Valores Iniciales de Segundo Orden Conservativos
Observemos que el carácter de la solución dependerá de la matriz
Si consideraciones previas nos imponen soluciones conservativas, o sea la
existencia de ciertas constantes de integración, debemos estudiar condiciones so-
1 - p/2
bre el paso de cálculo para que la solución numérica cumpla con este requisito.
A = i-p(i-p)
Simplemente como ejemplo vamos a plantearnos resolver la conocida ecua-
ción del resorte:
Si los autovalores de A son complejos la solución será oscilatoria, y si los
y " = -tíf y dos autovalores complejos conjugados tienen módulo 1 la solución será con-
servativa.
y(0)=y 0 , y ' ( 0 ) = y 0 ' Si el módulo de los autovalores es menor que 1 la solución numérica será
disipativa (pérdida de energía), y si el módulo de los autovalores es mayor que
Multiplicando ambos miembros de la ecuación por y ' dx vemos que la 1 la solución numérica será inestable (fuente de energía).
solución satisface:
Los autovalores son las raíces de la ecuación:
d ( y ' 2 ) + d(co2 y2) - O,
K - 2 X (1 - p/2 ( 3/2 - P) ) H- 1 H- p (P - 1/2) = O
de donde deducimos que:
2E
y ' 2 + co2 y2 = cte = — ,
m
364 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales ordinaiias 365

Para que las raíces sean complejas el discriminante de la cuadrática deb Si graneamos la solución analítica de este problema, y( x ) -- cos( l u x ) ,
ser menor que cero, o sea: junto con la solución numérica, no podemos distinguir una de otra:

p (3/2 - p) 2 - 4 < O, de donde

h< (5.1)

El esquema será conservativo si las raíces tienen módulo 1, cosa que oci
rre si el término independiente de la ecuación es igual a 1 , o sea:

2 |2 = 1 + p ( p - 1/2) =

Entonces el problema numérico resulta conservativo si:

1
La comparación algebraica de las soluciones nos indica que:
100
Si tomamos d) = 10, la condición ( 5.1 ) con (i = -- equivale a h < OJ max{ | u k - cos(10 xk = 0.003
Consideremos entonces:
Si graneamos u k ' 2 + ü)2 uk 2 obtenemos:
y " = - 100 y
100

y(0) = l , y'(0) = 0
9S

Trabajando con h = 0.01 el Método de Taylor origina el siguiente proble- 96 -


ma numérico:

u0 = 1 , u0' = O

uk+1 = 0.995 uk + 0.01 uk'


0.2 0.4 0.6
u k+I ' = - 0.9975 uk + 0.995 uk'

El gráfico anterior nos indica una conservación razonable de la energía.


366 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferenciales unlnunnr. 367

Discretizando el domino obtenemos:


VI.6 Problemas a Valores de Contorno

Vamos a considerar un problema a valores de contorno típico: --


n

y" = f ( x , y , y ' ) h Pk
u k-i - 2 uk
(6.1
y(a) = a , y(b) = (3
k = 1 ,2,... ,n-l
Siendo nuestro objetivo aproximar y(x) en el intervalo [ a , b ] .
h2 Pk Pk
Para resolver este problema es razonable dividir el intervalo [ a , b j en n Si hacemos: a k = 1 H
subintervalos de longitud h, con el objetivo de aproximar a la solución en los
extremos de los mismos. Si pretendemos una aproximación de orden 2 po- resulta:
demos escribir:
A U - R , con:
b-a
h=
a, -c 0 ... 0
-b2 a2 -c2 0 ... ... 0
k-i - 2 uk + u k+i = h 2 f ( x k > uk > " k+l2 'hU k -'
0 ... -bk ak -ck ... 0
A =
Observemos que nos ha quedado planteado un sistema de n - 1 ecua- 0 ... ... 0 -bn-¿, an-¿, -cn-¿,
ciones, en general no lineales, para obtener los n - 1 valores que buscamos:
0 0 A-, V,

Más adelante veremos que en ciertos casos es necesario perder precisión y


aproximar la derivada primera con diferencias hacia adelante o hacia atrás. " r, 1 fbi «
0
Estudiaremos especialmente el siguiente problema elíptico lineal ordinario: h2
R=-
2 r n-2 °
y " - p(x) y ' - q(x) y = r(x) O< x < 1
r n-l C n-l P
(6.2) J L J
y(0) = a , y(l) = P q(x) > O
ui
U2

U=
U n-2

U nl
368 Análisis numérico. Primer curso Resolución numérica de ecuación!-, i l i l i - n - m mlf, n.'i

Una condición suficiente para que el sistema de ecuaciones lineales recién AU = R, con:
piaiHcauu tenga .suii.ii.iuu única es que. ^^^^H

^^^H a, -c, 0 0
v , k - 1 , 2 , ... , n - 1 , ( O.J ) ^^^H -b, a, -c, 0 ... ... 0
> Pki ^H
0 ... -bk ak -ck ... 0
pues entonces | bk | + | ck | = 1 y A es estrictamente diagonal dominante. ^^^H A =
Las condiciones en el borde pueden estar dadas sobre las derivada, o en ^^l| 0 0 -b n _, an., -cn.,
forma mixta. A título de ejemplo plantearemos un problema a valores de con- ^^H| 0 ... ... ... 0 -1 an
torno mixto: ^^^H
r, b,a
y " - p(x) y ' - q(x) y = r(x) 0< x < 1 ^H
h2 r2 - 0
R =- — ... +
y(0) = a, y ' ( D = P q(x) > 0 ^H
2 r n _, 0
Ahora el u n también es una incógnita, por lo que el sistema de ecuaciones ^^^1 ^^H
que debemos plantear en principio es: ^^^H

i ^ ^ ,., • U2

u k-i - L u k + u k+i " 2 ^uk+|-uki^- n qkuk n lk ^^H


U n-l

k=l,2,...,n ^H Un
^^^"
Son n ecuaciones con n+1 incógnitas, pues aparece u n+1 . La ecuación
que nos falta la obtenemos de la condición de borde:

Método del Tiro


= P-
2h
Una idea muy sencilla hace que en ciertos casos podamos evitar la resolu-
El nodo n+1 es "ficticio" pero nos permite resolver el problema, ya sea ción del sistema de ecuaciones (sea lineal o no lineal):
considerando las n+1 ecuaciones, o simplemente reemplazando en la que
Dado el problema matemático (6.1) planteamos la resolución del siguien-
corresponde a k = n el u n+1 por un , + 2 h (3 , resultando entonces:
te PVI:
370 Análisis numérico. Primer curso Resolución numérkti </<' i'iiiiinniii", <///r/rn< mli-. ,<nlin,in,i: 1/1

y" = f(x,y,y') Si el problema de frontera es lineal:

y(a) = a y"- p y' -q y = r


(6.4)
y(a) = a , y(b) = P ,

Vamos a llamar u°k k = O , 1 ,..., n a la solución de este PVI. para aplicar el Método del Tiro solo debemos resolver dos PVI:
Si u °n = p0 = P hemos resuelto el problema a valores de contorno; en ca
contrario resolvemos el siguiente PVI:
i) y/'-pyí'-qy, = r
y,(a) = a , y,'(a) = í, y
y" = f ( x , y , y ' )

y(a) = «
ü) y2" : P Y2' - q y2 = r
y 2 (a) = a , y 2 '(a) = O

Observemos ahora que cualquier combinación de la forma:


obteniendo el valor u ^ =P,.Si este valor es igual a P hemos resuelto el pro|
blema; en caso contrario tratamos de resolver la ecuación no lineal:

g(Y) - P = O, es solución del problema:


en donde g es la función que relaciona la condición inicial de la derivada coi) y" - p y' - q y = r
el valor de la función y(x) en la frontera b:
y(a) = a , con
a(y } = u"1 = B
o\' n rm '

utilizando el método de la secante:


de donde deducimos que la solución de ( 6.4 ) tiene la forma:
g(Yj-P
Ym + , = Ym
g(Yj - g(Ym-l) y(x) = (1 - X ) y,(x) H- Xy 2 (x) , con

* m+1 im (Ym - Ym.,) X=


Pm-Pm-,
y 2 (b)-y,(b)
372 Análisis numérico. Primer curso Resolución numérica t/c nliiKioin-. i/í/rir/n nili-, i > n l i i i , u i , i : I/ t

Problemas de Capa Límite En el siguiente gráfico se observan superpuestas l.i soliu ion . u u l i i u .1 y l.i
numérica:
Los problemas a valores de contorno cuya solución cambia rápidamente
en una franja muy estrecha del dominio se llaman de capa límite. Las ecua-
ciones diferenciales que definen problemas de capa límite tienen general-
mente un coeficiente pequeño en el término de la derivada de mayor orden.
Para desarrollar algunas ideas relacionadas con el tema plantearemos un
problema a modo de ejemplo:

ey" + ( l - e ) y ' - y = 0 0< x < 1

y(0) = 0 , y(l) = l

La solución analítica del problema planteado es la siguiente: 0.2 0.4 0.6 0.8

e*- e-X/E
y(x) = Las oscilaciones de la solución numérica transcienden la capa límite a pe-
e - e -l/E
sar de que suficientemente lejos de ella la concordancia es buena.
Si discretizamos el problema utilizando diferencias centradas para aproxi- Si quisiéramos resolver la capa límite no tendríamos otra alternativa nue
mar la derivada primera, de ( 6.3 ) deducimos: tomar un paso suficientemente chico para trabajar dentro de ella.
Si no nos interesara resolver con alta precisión la capa límite podríamos
2e obtener una solución numérica que acompañara más suavemente a la solu-
h<
1 -e ción analítica dentro de la capa límite utilizando en este caso diferencias hacia
adelante para aproximar la derivada primera (si el coeficiente de la derivada
Para observar que ocurre al violar la desigualdad anterior resolvamos uti- primera en la ecuación diferencial fuera menor que cero deberíamos utilizar
lizando diferencias centradas con £ = 0.001 y h = 0.01. diferencias hacia atrás):

u0 - O , u n = 1

e (u k+1 - 2 u k + u k .,) + h (1 - e) (u k+1 - uk) - h2 u k = O , k = 1,2 ,..., n - 1

Si resolvemos este problema numérico con h = 0.01 para aproximar el


problema matemático recién planteado obtenemos una solución numérica
cuya gráfica comparada con la de la solución analítica es la siguiente:
374 Análisis numérico. Primer curso Resolución numérica de ecuaciones diferencial^ uiilinaim i/'i

1.4) Para una malla equidistante, construir una aproximación en diferencias de


orden 3 para u'(x):
0.8 a) en adelanto b) en atraso c) centrada.

0.6

2) Problemas a Valores Iniciales. Método de Euler.


0.4

2.1) Resolver el siguiente PVI y comparar con la solución exacta:


0.2

du
— + u -1 - 1 = O , u(0) = 1 , t > O ;
0.2 0.4 0.6 0.8 dt
Utilizar como paso k = 0.1 y avanzar 10 pasos de cálculo.
La solución exacta es: u( t ) = t + e-'.
Si ampliáramos la capa límite veríamos que en ella la solución numérica
no aproxima bien a la analítica, pero apenas superada la capa límite el acuer- Mejorar los resultados obtenidos utilizando Extrapolación de Richardson.
do es muy bueno para el tamaño de paso elegido.
2.2) Aproximar el siguiente problema matemático:
Si queremos saber que pasa en la capa límite debemos trabajar dentro de
ella con un paso suficientemente chico, y luego podemos elegir un paso mayor. du
= - u 2 , u(t0) = u ( ) > 0
dt
Analizar la estabilidad,
Ejercicios ídem para u0 < 0.

2.3) Aproximar el siguiente problema y analizar la estabilidad:


1) Método de los coeficientes indeterminados.
2u = 0 , t > 0 , u(0) = u 0 , u'(0) = u'0
1.1) Construir una aproximación en atraso con tres puntos equidistantes de u'(x); dt2
analizar el error de discretización de la fórmula obtenida.
2.4) Aproximar el siguiente problema matemático y analizar la estabilidad:
1.2) Considerando puntos equidistantes, construir una expresión en adelanto de
orden 2 para u"(x). du,

1.3) Utilizando puntos equidistantes, construir una aproximación de orden 2 de


(a( x ) u'( x ) ) , donde a( x ) es una función conocida y suficientemente lisa.
Í
dt
t > 0 , u1(0) = a, u2(0) =
Nl-MlIlHIílll lllllIlt'IHII ¡i,' l-llllltltlllf, tll/l'K•IHKlll", OllllIHIinr. I//
376 Análisis numérico. Primer curso

3.6) Calcular para el siguiente problema u(0.5):


3) PVI. Métodos Implícitos y Explícitos.
du
3.1) Aproximar el siguiente problema matemático utilizando el Método Fuerte + (1 +1) IP = o , u(0) = 1 , utilizando el método:
dt
mente Implícito y analizar la Estabilidad:
a) de Euler
du b) Predictor - corrector explícito
= - u 2 , t > 0 , u(0)=1
1T c) Runge - Kutta de orden 2
Obtener previamente el factor de amplificación y durante el cálculo verificar
Analizar que ocurre si u(0) = -1.
en cada paso que dicho factor es menor o igual a 1. Elegir un paso k < 0.1
por razones de precisión.
3.2) Aproximar el siguiente problema matemático por el método de Runge-Kutta
de orden 2 y analizar la estabilidad. Avanzar 10 pasos de cálculo y comparar
3.7) Sea el siguiente problema:
con la solución exacta:
du u1 - — - O , u(0) = 1
t , t > 0 , u(0) = u
~dt~
Discretizarlo utilizando:
Solución exacta: u(t) = 2 e1 - 1 -1.
a) Runge- Kutta de orden 2
b) Crank- Nicholson
3.3) Analizar la estabilidad del esquema del salto de rana aplicado al siguiente
problema: Verificar que el error de truncamiento es de orden 2.
du Estudiar la estabilidad.
- = - u 2 , t > 0 , u(0) = u 0 >0
dt
3.9) Sea el siguiente problema:
3.4) Aproximar el siguiente problema por el método de Euler utilizando un paso du
k = 0.01 y obtener u(0.1). Estimar el tamaño de malla necesario para obte- ¥+ u.t = 0. u(0)=1

ner una precisión de 10"4:


Discretizarlo mediante el esquema de Crank - Nicholson y analizar la estabili-
du dad suponiendo que u permanece positiva.
- - t - u - u t = 0 , t>0,u(0) = 1
dt Avanzar la solución un paso de cálculo tomando k = 0.1.
3.5) Repetir el problema anterior utilizando el método implícito ponderado de orden
2, con un paso k = 0.025. Analizar comparativamente el esfuerzo de cálcu-
lo requerido por ambos métodos. 4) PVI. Ecuaciones diferenciales de segundo orden.

4.1) Sea la siguiente ecuación diferencial:


u" + v u' -i- o>2 u = O , v > O ;
378 Análisis numérico. Primer curso Resolución numérica de eaia< iuní-, ili/m-nt ml<-. <mliinin<r. t/'i

Discretizarla utilizando: 5) Problemas a Valores de Contorno


a) El Método de Newmark
b) El Método del Salto de Rana 5.1) El análisis en régimen estacionario de la conducción del calor a través de un
sólido con generación interna de calor está dado por el siguiente problema:
Analizar la estabilidad.
Avanzar dos pasos de cálculo tomando v = co = 1 para las siguientes condi- u' + f(u) = 0, 0 < x 0 < x < x 1 , u'(x0) = 0 ,
ciones iniciales: u(0) = 1 , u'(0) = 1. Estudiar la estabilidad y elegir un h de
trabajo apropiado. Si el sólido es una placa plana y la generación de calor es constante, ó sea
4.2) Transformar la ecuación diferencial del problema anterior en un sistema de p = O y f(u) = — , resulta para x0 = O y x, = 1 :
ecuaciones de primer orden y discretizar utilizando: K

a) Método Predictor - Corrector Implícito


u"+ — = 0 , 0 < x < 1 , u'(0) = 0 ,
b) Método Fuertemente Implícito k
Analizar la estabilidad y avanzar dos pasos de cálculo. La solución exacta de ésta ecuación es:

4.3) Para el siguiente problema plantear un esquema de paso doble (3 niveles de u(x) = 1 + - - (1 - X2) .
tiempo), con un orden de precisión 2, y demostrar que es incondicionalmente ¿. k
estable:
Se pide encontrar numéricamente el perfil de temperaturas u( x ) cuando
d2u du
— + a — = O , u(0) = u 0 , u'(0) = u'0 q
=2
2k
Utilizar un paso de cálculo h = 0.1 .
4.4) Resolver el siguiente sistema rígido utilizando un método numérico apropiado:
5.2) Resolver el siguiente problema para h = 0.1 :
u' + 2000 u-1000 w = 1
u'
u"+ . _ + u = 0 , 1 < x < 2 , = 0 , u(2) =
w1 - u = O , x

u(0) = O , w(0) = O , O < t < 5. 5.3) Resolver el siguiente problema de capa límite utilizando el método del tiro:
E u" + 2(1 - x2) u'+ u2 = 1 , -1 < x < 1 , u(-1) = u(1) = O

5.4) Sea el siguiente problema:


u" + x = 0 , 0 < x < 1 , u(0) = 1 , u'(1) = 0 ;
380 Análisis numérico. Primer curso on i n i i n i ' i n . : , / / / r / i ' / n m/i". niiliiKimr. IHI

a) Construir una aproximación en diferencias de orden 2, incluidas las con- 6.8) Los métodos do iiilo(|ia<:mii do paso múltiplo para n,naciones do pinnn oidon
diciones de borde. Expresar el sistema de ecuaciones resultante en for- pueden interpretarse corno generalización do métodos do cuadratura. Hacer
ma matricial. la misma interpretación para los siguientes métodos de paso simple:
Crank - Nicholson, Hunge - Kutta de orden 2 y Runge - Kutta de orden 4, y ex-
1 1 plicar por qué.
b) Resolver el problema para h =— y h = — , utilizando Eliminación de
¿. \J
6.9) Se dispone de una rutina que es una implementación del método del salto de
Gauss sin pivoteo, y redondear los resultados a 4 dígitos. rana. Indicar métodos para arrancar y por qué.
c) Aplicar Extrapolación de Richardson para obtener una mejor aproxima-
ción de u(1). 6.10) Estamos ante un problema incondicionalmente estable. Indicar si esto signifi-
ca que podemos elegir un paso tan grande como querramos.

6) Preguntas Teóricas 6.11) Explicar a qué problemas se aplica, y alguna ventaja del método de Newmark.

6.1) Indicar cuál es la ventaja de los métodos implícitos sobre los explícitos y en 6.12) ídem anterior, para el método del tiro.
qué tipo de problemas se manifiesta.
6.13) Explicar qué son las ecuaciones diferenciales rígidas y qué métodos es con-
6.2) Indicar cómo se demuestra en la práctica que una solución numérica es con- veniente utilizar para resolverlas.
vergente.
6.14) Establecer la diferencia entre los conceptos de condición de estabilidad y es-
6.3) Indicar qué significa que un esquema numérico para una ecuación diferencial tabilidad.
tiene orden de precisión 2, y a qué tipo de error se refiere.
6.15) Indicar cuál es la dificultad que aparece al aplicar métodos de paso doble a
6.4) Indicar qué tipo de error es el que puede minimizarse por Extrapolación de ecuaciones de primer orden.
Richardson.
6.16) Indicar si es posible aplicar métodos para PVI de orden 1 a PVI de orden 2.
6.5) Indicar cuál es operativamente más complicado de resolver: un PVI o un PVC
y por qué. 6.17) Explicar qué significa que un problema numérico es conservativo.

6.6) Definir condición de estabilidad y convergencia para un método de paso sim- 6.18) Explicar la técnica para aplicar métodos diseñados para PVI a PVC.
ple; ídem para uno de paso múltiple.
6.19) Obtener la fórmula de Extrapolación de Richardson para el método de Crank -
6.7) Definir consistencia de un método de paso simple; ídem de un método de pa- Nicholson, tomando k y k/2.
so múltiple. Definir estabilidad de un problema numérico.
382 Análisis numérico. Primer curso 383

6.20) Explicar qué significa "estructura de capa límite". Representarla gráficamente. Bibliograh.i
Indicar alguna ventaja de la utilización de un método:

a) de paso múltiple, en lugar de paso simple.


b) implícito en lugar de explícito. W. Alk-n Smilh. PRHNT1CK HALL

ivs numérico.
Hurden - Paires. International Thomson Editores

Análisis numérico.
David Kincaid - Ward Cheney. Addison - Wesley Iberoamérica 11.1

Análisis Numérico. Un enfoque práctico.


Melvin J. Marón - Robert J. López. CECSA

Análisis Numérico.
Francis Scheid, Me Graw Hill

Applied Numerical Methods.


Brice Carnahan - H. A. Luther - James O. Wilkes. JOHN WILEY & SONS

Cálculo numérico fundamental.


B. P. Demidovich - A. Marón. Paraninfo

Cálculo numérico y gráfico.


Manuel Sadosky. Librería del Colegio

Discrete variable methods in ordinary differentíal equations.


Peter Hehrici. John Wiley

Introduction to numerical analysis.


J. Stoer - R. Bulirsch. Springer - Verlag

Méioilo.1 numéricos aplicados con software.


Nakamura S. Prcniice Hall

Vous aimerez peut-être aussi