Temario PDF
Temario PDF
Temario PDF
3 de octubre de 2013
Índice general
3
4 ÍNDICE GENERAL
7. Bibliografı́a 131
Prólogo
7
8 ÍNDICE GENERAL
Cálculo Numérico:
generalidades
11
12 Capı́tulo 1. Cálculo Numérico: generalidades
3. Otro requisito sobre los métodos numéricos es el que sean estables, que
significa, hablando coloquialmente, que pequeñas modificaciones en los
datos no ocasionen fuertes cambios en el resultado final; o de otra forma
si los cálculos no se efectúan con exactitud (debido a los redondeos) no
obstante se tiene convergencia a la solución.
Otra notación habitual para hablar del tamaño relativo de las funciones
en las proximidades de un punto es la siguiente: decimos que f es una O
mayúscula de g cuando x tiende a x0 (y escribimos f (x) = O(g(x))
cuando x → x0 ) si existen constantes K y r positivas tales que para todo x
verificando | x − x0 |< r es | f (x) |≤ K | g(x) |.
10−100 ≤| x |≤ 1099
pero dentro de este intervalo, por las razones antes expuestas, no todos los
números pueden ser representados con exactitud, pues si por ejemplo sólo
pueden ser representados k dı́gitos para almacenar m, dado x cualquiera del
intervalo anterior, quedará representado como
x̄ = ±m̄ · 10q
con m̄ obtenida por redondeo (lo más usual) o corte tras el k-ésimo dı́gito.
Trabajos propuestos:
Resolución numérica de
ecuaciones y sistemas no
lineales
2.1. Introducción
Ruffini y Abel demostraron que, en general, no se puede resolver la ecua-
ción algebraica de orden n con n > 4 por radicales. Aunque hay cierto tipos
de ecuaciones de grado superior al cuarto, como por ejemplo las binomias
xn + a = 0 que se resuelven de esta forma. Pero esta imposibilidad no ocasio-
na inconvenientes mayores, pues se dispone de diversos métodos que permiten
calcular (según veremos a lo largo de este tema) los valores numéricos de las
raı́ces con tanta aproximación como se desee.
El proceso a seguir para resolver una ecuación dada f (x) = 0 (algebraica o
no) suele ser el siguiente, se comienza determinando un intervalo donde estén
todas las raices, es lo que se llama acotación de las raı́ces. Seguidamente,
se subdivide este intervalo en otros tales que cada uno contenga solamente
una raı́z, es lo que se denomina separación de raı́ces. Finalmente, se reduce
la amplitud de dichos intervalos hasta que sus extremos constituyan valores
aproximados aceptables, por exceso o defecto, de la raı́z contenida en su
interior, en esto consite la aproximación de raı́ces.
Algunos resultados prácticos sobre acotación de raı́ces de ecuaciones po-
linómicas se verán más adelante; ahora recordamos algunos resultados de
cálculo infinitesimal por su interés en la separación de raı́ces, comenzando
por el teorema de Bolzano.
Teorema 1 Sea f : [a, b] → R continua y tal que f (a)f (b) < 0 (es decir que
toma valores opuestos en los extremos del intervalo) entonces existe r ∈ (a, b)
21
22 Capı́tulo 2. Resolución numérica de ecuaciones no lineales
| f (α) |
| α − r |≤
m1
.
Demostración. Por el teorema del valor medio se tiene f (α) − f (r) =
(α − r)f 0 (c) con c intermedio entre α y r, luego | f (α) − f (r) |=| f (α) |=
=| α − r || f 0 (c) |≥| α − r | m1 , de donde se sigue que | α − r |≤ |fm(α)|
1
.
limn→∞ an = α ≤ b
limn→∞ bn = β ≥ a
Teorema 2 Si g es una función real definida en el intervalo [a, b], que cum-
ple las dos condiciones siguientes:
Entonces existe una única raı́z s de la ecuación x = g(x) en [a, b], que se
obtiene como lı́mite de una sucesión {xn } donde x0 es un punto arbitrario
de [a, b] y xn+1 = g(xn ) para n ≥ 0
Observaciones:
1. Cuando una función verifica la condición (2) del teorema anterior con
k cualquiera (k ≥ 0) se dice que es lipschitziana en [a, b] o que verifica
una condición de Lipschitz.
2. Si g es derivable con derivada continua y cumple la condición:
| g 0 (x) |≤ k < 1 ∀x ∈ [a, b] (20 )
entonces, por el teorema del valor medio, g verifica la condición (2) del
teorema anterior.
3. El teorema anterior con la condición (2) o la (20 ) sigue siendo válido si
se sustituye el intervalo [a, b] por cualquier otro intervalo cerrado de R
no necesariamente acotado, I, pues este constituirı́a un espacio métri-
co completo, ya que todo subconjunto cerrado de un espacio métrico
completo es el mismo un espacio métrico completo.
4. Los errores en el paso enésimo vienen dados por
k kn
| xn − s |≤ | xn − xn−1 |≤ | x1 − x0 |
1−k 1−k
5. El teorema anterior (o sus varaiantes apuntadas) nos dan resultados
de convergencia global pues la aseguran para todo punto inicial x0 en
el intervalo dado, pero sus condiciones son muy restrictivas, por ello
estamos interesados en resultados de convergencia local como el que
sigue.
Teorema 3 Sea g de clase C(1) en algún intervalo que contenga a un punto
fijo s de g. Si | g 0 (s) |< 1, existe ε > 0 tal que ∀x0 ∈ [s − ε, s + ε] se tiene
que la sucesión {xn }∞ 0 con xn+1 = g(xn )(n ≥ 0) converge a s.
0
En particular si α(xn ) = α es constante se tiene que g 0 (s) = 1 − f α(s) con
0
lo cual basta con elegir α para que | 1 − f α(s) |< 1; además, de acuerdo
0
con el apartado anterior si g 0 (s) = 1 − f α(s) 6= 0 el método correspondiente
tendrá convergencia lineal o de orden uno.
Método de Lagrange.
El método de Lagrange, también conocido como método de las partes
proporcionales o regula falsi, consiste básicamente en reemplazar la gráfica
de f restringida al intervalo [a, b] por la recta pasando por los puntos extremos
A(a, f (a)) y B(b, f (b)), es decir se sustituye la función f por un polinomio
de grado uno p(x) y se resuelve la ecuación p(x) = 0; el punto de intersección
de la recta AB con el eje de las x está dado por
b−a af (b)−bf (a)
x1 = a − f (a) f (b)−f (a)
= f (b)−f (a)
x0 = b
xn+1 = g(xn )
con a < c < s (pues f (s) = 0), luego una condición suficiente para que haya
convergencia local, en general de primer orden o lineal es que se verifique
00 2
| g 0 (s) |=| f (c)(a−s)
2f (a)
|< 1.
Método de Newton-Raphson.
Si f (x) = 0 posee una raı́z en el punto s del intervalo [a, b], la idea de este
método consiste en reemplazar la curva f (x) por la recta tangente a la misma
en uno de sus puntos extremos. En el caso de la figura, se tiene interés en
tomar la tangente en b, cuya ecuación está dada por y − f (b) = f 0 (b)(x − b)
y su intersección con el eje OX está dada por
f (b)
x1 = b − f 0 (b)
f (xn )
x0 = b , xn+1 = xn − (n ≥ 0)
f 0 (xn )
o también
x0 = b , xn+1 = g(xn ) (n ≥ 0)
con
f (x)
g(x) = x −
f 0 (x)
El método estará bien definido para xn próximo a s con la condición f 0 (s) 6= 0;
es decir s es un cero simple de f , pues si f 0 (s) 6= 0, siendo f 0 continua y xn
suficientemente próximo a s se tendrá f 0 (xn ) 6= 0.
Otra forma de deducir este método es la siguiente; dada la ecuación
f (x) = 0 pasemos a la ecuación equivalente
2.2. Ecuaciones no lineales con una variable 29
f (x)
x=x− α(x)
= g(x)
0
y si s es una raı́z de de f (x) = 0 obtendremos g 0 (s) = 1 − fα(s)
(s)
, por tanto
0
siempre que α(x) verfique α(s) = f (s) la convergencia del método xn+1 =
g(xn ) será cuadrática, por lo que basta con tomar α(x) = f 0 (x), si f 0 (x), no
se anula para que el método
f (xn )
xn+1 = xn − f 0 (xn )
(n ≥ 0)
(xn+1 − xn )2 (4xn )2
x0n = xn − = xn −
xn+2 − 2xn+1 + xn 42 x n
sea una mejor aproximación de s que xn , y eso es precisamente lo que afirma
el teorema siguiente, que damos sin demostración.
2.3. Ecuaciones polinomiales 31
p0 (x) = a0
pk (x) = ak + xpk−1 (x) (k = 1, 2, . . . , n)
nos da
pk (x) = ak + ak−1 x + · · · + a0 xk (k = 1, 2, . . . , n)
n
| r |n =| a1 n−1
a0
r + ··· + an−1
a0
r + an
a0
|≤ λ(| r |n−1 + · · · + | r | +1) = λ |r| −1
|r|−1
Ejercicio. Dada la ecuación p(x) = x7 −2x6 +x5 −x4 +2x3 −3x2 +7x−1 =
0, se pide acotar sus raı́ces y obtener (utilizando alguno de los métodos
anteriores) cotas superiores e inferiores de sus raı́ces reales.
f1 (x1 , x2 ) = 0
f2 (x1 , x2 ) = 0
34 Capı́tulo 2. Resolución numérica de ecuaciones no lineales
donde ahora es g(x) = x − Jf−1 (x)f (x). El método definido por esta g se
denomina método de Newton para sistemas, es localmente convergente
con convergencia de segundo orden y viene dado por el algoritmo
x3 − 3xy 2 + 1 = 0
3x2 y − y 3 = 0
1
partiendo
√
del punto inicial (x0 , y0 ) = (1, 1) (la solución exacta es s1 = 2
y
3 ∼
s2 = 2 = 0,866025).
3. Utilizando el métdo iterativo del punto fijo, encontrar una raı́z próxima
a x0 = 0 de la ecuación 2x − 5x + 2 = 0, trabajar con cuatro decimales
redondeados e iterar hasta que | xi − xi−1 |< 0,00005.
12. Realizar al menos una iteración con el método de Newton para sistemas,
a fin de aproximar la raı́z del sistema
x − x2 − y 2 = 0
y − x2 + y 2 = 0
13. Con el método de Newton para sistemas, realizar dos iteraciones a fin
de aproximar la raı́z del sistema
x2 − 10x + y 2 + 8 = 0
xy 2 + x − 10y + 8 = 0
Trabajos propuestos:
Resolución numérica de
sistemas lineales. Problemas de
valores propios
39
40 Capı́tulo 3. Resolución numérica de sistemas lineales
1
Ejemplos de normas en Rn y Cn son k x kp = ( ni=1 | xi |p ) p para 1 ≤
P
p < ∞ y k x k∞ = máx1≤i≤n | xi | (denominada norma del supremo); casos
especialmente
Pn interesantes son los P relativos a p = 1 y p = 2 dados por
1
k x k1 = ( i=1 | xi |) y k x k2 = ( ni=1 | xi |2 ) 2 = xt x, aquı́ x denota la
matriz columna con las mismas componentes que el vector x, en tanto que xt
es su matriz traspuesta es decir la matriz fila con las mismas componentes que
x (esta es la norma euclı́dea). Se puede probar que en los espacios vectoriales
de dimensión finita sobre el cuerpo K, de los números reales o complejos,
todas las normas son equivalentes, en el sentido de que definen los mismos
abiertos con la distancia asociada a la norma definida por d(x, y) =k x − y k.
Definición 3 Sobre el espacio vectorial de las matrices cuadradas de orden
n reales o complejas Mn (K), una norma se dice que es una norma matri-
cial si además de las tres propiedades anteriores verifica la siguiente:
∀A, B ∈ Mn (K) es k AB k ≤k A k k B k
Definición 4 Una norma vectorial k · kV sobre Kn y una norma matricial
k · kM sobre Mn (K) se dicen compatibles si se verifica la siguiente propie-
dad:
∀A ∈ Mn (K) y ∀x ∈ Kn es k Ax kV ≤k A kM k x kV
El teorema siguiente , que enunciamos pero cuya demostración no hare-
mos, nos dice como construir una norma matricial compatible con una norma
vectorial dada.
Teorema 10 Si k · kV es una norma vectorial sobre Kn y ∀A ∈ Mn (K)
definimos k A k= máxkxkV =1 k Ax kV , entonces k · k es una norma matricial
compatible con k · kV . Se denomina norma inducida o subordinada por
k · kV .
Análisis de errores.
Sea Ax = b un sistema lineal, si se perturba la matriz de términos inde-
pendientes del sistema con 4b, la nueva solución será x + 4x, verificándose
A(x + 4x) = b + 4b
Entonces, se tendrá A4x = 4b o también 4x = A−1 4b y tomando cualquier
norma vectorial y su norma matricial inducida resultará
k4xk ≤ kA−1 kk4bk
lo que nos da una acotación del error absoluto 4x. Si se desea obtener una
acotación del error relativo en x debido a la perturbación de los términos
independientes 4b, basta con escribir
k4xk ≤ kA−1 kk4bk = kA−1 kkAxk k4bk
kbk
≤ kA−1 kkAkkxk k4bk
kbk
resultando
k4xk
kxk
≤ kAkkA−1 k k4bk
kbk
= k(A) k4bk
kbk
es decir que el error relativo en x es menor o igual que k(A) veces el error
relativo en b.
Si el número de condición es grande se dice que la matriz está mal con-
dicionada y la solución puede ser muy sensible con respecto a pequeños
cambios en los términos independientes, en caso contrario se dice bien con-
dicionada.
En general si se perturban tanto la matriz de coeficientes como los térmi-
nos independientes con 4A y 4b resulta una solución x + 4x que cumple
42 Capı́tulo 3. Resolución numérica de sistemas lineales
(A + 4A)(x + 4x) = b + 4b
y se puede probar el siguiente teorema.
Teorema 11 Si k4Ak < kA1−1 k entonces, usando normas vectoriales y ma-
triciales compatibles, se verifica
k4xk k(A)kIk k4Ak k4bk
kxk
≤ k4Ak ( kAk + kbk
)
1−k(A) kAk
Que nos da una acotación del error relativo de la solución en estas condicio-
nes.
Pn xn = bn /ann
xi = (bi − j=i+1 aij xj )/aii (i = n − 1, . . . 2, 1)
A(k+1) = M (k) A
e(k) y b(k+1) = M (k)eb(k)
3.2. Métodos directos de resolución de sistemas lineales 45
siendo
1 0 ... 0 0 ... 0
0 1 ... 0 0 ... 0
.. .. . . .. .. .. ..
. . . . . . .
M (k) = 0 0 ... 1 0 ... 0
0 0 . . . mk+1,k 1 ... 0
.. .. .. .. .. . . ..
. . . . . . .
0 0 . . . mn,k 0 ... 1
la denominada matriz de Frobenius, con unos en la diagonal, con ele-
mentos significativos en la columna k bajo la diagonal definidos por
(k)
aik
mik = − (k) (i = k + 1, . . . , n) y siendo nulos los restantes elementos.
akk
El efecto de multiplicar por esta matriz es el de sacar ceros por debajo
de la diagonal en la columna k.
(k)
2. Si akk 6= 0 entonces t = k y Pktk = I no siendo necesario el intercambio
de filas y quedando A e(k) = A(k) y eb(k) = b(k) .
(k)
El elemento akk se llama pivote, y el hecho de figurar en el denominador
puede acarrear errores de truncaminento grandes al tratar la ecuación por
ordenador, por ello hace falta un método más estable de elegir dicho pivote en
cada paso del método, las estrategias de elección de pivote más usuales
son las siguientes:
Método de Gauss-Jornan.
o sea
y hemos tomado lkk = 1 para todo k. Una vez descompuesta A hay que
resolver los dos sistemas triangulares
Ly = b ∧ U x = y (ii)
el primero de los cuales se resuelve mediante:
bk = lk1 y1 + lk2 y2 + · · · + lkk yk (k = 1, 2, . . . , n) (iii)
relación análoga a la (i). En conseceuncia el algoritmo:
Para cada k = 1, 2, . . . , n, hacer:
48 Capı́tulo 3. Resolución numérica de sistemas lineales
• Para j = k, k + 1, . . . , n calcular:
k−1
X
ukj = akj − lkp upj
p=1
Pk−1
• y k = bk − p=1 lkp yp
• Para i = k + 1, k + 2, . . . , n calcular:
k−1
X
lik = (aik − lip upk )/ukk
p=1
Factorización de Cholesky
Teorema 14 Para matrices A reales son equivalentes:
ii) Existe L triangular inerior real, con elementos diagonales positivos, tal
que A = LLt .
v
u
u j−1
X
2
ljj = ajj −
t ljk
k=1
Ejercicios.
1. Resolver, según el
método de Doolitle,
el sistema Ax = (1, 1, −1)t sien-
1 1 2
do la matriz A = −1 0 1 .
2 1 −1
2. ρ(E) < 1.
3.3. Métodos iterativos de resolución de sistemas lineales 51
Ax = b ⇔ (M − N )x = M x − N x = b ⇔
⇔ M x = N x + b ⇔ x = M −1 N x + M −1 b
los métodos ası́ construidos son consistentes por tanto, según el teorema fun-
damental, serán convergentes si y sólo si ρ(M −1 N ) < 1. Además, el teorema
siguiente asegura que todo método iterativo convergente puede construirse
de esa manera.
como además
resulta que
kEk k E km
k x(m) − x k≤ k x(m) − x(m−1) k≤ k x(1) − x(0) k
1− k E k 1− k E k
que puede utilizarse para estimar el error y como test de parada del programa
correspondiente.
0 0 0 ... 0
−a21 0 0 ... 0
L=
−a31 −a32 0 ... 0
.. .. .. . . ..
. . . . .
−an1 −an2 −an3 ... 0
0 −a12 −a13 . . . −a1n
0 0 −a23 . . . −a2n
U =
0 0 0 . . . −a3n
.. .. .. .. ..
. . . . .
0 0 0 ... 0
3.3. Métodos iterativos de resolución de sistemas lineales 53
Método de Jacobi.
En estas condiciones, el método de Jacobi consiste en hacer
M =D y N =L+U
Dx(k+1) = (L + U )x(k) + b
y en componentes resulta
n
X
(k+1) (k)
xi = (− aij xj + bi )/aii
j=1
j6=i
Método de Gauss-Seidel.
El método de Gauss-Seidel consiste en tomar
M =D−L y N =U
(D − L)x(k+1) = U x(k) + b
i−1
X n
X
(k+1) (k+1) (k)
xi = (− aij xj − aij xj + bi )/aii
j=1 j=i+1
ρ(EG ) = ρ(EJ )2
Asimismo, una matriz se dice tridiagonal si aij = 0 para todo i, j tal que
| i − j |> 1, es decir los elementos que no están en la diagonal principal o en
una paralela por encima o por debajo son nulos.
Método de relajación.
Los métodos del tipo de Gauss-Seidel se conocen con el nombre de méto-
dos de relajación. Si en la descomposición de la matriz A = D − L − U , para
ω 6= 0 escribimos D = ω1 D − 1−ω ω
D, entonces nos quedará A = ω1 D − L −
1−ω
ω
D − U y tomando
1 1−ω
M= D−L y N = D+U
ω ω
obtenemos el método de relajación, que se expresa en forma vectorial
como
1 1−ω
( D − L)x(k+1) = ( D + U )x(k) + b
ω ω
3.4. Introducción al cálculo aproximado de valores y vectores
propios 55
entonces se tiene:
a) Todo valor propio de A está en la unión de los discos Ri , (i = 1, 2, . . . , n)
con Ri = {z | | z − aii |≤ ri }
56 Capı́tulo 3. Resolución numérica de sistemas lineales
9. Dado el sistema
9x − 2y = 5
−2x + 4y − z = 1
−y + z = −5/6
Partiendo de (0, 0, 0), obtener un valor aproximado de su solución apli-
cando seis veces el método de Jacobi, trabajando con cuatro cifras
decimales redondeadas. Hacer lo mismo pero utilizando el método de
Gauss-Seidel.
10. Aplicar el método de Gauss-Seidel obtener la solución exacta del siste-
ma
x + 6y + 2z = 15
x + y − 6z = −3
6x + y + z = 9
realizando los cálculos con tres cifras decimales redondeadas (la solución
exacta se obtiene tras cinco iteraciones).
58 Capı́tulo 3. Resolución numérica de sistemas lineales
7x − 2y + 3z = 0
−x + 5y − 2z = 11
x + y − 3z = 6
Se pide
Trabajos propuestos:
Se propone en este tema realizar alguno de los siguientes trabajos:
Interpolación polinomial.
Derivación e integración
numérica
4.1. Interpolación
4.1.1. Introducción. diferentes problemas de interpo-
lación.
El problema de la interpolación consiste en calcular el valor de una función
en un punto, cuando o bien no se conoce la expresión explı́cita de la misma,
o bien no es fácil se evaluar dicha función en ese punto. Para resolverlo, se
construye una función fácil de evaluar y que coincida con la función objeto
del problema en los datos que conocemos sobre esta.
En todo problema de interpolación hay que concretar dos cuestiones bási-
cas: 1o ) los datos que se desea que sean comunes a la función dada y a la que
la va a interpolar, y 2o ) el tipo de función que se va a utilizar como función
de interpolación.
Los tipos más usuales de problemas de interpolación son los que se des-
criben a continuación.
61
62 Capı́tulo 4. Interpolación. Derivación e integración numérica
Qn
i=0 (x − xi )
i6=k (x − x0 ) · · · (x − xk−1 )(x − xk+1 ) · · · (x − xn )
lk (x) = n
Q =
i=0 (xk − xi ) (xk − x0 ) · · · (xk − xk−1 )(xk − xk+1 ) · · · (xk − xn )
i6=k
fk − pk−1 (xk )
Ak = Qk−1
i=0 (xk − xi )
dado que p0 (x) = f (x0 ), podemos definir A0 = f (x0 ) y con la fórmula anterior
se pueden calcular sin dificultad los coeficientes A0 , A1 , . . . , An ; al coeficiente
Ak se le llama diferencia dividida de f en los puntos x0 , x1 , . . . , xk y se
representa por
Ak = f [x0 , x1 , . . . , xk ]
con ayuda de estos coeficientes el polinomio de interpolación de f en los
nodos x0 , x1 , . . . , xn puede escribirse en la forma
pn (x) = A0 +A1 (x−x0 )+A2 (x−x0 )(x−x1 )+· · ·+An (x−x0 )(x−x1 ) · · · (x−xn−1 )
o también
n
X i−1
Y
pn (x) = f [x0 , x1 , . . . , xi ] (x − xj )
i=0 j=0
k
X f (xi )
f [x0 , x1 , . . . , xk ] =
i=0
(xi − x0 ) · · · (xi − xi−1 )(xi − xi+1 ) · · · (xi − xk )
4.1. Interpolación 65
4fk = fk+1 − fk
nos queda
n
X t
p(x) = p(x0 + th) = 4i f 0
i
i=0
n n
X t+i−1 i
X
i −t
p(x) = p(xn + th) = ∇ fn = (−1) ∇ i fn
i i
i=0 i=0
f (n) (ξ)
f [x0 , x1 , . . . , xn ] =
n!
Splines cúbicos
Para interpolar f sobre los puntos a = t1 < t2 < . . . < tn = b mediante
un spline cúbico, sean fi = f (ti ), hi = ti+1 − ti y Si (x) la restricción de
S(x) al subintervalo [ti , ti+1 ]. Como Si (x) es un polinomio de grado tres, su
derivada segunda Si00 es una función lineal; entonces, denotando por zi , zi+1
a los valores, desconocidos de momento, de Si00 en [ti , ti+1 ] respectivamente,
se tendrá:
x − ti ti+1 − x
s00i (x) = zi+1 + zi
hi hi
e integrando dos veces se obtiene
zi+1 zi
si (x) = (x − ti )3 + (ti+1 − x)3 + Ei x + Fi
6hi 6hi
Ahora el término lineal de coeficientes constantes Ei x + Fi puede escribirse
en la forma Ei x+Fi = Ci (x−ti )+Di (ti+1 −x) y de las condiciones Si (ti ) = fi
y Si+1 (ti+1 ) = fi+1 , se deducen los valores de Ci y Di , quedando el spline en
la forma
zi+1 zi yi+1 zi+1 hi yi zi hi
si (x) = (x−ti )3 + (ti+1 −x)3 +( − )(x−ti )+( − )(ti+1 −x)
6hi 6hi hi 6 hi 6
expresión que garantiza la continuidad del spline S y que este coincide con
f en los nudos t1 < t2 < . . . < tn ; para que s0 sea contı́nua en [t1 , tn ] debe
0
verificarse que Si−1 (ti ) = Si0 (ti ) para i = 2, . . . , n − 1. Entonces, derivando la
expresión del spline Si (x), ası́ como la de Si−1 (x) y evaluando para x = ti ,
se tiene que las zi han de verificar el sistema
6 6
hi−1 zi−1 + 2(hi−1 + hi )zi + hi zi+1 = (fi+1 − fi ) − (fi − fi−1 ) (*)
hi hi−1
para i = 2, . . . , n−1, ası́ pues los valores z1 , z2 , . . . , zn deben verificar las n−2
condiciones anteriores. Por otro lado, la continuidad de S 00 (x) está asegurada
00
pues se tiene, por construcción, que Si−1 (ti ) = zi = S 00 (ti ). Luego si se fijan
arbitrariamente z1 y z2 en (*) resulta un sistema de n − 2 ecuaciones lineales
con n − 2 incógnitas, que denotando por
6 6
bi = (fi+1 − fi ) − (fi − fi−1 )
hi hi−1
se puede escribir como el sistema tridiagonal que sigue
2(h1 + h2 )z2 + h2 z3 = b2 − h1 z1
h2 z2 + 2(h2 + h3 )z3 + h3 z4 = b3
..
.
hn−2 zn−2 + 2(hn−2 + hn−1 )zn−1 = bn−1 − zn
4.2. Derivación numérica 71
−f (c + 2h) + 4f (c + h) − 3f (c)
f 0 (c) ' (2.7)
2h
en tanto que si f es de clase C(3) en un intervalo que contenga a los
puntos c, c + h, c + 2h, se obtiene para el error, utilizando el desarrollo
de Taylor, la expresión
h2 000
R(f ) = f (ξ) (2.7*)
3
con ξ intermedio entre c y c + 2h.
4. Fórmulas con cuatro puntos. En este caso lo más usual es tomar x0 =
c − 2h, x1 = c − h, x2 = c + h y x3 = c + 2h; obteniéndose la expresión
−f (c + 2h) + 8f (c + h) − 8f (c − h) + f (c − 2h)
f 0 (c) ' (2.8)
12h
y si f es de clase C(5) en un intervalo que contenga a los puntos, el
error correspondiente puede escribirse en la forma
h4 (4)
R(f ) = f (ξ) (2.8*)
30
con ξ intermedio a los nodos de interpolación.
h2 (4)
R(f ) = − f (ξ) (2.10*)
12
(b − a)2
R(f ) = f 0 (ξ) (3.4*)
2
Z b
a+b
f (x)dx ' f ( )(b − a) (3.5)
a 2
f 00 (ξ)
R(f ) = (b − a)3 (3.5*)
24
4.3. Integración numérica 77
e integrando resulta
Z b
(b − x0 )2 − (a − x0 )2
p(x)dx = f (x0 )(b − a) + f [x0 , x1 ][ ]
a 2
en particular tomando x0 = a y x1 = b se obtiene la fórmula de cua-
dratura numérica
Z b
1
f (x)dx ' (b − a)[f (a) + f (b)] (3.6)
a 2
conocida como fórmula del trapecio; ahora si f ∈ C(2) ([a, b]) su error
viene dado por
(b − a)3
R(f ) = −f 00 (ξ) (3.6*)
12
con ξ ∈ [a, b].
que si f ∈ C(4) ([a, b]) nos permite obtener la siguiente expresión del
error
(b − a)5 h5
R(f ) = −f (4) (ξ) = −f (4) (ξ) (3.7*)
2880 90
78 Capı́tulo 4. Interpolación. Derivación e integración numérica
en la que h = b−a
2
y ξ es un punto intermedio entre a y b. De la expresión
del error se deduce que es exacta para todo polinomio de grado menor
o igual a 3.
2. Con cuatro puntos igualmente espaciados a, 2a+b
3
, a+2b
3
y b se obtiene
b
b−a
Z
2a + b a + 2b
f (x)dx ' [f (a) + 3f ( ) + 3f ( ) + f (b)] (3.8)
a 8 3 3
3h5
R(f ) = −f (4) (ξ) (3.8*)
80
b−a
siendo ahora h = 3
.
3. Con cinco puntos x0 = a, x1 = a + h, x2 = a + 2h, x3 = a + 3h, x4 =
a + 4h = b (donde h = b−a
4
) se obtiene la fórmula de cuadatura
b
b−a
Z
f (x)dx ' (7f0 + 32f1 + 12f2 + 32f3 + 7f4 ) (3.9)
a 90
8h7
R(f ) = −f (6) (ξ) (3.9*)
945
La mayor precisión del método de Simpson con 2+1 puntos con respecto
a sus rivales, con 1+1 o 3+1 puntos, es general; de hecho, se puede demostrar
el teorema siguiente, que admitiremos sin demostración.
Teorema 29 En las fórmulas de Newton-Côtes cerradas con n par (n + 1
nodos), el error es un infinitésimo del orden de hn+3 . por contra, para n par
el error es del orden de hn+2 (De aquı́ la ventaja de utilizar fórmulas como
la de Simpson, con n par).
de donde se obtiene
Z b n−1
h X
f (x)dx ' [f0 + 2 fj + fn ] (3.10)
a 2 j=1
(b − a)3 (b − a) 2
R(f ) = −f 00 (ξ) 2
= −f 00 (ξ) h (3.10*)
12n 12
(b − a)h4 (b − a)5
R(f ) = −f (4) (ξ) = −f (4) (ξ) (3.11*)
2880 2880n4
con ξ intermedio entre a y b.
x: 0 1 2
f (x) : 1 2 3
x: 0 1 2 3 4
f (x) : 0 1 8 27 64
6. Dada la tabla
x: 0,125 0,250 0,375 0,500
f (x) : 0,792 0,773 0,744 0,704
x: −3 −1 1 3 5 7
f (x) : 14 4 2 8 22 44
√
9. Calcular una aproximación de 2 y dar una cota del error cometido
utilizando el polinomio de interpolación de la función f (x) = 2x en los
puntos −2, −1, 0, 1.
82 Capı́tulo 4. Interpolación. Derivación e integración numérica
sea exacta del mayor grado posible, siendo α un número dado tal que
−1 < α < 1. Utilizar dicha fórmula para estimar el valor de la integral
Z 1r
5x + 13
dx
−1 2
con α = −0,1. Comparar el valor obtenido con el verdadero valor de
dicha integral.
4.4. Problemas y trabajos propuestos 83
Rx
19. Aplicar la regla de Simpson compuesta a la integral 1 1t dt, para obtener
una aproximación de ln2, determinando el número de subintervalos a
considerar para que el error cometido en esa aproximación sea menor
que 10−3 .
20. Utilizar
R 3,4 x la regla del trapecio compuesta para aproximar la integral
1,8
e dx, eligiendo el paso h para que el error cometido sea menor
que 5 · 10−3 . Con el mismo paso anterior, integrarla por la regla de
Simpson compuesta y estimar el error correspondiente.
R2
21. Obtener el valor aproximado de la integral 1 (lnx)2 dx utilizando las
fórmulas compuestas del punto medio, trapecio y Simpson, dividiendo
el intervalo en ocho subintervalos y estimando el error en cada caso.
Trabajos propuestos:
Se propone en este tema realizar alguno de los siguientes trabajos:
Resolución numérica de
problemas de valor inicial para
ecuaciones diferenciales
ordinarias: Métodos
Runge-Kutta y multipaso
lineales
85
86 Capı́tulo 5. Resolución numérica de problemas de valor inicial
Observación: Damos aquı́ una condición suficiente para que f (t, y) ve-
rifique una condición de Lipschitz.
Si f (t, y) y ∂f∂y
(t,y)
son contı́nuas para todo (t, y) ∈ D, siendo D convexo
(lo es en las hipótesis del teorema anterior), por el teorema del valor medio
se tiene
∂f (t, yb)
f (t, y) − f (t, ye) = (y − ye)
∂y
con y ≤ yb ≤ ye o bien ye ≤ yb ≤ y. Entonces, si existe L = sup(t,y)∈D | ∂f∂y
(t,y)
|,
f (t, y) verificará la condición de Lipschitz anterior.
Para el caso vectorial tenemos análogamente el siguiente teorema
Observaciones:
tiene solución única y que esta depende continuamente de los datos inicia-
les. Con las hipótesis antes señaladas esto está garantizado. Aunque no es
suficiente para asegurar una buena resolución numérica; en efecto, si conside-
ramos dos soluciones que salen en el instante t = 0 de y0 e yb0 respectivamente,
se puede probar que
que llamamos red en [a, b], y a los hj = tj+1 − tj , pasos de la red. En general,
por simplicidad en el planteamiento, tomaremos todos los pasos hj = h fijos,
aunque se podrı́an tomar variables siempre que el mayor de ellos tendiera a
cero. Llamaremos método de un paso a todo algoritmo en el que a partir
de los datos tn , yn (aproximacion de la solucion en el punto tn de la red) y el
paso h, podemos calcular un valor yn+1 que aproxima a la solución del PVI
en el punto tn + h.
Algunos de los métodos más antiguos de aproximación numérica de las
soluciones de una ecuación diferencial están motivados por sencillas conside-
raciones geométricas basadas sobre el campo de direcciones (o pendientes)
definidas por el miembro de la derecha de la ecuación diferencial; entre es-
tos están los métodos de Euler y de Euler modificado. Otros más precisos y
sofisticados están basados en los desarrollos en serie de Taylor y los veremos
en un párrafo posterior.
El método de Euler fue propuesto por dicho autor en 1768, en los
primeros dı́as del cálculo. Consiste básicamente en seguir la pendiente del
punto (tn , yn ) sobre un intervalo de longitud h, ası́ la aproximación en el
punto tn + h está dada por
5.2. Métodos de un paso generales: definiciones y resultados 89
y0 = η
(5.1)
yn+1 = yn + hΦ(tn , yn ; h)(n = 0, 1, ..., N − 1)
donde φ es una función que depende de la ecuación diferencial considerada y
se llama función incremento del método, puede pensarse como el incremen-
to aproximado por unidad de paso. Para el denominado método de Euler
explı́cito o progresivo, descrito antes es φ(t, y; h) = f (t, y) y para el méto-
do de Euler implı́cito o regresivo, dado por el algoritmo
yn+1 = yn + hf (tn+1 , yn+1 )
la función incremento φ habrı́a que definirla implı́citamente por medio de la
ecuación funcional
φ(t, y; h) = f (t + h, y + hφ(t, y; h))
En general, si la función incremento se puede expresar explı́citamenteéto-
do se llama implı́cito. Sin pérdida de generalidad, tomaremos redes unifor-
mes, con paso fijo h = tj+1 − tj = b−a
N
> 0 (en otro caso basta con hacer que
h = máx hn −→ 0). Dada la ecuación diferencial y 0 (t) = f (t, y(t)), supondre-
mos, como siempre, que f es continua en D y lipschitziana con respecto a y
en D o dicho brevemente que f ∈ CL .
Definición 15 Llamaremos error local en el punto (t̃, ỹ) con paso h al
que se cometerı́a partiendo de ese punto con paso h, dividido por h, es decir
1
[y(t̂ + h; t̂, ŷ) − ŷ] − Φ((t̂, ŷ; h)
e(t̂, ŷ; h) =
h
o sea es la diferencia entre el incremento exacto y aproximado por unidad de
paso.
90 Capı́tulo 5. Resolución numérica de problemas de valor inicial
y el esquema perturbado
ŷ0 = y0 + ω0
(5.3)
ŷn+1 = ŷn + hΦ(tn , ŷn ; h) + ωn+1 (n = 0, 1, ..., N − 1)
C (p) , se
T
Y se dice convergente de orden p si para todo PVI con f ∈ CL
verifica que
máx | yn − y(tn ) |= O(hp ) (h → O+ )
0≤n≤N
Nos será útil introducir un nuevo concepto, a saber la consistencia, que nos
mide cómo las soluciones exactas verifican la ecuación del método numérico.
Teorema 36 Sea f : [a, b]×Rs → Rs de clase C (p) y suponer que las funcio-
p
nes Φ(t, y; h), ∂Φ
∂h
(t, y; h), ... , ∂∂hΦp (t, y; h) son continuas en [a, b]×Rs ×[0, h∗ ],
siendo Φ(t, y; h) lipschitziana con respecto a y en dicho dominio. Entonces,
una condición necesaria y suficiente para que el método numérico de fun-
ción incremento Φ(t, y; h) sea de orden, al menos, p es que se verifiquen las
condiciones siguientes:
Φ(t, y; 0) = f (t, y)
∂Φ
∂h
(t, y; 0) = 12 f (1) (t, y)
...
∂ p−1 Φ
∂hp−1
(t, y; 0) = p1 f (p−1) (t, y)
Métodos de Taylor
T (p)de orden p. Si la función que define la ecuación
diferencial es f ∈ CL C ; entonces, la solución exacta del PVI
0
y (t) = f (t, y(t)), ∀t ∈ [a, b]
PV I
y(tn ) = yn
admite el siguiente desarrollo de Taylor si tn , tn + h ∈ [a, b]:
siendo dp (t) independiente del paso h, repitiendo la integración con paso h/2
se tendrá:
y(t) − yh/2 (t) = dp (t)(h/2)p + O(hp+1 )
y restando a la primera la segunda, resulta
1 p
yh/2 (t) − yh (t) = (1 − )h dp (t) + O(hp+1 ) = (2p − 1)(h/2)p dp (t) + O(hp+1 )
2p
luego
yh/2 (t) − yh (t)
= (h/2)p dp (t) + O(hp+1 )
2p − 1
por tanto
yh/2 (t) − yh (t)
E=
2p − 1
es una estimación asintóticamente correcta del error de la solución de
orden p con paso h/2 y se llama de Richardson.
En realidad, seguún el teorema anterior, el error global está dado por un
desarrollo de la forma
donde las di (t) son independientes del paso h; por tanto, se tendrá
luego
2p yh/2 (t) − yh (t) yh (t) − 2p yh/2 (t)
= = yh/2 (t) + E
2p − 1 1 − 2p
es una aproximación de y(t) de orden superior a las previas (concretamente
de orden mayor o igual que p + 1), que podemos llamar aproximación
mejorada de Richardson. Este procedimeinto se puede reiterar y obtener
aproximaciones de orden superior, siendo aplicable a otros problemas cuyo
desarrolo del error es similar al expuesto, lo vemos abreviadamente en lo que
sigue.
donde
K1 = f (tn , yn )
2 = f (tn + c2 h, yn + ha21 K1 )
K
K3 = f (tn + c3 h, yn + h(a31 K1 + a32 K2 ))
..........................................
km = f (tn + cm h, yn + h(am1 K1 + am2 K2 + am,m−1 Km−1 ))
b1 b2 ... bm−1 bm
o abreviadamente
c A
bt
donde A es una matriz real de orden m × m con ceros en la diagonal y por
encima de esta, b y c son matrices reales de órdenes m × 1, cuyos elementos
aparecen en la tabla anterior, en tanto que bt es la traspuesta de la matriz
columna b. En la forma usual de un método explı́cito, se escribirá
yn+1 = yn + hΦ(tn , yn ; h)
5.5. Métodos Runge-Kutta explı́citos de m etapas: formulación
general 99
con Φ(tn , yn ; h) = m
P Pj−1
j=1 bj Kj y Kj = f (tn + cj h, yn + h s=1 ajs Ks los defi-
nidos anteriormente, por tanto
m
X m
X
Φ(t, y; 0) = bj f (t, y) = f (t, y) bj
j=1 j=1
Pm
luego, en las condiciones del teorema 6 será consistente si y sólo si j=1 bj =
1, condición que supondremos siempre.
si se introducen los vectores de Rs+1 : ȳ(t) = (t, y(t))t , ȳ0 = (t0 , y0 )t y f¯(ȳ) =
(1, f (t, y(t)))t el problema de valor inicial no autónomo anterior es equivalente
al problema autónomo
ȳ (t) = f¯(ȳ(t)), ∀t ∈ I
0
ȳ(t0 ) = ȳ0
Por tanto, si aplicamos el método RK(m) (5.6) a este, interesa que la solución
ȳn+1 (t) en tn+1 sea de la forma (tn+1 , yn+1 ), donde tn+1 = tn + h e yn+1 sean
los obtenidos anteriormente; y puede probarse, pero no lo haremos, que esto
ocurre para toda ecuación diferencial sı́ y sólo si los coeficientes del método
verifican las relaciones m
X
bj = 1
j=1
i−1
X
aij = ci (i = 1, 2, . . . , m)
j=1
donde
i−1
X
Ki = f (yn + h aij Kj ) (i = 1, 2, . . . , m)
j=1
1) b1 + b2 + b3 = 1
2) b2 c2 + b3 c3 = 1/2 (5.9)
3) b2 c22 + b3 c23 = 1/3 y 4) b3 a32 c2 = 1/6
Pk Pk
j=0 αk−j y(tn−j ) = h j=0 βk−j y 0 (tn−j ) + αk EDL(tn ) (5.18)
Por tanto, se tiene que EDL(tn ) = L[y(tn ); h]/αk . Además, el operador lineal
y el método lineal multipaso (ρ, σ), se dicen de orden p si este es el máximo
entero positivo tal que
o equivalentemente
1
L[y(t); h] = O(hp ) (cuando h −→ 0+ ) ∀y(t) ∈ C p+1 ([a, b])
h
El siguiente teorema da las condiciones de orden de un método lineal multi-
paso.
k
1 X p
. . . , cp = (j αj − pj p−1 βj ) = 0 y cp+1 6= 0
p! j=0
lı́m | y(tn ) − ηn |= 0 (n = 0, 1, . . . , k − 1)
h→0+
máx | dn |= O(hp )
k≤n≤N =[ Th ]
(−1)j τ (τ + 1) . . . (τ + k − 1)
−τ (−τ )(−τ − 1) . . . (−τ − k + 1)
= =
j j! j!
(5.27)
5.7. Fórmulas de Adams 109
ln(1 − t) 1
− G(t) =
t 1−t
y de los desarrollos en serie de MacLaurin
1
= 1 + t + t2 + . . .
1−t
ln(1 − t) t t2
− = 1 + + + ...
t 2 3
obtenemos la identidad formal entre las series de polinomios anteriores
t t2 t3
(1 + + + + . . . )(γ0 + γ1 t + γ2 t2 + γ3 t3 + . . . ) = (1 + t + t2 + t3 + . . . )
2 3 4
y comparando los coeficientes de las potencias respectivas de t en ambos
miembros resulta
γm−1 γm−2 γ0
γm + + + ··· + = 1 (m = 0, 1, 2, . . . ) (5.28)
2 3 m+1
de la que, fácilmente, obtenemos para los primeros valores de m:
m 0 1 2 3 4 5 6 ...
γm 1 1/2 5/12 3/8 251/720 95/288 19087/60480 . . .
k Z 0
X −τ
=h γj∗ 5 j
yn0 siendo γj∗ j
= (−1) dτ
−1 j
j=0
6.1. Introducción
Hasta ahora hemos estudiado la solución numérica de PVI, pero hay otro
tipo de problemas cuya solución interesa en la práctica, como por ejemplo,
hallar la solución de
00
y (t) = f (t, y(t), y 0 (t)), ∀t ∈ [a, b]
PC (6.1)
y(a) = α, y(b) = β
113
114 Capı́tulo 6. Métodos en diferencias finitas
y(t) = 7sent + 3cost. Pero, este modo de resolución no es, en general, viable
como puede verse con unos sencillos ejemplos.
Antes de considerar los métodos numéricos utilizados para resolver este
tipo de problemas, veamos algunos resultados relativos a la existencia y uni-
cidad de soluciones en este tipo de problemas; resultados poco generales y
complicados de establecer.
∂y
y ∂f (t,y,y
∂y 0
son continuas en D. Entonces, si se verifican las condi-
ciones:
∂f (t,y,y 0 )
1. ∂y
> 0 ∀(t, y, y 0 ) ∈ D
∂f (t,y,y 0 )
2. ∃µ | | ∂y 0
|≤ µ, ∀(t, y, y 0 ) ∈ D
Ay = b
116 Capı́tulo 6. Métodos en diferencias finitas
2 + h2 q(t1 ) −1 + h2 p(t1 ) 0 ... 0
−1 − h2 p(t2 ) 2 + h2 q(t2 ) −1 + h2 p(t2 ) ... 0
h 2
A=
0 −1 − 2 p(t3 ) 2 + h q(t3 ) ... 0
.. .. .. .. ..
. . . . .
0 ... 0 −1 − h2 p(tn−1 ) 2 + h2 q(tn−1 )
−h2 r(t1 ) + (1 + h2 p(t1 ))y0 y1
−h2 r(t2 )
y2
b= .. ..
y=
. .
−h2 r(tn−1 )
yn−1
−h r(tn ) + (1 − h2 p(tn ))yn+1
2
yn
Y para el que se tiene el siguiente resultado.
Teorema 46 Supongamos que p(t), q(t), r(t) son continuas en [a, b]. Enton-
ces, si q(t) ≥ 0 sobre [a, b], el sistema lineal anterior tiene una única solución,
siempre que h < 2/L, siendo L = máxt∈[a,b] | p(t) |.
Observaciones:
∂ 2u ∂ 2u ∂ 2u ∂u ∂u
a(x, y) +b(x, y) +c(x, y) +d(x, y) +e(x, y) +f (x, y)u = g(x, y)
∂x2 ∂x∂y ∂y 2 ∂x ∂y
(6.5)
donde u es una función a determinar sobre algún dominio Ω, verifican-
do la ecuación (6.5) y algunas condiciones especı́ficas sobre la frontera. Si
g(x, y) = 0 la ecuación se dice homogénea y en caso contrario completa o no
homogénea. Atendiendo a los términos conteniendo las derivadas de mayor
orden, la ecuación (6.5) se dice que en el punto (x, y) es del tipo:
2. Parabólico si b2 − 4ac = 0
Si a(x, y), b(x, y) y c(x, y) son constantes en la región Ω, el tipo también lo es.
Ejemplos paradigmáticos de cada una de ellas son las ecuaciones siguientes:
∂u
= g, en Γ
∂n
6.4. Ecuaciones elı́pticas: Problemas de valor en la frontera para
ecuaciones de Poisson o Laplace 119
∂u
α + βu = g en Γ
∂n
ΩH {(xi , yj )|1 ≤ i ≤ n, 1 ≤ j ≤ m}
(6.9)
ΓH = {(x0 , y0 ), . . . , (xn+1 , y0 ), (x0 , ym+1 ), . . . , (xn , ym+1 )}
son conocidos los valores de u en los 2(n+m) puntos de la frontera que apare-
cen en las mismas, por tanto (6.10) se reduce a un sistema de nm ecuaciones
lineales de coeficientes constantes con el mismo número de incógnitas ui,j
que serán las aproximaciones de la solución buscada en los puntos interiores
de la malla. Para la resolución de este sistema si el número de ecuaciones
es alto, que es lo normal, se suelen utilizar métodos iterativos tipo Jacobi,
Gauss-Seidel o relajación.
En relación a este problema, podemos enunciar los dos resultados siguien-
tes.
h2 ∂ 4 u(xi + θi h, yj ) k 2 ∂ 4 u(xi , yj θj k)
τ (u) = −[ + ] (6.12)
12 ∂x4 12 ∂y 4
y si las derivadas cuartas anteriores de la solución u están acotadas por µ1
y µ2 respectivamente en ΩH se tiene
1 2
| τ (u) |≤ [h µ1 + k 2 µ2 ] (6.13)
12
Y si la norma de la partición tiende a cero se tiene la convergencia, es decir
ui,j −→ u(xi , yj ).
y la condición inicial
k2
u(xi , tj +k) = u(xi , tj )+kut (xi , tj )+ utt (xi , tj +θj k) con 0 < θj < 1 (6.17)
2
por tanto se tiene
u(xi , tj + k) − u(xi , tj ) k
ut (xi , tj ) = − utt (xi , tj +θj k) con 0 < θj < 1 (6.18)
k 2
estando dada la aproximación de la derivada temporal en diferencias progre-
sivas por
u(xi , tj + k) − u(xi , tj )
ut (xi , tj ) ∼
= (6.19)
k
Análogamente, los desarrollos de Taylor respecto a la variable x proporcionan
la fórmula
u(x +k,t )−2u(xi ,tj )+u(xi−1 ,tj ) h2
uxx (xi , tj ) = i j h2
− u (x
12 xxxx i
+ ξi h, tj )
(6.20)
siendo − 1 < ξi < 1
k h2
τij = utt (xi , tj + θj k) − uxxxx (xi + ξi h, tj ) (6.23)
2 12
De la ecuación aproximada (6.22) puede deducirse el algoritmo
ui,o = f (xi ), i = 1, 2, . . . , n − 1
Uj = AUj−1 , j = 1, 2, . . . , m (6.25)
donde
1 − 2r r ... 0 0
r 1 − 2r ... 0 0
A=
.
.. .
.. .. .. ..
. . .
0 0 ... 1 − 2r r
0 0 ... r 1 − 2r
u1,j f (x1 )
.. ..
. .
Uj =
.
..
U0 = .
..
.
..
.
..
un−1,j f (xn−1 )
El término r = hk2 se conoce como número o constante de Courant. El
esquema en diferencias considerado se dice que es un método explı́cito en
diferencias progresivas. Si la solución exacta u(x, t) posee derivadas parciales
continuas de cuarto orden, el método es de orden O(k + h2 ). El método se
puede recordar por la denominada “molécula computacional” que indica
que los nuevos valores ui,j+1 , se calculan explı́citamente en términos de los
previos ui−1,j , ui,j , ui+1,j , como se aprecia en la figura siguiente.
Uj = Aj U0 , j = 1, 2, . . . (6.26)
6.5. Ecuaciones parabólicas: la ecuación del calor 123
lo cual ocurrirá sı́ y sólo si ρ(A) < 1 . Y puesto que la matriz de iteración
A = I − rB, siendo I la matriz identidad de orden n − 1 y B la matriz
2 −1 . . . 0 0
−1 2 . . . 0 0
.. .. .. .. ..
B= . . . . .
0 0 . . . 2 −1
0 0 . . . −1 2
todo valor propio de A es de la forma λi = 1−2rµi , siendo µi un valor propio
de B. Partiendo de esto, puede probarse que una condición necesaria para
la estabilidad de este algoritmo es que se verifique
k 1 1
r= 2
≤ ⇐⇒ k ≤ h2 (6.27)
h 2 2
Esta restricción hace que el método progrese lentamente. Por ejemplo, si
h = 0, 01 el máximo valor permitido de k es 5×10−5 . Si deseamos calcular una
solución para 0 ≤ t ≤ 10, entonces el número de pasos en el tiempo será 2 ×
105 y el número de puntos de la malla debe ser superior a 20 millones, de
modo que la elegancia y sencillez del método van acompañados de una cierta
ineficacia, que se remedia en parte en los métodos implı́citos que veremos
más adelante. Ejemplos ilustrativos se pueden ver en Tveito and Whinter.
También se verifica el siguiente teorema de convergencia (Iserles, 1998)
1
Teorema 47 Si 0 < r ≤ 2
el método es convergente.
u(xi ,tj+1 )−u(xi ,tj ) u(xi+1 ,tj )−2u(xi ,tj )+u(xi−1 ,tj ) u(xi+1 ,tj+1 )−2u(xi ,tj+1 )+u(xi−1 ,tj+1
k
− 12 [ h2
+ h2
] =0
que en forma matricial, se expresa como
AUj+1 = BUj , j = 0, 1, 2, . . . , m − 1
siendo
1 + r − 2r ... 0 0
− 2r 1 + r ... 0 0
A=
.. .. .. .. ..
. . . . .
1 + r − 2r
0 0 ...
0 0 ... − 2r 1 + r
y
r
1−r 2
... 0 0
r
2
1 − r ... 0 0
B=
.. .. .. .. ..
. . . . .
r
0 0 ... 1 − r 2
r
0 0 ... 2
1 − r
A es tridiagonal, simétrica y definida positiva, ∃A−1 , y pueden emplearse
los métodos especiales para este tipo de matrices. La denominada “molécula
computacional” del método se ilustra en la figura siguiente.
ui,j+1 = (raij −sbij )ui−1,j +(1+kcij −2raij )uij +(raij +sbij )ui+1,j +kdij (6.33)
xi = ih, i = 0, 1, . . . , n
siendo
2(1 − r2 ) r2 ... 0 0
u1j
..
r2 2(1 − r2 ) ... 0 0 .
A= .. .. .. .. .. ..
, Uj =
. . . . . .
2(1 − r2 ) r2 ..
0 0 ...
.
0 0 ... r2 2(1 − r2 ) un−1,j
Para calcular Uj+1 se requiere Uj y Uj−1 , por tanto para iniciar el proceso
(6.41) para calcular U2 , es necesario, además del valor de U0 dado por las
condiciones iniciales, calcular U1 ; aproximando ut (x, 0) con el error de orden
O(k 2 ), similar al error de truncatura (6.39), lo que puede hacerse de la forma
u(xi , t1 ) − u(xi , 0) k k2
= ut (xi , 0) + utt (xi , 0) + uttt (xi , θk) (0 < θ < 1)
k 2 6
Suponiendo que la ecuación de onda es válida en t = 0, y que está definida
f 00 (x), se tiene
u(xi , t1 ) − u(xi , 0) k
= g(xi ) + 2 (f (xi+1 ) − 2f (xi ) + f (xi−1 )) + O(k 2 + kh2 )
k 2h
es decir
r2
u(xi , t1 ) = u(xi , 0) + kg(xi ) + [f (xi+1 ) − 2f (xi ) + f (xi−1 )] + O(k 3 + k 2 h2 )
2
Luego, para representar los valores aproximados ui1 (i = 1, 2, . . . , n − 1), se
puede utilizar la ecuación en diferencias siguiente
r2
ui1 = (1 − r2 )f (xi ) + [f (xi+1 ) + f (xi−1 )] + kg(xi ) (6.42)
2
Estabilidad del método. Por separación de variables discretas, se puede
deducir que el método es estable si r ≤ 1 (o equivalentemente si k ≤ h).
6.6. Ecuaciones hiperbólicas: la ecuación de ondas 129
utt ∼
u −2u +u
= i,j+1 ki,j 2
i,j−1
(6.43)
uxx ∼
u −2u +ui−1,j+1 ui+1,j−1 −2ui,j−1 +ui−1,j−1
= 21 [ i+1,j+1 i,j+1
h2
+ h2
]
ui−1,j+1 −2(1+r2 )ui,j+1 +ui+1,j+1 = −ui−1,j−1 −ui+1,j−1 −4r2 uij +2(1+r2 )ui,j−1
(6.44)
h
siendo ahora r = k , y cuya molécula computacional figura a continuación.
Capı́tulo 7
Bibliografı́a
131
132 Capı́tulo 7. Bibliografı́a