Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MATEMTICAS
INICIACIN A LOS
MTODOS NUMRICOS
MATERIAL DIDCTICO
Matemticas
n 7
UNIVERSIDAD DE LA RIOJA
SERVICIO DE PUBLICACIONES
2012
A Mara
Prlogo
La bsqueda de soluciones reales ha cautivado la atencin de los matemticos desde sus primeros tiempos,
ocupando un lugar importante en el estudio de las matemticas. Encontrar una solucin exacta de un problema
puede llegar a ser imposible, o puede que no podamos encontrar una respuesta de forma conveniente en una
gran cantidad de aplicaciones reales. Cuando esto ocurre, perseguiremos dar respuestas tiles que involucren
la bsqueda de resultados aproximados suficientemente buenos. Esta es la razn de los mtodos numricos,
teniendo muchos de ellos una larga historia.
Los mtodos numricos son tcnicas matemticas que se utilizan para resolver problemas matemticos
que no se pueden resolver, o que son difciles de resolver, analticamente. Una solucin analtica es una
solucin exacta que tiene la forma de una expresin matemtica en funcin de las variables asociadas al
problema que se quiere resolver. Una solucin numrica es un valor numrico aproximado (un nmero) de la
solucin. Aunque las soluciones numricas son aproximaciones, pueden ser muy exactas. En muchos mtodos
numricos los clculos se ejecutan de manera iterativa hasta que se alcanza una exactitud deseada, de manera
que tienen que ser lo suficientemente exactos como para satisfacer los requisitos de los problemas a resolver
y lo suficientemente precisos para ser adecuados.
El origen de este texto es un curso introductorio de mtodos numricos que lleva impartiendo el autor en la
Universidad de La Rioja desde el curso 2006-2007. El texto proporciona una introduccin a los fundamentos
ms bsicos de los mtodos numricos y a su utilidad para resolver problemas, ofreciendo una primera toma
de contacto que sirva para conocer una parte del amplio catlogo que existe de mtodos numricos. El objetivo
principal es poner a disposicin de los estudiantes unas notas de fcil lectura con una coleccin de ejercicios
que amplen y refuercen lo que aprenden. Otras obras ms completas, vanse las referencias bibliogrficas,
que contengan desarrollos tericos y mayor nmero de ejemplos son un complemento ideal a este texto.
El texto va dirigido a estudiantes universitarios que van a utilizar los mtodos numricos por primera vez
y que no tienen conocimientos previos de los mismos. Se presentan mtodos numricos elementales de una
manera asequible y sin ser tratados de forma sistemtica, de manera que este texto se pueda utilizar como
gua inicial para un proceso posterior que profundice en los mtodos numricos de manera ms detallada y
extensa. A la hora de redactar el texto se ha tenido presente en todo momento a los estudiantes a los que
est dirigido.
Los requisitos mnimos son el clculo elemental, incluyendo los polinomios de Taylor, el lgebra matricial
y tener nociones bsicas de programacin estructurada. Para los captulos 6 y 7 es conveniente saber algo de
ecuaciones diferenciales ordinarias. Y para el captulo 8 es aconsejable leerse antes el complemento B si no
se han visto con anterioridad las ecuaciones diferenciales en derivadas parciales.
Entre los objetivos de este texto marcamos dos: su fcil comprensin para estudiantes universitarios con
un conocimiento mnimo de matemticas e instruir a los estudiantes para que practiquen con los mtodos
numricos en un ordenador. Se ha intentado exponer los conceptos de una manera clara y sencilla, con muy
pocos resultados tericos formalmente enunciados y sin demostraciones.
En todos los captulos se ha intentado ilustrar cada mtodo numrico descrito con un ejemplo, que
habitualmente ha sido desarrollado previamente en alguna de los textos que aparecen en la bibliografa, con
el objetivo claro de animar a los estudiantes a tomar contacto con obras de referencia sobre la materia.
Tambin al final de cada captulo se han aadido unas sugerencias bibliogrficas y una coleccin de ejercicios
propuestos con el objetivo de incitar a los estudiantes a que planteen problemas, comprendan los recursos
tericos necesarios y utilicen los mtodos numricos adecuados para resolver los problemas. Adems se ha
pretendido que el texto sirva de autoaprendizaje para los estudiantes.
Los temas tratados constituyen materia suficiente para un curso introductorio sobre mtodos numricos,
y estn organizados en torno a tres partes, cada una de las cuales est dividida en captulos. Se empieza
con temas sencillos y poco a poco se van complicando. En los cinco primeros captulos se desarrollan las
v
vi
PRLOGO
tcnicas ms bsicas de los mtodos numricos. Los dos siguientes estn dedicados a la resolucin numrica de
ecuaciones diferenciales ordinarias. Y el ltimo versa sobre la resolucin numrica de ecuaciones diferenciales
en derivadas parciales.
La primera parte del texto comienza con un captulo introductorio en el que se hace especial hincapi en
el papel tan importante que juegan los errores a la hora de implementar mtodos numricos en un ordenador
para resolver problemas. Para ello se recuerdan los polinomios de Taylor y cmo se calculan y almacenan
los nmeros en un ordenador. El captulo 2 trata sobre los mtodos numricos bsicos para resolver sistemas
de ecuaciones lineales, distinguiendo entre mtodos directos y mtodos iterativos. El captulo 3 describe los
mtodos iterativos ms conocidos para resolver ecuaciones no lineales, as como la resolucin de sistemas no
lineales mediante el mtodo de Newton. En el captulo 4 se estudia la interpolacin polinmica de Lagrange,
la interpolacin mediante funciones splines y la aproximacin de mnimos cuadrados. El captulo 5 analiza la
derivacin y la integracin numricas a partir del polinomio de interpolacin, describiendo diversas frmulas,
tanto para las derivadas como para las integrales.
La segunda parte del texto est dedicada a las ecuaciones diferenciales ordinarias. El captulo 6 abarca los
problemas de valor inicial, examinado los mtodos de un paso y los mtodos multipaso, tanto explcitos como
implcitos, incluyendo mtodos predictor-corrector, y terminando con la extensin a ecuaciones diferenciales
de orden superior y sistemas de ecuaciones diferenciales. El captulo 7 describe mtodos numricos para
resolver problemas de valores en la frontera en dos puntos, discutiendo los mtodos de disparo y los de
diferencias finitas, distinguiendo los casos lineal y no lineal.
La tercera parte del texto, que comprende el captulo 8, repasa los mtodos numricos para resolver
ecuaciones diferenciales en derivadas parciales, describiendo mtodos numricos basados en la aproximacin
por diferencias finitas que son de dos tipos: explcitos e implcitos. Tambin se hace una pequea introduccin
al mtodo de los elementos finitos.
Adems de cubrir los temas estndares desarrollados en los captulos 18, se han aadido dos complementos
que los completan. El primero se dedica a la aproximacin de valores y vectores propios mediante el mtodo de
la potencia. En el segundo se introducen las ecuaciones diferenciales en derivadas parciales, que habitualmente
no se encuentra en textos de mtodos numricos, pero que aqu nos ha parecido interesante recordar debido
a que a veces algunos estudiantes universitarios no las han visto con anterioridad.
Al final hemos adjuntado la bibliografa bsica utilizada para elaborar este texto, junto con una bibliografa
complementaria con la que los estudiantes puedan trabajar a la hora de profundizar en los mtodos numricos.
Tambin pueden encontrar por su cuenta mltiples referencias electrnicas en Internet. Una buena forma de
comenzar es visitando las pginas de Wikipedia: http://es.wikipedia.org/wiki/Analisis_numerico (en
espaol) y http://en.wikipedia.org/wiki/Numerical_analysis (en ingls).
Finalmente, quiero dar las gracias de forma especial a Mario Escario Gil, que durante los dos aos que
estuvo impartiendo docencia en la Universidad de La Rioja di clases de mtodos numricos y elabor la
seccin dedicada a la introduccin del mtodo de los elementos finitos. Para terminar quiero dejar constancia
de mi agradecimiento al profesor Miguel ngel Hernndez Vern por inculcarme su inters por los mtodos
numricos y mostrarse siempre dispuesto para la reflexin y el buen entendimiento de los mismos.
Logroo, enero de 2012
J. A. E. F
Contenidos
Prlogo
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
1
1
2
4
4
5
6
6
6
7
7
7
8
8
8
10
12
13
13
13
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
15
15
15
16
18
18
21
23
24
25
26
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
29
29
29
31
33
34
35
36
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
ecuaciones no lineales
. . . . . . . . . . . . .
. . . . . . . . . . . . .
vii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
viii
CONTENIDOS
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
39
39
40
40
45
49
49
50
51
52
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
55
55
55
55
56
58
58
59
59
60
62
63
65
65
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
67
67
68
68
70
74
74
75
76
77
77
78
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
81
81
81
82
84
86
87
88
88
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
93
93
93
96
100
102
106
106
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
ix
CONTENIDOS
Complementos
A. Valores propios y vectores propios
A.1. Introduccin . . . . . . . . . . . . . . . . . . .
A.2. El mtodo de la potencia . . . . . . . . . . .
A.3. El mtodo de la potencia con desplazamiento
A.4. El mtodo de la potencia inversa . . . . . . .
A.5. Clculo de todos los valores propios . . . . . .
A.6. Ejercicios . . . . . . . . . . . . . . . . . . . .
111
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
111
111
111
113
114
115
115
parciales
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
117
117
117
119
121
124
127
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Bibliografa bsica
131
Bibliografa complementaria
133
Captulo 1
Preliminares matemticos y
computacionales
1.1.
Introduccin
En este texto se estudian problemas que se pueden resolver mediante mtodos de aproximacin, tcnicas que se conocen genricamente como mtodos numricos. Empezamos considerando algunos aspectos
matemticos y computacionales que aparecen cuando se aproxima la solucin de un problema.
Dos son los objetivos de este captulo. El primero es revisar algunos conceptos y trminos fundamentales
del clculo y del lgebra matricial, que son tiles en la obtencin de los mtodos numricos en s mismos, y que
sirvan como recordatorio de los conceptos con los que se supone que los estudiantes estn familiarizados. Y el
segundo es presentar algunos conceptos preparatorios importantes para el estudio de los mtodos numricos.
Como todos los mtodos numricos tienen la importante caracterstica de que cometen errores, hay dos
cosas que se deben tener en cuenta fundamentalmente a la hora de aplicar un mtodo numrico para resolver
un problema. La primera, y ms obvia, es obtener la aproximacin. La segunda, pero igualmente importante,
es establecer la bondad de la aproximacin; es decir, disponer de alguna medida, o por lo menos de una cierta
idea, de su grado de exactitud. Tambin es importante destacar una de las dificultades habituales que surgen
cuando se usan tcnicas para aproximar la solucin de un problema: dnde y por qu se producen errores
en las operaciones aritmticas y cmo se pueden controlar? Es fundamental entonces identificar, cuantificar
y minimizar dichos errores. Otro de los aspectos a tener en cuenta a la hora de aplicar un mtodo numrico
para resolver un problema es el coste operacional de los procesos numricos.
Para las demostraciones y un mayor detalle pueden consultarse [7], [18] y [23].
1.2.
Un recordatorio de clculo
Comenzamos el captulo con un repaso de algunos aspectos importantes del clculo que son necesarios a
lo largo del texto. Suponemos que los estudiantes que lean este texto conocen la terminologa, la notacin y
los resultados que se dan en un curso tpico de clculo.
1.2.1.
Lmites y continuidad
El lmite de una funcin en un punto dado dice, en esencia, a qu se aproximan los valores de la funcin
cuando los puntos de su dominio se acercan a dicho punto dado, pero ste es un concepto difcil de establecer
con precisin. La nocin de lmite es esencial para el clculo infinitesimal.
Decimos que una funcin f (x) definida en un conjunto S de nmeros reales tiene lmite L en el punto
x = x0 , lo que denotamos por
lm f (x) = L,
xx0
si dado cualquier nmero real > 0, existe un nmero real > 0 tal que |f (x) L| < siempre que
0 < |x x0 | < . (Esta definicin asegura que los valores de la funcin estarn cerca de L siempre que x est
suficientemente cerca de x0 ).
1
Se dice que una funcin es continua en un punto de su dominio cuando el lmite en dicho punto coincide
con el valor de la funcin en l. Es decir, una funcin f (x) es continua en el punto x = x0 si
lm f (x) = f (x0 ),
xx0
y se dice que f es continua en el conjunto S si es continua en cada uno de los puntos de S. Denotaremos
el conjunto de todas las funciones f que son continuas en S por C(S). Cuando S sea un intervalo de la recta
real, digamos [a, b], entonces usaremos la notacin C[a, b].
El lmite de una sucesin de nmeros reales o complejos se define de manera parecida. Decimos que una
sucesin {xn }
n=1 converge a un nmero x, lo que se escribe
lm xn = x (o bien,
xn x
cuando n ),
si, dado cualquier > 0, existe un nmero natural N () tal que |xn x| < para cada n > N (). Cuando
una sucesin tiene lmite, se dice que es una sucesin convergente.
Continuidad y convergencia de sucesiones. Si f (x) es una funcin definida en un conjunto S de
nmeros reales y x0 S, entonces las siguientes afirmaciones son equivalentes:
a. f (x) es continua en x = x0 ,
b. Si {xn }
m f (xn ) = f (x0 ).
n=1 es cualquier sucesin en S que converge a x0 , entonces l
n
Teorema del valor intermedio o de Bolzano. Si f C[a, b] y ` es un nmero cualquiera entre f (a) y
f (b), entonces existe al menos un nmero c en (a, b) tal que f (c) = `. Vase la figura 1.1.
y
y = f (x)
f (b)
f (a)
a
c
b
y=`
Todas las funciones con las que vamos a trabajar en la discusin de los mtodos numricos sern continuas,
ya que esto es lo mnimo que debemos exigir para asegurar que la conducta de un mtodo se puede predecir.
1.2.2.
Derivabilidad
Si f (x) es una funcin definida en un intervalo abierto que contiene un punto x0 , entonces se dice que f (x)
es derivable en x = x0 cuando existe el lmite
f 0 (x0 ) = lm
xx0
f (x) f (x0 )
.
x x0
El nmero f 0 (x0 ) se llama derivada de f en x0 y coincide con la pendiente de la recta tangente a la grfica
de f en el punto (x0 , f (x0 )), tal y como se muestra en la figura 1.2.
Una funcin derivable en cada punto de un conjunto S se dice que es derivable en S. La derivabilidad
es una condicin ms fuerte que la continuidad en el siguiente sentido.
y
recta tangente de pendiente f 0 (x0 )
y = f (x)
f (x0 )
(x0 , f (x0 ))
x0
Teorema del valor medio o de Lagrange. Si f C[a, b] y es derivable en (a, b), entonces existe un
punto c en (a, b) tal que
f 0 (c) =
f (b) f (a)
.
ba
Geomtricamente hablando, vase la figura 1.3, el teorema del valor medio dice que hay al menos un nmero
c (a, b) tal que la pendiente de la recta tangente a la curva y = f (x) en el punto (c, f (c)) es igual a la
pendiente de la recta secante que pasa por los puntos (a, f (a)) y (b, f (b)).
y
recta tangente de pendiente f 0 (c)
(c, f (c))
(b, f (b))
(a, f (a))
Teorema de los valores extremos. [Este resultado se usa frecuentemente para establecer cotas del error
cometido]. Si f C[a, b], entonces existen c1 y c2 en (a, b) tales que f (c1 ) f (x) f (c2 ) para todo x en
[a, b]. Si adems, f es derivable en (a, b), entonces los puntos c1 y c2 estn en los extremos de [a, b] o bien son
puntos crticos, es decir, puntos en los que f 0 se anula.
1.2.3.
Integracin
Z
f (x)g(x) dx = f (c)
g(x) dx.
a
Cuando g(x) 1, vase la figura 1.4, este resultado es el habitual teorema del valor medio para integrales y
proporciona el valor medio de la funcin f en el intervalo [a, b], que est dado por
f (c) =
1
ba
y = f (x)
f (x) dx.
a
1.2.4.
Polinomios de Taylor
Terminamos este repaso al clculo con los polinomios de Taylor. Siempre nos quedaremos cortos al hacer
hincapi sobre la importancia de los polinomios de Taylor en el anlisis numrico; en particular, el siguiente
resultado se usa una y otra vez.
Teorema de Taylor. Supongamos que f C n [a, b] y que f (n+1) existe en [a, b]. Sea x0 un punto en [a, b].
Entonces, para cada x en [a, b], existe un punto (x) entre x0 y x tal que
f (x) = Pn (x) + Rn (x),
donde
Rn (x) =
(n+1)
((x)) n+1
h
(n + 1)!
h = x x0 .
El polinomio Pn (x) se llama n-simo polinomio de Taylor de f alrededor de x0 (vase la figura 1.5) y
Rn (x) se llama error de truncamiento (o resto de Taylor) asociado a Pn (x). Como el punto (x) en el
error de truncamiento Rn (x) depende del punto x en el que se evala el polinomio Pn (x), podemos verlo
como una funcin de la variable x. Sin embargo, no debemos confiar en que seremos capaces de determinar
explcitamente la funcin (x); el Teorema de Taylor simplemente asegura que dicha funcin existe y que
sus valores estn entre x y x0 . De hecho, uno de los problemas habituales de los mtodos numricos es la
determinacin de una cota realista del valor f (n+1) ((x)) para los puntos x de un cierto intervalo dado.
y
x0
y = f (x)
y = P2 (x)
Figura 1.5: Grficas de y = f (x) (lnea continua) y de su polinomio de Taylor y = P2 (x) alrededor de x0
(lnea discontinua).
La serie infinita que resulta al tomar lmite en la expresin de Pn (x) cuado n se llama serie de Taylor
de f alrededor de x0 . Cuando x0 = 0, el polinomio de Taylor se suele denominar polinomio de Maclaurin,
y la serie de Taylor se llama serie de Maclaurin.
La denominacin error de truncamiento en el teorema de Taylor se refiere al error que se comete al usar
una suma truncada (es decir, finita) al aproximar la suma de una serie infinita.
Teorema de Taylor en dos variables. Si f (x, y) y todas sus derivadas parciales de orden menor o igual
que n + 1 son continuas en D = {(x, y)| a x b, c y d} y los puntos (x, y) y (x + h, y + k) estn ambos
en D, entonces, para cada x en [a, b], existe un punto (x) entre x y x + h, y, para cada y en [c, d], existe un
punto (x) entre y e y + k, tales que
f (x, y) = Pn (x, y) + Rn (x, y),
donde
Pn (x, y)
Rn (x, y)
1.3.
f
f
f (x, y) + h (x, y) + k (x, y)
x
y
2 2
n
2
h f
k2 2 f
nf
f
1 X n nj j
+
(x,
y)
+
hk
(x,
y)
+
(x,
y)
+
+
h
k
(x, y),
2 x2
x y
2 y 2
n! j=0 j
xnj y j
n+1
X n + 1
1
n+1 f
hn+1j k j n+1j j ((x), (x)).
(n + 1)! j=0
j
x
y
Las matrices se utilizan ampliamente en computacin debido a su facilidad y ligereza a la hora de manipular informacin, as que son muy utilizadas en clculo numrico con ordenador.
1.3.1.
Matrices
Una matriz es un conjunto bidimensional de escalares, llamados elementos, ordenados en filas y columnas
en forma de tabla rectangular. Indicamos el tamao (o dimensin) de la matriz con el nmero de filas y
columnas que contiene. Una matriz de m filas y n columnas, o matriz (de orden) m n, es un conjunto de
m n elementos aij , con i = 1, 2, . . . , m y j = 1, 2, . . . , n, que se representa de la siguiente forma:
A= .
..
.. .
.
.
.
.
.
.
.
am1 am2 amn
Podemos abreviar la representacin de la matriz anterior de la forma A = (aij ) con i = 1, 2, . . . , m y
j = 1, 2, . . . , n.
Hay una relacin directa entre matrices y vectores puesto que podemos pensar una matriz como una
composicin de vectores filas o de vectores columnas. Adems, un vector es un caso especial de matriz: un
vector fila es una matriz con una sola fila y varias columnas, y un vector columna es una matriz con
varias filas y una sola columna. En el caso m = n = 1, la matriz designa simplemente un escalar.
1.3.2.
Si A = (aij ) y B = (bij ) son dos matrices que tienen el mismo orden, m n, decimos que A y B son iguales
si aij = bij para todo i = 1, 2, . . . , m y j = 1, 2, . . . , n.
Si A = (aij ) y B = (bij ) son dos matrices que tienen el mismo orden m n, la suma de A y B es una
matriz C = (cij ) del mismo orden m n con cij = aij + bij para todo i = 1, 2, . . . , m y j = 1, 2, . . . , n.
Si A = (aij ) es una matriz de orden m n, la multiplicacin de A por un escalar , es una matriz
C = (cij ) del mismo orden m n con cij = aij para todo i = 1, 2, . . . , m y j = 1, 2, . . . , n.
Si A = (aij ) es una matriz de orden m n, la matriz traspuesta de A es la matriz que resulta de
intercambiar sus filas por sus columnas, se denota por AT y es de orden n m.
Si A = (aij ) es una matriz de orden m p y B = (bP
ij ) es una matriz de orden p n, el producto de A por
p
B es una matriz C = (cij ) de orden m n con cij = k=1 aik bkj para todo i = 1, 2, . . . , m y j = 1, 2, . . . , n.
Obsrvese que el producto de dos matrices solo est definido si el nmero de columnas de la primera matriz
coincide con el nmero de filas de la segunda.
1.3.3.
Matrices especiales
Decimos que una matriz A = (aij ) es cuadrada si tiene el mismo nmero de filas que de columnas, y de
orden n si tiene n filas y n columnas. Se llama diagonal principal al conjunto de elementos a11 , a22 , . . . , ann .
Llamamos matriz diagonal a una matriz cuadrada que tiene algn elemento distinto de cero en la diagonal
principal y ceros en el resto de elementos.
Una matriz cuadrada con ceros en todos los elementos por encima (debajo) de la diagonal principal se llama
matriz triangular inferior (superior).
Una matriz diagonal con todo unos en la diagonal principal se denomina matriz identidad y se denota por
I. Es por definicin la nica matriz cuadrada tal que AI = IA = A para cualquier matriz cuadrada A.
Una matriz simtrica es una matriz cuadrada A tal que A = AT .
La matriz cero es una matriz con todos sus elementos iguales a cero.
1.3.4.
Decimos que una matriz cuadrada A es invertible (o regular o no singular) si existe una matriz cuadrada B
tal que AB = BA = I. Se dice entonces que B es la matriz inversa de A y se denota por A1 . (Una matriz
que no es invertible se dice singular.)
Si una matriz A es invertible, su inversa tambin lo es y A1
1
= A.
1.3.5.
El determinante de una matriz solo est definido para matrices cuadradas y su valor es un escalar. El
determinante de una matriz A cuadrada de orden n se denota por |A| o det(A) y se define como
det(A) =
X
(1)k a1j1 a2j2 anjn ,
j
donde la suma se toma para todas las n! permutaciones de grado n y k es el nmero de intercambios necesarios
para poner el segundo subndice en el orden 1, 2, . . . , n.
Algunas propiedades de los determinantes son:
a. det(A) = det(AT ).
b. det(AB) = det(A) det(B).
c. det(A1 ) =
1
det(A) .
d. Si dos filas o dos columnas de una matriz coinciden, el determinante de esta matriz es cero.
e. Cuando se intercambian dos filas o dos columnas de una matriz, su determinante cambia de signo.
f. El determinante de una matriz diagonal es el producto de los elementos de la diagonal.
Si denotamos por Aij la matriz de orden (n 1) que se obtiene de eliminar la fila i y la columna j de la
matriz A, llamamos menor complementario asociado al elemento aij de la matriz A al det(Aij ).
Se llama k-simo menor principal de la matriz A al determinante de la submatriz principal de orden k.
Definimos el cofactor del elemento aij de la matriz A por ij = (1)i+j det(Aij ).
1
Si A es una matriz invertible de orden n, entonces A1 = det(A)
C, donde C es la matriz de elementos
ij , para todo i, j = 1, 2, . . . , n. Obsrvese entonces que una matriz cuadrada es invertible si y solo si su
determinante es distinto de cero.
1.3.6.
Si A es una matriz cuadrada de orden n, un nmero es un valor propio de A si existe un vector no nulo
v tal que Av = v. Al vector v se le llama vector propio asociado al valor propio .
El valor propio es solucin de la ecuacin caracterstica det(A I) = 0, donde det(A I) se llama
polinomio caracterstico. Este polinomio es de grado n en y tiene n valores propios (no necesariamente
distintos).
1.3.7.
Para medir la longitud de los vectores y el tamao de las matrices se suele utilizar el concepto de
norma, que es una funcin que toma valores reales. Un ejemplo simple en el espacio euclidiano tridimensinal es
un vector v = (v1 , v2 , v3 ), donde v1 , v2 y v3 son las distancias a lo largo de los ejes x, y y z, respectivamente.
La longitud
p del vector v (es decir, la distancia del punto (0, 0, 0) al punto (v1 , v2 , v3 )) se calcula como
kvke = v12 + v22 + v32 , donde la notacin kvke indica que esta longitud se refiere a la norma euclidiana del
vector v. De forma similar,
para un vector v de dimensin n, v = (v1 , v2 , . . . , vn ), la norma euclidiana se
p
calcula como kvke = v12 + v22 q
+ + vn2 . Este concepto puede extenderse a una matriz m n, A = (aij ),
Pm Pn
2
de la siguiente manera kAke =
i=1
j=1 aij , que recibe el nombre de norma de Frobenius.
Hay otras alternativas a las normas euclidiana y de Frobenius. Dos normas usuales son la norma 1 y la
norma infinito:
Pn
|vi |. De forma similar, la
a. La norma 1 de un vector v = (v1 , v2 , . . . , vn ) se define como kvk1 = i=1P
m
norma 1 de una matriz m n, A = (aij ), se define como kAk1 = m
ax1jn i=1 |aij |.
b. La norma infinito de un vector v = (v1 , v2 , . . . , vn ) se define como kvk = m
axi1n |vP
i |. Similarmente,
n
la norma infinito de una matriz m n, A = (aij ), se define como kAk = m
ax1im j=1 |aij |.
Recordemos, por la teora del lgebra lineal, que todas las normas son equivalentes en un espacio vectorial
de dimensin finita. Por ejemplo, si dos vectores estn prximos segn la norma k k1 , tambin lo estn segn
la norma k ke , y recprocamente.
Aunque puede haber ciertas ventajas tericas para la utilizacin de algunas normas, la eleccin de una norma
suele estar influenciada por las consideraciones prcticas. Por ejemplo, la norma infinita es muy utilizada por
la facilidad con que se calcula y por el hecho de que habitualmente proporciona una medida adecuada del
tamao de una matriz.
1.4.
1.4.1.
Fuentes de error
Comenzamos repasando algunos conceptos bsicos referentes a la representacin aproximada de los nmeros. A la hora de realizar un clculo es importante asegurarse de que los nmeros que intervienen en el clculo
se pueden utilizar con confianza. Para ello, se introduce el concepto de cifras significativas, que designan
formalmente la confianza de un valor numrico, y que son aquellas que pueden utilizarse con confianza.
Otros conceptos a los que tambin hay que prestar cierta atencin son la exactitud y la precisin. La
exactitud mide la cercana entre los valores calculados y los valores exactos, mientras que la precisin se
refiere a la cercana entre distintos valores calculados.
Definiciones de error
A la hora de representar cantidades y clculos matemticos exactos mediante aproximaciones aparecen
errores numricos, que incluyen los errores de redondeo que se producen cuando se representan nmeros
exactos mediante nmeros con lmite de cifras significativas, y los errores de truncamiento, que se produden
al emplear aproximaciones como procedimientos matemticos exactos. En ambos casos el error numrico
viene dado por la diferencia entre el valor exacto y su valor aproximado, lo que se denomina error absoluto.
Esto es, si x
es el valor aproximado y x el valor exacto (habitualmente desconocido), el error cometido a la
hora de utilizar el valor aproximado es: Error absoluto (x) = x x
. En la mayora de las aplicaciones el signo
del error absoluto es de poca importancia, as que habitualmente se considera el error absoluto sin signo:
Error absoluto (x) = |x x
|.
Sin embargo, para problemas en los que la magnitud del valor real puede ser particularmente muy grande
(o muy pequea), el error relativo puede ser ms importante que el error absoluto (Error relativo (x) =
|x x
|/|x|). Cuando queremos calcular el error relativo, a menudo se utiliza el valor aproximado x
en el
denominador en vez del valor exacto desconocido x.
En la prctica es imposible conocer exactamente el valor del error correspondiente a una aproximacin,
de manera que deberemos contentarnos con acotarlo o estimarlo (sin conocerlo). Muchos mtodos numricos
proporcionan una estimacin del error, adems de la aproximacin, esperando que dicha estimacin coincida
aproximadamente con el error.
En general, es obvio que los programas de ordenador solo pueden
guardar un nmero finito de cifras
significativas, de manera que cantidades especficas como 2/3, 3, e o no se pueden representar con
exactitud con un ordenador, puesto que tienen infinitos decimales. Existen dos posibilidades. La ms simple
es truncar el nmero, descartando todas las cifras que estn detrs de las que que el ordenador puede guardar.
La otra es redondear el nmero, el resultado depende entonces del valor de la primera cifra a descartar. Si
el ordenador permite hasta n cifras, el redondeo produce el mismo resultado que el truncamiento si la cifra
(n + 1)-sima es 0, 1, 2, 3 o 4, mientras que si la cifra (n + 1)-sima es 5, 6, 7, 8 o 9, entonces la cifra n-sima
se incremente en 1. Cuando se omiten cifras significativas hablaremos de error de redondeo.
Los errores que se cometen con el redondeo tienen menor probabilidad de acumularse durante la repeticin
de clculos, puesto que el valor exacto es ms grande que el valor redondeado aproximadamente la mitad de
las veces y ms pequeo aproximadamente la otra mitad. Adems, el error absoluto ms grande que puede
ocurrir es unas dos veces ms grande tanto a la hora de truncar como a la hora de redondear. Por otra parte,
truncar no requiere decidir si hay que cambiar la ltima cifra guardada.
Los errores de redondeo se producen frecuentemente cuando los nmeros que estn implicados en los
clculos difieren significativamente en su magnitud y cuando se restan dos nmeros que son casi idnticos.
Los errores de truncamiento se producen cuando utilizamos una aproximacin en lugar de un procedimiento matemtico exacto. Para conocer las caractersticas de estos errores se suelen considerar los polinomios
de Taylor, que se utilizan ampliamente en los mtodos numricos para expresar funciones de manera aproximada. Una gran cantidad de mtodos numricos estn basados en la utilizacin de unos pocos trminos de
los polinomios de Taylor para aproximar una funcin.
Cuando se aproxima un proceso continuo por uno discreto, para errores provocados por un tamao de
paso finito h, resulta a menudo til describir la dependencia del error de h cuando h tiende a cero.
Decimos que una funcin f (h) es una O grande de hn si |f (h)| c|hn | para alguna constante
c, cuando h es prximo a cero; se escribe f (h) = O(hn ).
Si un mtodo tiene un trmino de error que es O(hn ), se suele decir que es un mtodo de orden n. Por
ejemplo, si utilizamos un polinomio de Taylor para aproximar la funcin g en x = a + h, tenemos
g(x) = g(a + h) = g(a) + hg 0 (a) +
h2 00
h3
g (a) + g 000 (),
2!
3!
para algn
[a, a + h].
Suponiendo que g es suficientemente derivable, la aproximacin anterior es O(h3 ), puesto que el error,
h3 000
3! g (), satisface
3
h 000 M 3
g ()
h ,
3!
3!
10
1.4.2.
a1 6= 0,
(1.1)
donde s es 0 o 1, (un entero positivo mayor o igual que 2) es la base adoptada por el ordenador especfico
que estemos manejando, m es un entero llamado mantisa cuya longitud t es el mximo nmero de cifras ai
11
(con 0 ai 1) que se almacenan, y e es un nmero entero llamado exponente. Los nmeros de la forma
(1.1) se llaman nmeros de punto flotante, porque la posicin de su punto decimal no es fija. A las cifras
a1 a2 . . . ap (con p t) se les suele llamar p primeras cifras significativas de x.
La condicin a1 6= 0 asegura que un nmero no puede tener mltiples representaciones. Por ejemplo, sin
esta restriccin el nmero 1/10 podra ser representado (en la base decimal) como 0.1 100 , pero tambin
como 0.01 101 , etc.
Por tanto, el conjunto F est totalmente caracterizado por la base , el nmero de cifras significativas t
y el rango (L, U ) (con L < 0 y U > 0) de variacin del ndice e. Por esto se denota como F(, t, L, U ).
El nmero 0 no pertenece a F, pues en tal caso tendramos a1 = 0 en (1.1); por tanto se maneja separadamente. Adems, como L y U son finitos, no se pueden representar nmeros cuyo valor absoluto sea
arbitrariamente grande o arbitrariamente pequeo. Siendo ms concretos, el nmero real positivo ms pequeo y el ms grande de F vienen dados respectivamente por
xmin = L1
xmax = U (1 t ).
Es inmediato verificar que si x F(, t, L, U ), entonces x F(, t, L, U ), de manera que xmin |x|
xmax . Por lo tanto, solo podemos representar con el ordenador un nmero mximo en valor absoluto de
nmeros reales, de manera que cuando intentamos utilizar un nmero de valor absoluto mayor que el mximo
representable, se produce un error llamado overflow (desbordameniento por exceso). Tambin puede ocurrir
lo contrario, cuando utilizamos un nmero no nulo pero menor en valor absoluto, producindose entonces un
error llamado underflow (desbordameniento por defecto).
Nota. ([23]) Si bien es cierto que los errores de redondeo son normalmente pequeos, cuando se repiten
dentro de largos y complejos algoritmos, pueden dar origen a efectos catastrficos. Dos casos destacados
conciernen a la explosin del cohete Arianne el 4 de junio de 1996, generada por un overflow en el ordenador
de a bordo, y al fracaso de la misin de un misil americano patriot durante la guerra del Golfo en 1991, a
causa de un error de redondeo en el clculo de su trayectoria.
psilon de la mquina
Adems de la importancia de la representacin de los nmeros reales en el ordenador, tambin es importante la exactitud con que se realizan los clculos con los nmeros reales. Para esto habr que tener en cuenta
el mayor valor positivo M tal que 1 + x = 1, para todo x (0, M ), que proporciona la distancia entre 1
y el nmero en punto flotante mayor que 1 ms cercano a ste que se puede representar con el ordenador.
Este nmero M se llama psilon de la mquina y caracteriza la precisin de la aritmtica en punto flotante,
dependiendo del ordenador y del tipo de variable. Para el estndar IEC559, M = 1t . En general, el valor
M depende del tipo de redondeo que utilice el sistema.
Por otra parte, notemos que el error de redondeo que se genera inevitablemente siempre que un nmero
real x 6= 0 se reemplaza por su represetante f l(x) en F, es afortunadamente pequeo, puesto que
x f l(x) 1
M .
(1.2)
2
x
Sealamos que en (1.2) estimamos el error relativo sobre x, que es indudablemente ms significativo que el
error absoluto |x f l(x)|. En realidad, este ltimo no tiene en cuenta el orden de magnitud de x mientras
que el primero si.
Sobre las operaciones en punto flotante
Puesto que F es un subconjunto de R, las operaciones algebraicas elementales sobre nmeros de punto flotante no gozan de todas las propiedades de las operaciones anlogas en R. Concretamente, la conmutatividad
para la suma se verifica (esto es f l(x + y) = f l(y + x)), as como para la multiplicacin (f l(xy) = f l(yx)),
pero se violan otras propiedades como la asociativa y la distributiva. Adems, el 0 ya no es nico. Vase [22]
para mayor detalle.
El estndar IEC559 tiene en cuenta dos circunstancias excepcionales: el resultado de dividir un nmero
finito por cero, que se denota por Inf, y el resultado de una operacin indeterminada, como por ejemplo 0/0
o /, que produce lo que se llama un no-nmero, denotado por NaN (del ingls Not a Number), al que
no se aplican las reglas normales de clculo (la presencia de un NaN en una sucesin de operaciones implica
que automaticamente el resultado es un NaN). El tratamiento de ambos depende del entorno computacional,
debindose evitar siempre que se pueda.
12
1.4.3.
Estabilidad y convergencia
En realidad podemos decir que el error es inevitable en el clculo numrico. Como acabamos de ver, el
simple hecho de utilizar un ordenador para representar los nmeros reales introduce errores. Por tanto, en
parte, lo importante no es esforzarse por eliminar los errores, sino ms bien ser capaces de controlar sus
efectos.
Las prdidas de exactitud debidas a los errores de redondeo se pueden evitar a menudo eligiendo con
cuidado el orden en el que se realizan las operaciones o reformulando el problema.
A lo largo de este texto consideraremos varios problemas de aproximacin y se necesitar, en cada caso,
desarrollar mtodos de aproximacin que produzcan resultados precisos para una amplia variedad de problemas. Como los mtodos de aproximacin no se construyen de la misma forma, hace falta disponer de una serie
de condiciones que nos permitan categorizar su precisin (aunque puede ser que no todas estas condiciones
sean aplicables en cada problema particular).
Una condicin que hay que imponer siempre que sea posible es la de estabilidad. Se dice que un mtodo es
estable si pequeas variaciones en los datos iniciales producen pequeas variaciones en los resultados finales
correspondientes. Cuando pequeas variaciones en los datos iniciales producen variaciones grandes en los
resultados finales el mtodo es inestable. Algunos mtodos son estables slo para algunos datos iniciales, se
dice entonces que estos mtodos son condicionalmente inestables. Es importante caracterizar las propiedades
de estabilidad siempre que se pueda.
La forma en que los errores de redondeo crecen conforme se va aplicando un mtodo es uno de los aspectos
ms importantes en relacin con la estabilidad. Un mtodo es estable si presenta crecimiento lineal del error
(esto es, si existe una constante C independiente de n tal que En CnE0 , donde E0 > 0 denota un error
inicial y En representa la magnitud del error despus de n operaciones posteriores), mientras que es inestable
si el crecimiento del error es exponencial (es decir, si existe una constante C > 1 independiente de n tal que
En C n E0 ).
Por otra parte, como a menudo se utilizan tcnicas que construyen una sucesin de aproximaciones, lo
que generalmente interesa es disponer de tcnicas cuyas sucesiones converjan lo ms rpidamente posible.
Mediante la siguiente definicin podremos comparar las velocidades de convergencia de los distintos mtodos.
Supongamos que {n }
n=1 es una sucesin que converge a un nmero cuando n . Si existen
13
1.4.4.
Normalmente resolvemos un problema en el ordenador mediante un algoritmo, que es una directiva precisa
en forma de texto finito, que especifica la ejecucin de una serie finita de operaciones elementales. Estamos
interesados en aquellos algoritmos que involucran slo un nmero finito de etapas.
El coste computacional de un algoritmo es el nmero de operaciones de punto flotante que requiere su
ejecucin. A menudo la velocidad de un ordenador se mide por el mximo nmero de operaciones en punto
flotante que puede efectuar en un segundo (flops, del ingls floating operation).
En general, vase [23], el conocimiento exacto del nmero de operaciones requerido por un algoritmo dado
no es esencial. En cambio es til determinar su orden de magnitud como funcin de un parmetro que est
relacionado con la dimensin del problema. Por tanto, decimos que un algoritmo tiene complejidad constante si
requiere un nmero de operaciones independiente de , es decir O(1) operaciones, complejidad lineal si requiere
O() operaciones, o, con mayor generalidad, complejidad polinmica si requiere O( n ) operaciones, para un
entero positvo n. Otros algoritmos pueden tener complejidad exponencial, O(k ) operaciones (k constante),
o incluso complejidad factorial, O(!) operaciones. Aqu el smbolo O( n ) significa que se comporta, para
grande, como una constante multiplicada por n .
Como habitualmente un problema se puede resolver mediante diversos algoritmos, habr que decidirse por
uno. Un criterio til podra ser el de elegir aqul que proporcione menores errores, pero hay uno mejor (vase
[27]), aqul que necesite menor trabajo proporcionando errores dentro de unos lmites predeterminados. Esto
es lo que se conoce como eficiencia de un algoritmo, y depende tanto del tamao de los errores como del
coste computacional del algoritmo.
Terminamos diciendo que otro factor significativo a la hora de analizar los algoritmos suele ser el tiempo necesario para acceder a la memoria del ordenador, que depende de la forma en que el algoritmo est
codificado.
1.5.
1.6.
Ejercicios
14
a) x =
5yx
= 2.2,
b) x = 1/9 y x
= 0.111,
c) x =
5
yx
= 0.022,
100
d) x = 10/9 y x
= 1.11,
b b2 4ac
b + b2 4ac
x1 =
y
x2 =
,
2a
2a
que calculan las races de la ecuacin ax2 + bx + c = 0, a 6= 0. Qu ocurre? Calclese a continuacin
la solucin x2 mediante la expresin equivalente
x2 =
2c
.
b b2 4ac
n
1+ 5
Demustrese que la sucesin
, n N, converge a
.
n1
2
n N.
sen n
n+3
y n =
, n N, demustrese que la sucesin {n } converge a 0
n
n3
ms rpidamente de lo que lo hace la sucesin {n }.
Captulo 2
Introduccin
A menudo tenemos que resolver un sistema de ecuaciones lineales, o simplemente sistema lineal, de la
forma
Ax = b,
donde A es una matriz cuadrada de orden n n cuyos elementos aij son reales o complejos, mientras que
x y b son dos vectores columna de orden n 1 con x representando la solucin desconocida y b un vector
dado. Componente a componente, el sistema anterior se puede escribir como
a11 x1
a12 x2
a1n xn
b1 ,
a21 x1
a22 x2
a2n xn
=
..
.
b2 ,
an1 x1
+ an2 x2
ann xn
bn .
La solucin del sistema existe si y solo si la matriz A es no singular. En principio, la solucin podra calcularse
utilizando la conocida regla de Cramer:
xi =
det(Ai )
,
det(A)
i = 1, 2, . . . , n,
donde Ai es la matriz obtenida a partir de A reemplazando la i-sima columna por b y det(A) denota
el determinante de A. Si los n + 1 determinantes se calculan mediante la conocida expresin recursiva de
Laplace, se requiere un nmero total de aproximadamente 2(n + 1)! operaciones (sumas, restas, productos o
divisiones). Por ejemplo, si n = 24, se calculara la suma de 24! sumandos (el nmero de permutaciones del
conjunto 1, 2, . . . , 24), y con un ordenador capaz de realizar 1015 operaciones en punto flotante por segundo
(1015 f lops), se necesitaran 20 aos para llevar a cabo este clculo. El coste computacional es entonces
demasiado alto para grandes valores de n que surgen a menudo en las aplicaciones prcticas. Por tanto, hay
que recurrir a algoritmos ms eficientes.
Pueden utilizarse dos familias de mtodos alternativos: los llamados mtodos directos, que dan la solucin
del sistema en un nmero finito de pasos, o los mtodos iterativos, que requieren (en principio) un nmero
infinito de pasos. La eleccin entre mtodos directos e iterativos puede depender de varios factores: en primer
lugar, de la eficiencia terica del esquema, pero tambin del tipo particular de matriz, de la memoria de
almacenamiento requerida y, finalmente, de la arquitectura del ordenador.
2.2.
Mtodos directos
Los mtodos directos consisten en transformar el sistema Ax = b en otro equivalente cuya resolucin sea
prcticamente inmediata. Esta transformacin se hace mediante las llamadas operaciones elementales, cuya
interpretacin matricial nos proporciona una interesante y conocida factorizacin de la matriz del sistema.
15
16
2.2.1.
El mtodo directo de resolucin de sistemas de ecuaciones lineales ms conocido es el mtodo de eliminacin de Gauss, que consiste en transformar el sistema Ax = b, mediante operaciones elementales, en un
sistema equivalente triangular superior, cuya resolucin es ms sencilla y se obtiene mediante la denominada
sustitucin regresiva o inversa. Recordamos que por operaciones elementales entendemos permutar ecuaciones, multiplicar una ecuacin por una constante distinta de cero y sumar a una ecuacin una combinacin
lineal del resto de ecuaciones. Es bien sabido que la solucin del sistema no cambia al realizar estas operaciones
elementales.
Inicialmente denotamos A(1) = A y b(1) = b. El mtodo lo podemos interpretar como una sucesin de
n 1 pasos que dan como resultado una sucesin de matrices y vectores, como se indica a continuacin:
b(1) b(2) b(n) ,
(1)
de forma que A(n) sea una matriz triangular superior. As, para el primer paso, supondremos que a11 =
(1)
(1)
a11 6= 0. Entonces, podemos eliminar x1 de las n 1 ltimas ecuaciones. En efecto, tomamos `i1 = ai1 /a11
(para i = 2, . . . , n) y sumamos `i1 veces la primera ecuacin a la i-sima, esto es
(2)
(1)
(1)
(2)
bi
(1)
= bi
(1)
`i1 b1 .
(1)
(2)
(Notemos que aij designan los elementos de A(1) y bi son las componentes de b(1) ). Si a22 6= 0, podemos
eliminar de manera similar x2 de las n 2 ltimas ecuaciones y as sucesivamente. En general, el paso de la
k-sima matriz a la (k + 1)-sima viene dado por las siguientes frmulas:
(k)
i = 1, 2, . . . , k,
aij ,
(k+1)
(k)
(k)
aij
=
aij `ik akj , i, j = k + 1, k + 2, . . . , n,
0,
i = k + 1, k + 2, . . . , n; j = 1, 2, . . . , k,
donde
`ik
(k)
aik
(k) ,
akk
=
1,
0,
i = k + 1, k + 2, . . . , n,
i = k,
i = 1, 2, . . . , k 1.
(k)
Como hemos visto, si los elementos akk que van apareciendo en los sucesivos pasos (que denominaremos
pivotes) son no nulos, podemos aplicar el algoritmo con xito.
Despus de a lo sumo n pasos, llegamos al sistema triangular superior A(n) x = b(n) siguiente
(n)
a11 x1
(n)
a1n xn
(n)
a2n xn
..
.
a12 x2
a22 x2
(n)
b1 ,
(n)
b2 ,
..
.
(n)
= bn ,
ann xn
(n)
(n)
(n)
xn
xn1
bn
(n)
ann
(n)
(n)
bn1 an1,n xn
(n)
an1,n1
..
.
(n)
xk
bk
Pn
j=k+1
(n)
akk
(n)
akj xj
para cada
k = n 1, n 2, . . . , 1.
17
El procedimiento fallar si en el paso k-simo el pivote akk es cero, porque en ese caso, o bien los
(k)
(k)
(k)
multiplicadores `ik = aik /akk no estn definidos (lo que ocurre si akk = 0 para algn k < n) o no podemos
(n)
realizar la sustitucin regresiva (si ann = 0). Esto no significa que el sistema no tenga solucin, sino ms bien
que la tcnica para hallar la solucin debe modificarse.
Ejemplo. Vamos a resolver el sistema
1
2
1
3
x1
1
1
1
x2
3
1
5
1 5
3 x3
x4
1
7 2
pivote
1
2
`21 = 2
`31 = 1 1
`41 = 3
3
matricial por
10
31
=
2 .
18
son
1
3
1
1
1
1 10
1
5 31
.
5
3 2
7 2 18
Ahora hacemos ceros por debajo del pivote restando mltiplos de la primera ecuacin (primera ecuacin
pivote) de las otras tres
1
1
1
1
10
pivote
3
11
.
0 1 1
0
`32 = 2
2 4
4
8
`42 = 2
0 2
4 5 12
A continuacin, hacemos ceros por debajo del nuevo pivote restando mltiplos de la segunda ecuacin (segunda
ecuacin pivote) de las dos ltimas
1 1
1
1
10
0 1 1
3
11
.
pivote 0 0 -2 2 14
`43 = 1
0 0
2
1
10
Restamos finalmente mltiplos de la tercera ecuacin (tercera ecuacin pivote) de la ltima para hacer ceros
por debajo del ltimo pivote y obtener as el siguiente sistema triangular superior:
1 1
1
1
10
0 1 1
3
11
0 0 2 2 14 .
0 0
0 1 4
Para terminar, aplicamos sustitucin regresiva al sistema anterior y obtenemos:
x4 = 4,
x3 =
14 + 2x4
= 3,
2
x2 = 11 + x3 3x4 = 2,
x1 = 10 x2 x3 x4 = 1.
Nota. Obsrvese en el ejemplo anterior que podemos utilizar los pasos que se dan para resolver el sistema
lineal Ax = b por el mtodo de eliminacin de Gauss para hallar la matriz triangular superior
1 1
1
1
0 1 1
3
U =
0 0 2 2
0 0
0 1
de la matriz
1 1
2 3
A=
1 1
3 1
1
1
1
5
.
5
3
7 2
18
2.2.2.
Estrategias de pivoteo
En el algoritmo de eliminacin de Gauss hemos supuesto que todos los pivotes son no nulos. Pero esto
no ocurre en muchas ocasiones, o aunque ocurra, si el pivote es muy pequeo, puede provocar resultados
inexactos, como puede comprobarse en los siguientes dos ejemplos que aparecen en [17]:
y = 1,
x + y = 1,
x + y = 2,
x + y = 2,
donde es un nmero muy pequeo pero distinto de cero. Las estrategias de pivoteo evitan parcialmente
estos problemas.
A partir de los dos ejemplos anteriores y otros parecidos se puede extraer la idea de que el intercambio
(k)
de ecuaciones (filas) en un sistema, cuando la situacin lo requiera, es una buena estrategia. As, si akk = 0,
(k)
entonces, podemos buscar aik 6= 0 con i > k (lo cual es siempre posible ya que det(A) 6= 0), intercambiar las
filas k-sima e i-sima y continuar el proceso. Este intercambio de filas se conoce como pivoteo.
(k)
Si akk 6= 0 pero es pequeo, aunque el mtodo de Gauss se puede aplicar, es muy inestable numricamente,
con lo que pequeos errores en los datos pueden originar grandes cambios en la solucin (vase el ejemplo 1
de la pg. 268 de [7]). En este caso, tambin se tendr que pivotar.
En el mtodo general de eliminacin de Gauss se puede utilizar una ecuacin (o fila) como ecuacin pivote
(o fila pivote) solo si el elemento pivote no es cero. Si el elemento pivote es cero, la ecuacin (fila) se puede
intercambiar con una de las ecuaciones (filas) que estn por debajo que tenga un elemento pivote no cero.
Las opciones de pivoteo ms habituales que se utilizan en el paso k-simo son:
Pivoteo parcial: se toma como pivote el elemento de mayor mdulo de entre los n k ltimos elementos
(k)
de la columna k-sima; es decir, se elige aik (i = k, k + 1, . . . , n) de forma que
(k)
(k)
ax ajk ,
aik = m
kjn
e intercambiamos las filas y columnas correspondientes. En este pivoteo, si el pivote elegido no est en
la columna k-sima, el intercambio de columnas que hay que realizar implica intercambiar el orden de
las incgnitas, lo que habr que tener en cuenta a la hora de resolver el sistema lineal.
Como con el pivoteo parcial solo hay que intercambiar filas de la matriz, mientras que con el pivoteo
total tambin hay que intercambiar columnas, el coste operacional de este ltimo es mucho ms elevado. En
general, esto hace que en el mtodo de eliminacin de Gauss se utilice habitualmente la estrategia de pivoteo
parcial.
Comentario adicional.
. En el ejemplo anterior hemos podido aplicar el mtodo de eliminacin de
Gauss sin necesidad de pivoteo, pero cundo podemos asegurar que no ser necesario hacerlo? Digamos,
en este caso, que si la matriz A es simtrica definida positiva (es decir, A = AT y tal que xT Ax > 0,
para todo vector columna P
x 6= 0) o estrictamente diagonal dominante (esto es que los elementos
n
de A cumplen que |aii | > j=1,j6=i |aij | para i = 1, 2, . . . , n), el algoritmo de Gauss es numricamente
estable y se puede llevar a cabo sin necesidad de pivoteo. Dos equivalencias que hacen ms fcil, en
algunos casos, ver que una matriz simtrica es definida positiva son: una, que todos sus valores propios
son > 0; y dos, que sus n menores principales son > 0.
2.2.3.
Mtodos de factorizacin
Hemos visto que el mtodo de eliminacin de Gauss consiste de dos partes. La primera parte es el
procedimiento de eliminacin en el que el sistema de ecuaciones lineales Ax = b se transforma en un sistema
19
zk
b1
,
`11
1
(bk `k1 z1 `k2 z2 `k,k1 zk1 ),
`kk
k = 2, 3, . . . , n.
xk
zn
,
unn
1
(zk uk,k+1 xk+1 uk,k+2 xk+2 ukn xn ),
ukk
k = k 1, k 2, . . . , 1.
En este punto necesitamos un algoritmo que permita un clculo efectivo de los factores L y U de la matriz
A.
La factorizacin anterior se puede obtener simplemente mediante la frmula del producto de matrices,
que conduce a un sistema lineal de n2 ecuaciones en el que las incgnitas son los n2 + n coeficientes de las
matrices triangulares L y U . As, si A = (aij ), L = (`ij ) y U = (uij ), donde los elementos `ij y uij estn por
determinar, realizando el producto se tiene que
mn(i,j)
aij =
`ip upj ,
i, j = 1, 2, . . . , n,
p=1
donde la ltima igualdad se debe a que `ip = 0, para p > i, y upj = 0, para p > j. Entonces, si fijamos de
antemano el valor de `ii o de uii (distinto de cero), para todo i, la igualdad anterior permite el clculo de L
y U , dando lugar a formas compactas de factorizacin.
Factorizacin de Doolittle
Si se fija `ii = 1, para todo i, la factorizacin correspondiente se denomina factorizacin de Doolittle, o
simplemente, factorizacin LU .
Si podemos aplicar el mtodo de eliminacin de Gauss sin pivoteo a la matriz A, teniendo cuidado de
guardar los mulplicadores `ik en una matriz L con elementos 1 en su diagonal, y llamamos U a la matriz
triangular superior obtenida tras la aplicacin del mtodo de Gauss, se tiene que A = LU .
20
1
0
0 0
1
0
0 0
`21 1
1
0 0
0 0
.
2
L=
`31 `32 1 0 = 1
2
1 0
3 2 1 1
`41 `42 `43 1
Comprobamos que la factorizacin
1
0
0
2
1
0
LU =
1
2
1
3 2 1
es correcta
1
0
0
0
0 0
0
1
1
1
0
0
1
1
1
2
1
3
=
2 2 1
0 1
3
1
3
1
1
1
1
1
5
= A.
5
3
7 2
Comentario adicional.
. Una matriz A tiene factorizacin de Doolittle si y solo si se le puede aplicar
el mtodo de eliminacin de Gauss sin pivoteo.
Factorizacin de Crout
La factorizacin de Crout es similar a la Doolittle, pero con la diferencia de que ahora fijamos uii = 1,
para todo i, de manera que la matriz U es la que tiene los elementos diagonales iguales a 1. Vase [12] para
mayor detalle.
Factorizacin LU con pivoteo (o factorizacin P A = LU )
Para realizar las factorizaciones anteriores de Doolittle y Crout, hemos supuesto que es posible realizar
todos los clculos sin pivoteo. Si se utiliza pivoteo, entonces las matrices L y U que se obtienen no son
la factorizacin de la matriz original A. El producto LU da una matriz con filas que tienen los mismos
elementos que A, pero como consecuencia del pivoteo, las filas estn en un orden diferente. Cuando se utiliza
el intercambio de filas como operacin elemental en el mtodo de Gauss, ste lleva consigo una modificacin
menor en la factorizacin LU , y los cambios que se han hecho tienen que ser grabados y almacenados. Esto
se puede hacer creando una matriz P , llamada matriz de permutacin, tal que P A = LU y donde P es el
resultado de permutar filas en la matriz identidad. En este caso, P contiene informacin sobre el orden que
impone el mtodo de eliminacin de Gauss con pivoteo, y por tanto es equivalente a reordenar la matriz A
de acuerdo a ese orden y aplicar luego el mtodo de eliminacin de Gauss sin pivoteo. Si las matrices L y U
se utilizan para resolver un sistema de ecuaciones Ax = b, entonces hay que cambiar el orden de las filas de
b para que sea consistente con el pivoteo. Esto se consigue multiplicando b por la matriz de permutaicn,
P b. Para mayor detalle puede consultarse [14].
b , donde L
b = P 1 L,
Alternativamente, vase [6], la factorizacin P A = LU se puede escribir como A = LU
b
de forma que L es una permutacin de la matriz triangular inferior (que es el resultado de reordenar las filas
de L).
Ejemplo. La matriz
1
A = 1
1
1
1
2
1
2
2
tiene el menor principal 2 2 nulo, luego no tiene factorizacin de Doolitte y, por tanto, no es posible aplicar
el mtodo de eliminacin de Gauss sin pivoteo. Es necesario permutar las filas 2 y 3 para llevar a cabo el
mtodo de eliminacin de Gauss; es decir, se necesita pivoteo. Si multiplicamos entonces la matriz A por la
matriz de permutacin de filas 2 y 3
1 0 0
1 1 1
P = 0 0 1 , se tiene la matriz P A = 1 2 2 ,
0 1 0
1 1 2
que ya no necesita pivoteo, puesto que los tres menores principales de P A son mayores que cero.
21
Factorizacin de Cholesky
El algoritmo para la factorizacin de Cholesky es el caso especial del algoritmo general para la factorizacin
LU en el que U = LT , de modo que `ii = uii , para i = 1, 2, . . . , n. Si A es simtrica definida positiva, entonces
tiene una factorizacin nica de la forma A = LLT , donde L es triangular inferior con todos los elementos
de la diagonal positivos. Como
aij =
n
X
mn(i,j)
`ip upj =
p=1
`ip `jp
`kk =
akk
p=1
k1
X
! 21
`2kp
p=1
y los valores `kk quedan determinados. As, los elementos de la matriz L se obtienen de la siguiente forma.
Para k = 1, 2, . . . , n, se tiene:
`kk =
akk
k1
X
! 21
`2kp
`ik =
p=1
1
`kk
aik
k1
X
!
`ip `kp
i = k + 1, k + 2, . . . , n.
p=1
Estas igualdades pueden deducirse escribiendo la igualdad A = LLT como un sistema de ecuaciones.
Ejemplo. Factorizaremos mediante el mtodo de Cholesky la siguiente matriz
16 4 4
A = 4 26 6 .
4 6 11
De las frmulas anteriores, obtenemos
`11 = 4;
`21 = 1,
`22 = 5;
`31 = 1,
`32 = 1,
`33 = 3.
Luego,
4
L= 1
1
0
5
1
0
0
3
4
U = LT = 0
0
1
5
0
1
1 .
3
Comentario adicional.
. Los mtodos de factorizacin LU son particularmente tiles cuando se necesita resolver un conjunto de sistemas Axj = bj , j = 1, 2, . . . , n, que tienen la misma matriz cuadrada
de coeficientes A. En muchos problemas de la ciencia y la ingeniera aparecen sistemas de este tipo y, en
este caso, es ms eficiente utilizar mtodos LU que aplicar separadamente el mtodo de eliminacin de
Gauss a cada uno de los n sistemas. Este mtodo es especialmente til para calcular la matriz inversa
de A (vase ejercicio el 5). Adems, se puede economizar el espacio de almacenamiento al no necesitar
almacenar los ceros de L o U y los unos de la diagonal de L o U (segn sea la factorizacin), de manera
que las matrices L y U se construyen almacenando sus elementos en el espacio de A.
2.3.
Mtodos iterativos
Los mtodos estudiados hasta ahora se llaman mtodos directos porque encuentran la solucin exacta tras
un nmero finito de pasos (salvo errores de redondeo). A continuacin estudiaremos otros mtodos, llamados
iterativos, que si bien necesitaran un nmero infinito de pasos para alcanzar la solucin, permiten aproximarla
tras un nmero finito. Adems estn mejor adaptados a la resolucin de grandes sistemas lineales, sobre todo
si estos estn dados por matrices con un alto porcentaje de elementos nulos (matrices dispersas).
La idea bsica
de un mtodo iterativo para resolver
el sistema Ax = b consiste en construir una sucesin
T
(k)
(k)
(k)
(k)
; k N de Rn que converja a la solucin exacta x, esto es
de vectores x = x1 , x2 , . . . , xn
lm x(k) = x,
22
Una tcnica general para construir un mtodo iterativo se basa en una descomposicin de la matriz A del
sistema Ax = b en la forma A = M (M A), donde M es una matriz no singular adecuada (llamada el
precondicionador de A). Entonces
M x = (M A)x + b,
que tiene la forma x = T x + c, donde T = M 1 (M A) es una matriz n n, llamada matriz de iteracin,
y c = M 1 b. En correspondencia con esta descomposicin y despus de seleccionar un vector inicial x(0) ,
podemos definir el siguiente mtodo iterativo:
x(k) = T x(k1) + c,
k N.
Si el proceso converge, el lmite es solucin de la ecuacin planteada y, por tanto, solucin del sistema inicial.
El sistema inicial es fcil de resolver si M es fcil de invertir, en el sentido de que sea fcil resolver un sistema
asociado a dicha matriz, como por ejemplo ocurre cuando M es una matriz diagonal o triangular.
A continuacin nos planteamos cundo la sucesin anterior converger a la solucin. Si denotamos el error
cometido en la k-sima iteracin por e(k) = x(k) x, se verifica que
e(k) = x(k) x = (T x(k1) + c) (T x + c) = T (x(k1) x) = T e(k1)
y, por tanto,
e(k) = T e(k1) = T 2 e(k2) = = T k e(0) ,
k N.
As, el error en las iteraciones depende fundamentalmente de las potencias sucesivas de la matriz T . A
continuacin, eligiendo de forma conveniente cualesquier norma vectorial y norma matricial subordinada,
llegamos a la desigualdad
ke(k) k kT kk ke(0) k.
Entonces, si kT k < 1, podemos concluir de inmediato que e(k) 0 cuando k para cada posible e(0)
(y por tanto x(0) ). A continuacin damos un criterio en el que se pone de manifiesto que esta propiedad es
necesaria para la convergencia.
El criterio fundamental de convergencia de los mtodos iterativos solo involucra la matriz T del
mtodo iterativo considerado y establece que son equivalentes ([14]):
a) el mtodo asociado a la matriz T es convergente,
b) (T ) < 1, donde (T ) es el radio espectral de la matriz T , esto es,
(T ) = m
ax{||; es valor propio de T },
c) kT k < 1 para alguna norma matricial.
Las normas matriciales subordinadas son normas que provienen de una norma vectorial. Las normas || ||1
y || || son ejemplos de tales normas (vanse sus definiciones en el captulo anterior).
Comentarios adicionales.
. A la hora de resolver un sistema lineal mediante un mtodo iterativo, en
primer lugar deberemos asegurar su convergencia (por ejemplo, encontrando alguna norma para la cual
kT k < 1 o viendo que (T ) < 1). A continuacin, y en caso de disponer de varios mtodos a nuestro
alcance, elegiremos aqul cuya matriz asociada tenga una norma o un radio espectral menor.
. Como en un mtodo iterativo no podemos esperar hallar la solucin exacta, sino calcular una aproximacin, debemos fijar un criterio de parada que d por terminado el mtodo cuando la aproximacin
obtenida se considere suficientemente buena. Una posibilidad es medir la diferencia entre dos iteraciones
consecutivas e iterar hasta que
(k)
x x(k1)
sea tan pequeo como una cierta cantidad prescrita > 0, que se denomina tolerancia, de manera que
se considera que se est suficientemente cerca de la solucin y se finaliza el mtodo. Otros criterios
se basan en la diferencia relativa entre dos iteraciones consecutivas (vase la pg. 157 de [16]). Ahora
bien, segn el criterio fundamental de convergencia, la convergencia o divergencia del mtodo iterativo
solo depende del carcter de las propias matrices, pero en el caso de que haya convergencia, una buena
aproximacin inicial har que el nmero de iteraciones sea relativamente pequeo.
23
. Desde un punto de vista computacional, es importante evitar que el mtodo entre en un bucle infinito.
Para ello, se suele fijar un nmero mximo de iteraciones de forma que si se supera, se termine el mtodo
con un mensaje de error. (Existe tambin otro problema: que la solucin crezca de forma que supere la
cantidad mxima representable en punto flotante (overflow)).
2.3.1.
0
...
0
..
.
..
a21
.
L=
.
.
..
..
0
an1 an,n1
0
0 a12
..
..
..
.
.
.
y
U
=
.
..
.
..
..
.
0
0
...
..
.
..
.
a1n
..
.
.
an1,n
0
para cada
k N,
con Tj = D1 (L + U ) y cj = D1 b.
Ejemplo. Resolvemos el sistema
7x1
x1
2x1
x1
2x2
9x2
x2
+
x3
+ 3x3
+ 10x3
+
x3
+
+
x4
x4
6x4
= 17
= 13
= 15
= 10
mediante el mtodo de Jacobi, utilizando una tolerancia = 103 , un nmero mximo de 30 iteraciones y el
vector inicial x(0) = 0 = (0, 0, 0, 0)T .
En primer lugar, reescribimos las ecuaciones anteriores de la forma
x1 = 71 (17 + 2x2 x3 )
x2 = 19 (13 + x1 + 3x3 x4 )
x3 =
x4 =
1
10 (15 2x1 x4 )
1
6 (10 x1 + x2 x3 ),
24
Sustituyendo x(0) = (0, 0, 0, 0)T en el lado derecho de cada una de las ecuaciones obtenemos
(1)
x3 =
1
10 (15
2(0) 0) = 1.5
(1)
x4 = 16 (10 0 + 0 0) = 1.666666667.
Luego, x(1) = (2.428571429, 1.444444444, 1.5, 1.666666667)T . Procediendo de la misma manera, vase [16],
se genera una sucesin convergente a
x(9) = (2.000127203, 1.000100162, 1.000118096, 1.000162172)T
con una tolerancia de 103 y utilizando la norma del mximo kxk = m
ax |xi |.
i=1,2,3,4
T
(k)
(k)
(k)
A continuacin, raznese que si escribimos x(k) = x1 , x2 , . . . , xn
, se tiene que el valor de cada
componente de la iteracin, para k N, es:
n
X
1
(k)
(k1)
xi =
aij xj
+ bi , para cada i = 1, 2, . . . , n.
aii
j=1, j6=i
Reconsiderando la ltima igualdad podemos ver algo que seguramente mejora el mtodo de Jacobi. En
(k)
dicha ecuacin se utilizan todas las componentes de x(k1) para calcular xi . Puesto que las componentes
(k)
(k)
(k)
x1 , x2 , . . . , xi1 de x(k) ya se han calculado y son probablemente mejores aproximaciones de las soluciones
(k1)
(k1)
(k1)
(k)
i1
n
X
X
1
(k)
(k)
(k1)
aij xj
xi =
aij xj
+ bi , para cada i = 1, 2, . . . , n.
aii
j=1
j=i+1
Esta modificacin recibe el nombre de mtodo iterativo de Gauss-Seidel.
Con las definiciones de D, L y U que hemos usado antes, raznese que el mtodo de Gauss-Seidel se puede
representar mediante
x(k) = Tg x(k1) + cg , para cada k N,
donde Tg = (D L)1 U y cg = (D L)1 b. Como det(D L) = a11 a22 a22 , la matriz triangular inferior
D L es invertible precisamente si aii 6= 0 para cada i = 1, 2, . . . , n.
Comentario adicional.
. Como consecuencia de que los nuevos valores se pueden almacenar inmediatamente en el lugar de los valores antiguos, los requerimientos de almacenamiento para x con el mtodo
de Gauss-Seidel son la mitad de lo que seran para el mtodo de Jacobi.
2.3.2.
Por un lado, segn el criterio fundamental de convergencia, los mtodos iterativos de Jacobi y de GaussSeidel convergen si y solo si (Tj ) < 1 y (Tg ) < 1. Esto es una condicin necesaria y suficiente, pero es
necesario calcular el radio espectral, lo que puede ser tan costoso de calcular como resolver el sistema. Sin
embargo, existen condiciones suficientes que aseguran de una forma ms sencilla la convergencia de ambos
mtodos.
Resultados de convergencia
Por un lado, podemos establecer las siguientes propiedades de convergencia a priori para los mtodos de
Jacobi y de Gauss-Seidel:
25
Si la matriz A es estrictamente diagonal dominante, entonces ambos mtodos convergen para cualquier
eleccin inicial x(0) .
Si las matrices A y 2D A son simtricas definidas positivas, entonces el mtodo de Jacobi converge
para todo x(0) .
Si la matriz A es simtrica definida positiva, entonces el mtodo de Gauss-Seidel converge para todo
x(0) .
Por otro lado, la seccin anterior parece indicar que el mtodo de Gauss-Seidel es superior al mtodo
de Jacobi, pero no existen resultados generales que muestren que el mtodo de Gauss-Seidel converge ms
rpido que el de Jacobi. Esto es verdad casi siempre, pero hay sistemas lineales para los que el mtodo de
Jacobi converge, mientras que el de Gauss-Seidel no. En algunos casos particulares si que se puede dar la
superioridad del mtodo de Gauss-Seidel sobre el mtodo de Jacobi, como se establece a continuacin:
Si la matriz A es tridiagonal (matriz con elmentos no nulos en a lo sumo la diagonal principal
y las diagonales inmediatamente superior e inmediantemente inferior), no singular y con todos
elementos diagonales distintos de cero, entonces los mtodos de Jacobi y Gauss-Seidel son ambos
divergentes o son ambos convergentes. En el ltimo caso, los radios espectrales de las matrices Tj
y Tg verifican que (Tj )2 = (Tg ).
Mejora de la convergencia mediante relajacin
Podemos modificar el mtodo de Gauss-Seidel introduciendo un parmetro que permita acelerar la
convergencia del mtodo. Despus de calcular cada nuevo valor de x, mediante el mtodo de Gauss-Seidel,
modificamos ese valor mediante una combinacin lineal de los resultados de las iteraciones anterior y actual:
(nuevo)
xi
(nuevo)
= xi
(anterior)
+ (1 ) xi
para cada
i = 1, 2, . . . , n.
donde puede tomar valores comprendidos entre 0 y 2. Para 0 < < 1, se llama mtodo de subrelajacin
sucesiva y, para 1 < , se llama mtodo de sobrerelajacin sucesiva (o mtodo SOR, del ingls successive
over relaxation). Obsrvese que el mtodo SOR se reduce al mtodo de Gauss-Seidel si = 1.
Damos a continuacin algunas propiedades de convergencia a priori para el mtodo SOR:
Si la matriz A es simtrica definida positiva y 0 < < 2, entonces el mtodo SOR converge para todo
x(0) .
Si la matriz A es estrictamente diagonal dominante y 0 < 1, entonces el mtodo SOR converge
para todo x(0) .
Los resultados anteriores tratan la convergencia del mtodo SOR, pero no dicen nada acerca de la eleccin
del parmetro . Con relacin a esto ltimo, podemos decir que se puede elegir de forma ptima el parmetro
para un caso particular de matrices:
Si la matriz A es simtrica definida positiva y tridiagonal, entonces el valor ptimo del parmetro
es
2
p
=
.
1 + 1 (Tj )2
Notemos que las matrices tridiagonales aparecen frecuentemente cuando se trabaja con mtodos de iterpolacin mediante splines cbicos y mtodos de diferencias finitas para resolver problemas de contorno y
ecuaciones en derivadas parciales.
2.4.
Los tpicos introducidos en este captulo son parte del campo del lgebra lineal numrica, que tambin
incluye los tpicos tratados en el complemento A. Un estudio interesante sobre la estrategia de pivoteo se
encuentra en Hager (1998). Una discusin sobre el escalado en el pivoteo y el clculo sobre el nmero de
operaciones de los diferentes mtodos puede consultarse en Atkinson (1989). Dos referencias a considerar
para la resolucin de sistemas lineales son Wilkinson (1994) para los mtodos directos y Varga (2000) para
los mtodos iterativos. Para ms informacin sobre la computacin matricial, vase Golub y Van Loan (1996).
26
2.5.
Ejercicios
x+y =4
0.15x + 2.11y + 30.75z = 26.38
2x + 2z = 4
0.64x + 1.21y + 2.05z = 1.01
a)
b)
3y + 3z = 4
3.21x + 1.53y + 1.04z = 5.23
sin pivoteo, con pivoteo parcial y con pivoteo total.
2. Resulvanse los sistemas Aj x = b, para j = 1, 2, con
1 1
1
1
A1 =
, A2 =
,
1 0
1 0.01
b=
100
1
.
2x + y z = 1
5x + 2y + 2z = 4 sin utilizar pivoteo,
a)
3x + y + z = 5
x + y z = 3
6x + 2y + 2z = 2 utilizando pivoteo parcial.
b)
3x + 4y + z = 1
5. La inversa de una matriz cuadrada de orden n se puede calcular resolviendo los n sistemas de ecuaciones
Axj = ej , con j = 1, 2, . . . , n, y donde ej es el vector que tiene todas las componentes ceros excepto la
j-sima que es uno, puesto que los vectores soluciones x1 , x2 , . . . , xn son respectivamente las columnas
1, 2, . . . , n de A1 . Calclese, utilizando el mtodo de eliminacin de Gauss sin pivoteo, la matriz inversa
de
6 3 11
A = 3 2 7 .
3 2 6
6. Mustrese que la factorizacin LU de la matriz A se puede utilizar para calcular A1 . (Utilcese el
ejercicio anterior para calcular la matriz inversa.)
7. Dadas las matrices
1
1
A=
1
1
2
4
8
16
3
9
27
81
4
16
64
256
B=
1
1
0
0
0
1
2
1
0
0
0
1
3
1
0
0
0
1
4
1
0
0
0
1
5
27
2.5. EJERCICIOS
2
1
An =
1
2 1
1
2 1
..
..
.
.
1
,
..
2 1
1
2
2
A = 1
1
6
1
7 1
3
2
12
b = 8 .
16
13
11
A=
11
11
13
11
11
11 ,
13
2.25
3
B=
4.5
15 18
15 3
18
24 18
4
.
C=
15 18
18 3
3
4 3
1
3 4.5
5 10 ,
10
34
a
1
An =
1
a
1
1
a
..
.
1
..
.
1
..
.
a
1
1
a
2x + 3z = 1
x + 2y 2z = 1
x + y + 2z = 1
4y + 2z = 2
x+y+z =1
x + 3y + z = 1
a)
b)
c)
y + 6z = 3
2x + 2y + z = 1
y + 4z = 1
2x y + z = 1
3x + y + z = 4
8x + 2y + 3z = 51
2x + 2y + 2z = 1
2x + 4y = 1
2x + 5y + z = 23
d)
e)
f)
x y + 2z = 1
x + 2y 6z = 2
3x + y + 6z = 20
A continuacin, calclense, partiendo del vector cero, las soluciones aproximadas despus de realizar
tres iteraciones.
13. Estdiese la convergencia de los mtodos de Jacobi y Gauss-Seidel para resolver un sistema lineal cuya
matriz de coeficientes es
a 0 1
A = 0 a 0 , a R.
1 0 a
Cuando ambos mtodos converjan a la vez, justifquese cul lo hace ms rpido.
28
14. Si tenemos que resolver un sistema lineal en el que la matriz de coeficientes es diagonal estrictamente
dominate y tridiagonal convergen los mtodos de Jacobi y Gauss-Seidel? cul lo har de forma ms
rpida? Raznense las respuestas.
15. Descrbase el valor de cada componente de la iteracin x(k) del mtodo SOR y dse la forma explcita
de la correspondiente matriz de iteracin para cada k N. Ilstrese la primera iteracin del mtodo,
utilizando = 1.2 y empezando con el vector x(0) = (0, 0, 0)T , para resolver el sistema lineal Ax = b,
donde
4 2
0
8
6 5 , b = 29 .
A = 2
0 5 11
43
16. El condicionamiento de una matriz A se define mediante el nmero de condicin (A) = kAkkA1 k,
donde k k es una norma matricial, y cumple que (A) 1. En general, (A) depende de la eleccin de
la norma. Si (A) es grande, pequeos cambios en el sistema provocan grandes cambios en la solucin,
dicindose entonces que el sistema est mal condicionado. Sean los sistemas Ax = bj con i = 1, 2 y
1 0
1
0.9
A = 1 0 ,
b1 = 1 ,
b2 = 1.1 ,
= 107 .
0 0 1
1
1
a) Calclese (A) con las normas 1 e infinito.
b) Resulvanse los sistemas y comntense los resultados.
Captulo 3
Introduccin
Estudiamos en este captulo uno de los problemas ms bsicos de la aproximacin numrica y con mayor
historia: el clculo de races. Es decir, la determinacin de una raz, o solucin, de una ecuacin de la forma
f (x) = 0, donde f , por lo general, es una funcin real no lineal de variables reales. Las races de esta
ecuacin tambin se llaman ceros de la funcin f . Un ejemplo que muestra la necesidad de tener tcnicas
de aproximacin a alguna solucin del problema anterior es el caso simple de encontrar soluciones de un
polinomio. Se conocen frmulas para polinomios de grados 2, 3 y 4, siendo de complejidad creciente, pero con
la posibilidad de determinar sus ceros exactamente. A principios de siglo XIX Galois prob que no existen
frmulas explcitas para determinar los ceros de polinomios de grado mayor o igual que 5. La situacin es an
ms difcil cuando f no es un polinomio. Esta limitacin obliga a buscar mtodos para encontrar los ceros de
forma aproximada. Los mtodos que se discuten en esta leccin son iterativos y de dos tipos: uno en el que
se puede asegurar la convergencia y el otro en el que la convergencia depende de una o dos aproximaciones
iniciales.
Mtodos conceptualmete sencillos son los mtodos de intervalo, que aprovechan el cambio de signo de la
funcin en el entorno de una raz. As, partiendo de dos valores proporcionados inicialmente, dichos mtodos
tratan de reducir el tamao del intervalo que encierra al cero buscado, hasta converger a ste con la suficiente
precisin. Un ejemplo de este tipo de mtodos es el de biseccin, que adems de ser un mtodo simple e
intuitivo, se puede utilizar para obtener una adecuada estimacin inicial del cero de la funcin que despus
puede ser refinado por mtodos ms poderosos.
El segundo tipo de mtodos se basa en aproximar la funcin, cuyos ceros se buscan, por una recta. Los
mtodos que describiremos parten de una aproximacin (mtodo de Newton, que aproxima la funcin por una
recta tangente) o dos aproximaciones (mtodo de la secante, que aproxima la funcin por una recta secante)
y determinan el cero de la funcin con una precisin deseada. Estos mtodos no garantizan la convergencia,
pero, cuando convergen, lo hacen generalmente ms rpidamente que los mtodos de intervalo ([5]).
3.2.
El mtodo de biseccin
La primera y ms elemental tcnica que consideramos es el mtodo de biseccin, que est basado en una
propiedad bien conocida de las funciones continuas: el teorema del valor medio. Este mtodo se emplea para
determinar una raz de f (x) = 0 en un intervalo [a, b], supuesto que f es continua en dicho intervalo y que
f (a) y f (b) tienen signos distintos. Aunque el mtodo funciona en el caso en que haya ms de una raz en
el intervalo [a, b], supondremos por simplicidad que la raz es nica y la llamaremos . (En el caso de varias
races, habra que localizar un intervalo que contenga slo una de ellas.)
El mtodo de biseccin emplea la idea anterior de la siguiente manera: si f (a)f (b) < 0, entonces calculamos
c = (a + b)/2 y averiguamos si f (a)f (c) < 0. Si lo es, entonces f tiene un cero en [a, c]. A continuacin
renombramos c como b y comenzamos otra vez con el nuevo intervalo [a, b], cuya longitud es igual a la mitad
del intervalo original. Si f (a)f (c) > 0, entonces f (c)f (b) < 0, y en este caso renombramos a c como a. En
ambos casos se ha generado un nuevo intervalo que contiene un cero de f , y el proceso de partir por la mitad
29
30
el nuevo intervalo puede repetirse hasta que la raz se localiza con tanta exactitud como se quiera, es decir,
|an bn | < ,
donde an y bn son los extremos del n-simo intervalo [an , bn ] y es una tolerancia especificada. El mtodo
de biseccin tambin se conoce como mtodo de biparticin. Vase la figura 3.1.
Algunos otros criterios de parada diferentes del anterior que pueden utilizarse son:
|an bn |
<
|an |
|f (an )| < .
c1
y = f (x)
c0
a0 + b0
1+2
=
= 1.5
2
2
Ahora f (1)f (1.5) < 0, luego la funcin cambia de signo en [a0 , c0 ] = [1, 1.5]. Para continuar, tomamos
entonces a1 = a0 y b1 = c0 , de manera que
c1 =
a1 + b1
1 + 1.5
=
= 1.25
2
2
De nuevo f (1.25)f (1.5) < 0, luego la funcin cambia de signo en [1.25, 1.5]. Elegimos ahora a2 = c1 y b2 = b1 .
Continuando de esta manera, se puede ver en [16] que hay convergencia a la raz = 1.465454 despus de
doce iteraciones con una tolerancia de 104 .
Ya hemos indicado anteriormente que es importante, para un mtodo que proporciona una sucesin de
aproximaciones, saber si la sucesin converge y en cmo de rpido lo hace en dicho caso.
Para una sucesin convergente, dos cantidades describen la rapidez con que la sucesin lo hace: el orden de
convergencia y la razn de convergencia. Se suele decir que la convergencia es lineal si el orden de convergencia
es uno y cuadrtica si es dos.
Una forma de definir la convergencia lineal, que es particularmente conveniente para el mtodo de biseccin, es que la razn de error en el paso n-simo dividido por el error en el paso (n 1)-simo se aproxima a
un valor constante (la razn de convergencia) cuando n . Aunque no sepamos que el error se reduce en
1/2 en cada paso del mtodo de biseccin, la cota del error se reduce en 1/2 y el lmite de la razn de error
tambin se aproxima a 1/2. Entonces, el mtodo de biseccin converge linealmente con razn 1/2. Damos
a continuacin un resultado sobre la convergencia del mtodo,que pone de manifiesto lo que acabamos de
decir:
Si [a0 , b0 ], [a1 , b1 ], . . . , [an , bn ], . . . denotan los intervalos en el mtodo de biseccin, entonces los
lmites lmn an y lmn bn existen, son iguales y representan un cero de f . Si = lmn cn y
cn = (an + bn )/2, entonces | cn | = (b0 a0 )/2n+1 .
31
El mtodo de biseccin siempre converge, suponiendo que el intervalo con el que se comienza dicho mtodo
contenga una raz, y es fcil de programar, comparado con otros mtodos, aunque su velocidad de convergencia
sea lenta por ser lineal.
Comentario adicional.
. El mtodo de biseccin es til para dar una idea rpida de la localizacin
de las races, es decir, para determinar intervalos de longitud pequea que contengan una nica raz;
en cambio, al ser de convergencia muy lenta, los clculos aumentan considerablemente si deseamos una
buena aproximacin de la raz. Esto hace que este mtodo se aplique, principalemente, como un paso
previo a la utilizacin de otros mtodos iterativos de convergencia ms rpida.
3.3.
El mtodo de Newton
El mtodo de Newton es un procedimiento general que se puede aplicar en muy diversas situaciones.
Cuando se emplea para localizar los ceros de una funcin real de variable real se suele llamar mtodo de
Newton-Raphson.
La idea del mtodo de Newton para resolver la ecuacin f (x) = 0 es aproximar la funcin f por su
tangente l en una aproximacin de la raz y resolver la ecuacin l(x) = 0 (lo que se denomina linealizacin
de la funcin). Tomamos esta solucin como nueva estimacin de la raz de f (x) = 0 y repetimos el proceso
hasta obtener la precisin deseada.
Sea x0 la estimacin inicial de la solucin. Hallamos la tangente a la grfica de f en el punto (x0 , f (x0 ))
y tomamos la interseccin x1 de la tangente con el eje de las x como nueva estimacin de la solucin. As, la
ecuacin de la recta tangente es
y = f (x0 ) + f 0 (x0 )(x x0 )
y la interseccin con el eje de las x se obtiene haciendo y = 0:
x1 x = x0
f (x0 )
f 0 (x0 )
f (xn )
,
f 0 (xn )
n = 0, 1, 2 . . .
y = f (x)
x2
|
x1
|
x0
|
|xn+1 xn |
|xn+1 xn |
.
|xn+1 |
32
Continuando de esta manera, se llega, vase [16], a que hay convergencia a la raz = 1.465571 despus de
seis iteraciones con una tolerancia de 104 .
El mtodo de Newton suele proporcionar resultados precisos en unas pocas iteraciones. Con la ayuda del
polinomio de Taylor de f en de primer orden podremos ver por qu. Supongamos que es la solucin
de f (x) = 0 y que f 00 existe en un intervalo en el que estn tanto como xn . Evaluando x = la frmula
correspondiente al primer polinomio de Taylor de f en xn obtenemos:
1
0 = f () = f (xn ) + f 0 (xn )( xn ) + f 00 ()( xn )2 ,
2
donde est entre xn y . En consecuencia, si f 0 (xn ) 6= 0, tenemos
xn +
Y como xn+1 = xn
f (xn )
f 00 ()
= 0
( xn )2 .
0
f (xn )
2f (xn )
f (xn )
, podemos escribir
f 0 (xn )
xn+1 =
f 00 ()
( xn )2 .
2f 0 (xn )
m
ax |f 00 (x)|
1 xI
donde K =
.
2 mn |f 0 (x)|
xI
El rasgo destacable de esta desigualdad es que el error | xn+1 | cometido en la aproximacin (n + 1)-sima
est acotado por, ms o menos, el cuadrado del error | xn | cometido en la aproximacin n-sima. En la
prctica, esto quiere decir que el nmero de cifras precisas en el mtodo de Newton tiende, aproximadamente,
a duplicarse tras cada iteracin, lo que se denomina convergencia cuadrtica u orden de convergencia dos.
La bondad del mtodo de Newton se basa en la hiptesis de que la derivada de f no se anule en las
aproximaciones a la raz . Si f 0 es continua, esto significa que la tcnica ser satisfactoria siempre que
f 0 () 6= 0 y se use una aproximacin inicial lo suficientemente precisa. La condicin f 0 () 6= 0 no es banal; se
verifica precisamente cuando es una raz simple. Cuando la raz no es simple, el mtodo de Newton puede
ser convergente, pero no con la velocidad indicada anteriormente.
El mtodo de Newton es una tcnica poderosa, pero tiene algunas dificultades. Una de ellas es que si el
aproximacin inicial x0 no est suficientemente cerca de la raz , el mtodo puede no converger. Tampoco
se debera elegir x0 tal que f 0 (x0 ) sea prximo a cero, puesto que en este caso la tangente es casi horizontal.
La convergencia del mtodo de Newton a la raz depender, en general, de la eleccin del aproximacin
inicial x0 .
La mayora de las veces solo sabemos dar resultados de convergencia local, que solo son vlidos para x0
perteneciendo a un cierto entorno de la raz . Los mtodos que convergen a para cualquier eleccin de x0
perteneciente a un intervalo se dicen globalmente convergentes a .
El siguiente resultado de convergencia local para el mtodo de Newton ilustra la importancia de la
eleccin de la aproximacin inicial.
Sean f , f 0 y f 00 continuas y f 0 no nula en algn intervalo abierto que contenga a una raz simple
de f (x) = 0. Entonces, existen a y b, con a < < b, tales que el mtodo de Newton converge a
para cualquier aproximacin inicial x0 (a, b).
Hay situaciones particulares en las que se tiene la seguridad de que el mtodo de Newton converge a partir
de cualquier aproximacin inicial que se elija (convergencia global). Como muestra, vase [24], damos el
siguiente resultado sobre las condiciones suficientes de convergencia del mtodo de Newton:
33
Sea f dos veces derivable con continuidad en un intervalo [a, b] y tal que:
a) f (a)f (b) < 0,
b) f 0 (x) 6= 0, x [a, b],
c) f 00 (x) no cambia de signo en [a, b].
Entonces, existe una nica raz de f (x) = 0 en [a, b] y el mtodo de Newton converge a para
todo aproximacin inicial x0 [a, b] cumpliendo que:
i) f (x0 )f 00 (x0 ) 0, o bien,
ii) f (x0 )f 00 (x0 ) < 0 y x1 [a, b].
Comentario adicional.
. Cuando el mtodo de Newton converge, suele hacerlo de forma rpida. Cuando no converge, suele ser porque la aproximacin inicial no est suficientemente cerca de la solucin.
Problemas tpicos de convergencia suelen aparecer cuando el valor de f 0 (x) est prximo a cero en un
entorno de la solucin, donde f (x) = 0.
3.4.
El mtodo de la secante
El mtodo de Newton converge muy rpidamente, pero necesita evaluar la derivada de la funcin en cada
paso y es muy sensible a la estimacin inicial. Para superar esta dificultad se puede reemplazar f 0 (xn ) en la
expresin del mtodo de Newton por el cociente de diferencias:
f 0 (xn )
f (xn ) f (xn1 )
.
xn xn1
ux
f (x) f (u)
.
xu
Cuando se realiza esta sustitucin, el algoritmo resultante se conoce como mtodo de la secante y su expresin
es:
xn xn1
, n = 0, 1, 2 . . .
dados x1 , x0 ; xn+1 = xn f (xn )
f (xn ) f (xn1 )
Ya que el clculo de xn+1 requiere conocer xn y xn1 , se deben dar al principio los valores de dos aproximaciones iniciales (vase la figura 3.3). Sin embargo, cada xn+1 requiere slo una nueva evaluacin de f .
y
y = f (x)
x2 x1
|
|
x0
|
|xn+1 xn |
|xn+1 xn |
,
|xn+1 |
34
Ejemplo. Utilizamos ahora el mtodo de la secante con x0 = 1 y x1 = 2 para aproximar la raz real de
x3 x2 1 = 0. Como f (1) = 1 y f (2) = 3, la primera aproximacin a la raz es:
x1 x0
21
x2 = x1 f (x1 )
=23
= 1.25.
f (x1 ) f (x0 )
3 (1)
Ahora f (x2 ) = f (1.25) = 0.609375 y la siguiente aproximacin es:
x2 x1
1.25 2
x3 = x2 f (x2 )
= 1.25 (0.609375)
= 1.376623.
f (x2 ) f (x1 )
0.609375 3
Continuando de esta manera, se llega, vase [16], a que hay convergencia a la raz = 1.465571 despus de
siete iteraciones con una tolerancia de 104 .
La interpretacin geomtrica del mtodo de la secante es similar a la del mtodo de Newton, puesto que
ahora la recta tangente a la curva se reemplaza por una recta secante.
El mtodo de la secante tiene las ventajas de no utilizar la derivada y ser ms robusto que el de Newton.
En cambio, es ms lento que este ltimo, pero ms rpido que el de biseccin, lo que puede verse en el
siguiente resultado de convergencia local:
Sean f , f 0 y f 00 continuas y f 0 no nula en algn intervalo abierto que contenga a una raz
simple de f (x) = 0. Entonces, existen a y b, con a < < b, tales que, para cualesquier
aproximaciones iniciales
x1 , x0 (a, b), el mtodo de la secante converge a con orden de
convergencia 12 1 + 5 1.618.
3.5.
El mtodo de Newton para sistemas de ecuaciones no lineales es una extensin del mtodo utilizado para
resolver una sola ecuacin, por tanto sigue la misma estrategia que se emple en el caso de una sola ecuacin:
linealizar y resolver, repitiendo los pasos con la frecuencia necesaria. Consideramos, por sencillez, el caso de
dos ecuaciones con dos variables:
(
f (x, y) = 0,
g(x, y) = 0.
Si definimos la funcin F (x, y) = (f (x, y), g(x, y)), transformamos el sistema anterior en
F (x, y) = 0.
Podemos realizar entonces una formulacin idntica al caso de una variable donde la derivada est dada en
este caso por la matriz jacobiana
f
f
(x, y)
(x, y)
y
F 0 (x, y) = x
.
g
g
(x, y)
(x, y)
x
y
As, el mtodo de Newton comienza por un vector inicial (x0 , y0 )T y calcula el resto de aproximaciones
mediante
xn+1
xn
=
(F 0 (xn , yn ))1 F (xn , yn ),
yn+1
yn
donde (F 0 (xn , yn ))1 es la matriz inversa de F 0 (xn , yn ). Para poder aplicar este mtodo es necesario que
F 0 (x, y) sea no singular.
Un problema del mtodo anterior es que el clculo de la matriz inversa es costoso computacionalmente y
debemos calcularla en cada paso. Esto se puede resolver descomponiendo el mtodo en dos etapas:
1. Resolver el sistema lineal con dos ecuaciones y dos incognitas:
u
F 0 (xn , yn ) n = F (xn , yn ).
vn
35
u0
v0
=
1.555556
.
2.055560
3.6.
Para informacin adicional sobre las tcnicas del clculo de races se recomienda Atkinson (1989) y Ralston
y Rabinowitz (2001). Para sistemas de ecuaciones no lineales pueden consultarse [15], Ortega y Reinboldt
(2000) y Stoer y Bulirsch (2002).
36
3.7.
1.
Ejercicios
a) Si f es una funcin continua en un intervalo [a, b] en el que f (a)f (b) < 0, demustrese que el mtodo
de biseccin aproxima un cero de f con un error en el paso n-simo de a lo sumo (b a)/2n+1 .
b) Determniese entonces el nmero de iteraciones que requiere el mtodo de biseccin para encontrar
el nico cero de f (x) = x3 x2 1 en el intervalo [1, 2] con un error absoluto de no ms de 106 .
2. Supongamos que el mtodo de biseccin se inicia en el intervalo [50, 63]. Cuntos pasos deben darse
para calcular una raz con una precisin de 1012 ?
3. Para f (x) = 2x3 x2 + x 1 se tiene que f (4)f (4) < 0 y f (0)f (1) < 0, as que el mtodo de biseccin
se puede aplicar tanto en [4, 4] como en [0, 1]. Pero en cul de los dos intervalos interesa ms empezar
el mtodo? Por qu? Justifquense las respuestas.
4. El mtodo de la falsa posicin (regula falsi). Un inconveniente del mtodo de biseccin es que al dividir
los intervalos [a, b] en mitades iguales no se tienen en cuenta las magnitudes de f (a) y f (b). Por ejemplo,
si f (a) est mucho ms cerca del cero que f (b), parece lgico que la raz de la ecuacin f (x) = 0 est ms
cerca de a que de b. Un mtodo alternativo que aprovecha esta mejora es el mtodo de la falsa posicin
y consiste en unir f (a) y f (b) mediante una recta, de manera que la interseccin de esta recta con el
eje de las x suele dar una mejor aproximacin de la raz. (El nombre de falsa posicin (en latn, regula
falsi) viene del hecho de que al reemplazar la funcin por una recta, obtenemos una falsa posicin de
la raz.)
a) Dse la frmula de la aproximacin de la raz que se obtiene en cada paso por este mtodo.
b) Aproxmese, mediante este mtodo y una tolerancia de 104 , la nica raz de x3 x2 1 = 0 que
est en el intervalo [1, 2].
5.
a) Para calcular el inverso de un nmero a, sin tener que realizar divisiones o exponenciaciones,
podemos hallar un cero de la funcin f (x) = x1 a mediante el mtodo de Newton. Determnense,
para a > 0, aproximaciones iniciales para las que el mtodo converge.
4
a.
37
3.7. EJERCICIOS
9. Races complejas de ecuaciones. Tambin podemos utilizar el mtodo de Newton para calcular las races
complejas de una ecuacin f (z) = 0, donde z = x + iy es un nmero complejo, mediante
zn+1 = zn
f (zn )
,
f 0 (zn )
n = 0, 1, 2 . . .
Para ello debemos dar un nmero complejo como aproximacin inicial z0 para el mtodo de Newton.
p
|zn zn1 |
El correspondiente error se puede estimar a partir de E = Re(w)2 + Im(w)2 , donde w =
|zn |
y Re(w) e Im(w) son respectivamente las partes real e imaginaria de w. Utilcese el mtodo de Newton
para encontrar una raz compleja de la ecuacin f (z) = z 2 z + 4 = 0 y calclese el error.
10. El mtodo de Newton modificado. El mtodo de Newton pierde su convergencia cuadrtica en el caso
de races repetidas, pasando a tener solo convergencia lineal. Sin embargo, si se conoce la multiplicidad
de la raz (o se puede estimar), es posible, para preservar la velocidad de convergencia, modificar el
mtodo de la siguiente forma:
xn+1 = xn m
f (xn )
,
f 0 (xn )
n = 0, 1, 2 . . . ,
donde m es la multiplicidad de la raz buscada. Este mtodo se llama mtodo de Newton modificado.
Verifquese lo anterior, comparando los resultados, cuando se aproxima la raz doble ms cercana a 1
de la ecuacin x3 2x2 0.75x + 2.25 = 0 mediante los mtodos de Newton y Newton modificado.
11. Aceleracin de la convergencia. Una aspecto interesante a la hora de aplicar un mtodo iterativo es la
posibilidad de acelerar su convergencia (siempre que sea posible). Por ejemplo, el mtodo de Newton
tiene convergencia lineal cuando aproxima races mltiples, salvo que modifiquemos el mtodo convenientemente (ejercicio anterior), aunque esta modificacin requiera del conocimiento previo de la
multiplicidad de la raz. El mtodo 2 de Aitken es una tcnica que permite acelerar la convergencia de
una sucesin que converge linealmente, independientemente de su origen o mbito de aplicacin. As, si
(xn+1 xn )2
la sucesin de aproximaciones {xn } converge linealmente a y definimos yn = xn
,
xn+2 2xn+1 + xn
para todo n 0, entonces la sucesin {yn } tambin converge a y, en general, ms rpidamente. (En
[7] puede verse
la deducin de la sucesin {yn }.) Verifquese lo anterior para la sucesin {xn } dada por
1
, para todo n 1.
xn = cos
n
12. Iteracin de punto fijo. El mtodo de Newton es un ejemplo de mtodo iterativo que calcula una
sucesin de aproximaciones mediante una frmula del tipo xn+1 = g(xn ), para todo n 0. Un mtodo
as definido se llama iteracin de punto fijo. Para el mtodo de Newton la funcin g es g(x) = x ff0(x)
(x) .
Obsrvese que aproximar las races de f (x) = 0 es equivalente a aproximar las races de g(x) = x, que
son los puntos fijos de g.
a) Interprtese geomtricamente este mtodo.
b) Sea g : I I, donde I es un subconjunto cerrado de R, tal que |g(x) g(y)| L|x y| y L < 1.
Demustrese que existe una nica raz de la ecuacin g(x) = x que se puede obtener como lmite
de la sucesin {xn+1 = g(xn )}, para todo n 0, a partir de cualquier aproximacin inicial x0 I.
c) Si aplicamos la iteracin de punto fijo a la funcin g(x) = 2 + (x 2)4 empezando en x0 = 2.5,
encuntrese el intervalo I de aproximaciones iniciales para el que el mtodo converge.
13. Si se utiliza el mtodo de la secante para encontrar los ceros de f (x) = x3 3x2 + 2x 6 = 0 con x0 = 1
y x1 = 2, cul es x2 ?
14. Sean las ecuaciones x4 x10 = 0 y xex = 0. Determnense las aproximaciones iniciales y utilcense
para encontrar las aproximaciones a las races con cuatro cifras decimales mediante el mtodo de la
secante.
38
15. Realcense tres iteraciones del mtodo de Newton en dos variables para aproximar las soluciones de los
sistemas
x = sen(x + y)
4x2 y 2 = 0
xy 2 + x2 y + x4 = 3
a)
b)
c)
2
y = cos(x y).
4xy x = 1
x3 y 5 2x5 y x2 = 2
partiendo de los puntos (1,1), (0,1) y (2,2) respectivamente.
16. Verifquese que (1, 1) y (1, 1) son soluciones del sistema no lineal
2
x + y2 2 = 0
xy 1 = 0.
Explquense las dificultades que tiene el mtodo de Newton para hallar dichas soluciones.
Captulo 4
Introduccin
La necesidad de aproximar funciones y datos se presenta en muchas ramas de la ingeniera y las ciencias. El
concepto de aproximacin se basa en reemplazar una funcin f por otra ms simple, fe, que podamos utilizar
como sustituto. Como veremos en el siguiente captulo, esta tcnica se utiliza frecuentemente en integracin
Rb
Rb
numrica, donde, en lugar de calcular a f (x) dx, calculamos de forma exacta a fe(x) dx, donde fe es una
funcin fcil de integrar (por ejemplo, un polinomio). Tambin puede ocurrir que solo se conozca la funcin
f parcialmente por medio de valores en alguna coleccin finita de datos. En estos casos construiremos una
funcin continua fe que represente a la coleccin de datos. En [23] se muestran varios ejemplos.
Sabemos que una funcin f se puede reemplazar por un polinomio de Taylor en un intervalo dado.
Computacionalmente, esta sustitucin es costosa porque requiere del conocimiento de f y sus derivadas
hasta el orden n (el grado del polinomio) en un punto x0 . Adems, el polinomio de Taylor puede fallar para
representar a f suficientemente lejos del punto x0 , como podemos ver en el siguiente ejemplo. En la figura 4.1
se compara el comportamiento de f (x) = 1/x con el de su polinomio de Taylor de grado 10 construido
alrededor del punto x0 = 1: P10 (x) = 2 x + (x 1)2 (x 1)3 + (x 1)4 (x 1)5 + (x 1)6 (x 1)7 +
(x 1)8 (x 1)9 + (x 1)10 . La afinidad entre la funcin y su polinomio de Taylor es muy buena en un
pequeo entorno de x0 = 1, mientras que resulta insatisfactoria cuando x x0 se hace grande ([23]).
3.0
2.5
2.0
1.5
1.0
0.5
1.0
1.5
2.0
2.5
3.0
Figura 4.1: Comparacin entre la funcin f (x) = 1/x (lnea continua) y su polinomio de Taylor de grado 10
alrededor del punto x0 = 1 (lnea discontinua).
Puesto que los polinomios de Taylor tienen la propiedad de que toda informacin que se utiliza est
centrada en un nico punto x0 , es comn que estos polinomios den aproximaciones poco precisas a medida
que nos vamos alejando de x0 , lo que limita la utilizacin de aproximaciones mediante polinomios de Taylor
a situaciones en las que stas sean necesarias nicamente en puntos cercanos a x0 . Para realizar clculos
ordinarios resulta ms eficaz utilizar mtodos que empleen la informacin disponible en varios puntos. A lo
largo de este captulo introducimos mtodos de aproximacin que se basan en enfoques alternativos. El uso
primordial de los polinomios de Taylor en anlisis numrico no es para generar aproximaciones, sino para
construir tcnicas numricas.
39
40
El estudio de la teora de aproximacin implica dos tipos de problemas. Un problema surge cuando se tiene
explcitamente una funcin pero se desea encontrar un tipo de funcin ms simple, como un polinomio,
que se pueda usar para determinar los valores aproximados a la funcin dada. El otro problema consiste
en ajustar funciones a datos dados y encontrar qu funcin, dentro de una cierta clase, es la que mejor
representa los datos. Estudiaremos ambos problemas en este captulo.
4.2.
Interpolacin
En una gran variedad de problemas es deseable representar una funcin a partir del conocimiento de
su comportamiento en un conjunto discreto de puntos. En algunos problemas solo tendremos valores en un
conjunto de datos, mientras que en otros, buscaremos representar una funcin mediante otra ms simple.
En el primer caso hablaremos de interpolacin de datos, y en le segundo de interpolacin de funciones. En
ambos casos el objetivo es obtener estimaciones de la funcin en puntos intermedios, aproximar la derivada
o la integral de la funcin en cuestin o, simplemente, obtener una representacin continua o suave de las
variables del problema.
La interpolacin es el proceso de determinar una funcin que represente exactamente una coleccin de
datos. El problema de interpolacin se puede formular, en general, en los siguientes trminos: sean (xi , fi ),
i = 0, 1, . . . , n, pares de valores reales dados de manera que xi 6= xj , i 6= j, existe alguna funcin fe, de
tipo predeterminado, tal que fe(xi ) = fi , para todo i = 0, 1, . . . , n? Los puntos xi se llaman nodos y la
tal funcin fe se llama funcin de interpolacin del conjunto de datos {fi ; i = 0, 1, . . . , n}. En caso de que
los {fi } representen los valores alcanzados por una funcin continua f , entonces fe se denomina funcin de
interpolacin de f .
Dependiendo del tipo de funciones de interpolacin que se consideren, se distinguen varios tipos de interpolacin, entre los que se pueden citar: polinmica, trigonomtrica, spline (interpolacin polinomial a trozos),
racional y exponencial. El tipo ms elemental de interpolacin consiste en ajustar un polinomio a una coleccin de datos, que se conoce como interpolacin polinmica. Los polinomios tienen derivadas e integrales que
son polinomios, as que son una eleccin natural para aproximar derivadas e integrales. Por simplicidad, solo
vamos a considerar la interpolacin polinmica de Lagrange y la interpolacin mediante funciones splines.
4.2.1.
para todo
i = 0, 1, . . . , n.
i = 0, 1, . . . , n.
41
4.2. INTERPOLACIN
Si x = (a0 , a1 , . . . , an )T , b = (f0 , f1 , . . . , fn )T y
1
1
T = .
..
x0
x1
..
.
x20
x21
..
.
...
...
..
.
xn
x2n
...
xn0
xn1
.. ,
.
xnn
0
0
/2
1
Como hay dos datos, el polinomio es lineal de la forma p1 (x) = a0 +a1 x. Si aplicamos la condicin p1 (xi ) = fi
(i = 1, 2), obtenemos el sistema
a0 = 0
a0 + 2 a1 = 1
cuya solucin es a0 = 0 y a1 = 2 . Por lo tanto, p1 (x) = 2 x. Si los datos de la tabla corresponden a la funcin
f (x) = sen x, vemos en la figura 4.2 la aproximacin de f (x) mediante el polinomio p1 (x).
1
y = sen x
y = p1 (x) =
2
x
2
x
en los nodos
Comentarios adicionales.
. Es importante resear que si interpolamos una funcin f en n + 1 puntos
distintos, podemos obtener que el grado del polinomio de interpolacin pn sea distinto de n. De hecho,
aunque n sea grande, el grado del polinomio puede ser pequeo. Por ejemplo, si interpolamos la funcin
f (x) = x4 + 2x3 x2 + x + 1 en los puntos {2, 1, 0, 1}, debido a la unicidad, el polinomio de
interpolacin es p3 (x) = 3x + 1.
. Aunque el mtodo de los coeficientes indeterminados es el primer mtodo en el que se piensa cuando se
intenta hallar el polinomio de interpolacin pn , resulta excesivamente laborioso cuando n no es pequeo.
Conviene entonces recurrir a otros mtodos. Describimos a continuacin dos alternativas que son muy
adecuadas para implementarse en un ordenador: el polinomio de Lagrange y el polinomio de Newton.
Aplicaremos la expresin ms conveniente segn sean los datos del problema.
42
n
X
fi `i (x),
i=0
n
Y
x xj
donde `i (x) =
.
x
xj
j=0 i
j6=i
pn (xi ) = fi
(i = 0, 1, . . . , n).
(x /2)(x )
2
(x x1 )(x x2 )
=
= 2 (x /2)(x ),
(x0 x1 )(x0 x2 )
(0 /2)(0 )
`1 (x) =
(x x0 )(x x2 )
(x 0)(x )
4
=
= 2 x(x ),
(x1 x0 )(x1 x2 )
(/2 0)(/2 )
`2 (x) =
(x 0)(x /2)
2
(x x0 )(x x1 )
=
= 2 x(x /2).
(x2 x0 )(x2 x1 )
( 0)( /2)
2
4
2
4
(x /2)(x ) 1 2 x(x ) + 0 2 x(x /2) = 2 (x2 x).
2
Si los datos de la tabla corresponden a la funcin f (x) = sen x, vemos en la figura 4.3 la aproximacin de
f (x) mediante el polinomio p2 (x).
1
y = p2 (x) = 42 (x2 x)
y = sen x
Figura 4.3: Funcin y = sen x (lnea continua) y su polinomio de interpolacin y = p2 (x) = 42 (x2 x) en
los nodos x0 = 0, x1 = 2 y x2 = (parbola discontinua).
Comentario adicional.
. Una ventaja del polinomio de interpolacin de Lagrange es que su implementacin en el ordenador es muy sencilla. Otra ventaja es que si queremos resolver varios problemas
de interpolacin con los mismos nodos, entonces solo tendremos que modificar los valores de fi una vez
calculados los polinomios fundamentales de Lagrange.
43
4.2. INTERPOLACIN
pn (x) = f [x0 ] +
n
X
f [x0 , x1 , . . . , xi ]
i=1
i1
Y
(x xj ) ,
j=0
Comentarios adicionales.
. Una ventaja del polinomio de interpolacin de Newton radica en el hecho
de que aadir nuevos nodos no afecta a los coeficientes ya calculados, por lo que se puede ir aumentando
el grado del polinomio y conseguir la precisin deseada sin tener que calcular de nuevo todos los coeficientes, ya que, por construccin, cada polinomio se obtiene del anterior mediante la ltima igualdad.
Como consecuencia de este hecho, se suelen tomar los nodos en cierto orden, considerando primero los
ms prximos al punto que nos interesa, aunque el polinomio obtenido finalmente es independiente del
orden considerado.
. Obsrvese que las diferencias divididas son recursivas, puesto que las de orden superior se calculan a
partir de las de orden inferior. Esta propiedad de la recursividad es muy aprovechable a la hora de
implementar eficientemente este mtodo en un ordenador.
. Las expresiones de los polinomios de interpolacin de Lagrange y de Newton requieren de un trabajo
computacional semejante cuando solo se desea realizar una interpolacin, aunque el de Lagrange es ms
fcil de implementar en un ordenador debido a que no requiere calcular ni almacenar las diferencias
divididas. Si a priori no se conoce el grado del polinomio de interpolacin, la expresin de Newton es
ms conveniente, como podra ocurrir por ejemplo en el caso de que fuera mejor no utilizar todos los
nodos del conjunto de datos disponibles.
. Los polinomios de Lagrange y de Newton no proporcionan un polinomio en su forma convencional, tal
y como hace el mtodo de los coeficientes indeterminados, pero son tcnicas ms eficientes.
Ejemplo. Obtengamos a continuacin la frmula de interpolacin de Newton para la siguiente tabla:
x
f
2
4
4
8
6
14
8
16
44
4
f [2, 4] =
6
8
84
42
= 2
f [2, 4, 6] =
8
f [4, 6] =
148
64
f [6, 8] =
1614
86
32
62
1
4
f [2, 4, 6, 8] =
=3
f [4, 6, 8] =
14
13
84
1/21/4
82
= 18
= 21
=1
16
x [a, b],
f (n+1) ()
(x x0 )(x x1 ) (x xn ).
(n + 1)!
Obviamente, En f (xi ) = 0, i = 0, 1, . . . , n.
Por otra parte, si los puntos de interpolacin estn uniformemente distribuidos en el intervalo [a, b], es
decir, xi = a + hi , con i = 0, 1, . . . , n, y h = ba
n , entonces se puede demostrar que
|En f (x)|
hn+1
m
ax |f (n+1) (x)|.
(n + 1)! x[a,b]
De modo que si m
axx[a,b] |f (n+1) (x)| M , donde M es una constante independiente de n, entonces el error
de interpolacin tiende a cero segn h se va acercando a cero. ste es el caso de las funciones trigonomtricas
sen(x), cos(x) y de la exponencial ex en un intervalo finito.
Ejemplo. Calculemos una cota del error cuando se aproxima f (x) = cos x mediante un polinomio de interpolacin con 11 nodos igualmente espaciados en [1, 2]. Como n = 10, a = 1, b = 2, f (11) (x) = sen x y
|f (11) (x)| 1 = M , se obtiene h = 1/10 y
|En f (x)|
(1/10)11
2.50 1019 .
11 !
La propiedad anterior (derivadas de todo orden acotadas uniformemente) no la poseen todas las funciones.
El ejemplo clsico es la funcin de Runge ([5]):
45
4.2. INTERPOLACIN
1
Si la funcin f (x) = 1+x
2 se interpola en puntos equiespaciados en el intervalo [5, 5], el error
m
axx[5,5] |En f (x)| tiende a infinito cuando n . Esto se debe al hecho de que, si n ,
hn+1
.
el orden de magnitud de m
axx[5,5] |f (n+1) (x)| pesa ms que el orden infinitesimal de (n+1)!
Obsrvese en la figura 4.4 que, al aumentar el grado del polinomio, en vez de mejorar la aproximacin global, empeora, puesto que los polinomios de interpolacin se desvan cada vez ms de
la funcin, sobre todo cerca de los extremos. Esta funcin indica que al aumentar el grado n del
polinomio de interpolacin, no necesariamente obtenemos una mejor reconstruccin de la misma.
1.0
1.0
0.8
0.5
0.6
0.4
-4
0.2
-4
-2
-2
-0.5
-0.2
-0.4
-1.0
1
-4
-4
-2
-2
-1
-5
-2
-10
-3
-4
-15
4.2.2.
El problema de la interpolacin polinmica de Lagrange presenta inconvenientes cuando hay muchos nodos
o cuando la funcin a interpolar no se parece mucho a un polinomio. El aumento del nmero de nodos y,
por tanto, del grado del polinomio, en lugar de proporcionar ms precisin, provoca mayores oscilaciones del
polinomio de interpolacin e inestabilidad en el clculo como hemos visto para la funcin de Runge.
Para evitar estos problemas, podemos utilizar una alternativa que consiste en dividir el intervalo en un
nmero finito de subintervalos y construir un polinomio de aproximacin diferente en cada subintervalo, lo
que se conoce como aproximacin polinmica segmentaria o aproximacin polinomial a trozos. Esta
46
aproximacin evita los inconvenientes mencionados anteriormente limitando el grado del polinomio. Como
contrapartida, las condiciones de interpolacin se satisfacen localmente, utilizando polinomios distintos en
cada intervalo. La curva as construida se conoce como spline, que es un polinomio a trozos lo ms suave posible
en todos los puntos en los que los polinomios se juntan. La obtencin de los polinomios es numricamente
estable y puede hacerse utilizando matrices dispersas (matrices con muchos ceros), vanse [5, 7].
La aproximacin polinomial a trozos ms habitual, por sus propiedades de suavidad y simplicidad, utiliza
polinomios cbicos en cada subintervalo y se llama interpolacin mediante splines cbicos. Un spline cbico
se define de la siguiente manera.
Dados los puntos a = x0 < x1 < < xn = b, llamamos funcin spline cbico a una funcin S(x)
definida en [a, b] tal que:
la restriccin de S(x) a cada subintervalo [xj , xj+1 ], que denotaremos por Sj (x), j = 0, 1, . . . , n
1, es un polinomio cbico,
S(x) es derivable con continuidad hasta la segunda derivada en [a, b].
Notemos que el intervalo [a, b] se subdivide en varios subintervalos y los valores que dividen el intervalo
se llaman nudos, que pueden ser los mismos que los nodos, pero que no siempre es el caso.
Para construir el spline cbico S(x) que interpole a f en los nodos
a = x0 < x1 < < xn = b,
aplicamos la primera condicin de la definicin a los polinomios cbicos y escribimos S(x) en cada subintervalo
[xj , xj+1 ] de la forma:
Sj (x) = aj + bj (x xj ) + cj (x xj )2 + dj (x xj )3 = S(x),
j = 0, 1, . . . , n 1,
aj = f (xj ),
j = 0, 1, . . . , n,
0
Sj0 (xj+1 ) = Sj+1
(xj+1 ),
00
Sj00 (xj+1 ) = Sj+1
(xj+1 ),
j = 0, 1, . . . , n 1.
(4.1)
Como Sj0 (x) = bj + 2cj (x xj ) + 3dj (x xj )2 y Sj00 (x) = 2cj + 6dj (x xj ), entonces, por la continuidad de
la primera derivada, tenemos
0
bj+1 = Sj+1
(xj+1 ) = Sj0 (xj+1 ) = bj + 2cj hj + 3dj h2j ,
j = 0, 1, . . . , n 1.
(4.2)
47
4.2. INTERPOLACIN
cj+1 = cj + 3dj hj ,
j = 0, 1, . . . , n 1.
(4.3)
Despejando ahora de la igualdad anterior dj y sustituyendo su valor en (4.1), despus de reordenar esta
ecuacin, se sigue que
bj =
1
hj
(aj+1 aj ) (cj+1 + 2cj ),
hj
3
j = 0, 1, . . . , n 1,
j = 0, 1, . . . , n 1.
3
3
(aj+2 aj+1 ) (aj+1 aj ),
hj+1
hj
j = 0, 1, . . . , n 2.
1
0
0
0
...
0
h0 2(h0 + h1 )
h1
0
...
0
0
h1
2(h1 + h2 )
h2
...
0
..
..
..
..
.
.
.
A= .
,
.
..
0
0
0
0
...
hn2 2(hn2 + hn1 ) hn1
0
0
...
0
0
1
0
3
3
h1 (a2 a1 ) h0 (a1 a0 )
..
b=
,
.
3
(an an1 )
(an1 an2 )
hn1
hn2
0
y para el spline cbico sujeto
2h0
h0
0
0
...
h0 2(h0 + h1 )
h
0
...
1
0
h
2(h
+
h
)
h
...
1
1
2
2
..
.
..
..
.
A=
.
.
..
0
0
0
...
hn2 2(hn2 + hn1 )
0
0
...
0
hn1
3
0
h0 (a1 a0 ) 3f (a)
3
3
h1 (a2 a1 ) h0 (a1 a0 )
..
.
b=
.
3 (a a
3
hn1 n
n1 ) hn2 (an1 an2 )
3
0
3f (b) hn1 (an an1 )
0
0
0
..
.
0
hn1
2hn1
Por las propiedades de la matriz A, los sistemas de ecuaciones lineales se pueden resolver, en ambos casos,
mediante el mtodo de eliminacin de Gauss sin pivoteo o la factorizacin LU de Doolitte. Y para el caso
de sistemas grandes (n grande), tanto el mtodo de Jacobi como el de Gauss-Seidel convergen a la solucin
exacta (siendo este ltimo ms rpido).
48
0
0
1
1/2
2
2
3
3/2
(4.4)
y que verifique las condiciones S 0 (0) = 1/5 y S 0 (3) = 1. Calculamos primero las siguientes igualdades:
h0 = h1 = h2 = 1,
a0 = f (x0 ) = 0,
a1 = f (x1 ) =
1
,
2
a2 = f (x2 ) = 2,
a3 = f (x3 ) =
3
.
2
Como n = 3, tenemos
2
1
0
0
1
4
1
0
3 3 9
2 5
10
c0
0
9 3
3
0
c1 = 2 2 = ,
3
9
1 c2
2 2 6
c3
2
23
3 + 23
0
1
4
1
cuya solucin es
c0 =
9
,
50
c1 =
63
,
50
c2 =
93
,
50
c3 =
9
.
50
Ahora
a1 a0
(2c0 + c1 )h0
1
= ,
h0
3
5
a2 a1
32
(2c1 + c2 )h1
b1 =
=
,
h1
3
25
17
a3 a2
(2c2 + c3 )h2
=
,
b2 =
h2
3
25
c1 c0
12
,
=
3h0
25
c2 c1
26
d1 =
= ,
3h1
25
c3 c2
17
d2 =
.
=
3h2
25
d0 =
b0 =
Luego
S0 (x)
S1 (x)
S(x) =
S2 (x)
a0 + b0 (x x0 ) + c0 (x x0 )2 + d0 (x x0 )3
1
5x
9 2
50 x
12 3
25 x ,
0 x 1,
2
a1 + b1 (x x1 ) + c1 (x x1 ) + d1 (x x1 )
1
2
32
25 (x
1) +
63
50 (x
1)2
26
25 (x
1)3 ,
a2 + b2 (x x2 ) + c2 (x x2 ) + d2 (x x2 )
2+
17
25 (x
2)
93
50 (x
2)2 +
17
25 (x
2)3 ,
En la figura 4.5 podemos ver la grfica del spline cbico anterior S(x).
1 x 2,
3
2 x 3.
y = S2 (x)
2.0
1.5
y = S1 (x)
1.0
0.5
y = S0 (x)
0.5
1.0
1.5
2.0
2.5
3.0
Figura 4.5: Spline cbico sujeto y = S(x) que interpola la tabla de datos 4.4.
49
4.3.
Habitualmente los datos obtenidos a partir de experimentos conllevan errores sustanciales, de manera
que la interpolacin puede ser inadecuada y dar resultados poco satisfactorios cuando se utiliza para predecir valores intermedios. Una estrategia ms adecuada en estos casos consiste en obtener una funcin de
aproximacin que se ajuste a la tendencia general de los datos, aunque no coincida en todos ellos. Diferentes
funciones de aproximacin se podran entonces trazar, pero es conveniente dar algn criterio que sirva de
base para el ajuste de los datos. Una opcin consiste en encontrar una curva que minimice la discrepancia
entre los datos y la curva. Un procedimiento que se puede utilizar para alcanzar dicho objetivo es el mtodo
de mnimos cuadrados.
4.3.1.
que mejor se ajusta a los puntos dados, en el sentido de minimizar el error cuadrtico
n
X
i=0
Nota. Las funciones fj (x), j = 0, 1, . . . , m, definidas sobre [a, b] se escogern dependiendo de la forma de
la nube de puntos (xi , yi ), o bien, de las sospechas que tengamos respecto al comportamiento de f (x). Por
ejemplo, si observamos comportamientos peridicos, convendr escoger como fj (x) funciones trigonomtricas
del tipo sen(jx) y cos(jx), j = 0, 1, . . . , m; si observamos un comportamiento polinmico, escogeremos fj (x)
como funciones polinmicas (por ejemplo, xj , j = 0, 1, . . . , m).
Como queremos que
2
n
n
m
X
X
X
yi
(yi u(xi ))2 =
aj fj (xi ) = E(a0 , a1 , . . . , am )
i=0
i=0
j=0
E
= 0, i.e.:
ak
n
X
yi
i=0
m
X
aj fj (xi ) fk (xi ) = 0;
j=0
es decir, resolver
n
X
k = 0, 1, . . . , m.
i=0
Agrupando todos los aj en cada ecuacin, se tiene que se pueden escribir como:
a0
n
X
i=0
n
X
i=0
n
X
i=0
f0 (x0 ) f1 (x0 ) . . .
f0 (x1 ) f1 (x1 ) . . .
M = .
..
..
..
.
.
f0 (xn )
f1 (xn ) . . .
fm (x0 )
fm (x1 )
..
.
fm (xn )
n
X
i=0
yi fk (xi ),
50
y los vectores x = (a0 , a1 , . . . , am )T e y = (y0 , y1 , . . . , yn )T , entonces las m+1 ecuaciones anteriores se pueden
escribir como
MT Mx = MT y
o
Ax = b,
donde M T M = A y M T y = b, que es un sistema lineal de m + 1 ecuaciones con m + 1 incgnitas. La matriz
A es simtrica por definicin, y se tiene el siguiente resultado:
Las funciones fj (x), j = 0, 1, . . . , m, son linealmente independientes si y solo si la matriz A es
definida positiva.
Por tanto, si tomamos fj (x) (j = 0, 1, . . . , m) linealmente independientes (en los casos trigonomtrico y
polinmico as son), sePtiene que el sistema anterior tiene una nica solucin aj , P
j = 0, 1, . . . , m, que hace
m
n
que la funcin u(x) = j=0 aj fj (x) tenga una magnitud de error de aproximacin i=0 (yi u(xi ))2 mnima
entre todas las funciones de este tipo.
La solucin del sistema lineal puede entonces calcularse por cualquiera de los mtodos vistos en el captulo
correspondiente, siendo especialmente adecuado el de Cholesky por ser A una matriz simtrica y definida
positiva, o bien, si m es grande, el mtodo iterativo de Gauss-Seidel por el mismo razonamiento. Adems,
vase [1], existen otros mtodos, que no veremos, que se favorecen de que el sistema Ax = b se puede escribir
de la forma M T M x = M T y.
Ejemplo. Vamos a aplicar la aproximacin discreta de mnimos cuadrados para obtener la recta que se
ajusta a la siguiente tabla de datos:
x 1 1 3
(4.5)
y
6 1 11
Como f0 (x) = 1 y f1 (x) = x, tenemos que
f0 (1) f1 (1)
1
f1 (1) = 1
M = f0 (1)
f0 (3)
f1 (3)
1
1
1
3
=
1
1
1 1
,
1 3
de manera que
MT M =
3
3
3
11
= A,
MT y =
1
1
6
18
1 1
1 =
=b
28
1 3
11
y el correspondiente sistema lineal Ax = b de dos ecuaciones con dos incgnitas tiene como nica solucin x =
(a0 , a1 )T = (4.75, 1.25)T . Por lo tanto, la recta de mnimos cuadrados que se obtiene es u(x) = 4.75 + 1.25 x,
que est representada en la figura 4.6.
10
-1
Figura 4.6: Aproximacin discreta de mnimos cuadrados que ajusta la tabla de datos 4.5.
4.3.2.
El mtodo de mnimos cuadrados sirve tambin para aproximar no solo un conjunto discreto de puntos,
sino tambin toda una funcin en un intervalo. As, si queremos aproximar una funcin f (x) en un intervalo
51
Derivando parcialmente respecto a los coeficientes del polinomio e igualando a cero se obtienen las ecuaciones
Z b
E
(f (x) pm (x))xk dx = 0, k = 0, 1, . . . , m,
=2
ak
a
que nos llevan a un sitema lineal Ax = b, donde A = (aij ) es una matriz (m + 1) (m + 1) con
Z b
xi1 xj1 dx,
aij =
a
T
De nuevo A es simtrica y definida positiva y la solucin del sistema lineal puede calcularse por cualquiera
de los mtodos vistos con anterioridad, siendo especialmente adecuado el de Cholesky por ser A simtrica y
definida positiva, o bien, si m es grande, el mtodo iterativo de Gauss-Seidel por el mismo motivo.
Ejemplo. Calculamos el polinomio de grado dos p2 (x) = a0 + a1 x + a2 x2 mejor aproximacin de mnimos
cuadrados de la funcin f (x) = sen x en el intervalo [0, 1]. Los elementos de la matriz A = (aij ) y del vector
b = (bi ) sern:
R1
R1
R1
a11 = 0 1 1 dx = 1,
a12 = 0 1 x dx = 21 ,
a13 = 0 1 x2 dx = 13 ,
R1
R1
R1
a21 = 0 x 1 dx = 12 ,
a22 = 0 x x dx = 13 ,
a23 = 0 x x2 dx = 41 ,
R1
R1
R1
a32 = 0 x2 x dx = 14 ,
a33 = 0 x2 x2 dx = 15 ,
a31 = 0 x2 1 dx = 13 ,
R1
R1
R1
2
b1 = 0 1 sen x dx = 2 ,
b2 = 0 x sen x dx = 1 ,
b3 = 0 x2 sen x dx = 4
3 ,
de forma que el sitema lineal Ax = b es
1
1
2
1
3
1
2
1
3
1
4
1
3
a0
1
4 a1
1
5
a2
2/
= 1/ ,
2 4
3
cuya solucin es
12( 2 10)
60(12 2 )
60( 2 12)
,
a
=
,
a
=
.
1
2
3
3
3
60( 2 12) 2
12( 2 10) 60(12 2 )
+
x+
x . Vase la figura 4.7.
Por tanto, p2 (x) =
3
3
3
a0 =
4.4.
52
1.0
y = sen x
0.8
0.6
y = p2 (x)
0.4
0.2
0.2
0.4
0.6
0.8
1.0
Figura 4.7: Funcin y = sen x en el intervalo [0, 1] (lnea continua) y su polinomio y = p2 (x) mejor aproximacin de mnimos cuadrados (lnea discontinua).
4.5.
Ejercicios
1. Interpolacin de Taylor. Dados los valores de la funcin f y sus derivadas sucesivas hasta orden n en
un punto x0 (es decir, f (k) (x0 ) para k = 0, 1, . . . , n), encuntrese un polinomio pn de grado n tal que
(k)
pn (x0 ) = f (k) (x0 ) para todo k = 0, 1, . . . , n. Determnese que el problema de interpolacin de Taylor
tiene solucin nica. (Obviamente la funcin f ha de tener n derivadas en el punto x0 .)
2. Sea la siguiente tabla de la funcin f (x) = ex
x
f (x)
0.0
0.2
1.0000 1.2214
0.4
1.4918
0.6
1.8221
a) Calclese 3 e por interpolacin cuadrtica. Utilzese primero los puntos 0.0, 0.2 y 0.4 y posteriormente los puntos 0.2, 0.4 y 0.6. Comprense los resultados.
(k = 0, . . . , n), verifican
n
X
`k (x) = 1.
k=0
5. Sea el polinomio de grado dos f (x) = 3x2 x + 1. Constryase el polinomio que interpola a f en los
puntos x0 = 1, x1 = 2 y x2 = 3. Se vuelve a obtener el mismo polinomio f ? Por qu?
6. Sea el polinomio de grado tres f (x) = 3x3 x + 1. Utilizando diferencias divididas, constryase el
polinomio que interpola a f en los puntos x0 = 3, x1 = 1 y x2 = 2. Se aade a continuacin un
nuevo punto x3 = 1. Sin hacer ningn clculo adicional, raznese qu valor tomar la nueva diferencia
dividida f [x0 , x1 , x2 , x3 ] y cul ser el coeficiente director (trmino de mayor grado) del nuevo polinomio
de interpolacin p3 de f . Calclese p3 segn lo anterior. Qu ocurre si consideramos x3 = 1.2 en lugar
del punto x3 = 1?
7. Importancia de la seleccin de puntos en la interpolacin. Como parece intuitivamente lgico, los puntos
de interpolacin deben estar centrados alrededor, y tan cerca como sea posible, de los valores deseados.
Obsrvese esta realidad a la hora de aproximar el valor de ln 2 = 0.6931472 despus de interpolar la
53
4.5. EJERCICIOS
n
n
i1
X
X
Y
f [x0 , x1 , . . . , xi ]
fi `i (x) = f [x0 ] +
(x xj ) .
i=0
i=1
j=0
1 x 0.25,
0,
1 |4x|, 0.25 x 0.25,
f (x) =
0,
0.25 x 1.
Encuntrense polinomios de grados 2, 3, 4 y 5 que ajusten a f en puntos igualmente espaciados.
Dibjense estas funciones y comprubese que el ajuste no es muy bueno. Finalmente, utilzense funciones
splines cbicas para ajustar la funcin anterior tomando como nodos cinco puntos equidistantes entre
1 y 1.
10. Sea la funcin f (x) =
1
x
y los nodos x0 = 1, x1 = 2 y x2 = 3.
1 x 2,
2 x 3,
sea el spline cbico con condiciones de contorno S 0 (1) = 1 y S 0 (3) = 91 que interpola a f en los
nodos dados.
c) Estmese el valor de f (1.5) mediante p2 (x) y S(x). Cul de estas dos aproximaciones es mejor?
d) Si aadimos un nodo ms, x3 = 4, determnese el polinomio de interpolacin p3 de f . Se obtiene
con p3 (x) mejor aproximacin del valor de f (1.5) que las obtenidas en el apartado anterior?
11. Sea la tabla de datos
x
y
10
12
25 40 55
26 28 30
1
en [1, 2],
x
1
3.4738
0.75
0.4321
0.5
6.5455
0.25
4.6710
0
0.0012
0.25
4.6797
0.5
6.5510
0.75
0.4375
1
3.4815
responde a una funcin del tipo u(x) = a tg(bx). Determnense a y b por el mtodo de mnimos cuadrados. (Tmense 2.5 y 4.5 como valores iniciales aproximados de a y b respectivamente).
54
15. Encuntrese la mejor aproximacin de mnimos cuadrados en los puntos (/2, 1), (0, 0), (/2, 1/2) y
(, 1) del tipo u(x) = a + r sen(x + ), con a, r reales y [0, 2].
16. Transformacin de una ecuacin no lineal en forma lineal. A partir de los siguientes datos
x
y
1
4.1
2
3.4
5
1.8
9
0.8
parece claro que la mejor funcin que los aproxima es de tipo exponencial de la forma u(x) = a ebt .
Determnense entonces los valores de a y b por el mtodo de mnimos cuadrados. (Indicacin: linealcese
la funcin u(x) = a ebt aplicandole el logaritmo natural para expresarla como un polinomio lineal y
despus transfrmese a la forma deseada.)
Captulo 5
Introduccin
En el captulo anterior se ha puesto de manifiesto la utilidad del polinomio de interpolacin de una funcin
f cuando se quiere aproximar el valor de f en puntos en los que no se conoce dicho valor. En este captulo
lo utilizaremos para resolver dos problemas clsicos del clculo numrico: la aproximacin de derivadas e
integrales definidas.
Es habitual que para una funcin genrica no siempre sea posible encontrar una primitiva de forma
explcita; incluso si es conocida, puede ser difcil de utilizar. Tambin es habitual que la funcin que se
quiere integrar o derivar solo se conozca en un conjunto discreto de puntos (por ejemplo, cuando representa
los resultados de mediciones experimentales), exactamente como sucede en el caso de la aproximacin de
funciones. En ambas situaciones es necesario considerar mtodos numricos para obtener una aproximacin
del valor que interesa, independientemente de lo difcil que sea la funcin a integrar o derivar. En estos casos
la idea bsica es la misma: aproximar la derivada de una funcin en un punto y la integral de una funcin
en un intervalo, respectivamente, mediante la derivada de dicho punto de su polinomio de interpolacin y la
integral del polinomio de interpolacin en dicho intervalo.
En primer lugar, daremos varias frmulas para aproximar derivadas primeras y segundas mediante cocientes de diferencias. En segundo lugar, veremos varios mtodos para aproximar una integral definida utilizando
una suma ponderada de valores de la funcin en puntos especficos. Comenzaremos considerando frmulas
bsicas que utilizan datos uniformemente espaciados, cuya exactitud ser posteriormente mejorada a partir de
la subdivisin del intervalo de integracin y la aplicacin de una de las tcnicas bsicas en cada subintervalo.
Terminaremos presentando una tcnica ms potente, la cuadratura gaussiana, que utiliza una coleccin de
puntos que son elegidos de forma que se obtenga el mejor resultado posible dentro de una cierta clase de
funciones.
Destacamos que la aproximacin de integrales (una tarea frecuentemente necesaria) puede normalmente
llevarse a cabo sin mucho esfuerzo de manera muy precisa, mientras que la aproximacin de derivadas (que
es mucho menos necesaria) es un problema ms difcil. Vase [7] para su anlisis.
Necesitaremos posteriormente este tipo de mtodos, cuando aproximemos la soluciones de ecuaciones
diferenciales ordinarias y en derivadas parciales.
5.2.
Derivacin numrica
Las aproximaciones numricas de las derivadas se usan principalmente de dos maneras. Una, cuando
estamos interesados en calcular el valor de alguna derivada en algn punto prefijado, que a menudo se ha
obtenido empricamente. Dos, las frmulas de derivacin numrica se usan para obtener mtodos numricos
en la resolucin de ecuaciones diferenciales ordinarias y en derivadas parciales.
5.2.1.
Nos planteamos el problema de aproximar la derivada de una funcin en un punto, bien porque solo
conocemos una tabla de valores de la misma, o bien, porque la expresin de la funcin es excesivamente
55
56
h0
f (c + h) f (c)
,
h
c+h
y = f (x)
x
c+h c+h
h0
Figura 5.1: Derivada de una funcin en un punto c (recta continua) y aproximaciones de la derivada (rectas
discontinuas).
5.2.2.
Derivadas primeras
f (x1 ) f (x0 )
. Por tanto, la correspondiente frmula de derivacin numrica es
x1 x0
f 0 (c) ' p01 (c) =
f (x1 ) f (x0 )
.
x1 x0
Es razonable que los nodos estn cerca de c. Si, por ejemplo, tomamos x0 = c y x1 = c + h, con h 6= 0, la
frmula es
f (c + h) f (c)
f 0 (c) '
,
(5.1)
h
57
que se conoce como diferencia finita progresiva para la derivada primera. Se puede obtener otra aproximacin de f 0 (c) si tomamos x0 = c h y x1 = c, con h 6= 0, y la frmula correspondiente
f 0 (c) '
f (c) f (c h)
,
h
se denomina entonces diferencia finita regresiva para la derivada primera. Estas dos ltimas aproximaciones son frmulas de dos puntos. Si h 0 en ambas frmulas, la parte derecha tiende a f 0 (c), puesto que
es precisamente la definicin de lmite. Luego, para h pequea, la aproximacin anterior es buena (siempre y
cuando no se produzcan errores de redondeo).
Si ahora tomamos x0 = c h y x1 = c + h, la frmula resultante es
f 0 (c) '
f (c + h) f (c h)
.
2h
(5.2)
Nota. El grado de exactitud de una frmula de derivacin numrica es el mayor grado de los polinomios que
son derivables exactamente por dicha frmula. Se puede demostrar entonces que el grado de exactitud de la
frmula anterior de dos puntos es dos.
Con tres nodos x0 , x1 y x2 , la frmula de Newton del polinomo de interpolacin es ahora
p2 (x) = f (x0 ) + f [x0 , x1 ](x x0 ) + f [x0 , x1 , x2 ](x x0 )(x x1 ),
donde f [x0 , x1 , x2 ] =
f [x1 , x2 ] f [x0 , x1 ]
. Por lo tanto,
x2 x0
f (c + h) f (c h)
,
2h
que coincide con (5.2) y se conoce como diferencia finita centrada para la derivada primera o frmula
de tres puntos para el punto medio.
Para x0 = c, x1 = c + h y x2 = c + 2h, se tiene
f 0 (c) '
3f (c) + 4f (c + h) f (c + 2h)
,
2h
e1.6 e1.5
4.713433540571
0.1
f 0 (1.5) '
e1.6 e1.4
4.489162287752.
0.2
1.5
e 4.489162287752 = 0.007473.
58
5.2.3.
Derivadas segundas
Podemos generar mtodos para aproximar las derivadas superiores de una funcin como hemos hecho para
aproximar la derivada primera. Por ejemplo, si conocemos la funcin f en los nodos x0 , x1 , . . . , xm , prximos a
c, derivando k veces el polinomio de interpolacin pm y evaluando en c, tenemos f (k) (c) ' k! f [x0 , x1 , . . . , xk ].
A continuacin vamos a ver algunas frmulas para la derivada segunda. Debe haber tres o ms nodos, ya
que con dos el polinomio de interpolacin p1 es de primer grado, as que su derivada segunda es siempre nula
para toda funcin f y todo punto c.
Con tres nodos x0 , x1 y x2 , la frmula de Newton del polinomo de interpolacin es
p2 (x) = f (x0 ) + f [x0 , x1 ](x x0 ) + f [x0 , x1 , x2 ](x x0 )(x x1 ),
por lo que
f 00 (c) ' p002 (c) = 2f [x0 , x1 , x2 ] = 2
f [x1 , x2 ] f [x0 , x1 ]
.
x2 x0
Si x0 = c h, x1 = c y x2 = c + h, se tiene
f 00 (c) '
f (c h) 2f (c) + f (c + h)
,
h2
que se conoce como diferencia finita centrada para la derivada segunda o frmula de tres puntos para
aproximar f 00 en el punto medio. Si tomamos x0 = c, x1 = c + h y x2 = c + 2h, entonces
f 00 (c) '
f (c) 2f (c + h) + f (c + 2h)
.
h2
Y si x0 = c 2h, x1 = c h y x2 = c,
f 00 (c) '
f (c 2h) 2f (c h) + f (c)
.
h2
Finalmente, mencionar que en los tres casos los mtodos dan el valor exacto de la derivada si h 0.
Ejemplo. Sea f (x) = sen x. Aproximemos el valor de f 00 (0.5) mediante la diferencia finita centrada con
h = 0.1, y comparmoslo con el valor real sen(0.5) = 0.47942554. As,
f 00 (0.5) '
cuyo error absoluto es 0.000399.
5.2.4.
Teniendo en cuenta la expresin del error de interpolacin, es fcil dar expresiones del error de derivacin
numrica, pues basta con derivar la frmula del error para el polinomio de interpolacin. Sin embargo, en el
caso de las frmulas de derivacin numrica tambin es fcil aprovechar el polinomio de Taylor de la funcin
f para obtener una expresin del error de truncamiento. Por ejemplo, a partir de la frmula
f (c + h) = f (c) + hf 0 (c) +
h2 00
f (),
2!
(c, c + h),
se deduce que
f (c + h) f (c)
h
= f 00 (),
h
2!
que da el error para la frmula de dos puntos (5.1).
Anlogamente, restando los desarrollos
f 0 (c)
(c, c + h),
f (c + h) = f (c) + hf 0 (c) +
h2 00
h3
f (c) + f 000 (1 ),
2!
3!
1 (c, c + h),
f (c h) = f (c) hf 0 (c) +
h2 00
h3
f (c) f 000 (2 ),
2!
3!
2 (c h, c),
59
se tiene
f (c + h) f (c h)
h2
h2
= (f 000 (1 ) + f 000 (2 )) = f 000 (),
(5.3)
2h
12
6
donde (c h, c + h), siempre que f 000 sea continua (para poder usar el teorema del valor intermedio y
poder deducir entonces que existe el valor ), dando lugar as a la expresin del error asociado a la frmula
de derivacin numrica (5.2). Si los valores de f 000 () no cambian muy rpidamente, entonces el error de
truncamiento tiende a cero a la misma velocidad que h2 , lo que expresamos mediante la notacin O(h2 ).
De igual forma se obtienen expresiones para las restantes frmulas de derivacin numrica, aunque en
algunos casos no es posible agrupar todos los restos de Taylor en un solo sumando. No obstante, en todas las
frmulas de derivacin numrica, el error de truncamiento es proporcional a una potencia de h mayor o igual
que uno.
Es especialmente importante prestar atencin a los errores de redondeo cuando se aproximan derivadas.
Cuando se aplica una frmula de derivacin numrica, el error de truncamiento disminuye si se reduce el
tamao de paso h, pero a costa de incrementar el error de redondeo. En la prctica, tomar h demasiado
pequeo no suele reportar ventajas porque los errores de redondeo dominan los clculos (vase la pg. 182 de
[7] para un ejemplo). Todas las frmulas de derivacin numrica presentan problemas debidos al redondeo y,
aunque los mtodos de orden superior reduzcan las dificultades, es imposible evitar este problema enteramente.
Hay que tener en cuenta que, como mtodo de aproximacin, la derivacin numrica es inestable, puesto
que los valores pequeos de h que permitiran reducir el error de truncamiento aumentan los errores de
redondeo. Esto debera evitarse si fuera posible, pero no lo es.
El valor ptimo de h es el que minimiza el error total ET (h), es decir, la suma de los errores de truncamiento Et (h) y de redondeo Er (h). As, para (5.3), si M es una cota de la tercera derivada de f , el error
total ET (h) verifica
f 0 (c)
M h2
+
,
h
6
3 3
= 0; es decir, para h =
.
2+
h
3
M
Por tanto, este valor de h ser bueno para aplicar dicha frmula de derivacin numrica, pero valores mucho
menores que l pueden conducir a estimaciones psimas de la derivada.
5.3.
Integracin numrica
En los cursos de clculo se describen muchas tcnicas para evaluar integrales exactamente, pero estas
tcnicas apenas pueden utilizarse para evaluar integrales que surgen en los problemas que se dan en la
realidad. Las tcnicas exactas no pueden resolver muchos problemas que aparecen en el mundo fsico; para
estos necesitamos mtodos de aproximacin de integrales. Estos mtodos se llaman genricamente mtodos
de cuadratura porque cuadratura es la palabra clsica para denominar el clculo de reas.
5.3.1.
f (x) dx,
a
60
experimental. El ltimo caso tambin aparece cuando se aplican los mtodos de cuadratura al tratamiento
numrico de ecuaciones diferenciales o integrales.
Las mismas cuestiones que hemos visto para f (k) (c) pueden verse, sin apenas cambios, para aproximar
Rb
f (x) dx, donde a y b son finitos y f una funcin definida e integrable en [a, b]. Para ello, aproximaremos
a
f por un polinomio de interpolacin pm en un conjunto de nodos x0 , x1 , . . . , xm y calcularemos exactamente
Rb
Rb
Rb
p (x) dx, de manera que a f (x) dx ' a pm (x) dx, obtenindose as frmulas de cuadratura numrica.
a m
Adems, como los errores de interpolacin tienen una frmula explcita para las cotas del error, se pueden
obtener tambin cotas del error para las frmulas de cuadratura.
Empezamos introduciendo algunas frmulas simples que son casos particulares de una familia mayor de
frmulas de cuadratura conocidas como frmulas de Newton-Cotes. Para un conocimiento ms completo de
esta familia de frmulas se puede consultar [1].
5.3.2.
Comenzamos considerando un grupo de frmulas de cuadratura numrica que estn basadas en evaluaciones de funciones en nodos equiespaciados. Estas frmulas se conocen como frmulas de Newton-Cotes. Hay
dos tipos bsicos, que dependen de si los valores de la funcin en los extremos del intervalo de integracin se
utilizan o no. La regla del punto medio es el ejemplo ms simple de frmula de Newton-Cotes abierta, en la
que los extremos de integracin no se utilizan. Las reglas del trapecio y de Cavalieri-Simpson son ejemplos
de frmulas de Newton-Cotes cerradas, en las que los extremos de integracin se utilizan.
El caso ms simple que se puede dar es cuando solo se utiliza un nodo, x0 . En este caso, p0 (x) = f (x0 ),
por lo que la integral en el intervalo [a, b] se aproxima por
Z b
Z b
Z b
f (x) dx '
p0 (x) dx =
f (x0 ) dx = (b a)f (x0 ).
a
Grficamente, si f es no negativa, lo que se hace es aproximar el rea bajo la curva y = f (x), comprendida
entre x = a y x = b, por el rea del rectngulo de base b a y altura f (x0 ). Las elecciones ms usuales son
x0 = a, x0 = b y x0 = a+b
2 . En el primer y segundo caso las frmulas de cuadratura se llaman respectivamente
regla del rectngulo a izquierda y regla del rectngulo a derecha. En el ltimo casos la frmula de
cuadratura se llama regla del punto medio. En la figura 5.2 pueden verse las interpretaciones geomtricas
de estas tres reglas.
y = f (x)
y = f (x)
y = f (x)
a+b
2
Figura 5.2: Regla del rectngulo a izquierda, regla del rectngulo a derecha y regla del punto medio.
El error para la regla del punto medio viene dado por la integral de la frmula del error para el polinomio
de interpolacin p0 . Puede probarse, vase [7], que el error (de truncamiento local) de esta regla de cuadratura
00
es: EP M = f 24() (b a)3 , donde (a, b), siempre que f C 2 [a, b].
Si ahora utilizamos dos nodos, x0 y x1 , el polinomio de interpolacin es
p1 (x) = f (x0 ) + f [x0 , x1 ](x x0 ).
Por tanto la correspondiente frmula de cuadratura ser
Rb
Rb
f (x) dx ' a p1 (x) dx
a
Rb
= a (f (x0 ) + f [x0 , x1 ](x x0 )) dx
(a x0 )2
f (x1 ) f (x0 ) (b x0 )2
= (b a)f (x0 ) +
.
x1 x0
2
2
61
Si x0 = a y x1 = b, se obtiene
b
f (x) dx '
a
ba
(f (a) + f (b)),
2
conocida como regla del trapecio. Geomtricamente la regla del trapecio es equivalente a aproximar el rea
del trapecio bajo la recta que une f (a) y f (b), como puede verse en la figura 5.3.
y = f (x)
La expresin del error de la aproximacin de la integral es (vase [7]): ET = f 12() (b a)3 , donde
(a, b), siempre que f C 2 [a, b].
Cuando consideramos tres nodos x0 , x1 y x2 , se tiene una de las frmulas ms importantes, la regla
de Cavalieri-Simpson, que es la que corresponde a x0 = a, x1 = a+b
2 y x2 = b. Si p2 es el polinomo de
interpolacin en estos puntos, entonces
Z
Z
f (x) dx '
p2 (x) dx =
a
ba
6
f (a) + 4f
a+b
2
+ f (b) .
Geomtricamente la regla de
Cavalieri-Simpson es equivalente a aproximar el rea de la figura bajo la parbola
y f (b), como puede verse en la figura 5.4.
que pasa por f (a), f a+b
2
y = f (x)
a+b
2
()
(b a)5 , donde (a, b), siempre que f C 4 [a, b]
El trmino de error para esta regla es: ES = f2880
(vase [25]).
R3
Ejemplo. Para encontrar una aproximacin de 0 x2 ex dx mediante la regla de Cavalieri-Simpson, basta
con
Z 3
1
x2 ex dx ' (f (0) + 4f (1.5) + f (3)) 110.55252.
2
0
Nota. El grado de exactitud de una frmula de cuadratura es el mayor grado de los polinomios que son
integrados exactamente por dicha frmula. Se puede demostrar entonces que es uno para las reglas del punto
medio y del trapecio, y tres para la regla de Cavalieri-Simpson.
62
Comentario adicional.
. En todas las frmulas anteriores, el error es proporcional a una potencia de
la longitud del intervalo (b a). Por tanto, si el intervalo es pequeo, podemos esperar que el error
sea pequeo, pero si es grande, no tenemos esa garanta. Obsrvese tambin que la elevada potencia
de (b a) en la frmula del error de la regla de Cavalieri-Simpson hace que sta sea significativamente
mejor que las reglas del punto medio y del trapecio, siempre que b a sea pequeo. Una ilustracin de
esto ltimo puede verse en el ejemplo 1 de la pg. 123 de [7].
5.3.3.
En la seccin anterior hemos tratado las nociones bsicas que sustentan la integracin numrica, pero las
tcnicas que hemos estudiado no son satisfactorias en muchos problemas. La hiptesis de que el intervalo
sea pequeo para esperar un error pequeo podra ser muy poco razonable. No hay motivo, en general, para
suponer que el intervalo [a, b] sobre el que se integra es pequeo y, si no lo es, la elevada potencia de (b a)
en la frmula del error dominar, probablemente, los clculos.
Resolveremos el problema de un intervalo de integracin grande [a, b] subdividindolo en una coleccin
de intervalos que sean lo suficientemente pequeos para que podamos mantener bajo control el error en cada
uno de ellos. Al sumar todos los resultados parciales se obtiene una frmula de aproximacin de la integral
en [a, b], dando lugar as a las llamadas reglas de cuadratura compuestas. El error en las frmulas de
cuadratura compuestas es entonces la suma de los errores de las frmulas simples usadas en los subintervalos
en los que se ha dividido [a, b].
Un mtodo de cuadratura compuesto consiste en dividir el intervalo [a, b] en n subintervalos [xi , xi+1 ]
(i = 0, 1, . . . , n 1) tal que
Z b
n1
X Z xi+1
f (x) dx =
f (x) dx,
a
i=0
xi
R xi+1
y aproximar ahora cada una de las integrales xi f (x) dx mediante una frmula de cuadratura bsica.
Por ejemplo, si desomponemos el intervalo de integracin en n subintervalos iguales mediante una particin
uniforme del mismo, con nodos xi = a + ih, i = 0, 1, . . . , n, h = ba
n , y, en cada subintervalo, aproximamos
por la frmula del trapecio
Z xi+1
h
f (x) dx ' (f (xi ) + f (xi+1 )), i = 0, 1, . . . , n 1,
2
xi
se obtiene la regla del trapecio compuesta para n subintervalos
Z
a
n1
h
hX
(f (xi ) + f (xi+1 )) =
f (x) dx '
2 i=0
2
f (a) + f (b) + 2
n1
X
!
f (xi ) ,
i=1
donde el error cometido viene dado por ET C = h12 f 00 ()(b a), con (a, b), siempre que f C 2 [a, b].
El orden de convergencia de la regla del trapecio compuesta es entonces O(h2 ), as que las aproximaciones
Rb
convergen a a f (x) dx aproximadamente a la misma velocidad que h2 0.
R3
Ejemplo. Utilizamos ahora la regla del trapecio compuesta con n = 2 para aproximar la integral 0 x2 ex dx.
As, h = 3/2 y
Z 3
3
3
x2 ex dx ' (f (0) + f (3)) + f (1.5) 150.70307.
4
2
0
Notemos que el valor exacto de la integral anterior es 5 e3 2 98.42768. Luego, se ha obtenido una aproximacin peor que la dada anteriormente por la regla de Cavalieri-Simpson (vase el ejemplo anterior). Esto
es debido a que no hemos tomado el nmero suficiente de trapecios para obtener una mejor aproximacin.
Cuntos se deberan tomar entonces? A menudo, se calcula la integral varias veces incrementando el nmero
de trapecios cada vez, y se para cuando la diferencia entre dos respuestas sucesivas es satisfactoriamente
pequea.
Comentarios adicionales.
. El esquema de subdivisiones empleado anteriormente se puede aplicar
con cualquiera de las reglas vistas en la seccin anterior, dando lugar as a las correspondientes reglas
del punto medio compuesta y de Cavalieri-Simpson compuesta. El orden de convergencia de estas dos
63
reglas es respectivamente O(h2 ) y O(h4 ). Esto prueba que el error de la regla de Cavalieri-Simpson
tiende a cero ms rpidamente que el error de las reglas del punto medio y del trapecio cuando h 0.
Esta velocidad de convergencia es suficiente para la mayora de los problemas habituales, suponiendo
que el intervalo de integracin se divide de manera que h sea pequeo.
. Una propiedad importante que comparten todas las reglas compuestas es su estabilidad con respecto a
los errores de redondeo. Vase la pg. 134 de [7] para la regla de Cavalieri-Simpson compuesta.
. Si n es grande, los intervalos de integracin [xi , xi+1 ] son pequeos, con lo cual se espera que el error
cometido, al aplicar una regla de cuadratura en cada uno de estos intervalos, sea pequeo, siendo el
error total la suma de los errores cometidos en cada intervalo de integracin. Se puede demostrar que
si n , el error tiende a 0.
5.3.4.
Cuadratura gaussiana
Las reglas de cuadratura bsicas se han construido integrando polinomios de interpolacin. La frmula
del error del polinomio de interpolacin de grado m contiene la derivada de orden m + 1 de la funcin a
aproximar. Puesto que la derivada (m + 1)-sima de todo polinomio de grado m es cero, al aplicar frmulas
de este tipo a dichos polinomios, obtenemos un resultado exacto.
Todas las reglas de cuadratura bsicas utilizan valores de la funcin en puntos igualmente espaciados.
Esto resulta conveniente a la hora de combinar las frmulas para generar las reglas compuestas, pero esta
restriccin puede disminuir significativamente la exactitud de la aproximacin. Vase la pg. 146 de [7] para
un ejemplo con la regla del trapecio.
Adems, las reglas de cuadratura bsicas son ejemplos de una frmula de cuadratura ms general de la
forma:
Z b
m
X
f (x) dx '
wi f (xi ).
a
i=0
Los nmeros reales {wi } son los pesos de cuadratura, mientras que los puntos {xi } son los nodos de cuadratura. En la cuadratura gaussiana se consideran frmulas de integracin numrica como la anterior, pero
utilizando nodos que no estn igualmente espaciados en el intervalo; se eligen los nodos {xi } en el intervalo
[a, b] y los pesos {wi } de manera que se minimice el error que se espera obtener en la aproximacin. Para
minimizar este error esperable, vamos a suponer que la mejor eleccin de estos valores es la que produce
resultados exactos para una clase ms amplia de polinomios. Una eleccin adecuada de los m + 1 nodos
proporciona frmulas de cuadratura numrica exactas para polinomios de grado 2m + 1, dando lugar as
a las frmulas de cuadratura gaussiana.
Los pesos {wi } de la frmula anterior son arbitrarios y la nica restriccin sobre los nodos {xi } es que
deben estar en el intervalo de integracin [a, b]. Esto da 2(m + 1) parmetros a elegir. Si ahora imponemos
que sea exacta para los polinomios 1, x, x2 , . . . , x2m+1 (que son polinomios de grado 2m + 1), obtenemos,
mediante el mtodo de los coeficientes indeterminados, un sistema no lineal de 2(m + 1) ecuaciones con
2(m + 1) incgnitas. Este sistema se puede resolver utilizando, por ejemplo, el mtodo de Newton para
sistemas de ecuaciones no lineales, o bien, convirtindolo, mediante ciertas transformaciones, en un sistema
lineal y resolver ste con las tcnicas correspondientes.
La utilizacin del mtodo de los coeficientes indeterminados no resulta prctica para obtener frmulas
de cuadratura con grado de exactitud superior. Hay un mtodo alternativo para obtener ms fcilmente los
nodos y los pesos de estas frmulas que dan resultado exacto para polinomios de grado superior. Se consideran
familias de polinomios especiales, llamados polinomios ortogonales, que tienen la propiedad de que una cierta
integral definida del producto de dos polinomios ortogonales cualesquiera de la familia es cero.
La familia relevante para nuestro problema es la de los polinomios de Legendre en el intervalo [1, 1].
Estos polinomios pueden calcularse recursivamente mediante la siguiente relacin de tres trminos
L0 (x) = 1,
Lk+1 (x) =
L1 (x) = x,
2k+1
k+1
xLk (x)
k
k+1
Lk1 (x),
k = 1, 2, . . .
Todo polinomio de grado m, para cada m 0, se puede obtener mediante una combinacin lineal de los
polinomio L0 , L1 , . . . , Lm . El mximo grado de exactitud es 2m + 1 y se obtiene para la llamada cuadratura
64
i = 0, 1, . . . , m.
Los pesos {wi } son todos positivos y los nodos {xi } son interiores al intervalo (1, 1). En la tabla 5.1 se
recogen los nodos y pesos de las reglas de cuadratura de Gauss-Legendre con m = 1, 2, 3, 4. Para m 5 se
puede consultar [13]. Si f C (2m+2) ([1, 1]), el correspondiente error es (vase [23]):
EGL =
m
1
2
3
{xi }
1/ 3
15/5
0
p
1
35
525 + 70 30
p
1
35
525 70 30
p
1
21
245 + 14 70
p
1
21
245 14 70
0
{wi }
1
5/9
8/9
18 30 /36
18 + 30 /36
322 13 70 /900
322 + 13 70 /900
128/225
Tabla 5.1: Nodos y pesos para algunas frmulas de cuadratura de Gauss-Legendre sobre el intervalo (1, 1).
Los pesos correspondientes a pares simtricos de nodos se incluyen solo una vez.
Esto completa la solucin del problema de aproximacin de integrales definidas para funciones en el
intervalo [1, 1]. Ahora bien, esta solucin es suficiente para cualquier intervalo cerrado porque la sencilla
relacin lineal
2x a b
ba
b+a
x=
t+
t=
ba
2
2
transforma la variable x del intervalo [a, b] en la variable t del intervalo [1, 1]. Entonces, podemos utilizar
los polinomios de Legendre para aproximar
Z b
Z
b+a
ba 1
ba
t+
dt.
f (x) dx =
f
2
2
2
a
1
R3
Ejemplo. Calculemos ahora un valor aproximado de la integral 0 x2 ex dx mediante la cuadratura de GaussLegendre con m = 2. En primer lugar, transformamos la variable x del intervalo [0, 3] en la variable t del
intervalo [1, 1], de manera que
Z 3
Z
Z
3
3 1
3
3 1
x = (t + 1)
y
f (x) dx =
f
(t + 1) dt =
g(t) dt,
2
2 1
2
2 1
0
donde g(t) = f 32 (t + 1) = 94 (t + 1)2 e3(t+1)/2 . Por tanto, ya podemos utilizar los polinomios de Legendre
para aproximar
Z 3
15
8
15
3 5
5
g
+ g(0) + g
98.15460.
f (x) dx '
2
9
5
9
9
5
0
Obsrvese que hemos obtenido as una mejor aproximacin que las dadas anteriormente por las reglas de
Cavalieri-Simpson y del trapecio compuesta.
65
Comentarios adicionales.
. Para problemas pequeos, la regla de Cavalieri-Simpson compuesta puede ser aceptable para evitar la complejidad de los clculos de las frmulas de cuadratura gaussiana.
Sin embargo, para problemas que requieran evaluaciones de funciones complicadas o realizar muchas
evaluaciones de la integral, la eficiencia de la cuadratura gaussiana tiene una gran ventaja.
. Las frmulas de cuadratura gaussiana son particularmente importantes para aproximar integrales mltiples, ya que el nmero de evaluaciones de la funcin crece como una potencia del nmero de integrales
que se deben realizar. Vase [7].
. La cuadratura gaussiana no es apropiada cuando no se conoce la funcin porque requiere de evaluaciones
de la funcin en puntos irregularmente espaciados dentro del intervalo de integracin. Por ejemplo, si
el problema tiene los datos tabulados, ser necesario primero interpolar para los nodos considerados.
5.4.
Un texto muy interesante sobre cuadratura numrica es Davis y Rabinowitz (2007). Para las frmulas
bsicas se pueden consultar [15] Atkinson (1989) o Ralston y Rabinowitz (2001).
5.5.
Ejercicios
1. Sean f (x) = x ex y
xi
f (xi )
1.8
1.9
2.0
2.1
10.88936 12.70319 14.77811 17.14896
2.2
19.85503
a) Demustrese que la diferencia finita centrada para la primera derivada es exacta para polinomios
de grado 2, mientras que las diferencias finitas progresiva y regresiva de tres puntos son exactas
para polinomios de grado 3.
b) Demustrese que la diferencia finita centrada para la segunda derivada es exacta para polinomios
de grado 3, mientras que las otras dos diferencias finitas presentadas en el texto son exactas
para polinomios de grado 2.
1
(af (x + h) + bf (x) cf (x h))
h
66
xy
x+y
para aproximar
las nuevas frmulas a f (x, y) =
Comprense los resultados obtenidos con los valores exactos.
f
x (x, y)
f
x (4, 5)
f
y (x, y)
y aplquense
ex dx
sea exacta para polinomios del mayor grado posible. Utilcese la frmula anterior para aproximar el
valor de las siguientes dos integrales
Z 1
Z 1
2
2
ex dx
y
ex dx.
1
sea exacta para polinomios del mayor grado posible. Aplquese la frmula a f (x) = 2x2 .
14. La solucin aproximada de la integral:
Z
cos x
dx
1 x2
Captulo 6
Introduccin
Una ecuacin diferencial es una ecuacin en la que aparece una o ms derivadas de una funcin desconocida. Si todas las derivadas se toman con respecto a una sola variable independiente se llama ecuacin
diferencial ordinaria (abreviadamente, EDO), mientras que hablaremos de una ecuacin en derivadas parciales (abreviadamente, EDP) cuando aparecen derivadas parciales en la ecuacin. Una ecuacin diferencial
(EDO o EDP) tiene orden q si q es el mximo orden de derivacin que aparece en la ecuacin. En este captulo
nos centraremos nicamente en las EDO de primer orden.
Las EDO modelizan una gran cantidad de fenmenos en diversos campos. En muchas situaciones reales
un problema est modelizado por una EDO que requiere del clculo de la solucin de un problema de valor
inicial (abreviadamente, PVI); esto es, la solucin de una EDO que verifica una condicin inicial dada.
Frecuentemente el PVI es demasiado complicado como para que se pueda resolver exactamente, de manera
que se emplea entonces una de dos posibles tcnicas para aproximar su solucin. La primera tcnica consiste
en simplificar la EDO, obteniendo otra que pueda resolverse exactamente, y usar despus la solucin de la
ecuacin simplificada como aproximacin de la solucin de la ecuacin original. La otra tcnica, que es la que
trataremos aqu, consiste en construir mtodos que aproximen directamente la solucin del problema original.
Los mtodos que consideraremos no proporcionan una aproximacin continua a la solucin del PVI,
sino aproximaciones del valor de la solucin en un conjunto de puntos que habitualmente estn igualmente
espaciados, de manera que ser necesario utilizar algn tipo de interpolacin cuando se necesiten valores
intermedios. Las frmulas de diferenciacin numrica presentadas en el captulo anterior juegan un papel
fundamental en la construccin de estos mtodos.
Los mtodos de resolucin que presentamos son incrementales, de manera que la solucin se determina
en un nmero de pasos. Empiezan en el punto en el que est dada la condicin inicial. Despus, utilizando la
aproximacin de la solucin conocida en el primer punto, se determina una aproximacin de la solucin en un
segundo punto ms cercano. A continuacin, se determina la aproximacn de la solucin en un tercer punto,
y as sucesivamente. Existen mtodos de un paso y de varios pasos (multipaso). En los mtodos de un paso se
aproxima la solucin a partir de la aproximacin en el paso anterior, mientras que en los mtodos multipaso
la solucin se aproxima a partir de aproximaciones conocidas en varios pasos anteriores. El inters de los
mtodos multipaso es que el conocimiento del valor de la funcin en varios puntos anteriores puede dar una
mejor estimacin de la tendencia de la solucin. Para aproximar la solucin en cada paso tambin se pueden
utilizar dos tipos de mtodos: mtodos explcitos y mtodos implcitos. Los segundos suelen proporcionar
mejor exactitud que los primeros, pero requieren de un mayor esfuerzo computacional en cada paso.
Limitaremos nuestro estudio a EDO de primer orden, dado que una ecuacin de orden q > 1 siempre se
puede reducir a un sistema de q ecuaciones de primer orden. El caso de sistemas de primer orden se tratar
a continuacin.
67
68
6.2.
El problema de Cauchy
Una EDO admite, en general, un nmero infinito de soluciones. Para fijar una de ellas, debemos imponer
una condicin adicional que de el valor tomado por esta solucin en un punto dado del intervalo de integracin. Por ejemplo, la ecuacin y 0 (t) = C1 (y C2 ) admite la familia de soluciones y(t) = C2 + K eC1 t , donde
K es una constante arbitraria. Si imponemos la condicin y(0) = 1, escogemos entonces la nica solucin
correspondiente al valor K = 1 C2 .
El problema de Cauchy, tambin llamado problema de valor inicial, consiste en encontrar la funcin
solucin de una EDO que satisfaga una condicin inicial dada, y toma la siguiente forma:
Encuntrese una funcin real y : [a, b] R tal que
y 0 (t) = f (t, y(t)), para todo t [a, b], con y(a) = y0 ,
(6.1)
donde [a, b] es un intervalo de R, f : [a, b] R R es una funcin dada e y0 es un valor dado que
se llama dato inicial.
Antes de describir los mtodos para aproximar la solucin de nuestro problema bsico, consideraremos
algunas condiciones que garanticen que exista una solucin. De hecho, puesto que no resolveremos el problema dado, sino solo una aproximacin de l, necesitamos saber cuando un problema cercano al dado posee
soluciones que se aproximan con precisin a la solucin del problema original. Cuando un PVI posee esta
propiedad se dice que est bien planteado, siendo stos son los problemas para los que son adecuados los mtodos numricos. La siguiente condicin de buen planteamiento establece que la clase de los problemas
bien planteados es bastante amplia:
Supongamos que f y fy , su derivada parcial con respecto a y, son continuas para todo t [a, b] y
para todo y. Entonces, el problema de Cauchy (6.1) tiene solucin nica y = y(t) para t [a, b]
y es un problema bien planteado.
La estrategia comn de los mtodos numricos capaces de aproximar la solucin de cada EDO para la que
existe solucin consiste en subdividir el intervalo de integracin [a, b] en N intervalos de longitud h = ba
N ;
h se llama paso de discretizacin o tamao de paso. Entonces, en cada nodo ti = a + ih (i = 0, 1, . . . , N ),
buscamos el valor desconocido ui que aproxima a yi = y(ti ). El conjunto de valores {u0 = y0 , u1 , . . . , uN } es
la solucin numrica buscada.
6.3.
Mtodos de Taylor
Muchos de los mtodos numricos vistos hasta ahora se derivan en el fondo del Teorema de Taylor. La
aproximacin de la solucin de un PVI no es una excepcin. En este caso, la funcin que expresaremos en
trminos de su polinomio de Taylor es la solucin (desconocida) del problema y(t). Su forma ms elemental
(polinomio de Taylor con n = 1) conduce al mtodo de Euler explcito, que genera una solucin numrica
como la que sigue:
u0 = y0 , ui+1 = ui + hf (ti , ui ), i = 0, 1, . . . , N 1,
aproximndose as la EDO por una ecuacin en diferencias. Algebraicamente este mtodo se puede obtener
considerando la EDO (6.1) en cada nodo i = 1, 2, . . . , N , reemplazando la derivada exacta y 0 (ti ) por la
diferencia finita progresiva h1 (y(ti+1 ) y(ti )) y construyndose la aproximacin ui de y(ti ) para cada i =
1, 2, . . . , N .
Una interpretacin geomtrica de este mtodo est dada en la figura 6.1 y se puede explicar como sigue.
Supongamos que hemos encontrado ui en t = ti . La ecuacin de la recta tangente a la grfica de y(t) en t = ti
es y ui = m(t ti ), donde m = y 0 (ti ) = f (ti , ui ). Para t = ti+1 e y = ui+1 , tenemos ui+1 ui = m(ti+1 ti ).
Entonces, ui+1 = ui + hf (ti , ui ). Esto muestra que la siguiente aproximacin ui+1 se obtiene en el punto
donde la tangente a la grfica de y(t) en t = ti interseca con la recta vertical t = ti+1 .
Se define el error (de truncamiento) local como el error que se comete en un paso cuando se supone que
todos los resultados previos son exactos. El error verdadero, o acumulado, del mtodo se denomina error (de
truncamiento) global o total.
69
y = f (x)
y(ti+1 )
recta tangente de pendiente f (ti ui )
PP
P
ui+1
ui
ti
PP
q
- ti+1
6
error
?
6hf (t , u )
i
i
?
h2 00
y (i ),
2
siendo el error local en cada paso proporcional a h2 , as que es de orden O(h2 ). Sin embargo, el error global
acumula estos errores locales, as que generalmente crece mucho ms rpidamente. Damos a continuacin una
cota del error global para el mtodo de Euler:
Sea y(t) la nica solucin del problema de Cauchy (6.1) y sean u0 , u1 , . . . , uN las aproximaciones
generadas por el mtodo de Euler para algn nmero natural N . Supongamos que f es continua
para todo t [a, b] y todo y (, +), y que existen constantes L y M tales que
f
(t, y(t)) L,
|y 00 (t)| M.
y
Entonces, para cada i = 0, 1, . . . , N , se tiene
|y(ti ) ui |
hM L(ti a)
e
1 .
2L
Comentarios adicionales.
. Un aspecto importante que debemos resaltar es que, aunque el error
local del mtodo de Euler es de orden O(h2 ), su error global es de orden O(h). Diremos entonces que
el mtodo de Euler es un mtodo de primer orden.
. La reduccin en una potencia del error local al error global es tpica de las tcnicas numricas para
PVI. De todas formas, aunque hay una reduccin de orden del error local al global, la frmula muestra
que se puede reducir el error disminuyendo el paso, de manera que el error tiende a cero con h.
Ejemplo. Aplicamos el mtodo de Euler con N = 10 para resolver el problema de valor inicial dado por:
y 0 (t) = 2t y(t),
y(0) = 1,
y obtener el valor de y en t = 1. Comparamos tambin los resultados obtenidos con los valores de la solucin
exacta y(t) = et +2t 2.
1
Como h = ba
N = 10 = 0.1 y f (t, y) = 2t y, se sigue que
y(0.1) ' u1 = u0 + hf (t0 , u0 ) = 1 + (0.1)f (0, 1) = 1 + 0.1 = 0.9,
y el error es |y(0.1) u1 | = 0.00484. Para calcular y(0.2), repetimos el proceso, pero empezando ahora en el
punto (0.1, 0.9):
y(0.2) ' u2 = u1 + hf (t1 , u1 ) = 0.9 + (0.1)f (0.1, 0.9) = 0.9 + (0.1)(0.2 + 0.9) = 0.79;
el error absoluto es |y(0.2) u2 | = 0.00973. Continuando el proceso de forma anloga, obtenemos, vase [16],
que el valor de y en t = 1 es u10 = 0.348678 y el error cometido 0.0192. Finalizamos la aplicacin del mtodo
de Euler mostrando las grficas de las soluciones exacta y aproximada del PVI anterior en la figura 6.2.
70
0.2
0.2
0.4
0.6
0.8
1.0
-0.2
-0.4
-0.6
-0.8
-1.0
Figura 6.2: Soluciones exacta y(t) = et + 2t 2 (lnea continua) y aproximada mediante el mtodo de Euler
con N = 10 (puntos).
Puesto que se ha construido el mtodo de Euler a partir del Teorema de Taylor, el primer intento para
hallar mtodos que mejoren la precisin del mtodo de Euler consistir en extender esta tcnica de construccin. As, vase [7], si expresamos la solucin y(t) del problema de Cauchy (6.1) en trminos de su n-simo
polinomio de Taylor alrededor de ti , se deriva sucesivamente la solucin y(t) y se sustituyen estos resultados
en el desarrollo de Taylor se obtiene, eliminando el trmino de error, la correspondiente ecuacin en diferencias
del mtodo de Taylor orden n:
u0 = y0 ,
donde
(n)
Ti
(n)
ui+1 = ui + hTi
i = 0, 1, . . . , N 1,
(6.2)
hn1 (n1)
h 0
f (ti , ui ) + +
f
(ti , ui ).
2
n!
n+1
h
El error local es (n+1)!
y (n+1) (i ), para algn i (ti , ti+1 ).
Las estimaciones del error global para los mtodos de Taylor son parecidas a las del mtodo de Euler.
Si se dan suficientes condiciones de derivabilidad, entonces el mtodo de Taylor de orden n tendr un error
local de O(hn+1 ) y un error global de orden O(hn ).
Nota. La frmula de T (n) se expresa fcilmente, pero es difcil de usar porque requiere conocer las derivadas
de f (t, y(t)) con respecto a t. Como f es una funcin de las dos variables t e y, la regla de la cadena dice que
la derivada total de f con respecto a t, que hemos denotado por f 0 (t, y(t)), est dada por
f 0 (t, y(t)) =
f
dt f
dy(t)
f
f
(t, y(t))
+
(t, y(t))
=
(t, y(t)) +
(t, y(t)) y 0 (t),
t
dt y
dt
t
y
f
f
(t, y(t)) + f (t, y(t))
(t, y(t)) = ft (t, y(t)) + f (t, y(t))fy (t, y(t)).
t
y
Las derivadas de rdenes superiores se obtienen de forma parecida, pero se van haciendo cada vez ms
complicadas. Por ejemplo, f 00 (t, y(t)) involucra todas las derivadas parciales, tanto con respecto a t como a
y, de todos los trminos del miembro derecho de la ltima igualdad.
6.4.
Mtodos de Runge-Kutta
Acabamos de ver cmo se pueden generar mtodos de Taylor de orden superior. Sin embargo, la aplicacin
de estos mtodos de orden superior a problemas concretos se complica por la necesidad de calcular y evaluar
las derivadas de orden superior con respecto a t del segundo miembro de la EDO (6.1).
Los mtodos anteriores son ejemplos elementales de mtodos de un paso. Esquemas ms sofisticados, que
permiten alcanzar un orden de precisin superior, son los mtodos de Runge-Kutta y los mtodos multipaso.
En esta seccin consideraremos los mtodos de Runge-Kutta (abreviadamente, RK), que son mtodos de
un paso; sin embargo, requieren de varias evaluaciones de la funcin f (t, y) sobre cada intervalo [ti , ti+1 ]. Estos
71
mtodos resultan de modificar los mtodos de Taylor para que el orden de las cotas del error se conserve, pero
eliminando la necesidad de determinar y evaluar derivadas parciales de orden alto. La estrategia consiste en
aproximar un mtodo de Taylor mediante un mtodo que sea ms fcil de evaluar, lo que podra incrementar
el error, pero se hace de manera que el incremento no exceda el orden del error de truncamiento que ya
presenta el mtodo de Taylor. Como consecuencia, los nuevos errores no influyen significativamente en los
clculos (vase [7]).
En su forma ms general, un mtodo RK puede escribirse de la forma
ui+1 = ui +
s
X
bj Kj ,
i 0,
j=1
donde
Kj = h f
ti + cj h, ui +
s
X
!
ajk Kk
j = 1, 2 . . . , s,
k=1
y s indica el nmero de evaluaciones de f que hay que efectuar (nmero de etapas del mtodo). Los coeficientes
{ajk }, {cj } y {bj } caracterizan totalmente un mtodo RK y habitualmente se recogen en la llamada tabla de
Butcher
c1
a11
a12
a1s
c2
a21
a22
a2s
..
.
..
.
..
.
..
..
.
cs
as1
as2
ass
b1
b2
bs
o
bT
K2 = h f (ti + 21 h, ui + 21 K1 ),
1
2
1
2
K3 = h f (ti + 12 h, ui + 21 K2 ),
1
6
1
3
1
3
K4 = h f (ti + h, ui + K3 ),
1
6
Este mtodo (que llamaremos RK4) simula la precisin del mtodo de Taylor de orden cuatro y puede
deducirse emparejando los coeficientes anteriores con los del mtodo de Taylor de orden cuatro de manera
que el error local sea de orden O(h5 ). Es explcito, con un error global de orden O(h4 ) y requiere de cuatro
nuevas evaluaciones de f en cada paso.
El mtodo de Runge-Kutta de segundo orden (que llamaremos RK2) simula la precisin del mtodo
de Taylor de orden dos. Aunque no es un mtodo tan bueno como el RK4, los razonamientos que nos conducen
a su desarrollo son ms fciles de entender y sirven para ilustrar las ideas que estn involucradas en los mtodos
de Runge-Kutta.
72
en (6.2) por la
(6.3)
donde
K1 = h f (ti , ui ),
K2 = h f (ti + h, ui + K1 ),
y a, b, y son constantes a determinar, de manera que (6.3) sea tan exacta como sea posible.
Para determinar estas constantes, hacemos que la ecuacin (6.3) coincida con el desarrollo en serie de
Taylor de y(t) en ti . Por una parte, como
y(ti+1 )
h2 00
2 y (ti )
y(ti ) + hy 0 (ti ) +
h2 0
2 f (ti , y(ti ))
y f 0 (ti , y(ti )) = ft (ti , y(ti )) + f (ti , y(ti ))fy (ti , y(ti )), se sigue que
y(ti+1 ) = y(ti ) + hf (ti , y(ti )) +
h2
(ft (ti , y(ti )) + f (ti , y(ti ))fy (ti , y(ti ))) + O(h3 ).
2
(6.4)
Por otra parte, si ahora desarrollamos f (ti + h, ui + K1 ) en serie de Taylor de orden dos para una funcin
de dos variables, se obtiene
f (ti + h, ui + K1 ) = f (ti , ui ) + hft (ti , ui ) + K1 fy (ti , ui ) + O(h2 ),
de manera que al sustituir la ltima expresin en (6.3), queda
ui+1
==
1
,
2b
que es un sistema de tres ecuaciones con cuatro incgnitas, pudindose elegir entonces una variable arbitrariamente.
Existen por tanto una infinidad de frmulas de Runge-Kutta de segundo orden, que simulan la precisin
del mtodo de Taylor de orden dos, de manera que tendrn un error local de O(h3 ) y un error global de O(h2 ).
Por lo tanto, cada frmula da los mismos resultados exactos si la EDO es cuadrtica, lineal o constante. A
continuacin, damos las tres frmulas ms conocidas.
Si a = 0, b = 1 y = = 21 , el mtodo RK2 que obtenemos se conoce como mtodo del punto medio:
u0 = y0 ,
ui+1 = ui + K2 ,
i = 0, 1, . . . , N 1,
donde
0
K1 = h f (ti , ui ),
1
2
1
2
K2 = h f (ti + 12 h, ui + 12 K1 ),
0
1
ui+1 = ui + (K1 + K2 ),
2
i = 0, 1, . . . , N 1,
73
donde
0
K1 = h f (ti , ui ),
K2 = h f (ti + h, ui + K1 ),
1
2
1
2
2
3
2
3
K2 = h f (ti + 23 h, ui + 23 K1 ),
1
4
3
4
que corresponde al mtodo RK de segundo orden que tiene un mnimo en el error de truncamiento ([8]).
Ejemplo. Utilizamos ahora el mtodo del punto medio con N = 10 para obtener una aproximacin a la
solucin del problema de valor inicial anterior
y 0 (t) = 2t y(t),
en t = 1.
Con h =
1
10
y(0) = 1,
= 0.1 y f (t, y) = 2t y, el primer paso del mtodo del punto medio para aproximar y(0.1) es:
K1 = h f (t0 , u0 ) = (0.1)f (0, 1) = 0.1,
K2 = h f (t0 + 12 h, u0 + 12 K1 ) = (0.1)f (0 + 21 (0.1), 1 + 21 (0.1)) = 0.105,
u1 = u0 + K2 = 1 + 0.105 = 0.895.
Continuando con las aproximaciones numricas, se obtiene que en t = 1, el valor dado por el mtodo del punto
medio es u10 = 0.368541 y el error absoluto es |y(1) u10 | = 0.000662, como puede verse en [16]. Finalizamos
la aplicacin del mtodo del punto medio mostrando las grficas de las soluciones exacta y aproximada del
PVI anterior en la figura 6.3.
0.2
0.2
0.4
0.6
0.8
1.0
-0.2
-0.4
-0.6
-0.8
-1.0
Figura 6.3: Soluciones exacta y(t) = et + 2t 2 (lnea continua) y aproximada mediante el mtodo del punto
medio con N = 10 (puntos).
Comentario adicional.
. Una forma de comparar los mtodos de Runge-Kutta de orden bajo es la
siguiente. El mtodo RK4 requiere cuatro evaluaciones de f por paso, de manera que para que fuese
superior al mtodo de Euler, que requiere solo una evaluacin de f por paso, debera dar respuestas
ms precisas que el mtodo de Euler con tamao de paso igual a la cuarta parte del tamao de paso del
mtodo RK4. Anlogamente, para que el mtodo RK4 fuese superior a los mtodos de Runge-Kutta de
segundo orden, que requieren dos evaluaciones por paso, debera ser ms preciso con tamao de paso
h que un mtodo de segundo orden con tamao de paso h2 . Vase el ejemplo de la pg. 209 de [7] en el
que se ilustra la superioridad del mtodo RK4 con respecto a esta medida.
74
6.5.
Mtodos multipaso
Los mtodos de Taylor y de Runge-Kutta son ejemplos de mtodos de un paso para aproximar soluciones de
PVI. Estos mtodos solo emplean ui para calcular la aproximacin ui+1 de y(ti+1 ), sin utilizar explcitamente
las aproximaciones previas u0 , u1 , . . . , ui1 . Generalmente requieren de algunas evaluaciones de la funcin f
en puntos intermedios, pero stas se descartan tan pronto como se obtiene ui+1 .
Como la exactitud de |y(tj ) uj | disminuye conforme aumenta j, podemos construir mejores mtodos
de aproximacin si, al aproximar y(ti+1 ), incluimos en el mtodo algunas aproximaciones previas ui . Los
mtodos que desarrollan esta idea se llaman mtodos de varios pasos o mtodos multipaso. Es decir,
los mtodos de un paso solo tienen en cuenta lo que ocurri en el paso anterior, mientras que los mtodos
multipaso tienen en cuenta lo ocurrido en varios pasos anteriores. El principio que los gua se describe a
continuacin. Deseamos resolver el PVI (6.1). Integrando la EDO de (6.1) entre ti y ti+1 , obtenemos:
Z
ti+1
y(ti+1 ) y(ti ) =
ti+1
Z
f (t, y(t)) dt
y (t) dt =
ti
ti
ti+1
y(ti+1 ) = y(ti ) +
Puesto que no podemos integrar f (t, y(t)) sin conocer y(t), que es la solucin del problema, integramos en su
lugar el polinomio de interpolacin p(t) que aproxima f (t, y(t)). Suponiendo adems que y(ti ) ' ui , tenemos:
Z
ti+1
y(ti+1 ) ' ui +
p(t) dt.
(6.5)
ti
Si um+1 es la primera aproximacin que se va a generar usando un mtodo multipaso, entonces necesitamos
conocer los valores de partida u0 , u1 , . . . , um del mtodo. Estos valores de partida se generan usando un
mtodo de Runge-Kutta o alguna otra tcnica de un paso que tenga el mismo orden de error que el mtodo
multipaso.
Hay dos clases distintas de mtodos multipaso: explcitos e implcitos. En un mtodo explcito, el clculo
de ui+1 no supone la evaluacin de la funcin f (ti+1 , ui+1 ), mientras que en un mtodo implcito si.
La precisin de una solucin numrica de un PVI est en gran medida determinada por el orden del
mtodo utilizado. El orden indica cuantos trminos de una solucin expresada en serie de Taylor se estn
simulando mediante este mtodo.
6.5.1.
(6.6)
donde c1 , c2 , c3 , . . . son constantes. Una expresin de este tipo se conoce como frmula de Adams-Bashforth
(abreviadamente, AB). A partir del polinomio de interpolacin de grado m 1, se obtiene una frmula AB
de m pasos.
En las frmulas de Adams-Bashforth, suponemos que p(t) est dado por el polinomio de interpolacin en
los m puntos:
(ti , f (ti , ui )), (ti1 , f (ti1 , ui1 )), . . . , (tim+1 , f (tim+1 , uim+1 )).
Si m = 1, la correspondiente frmula AB se reduce al mtodo de Euler. Damos a continuacin algunas otras
frmulas, junto con los valores de partida que se requieren y sus trminos de error local.
Mtodo explcito de Adams-Bashforth de dos pasos (AB2) (m = 2):
u0 = y0 ,
u1 = y1 ,
ui+1 = ui +
5 000
3
12 y (i )h ,
h
(3f (ti , ui ) f (ti1 , ui1 )) ,
2
u1 = y1 ,
u2 = y2 ,
ui+1 = ui +
h
(23f (ti , ui ) 16f (ti1 , ui1 ) + 5f (ti2 , ui2 )) ,
12
75
para i = 2, 3, . . . , N 1, con error local 38 y (iv) (i )h4 , para algn i (ti2 , ti+1 ).
Mtodo explcito de Adams-Bashforth de cuatro pasos (AB4) (m = 4):
u0 = y0 ,
ui+1 = ui +
u1 = y1 ,
u2 = y2 ,
u3 = y3 ,
h
(55f (ti , ui ) 59f (ti1 , ui1 ) + 37f (ti2 , ui2 ) 9f (ti3 , ui3 )) ,
24
251 (v)
(i )h5 ,
720 y
Ejemplo. Aplicamos a continuacin el mtodo AB4 con N = 10 para obtener una aproximacin del problema
de valor inicial anterior
y 0 (t) = 2t y(t), y(0) = 1,
en t = 1.
Podemos obtener los valores iniciales mediante el mtodo RK4, pero como conocemos la solucin exacta,
y(t) = et +2t 2, la utilizamos para obtener los valores iniciales:
u0 = 1, u1 = y(0.1) = 0.895162, u2 = y(0.2) = 0.781269, u3 = y(0.3) = 0.659181.
Ahora,
u4
h
24
u3 +
0.659181 +
0.1
24
0.659181 +
0.529677
0.1
24
y, continuando de forma anloga, vase [16], se tiene: u10 = 0.369344 y el error cometido es |y(1) u10 | =
0.00146.
Comentario adicional.
. La principal desventaja comn de todos los mtodos multipaso, en general,
y de los mtodos AB, en particular, es que se necesitan conocer los valores de partida. Por ejemplo, para
el mtodo AB4, se necesitan cuatro valores de partida antes de que el mtodo se pueda utilizar. En la
prctica, como se ha dicho anteriormente, se utiliza un mtodo de un paso con el mismo orden de error
para determinar los valores de partida. El mtodo AB4 se utiliza frecuentemente con el mtodo RK4
porque ambos tienen un error local de orden O(h5 ). La ventaja de los mtodos AB sobre los mtodos
de un paso es que el clculo de ui+1 requiere solo una evaluacin de f (t, y) por paso, mientras que
los mtodos RK de rdenes 3 requieren cuatro o ms evaluaciones de la funcin. Por esta razn, los
mtodos multipaso pueden ser el doble de rpidos que los mtodos RK de exactitud comparable.
6.5.2.
Raramente se utilizan las frmulas AB de manera aislada, habitualmente se suelen utilizar junto con otras
frmulas para aumentar la precisin de la aproximacin numrica. Con el fin de observar cmo es posible
esto, volvemos a la aproximacin (6.5) y supongamos que se emplea una frmula de cuadratura numrica que
comprende a f (ti+1 , ui+1 ). Supongamos ahora que (6.5) da como resultado:
ui+1 = ui + c1 f (ti+1 , ui+1 ) + c2 f (ti , ui ) + c3 f (ti1 , ui1 ) +
donde c1 , c2 , c3 , . . . son constantes. La situacin ms sencilla es la que considera el polinomio p(t) como el
polinomio de interpolacin en los m + 1 puntos:
(ti+1 , f (ti+1 ui+1 )), (ti , f (ti , ui )), . . . , (tim+1 , f (tim+1 , uim+1 )).
Se relacionan a continuacin los ejemplos ms comunes de expresiones de este tipo, que se conocen como
frmulas de Adams-Moulton (abreviadamente, AM). Obsrvese que el error local de un mtodo implcito de
(m 1) pasos es de orden O(hm+1 ), lo mismo que el de un mtodo explcito de m pasos. Sin embargo, ambos
76
usan m evaluaciones de la funcin, ya que los mtodos implcitos incluyen f (ti+1 , ui+1 ), pero los explcitos
no.
Mtodo implcito de Adams-Moulton de dos pasos (AM3) (m = 2):
u0 = y0 ,
u1 = y1 ,
ui+1 = ui +
h
(5f (ti+1 , ui+1 ) + 8f (ti , ui ) f (ti1 , ui1 )) ,
12
1 (iv)
(i )h4 ,
24 y
u1 = y1 ,
u2 = y2 ,
h
(9f (ti+1 , ui+1 ) + 19f (ti , ui ) 5f (ti1 , ui1 ) + f (ti2 , ui2 )) ,
24
(v)
(i )h5 , para algn i (ti2 , ti+1 ).
para i = 2, 3, . . . , N 1, con error local 19
720 y
ui+1 = ui +
Comentario adicional.
. Resulta de inters comparar el mtodo explcito AB de m pasos con el
mtodo implcito AM de m 1 pasos. Ambos requieren m evaluaciones de f por paso y ambos tienen
los factores y (m+1) (i )hm+1 en sus trminos de error local. Adems, en general, los coeficientes de las
evaluaciones de f en la frmula de aproximacin y en el trmino de error local son menores en el mtodo
implcito que en el explcito del mismo orden, lo que conlleva menores errores de truncamiento y de
redondeo en los mtodos implcitos. Por el contrario, obsrvese que los mtodos implcitos tienen la
necesidad de reformular algebraicamente la ecuacin en diferencias para obtener una representacin
explcita de ui+1 , lo que puede ser difcil, sino imposible.
6.5.3.
Mtodos predictor-corrector
Para sacar provecho de las propiedades beneficiosas de los mtodos implcitos y evitar las dificultades
en la resolucin de la ecuacin implcita, estos mtodos implcitos no se suelen utilizar en la prctica en
solitario, sino que se suelen utilizar para mejorar las aproximaciones obtenidas por los mtodos explcitos.
La combinacin de un mtodo explcito con uno implcito recibe el nombre de mtodo de prediccin y
correccin o mtodo predictor-corrector. El mtodo explcito predice una aproximacin y el mtodo
implcito la corrige. Gozan del orden de precisin del mtodo corrector.
El mtodo predictor es una frmula explcita y se utiliza en primer lugar para determinar una estimacin
ui+1 de la solucin, que se calcula a partir de la solucin conocida en el punto anterior mediante un mtodo
de un paso o a partir de la solucin conocida en varios puntos anteriores mediante un mtodo multipaso.
Una vez calculada la estimacin ui+1 , se aplica el mtodo corrector, que utiliza el valor estimado ui+1 en la
parte derecha de la ecuacin de un mtodo implcito, para calcular una nueva estimacin de la solucin, ms
exacta que ui+1 , en la parte izquierda de la ecuacin del mtodo. Por lo tanto, el mtodo corrector que suele
ser un mtodo implcito se utiliza de manera explcita, ya que no se requiere resolver una ecuacin no lineal.
(Adems, podemos repetir la aplicacin del mtodo corrector varias veces, de manera que el nuevo valor de
ui+1 se sustituye de nuevo en la parte derecha de la ecuacin del mtodo corrector para obtener una nueva
aproximacin de ui+1 ms refinada, vase [12].)
Un mtodo predictor-corrector popular, llamado ABM4, utiliza la frmula AB4 como mtodo predictor
y la frmula AM4 como mtodo corrector. El primer paso es calcular los valores de partida u0 , u1 , u2 y u3
para el mtodo explcito AB4. Para calcular estos cuatro valores, utilizamos un mtodo de un paso de cuarto
orden, especificamente, el mtodo RK4. El siguiente paso es calcular una aproximacin uP
4 de y(t4 ) mediante
el mtodo explcito AB4 para hacer la prediccin (vase [7]):
h
(55f (t3 , u3 ) 59f (t2 , u2 ) + 37f (t1 , u1 ) 9f (t0 , u0 )) .
24
Esta aproximacin se mejora utilizando ahora el mtodo implcito AM4 como corrector:
uP
4 = u3 +
h
9f (t4 , uP
4 ) + 19f (t3 , u3 ) 5f (t2 , u2 ) + f (t1 , u1 ) .
24
El valor u4 es el que se usa como aproximacin de y(t4 ). Ahora la tcnica de utilizar el mtodo AB4 para hacer
la prediccin y el de AM4 para hacer la correccin se repite, hallndose uP
5 y u5 , las aproximaciones inicial
y final respectivas de y(t5 ). El proceso se reitera hasta que obtengamos la aproximacin de y(tN ) = y(b).
u4 = u3 +
6.6.
77
Los mtodos desarrollados en las secciones previas se pueden extender ahora fcilmente para resolver PVI
de orden superior. Consideramos el caso general de una EDO de orden q 2
y (q) (t) = f (t, y(t), y 0 (t), . . . , y (q1) (t)), para todo t [a, b],
(6.7)
w10 = w2 ,
w20 = w3 ,
..
.
wq1 = wq ,
wq0 = f (t, w1 , w2 , . . . , wq ),
con condiciones iniciales
w1 (a) = y0 , w2 (a) = y1 , . . . , wq1 (a) = yq1 .
Para resolver el sistema anterior se puede aplicar a cada ecuacin individual uno de los mtodos desarrollados
en las secciones previas.
Ejemplo. Consideramos el mtodo de Euler aplicado a las siguientes dos ecuaciones simultneas
( 0
y1 = f1 (t, y1 (t), y2 (t)),
y20
Escribiendo el sistema anterior en forma vectorial y0 (t) = F(t, y(t)), con una eleccin obvia de la notacin,
la extensin de los mtodos desarrollados anteriormente en el caso de una sola ecuacin al caso vectorial es
directa. As, el mtodo
u0 = y0 , ui+1 = ui + h F(ti , ui ), i 0,
es la forma vectorial del mtodo de Euler.
6.7.
Para un tratamiento ms profundo de los mtodos numricos para EDO se recomiendan los siguientes
textos: [15] y Ralston y Rabinowitz (2001). Otros textos que ofrecen un estudio exhaustivo son: Butcher
(2008), Gear (1971) y Golub y Ortega (1992). Un texto interesante que analiza los sistemas de ecuaciones
diferenciales es Lambert (1991), donde se explica que las condiciones para los rdenes de los mtodos escalares
y vectoriales (sistemas), aunque tengan la misma forma, varan entre unos y otros, obtenindose distintos
rdenes.
78
6.8.
Ejercicios
1. Aplquese el mtodo de Euler explcito con paso h = 0.1 para aproximar el valor y(1) de la solucin de
la ecuacin integral
Z t
cos(s + y(s)) ds
y(t) = et +
0
t [0, 1],
y(0) = 1.
Hllese una aproximacin numrica obtenida mediante el mtodo de Euler con paso de integracin
h = 0.2.
3. La funcin y(t) =
t2
es la solucin del PVI
4
y 0 (t) =
y(t),
y(0) = 0.
Calclese mediante el mtodo de Euler una aproximacin de la solucin. Qu es lo que sucede? Dese
una explicacin.
4. Obtencin del mtodo de Euler utilizando integracin numrica. Vase la equivalencia entre aplicar el
mtodo de Euler a la resolucin del problema de Cauchy (6.1) y aplicar la regla de cuadratura del
rectngulo a la reformulacin del problema de Cauchy en forma integral.
5. Obtngase el valor exacto de y(0.1) a partir de la solucin exacta del PVI
y 0 (t) = ty(t)2 ,
y(0) = 2.
dgase si es de tipo RK y, en su caso, escrbase la tabla de Butcher. Cul es el orden del mtodo?
9. Sea el mtodo
u0 = y0 ,
K1
1
= ui + (K1 + 4K2 + K3 ),
6
= hf (ti , ui ),
K2
= hf (ti + h2 , ui + 12 K1 ),
K3
= hf (ti + h, ui + 2K2 K1 ).
ui+1
Es un mtodo RK? En caso afirmativo, dese su tabla de Butcher. Cul es el orden del mtodo?
10. Obtngase la frmula recursiva del mtodo RK4. Para ello, tngase en cuenta que el mtodo RK4
consiste en calcular la aproximacin ui+1 de la siguiente forma:
u0 = y0 ,
ui+1 = ui + b1 K1 + b2 K2 + b3 K3 + b4 K4 ,
79
6.8. EJERCICIOS
donde
K1 = hf (ti , ui ),
K2 = hf (ti + c2 h, ui + a21 K1 ),
y(0) = 1.
Aproxmese el valor y(1) utilizando el mtodo AB2 y tomando como mtodo de inicio el mtodo RK2
dado por
h
h
u0 = y0 , ui+1 = ui + hf ti + , ui + f (ti , ui )
2
2
con paso de integracin h = 0.2.
12.
13. Obsrvese el mtodo de Euler explcito y constryase de manera anloga el mtodo de Euler implcito,
dado por
u0 = y0 , ui+1 = ui + hf (ti+1 , ui+1 ).
Utilcense despus los dos mtodos de Euler en la forma predictor-corrector para resolver el PVI
y 0 (t) = ln 1 + t2 + y(t)2 + 2t + y(t), y(0) = 1.
Escrbanse las ecuaciones del mtodo numrico y calclense y(0.5) e y(1) tomando h = 0.5.
14. Transfrmese el siguiente PVI de segundo orden
y 00 + 2y 0 + y 3 = sen t,
y(0) = 1,
y 0 (0) = 0.
en un sistema de ecuaciones diferenciales de primer orden. Calclense las dos primeras iteraciones del
mtodo de Euler con paso de integracin h = 0.1.
15. Resulvase, mediante el mtodo de Euler, el siguiente sistema de ecuaciones diferenciales
( 0
x (t) = x + ty(t) + 1,
y 0 (t) = t2 x(t) + ty(t) + t3 ,
en el intervalo [0, 1], con las condiciones iniciales x(0) = 1, y(0) = 1 y usando como paso de integracin
h = 0.2.
16. Desarrllese la frmula del mtodo RK2 de Euler modificado para la resolucin de un sistema de dos
EDO de primer orden. Dse tambin la formulacin vectorial del mtodo.
Captulo 7
Introduccin
Las EDO tratadas en el captulo anterior son de primer orden y deben cumplir una condicin inicial.
Tambin vimos que las tcnicas numricas se pueden extender a sistemas de ecuaciones y ecuaciones de orden
superior, siempre que las condiciones se especifiquen en el mismo punto en el que se da el valor inicial. Por
esta razn, tales problemas se denominan problemas de valor inicial (abreviadamente, PVI). Sin embargo, en
muchos problemas, las condiciones se especifican en ms de un punto. Debido a que estas condiciones se suelen
dar en los puntos extremos o frontera de un intervalo, se les denomina problemas de contorno o problemas
de valores en la frontera (abreviadamente, PVF). Muchas aplicaciones importantes de la ingeniera son de
esta clase, como por ejemplo la deflexin de una viga y el flujo del calor, as como tambin varios problemas
fsicos. Los PVF son generalmente ms difciles de resolver que los PVI. Para EDO de primer orden solo se
especifica una condicin, as que no hay diferencia entre PVI y PVF.
Presentamos en este captulo dos procedimientos generales que aproximan la solucin de un PVF: los
mtodos de disparo y los mtodos de diferencias finitas. Los primeros transforman un PVF de segundo orden
(u orden superior) en un sistema de PVI. En los segundos, las derivadas de la EDO se aproximan mediante
frmulas de diferencias finitas, resultando entonces sistemas de ecuaciones algebraicas (lineales o no lineales)
que hay que resolver. Ambos mtodos tienen sus ventajas y desventajas. Los mtodos de diferencias finitas
no necesitan resolver la EDO varias veces para ajustar las condiciones de contorno prescritas en el punto final
del dominio. Por otra parte, la solucin de EDO no lineales utilizando mtodos de diferencias finitas resulta
de la necesidad de resolver un sistema de ecuaciones no lineales simultneas (generalmente iterativamente),
que puede ser tedioso y difcil. Los mtodos de disparo tienen la ventaja de que la solucin de la EDO no
lineal es bastante sencilla. La desventaja de estos mtodos es que hay que resolver la EDO varias veces.
7.2.
Las ecuaciones diferenciales cuyas soluciones aproximaremos aqu son de segundo orden, concretamente
de la forma:
y 00 (x) = f (x, y(x), y 0 (x)), para x [a, b],
con las condiciones de contorno que debe cumplir la solucin
y(a) =
y(b) = ,
para ciertas constantes y . Estas condiciones de contorno se llaman condiciones de contorno de Dirichlet.
Un problema como ste es un ejemplo tpico de PVF de segundo orden en dos puntos.
He aqu un ejemplo de un PVF en dos puntos que se puede resolver mediante funciones elementales:
y 00 (x) + y(x) = 0;
y(0) = 1,
81
y(/2) = 2.
82
7.3.
x [a, b];
x [a, b];
y(a) = ,
y(a) = 0,
y 0 (a) = 0,
y 0 (a) = 1,
(7.1)
(7.2)
que tienen solucin nica. Denotemos la solucin del primer problema por y1 (x), la solucin del segundo
problema por y2 (x) y supongamos que y2 (b) 6= 0. Entonces, por la teora bsica de las EDO lineales, es fcil
comprobar que la funcin
y1 (b)
y2 (x)
(7.3)
y(x) = y1 (x) +
y2 (b)
es la solucin nica del PVF lineal
y 00 (x) = p(x)y 0 (x) + q(x)y(x) + r(x),
x [a, b];
y(a) = ,
y(b) = .
(7.4)
83
x [0, 1];
y(0) = y(1) = 0.
y2 (0) = 0,
y20 (0) = 1,
u1 (0) = 0,
v2 (0) = 1,
(7.6)
x [0, 1],
(7.7)
x [0, 1].
Utilizamos el mtodo RK4 para construir las soluciones numricas u1i y vi1 de los sistemas lineales (7.6) y
(7.7). Las aproximaciones de u1i y vi1 estn dadas en la tabla 7.1 (vase [16]).
x
0
0.2
0.4
0.6
0.8
1
u1i
0
0.01743428
0.06017154
0.11620204
0.17679396
0.23633393
vi1
0
0.18251267
0.33919207
0.48140428
0.61776325
0.75454368
0.23633393
y1 (1)
y2 (0.4) 0.06017154
(0.33919207) = 0.046068294.
y2 (1)
0.75454368
84
Comentario adicional.
. En general, si u1i y vi1 son aproximaciones respectivas de y1 (xi ) e y2 (xi ) con
una precisin de orden O(hn ), para cada i = 0, 1, . . . , N , entonces la aproximacin de y(xi ) tendr
tambin una precisin de orden O(hn ).
7.4.
El mtodo de disparo lineal suele presentar problemas con los errores de redondeo. Los mtodos que
presentamos en esta seccin son ms robustos frente a los errores de redondeo, pero, en general, requieren
mayor esfuerzo computacional para obtener una precisin especfica.
Los mtodos que utilizan diferencias finitas para resolver problemas de contorno sustituyen cada una de
las derivadas de la EDO por un cociente incremental como los considerados en el captulo 4; los cocientes
incrementales concretos que se tomen deben mantener un orden del error especificado. As, los mtodos que
involucran diferencias finitas transforman el PVF en un sistema lineal o no lineal, cuadrado, cuyas incgnitas
sern los valores aproximados de la solucin y(x) en los puntos elegidos del intervalo [a, b].
En el mtodo de diferencias finitas para el PVF (7.4) es necesario utilizar cocientes incrementales
para aproximar tanto y 0 como y 00 . Para cualquier x del intervalo (a, b), sencillas manipulaciones del desarrollo
de Taylor de y(x), alrededor de x, nos permite obtener la diferencia finita centrada para y 0 (vase el captulo
4):
y(x + h) y(x h)
.
y 0 (x) '
2h
De forma anloga, para la derivada segunda, obtenemos la diferencia finita centrada para y 00
y 00 (x) '
Sustituyendo entonces las diferencias finitas centradas que acabamos de ver en la EDO, resulta
y(x + h) y(x h)
y(x + h) 2y(x) + y(x h)
= p(x)
+ q(x)y(x) + r(x).
h2
2h
(7.8)
Tomando ahora un nmero entero N > 0 y dividiendo el intervalo [a, b] en (N + 1) subintervalos del mismo
tamao h, con
ba
h=
, xi = a + ih, i = 0, 1, . . . , N + 1,
N +1
podemos discretizar la expresin (7.8) para cada xi , de manera que
y(xi+1 ) 2y(xi ) + y(xi1 )
y(xi+1 ) y(xi1 )
= p(xi )
+ q(xi )y(xi ) + r(xi ),
h2
2h
i = 1, 2, . . . , N.
u1
b1 c1
d1 a1
a b
u2
c2
2
2
d2
a
b
c
3
3
3
u
d
3
3
,
=
..
..
..
..
..
.
.
.
.
.
aN 1 bN 1 cN 1 uN 1 dN 1
dN cN
aN
bN
uN
85
h
pi ,
2
bi = (2 + h2 qi ),
ci = 1
h
pi ,
2
di = h2 ri .
Este sistema tiene solucin nica si p, q y r son continuas en [a, b], q(x) 0 en [a, b] y h < 2/L, donde
L = m
ax |p(x)|.
axb
x [0, 1];
y(0) = 1,
y(1) = 0.
Utilizaremos el mtodo de diferencias finitas lineales con h = 0.2 para resolverlo y compararemos los resultados
con la solucin exacta y(x) = (x 1) ex .
Las funciones p, q y r son respectivamente p(x) = (x + 1), q(x) = 2 y r(x) = (1 x2 ) ex . Por tanto, la
ecuacin (7.9) se convierte en
(1 0.1(xi + 1))ui1 (2 + 0.08)ui + (1 + 0.1(xi + 1))ui+1 = 0.04(1 x2i ) exi ,
con u0 = 1, u5 = 0 y xi = (0.2)i, para i = 1, 2, 3, 4. Y la correspondiente formulacin matricial es
2.08 1.12
0.84 2.08
0.82
u1
0.91143926
u
2 0.02252275
=
.
1.16
u3 0.01404958
2.08
0.00647034
u4
(7.10)
Las aproximaciones de la solucin aparecen en la tabla 7.2 (vase [16]), junto con su comparacin con los
valores calculados a partir de la solucin analtica.
x
0
0.2
0.4
0.6
0.8
1
ui
-1.00000
-0.65413
-0.40103
-0.21848
-0.08924
0.00000
y(xi )
-1.00000
-0.65498
-0.40219
-0.21952
-0.08987
0.00000
Error absoluto
0.000000
0.000854
0.001163
0.001047
0.000624
0.000000
Comentarios adicionales.
. De la aplicacin de los mtodos de diferencias finitas no siempre resulta
un sistema tridiagonal de ecuaciones. Esto ltimo es debido a que la EDO es de segundo orden y se ha
utilizado una frmula de diferencias finitas centradas para aproximar la derivada segunda.
. Obsrvese que al utilizar diferencias finitas centradas como aproximaciones de las derivadas, resulta
que el mtodo de diferencias finitas tendr un error de truncamiento de orden O(h2 ). Para obtener
un mtodo de diferencias ms preciso tenemos varias opciones. Podemos utilizar aproximaciones en
diferencias finitas ms precisas para las derivadas, pero la desventaja de hacer esto es que el sistema de
ecuaciones resultante no ser tridiagonal y su resolucin requerir entonces muchas ms operaciones.
Otro camino, generalmente ms satisfactorio, consiste en considerar una reduccin del tamao de paso
h y comparar las soluciones en los mismos nodos; sin embargo, el error de redondeo incrementar y
podra llegar a hacerse grande.
86
7.5.
Los mtodos de diferencias finitas trabajan razonablemente bien para PVF lineales y no presentan probemas de inestabilidad. Para PVF con EDO no lineales, estos mtodos suelen presentar problemas como
consecuencia de que el sistema resultante es no lineal. En tales situaciones es preferible utilizar el mtodo
de disparo no lineal.
La tcnica del disparo para un PVF no lineal
y 00 (x) = f (x, y(x), y 0 (x)),
x [a, b];
y(a) = ,
y(b) = ,
(7.11)
es parecida a la del mtodo de disparo lineal, salvo que la solucin de un problema no lineal no puede
expresarse como una combinacin lineal de soluciones de dos PVI. En su lugar, aproximamos la solucin del
PVF mediante las soluciones de una sucesin de PVI de la forma
y 00 (x) = f (x, y(x), y 0 (x)),
x [a, b];
y(a) = ,
y 0 (a) = m,
(7.12)
que involucran un cierto parmetro m, que indicar la pendiente de salida de la solucin del problema (de
ah el nombre de mtodo de disparo para esta tcnica, que viene de la analoga con el procedimiento para
disparar contra un blanco fijo, vase [7]). Para ello, elegiremos valores mk del parmetro m de manera que
se garantice
lm y(b; mk ) = y(b) = ,
k
donde y(x; mk ) denota la solucin del PVI (7.12) con m = mk e y(x) la solucin del PVF (7.11). Observemos
que y(x; mk ) satisface todas las condiciones para ser la solucin del PVF (7.11), a falta de que su valor en
x = b sea .
Iniciamos el proceso con un valor del parmetro m = m0 que determina la elevacin con la que se dispara
desde el punto (a, ), de manera que la trayectoria de la bala viene dada por la solucin del PVI
y 00 (x) = f (x, y(x), y 0 (x)),
x [a, b];
y(a) = ,
y 0 (a) = m0 .
Si y(b; m0 ) no est suficientemente cerca de , corregimos nuestra aproximacin tomando una nueva elevacin
m1 , m2 , . . ., y as sucesivamente hasta que y(b; mk ) acierte en con la precisin deseada.
El problema es entonces determinar el parmetro m del PVI de manera que
y(b; m) = 0
(es decir, se trata de resolver la ecuacin anterior en la variable m). Por tanto, todo se reduce a resolver una
ecuacin no lineal, descrita por una funcin de la que solo conocemos su valor en una serie de puntos, para
lo cual se puede aplicar cualquier mtodo numrico de los descritos en el captulo 2. Por ejemplo, podemos
recurrir al mtodo de biseccin, al de la secante o al de Newton. Pero el empleo de un mtodo u otro necesitar
de un mayor o menor conocimiento de la solucin de (7.12) y, quiz, de alguna derivada, lo cual puede hacer
complicada su aplicacin.
Un mtodo sencillo que se puede utilizar para determinar el parmetro m es el mtodo de la secante,
para el que se necesita dar dos valores iniciales m0 y m1 y hallar las siguientes aproximaciones mediante la
iteracin
mk1 mk2
, k = 2, 3 . . .
(7.13)
mk = mk1 (y(b; mk1 ) )
y(b; mk1 ) y(b; mk2 )
A continuacin, conocido el valor de mk en la k-sima iteracin, se vuelve a resolver el PVI (7.12) para
m = mk y, mediante (7.13) con k = k + 1, se obtiene un nuevo valor de la pendiente de disparo m = mk+1 .
Y as hasta alcanzar un mj tal que |y(b; mj ) | < , donde es la cota del error que estemos dispuestos
a cometer. Notemos que para que el mtodo converja, son necesarias buenas elecciones de m0 y m1 . La
convergencia del mtodo de la secante, en condiciones adecuadas, asegura la convergencia del mtodo de
disparo no lineal.
En la prctica, ninguno de los PVI (7.12) se resuelve exactamente, sino que sus soluciones se aproximan
utilizando alguno de los mtodos numricos tratados en el captulo anterior.
Ejemplo. Consideremos el PVF
yy 00 = (y 0 )2 ,
x [1, 3];
y(1) =
2,
y(3) = 2,
87
|y(3; m0 ) 2| = 1.14953128.
ba
2 2
2
0.3, de
y obtenemos
y(3; m2 ) = 2.02207265,
|y(3; m2 ) 2| = 0.02207265.
Se repite el proceso para calcular las siguientes y(3; mk ). Despus de seis intentos, vase [16], se obtiene el
valor m5 = 0.35355340 para el que y(3; m5 ) = 2 hasta 10 cifras decimales.
Comentario adicional.
. Anlogamente, se puede utilizar el mtodo de Newton para hallar una solucin aproximada de la ecuacin y(b; m) = 0 en cada iteracin, pero la necesidad de conocer la
derivada de la solucin en la iteracin anterior lleva consigo tener que resolver un nuevo PVI, aunque
generalmente converge ms rpidamente que utilizando el mtodo de la secante. Ambos mtodos presentan solo convergencia local, ya que ambos requieren buenas aproximaciones iniciales. (Vanse [5, 7, 8]
para la resolucin mediante el mtodo de Newton.)
Nota. Debido a la complejidad de estudio del error en estos mtodos, no vamos a indicar nada sobre el
mismo. Para un estudio detallado de error, puede consultarse [15].
7.6.
El mtodo de diferencias finitas para un PVF general (7.11) es parecido al mtodo que se aplica en los
problemas lineales, excepto que el sistema de ecuaciones resultante es no lineal, y habr que recurrir a los
mtodos numricos correspondientes para su resolucin. Vase [5].
Al igual que en el caso lineal, dividimos el intervalo [a, b] en N + 1 subintervalos cuyos extremos son los
nodos xi = a + ih, para i = 0, 1, . . . , N + 1. Suponiendo que la solucin exacta tiene derivada cuarta acotada,
podemos aproximar y 0 (x) e y 00 (x) por las diferencias finitas centradas adecuadas, discretizar la expresin
resultante para x = xi , i = 1, 2, . . . , N , y obtener
y(xi+1 ) 2y(xi ) + y(xi1 )
y(xi+1 ) y(xi1 )
=
f
x
,
y(x
),
, i = 1, 2, . . . , N.
i
i
h2
2h
Para generar el mtodo de diferencias finitas, suprimimos el trmino de error y aadimos las condiciones de
contorno, lo que transforma el PVF en el sistema no lineal de tamao N N
2u1 u2 + h2 f x1 , u1 , u22h
= 0
u3 u1
2
u1 + 2u2 u3 + h f x2 , u2 , 2h
= 0
..
,
.
N 2
= 0
uN 2 + 2uN 1 uN + h2 f xN 1 , uN 1 , uN u
2h
uN 1
2
uN 1 + 2uN + h f xN , uN , 2h
= 0
88
b1 c1
a b
c2
2
a3 b3
c3
,
J =
..
..
..
.
.
.
aN 1 bN 1 cN 1
aN
donde ai , bi y ci estn definidos, para i = 1, 2, . . . , N , por
h
ai = 1 + fy0 (xi , ui , zi ) , bi = 2 + h2 fy (xi , ui , zi ),
2
bN
h
ci = 1 fy0 (xi , ui , zi ) .
2
El mtodo de Newton para sistemas no lineales requiere que, en cada iteracin, se resuelva un sistema lineal
N N con la anterior matriz tridiagonal J ([5])
2u1 u2 + h2 f x1 , u1 , u22h
v1
u1
u1 + 2u2 u3 + h2 f x2 , u2 , u32h
v
.
..
..
J
=
,
u u
vN 1 uN 2 + 2uN 1 uN + h2 f xN 1 , uN 1 , N 2hN 2
uN 1 + 2uN + h2 f xN , uN , u2hN 1
vN
donde v = (v1 , v2 , . . . , vN )T nos permite actualizar la iteracin del mtodo de Newton
u(k) = u(k1) + v,
T
(k)
(k)
(k)
. Como en este caso la matriz J es tridiagonal, podemos aplicar el mtodo
con u(k) = u1 , u2 , . . . , uN
(0)
de factorizacin de Crout. Las aproximaciones iniciales ui de ui , para cada i = 1, 2, . . . , N , son las ordenadas
correspondientes a las abcisas xi en la lnea recta que pasa por los puntos (a, ) y (b, ).
Se puede demostrar, vase [15], que el mtodo anterior es de orden O(h2 ).
Como es posible que necesitemos una buena aproximacin inicial, debemos establecer una cota del nmero
de iteraciones y, si se excede, buscar una nueva aproximacin o disminuir el tamao de paso.
7.7.
Para la teora bsica se pueden consultar las referencias dadas en el captulo anterior. Tambin se pueden
consultar los siguientes textos: Keller (1992), Fox (1990) o Golub y Ortega (1992).
7.8.
Ejercicios
89
7.8. EJERCICIOS
x [a, b];
y(a) = ,
y(b) = ,
tiene solucin nica si p(x), q(x) y r(x) son continuas en [a, b] y q(x) > 0 en [a, b].
3. Aplquese, usando el mtodo de Euler con paso h = 0.5 para los PVI asociados, el mtodo de disparo
lineal para aproximar la solucin del PVF
y 00 = ex y + (1 + x)y 0 + x3 ;
y(0) = 0,
y(1) = 2.
4. Escrbase la ecuacin en diferencias lineales con N = 9 que aproxima la solucin del PVF
y 00 + 3y 0 + 2y = 4x2 ;
y(1) = 1,
y(2) = 6.
C1
C2
h.
1
4
y(0) = 0,
y(1) = 2.
Comprense los resultados con la solucin exacta y(x) = e2 (e4 1)1 (e2x e2x ) + x.
8. Si aplicamos el mtodo de disparo no lineal al PVF
y 00 =
y
2
2
(y 0 ) ;
2 y
y(0) = 1,
y(1) = 1.5,
y(1) = 0,
y(2) = ln 2.
ba
y m1 = m0 +
1
;
x
y(b;m0 )
.
ba
y(2) =
1
+ ln 2,
2
y(3) =
1
+ ln 3,
3
1
x
+ ln x.
90
y(1) =
1
,
2
y(0) =
1
,
3
mediante el mtodo de diferencias finitas no lineales con h = 0.25. Comprense los resultados con la
1
.
solucin exacta y(x) = x+3
12. Condiciones de contorno de Neumann. Las condiciones de contorno que aparecen en los PVF se pueden
especificar de diferentes maneras. Si en vez de ser dos valores de y, son dos valores de y 0 de la forma
y 0 (a) = e y 0 (b) = , hablaremos de condiciones de contorno de Neumann. En estos problemas, los
mtodos de diferencias finitas se utilizan para aproximar la EDO en los puntos interiores. Sin embargo,
el sistema algebraico que se obtiene no se puede resolver porque la solucin en los puntos extremos
no est dada (luego hay ms incgnitas que ecuaciones). Las ecuaciones adicionales necesarias para
resolver el problema se obtienen aproximando las condiciones de contorno mediante diferencias finitas e
incorporando las ecuaciones resultantes a las ecuaciones algebraicas obtenidas para los puntos interiores.
Aplquese lo anterior al PVF
y 00 (x) +
1 0
y (x) = 1;
x
y 0 (0) = 0,
utilizando diferencias finitas centradas y asegurndose de que el orden del error de truncamiento de las
condiciones de Neumann es compatible con el de la EDO.
13. Condiciones de contorno mixtas. Si las condiciones de contorno son de la forma y 0 (a) + c1 y(a) = e
y 0 (b) + c2 y(b) = , donde c1 y c2 son constantes, reciben el nombre de condiciones de contorno mixtas.
Aproxmese el PVF
y 00 (x) = y(x) + ex ; y(0) = 1, y 0 (1) = 1
utilizando diferencias finitas centradas para todas las derivadas y dividindose el dominio de integracin en cinco subintervalos. Comprense los resultados numricos con la solucin exacta y(x) =
e(1+2 e) x
1e e2 x
+ x2 ex .
1+e2 e + 1+e2 e
14. Si la EDO lineal y 00 (x) p(x)y 0 (x) q(x)y(x) = r(x) est sujeta a las condiciones contorno y(a) = e
y 0 (b) + cy(b) = , la combinacin lineal y(x) = y1 (x) + y2 (x), donde y1 (x) es la solucin del problema
(7.1) e y2 (x) la del problema (7.2), satisface la condicin y(a) = . Si queremos aplicar el mtodo del
disparo lineal, necesitamos encontrar para que y(x) satisfaga y 0 (b) + cy(b) = . Si y20 (b) + cy2 (b) 6= 0,
hay una nica solucin dada, la dada por
y10 (b) cy1 (b)
y2 (x).
y20 (b) + cy2 (b)
y(x) = y1 (x) +
Si por el contrario y20 (b) + cy2 (b) = 0, es fcil ver que y(x) = y1 (x) satisface ambas condiciones de
contorno. Aproxmese entonces la solucin del PVF del ejercicio anterior utilizando el mtodo de disparo
lineal.
15. Para poder aproximar la solucin del PVF
y 00 (x) p(x)y 0 (x) q(x)y(x) = r(x);
y 0 (a) + c1 y(a) = ,
y 0 (b) + c2 y(b) = ,
mediante el mtodo del disparo lineal, los dos PVI que hay que resolver son:
y 00 (x) = p(x)y 0 (x) + q(x)y(x) + r(x),
y 00 (x) = p(x)y 0 (x) + q(x)y(x),
x [a, b];
x [a, b];
y(a) = 0,
y(a) = 1,
y 0 (a) = ,
y 0 (a) = c1 .
La combinacin lineal y(x) = y1 (x) + y2 (x), donde y1 (x) es la solucin del primer PVI e y2 (x) la del
segundo, satisface la condicin y 0 (a) + c1 y(a) = . Necesitamos entonces encontrar, si es posible, para
que y(x) satisfaga y 0 (b) + c2 y(b) = . Si y20 (b) + c2 y2 (b) 6= 0, hay una nica solucin dada, la dada por
y(x) = y1 (x) +
91
7.8. EJERCICIOS
y 0 (0) + 3y(0) = 7,
7y 0 (1) + y(1) = 8,
b) y + y = 0;
y(0) = y(1) = 0,
y 0 (0) = y(1) = 0,
c) y 00 2y 0 + (1 + )y = 0;
y(0) = 0,
y(1) = 0.
Determnense los valores de para los cuales existen soluciones no triviales (y 6= 0) y escrbanse stas
en funcin de .
Captulo 8
Introduccin
Dedicamos este captulo a presentar una breve introduccin de algunas de las tcnicas que aproximan las
soluciones de EDP de segundo orden con coeficientes constantes y dos variables independientes, mostrando
cmo pueden aplicarse estas tcnicas a ciertos problemas fsicos bien conocidos. Estas ecuaciones, como
bien sabemos, son de tipo elptico, parablico o hiperblico. El ejemplo tpico de ecuacin elptica es la
ecuacin de Laplace (potencial) para la distribucin de la temperatura en estado de equilibrio en una regin
bidimensional, el de ecuacin parablica es la ecuacin del calor, que describe la distribucin de temperatura
en una varilla fina, y el de ecuacin hiperblica es la ecuacin de ondas para una cuerda vibrante. Las tcnicas
numricas para resolver estas EDP son principalmente de dos tipos: mtodos de diferencias finitas y mtodos
de elementos finitos.
Comenzaremos describiendo los mtodos numricos basados en la aproximacin por diferencias finitas,
que son de dos tipos: explcitos e implcitos. En los primeros, las incgnitas se van calculando sucesivamente,
en trminos de valores conocidos o variables ya calculadas. En los segundos, hay que resolver un sistema de
ecuaciones en cada paso para determinar las incgnitas. Los aplicaremos a las ecuaciones elpticas, parablicas
e hiperblicas utilizando respectivamente la ecuacin de Laplace, la ecuacin del calor y la ecuacin de
ondas como ejemplos. Las tcnicas aqu desarrolladas se basan en reemplazar las derivadas parciales por
aproximaciones en diferencias finitas que conducen a un sistema de ecuaciones algebraicas para los valores
de la funcin incgnita en una coleccin de puntos.
Terminamos la leccin con una breve introduccin al mtodo de los elementos finitos (abreviadamente,
MEF). Una ventaja de este mtodo sobre los mtodos de diferencias finitas es la relativa facilidad con que se
manejan las condiciones de contorno del problema. Muchos problemas fsicos tienen condiciones de contorno
que incluyen derivadas y se formulan sobre regiones cuya frontera es una curva irregular. Condiciones de
contorno de este tipo son difciles de manejar utilizando tcnicas de diferencias finitas porque en cada condicin
de contorno que incluya una derivada, sta se debe aproximar mediante un cociente incremental en una malla
de puntos y la irregularidad de la frontera hace que sea difcil situar los puntos de la malla. En el MEF las
condiciones de contorno aparecen como integrales en un funcional que se debe minimizar, de manera que
el procedimiento de construccin es independiente de la condicin de contorno concreta de cada problema.
Ilustraremos este mtodo con la ecuacin de Laplace.
8.2.
94
u(x, d) = f2 (x),
a x b,
u(a, y) = g1 (y),
u(b, y) = g2 (y),
c y d.
El mtodo que vamos a utilizar es una adaptacin del mtodo de diferencias finitas para problemas de
contorno lineales tratado en el captulo 6.
En primer lugar, tomamos dos nmeros naturales n y m y definimos los tamaos de paso h y k mediante
dc
h = ba
n y k = m . Dividimos el intervalo [a, b] en n partes iguales de anchura h y el intervalo [c, d] en m
partes iguales de anchura k. Esto nos permite hacer una malla cuadriculada sobre el rectngulo R trazando
lneas verticales y horizontales por los puntos (xi , yj ), donde
xi = a + ih,
yj = c + jk,
i = 0, 1, . . . , n,
j = 0, 1, . . . , m,
ym
...
y2
y1
y0 ,x0
x1
x3
...
xn
Sustituyendo estas frmulas en la ecuacin de Laplace y eliminando los trminos de error O(h2 ) y O(k 2 ),
obtenemos las siguientes ecuaciones
u(xi+1 , yj ) 2u(xi , yj ) + u(xi1 , yj ) u(xi , yj+1 ) 2u(xi , yj ) + u(xi , yj1 )
+
= 0,
h2
k2
para cada i = 1, 2, . . . , n 1 y j = 1, 2, . . . , m 1. Las condiciones de contorno son
u(xi , y0 ) = f1 (xi ),
u(xi , ym ) = f2 (xi ),
i = 1, 2, . . . , n 1,
u(x0 , yj ) = g1 (yj ),
u(xn , yj ) = g2 (yj ),
j = 0, 1, . . . , m.
Si denotamos por ui,j las aproximaciones de los valores u(xi , yj ), obtenemos la ecuacin en diferencias
que define el mtodo de diferencias finitas para la ecuacin de Laplace (vase [7]), cuyo error es de
orden O(h2 + k 2 ):
#
"
2
2
h
h
+ 1 ui,j (ui1,j + ui+1,j )
(ui,j1 + ui,j+1 ) = 0,
2
k
k
95
ui,m = f2 (xi ),
i = 1, 2, . . . , n 1,
u0,j = g1 (yj ),
un,j = g2 (yj ),
j = 0, 1, . . . , m.
(xi , yj ),
(xi+1 , yj ),
(xi , yj1 ) y
(xi , yj+1 ).
Si reporducimos la porcin de la malla en la que se localizan estos puntos (vase la figura 8.2), vemos que
cada ecuacin relaciona las aproximaciones en una regin estrellada alrededor de (xi , yj ).
u(x, d) = f2 (x)
Hi,j+1L
Hi-1,jL
u(a, y) = g1 (y)
Hi,jL
Hi+1,jL
u(b, y) = g2 (y)
Hi,j-1L
u(x, c) = f1 (x)
Figura 8.2: Forma esquemtica para el mtodo de diferencias finitas (ecuacin de Laplace).
Obsrvese que el mtodo anterior proporciona una sistema lineal (n 1)(m 1) (n 1)(m 1), cuyas
incgnitas son las aproximaciones ui,j de u(xi , yj ) en los puntos de malla interiores. Este sistema es de gran
tamao y su matriz tiene a lo sumo cinco elementos no nulos en cada fila. Para un uso general, las tcnicas
iterativas representan a menudo la mejor aproximacin a la solucin de tales sistemas de ecuaciones. Sin
embargo, si el nmero de ecuaciones no es demasiado grande (del orden de 100 o menor), una solucin directa
de estos sistemas es prctica, pues el hecho de que la matriz sea definida positiva asegura su estabilidad frente
a los errores de redondeo.
Ejemplo. Ilustramos a continuacin la solucin de la ecuacin de Laplace cuando n = m = 4. Consideremos
el problema de determinar la distribucin estacionaria del calor en una fina lmina cuadrada de metal de 2
metros de lado. Dos lados adyacentes se mantienen a 300 C y 200 C, mientras que la temperatura en los
otros dos lados se mantiene a 100 C en uno y en el otro crece linealmente de 0 C a 400 C en el vrtice donde
dichos lados se encuentran. El problema se expresa como
uxx + uyy = 0,
(
0 < x < 2,
0 < y < 2,
0 x 2,
u(x, 0) = 300,
u(x, 2) = 100,
u(0, y) = 200,
u(2, y) = 200y, 0 y 2.
con
Tomando n = m = 4 para este problema (h = k = 0.5), la malla resultante se muestra en la figura 8.3 y
la correspondiente ecuacin en diferencias es
4ui,j ui+1,j ui1,j ui,j1 ui,j+1 = 0,
i = 1, 2, 3,
j = 1, 2, 3.
Expresando esto y etiquetando fila por fila, empezando por la esquina inferior izquierda, los valores
desconocidos ui,j en los nueve puntos interiores de la malla por v1 , v2 , . . . , v9 , obtenemos que el sistema lineal
96
u(x, 2) = 100
u(0, y) = 200
v7
v8
v9
v4
v5
v6
v1
v2
v3
u(2, y) = 200y
u(x, 0) = 300
Figura 8.3: Malla de orden 5 5 para una ecuacin de Laplace del ejemplo.
asociado al problema es
0 1
4 1
0 1
0 1
0 1
0 1
0 1
0 1
4 1
0 1
0 1
1
4 1
0 1
v1
v2
v3
v4
v5
v6
v7
v8
v9
u0,1 + u1,0
u2,0
u +u
4,1
3,0
u0,2
=
u4,2
u0,3 + u1,4
u2,4
u4,3 + u3,4
500
300
400
200
0
,
200
300
100
=
=
=
=
=
=
400
donde el vector de los trminos independientes se ha calculado utilizando las condiciones de contorno.
Utilizando el mtodo de eliminacin de Gauss, vase [16], la temperatura en los puntos interiores de la
malla es
v1 = 233.929, v2 = 235.714, v3 = 208.929,
v4 = 200.000,
v5 = 200.000,
v6 = 200.000,
v7 = 166.071,
v8 = 164.286,
v9 = 191.071.
Por supuesto, con un nmero tan pequeo de puntos de malla no se puede esperar una exactitud alta. Si
elegimos un valor de h ms pequeo, la exactitud debera mejorar. La figura 8.4 muestra la aproximacin
numrica anterior de la solucin.
8.3.
t > 0,
t > 0,
0 x `,
(condiciones de contorno),
(condicin inicial).
El enfoque que vamos a utilizar para aproximar la solucin de este problema emplea diferencias finitas de
una manera parecida a como lo hemos hecho en la seccin anterior. Empezamos tomando un nmero natural
97
x
0
Figura 8.4: Representacin grfica de la solucin numrica de la ecuacin de Laplace del ejemplo.
`
m > 0 y definiendo h = m
. Luego elegimos un tamao de paso k para la variable temporal t. Los puntos de
malla en este caso son (xi , tj ), donde xi = ih, para i = 0, 1, . . . , m y tj = jk, para j = 0, 1, . . .
Construimos el mtodo de diferencias utilizando la frmula de Taylor en t para generar la frmula de
diferencias progresivas
u(xi , tj+1 ) u(xi , tj )
+ O(k),
ut (xi , tj ) =
k
y la frmula de Taylor en x para generar la frmula de diferencias centradas
uxx (xi , tj ) =
Sustituyendo estas ecuaciones en la EDP, denotando las aproximaciones de los valores u(xi , tj ) por ui,j y
despreciando los trminos de error O(k) y O(h2 ), obtenemos la correspondiente ecuacin en diferencias
ui,j+1 ui,j
ui1,j 2ui,j + ui+1,j
=
.
k
h2
Por comodidad, tomamos = k
h2 en la ecuacin en diferencias anterior y reordenamos los trminos para
obtener la ecuacin en diferencias progresiva
ui,j+1 = (1 2)ui,j + (ui1,j + ui+1,j ) ,
i = 1, 2, . . . , m 1,
j = 0, 1, . . .
En forma esquemtica, la ecuacin anterior puede verse en la figura 8.5. La solucin en cada punto (i, j + 1)
del nivel (j + 1)-simo de tiempo se puede expresar en trminos de los valores de la solucin en los puntos
(i 1, j), (i, j) y (i + 1, j) del nivel anterior de tiempo. Fijando un instante final T , elegimos un nmero de
subintervalos temporales n y con la expresin anterior vamos calculando la solucin en cada instante hasta
llegar a T . Este procedimiento se conoce como mtodo de diferencias finitas progresivas o mtodo
explcito clsico, es un mtodo explcito (ya que todas las aproximaciones pueden hallarse directamente a
partir de la informacin dada por las condiciones iniciales y las de contorno) y de orden O(k + h2 ).
Los valores de la condicin inicial u(xi , 0) = f (xi ), para i = 0, 1, . . . , m, se utilizan en la ecuacin en
diferencias para hallar los valores de ui,1 , para i = 1, 2, . . . , m 1. Las condiciones de contorno u(0, t) =
u(`, t) = 0, implican que u0,1 = um,1 = 0, as que podemos determinar todas las aproximaciones de la forma
ui,1 . Aplicando el mismo procedimiento, una vez que se conocen todas las aproximaciones ui,1 , podemos
calcular los valores ui,2 , ui,3 , . . . , ui,m1 de forma parecida.
La naturaleza explcita del mtodo implica que la matriz (m 1) (m 1) asociada es tridiagonal:
1 2
1 2
..
..
..
.
.
.
1 2
1 2
98
Hi,j+1L
u(0, t) = 0
u(`, t) = 0
Hi-1,jL
Hi,jL
Hi+1,jL
u(x, 0) = f (x)
Figura 8.5: Forma esquemtica para el mtodo explcito clsico (ecuacin del calor).
Si definimos u(0) = (f (x1 ), f (x2 ), . . . , f (xm1 ))T y
u(j) = (u1,j , u2,j , . . . , um1,j )T ,
para cada j = 1, 2, . . .
para cada j = 1, 2, . . .
de manera que u(j) se obtiene a partir de u(j1) mediante una simple multiplicacin matricial
Comentario adicional.
. El mtodo explcito anterior no necesariamente produce buenos resultados.
Puede verse en [16] que el mtodo no refleja la exactitud esperada de orden O(k + h2 ) para un problema
concreto. Esto se debe a la condicin de estabilidad del mtodo explcito. Hay que hacer elecciones
apropiadas para los tamaos de paso h y k que determinan los valores de . Se puede demostrar, vase
[15], que el mtodo explcito es estable si es tal que 0 < 12 . Esto significa que el tamao de
h2
paso k debe cumplir que k 2
, de manera que si esto no se cumple, puede ocurrir que los errores
introducidos en una fila j, {uij }, se incrementen en alguna fila posterior {uir } para algn r > j.
Para obtener un mtodo ms estable, consideraremos un mtodo implcito. La ecuacin en diferencias
finitas de este mtodo se obtiene al discretizar la EDP en dos instantes y hacer la media. As, si en la EDP
reemplazamos ut (x, t) por una diferencia progresiva y uxx (x, t) por el valor medio de una diferencia centrada
en los pasos de tiempo j y j + 1, da
ui,j+1 ui,j
ui1,j 2ui,j + ui+1,j
ui1,j+1 2ui,j+1 + ui+1,j+1
=
+
,
k
2
h2
h2
que tiene un error de orden O(k 2 + h2 ). Tomando de nuevo =
puede escribir ahora como
k
h2 ,
2(1 + )
2(1 + )
2(1 + )
A=
..
j = 0, 1, 2, . . .
..
..
2(1 + )
2(1 + )
99
u(0, t) = 0
u(`, t) = 0
Hi-1,jL
Hi,jL
Hi+1,jL
u(x, 0) = f (x)
Figura 8.6: Forma esquemtica para el mtodo de Crank-Nicolson (ecuacin del calor).
B=
2(1 )
2(1 )
2(1 )
..
..
..
2(1 )
2(1 )
Obsrvese que el trmino del miembro derecho de la ecuacin matrical anterior es conocido, as que esta
ecuacin es un sistema lineal tridiagonal. La matriz tridiagonal A es definida positiva y diagonal estrictamente
dominante, as que es no singular y el sistema de ecuaciones se puede entonces resolver mediante cualquier
mtodo descrito en el captulo 1.
Ejemplo. Consideramos la ecuacin del calor
ut = uxx = 0,
(
u(0, t) = u(1, t) = 0,
0 < x < 1,
t > 0,
t > 0,
(condiciones de contorno),
con
u(x, 0) = sen x,
0 x 1,
(condicin inicial).
u
1,1
4.5 1.25
0
0
u
1.25
4.5 1.25
0
2,1
0 1.25
4.5 1.25
u
3,1
0
0 1.25
4.5
u4,1
i = 1, 2, 3, 4.
0.5u1,0 + 1.25u2,0
1.25u3,0 0.5u4,0
0.894928
1.448024
=
,
1.448024
0.894928
i = 1, 2, 3, 4.
100
La solucin aproximada en t = 0.5, despus de 10 pasos de tiempo, puede encontrarse en [16]. La figura 8.7
muestra la aproximacin numrica de la solucin.
x
0
1
0.8
0.6
0.4
0.2
t
0.5
Figura 8.7: Representacin grfica de la solucin numrica de la ecuacin del calor del ejemplo.
8.4.
0 < x < `,
t > 0,
t > 0,
(condiciones de contorno),
ut (x, 0) = g(x),
0 x `,
(condiciones iniciales).
`
, los
Tomamos un nmero natural m > 0 y un tamao de paso para la variable temporal k > 0. Con h = m
puntos de malla (xi , tj ) estn dados por xi = ih y tj = jk, para cada i = 0, 1, . . . , m y j = 0, 1, . . . El mtodo
de diferencias finitas se obtiene utilizando las frmulas de diferencias centradas para las derivadas parciales
segundas dadas por
u(xi , tj1 ) 2u(xi , tj ) + u(xi , tj+1 )
utt (xi , tj ) =
+ O(k 2 ),
k2
u(xi1 , tj ) 2u(xi , tj ) + u(xi+1 , tj )
uxx (xi , tj ) =
+ O(h2 ).
h2
Sustituyendo estas frmulas en la ecuacin de ondas, denotando las aproximaciones de los valores u(xi , tj )
por ui,j y despreciando los trminos de error O(k 2 ) y O(h2 ), obtenemos la ecuacin en diferencias de orden
O(k 2 + h2 )
ui,j1 2ui,j + ui,j+1
ui1,j 2ui,j + ui+1,j
= 2
.
2
k
h2
Tomando = k/h, podemos despejar ui,j+1 , la aproximacin ms avanzada en el tiempo, para obtener la
frmula explcita
i = 1, 2, . . . , m 1,
j = 1, 2, . . .
Esta frmula se muestra de forma esquemtica en la figura 8.8. La solucin en cada punto (i, j + 1) del nivel
(j + 1)-simo de tiempo est expresada en trminos de los valores solucin en los puntos (i 1, j), (i, j),
(i + 1, j) y (i, j 1) de los dos niveles de tiempo precedentes. Dicha frmula tiene problemas de estabilidad
y se puede demostrar, vase [15], que el mtodo es estable si 0 < 1.
Observemos que la expresin anterior nos permite obtener la solucinen el instante tj+1 a partir de la
solucin en los instantes tj y tj1 . Es decir, para calcular la entrada ui,j+1 en el nivel de tiempo (j + 1),
debemos conocer las entradas de los niveles de tiempo j y (j 1). Esto supone un pequeo problema de
partida porque solo conocemos la primera fila de la condicin inicial ui,0 = f (xi ). Para obtener la segunda
101
Hi,j+1L
Hi-1,jL
Hi,jL
u(0, t) = 0
Hi+1,jL
u(`, t) = 0
Hi,j-1L
u(x, 0) = f (x),
ut (x, 0) = g(x)
Figura 8.8: Forma esquemtica para el mtodo de diferencias finitas con tres niveles (ecuacin de ondas).
fila corresponiente a ui,1 , hay que utilizar la segunda condicin inicial ut (x, 0) = g(x). Una posibilidad es
sustituir ut por una aproximacin en diferencias progresivas
ut (xi , 0) =
u(xi , t1 ) u(xi , 0)
+ O(k),
k
que nos permite obtener una ecuacin en diferencias finitas que da una aproximacin para la segunda fila con
un error de truncamiento de solo O(k). Para obtener una mejor aproximacin, consideramos el desarrollo en
serie de Taylor de u(x, t) alrededor del punto (xi , 0)
u(xi , t1 ) = u(xi , k) = u(xi , 0) + kut (xi , 0) +
k2
utt (xi , 0) + O(k 3 ).
2
k 2 2 00
f (xi ) + O(k 3 ).
2
Si no es posible calcular f 00 (xi ) directamente, podemos reemplazar f 00 (xi ) en la ltima ecuacin por una
frmula de diferencias centradas
f 00 (xi ) =
En este caso, la aproximacin numrica en la segunda fila est dada por la frmula
ui,1
=
=
k 2 2
(f (xi1 ) 2f (xi ) + f (xi+1 ))
2h2
2
(1 2 )f (xi ) + (f (xi1 ) + f (xi+1 )) + kg(xi ), i = 1, 2, . . . , m 1,
2
f (xi ) + kg(xi ) +
0 < x < 1,
t > 0,
t > 0,
(condiciones de contorno),
ut (x, 0) = 0,
0 x 1,
(condiciones iniciales).
102
j = 1, 2, . . .
sen(0.2i),
i = 0, 1, 2, 3, 4, 5,
ui,1
1
2 (f (0.2(i
Luego,
u1,1 = 0.47552826,
u2,1 = 0.76942088,
u3,1 = 0.76942088,
u4,1 = 0.47552826.
i = 1, 2, 3, 4,
u2,2
u3,2
u4,2
La solucin aproximada en t = 0.5, despus de 10 pasos de tiempo, junto con una representacin en tres
dimensiones, se puede encontrar en [16]. La figura 8.9 muestra la aproximacin numrica de la solucin.
x
1
0
1
0.5
0
-0.5
-1
0
0.5
Figura 8.9: Representacin grfica de la solucin numrica de la ecuacin de ondas del ejemplo.
8.5.
En las secciones anteriores se han descrito mtodos de diferencias finitas para resolver problemas de
contorno con EDP. Para estos mtodos los puntos de la malla se suelen colocar uniformemente espaciados
dentro de la regin. Si los puntos no estn exactamente en las fronteras, se requieren ajustes especiales para
los puntos adyacentes a la frontera y los errores son mayores cuando se hace esto.
En esta seccin vamos a introducir un mtodo diferente especialmente valioso para regiones irregulares: el
mtodo de los elementos finitos (abreviadamente, MEF). En este mtodo los puntos pueden estar espaciados
de manera no uniforme. Esto no solo resuelve el problema de hacer coincidir los puntos con una frontera, sino
que tambin facilita la colocacin ms estrecha de los puntos entre s en partes de la regin donde la solucin
del problema vara rpidamente, con lo que se mejora la exactitud. Hoy da matemticos e ingenieros utilizan
ampliamente el MEF.
103
Introducimos a continuacin el MEF para EDP elpticas. La EDP elptica que vamos a resolver en esta
seccin es la ecuacin bidimensional de Laplace,
uxx + uyy = 0,
con (x, y) S, donde S es una regin plana.
Un ejemplo tpico es la determinacin de la distribucin del potencial elctrico u(x, y) en el espacio
entre dos conductores rectangulares. Dada la simetra del problema, solo una cuarta parte de la regin real
del problema necesita analizarse. En este caso, surgen dos clases de condiciones en la frontera (vase la
figura 8.10): valores de potencial constante a lo largo de las superficies conductoras (llamadas condiciones de
Dirichlet) y valores nulos de derivadas normales a lo largo de los planos de simetra. Es decir, se tienen las
condiciones en los conductores
(
0 en el conductor interior,
u(x, y) =
1 en el conductor exterior,
y en las superficies normales a los circuitos
u
= 0.
n
y
u(x; y )
=1
3
u
n
=0
2
PSfrag repla
ements
u(x; y )
=0
u
n
=0
3
El principio de la energa de potencial mnima dice que u(x, y) es solucin si y solo si minimiza la funcin
energa:
Z Z " 2 2 #
1
u
u
I[u] =
+
dxdy,
2
x
y
S
donde S es la regin plana de la figura 8.10.
El MEF minimiza la funcin energa I[u] asociada al potencial u(x, y) suponiendo que el pontencial u(x, y)
est dado por una combinacin lineal de funciones elementales (usualmente polinomios de grado fijo en las
variables x e y) con coeficientes a determinar y definidas a trozos sobre una particin de S que consideremos.
En nuestro caso, utilizaremos los denominados elementos triangulares de primer orden. Para ello, dividimos la regin S en tringulos Ti como en la figura 8.11 (cuantos ms tringulos, mejor ser la aproximacin)
y denotamos los vrtices por Ei .
104
E2
T8
T9
T5
T4
E1
T7
T1
E7
E6
T10
E4
E3
T2
T6
T11
T12
T3
E5
E8
8
X
i ui (x, y),
i=1
donde i son constantes, el nmero de sumandos coincide con el nmero de vrtices Ei y ui (x, y) es tal que
1. sobre cada tringulo Ti , son polinomios lineales en x e y de la forma a + bx + cy, donde a, b
y c son constantes distintas por lo general para cada tringulo,
2. ui (Ei ) = 1,
3. ui (Ej ) = 0 para j 6= i.
Si imponemos las condiciones en la frontera, que conocemos para la solucin u(x, y), para la aproximacin
U (x, y), se tiene que
U (E2 ) = U (E3 ) = U (E4 ) = U (E5 ) = 1
6 = 7 = 8 = 0,
por lo que
U (x, y) = 1 u1 (x, y) +
5
X
ui (x, y).
i=2
A continuacin, se calculan las funciones ui . Calculamos como ejemplo la funcin u1 . Sobre cada tringulo
Ti la funcin u1 es de la forma
u1 (x, y) = ai + bi x + ci y,
para (x, y) Ti .
Hay dos clases de tringulos: los que contienen a E1 , que son T1 y T2 , y los que no lo contienen, que son el
resto.
105
a1 + b1 0 + c1 2.5
1,
u1 (E6 )
a1 + b1 0 + c1 2
0,
u1 (E7 )
a1 + b1 2 + c1 2
0,
cuya solucin es
a1 = 4,
b1 = 0,
c1 = 2.
Luego,
u1 (x, y) = 4 + 2y,
para (x, y) T1 .
En T2 los vrtices son E1 = (0, 2.5), E2 = (0, 3) y E3 = (2, 3), de manera que
u1 (E1 )
a2 + b2 0 + c2 2.5
1,
u1 (E2 )
a2 + b2 0 + c2 3
0,
u1 (E3 )
a2 + b2 2 + c2 3
0.
La solucin es
a2 = 6,
b2 = 0,
c2 = 2,
por lo que
u1 (x, y) = 6 2y,
para (x, y) T2 .
En los tringulos Ti que no contienen a E1 los correspondientes sistemas de ecuaciones que resultan son
homogneos (todos los trminos independientes son 0) y libres, de forma que la solucin es
ai = 0,
bi = 0,
ci = 0
y, en consecuencia,
u1 (x, y) = 0,
para (x, y) Ti y E1
/ Ti .
Resumiendo,
4 + 2y para (x, y) T1
u1 (x, y) = 6 2y para (x, y) T2
0 para (x, y) Ti y i 6= 1, 2.
(8.1)
!2
!2
Z Z
i=5
i=5
X
X
1
ui
u1
ui
1 u1 +
=
+ 1
+
dxdy.
2
x
x
y
y
S
i=2
i=2
Para encontrar el mnimo de I[U ] es necesario resolver
I
= 0.
1
Al derivar, obtenemos
!
!#
i=5
i=5
u1
u1 X ui
u1
u1 X ui
1
+
+
1
+
dxdy
x
x
x
y
y
y
S
i=2
i=2
#
Z Z "
i=5 Z Z
X
u1 u1
u1 u1
ui u1
ui u1
= 1
+
dxdy +
+
dxdy,
x x
y y
x x
y y
S
S
i=2
I
=
1
Z Z "
106
1 =
Pi=5 R R ui u1
i=2
x x
R R u1 u1
S
x x
ui u1
y y
u1 u1
y y
dxdy
.
dxdy
u1
= 2,
y
y en el tringulo T2
u1
= 0,
x
u1
= 2.
y
T2
Z Z
dxdy + 4
T1
dxdy.
T2
Obsrvese que las dos ltimas integrales son las reas de T1 y T2 respectivamente, que son igual a 1/2 (vase
la figura 8.11). En consecuencia,
Z Z
u1 u1
u1 u1
+
dxdy = 4.
x x
y y
S
Terminamos dejando para los estudiantes dos ejercicios. El primero, el clculo de las integrales
Z Z
ui u1
ui u1
+
dxdy, i = 2, 3, 4, 5.
x x
y y
S
Y el segundo, el clculo del valor 1 que minimiza la funcin energa y la solucin aproximada U (x, y).
8.6.
El tratamiento numrico dado en este captulo a la resolucin de EDP es solo una muy breve introduccin
a un rea muy extensa de investigaciones y aplicaciones. A continuacin ofrecemos solo algunos de los textos
que proporcionan una fuente excelente para un estudio posterior de estos tpicos: Golub y Ortega (1992),
Larsson y Thome (2003), Grossmann y otros (2007) y Gockenbach (2011) y Davis (2011).
8.7.
Ejercicios
1. Determnese el sistema de cuatro ecuaciones con cuatro incgnitas v1 , v2 , v3 y v4 que se usa para
calcular las aproximaciones a la solucn de la ecuacin bidimensional de Laplace en el cuadrado D =
{(x, y)/ 0 x 3, 0 y 3}. Los valores en la frontera son
u(x, 0) = 10,
u(x, 3) = 90, 0 x 3,
u(0, y) = 70,
u(3, y) = 0,
0 y 3.
107
8.7. EJERCICIOS
2. Calclense las tres primeras filas de la malla que se construye para la ecuacin de Poisson
u(x, 0) = x3 , u(x, 1) = x3 3x + 1, 0 x 1,
u(0, y) = y, u(1, y) = 2y + 1, 0 y 1,
utilizando una malla con h = k = 0.1. Realcense las operaciones a mano (o con calculadora).
3. Utilcese el mtodo explcito clsico para calcular las tres primeras filas de la malla que se construye
para la siguiente ecuacin del calor
u(x, 0) = sen x, 0 x 1.
Tmese h = 0.1 y k = 0.01. Realcense las operaciones a mano (o con calculadora).
4. Obsrvese en el mtodo explcito clsico para la ecuacin del calor que si la eleccin de h = k = 21 da
un valor de mayor que 21 , tendramos que aumentar h o disminuir k. Adems, si elegisemos = 12
y luego hicisemos una eleccin conveniente de k, podra obtenerse una eleccin irracional de h que no
produjese un nmero entero de subintervalos. Entonces, si = 3, ` = 4.2 y se obtiene = 14 , cules
deberan ser las elecciones de h y k si queremos aproximar u(x, 3)?
5. Sea k =
h2
2 .
a) Utilcese la igualdad anterior en la frmula de la ecuacin en diferencias del mtodo de CrankNicolson y simplifquese la ecuacin resultante.
b) Exprsense las ecuaciones del apartado anterior matricialmente.
c) Es la matriz correspondiente al apartado anterior diagonal estrictamente dominante?
6. Sea la ecuacin parablica ut uxx = h(x).
a) Desarrllese el mtodo de diferencias finitas progresivas para la ecuacin anterior.
b) Desarrllese el mtodo implcito clsico para la ecuacin anterior.
c) Desarrllese el mtodo de Crank-Nicolson para la ecuacin anterior.
7. Si en la ecuacin del calor reemplazamos ut (x, t) por una diferencia regresiva y uxx (x, t) por una
diferencia centrada en el j-simo paso de tiempo, obtenemos el mtodo implcito clsico para la ecuacin
del calor. Demustrese que dicho mtodo est dado por
ui,j1 = ui1,j + (1 + 2)ui,j ui+1,j ,
donde =
k
h2 .
i = 1, 2, . . . , m 1,
j = 1, 2, . . . ,
8. Utilcese el mtodo implcito clsico obtenido en el ejercicio anterior para aproximar la solucin del
problema
1
ut = 16
uxx , 0 < x < 1, t > 0,
u(x, 0) = 2 sen(2x), 0 x 1,
con m = 3 y k = 0.01. Calclense las tres primeras filas de la malla y comprense los resultados con la
2
solucin exacta u(x, t) = 2 e( 2 ) t sen(2x).
9. Desarrllese un mtodo de diferencias finitas para resolver la EDP parablica no lineal uxx = u ut .
108
10. La ecuacin del calor en dos dimensiones espaciales es ut = (uxx + uyy ), que modela la distribucin de
temperatura sobre la superficie de una placa calentada. Sin embargo, ms que caracterizar la distribucin
en un estado estacionario, como se hace para la ecuacin de Laplace, esta ecuacin ofrece un medio
para calentar la distribucin de temperatura de la placa conforme cambia con el tiempo. Obtngase
una solucin explcita sustituyendo en la EDP las aproximaciones por diferencias finitas, tal y como se
hace para la ecuacin del calor en una dimensin espacial. Demustrese que son necesarios cinco puntos
en un instante anterior para calcular cada nuevo valor de uij .
11. Condiciones aisladas para la ecuacin del calor. La forma de las condiciones de contorno depende del
hecho fsico que se describa. Por ejemplo, si se mantiene aislado un extremo de la varilla en la ecuacin
del calor, entonces la derivada parcial ux es cero en ese extremo; es decir, ux (0, t) = 0 o ux (`, t) = 0.
Desarrllese el mtodo explcito para la ecuacin del calor cuando la temperatura est dada en un
extremo (x = 0), mientras que el otro extremo (x = `) est aislado. (Se recomienda, para la condicin
de contorno que se d en la derivada, aadir un punto ficticio a la malla; habitualmente se extiende la
malla para incluir un punto en cada paso de tiempo.)
12. Utilcese el mtodo de diferencias finitas para calcular las tres primeras filas de la solucin aproximada
de la siguiente ecuacin de ondas
( 5x
para 0 x 53 ,
2 ,
u(x,
0)
=
15
3
4 (1 x), para 5 x 1,
ut (x, 0) = 0, 0 x 1.
Tmese h = 0.2 y k = 0.1. Realcense las operaciones a mano (o con calculadora).
13. En la ecuacin utt = 9 uxx , qu relacin debe existir entre h y k para que la ecuacin en diferencias
que se obtenga est dada por ui,j+1 = ui1,j + ui+1,j ui,j1 ?
14. Qu dificultad puede aparecer cuando se intenta utilizar el mtodo de diferencias finitas para resolver
utt = 4 uxx tomando h = 0.03 y k = 0.02? Cmo se podra solventar dicha dificultad? Propngase y
llvese a cabo una solucin para solventar dicha dificultad.
15. Mtodo implcito para la ecuacin de ondas. Para la ecuacin de ondas, como en el caso de la ecuacin
del calor, los mtodos implcitos tienen ventajas de estabilidad. Un esquema implcito simple resulta de
reemplazar utt por una frmula de diferencias centradas en el i-simo paso de espacio y uxx por el valor
medio de una diferencia centrada en los (j 1)-simo y (j + 1)-simo pasos de tiempo. Desarrllese
dicho esquema.
16. Sea la ecuacin de Poisson
u(x, 0) = x, u(x, 1) = 1, 0 x 1,
u(0, y) = y, u(1, y) = 1, 0 y 1,
1, para (x, y) =
f (x, y) =
0, en otro caso.
1 2
2, 3
Complementos
Complemento A
Introduccin
A.2.
El mtodo de la potencia
El mtodo de la potencia es un mtodo iterativo que aproxima el mayor valor propio en mdulo. El
vector propio asociado al valor propio se obtiene como parte del mtodo. Frecuentemente, tambin se emplea
el mtodo de la potencia para calcular un vector propio asociado a un valor propio ya calculado por otros
medios.
Si A es una matriz cuadrada de orden n, para poder aplicar el mtodo de la potencia, tiene que tener
n valores propios 1 , 2 , . . . , n con un conjunto linealmente independiente de vectores propios asociados
{v1 , v2 , . . . , vn } y tales que
|1 | > |2 | |3 | |n | .
Como los vectores v1 , v2 , . . . , vn son linealmente independientes, podemos escribir un vector cualquiera
111
112
v 6= 0 de Rn como
v = c1 v1 + c2 v2 + + cn vn ,
(A.1)
donde ci 6= 0 son escalares para todo i = 1, 2, . . . , n. Sea w0 = v. Multiplicando (A.1) por A, obtenemos
Aw0 = c1 Av1 + c2 Av2 + + cn Avn = 1 c1 w1 ,
c2 2
cn n
v2 + +
vn , puesto que Avj = j vj , para todo j = 1, 2, . . . , n, por ser
c1 1
c1 1
v1 , v2 , . . . , vn vectores propios. Si multiplicamos ahora w1 por A, tenemos
cn 2n
cn 2n
c2 22
c2 22
v2 + +
vn = 1 w2
(A.2)
v2 + +
vn = 1 v1 +
Aw1 = 1 v1 +
c1 1
c1 1
c1 21
c1 21
donde w1 = v1 +
con w2 = v1 +
c2 22
cn 2n
v2 + +
vn . Multiplicando a continuacin (A.2) por A, da
2
c1 1
c1 21
Aw2 = 1 v1 +
c2 32
cn 3n
v2 + +
vn = 1 w3 ,
2
c1 1
c1 21
c2 32
cn 3n
v2 + +
vn . Es fcil ver que iterando sucesivamente llegamos a
3
c1 1
c1 31
c2 k2
cn kn
wk = v1 +
v2 + +
vn .
(A.3)
k
c1 1
c1 k1
Como 1 es el mayor valor propio en mdulo, entonces 1j < 1, para todo j = 2, 3, . . . , n, de manera que el
segundo miembro de (A.3) tiende a v1 cuando k . Por lo tanto, si k , obtenemos
donde w3 = v1 +
wk v1
Awk 1 v1 .
Cuando se implementa el mtodo de la potencia, el vector wk se normaliza en cada paso dividiendo las
componentes del vector por el mldulo de la mayor componente (vase (A.1) a travs de (A.3)). Esto hace
que la mayor componente del vector sea 1. Como consecuencia de este escalado, el mtodo de la potencia
conduce al valor propio y al vector propio asociado.
El mtodo de la potencia se aplica generalmente como sigue. Se empieza con una estimacin inicial w0
de v. Normalmente se elige esta estimacin inicial como w0 = (1, 1, . . . , 1)T , de manera que la norma infinito
kw0 k es 1. Entonces se genera recursivamente la sucesin {wk }, a partir de
zk1
wk
Awk1 ,
1
zk1 ,
dk
donde dk es la mayor componente en mdulo de zk1 . Si el mtodo converge, el valor final de dk es el valor
propio buscado y el valor final de wk es el vector propio asociado. Esto es,
lm wk = v1
lm dk = 1 .
El proceso iterativo se termina cuando la norma infinito kwk wk1 k es menor que una tolerancia especificada.
Ejemplo. La matriz
9
A = 7
0
14
12
0
4
4
1
1
1
9 14 4
1
9
Aw0 = 7 12 4 1 = 9 = 9 1 d1 = 9, w1 = 1 .
1
1
0
0 1
1
1
9
9
113
9 14
Aw1 = 7 12
0
0
1
1
4
49
1
4 1 =
9
1
1
1
9
49
1
w2 = 1 .
49
d2 =
,
9
1
49
Despus de diez iteraciones, la sucesin de vectores converge al vector v = (1, 1, 1.02 108 )T y la sucesin
{dk } de constantes converge a = 5.000000205. En [16] se encuentra una tabla que resume los clculos.
Notas sobre la convergencia del mtodo de la potencia
Generalmente el mtodo de la potencia converge muy lentamente, a menos que el vector inicial est
prximo al vector v1 . Puede surgir un problema cuando el vector inicial es tal que el valor de c1 en
(A.1) es cero. Esto significa que v no tiene componentes en la direccin del vector v1 . Tericamente
el mtodo fallar. En la prctica, sin embargo, el mtodo puede converger (muy lentamente) a causa
de la acumulacin de errores de redondeo durante la repetida multiplicacin con la matriz A, que
proporcionar componentes en la direccin de v1 . (Por una vez podemos decir que los errores de
redondeo ayudan.)
En realidad no es necesario que la matriz A tenga n valores propios distintos para que el mtodo de
la potencia converja. Si la matriz tiene un nico valor propio dominante 1 de multiplicidad m > 1
y v1 , v2 , . . . , vm son vectores propios linealmente independientes asociados a 1 , el mtodo seguir
convergiendo a 1 .
El mtodo de la potencia tiene la desventaja de que no se sabe de antemano si la matriz tiene un nico
valor propio dominante, en cuyo caso el mtodo podra no converger.
A.3.
wk+1
(A qI)wk ,
1
zk .
dk+1
Por ejemplo, si 20 y 18 son los dos valores propios mayores en mdulo, la razn de predominio r = 0.9 est
prxima a 1 y la velocidad de convergencia ser entonces lenta. Sin embargo si elegimos q = 21 (10 + 18) = 14
entonces los nuevos valores propios son 6 y 32, de manera que la razn de predominio es r = 0.1875 y se
obtendr mayor velocidad de convergencia.
Por supuesto que la eleccin de q es difcil, a menos que sepamos a priori una estimacin de los valores
propios. Una forma de obtener una estimacin de los valores propios es utilizando el siguiente resultado,
conocido como teorema de los crculos de Gerschgorin:
Sean A una
Pnmatriz cuadrada de orden n y Ci el crculo del plano complejo con centro aii y
radio ri = j=1, j6=i |aij |, es decir, Ci = {z C; |z aii | ri } . Entonces, los valores propios de
Sn
A estn contenidos en D = i=1 Ci . Adems, si la unin de k de estos crculos no se corta con
los restantes n k, entonces dicha unin contiene precisamente k valores propios (contando las
multiplicidades).
114
2
A= 3
0
3
0
8 2
2 4
observamos que todos sus valores propios son reales, puesto que A es simtrica y los crculos de Gerschgorin
son:
C1 es el crculo con centro en (2, 0) y radio = 3 + 0 = 3,
C2 es el crculo con centro en (8, 0) y radio = 3 + | 2| = 5,
C3 es el crculo con centro en (4, 0) y radio = 0 + | 2| = 2.
La unin de estos crculos es
D = [1, 5] [3, 13] [6, 2] = [6, 2] [1, 13].
Como C1 y C2 son disjuntos con C3 , vase la figura A.1, hay dos valores propios en C1 C2 y uno en C3 . En
efecto, los valores propios de A son: 1 = 9.4969, 2 = 0.8684 y 3 = 4.3653.
C2
4
C3
C1
-6
-4
-2 -1
13
-2
-4
A.4.
Tambin podemos obtener el menor valor propio en mdulo de forma similar al de mayor mdulo, mediante
el mtodo de la potencia inversa. Si la matriz A es ivertible y es un valor propio de A y v su vector propio
asociado, entonces 1 es un valor propio de A1 asociado al mismo vector propio v, ya que A1 v = 1 v si
Av = v. Aplicando el mtodo de la potencia a A1 podemos obtener una aproximacin al menor valor
propio de A en mdulo (siempre que exista).
Eligiendo un vector inicial adecuado v 6= 0, en el primer paso obtenemos u tal que Au = v, que es
equivalente a u = A1 v. Obviamente la matriz inversa A1 se tiene que calcular con anterioridad. En la
prctica, sin embargo, como calcular la inversa de una matriz es computacionalmente ineficiente y no deseable,
se suele resolver el sistema lineal Au = v (utilizando habitualmente un mtodo de factorizacin LU ). A partir
de aqu funciona todo igual que en el mtodo de la potencia.
115
A.5.
Una vez que el mayor (o menor) valor propio en mdulo es conocido, se puede utilizar el mtodo de
la potencia con desplazamiento para encontrar los otros valores propios. Este mtodo utiliza la siguiente
propiedad importante de las matrices y sus valores propios:
Dado Av = v, si 1 es el mayor (o menor) valor propio en mdulo de A, obtenido mediante el
mtodo de la potencia (o el mtodo de la potencia inversa), entonces los nuevos valores propios
de la matriz desplazada A 1 I son 0, 2 1 , 3 1 , . . . , n 1 .
Esto se puede ver fcilmente porque los valores propios de A 1 I cumplen
(A 1 I)v = v
(A.4)
A.6.
Ejercicios
2
A = 5
4
2
9
4
1
3 ,
1
1
B= 2
4
0 0
1 2 ,
4 5
5
C= 3
0
2 1
0 1 .
0 2
116
2. Utilcese el teorema de los crculos de Gerschgorin para hallar un desplazamiento adecuado para calcular
el mayor valor propio en mdulo de la matriz
5
0
1 1
0
2
0 21
.
A=
0
1 1
1
1 1
0
0
Comprense los nmeros de iteraciones que utilizan el mtodo de la potencia y el mtodo de la potencia
con desplazamiento.
3. Verifquese que el mtodo de la potencia no converge al mayor valor propio en mdulo de la matriz
1 2
2
3
3
3
1 0 1
2
A=
0 0 5 2 .
3
3
0 0
1
0
Explquese por qu.
4. Sea la matriz
A=
0
1
2
0
0
0
0
1
4
2 4
0 0
.
0 0
1
0
8
a) Determnese una regin del plano complejo que contenga a todos los valores propios de A.
b) Encuntrense el mayor valor propio en mdulo de A y su vector propio asociado.
c) Hllense el resto de valores propios de A.
d) Calclense los valores propios de A a partir de su polinomio caracterstico y aplicando el mtodo
de Newton.
5. Dada la matriz
2
A = 2
1
0 1
10
0 ,
1
4
utilcese el mtodo de la potencia para calcular el radio espectral de A con la norma infinito.
Complemento B
Introduccin
B.2.
Recordemos en primer lugar que una EDP es una ecuacin diferencial que contiene derivadas parciales
de una o ms variables dependientes respecto a una o ms variables independientes. Por ejemplo, si u es una
u
funcin de las variables independientes x e y, toda ecuacin que contenga u
x o y , o derivadas de orden
superior, y tambin u, x o y, es una EDP. Algunos ejemplos importantes de las ciencias fsicas son:
i)
2
2u
2 u
=
t2
x2
ii)
u
2u
= 2
t
x
iii)
2u 2u
+ 2 = 0 es la ecuacin bidimensional de Laplace,
x2
y
iv)
2u 2u
+ 2 = f (x, y) es la ecuacin bidimensional de Poisson,
x2
y
v)
2u 2u 2u
+ 2 + 2 = 0 es la ecuacin tridimensional de Laplace.
x2
y
z
117
x3
+ xy 2 + (y).
3
2u
= x3 y.
y x
u
x
= x3 y
Como resultado de estos dos sencillos ejemplos observamos que mientras que las EDO tienen soluciones
que dependen de constantes arbitrarias, las soluciones de las EDP dependen de funciones arbitrarias. En
particular, observamos que la solucin de la EDP de primer orden contiene una funcin arbitraria y que la
solucin de la EDP de segundo orden contiene dos funciones arbitrarias. En general, la solucin de una EDP
contiene un cierto nmero de funciones arbitrarias, a menudo n funciones para una ecuacin de orden n.
Nota. La naturaleza de un problema matemtico tpico que se refiere a una EDP y que se origina en la
formulacin matemtica de algn problema fsico consta no solo de la propia ecuacin diferencial, sino que
contiene tambin ciertas condiciones suplementarias (denominadas condiciones de contorno, condiciones iniciales o ambas). El nmero y la naturaleza de estas condiciones depende de la naturaleza del problema fsico
que ha originado el problema matemtico. La solucin del problema ha de satisfacer tanto la ecuacin diferencial como las condiciones suplementarias. Con otras palabras, la solucin del problema completo (ecuacin
diferencial ms condiciones) es una solucin particular de la EDP del problema.
119
B.3.
Consideramos brevemente la clase de EDP que aparecen con ms frecuencia, que es la de las denominadas
EDP lineales de segundo orden. Una EDP lineal de segundo orden con dos variables independientes x e y es
una ecuacin de la forma:
Auxx + Buxy + Cuyy + Dux + Euy + F u = G,
(B.1)
donde A, B, C, D, E, F y G son funciones de x e y. Supongamos que A, B y C no se anulan simultaneamente.
Si G 0, la EDP (B.1) se reduce a
Auxx + Buxy + Cuyy + Dux + Euy + F u = 0.
(B.2)
Para esta clase de EDP podemos enunciar el siguiente teorema fundamental con respecto a sus soluciones:
Sean n soluciones u1 , u2 , . . . , un de la EDP (B.2) en una regin R del plano XY . La combinacin
lineal c1 u1 + c2 u2 + + cn un , donde c1 , c2 , . . . , cn son constantes arbitrarias, es tambin una
solucin de la EDP (B.2) en R.
Consideramos ahora una clase especial importante de EDP lineales de segundo orden, las denominadas
EDP lineales homogneas de segundo orden con coeficientes constantes. Una ecuacin de esta clase es de la
forma
auxx + buxy + cuyy = 0 con a, b y c contantes.
(B.3)
La palabra homognea hace referencia aqu al hecho de que todos los trminos en (B.3) contienen derivadas
del mismo orden (el segundo).
Buscamos ahora una solucin de (B.3) en la forma:
u(x, y) = f (y + x),
(B.4)
donde f es una funcin arbitraria de su argumento y es una constante. Derivando (B.4), obtenemos
uxx (x, y) = 2 f 00 (y + x),
y sustituyndolas en (B.3) da
a2 f 00 (y + x) + bf 00 (y + x) + cf 00 (y + x) = 0
f 00 (y + x)[a2 + b + c] = 0,
de manera que u(x, y) = f (y + x) es una solucin de (B.3) si satisface la ecuacin de segundo grado
a2 + b + c = 0,
que llamaremos ecuacin condicionante.
Consideramos ahora los siguientes cuatro casos de la EDP (B.3), vase [21]:
1. a 6= 0 y las races de la ecuacin condicionante diferentes,
2. a 6= 0 y las races de la ecuacin condicionante iguales,
3. a = 0, b 6= 0,
4. a = 0, b = 0 y c 6= 0.
En el caso 1, la EDP (B.3) posee dos soluciones u(x, y) = f (y + 1 x) y u(x, y) = g(y + 2 x), donde f y g
son dos funciones arbitrarias de sus respectivos argumentos y 1 y 2 son las races distintas de la ecuacin
condicionante. Aplicando el teorema fundamental anterior se deduce que
u(x, y) = f (y + 1 x) + g(y + 2 x)
es una solucin de la EDP (B.3).
En el caso 2, la EDP (B.3) posee la solucin u(x, y) = f (y + 1 x), donde f es una funcin arbitraria de
su argumento y 1 es la raz doble de la ecuacin condicionante. Adems, se puede comprobar fcilmente que
en este caso la EDP (B.3) posee tambin la solucin u(x, y) = xg(y + 1 x), donde g es una funcin arbitraria
de su argumento. Segn el teorema fundamental anterior vemos que
u(x, y) = f (y + 1 x) + xg(y + 1 x)
Acabamos esta seccin clasificando las EDP de la forma (B.1). La clasificacin de estas EDP surge por
su analoga con la ecuacin de las cnicas en el plano:
Ax2 + Bxy + Cy 2 + Dx + Ey + F = 0.
As, dependiendo de que la cantidad B 2 4AC sea positiva, negativa o nula, hablaremos respectivamente de
EDP hiperblicas, elpticas o parablicas.
Generalizando la definicin anterior, decimos que la EDP (B.1) es de tipo
1. hiperblico en todos los puntos en los que B 2 4AC > 0,
2. elptico en todos los puntos en los que B 2 4AC < 0,
3. parablico en todos los puntos en los que B 2 4AC = 0.
Esta clasificacin puramente matemtica se relaciona con una divisin global de los fenmenos fsicos que
se describen mediante tales ecuaciones, a saber: procesos vibratorios (ecuaciones hiperblicas), estacionarios
(ecuaciones elpticas), o de difusin (ecuaciones parablicas). Es por ello que las soluciones de cada uno
de los tipos de ecuaciones tienen particularidades que le son especficas (si bien pueden existir puntos de
contacto). Por ejemplo, las ecuaciones hiperblicas se caracterizan por poseer soluciones en forma de ondas
que se desplazan con una velocidad finita. Las ecuaciones elpticas poseen soluciones suaves (infinitamente
diferenciables), etc. Las ecuaciones parablicas, en cierto sentido, tienen propiedades intermedias entre las
hiperblicas y las elpticas.
Ilustraremos esta clasificacin con las tres EDP ms famosas de la fsica matemtica.
Ejemplo. La ecuacin uxx uyy = 0 es hiperblica puesto que A = 1, B = 0, C = 1 y B 2 4AC = 4 > 0.
Es un caso especial de la denominada ecuacin unidimensional de ondas, que es satisfecha por los pequeos
desplazamientos transversales de los puntos de una cuerda vibrante. Esta EDP es lineal y homognea con
coeficientes constantes y posee la solucin
u(x, y) = f (y + x) + g(y x),
donde f y g son funciones arbitrarias de sus respectivos argumentos.
121
B.4.
La utilidad de la clasificacin anterior se basa esencialmente en la posibilidad de reducir (B.1), en cada uno de los tres casos mencionados, a una forma cannica mediante un adecuado cambio de variables
independientes.
Para determinar estas formas cannicas, empezamos considerando un cambio genrico de variables independientes:
s = s(x, y)
y
t = t(x, y),
donde supondremos que s y t son funciones de x e y dos veces derivables, de manera que el jacobiano de la
transformacin,
s
sy
J = x
,
tx ty
es distinto de cero en la regin en que estemos interesados. Entonces, suponiendo que x e y son a su vez
funciones de s y t dos veces derivables, las derivadas que aparecen en (B.1) se transforman en
ux
= us sx + ut tx
uy
= us sy + ut ty
uxx
uxy
uyy
(B.5)
donde R es una funcin lineal en u, ut , us e independiente de las derivadas segundas. Los nuevos coeficientes
son
A1
B1
C1
Obsrvese que la naturaleza de (B.1) permanece invariante ante la transformacin efectuada, puesto que
como puede comprobarse fcilmente
B12 4A1 C1 = J 2 (B 2 4AC),
y por tanto la ecuacin, despus del cambio, contina perteneciendo a la misma clase, sin ms que exigir que
J 6= 0.
dy
dx
2
B
B 2 4AC
2A
dy
dx
+ C = 0;
dy
B
=
dx
B 2 4AC
,
2A
(B.6)
entonces el cambio de variables s = s(x, y) y t = t(x, y) simplifica la EDP (B.5) como sigue
ust =
R
,
B1
que se denomina primera forma cannica de las EDP hiperblicas. Las curvas descritas al hacer
s(x, y) = constante
t(x, y) = constante
se denominan curvas caractersticas. Un tipo de curva caracterstica para una EDP dada es una curva
sobre la cual la solucin toma un valor constante.
Si introducimos nuevas variables w y z, mediante las frmulas
w=
s+t
2
z=
obtenemos
uww uzz = 4
st
,
2
R
,
B1
4R
.
B1
Ecuaciones parablicas
Como B 2 4AC = 0, de (B.6) vemos que se satisface la misma EDO
dy
B
=
.
dx
2A
Las soluciones de esta EDO, s(x, y) = constante, son las caractersticas de la EDP (B.1). (Para las ecuaciones
parablicas solo existe una familia de curvas caractersticas.) Tomando s = s(x, y), podemos tomar una
funcin arbitraria t = t(x, y) que complete el cambio de variables y tal que el jacobiano J 6= 0. Se suele tomar
t = y. En resumen, la ecuacin se reduce a la forma cannica de las EDP parablicas
utt =
R
.
C1
123
B B 2 4AC
B + B 2 4AC
0
0
y (x) =
= 1
e
y (x) =
= 2 ;
2A
2A
es decir, dos EDO de primer orden, cuyas soluciones se obtienen mediante integracin directa
y(x) = 1 x + K1
y(x) = 2 x + K2 .
Como las dos curvas caractersticas dependen de una constante arbitraria, basta elegir s como una de ellas y
t como la otra para obtener el cambio de variables
s = y 1 x,
t = y 2 x.
t = y 2 x.
t = x,
4AC B 2
x = constante,
2A
que es equivalente a
2Ay Bx
s=
+ ix = constante.
4AC B 2
3. Caso parablico: hay una familia de rectas caractersticas. El cambio de variabales es
s=y
B
x,
2A
t = y.
En algunos casos ser posible hallar elementalmente la solucin general de la EDP (B.1) una vez escrita
en su forma cannica, pero en la mayora de los casos ser imposible. Identifiquemos dos casos en los que si
es posible:
i) Si solo aparecen derivadas respecto a una variable. Por ejemplo,
utt + E1 ut + F1 u = G1 .
La EDP se integra considerando la otra variable como parmetro. La EDP es parablica.
ii) Si solo aparecen ust y una de las derivadas primeras. Por ejemplo,
ust + D1 us = G1 .
La EDP se resuelve haciendo el cambio us = v, ya que la ecuacin resultante vt + D1 v = G1 se puede
integrar considerando s como parmetro. La EDP es hiperblica.
Ejemplo. Sea la EDP
4uxx + 5uxy + uyy + ux + uy = 2.
En primer lugar, vemos que A = 4, B = 5, C = 1 y B 2 4AC = 9 > 0, de modo que la ecuacin es
hiperblica. Como A, B y C son constantes, consideramos la transformacin s = y 1 x y t = y 2 x,
B.5.
Separacin de variables
Si una EDP con dos o ms variables independientes puede reducirse a un conjunto de EDO, una para
cada variable, la ecuacin se dice separable. Las soluciones de la EDP son entonces los productos de las
soluciones de las EDO.
En esta seccin introducimos el mtodo de separacin de variables, que es un mtodo fundamental y
potente para obtener soluciones de ciertos problemas que implican EDP. Aunque la clase de problemas a los
que se puede aplicar este mtodo es relativamente limitada, incluye no obstante muchos casos de gran inters
fsico.
El desarrollo del mtodo requiere conectar con dos clases importantes de problemas, que histricamente
surgieron precisamente de l. Son los problemas de contorno con EDO y el problema de representacin de una
funcin en forma de serie trigonomtrica. A dichas series trigonomtricas se les denomina series de Fourier;
su estudio se escapa de los objetivos de este texto, pero sus propiedades se pueden encontrar en cualquier
texto sobre EDP.
El enunciado matemtico de tales problemas contiene una EDP y ciertas condicones suplementarias
(condiciones de contorno, condiciones iniciales o ambas), y la solucin del problema es una funcin que
satisface tanto la EDP como las condiciones suplementarias.
Si suponemos, por ejemplo, una EDP con una sola variable dependiente u que es una funcin de dos
variables independientes x e y, la idea del mtodo de separacin de variables consiste en buscar una solucin
de la EDP lineal de orden dos en la forma u(x, y) = X(x)Y (y). En el caso en que sea aplicable este mtodo,
su aplicacin lleva tres pasos:
1. obtencin de dos EDO,
2. obtencin de las soluciones de las dos EDO que cumplan las condiciones de contorno,
3. formacin de una combinacin lineal infinita de las soluciones para satisfacer las condiciones
iniciales del problema.
El paso 3 se consigue primeramente aplicando la siguiente generalizacin del teorema fundamental visto
anteriormente:
Sean u1 , u2 , . . . , un , . . . una infinidad de
de la EDP (B.2) en una regin R del plano
Psoluciones
125
t>0
( = constante),
t>0
(condiciones de contorno),
0<x<`
(condicin inicial).
La idea es buscar soluciones de la forma u(x, t) = X(x)T (t), para lo que se ha de verificar la ecuacin
X(x)T 0 (t) = X 00 (x)T (t),
o bien,
X 00 (x)
T 0 (t)
=
= ,
X(x)
T (t)
donde necesariamente ha de ser una constante, que se denomina constante de separacin. Por tanto, fijando
, se tienen las dos EDO
X 00 (x) = X(x)
y
T 0 (t) = T (t).
Como u(x, t) = X(x)T (t), las condiciones de contorno son
X(0)T (t) = 0
X(`)T (t) = 0,
t > 0,
de manera que T (t) = 0, para todo t > 0, lo que implica que u(x, t) 0, o bien
X(0) = X(`) = 0.
Ignorando la solucin trivial, se combinan estas ltimas condiciones de contorno con la EDO correspondiente
a X(x) para obtener el problema de contorno
X 00 (x) = X(x);
X(0) = X(`) = 0,
(B.7)
Caso 1: > 0. Las races de la ecuacin auxiliar son r = , de modo que la solucin general de la
EDO de (B.7) es
X(x) = C1 e x +C2 e x .
Para determinar C1 y C2 , recurrimos a las condiciones de contorno
X(0) = C1 + C2 = 0
de forma que si C2 = C1 , tenemos que C1
y
X(`) = C1 e ` +C2 e ` = 0.
e ` e ` = 0 o C1 e2 ` 1 = 0. Como hemos
supuesto que > 0, resulta que e2 ` 1 > 0. Por lo tanto, C1 y, en consecuencia, C2 son iguales a cero. Por
consiguiente, no existe solucin no trivial de (B.7) para > 0.
Caso 2: = 0. Aqu r = 0 es una raz doble de la ecuacin auxiliar y la solucin general de la EDO es
entonces
X(x) = C1 + C2 x.
C1 = 0,
C1 cos ` + C2 sen ` = 0.
` = n, donde n es un entero.
sen ` = 0
2
Por consiguiente, (B.7) tiene una solucin no trivial (C2 6= 0) cuando ` = n o = n
,nN
`
2
Adems, las soluciones no triviales (funciones propias) Xn (x) correspondientes al valor propio = n
`
estn dadas por
nx
, N,
Xn (x) = an sen
`
donde los valores an son constantes arbitrarias distintas de cero.
Una vez determinado = (n/`)2 , para algn entero positivo n, consideremos la segunda EDO T 0 (t) =
2
T (t) con = n
; es decir,
`
n 2
T 0 (t) +
T (t) = 0,
`
cuya solucin general, para cada n N, es
Tn (t) = bn e (
n
`
) t.
Combinando ahora esta solucin con la anterior, para cada n N, se obtiene la funcin
nx
nx
n 2
n 2
un (x, t) = Xn (x)Tn (t) = an sen
bn e ( ` ) t = cn e ( ` ) t sen
,
`
`
donde cn es una constante arbitraria.
Sealemos que cada una de estas funciones un satisface tanto la EDP como las dos condiciones de contorno
para todos los valores de las constantes cn (comprubese como ejercicio).
Hemos de intentar ahora satisfacer la condicin inicial. En general, por s sola, ninguna de las anteriores
soluciones un (x, t) satisfar la condicin inicial. Por ejemplo, si aplicamos la condicin inicial a una solucin
un (x, t), hemos de tener
nx
, 0 < x < `,
f (x) = un (x, 0) = cn sen
`
donde n es un entero positivo,
y esto es evidentemente imposible, a menos que f sea una funcin sinusoidal
de la forma K sen nx
,
para
algn
entero positivo n.
`
Qu hemos de hacer entonces? Segn la generalizacin del teorema fundamental visto anteriormente,
suponiendo la convergencia apropiada, una serie infinita de soluciones de la EDP del problema original es
tambin solucin. Formamos entonces una serie infinita
un (x, t) =
n=1
cn e (
n=1
n
`
2
) t sen nx
`
de las soluciones un (x, t), que, por la generalizacin del teorema fundamental y suponiendo la convergencia
apropiada, nos asegura que la suma de esta serie es tambin una solucin de la EDP. Simbolizando dicha
suma por u(x, t), escribimos
u(x, t) =
X
n=1
un (x, t) =
X
n=1
cn e (
n
`
2
) t sen nx .
`
(B.8)
Observamos que u(0, t) = u(`, t) = 0, t > 0. Suponiendo entonces la convergencia apropiada, la funcin
u(x, t), dada por (B.8), satisface la EDP y las condiciones de contorno.
127
B.6. EJERCICIOS
cn sen
nx
n=1
0 < x < `.
De esta manera, el problema original de conduccin de calor en una varilla unidimensional se ha reducido
al problema de determinar un desarrollo de f (x) de la forma
f (x) =
X
n=1
cn sen
nx
`
(B.9)
Un desarrollo de este tipo se llama serie senoidal de Fourier. Si se eligen los cn de manera que la igualdad
anterior sea vlida, entonces el desarrollo de u(x, t), dado por (B.8), se denomina solucin formal del
problema de conduccin de calor en una varilla unidimensional. La terora de las series de Fourier prueba
que tales cn son de la forma:
Z
ns
2 `
f (s) sen
ds, n = 1, 2, . . .
cn =
` 0
`
Notemos que la solucin (B.8) es formal, ya que en el proceso de su obtencin hemos supuesto una
convergencia que no hemos justificado. Si este desarrollo converge a una funcin con segundas derivadas
parciales continuas, entonces la solucin formal es una solucin verdadera (genuina). Adems, la solucin es
nica.
Ejemplo. Encuntrese la solucin del siguiente problema de difusin
X
cn sen nx.
u(x, 0) = 3 sen 2x 6 sen 5x =
n=1
c5 = 6
cn = 0, para todo n 6= 2, 5.
Por consiguiente, de (B.8), se sigue que la solucin del anterior problema de difusin es
2
2
2x
5x
( 2
t
( 5
t
)
)
`
`
u(x, t) = c2 e
sen
sen
+ c5 e
`
`
= 3 e28t sen 2x 6 e175t sen 5x.
B.6.
Ejercicios
1. Hllese una solucin que contenga dos funciones arbitrarias para cada una de las siguientes EDP.
Determnese, para cada una de ellas, si la EDP es hiperblica, elptica o parablica.
a) uxx 4uxy + 4uyy = 0,
b) 2uxy + 3uyy = 0,
2. Determnense y dibjense las regiones del plano para las cuales las siguientes EDP son de tipo hiperblico, elptico o parablico.
a) uxx + xuxy x2 y = 0,
4. Utilcese el mtodo de separacin de variables para resolver cada uno de los siguientes problemas
a) ut = ux ;
u(x, 0) = ex + e2x ,
b) ut = ux ;
c) ut = ux + u;
d) ut = ux u;
5. Determnese si se puede utilizar el mtodo de separacin de variables para resolver las siguientes EDP.
a) tutt + ux = 0,
b) tuxx + xut = 0,
c) uxx + (x y)uyy = 0,
d) uxx + 2uxy + uy = 0.
u(0, t) = u(`, t) = 0, t 0,
u(x, 0) = f (x), 0 x `,
ut (x, 0) = g(x), 0 x `.
Como caso particular del problema de la cuerda vibrante resulvase el siguiente problema ([19]). Supongamos que la cuerda es tal que la constante 2 = 4 y que los extremos estn fijos al eje X en x = 0
y x = . La distancia al eje X en el intervalo 0 x est dada por f (x) = sen 3x 4 sen 10x. La
velocidad inicial en cada punto del intervalo 0 x con que se abandona la cuerda a partir de la
posicin inicial es g(x) = 2 sen 4x + sen 6x.
8. Resulvanse los siguientes problemas
129
B.6. EJERCICIOS
b) utt = uxx ;
u(x, 0) = 1 cos x, 0 x 2,
ut (x, 0) = 0, 0 x 2,
u(x, b) = f (x), 0 x a,
u(0, y) = 0,
u(a, y) = 0,
0 y b.
u(a, y) = 0,
u(x, 0) = 0,
u(x, b) = 2 sen
2x
a
.
u(a, y, t) = 0,
u(x, 0, t) = 0,
u(x, b, t) = 0.
Bibliografa bsica
[1] A. Aubanell, A. Benseny y A. Delshams, tiles bsicos de clculo numrico, Labor, Barcelona, 1993.
[2] R. B. Bhat y S. Chakraverty, Numerical analysis in engineering, Alpha Science, Oxford, 2007.
[3] R. L. Burden y J. D. Faires, Anlisis numrico, 7a edicin, Thompson, Madrid, 2003.
[4] S. C. Chapra y R. P. Canale, Mtodos numricos para ingenieros, McGraw-Hill Interamericana, Mxico,
2007.
[5] A. Cordero, J. L. Hueso, E. Martnez y J. R. Torregrosa, Problemas resueltos de mtodos numricos,
Thomson, Madrid, 2006.
[6] V. Domnguez y M. L. Rapn, Matlab en cinco lecciones de numrico, Universidad Pblica de Navarra,
Pamplona, 2007.
[7] J. D. Faires y R. Burden, Mtodos numricos, 3a edicin, Thomson, Madrid, 2004.
[8] L. V. Fausett, Applied numerical analysis using Matlab, 2nd edition, Pearson Prentice Hall, New Jersey,
2008.
[9] I. A. Garca y S. Maza, Mtodos numricos, Edicions de la Universitat de Lleida, Lleida, 2009.
[10] F. Garca y A. Nevot, Mtodos numricos en forma de ejercicios resueltos, Universidad Pontificia Comillas
de Madrid, Madrid, 1997.
[11] C. F. Gerald y P. O. Wheatley, Anlisis numrico con aplicaciones, 6a edicin, Pearson Educacin,
Mxico, 2000.
[12] A. Gilat y V. Subramaniam, Numerical methods for engineers and scientists: an introduction with
applications using MatLab, John Wiley and Sons, New Jersey, 2008.
[13] P. Holoborodko, Applied mathematics and beyond: numerical methods. Disponible en
http://www.holoborodko.com/pavel/numerical-methods/numerical- %20integration/
[14] J. A. Infante y J. M. Rey, Mtodos numricos, 3a edicin, Pirmide, Madrid, 2007.
[15] E. Isaacson y H. B. Keller, Analysis of numerical methods, 2nd edition, John Wiley & Sons, New York,
1990.
[16] A. Kharab y R. B. Guenther, An introduction to numerical methods: a Matlab approach, Chapman and
Hall/CRC, Boca Ratn, 2006.
[17] D. Kincaid y W. Cheney, Anlisis numrico: las mtemticas del clculo cientfico, Addison-Wesley
Iberoamericana, Buenos Aires, 1994.
[18] J. H. Mathews y K. D. Fink, Mtodos numricos con MATLAB, 3a edicin, Prentice Hall, Madrid, 1999.
[19] R. K. Nagle y E. B. Saff, Fundamentos de ecuaciones diferenciales, Addison-Wesley Iberoamericana,
Delaware, 1992.
[20] D. Prasad, An introduction to numerical analysis, Alpha Science, Oxford, 2006.
131
132
Bibliografa bsica
Bibliografa complementaria
K. E. Atkinson, An introduction to numerical analysis, John Wiley & Sons, New York, 1989.
J. C. Butcher, Numerical methods for ordinary differential equations, 2nd edition, John Wiley & Sons,
Chichester, 2008.
S. D. Conte y C. de Boor, Anlisis numrico elemental: un enfoque algortmico, McGraw-Hill, New York,
1974.
G. Dahlquist y . Bjrck, Numerical methods, Prentice-Hall, New Jersey, 1974.
P. J. Davis, Interpolation and approximation, Dover, New York, 1975.
P. J. Davis y P. Rabinowitz, Methods of numerical integration, 2nd edition, Dover, New York, 2007.
A. J. Davis, The finite element method: an introduction with partial differential equations, Oxford University Press, Oxford, 2011.
C. De Boer, A practical guide to splines, revised edition, Springer-Verlag, New York, 2001.
P. Deuflhard y A. Hohmann, Numerical analysis in modern scientific computation: an introduction, 2nd
edition, Springer-Verlag, New York, 2003.
J. F. Epperson, An introduction to numerical methods and analysis, John Wiley & Sons, New Jersey, 2007.
L. Fox, Numerical solution of two-point boundary value problem in ordinary differential equations, Dover,
New York, 1990.
M. Gasca, Clculo numrico I, Publicaciones de la UNED, Madrid, 1991.
W. Gautschi, Numerical analysis: an introduction, Birkhuser, Boston, 1997.
C. W. Gear, Numerical initial value problems in ordinary differential equations, Prentice Hall, Englewood
Cliffs, NJ, 1971.
C. F. Gerald y P. O. Wheatley, Applied numerical analysis, Addison-Wesley, New York, 1994.
M. S. Gockenbach, Partial differential equations: analytical and numerical methods, SIAM, Philadelphia,
2011.
G. H. Golub y J. M. Ortega, Scientific computing and differential equations: an introduction to numerical
methods, Academic Press, London, 1992.
G. H. Golub y C. F. Van Loan, Matrix computations, 3rd edition, Johns Hopkins University Press, Baltimore, 1996.
C. Grossmann, H.-G. Roos y M. Stynes, Numerical treatement of partial differential equations, SpringerVerlag, Berlin Heidelberg, 2007.
W. W. Hager, Applied numerical linear algebra, Prentice Hall, Englewood Cliffs, NJ, 1988.
G. Hmmerling y K.-H. Hoffmann, Numerical mathematics, Springer-Verlag, New York, 1991.
133
134
Bibliografa complementaria
Servicio de Publicaciones
Biblioteca Universitaria
C/ Piscinas, s/n
26006 Logroo (La Rioja)
Telfono: 941 299 187
http://publicaciones.unirioja.es
www.unirioja.es