Академический Документы
Профессиональный Документы
Культура Документы
CÁLCULO
NUMÉRICO
Hugo Franco Paats
Introducción al Cálculo Numérico
CONTENIDO
1.1- Introducción
1.2- Representación de números reales
1.3- Errores
1.4- Análisis del Error en Aritmética de Coma Flotante
1.5- Análisis del Error en las Operaciones Aritméticas
1.6- Ejercicios
2.1 – Introducción
2.2 – Fase 1: Aislamiento de raíces
2.3 – Fase 2: Refinamiento
2.4 – Método de la bisección
2.5 – Método de la Falsa Posición
2.6 – Método de la Falsa Posición Modificado
2.7 – Método Iterativo Lineal (MIL)
2.8 – Método de Newton
2.9 – Método de la Secante
2.10 – Comparación de los métodos
2.11 – Ejercicios
3.1 - Introducción
3.2 – Métodos directos
3.3 – Métodos Iterativos
3.4 – Comparación de los métodos
3.5 – Ejercicios
4 – INTERPOLACIÓN Pág. 45
4.1 – Introducción
4.2 – Interpolación polinómica
4.3 – Interpolación de Lagrange
4.4 – Formula de Newton
4.5 – Análisis del Error en la interpolación
4.6 – Evaluación del grado del polinomio interpolador
4.7 – Fenómeno de Runge
4.8 – Interpolación Segmentaria Spline
4.9 – Ejercicios
5.1 – Introducción
5.2 – Método de los mínimos cuadrados
5.3 – Caso Discreto
5.4 – Caso continuo
5.5 – Linealización
5.6 – Error cuadrático medio
5.7 – Ejercicios
7.1 – Introducción
7.2 – Método de Euler
7.3 – Método de Heun o Euler Modificado
7.4 – Métodos de Runge-Kutta
7.5 - Ejercicios
CAPITULO 1
1.1 - INTRODUCCIÓN
El cálculo numérico o análisis numérico, es la rama de las matemáticas que se encarga de diseñar
algoritmos para que, a través de números y reglas matemáticas simples, se pueda simular procesos
matemáticos más complejos aplicados a problemas reales.
Hay muchos tipos de métodos numéricos, y comparten una característica común: invariablemente se deben
realizar un buen número de tediosos cálculos aritméticos. Estos, pueden manejar la no linealidad de las
ecuaciones, sistemas de ecuaciones grandes y geometrías complicadas, comunes en la ingeniería.
Los conocimientos de los conceptos básicos asociados al uso de programas (software) disponibles
comercialmente, que aplican métodos numéricos, pueden ser herramientas muy poderosas que ayudan a la
resolución de problemas complejos de ingeniería. Al mismo tiempo, es importante conocer y controlar los
diferentes tipos de errores que son inseparables de los cálculos numéricos a gran escala, de manera a
poder evaluar correctamente los resultados y por ende la solución al problema asociado.
El resultado del cálculo numérico es siempre una aproximación, aunque (en principio) los resultados
pueden hacerse tan exactos como se quiera.
La resolución de tales problemas envuelve varias fases o etapas que pueden ser estructuradas:
Cada etapa puede presentar una serie de errores asociados al proceso como:
• Error en la recolección de datos
• Errores de apreciación
• Precisión de los equipos
• Errores en la secuencia de operaciones
Uno de los principales errores se debe a la representación de los números reales dentro del computador. La
representación de los números se realiza por medio de un número limitado de dígitos, lo que produce una
pérdida de precisión.
Los computadores representan los números en notación científica normalizada o aritmética de coma flotante
(A.C.F). Un número está representado en notación científica normalizada cuando todos los dígitos del
número están a la derecha de la coma decimal y este primer dígito es diferente de cero.
Ejemplo 1.1: 785,321× 10 = 0,785321× 1014
11
Por lo tanto cualquier número real diferente de cero, puede representarse en notación científica normalizada
o Aritmética de Coma Flotante, de la siguiente forma: I = ± m × 10 ;
e
32 bits
1 23 1 7
SM Mantisa SE Exponente
SM = signo de la mantisa
= −1 , … ×2
SE = signo del exponente
…
(1.1)
Considerando los siete bits del exponente, se observa que el mismo se encuentra en el rango [-127, 127].
Entonces, esta máquina no puede manejar números con una magnitud mayor que
(0,111...11) × 2127 ≅ 2127 ≅ 1038 ,
ni menor que (0,100...).2 ≅2 −127 −127 −38
≅ 10 . La conversión del sistema
decimal a binario para efectuar los cálculos en los computadores, acarrean una serie de errores asociados
con el número limitado de dígitos con los que se representan los números (bits). Dado un número “N”, su
representación en ACF de “ t ” dígitos está hecha por truncamiento o redondeo. Este número podrá ser
representado en el sistema, si el exponente “e” estuviese dentro de los límites “m” y “M”.
Como los computadores utilizan el sistema binario en aritmética de coma flotante, incluso números con una
representación finita en decimal, como 0,1 o 27,9; tienen una representación binaria infinita o decimales
binarios periódicos. Por ello, cuando estos números se almacenan en coma flotante se debe “cortar” a una
cantidad finita de bits, y esto produce un error de representación del número.
Formato IEEE-754 en coma flotante Existen varios formatos para la representación de números en
coma flotante en un computador, aunque el estándar, y por ello el utilizado en la mayoría de los
computadores, es el formato ANSI/IEEE estándar 754 de 1985, que llamaremos IEEE-754 para abreviar. Se
puede representar números en precisión simple (float), doble (double) y cuádruple (quadruple) que tienen
32, 64 y 128 bits de longitud, respectivamente. En la figura siguiente, se muestra este formato en coma
flotante, sistema binario (base 2), en doble precisión o de 64bits. Como el primer dígito de la mantisa, que
está normalizada, debe ser necesariamente igual a 1, se aprovecha este bit para almacenar en su lugar el
signo de la mantisa.
64bits
1 11 52
± Exponente Mantisa
Este formato permite representar +0 y -0, lo que a veces puede ser ventajoso. Se utilizan los 11 dígitos
e −1
siguientes para el exponente y su signo. Este número entero se representa en exceso a 2 − 1 = 1023 ,
[
por lo que se puede representar solamente los números enteros en el rango − 2 + 1;2
e −1 e −1
]
= [− 1022;1024] .
El exponente máximo 1024 se reserva para representar los números excepcionales como ± ∞ y NaN (Not a
Number). Los primeros se representan cuando la mantisa es 0 y se producen cuando una operación
aritmética genera un número más grande que el máximo representable, es decir, se produce un
desbordamiento por exceso u overflow. NaN se genera en operaciones aritméticas de resultado no
determinado, como 0/0, ∞ / ∞ , ∞ ± ∞ , etc.
La inexactitud se define como un alejamiento sistemático de la verdad. La imprecisión, sobre el otro lado, se
refiere a la magnitud del esparcimiento de los valores.
Los métodos numéricos deben ser lo sufrientemente exactos, o sin sesgo para satisfacer los requerimientos
de un problema particular de ingeniería y también deben ser lo suficientemente precisos para ser adecuados
en el diseño. A lo largo de este curso, usaremos el término error para representar tanto la inexactitud como
la imprecisión en las predicciones.
1.3 – ERRORES
La presencia de errores en el resultado de cualquier proceso numérico es inevitable, pueden haber errores
en los datos, pero aún con los datos exactos el propio proceso de cálculo puede ser fuente de error. Por lo
tanto, existen errores en:
• Datos
• Operaciones
• Procedimientos
En este capítulo vamos a analizar los dos primeros.
Ejemplo 1.2: representar los siguientes números en un sistema de ACF de 3 dígitos, para base decimal
β = 10 , m = -4 y M= 4, de los siguientes números:
Número representación por truncamiento por redondeo
1,25 0,125 × 101 0,125 × 101
− 238,15 − 0,238 × 103 − 0,238 × 103
27,1828 0,271× 102 0,272 × 102
0,000007 Error….exponente menor que –4 (anderflow) Error...
7.185 .221,82 Error….exponente mayor que 4 (overflow) Error...
Error Absoluto: Definimos como error absoluto: a la diferencia entre el valor exacto de un número “ x ” y
su valor aproximado “ x ”.
E Ax =| x − x |
(1.2)
En general apenas el valor aproximado x es conocido, siendo que estamos en la búsqueda del valor
exacto, por lo que es de interés conocer un “límite superior” o una “estimativa” para el valor del error
absoluto, a la que denominamos “cota del error absoluto” δ Ax y que veremos más adelante.
Ejemplo 1.3: considerando los siguientes números aproximados x = 2.119,9 con error absoluto
E Ax < 0,1 y el número aproximado y = 5,3 con E Ax < 0,1
¿Se puede concluir que los dos números tienen la misma precisión en la representación?
Siendo que ambos tienen el mismo error absoluto no es posible determinar la precisión de cada
representación.
x es mayor que el valor exacto x , el error absoluto será negativo, entonces decimos
Si el valor aproximado
que la aproximación es por exceso. Si el valor aproximado x es menor que el valor exacto x el error
absoluto será positivo y la aproximación será por defecto.
Error Relativo: El Error Relativo vamos a definirlo como el cociente entre el error absoluto del número y
su valor aproximado:
−
E Ax | x − x|
E Rx = =
x |x| (1.3)
0,1 0,1
del ejemplo anterior E Rx < ≅ 0,454567 × 10 − 4 y E Ay =
≅ 0,02
2.199,9 5,3
por lo que vemos que E Rx < E Ry , por lo que concluimos que el número x está mejor representado que el
valor de y .
El error absoluto no es más que la distancia entre el valor exacto y el valor aproximado, mientras que el
error relativo mide el error entendido como una porción del valor exacto o del valor aproximado, para este
caso, ya que nos encontramos en la búsqueda del valor exacto.
Ejemplo 1.4: encontrar el error absoluto y el error relativo al aproximar el número x = 3,141592 ...
por x = 3,14
E Ax = 3,141592 ... − 3,14 = 0,001593
E 0,001593
E Rx = Ax = = 0,000507
x 3,14
Error Porcentual: El error porcentual no es otra cosa que el error relativo multiplicado por 100
E % = E Rx × 100% . Del ejemplo anterior: E Px % = 0,05%
Cota del Error Absoluto: La cota de error es el error máximo que se puede cometer al realizar una
medida o tomar una aproximación. Si el error cometido al tomar 2,718 es menor que una milésima entonces
diremos que 0,001 es una cota de dicho error.
Se llama cota del error absoluto δ AX de un valor aproximado x a cualquier número no menor que el error
absoluto: ≥
(1.4)
≥
Cota del Error Relativo: Se llama cota del error relativo de un valor aproximado x cualquier número no
menor que el valor del error relativo:
En un sistema que opera en ACF de “t” dígitos en base decimal, cualquier número puede ser representado
e −t
de la forma: x = f x × 10 + g x × 10 siendo qué 0,1 ≤ f x < 1 y 0,1 ≤ g x < 1
e
Ejemplo 1.5: sea el número x = 234,56 y t = 4, el número x , al ser representado por la forma
anterior, será equivalente a:
x = 0,2345 × 103 + 0,6 × 10 −1 , siendo f x = 0,2345 ; g x = 0,6 y e = 3 , es el exponente del número
para este caso.
Representación por truncamiento: Para realizar un análisis general de los errores absoluto y relativo
en la representación de los números y utilizando la aproximación por truncamiento, el número será
e −t
aproximado, eliminando el término g x ×10 , que representa los dígitos descartados justamente por el
truncamiento.
De las condiciones iniciales y dado que g x < 1 , el valor máximo del error absoluto será < 10 e −t , por lo que
podemos definir como cota del error absoluto por truncamiento δ Ax , siendo:
δ Ax < 10 e −t (1.5)
Representación por Redondeo Simétrico: (Ver ítem 1.3.1) Cuando se utiliza el redondeo simétrico, fx
es modificado para llevar en consideración gx . Por consiguiente, tomamos como valor aproximado x
# × 10 + 10 . → '( |* | ≥ 1/2
♦ Si g x < 1 / 2
e −t
Error absoluto es E Ax =| x − x | =| f x × 10 + g x × 10
e
− f x × 10e |=| g x | ×10e−t
| E Ax | g x × 10 e−t
Error relativos es E Rx = = considerando que el error es máximo cuando f x = 0,1 y
|x| f x × 10 e
1
dado que g x < 1 / 2 , la cota del error absoluto es δ Ax < × 10 e−t (1.7)
2
______________
1
La cota del error relativo por redondeo es δ Rx < × 101−t
2 (1.8)
♦ Si g x ≥ 1 / 2
e −t
Error absoluto E Ax =| x − x |=| f x × 10 + g x × 10
e
− ( f x × 10e + 10e−t ) |=| g x − 1 | ×10e −t
como g x ≥ 1 / 2 la diferencia g x − 1 será siempre ≤ 1 / 2 , por lo que tomamos como cota del error
1
absoluto: δ Ax ≤ × 10 e −t
2 (1.9)
E Ax g x − 1 × 10 e −t g x − 1 × 10 e −t
E Rx = = ≤
x f x × 10 e + 10 e −t f x × 10 e
Siendo que para que el error sea máximo g x ≥ 1 / 2 , f x = 0,1 y desconsideramos el término 10 e −t
, tenemos que la cota del error relativo será:
______________
1
δ Rx < × 101−t
2 (1.10)
Por lo tanto, para cualquiera de los casos para el redondeo simétrico tenemos que las cotas del
error absoluto y el relativo son:
1 1
δ Ax < × 10 e −t δ Rx < × 101−t
2 2
Las cifras significativas de un número, vienen determinadas por su error y son aquellas que ocupan una
posición igual o superior al orden o posición del error. Por ejemplo, consideremos una medida de longitud
que arroja un valor de 2.345,678 metros, con un error de 0,5 metros. El error es por tanto del orden de
décimas de metro. Es evidente que todas las cifras del número que ocupan una posición menor que las
décimas no aportan ninguna información. En efecto, ¿qué sentido tiene dar el número con precisión de
diezmilésimas si afirmamos que el error es de casi 1 metro? Las cifras significativas en el número serán por
tanto las que ocupan la posición de las décimas, unidades, decenas, etc., pero no las centésimas, milésimas
y diezmilésimas.
• Se dice que el número x aproxima a x con t decimales correctos si t es el entero no negativo más
1
grande para el cual x − x < × 10 −t .
2
• Se dice que el número x aproxima a x con “ t ” cifras significativas si t es el entero no negativo más
x−x 1
grande para el cual < × 101− t = 5 × 10 −t .
x 2
En virtud de estas definiciones, el número de decimales correctos, da una idea de la magnitud del error
absoluto, mientras que el número de cifras significativas, da una idea de la magnitud del error relativo.
Ejemplo 1.6: Determinar el número de decimales correctos y cifras significativas del ejemplo 1.4
1
Si x = 3,141592 … aproximamos por x = 3,14 , entonces E Ax = 0,159 × 10 − 2 < × 10 − 2 ;
2
por lo tanto, x es una aproximación a x con dos decimales correctos.
ERx = 0,000506749< 5 ×10−3 , por lo tanto t = 3 es el menor entero positivo que verifica la
desigualdad y el número de cifras significativas.
1) Todos los dígitos a ambos lados de la coma decimal son significativos, si no hay ceros.
23,742 5 cifras significativas
332 3 cifras significativas
1,4 2 cifras significativas
2) Ceros usados para localizar una coma decimal no son significativos.
0,023 2 cifras significativas
0,23 2 cifras significativas
0,0000023 2 cifras significativas
3) Ceros entre números son significativos.
2,003 4 cifras significativas
1,0008 5 cifras significativas
0,002034 4 cifras significativas
4) Ceros a la derecha del último dígito que no es cero y a la derecha de la coma decimal son significativos.
0,00000230 3 cifras significativas
0,043000 5 cifras significativas
1,00 3 cifras significativas
10,0 3 cifras significativas
Con relación a esta última regla si un número no tiene coma decimal y termina con uno o más ceros
(ejemplo 5.200), dichos ceros pueden ser o no significativos. Para poder especificar el número de cifras
significativas, se requiere de información adicional, por lo que para indicar que los mismos son significativos
es necesario colocar la coma decimal (ejemplo 5.200,0).
Las reglas para definir el número de cifras significativas para multiplicación y división son diferentes que
para suma y resta.
Para multiplicación y división el número de cifras significativas en el resultado final será igual al número de
cifras significativas de la medición menos precisa.
Ejemplo 1.7: Calcular la energía cinética de un cuerpo con una masa de 6,0g viajando a la velocidad
de 2.25 cm/s.
2
la energía cinética es obtenida de la fórmula E.C. = ½mv
En sumas y restas el último dígito que se conserva deberá corresponder a la primera incertidumbre en el
lugar decimal.
Dada una secuencia de operaciones es importante tener la noción de cómo el error se propaga a lo largo de
las operaciones. El error total en una operación está compuesto por las diferentes partes y por el error del
resultado de la operación. Ciertos errores como los motivados por truncamiento y redondeo, reciben también
el nombre de errores generados. Al combinar un dato que ya posee un error generado con otros en las
mismas condiciones, los errores se propagan. Entonces, el error absoluto total será la suma de los errores
generados y propagados.
El hecho de considerar los errores generados complica excesivamente el cálculo con errores. Por ello, la
regla a tener en cuenta es que el error generado es despreciable siempre que sea cien veces más pequeño
que el error propagado por hacer intervenir tal término.
♦ Suma
x + y = x + y + E Ax + E Ay ; siendo qué x + y = x + y y el error absoluto de la operación
________________
E Ax+ y = E Ax + E Ay
(1.11)
E Ax + y E Ax + E Ay E Ax E Ay
El error relativo E Rx + y = = = + =
x+ y x+ y x+ y x+ y
E Ax x E Ay y x y
= . + . = E Rx . + E Ry .
x x+ y y x+ y x+ y x+ y
__________________________
x y
El error relativo de la suma es: E Rx + y = E Rx . + E Ry .
x+ y x+ y
(1.12)
♦ Resta x − y = x + E Ax − y − E Ay donde:
E Ax − y E Ax E Ay x y
E Rx − y = = − = E Rx . − E Ry .
x− y x− y x− y x− y x− y
__________________________
x y
E Rx − y = E Rx . − E Ry .
x− y x− y
(1.13)
♦ Multiplicación x. y = ( x + E Ax ). y + E Ay ( )
Valor aproximado del producto es igual al producto de los valores aproximados x. y = x. y y el error
absoluto de x. y es E Ax . y = x.E Ay + y.E Ax
El error Relativo
E Ax . y x.E Ay + y.E Ax E Ay E Ax
E Rx. y = = = + = E Rx + E Ry
x. y x. y y x (1.14)
x + E AX x + E AX 1
♦ División x ÷ y = = .
y + E AY y E
1 + AY
y
2 3
1 E AY E AY E AY
Representando .
E por la serie: 1 − y + y − y + ...
1 + AY
y
Considerando los dos primeros términos de la serie son significativos, nos queda
x x + E AX 1 x + E AX E x E AX x.E AY E AX .E AY
= 1 − AY = +
y
.
E = y − 2
− 2
y
1 + AY
y y y y y
y
x x E AX x.E AY
= + − 2
por lo que el valor aproximado del cociente es
y y y y
x y.E AX − x.E AY
x÷y = y el error absoluto E Ax / y = 2
y y (1.15)
y.E AX − x.E AY y E AX E AY
E Rx / y = 2
. = − = E Rx − E Ry
y x x y
(1.16)
Hugo Franco Paats 12
Introducción al Cálculo Numérico
Ejemplo 1.9: Calcula los errores absoluto y relativo causado por el redondeo simétrico al efectuar,
manejando únicamente tres dígitos para las mantisas, la operación x + y , si x = 765, 4 e
y = 7,362 .
x = 0,765 × 10 3 ; E Ax = 0,4 × 10
0
E Rx = 5,229 × 10−4
y = 0,736 ×101 ; E Ay = 0,2 × 10 −2 E Ry = 2,7174 × 10 −4 ; x + y = 0,772 × 103
Por tanto el error absoluto E Ax+ y = E Ax + E Ay = 0,4 + 0,002 = 0,402
el error relativo:
x y 0,765 × 103 −4 0,736 × 10
1
E Rx+ y = E Rx . + E Ry . = 5,229 × 10−4 + 2,7174 × 10 = 0,0005207493
x+ y x+ y 0,772 × 103 0.772 × 103
de otra manera
E Ax 0,402
E Rx + y = = = 0,0005207253
x+ y 0,772 × 10 3
1.6 – EJERCICIOS
1.1- Expresa las siguientes cantidades en sistema de A.C.F. de tres cifras significativas, por redondeo y
truncamiento:
a) 74,24 b) 8.200,02 c) -1.863,55 d) 0,005 e) -13.485 f) 0,02475
1.2- Considerando las cantidades 28.294 y –13.485 y sus respectivas cantidades redondeadas a cuatro y
tres cifras significativas, 28.290 y -13.500 encontrar las cotas de los errores absolutos y relativos de
tales redondeos.
17
1.3- Si para x = = 0 , 265625 se toma como valores 0,26 ó 0,27, ¿qué error absoluto se comete en cada
64
caso? Calcula también las cotas del error absoluto para ambos resultados.
1.4- A una cinta métrica defectuosa le falta el primer centímetro. Después de medir la longitud con la misma,
se obtiene 15cm. Determina la verdadera longitud de la magnitud medida, el error absoluto de la
medición, el relativo y el porcentual.
1.5- Un voltímetro marca las lecturas con un error de +0,05. Si se toma una lectura de 60V, calcular los
errores absolutos y relativos de la medición.
1.6- Deducir los dígitos correctos de la cantidad aproximada 48,361 que tiene un error relativo máximo del
1%.
1.7- Considerando la operación de suma de 1,015 + 0,3572 en el que ambos sumandos tienen todas sus
cifras correctas. Calcula la cota del error absoluto y relativo de la operación
1.8.- 1.9 - Probar con un ejemplo que, si una cantidad aproximada x tiene n cifras significativas correctas y
la primera de ellas es d , una cota del error relativo viene dada por la expresión:
1
δx =
d × 10 n −1
1.9- Hallar las cifras correctas de la cantidad aproximada 52,135 que posee una cota de error relativo de
valor 0,1× 10−4
1.10- Dadas las cantidades redondeadas que se indican: x = 0,18234 × 10 ; y = 12,314 z = 0,00377 ,
0
aplicando la expresión de la cota del error absoluto en el redondeo simétrico para cantidades
expresadas en coma flotante, calcula el límite máximo de dicho error.
1.11- Se miden dos longitudes, x ≅ 3,32 e y ≅ 5,39. Calcula el valor de las siguientes operaciones,
manteniendo tres dígitos significativos en las sumas.
a) x + y b) x + 0,1 y c) x + 0,01 y
Determine las fuentes de error y magnitudes de los mismos y su incidencia en los resultados.
1.12- Evaluar f ( x) = x − 6,1x + 3,2 x + 1,5 en x = 4,71 usando aritmética de punto flotante con tres
3 2
dígitos. Comparar los resultados haciendo truncamiento y redondeo. Calcular el error relativo en cada
caso considerando como valor exacto f (4.71) = −14,263899 .
1.13- Determinar las cotas del error absoluto y relativo en los resultados de las operaciones siguientes,
donde x = 2,00; y = 3,00 y z = 4,00 han sido correctamente redondeados.
y y
a) f = 3x + y + z b) f = x × c) f = xsen
z 40
−5
1.14- Sea x = 0,045682138, y δ Ax = 0,5 × 10 una cota de su error absoluto. Dar un intervalo donde se
encuentre el número exacto x . ¿Cuántos dígitos son significativos?
1.15- Si medimos la longitud L, de un pizarrón con una regla graduada hasta los centímetros y
determinamos que mide 2,72m, ¿cuál es una cota para el error absoluto de esta aproximación?
1.16- Sabemos que 17 = 4,1231056... Si tomamos como aproximación de 17 el número 4,12, es decir,
17 ≅ 4,12 ¿cuál es el error máximo en esta aproximación?
1.17- Sabiendo que la medida de la base de un triángulo equilátero, es de 33,333 ± 0,003 cm, calcula el
error relativo y el error porcentual de la superficie y del perímetro. Determina una cota del error
absoluto y relativo de ambas operaciones.
CAPITULO 2
2.1- INTRODUCCIÓN
Los métodos numéricos para resolución de ecuaciones no lineales, suelen ser métodos iterativos que
producen una sucesión de valores aproximados, que se espera, converja a la raíz de la ecuación (un
número “ ξ ” es raíz de una ecuación o cero de una función f (x ) , sí f (ξ ) = 0 ).
Los métodos iterativos son procedimientos para acercarse a la respuesta, mediante aproximaciones
sucesivas. Estos incluyen fórmulas que tienen la propiedad de producir un resultado más próximo al valor
exacto o solución, partiendo de un valor inicial estimado. De esta forma, van calculando las sucesivas
aproximaciones en base a los anteriores, a partir de una o varias
aproximaciones iniciales.
La convergencia de los métodos iterativos, es la propiedad que tienen las fórmulas iterativas para producir
resultados cada vez más cercanos a la respuesta esperada.
En esta fase se realiza un análisis teórico y gráfico de la función f (x ) . Es importante señalar que el suceso
de la FASE 2, depende de la precisión de este análisis. Para el análisis teórico utilizamos frecuentemente el
siguiente teorema:
Gráficamente
Ejemplo 2.1: Determina los intervalos que contienen a las raíces de las funciones f 1 ( x) = x − 8x + 1
3
−x
y f 2 ( x) = 2e − x , por medio de tablas y considerando apenas los cambios de signos.
x − ∞ -100 -10 -5 -3 -1 0 1 2 3 4 5
f 1 ( x)
f1 ( x) es continua para todo valor de x, tenemos que los intervalos /−3: −12; /0: 12 y
- - - - - + + - - + + +
Siendo que
[2;3] la función cambió de signo, por lo que existe por lo menos un cero en estos intervalos
−x
b) Para f 2 ( x) = 2e − x tenemos:
x 0 0,5 1 1,5 2
[ ]
NOTA: si f ( a ). f (b) > 0 entonces podemos tener varias situaciones en a, b , si el intervalo es muy
grande. Se puede observar en las figura en los casos que existe dos raíces y por el tamaño del intervalo no
cumple con el Teorema de Bolzano:
Un método iterativo consiste en una secuencia de instrucciones que son ejecutadas paso a paso, algunas
de las cuales son repetidas por ciclos. La ejecución de un ciclo recibe el nombre de iteración. Cada
iteración, utiliza los resultados de las iteraciones anteriores y efectúa determinadas pruebas verificado que el
resultado sea el esperado.
Los métodos iterativos dan una aproximación para la solución, a diferencia de los métodos directos, que dan
la solución exacta. Si la fórmula iterativa converge, la distancia entre valores consecutivos se debe reducir y
se puede usar como una medida para el error.
Dada una función f (x ) continúa en el intervalo [a, b] y tal que f ( a ). f (b) < 0 . Considerando que f (x )
posee una única raíz en [a, b] , el método tiene como objetivo reducir la amplitud del intervalo hasta
alcanzar la precisión requerida: b − a < ε , usando para esto divisiones sucesivas del intervalo por la
mitad.
Gráficamente:
f (a 0 ) < 0 ξ ∈ [a0 , x0 ]
b + a0
x0 = 0 f (b0 ) > 0 ⇒ ∴ a1 = a0 ⇒ b0 − a0 > ε
2 f (x ) > 0 b = x
0 1 0
f (a 2 ) < 0 ξ ∈ [a 2 , x 2 ]
b + a2
x2 = 2 f (b2 ) > 0 ⇒ ∴ a3 = a 2 ⇒ b2 − a 2 < ε
2 f (x ) > 0 b = x
2 3 2
Como el método utiliza la división sucesiva del intervalo, el criterio de parada para este método será cuando
bk − ak < ε , tomando como valor aproximado de x = xk .
Ejemplo 2.2- Dada la función f ( x) = x log x − 1 , que posee un cero en [2, 3], encuentra la raíz
aproximada con una precisión ε < 10 −1 .
1) Datos iniciales
a) intervalo [a, b]
b) precisión ε
2) Si b − a < ε , entonces elegir como x , un x ∈ [a, b]
3) K =1
4) M = f (a )
a+b
5) x =
2
6) Si M . f ( x) > 0 haga a = x y va para 8)
7) b=x
8) Si b − a < ε , elegir como x , un x ∈ [a, b] . Fin
9) K = K + 1 y vuelve a 5)
log(3 − 2) − log(10 −1 )
k> = 3,32 ⇒ k=4
log 2
por lo tanto son necesarias por lo menos 4 iteraciones para encontrar la raíz aproximada
♦ El método siempre converge por lo que se puede aplicar para obtener la raíz aproximada de
cualquier ecuación.
♦ Las iteraciones no implican cálculos complejos, pero si b − a >> ε y si ε es muy pequeña el
número de iteraciones puede ser muy grade, como se puede deducir de la fórmula para calcular el
número aproximado de iteraciones.
Considerando la función que se muestra en la siguiente figura, podemos constatar que la raíz “ ξ ” está más
próxima de “ a ” que de “ b ”.
El método de la Falsa Posición, define como el próximo paso xk a la intersección de la recta r (x ) , con el
eje x , que pasa por f (a ) y f (b ) .
Gráficamente:
af (b) − bf ( a )
xK = (2.3)
f (b) − f ( a)
Posteriormente aplicamos el teorema Bolzano para determinar el intervalo que contiene a la raíz, es decir; si
f (a). f ( x K ) < 0 , entonces la raíz se encuentra entre a y x K y b pasa a ser x K en la siguiente iteración. El
proceso se repite hasta que cumpla con el criterio de parada.
2.5.1- Algoritmo
[ ]
Si f (x ) es continua en a; b y tal que f ( a ). f (b) < 0
1) leer datos iniciales
[ ]
intervalo a; b , precisión ε
2) Si b − a < ε , entonces elegir como x cualquier x ∈ [a, b]
Si f (a ) < ε , entonces x=a ó
Si f (b ) < ε , entonces x = b y Fin
3) K = 1;
4) M = f (a ) ;
af (b) − bf (a)
5) x = ;
f (b) − f (a)
6) Sí f (x) < ε ; entonces x = x y Fin.
7) Sí M . f ( x) > 0 ; entonces a = x y va la paso 9)
8) b = x;
9) Sí b − a < ε ; entonces elegir como x cualquier x ∈ [a, b]
10) K = K + 1 y vuelve a 4)
k aK bK f (a ) f (b) xK f (x )
0 2 3 -0,3979 0,4314 2,48 -0,022
1 2,48 3 -0,022 0,4314 2,504 − 1,87 × 10−3 < ε
Para la primera iteración ya cumple con el criterio de parada por lo tanto x = 2,504
Gráficamente:
El M.I.L. consiste en transformar una ecuación en otra equivalente tal que x = ϕ (x ) ; es decir de una
aproximación inicial x0 , generar una secuencia de {xk } de aproximaciones para la raíz ξ por la relación
xk +1 = ϕ ( xk ) , pues la función ϕ ( xk ) es tal que f (ξ ) = 0 , si y solo sí ξ = ϕ (ξ ) .
Una función ϕ (x ) que cumple esta condición es llamada de “función de iteración”, para la cual la
ecuación f ( x ) = 0 .
1) ϕ 1 ( x) = 6 − x 2
6
3) ϕ 3 ( x) = −1
x
2) ϕ 2 ( x ) = 6 − x
6
4) ϕ 4 ( x ) =
x +1
Dada la función f (x ) , existen infinitas funciones ϕ (x ) que son funciones de iteración. La forma general de
esta función es: ϕ ( x ) = x + A( x ). f ( x ) , con la condición que en el punto fijo de ϕ (x ) , se tenga
A(ξ ) = 0 ⇔ ϕ (ξ ) = ξ .
Gráficamente:
Convergentes
Divergentes
b) ϕ 2 ( x) = 6 − x
x1 = ϕ ( x0 ) = 6 − 1,5 = 2,12132..
x2 = ϕ ( x1 ) = 1,96944
x3 = ϕ ( x2 ) = 2,00763
x4 = ϕ ( x3 ) = 1,99809
x5 = ϕ ( x4 ) = 2,00048
……. Como se muestra en el gráfico
Las condiciones suficientes para que el proceso sea convergente, las da el siguiente teorema:
TEOREMA: Sea ξ una raíz de la ecuación f ( x ) = 0 , aislada en el intervalo [a, b] . Sea ϕ (x ) una función
de iteración para la ecuación f ( x ) = 0 . Si
a) ϕ (x ) y ϕ ′(x ) son continuas en [a, b] ,
b) ϕ ′( x) ≤ M < 1 , ∀x ∈ [a, b]
c) x0 ∈ [a, b]
Entonces la secuencia { xk +1 } generada por el proceso iterativo x k +1 = ϕ ( x k ) , converge para ξ.
Ejemplo: 2.7 Analizar las condiciones de convergencia para las funciones de iteración de la
ecuación del ejemplo anterior.
1
b) ϕ 2 ( x) = 6 − x derivada ϕ 2′ ( x) = en I = [1,5; 2]
2 6− x
ϕ 2 ( x) es continuas en S = {x ∈ IR / x ≤ 6};
6 6
c) ϕ 3 ( x) = − 1 ; derivada ϕ 3′ ( x ) = − 2 en I = [1,5; 2]
x x
ϕ 3 ( x) y ϕ 3′ ( x) tienen una discontinuidad en x = 0 , fuera del intervalo I
6
ϕ 3′ ( x) < 1 en I ∴ < 1 x < − 6 o x > 6 . Los intervalos que la función generará
x2
un proceso convergente son − ∞;− 6 [ ] y[ ]
6 ; ∞ por lo tanto esta función encontrara la
raíz negativa o sea ξ = −3 , pero no la raíz positiva.
2.7.3- Algoritmo
Sea f ( x ) = 0 y la ecuación equivalente x = ϕ (x ) , suponiendo que cumpla las condiciones de
convergencia.
1) Datos iniciales x0 aproximación inicial; ε precisión
2) Si f ( x0 ) < ε entonces x = x0 y Fin.
3) K = 1;
4) x1 = ϕ ( x 0 ) ;
5) Si f ( x1 ) < ε o si x1 − x0 < ε , entonces x = x1 y Fin.
6) x0 = x1 ;
7) K = K + 1 , y vuelve a 4)
f ( x0 )
0 ≈ f ( x 0 ) + (ξ − x 0 ) f ′( x ) despejando ξ de esta ecuación, tenemos ξ = x0 −
f ′( x0 )
Esto nos prepara para introducir el método de Newton, el cual comienza con una aproximación inicial x0 y
genera la sucesión {x } ∞
k n =0 definida por:
f ( xk )
x k +1 = x k −
f ′( x k ) (2.4)
25 Hugo Franco Paats
Introducción al Cálculo Numérico
Gráficamente
La figura muestra cómo se obtiene las aproximaciones usando tangentes sucesivas. Comenzando con la
aproximación inicial x0 , se van calculando las demás aproximaciones x1 , x 2 ,.... hasta cumplir el criterio de
convergencia.
Solución:
calculamos la derivada f ′( x ) = 2 x + 2 y el proceso iterativo para el método será:
f ( xk ) x 2 + 2 xk − 6
x k +1 = x k − = xk − k ; tomando valor inicial x 0 = 1 ; tenemos los valores en la
f ′( x k ) 2 xk + 2
siguiente tabla
k xk f ( xk ) f ′( x k ) x k +1 f ( x k +1 )
0 1 -3 4 1,75 0,5625
1 1,75 0,5325 5,5 1,6477 0,0103
2 1,6477 0,0103 5,2954 1,64575 -6,9 × 10 −6
Valor aproximado de la raíz x = 1,64575
2.8.1- Algoritmo
Dada la función f (x) y f ′(x) continuas en [a, b] ;
1) Datos iniciales
x 0 aproximación inicial
ε precisión
2) Sí f ( x0 ) < ε ; entonces x = x0 y Fin
3) k =1
f ( x0 )
4) x1 = x0 −
f ′( x0 )
5) Si f ( x1 ) < ε o
si x1 − x0 < ε entonces x = x1 y Fin
6) x0 = x1
7) k = k + 1 y vuelve a 4)
x k −1 f ( xk ) − x k f ( xk −1 )
ϕ ( xk ) =
f ( xk ) − f ( xk −1 )
(2.5)
Gráficamente:
Ejemplo 2.3.7- Aplicar el método de la secante para encontrar la raíz aproximada de la ecuación
x 2 + x − 6 = 0 . ξ = 2 x 0 = 1,5 x1 = 1,7
x0 f ( x1 ) − x1 f ( x0 ) 1,5.(−1,41) − 1,7.(−2,25)
x2 = = = 2,03571; f ( x2 ) = 0,17983 ; x1 − x0 = 0,2
f ( x1 ) − f ( x0 ) − 1,41 + 2,25
2.9.1- Algoritmo
Dada la función f (x ) y f ′(x ) continuas en [a, b] ;
1) Datos iniciales
x 0 y x1 aproximaciones iniciales
ε precisión
2) Si f ( x0 ) < ε entonces x = x0 y Fin
f ( x1 ) < ε ; entonces x = x1 y Fin
3) k = 1
♦
continua en a, b y tal que # 5 ∙ # 7 < 0; mientras que el Método Iterativo Lineal, de Newton y
Los métodos de la bisección y Falsa Posición tienen convergencia asegurada desde que f (x ) sea
[ ]
de la Secante, tienen condiciones especiales para la convergencia. Siendo las últimas de
convergencia más rápida.
♦ El método de la bisección efectúa cálculos simples, mientras que el de Newton requiere cálculos
más elaborados en cada iteración. Por otro lado, el número de iteraciones efectuadas por el método
de la bisección es mucho mayor que el método de Newton.
2.11- EJERCICIOS
2.1- Encuentra las soluciones reales de las ecuaciones siguientes, por el método de la bisección y de la
Falsa Posición con una precisión de ε < 10 −2
a) f ( x ) = cos( x ) − x
b) f ( x) = x 3 − 5x − 6
2.2- Localiza la raíz positiva de f ( x ) = 0,5 x − sen ( x ) . Donde esta dada en radianes. Utiliza el método
gráfico y después calcula tres iteraciones con el método de Newton Rapshon, con valor inicial de 2.
Repita los cálculos con un valor inicial de 1. Utiliza el método gráfico para explicar los resultados
2.3- Calcula las soluciones reales de las ecuaciones siguientes por el método de Newton Raphson y el de la
secante, para una tolerancia del error del 0,05%
a) f ( x ) = ln( x ) + 2 x − 1 b) f ( x) = 2 sen ( x ) − x
2.4- Determina varias funciones de iteración para el M.I.L. y en cada caso comprueba su convergencia para
la raíz de la función f ( x) = x 2 + 2 x.sen( x) − 1 ; en el intervalo [0; 1].
2.5- Utiliza los métodos de la bisección, Falsa Posición, Iterativo Lineal, de Nw –R y el de la secante para
encontrar la raíz aproximada de las siguientes funciones:
f ( x) = e − x − cos( x) ; −2
2
a) intervalo [1; 2]; aproximación 10
b) f ( x) = x 3 − x − 1 intervalo [1; 2]; aproximación 10
−2
c) f ( x) = 4sen( x) − e ;
x −2
intervalo [0; 1]; aproximación 10
Determina la aproximación inicial utilizando el método gráfico de la Fase I y haga una tabla que
contenga los valores de , el error relativo aproximado y el número de iteraciones de los diferentes
métodos. Comente los resultados.
2.6- Aplicar el método de la Falsa Posición para encontrar la primera raíz positiva de la función
x 2 . ¿Qué ocurre con la convergencia del método? Explica.
f (x) = 1 + x −
4
2.7- Determina la raíz mayor de f ( x) = x − 6 x + 11x − 6
3 2
a) Gráficamente
b) Por el método de la bisección (dos iteraciones a = 2,5 y b = 3,6)
c) Por el método de la Falsa Posición (dos iteraciones a = 2,5 y b = 3,6)
2.8- Deduzca un esquema iterativo para encontrar la raíz cuadrada de un número a con base en la
iteración de Newton. Prueba el esquema para a = 7 utilizando 1 como valor inicial y una aproximación
ε < 10 −5 .
2.9- Aplique el método de Newton – Raphson para encontrar al raíz aproximada x con una precisión
ε = 1 × 10 −4
, de la función f ( x) = x − 9 x + 3
3
−3
2.11- Aplica el método de Newton Raphson para obtener la solución, con una exactitud de 10 , para la
función f ( x) = x − 2 − 0,2 senx [0; π ]
tan g ( x)
2.12- Encuentra el punto positivo donde la función f ( x ) = alcanza su valor mínimo calculando los
x2
ceros de f ′(x ) con el método de Newton-Raphson. Calcule dicho valor mínimo con por lo menos 4
decimales exactos.
2.13- Se quiere evaluar el logaritmo natural de un número a , pero la calculadora a utilizar solo cuenta con la
x
función exponencial e . Proponer un método para calcular ln(a ) y evaluarlo utilizando aritmética de
coma flotante con 4 dígitos de precisión.
2.14- Dos escaleras se cruzan en un pasillo de ancho w como se muestra en la figura. Las escaleras se
cruzan a una altura h arriba del piso. Dado que las longitudes de las escaleras son
6 y 9 metros y que h = 2,4 m , calcula el ancho del pasillo w , utilizando uno de los
métodos numéricos.
CAPITULO 3
3.1- INTRODUCCIÓN
Son aquellos que dan los valores exactos, (sin errores de redondeo) caso exista, en un número finito de
pasos. Si usamos aritmética finita para los cálculos, obtendremos por lo general una solución aproximada,
debido únicamente a los errores de redondeo, puesto que no hay errores de truncamiento o de fórmula. De
estos métodos tenemos: la Regla de Cramer, el método de Eliminación de Gauss y el método de
Descomposición L.U.
El método de basa en tres operaciones permitidas que no cambian la solución del sistema:
a) Una ecuación puede multiplicarse por una constante diferente de cero.
b) Una ecuación puede ser sustituida por una combinación lineal de ella con otra.
c) Se puede intercambiar ecuaciones.
El resultado de la transformación, por lo tanto será una matriz triangular superior, del tipo:
a11 x1 + a12 x 2 + a13 x3 ... + a1n x n = b1
+ a 22 x 2 + a 23 x3 ... + a 2 n x n = b2
. ... ...
a nn x n = bn (3.1)
bn
donde la resolución será de atrás hacia delante, calculamos xn = , y posteriormente
a nn
bn −1 − a ( n −1), n x n
x n −1 = , así sucesivamente:
a ( n −1),( n −1)
b1 − a12 x 2 − a13 x3 − ... − a1n x n
hasta; x1 =
a11
Dado un sistema triangular superior 8 × 8, con elementos de la diagonal de la matriz A no nulos, las
3.2.2.1 – Algoritmo
Descripción del Método Consideremos que la matriz de los coeficientes A tiene su determinante diferente
a cero, también llamaremos de etapa k del proceso de eliminar la variable x k de la ecuación
k + 1, k + 2,..., n
a i(,kj) coeficiente de la línea i , columna j al final de la etapa k
bi(k ) valor del término independiente de la línea i en la etapa k
Se toma la matriz de los coeficientes A ampliada
a11 a12 a13 ...a1n | b1 a11( 0 ) a12( 0) a13( 0) ...a1(n0 ) | b1( 0)
a 21 a 22 a 23 ...a 2 n | b2 a ( 0 ) a 22
(0) (0)
a 23 ...a 2( 0n) | b2( 0)
⇒ 21 =A
(0)
: : : : : : : : : :
a n1 a n 2 a n 3 ...a nn | bn a n1 a n 2 a n 3 ...a nn | bn( 0)
(0) (0) (0) (0)
Etapa (1) (k = 1)
• el elemento a11( 0) es llamado de pívot de la etapa (1) (asumimos que a11(0) ≠ 0 )
a i(10)
• los elementos mi1 = ( 0 ) ∀i = 2,3,..., n son los multiplicadores de la etapa (1)
a11
• eliminamos las variables x1 de las ecuaciones 2, 3, ..., n , sustituyendo la i − ésima línea por ella
misma, menos la primera ecuación (línea) multiplicada por mi1 .
: : : : :
(1) (1) (1)
0 a n2 a n3 ...a nn | bn(1)
7 =7
i = 2,3,..., n
a ij(1) = a ij( 0) − mi1 × a1(0j ) ; ∀
j = 1,2,..., n
bi(1) = bi( 0) − mi1 × b1( 0) ; ∀i = 2,3,..., n
Etapa (2) (k = 2)
(1)
• pívot a22
ai(21)
• multiplicadores mi 2 = (1) ∀i = 3,4,..., n
a 22
• eliminamos la variable x 2 de la línea 3 y queda:
a11( 2 ) a12( 2) a13( 2) ...a1(n2) | b1( 2)
( 2) ( 2)
0 a 22 a 23 ...a 2( 2n) | b2( 2)
: : : : :
( 2) ( 2)
0 0 a n3 ...a nn | bn( 2)
i = 1,2
a ij( 2 ) = a ij(1) ∀
j = 1,2,...., n
bi( 2) = bi(1) ⇒ i = 1,2;
dónde:
i = 3,4,..., n
a ij( 2 ) = a ij(1) − mi 2 × a 2(1j) ∀
j = 2,3,..., n
bi( 2) = bi(1) − mi 2 × bi(1) ⇒ i = 3,4,..., n
y así sucesivamente, por último tenemos la matriz triangular superior, equivalente a la matriz original A
a11( n−1) a12( n −1) a13( n −1) ...a1(nn −1) | b1( n −1)
( n −1) ( n −1)
0 a 22 a 23 ...a 2( nn−1) | b2( n −1)
⇒ A ( n −1) x = b (n −1)
: : : : :
( n −1) ( n −1)
0 0 0 ...a nn |b n
bn
xn = ;
a nn
Para k = n − 1 hasta 1
n
bk − ∑a
j = k +1
ij × xj
xk =
a kk
Fin
Ejemplo 3.1: Dado el siguiente sistema de ecuaciones, resolver por el método de eliminación de
Gauss
3x1 + 2 x2 + 4 x3 = 1 3(0) 2 (0) 4 (0) 1( 0).
x1 + x2 + 2 x3 = 2 la matriz A de los coeficientes ampliada será 1( 0) 1( 0) 2 (0) 2 ( 0 ).
4 x + 3x2 − 2 x3 = 3 4 ( 0) 3(0) − 2 (0) 3 ( 0 ).
1
Etapa k = 1 eliminar x1
• pívot a11 = 3
(0)
a 21 1
• multiplicadores m 21 = ( 0 ) =
a11 3
(0)
a 31 4 L2 = L2 − m21 × L1
m31 = ( 0 ) = la operación en las líneas será:
a11 3 L3 = L3 − m31 × L1
3
(1)
a31
• multiplicadores m31 = (1)
=1
a 22
haciendo L3 = L3 − m32 × L2 al final de la etapa 2 tenemos que la matriz de los coeficientes es:
3( 2) 2 ( 2) 4 ( 2) 1( 2). x3 = 0
5/3 − 0
( 2) ( 2) (2)
1 2 5
0 donde la solución es ⇒ x 2 = =5
3 3 3 1/ 3
0 0 − 8 ( 2) 0 (2) 1 − 2 x5 − 0
x1 = = −3
= −3; =5y =0
3
y la solución del sistema es 9
3.2.3 - Descomposición LU
Dado un sistema lineal Ax = b , el método de solución por descomposición LU consiste en transformar la
matriz de los coeficientes A en el producto de dos o más matrices.
Si hacemos A = L ⋅ U ; tendremos: ( L ⋅ U ) x = b , si llamamos U .x = y tendremos el sistema original escrito
como Ly = b , donde primeramente resolvemos este sistema y luego podemos resolver Ux = y .
La ventaja de este método de resolución es que si el vector de los términos independientes b es alterado,
la solución se obtiene casi inmediatamente sin necesidad de volver a calcular todo desde el inicio. La matriz
L es triangular inferior con diagonal unitaria y la matriz U es una matriz triangular superior.
1 0 0
M ( 0 ) = − m21 1 0
− m31 0 1
Por lo tanto M (1) × A (1) = A ( 2 ) que es la misma matriz obtenida en la segunda etapa del proceso de
eliminación de Gauss. Tenemos entonces que:
A ( 0 ) = A y que M ( 0 ) × A ( 0 ) = M (0 ) × A = A (1) ;
A ( 2 ) = M (1) × A (1) = M (1) × M ( 0 ) × A
donde A
( 2)
es triangular superior. Entonces: A = M [ (1)
M ( 0) ]
−1
[
A ( 2) = M (1) ] [M ]
−1 ( 0 ) −1
A ( 2)
1 0 0 1 0 0 1 0 0
como M[ ]
( 0 ) −1
= m 21 1 0 y M (1) [ ]
−1
= 0 1 [
0 entonces M (1) ] [M ]
−1 ( 0 ) −1
= m 21 1 0
m31 0 1 0 m23 1 m31 m32 1
( 2) ( 2) (2) ( 2) ( 2) ( 2)
1 0 0 a11 a12 a13 1 0 0 a11 a12 a13
y A = m 21 1 0 0 ( 2)
a 22 (2)
a 23 = LU donde L = m21 1 0 y U =. 0 ( 2)
a 22 ( 2)
a 23
(2) ( 2)
m31 m32 1 0 0 a 33 m31 m32 1 0 0 a 33
Etapa k = 1 eliminar x1
• pívot a11 = 3
(0)
a 21 1
• multiplicadores m21 = (0)
=
a11 3
(0)
a 31 4
m31 = (0)
=
a11 3
3 2 4
0 1 / 3 2 / 3 donde la matriz LU se pueden almacenar en una misma matriz
0 1 / 3 − 10 / 3
3 2 4
A (1)
= 1/ 3 1/ 3 2 / 3
4 / 3 1 / 3 − 10 / 3
1
pívot a 22 =
(1)
3
(1)
3 2 4
a 32
multiplicadores m32 = (1)
=1 A ( 2)
= 1 / 3 1 / 3 2 / 3 Por tanto:
a 22
4/3 1 −4
1 0 0 3 2 4
L = 1 / 3 1 0 y la matriz U = 0 1 / 3 2 / 3 . Resolviendo Ly = b
4/3 1 1 0 0 −4
1 0 0 y1 1 y1 = 1
1/ 3 1 0 y2 = 2 ⇒ y2 = 2 − 1/ 3 = 5 / 3
4 / 3 1 1 y3 3 y = 3 − 4 / 3 − 5/ 3 = 0
3
Si bien los métodos directos dan la solución exacta no siempre se pueden aplicar. Para ver la razón
consideremos las fuentes de error. El error inherente, de momento lo podemos despreciar. El error de
redondeo esencialmente depende del número de cálculos. Mientras mayor sea el número de ecuaciones, se
requieren más operaciones y por lo tanto existirá más error de redondeo. En pocas palabras, si el número
de ecuaciones es grande el error de redondeo puede crecer tanto, que puede invalidar la solución. En la
práctica no es raro usar cientos o a un miles de ecuaciones, por esta razón, se crearon los métodos
iterativos. Estos son esencialmente inmunes al redondeo.
Los sistemas lineales de grande porte en general poseen un gran porcentaje de ceros en la matriz de los
coeficientes. Para estos sistemas el método de eliminación de Gauss no es aconsejable, dado que durante
el proceso de eliminación, muchos elementos nulos pasaran a ser no-nulos.
(k ) ( k +1)
Los métodos iterativos consisten en algoritmos simples para convertir cualquier vector x en otro x
(k )
que depende de x ,A y b y preserva la característica de A , dado que los coeficientes de A no son
alterados.
La idea central de los métodos iterativos es generalizar el método iterativo lineal, visto en el capítulo 2,
donde dado el sistema lineal Ax = b , este es convertido en un sistema similar del tipo x = Cx + g = ϕ (x) ,
donde C es una matriz n × n y g es un vector n × 1 . Entonces ϕ ( x ) = Cx + g es la función de iteración
(0)
en forma matricial. El método parte de x , llamado de valor inicial (vector), y va calculando otros vectores
llamados de vectores de aproximación a la raíz:
x (1) = Cx (0) + g = ϕ ( x (0) ); Primera aproximación;
x ( 2) = Cx (1) + g = ϕ ( x (1) ); Segunda aproximación….
De forma genérica x
( k +1)
= Cx ( k ) + g = ϕ ( x ( k ) )
Dada una precisión ε , el vector x (k ) será elegido como solución aproximada sí M ( k +1) < ε . Otro criterio de
(k +1)
parada, y el más conveniente de utilizar, es el criterio de parada del error relativo M R < ε , donde
M ( k +1)
M R( k +1) = ;∀ 1≤ i ≤ n
máx xi( k +1)
x1 =
1
[b1 − a12 x2 − a13 x3 − ... − a1n xn ]
a11
x2 =
1
[b2 − a21 x1 − a 23 x3 − ... − a 2n xn ]
a 22
:
xn =
1
[bn − a n1 x1 − a n 2 x2 − ... − an,n−1 xn ]
a nn
(0)
El método de Gauss-Jacobi consiste en que dado un vector de aproximación inicial x , obtenemos
( k +1)
(1) ( 2)
x , x ,..., x (k )
a través de la relación recursiva x = Cx (k )
+ g. Entonces ϕ ( x ) = Cx + g es una
función de iteración en forma matricial.
x1( k +1) =
1
a11
[
b1 − a12 x 2( k ) − a13 x3( k ) − ... − a1n x n( k ) ]
x 2( k +1) =
1
a 22
[
b2 − a 21 x1( k ) − a 23 x3( k ) − ... − a 2 n x n( k ) ]
:
x n( k +1) =
1
a nn
[
bn − a n1 x1( k ) − a n 2 x 2( k ) − ... − a n ,n −1 x n( k−1) ]
x1( k +1) =
1
10
(
7 − 2 x 2( k ) − x3( k ) )
x 2( k +1)
1
(
= − 8 − x1( k ) − x3( k )
5
)
x3( k +1) =
1
10
(
6 − 2 x1( k ) − 3 x 2( k ) )
Para k =0
= (7 − 2(−1,6) − 0,6 ) = 0,96
1
x1(1)
10 x1(1) − x1( 0 ) = 0,96 − 0,7 = 0,96
(1)
= (− 8 − 0,7 − 0,6 ) = −1.86
1
x 2 − x3 = − 1,86 + 1,6 = 0,16
(0)
x 2(1) tés de parada
5 (1)
x3 − x3 = 0,94 − 0,6 = 0,324
(0)
M (1) 0,34
M (1) = 0,34 y ⇒ M R(1) =
(1)
= = 0,1828 > ε
máx x i
1,86
Para k =1
x1( 2) = (7 − 2(−1,86) − 0,94 ) = 0,978
1
10 x1( 2) − x1(1) = 0,978 − 0,96 = 0,018
( 2)
x 2( 2) = (− 8 − 0,96 − 0,94 ) = −1,98
1
tés de parada x 2 − x3 = − 1,98 + 1,86 = 0,12
(1)
5 ( 2)
x3 − x3 = 0,966 − 0,94 = 0,324
(1)
x1(3) =
1
(7 − 2(−1,98) − 0,966) = 0,9994 x1(3) − x1( 2) = 0,9994 − 0,978 = 0,0214
10
( 3)
x 2(3) = (− 8 − 0,978 − 0,966 ) = −1,9888
1
tés x 2 − x3 = − 1,9888 + 1,98 = 0,00888
( 2)
5 ( 3)
x3 − x3 = 0,9984 − 0,966 = 0,0324
( 2)
∑a
j =1
kj
j ≠k
αk = ; Si α = máx.α k < 1 ∀1 ≤ k ≤ n ,
a kk
Entonces el método de Gauss-Jacobi genera una secuencia x k { } convergente a la solución del sistema,
(k )
(0)
independientemente de la elección de la aproximación inicial x .
Ejemplo 3.4 – Dado el siguiente sistema lineal, haz un estudio para la convergencia para la aplicación
del método de Gauss-Jacobi.
10 x1 + 2 x2 + x3 = 7
x1 + 5x2 + x3 = −8
2x + 3x2 + 10 x3 = 6
1
2 +1
α1 = = 0,3
10
1+1
α2 = = 0,4 α = máx.α k = α 3 = 0,5 < 1
5
2+3
α3 = = 0,5
10
Por el criterio de las líneas tenemos asegurada la convergencia para el método de Gauss-Jacobi,
para cualquier valor inicial.
x1( k +1) =
1
a11
[
b1 − a12 x 2( k ) − a13 x3( k ) − ... − a1n x n( k ) ]
x 2( k +1) =
1
a 22
[
b2 − a 21 x1( k +1) − a 23 x3( k ) − ... − a 2 n x n( k ) ]
:
x n( k +1) =
1
a nn
[
bn − a n1 x1( k +1) − a n 2 x 2( k +1) − ... − a n ,n −1 x n( k−+11) ]
Entonces el proceso de Gauss-Seidel, en el momento de calcular x (jk +1) usamos todos los valores de
x1( k +1) , x2( k +1) ,..., x (jk−1+1) que ya fueron calculados.
Ejemplo 3.5 – Resuelve el siguiente sistema lineal por Gauss-Seidel, x (0) = 0 y una tolerancia del
error ε < 5 × 10 −2
5 x1 + x2 + x3 = 5
3 x1 + 4x2 + x3 = 6
3 x + 3x 2 + 6 x3 = 0
1
Proceso iterativo:
x1( k +1) =
1
5
(
5 − x 2( k ) − x3( k ) )
x 2( k +1)
1
(
= 6 − 3 x1( k +1) − x 3( k )
4
)
x3( k +1)
1
(
= 0 − 3x1( k +1) − 3 x 2( k +1)
6
)
Para k =0
x1(1) =
1
(5 − 2(0) − 0) = 1 x1(1) − x1(0 ) = 0 − 1 = 1
5
(1)
x 2(1) = (6 − 3(1) − 0 ) = 0,75
1
x 2 − x3 = 0 − 0,75 = 0,75
(0)
Criterio de parada
4 (1)
x3 − x3(0 ) = 0 + 0,875 = 0,875
x3(1) = (0 − 3(1) − 3(0,75) ) = −0,875
1
6
M 10 ) 1
M (1) = 1 y ⇒ M R(1) = (1)
= =1> ε
máx xi 1
Para k =1
1
x1( 2 ) = (5 − 2(0,75) − (−0,875)) = 1,025 x1( 2 ) − x1(1) = 1,025 − 1 = 0,025
5
x 2 = (6 − 3(1,025) − (−0,875) ) = 0,95 parada x 2( 2 ) − x3(1) = 0,95 − 0,75 = 0,2
( 2) 1
4 (2)
x3 − x3(1) = − 09875 + 0,875 = 0,1125
x3 = (0 − 3(1,025) − 3(0,95) ) = −0,9875
1
( 2)
6
0,2
M ( 2) = 0,2 y M R( 2 ) = = 0,19 > ε
1,025
Para k=2
x1(3) =
1
(5 − 2(0,95) − (−0,9875)) = 1,0075 x1(3) − x1( 2) = 0,0175
5
(3)
x 2(3) = (6 − 3(1,0075) − (−0,9875) ) = 0,9912 Criterio de parada
1
x 2 − x3 = 0,0412
( 2)
4 (3)
x3 − x3( 2) = 0,0118
x3(3) = (0 − 3(1,0075) − 3(0,9912) ) = −0,9993
1
6
0,0412
M = 0,0412 y M R(3) =
( 3)
= 0,0408 < ε
1,0075
1,0075
por lo tanto el vector solución es x = 0,9912
− 0,9993
a j1 β 1 + a j 2 β 2 + ... + a j , j −1 β j −1 + a j , j +1 + ... + a jn
βj =
a jj
Sea β = máx β j y si β < 1 entonces, el método de Gauss-Seidel genera una secuencia convergente para
1≤ j ≤ n
cualquier valor inicial x ( 0 ) . Además cuando menor sea el valor de β más rápida será la convergencia al
vector solución. En caso de que no cumplan con los criterios de convergencia, no indica que el método
sea divergente, sino que ello dependerá de la elección del valor inicial.
Ejemplo 3.6: Verifica la convergencia a la solución del siguiente sistema de ecuaciones, a través del
criterio de Sassenfeld, si aplicáramos el método de Gauss-Seidel,
Dado un sistema Ax = b , se dice que una matriz A está mal condicionada cuando pequeños cambios en A
o b provocan grandes cambios en la solución del sistema. Una circunstancia que suele llevar aparejada la
mala condición es que la matriz sea “casi singular” y su determinante sea casi cero. Sin embargo, para
detectar el mal condicionamiento, primero es necesario escalar todas las ecuaciones de forma tal que la
matriz sea diagonalmente dominante. Otra posible causa es que un sistema de dos ecuaciones corresponde
a dos líneas rectas casi paralelas, o en un sistema de tres ecuaciones corresponda a tres planos casi
paralelos
♦ Convergencia: los métodos directos son procesos finitos, es decir, teóricamente se obtiene la
solución exacta de cualquier sistema no singular. Los métodos iterativos tienen convergencia
asegurada solo bajo ciertas condiciones.
♦ Matriz dispersa: Muchos sistemas lineales poseen la matriz de los coeficientes, dispersa, es
decir, muchos de sus elementos son nulos. Para estos sistemas no es recomendable adoptar
los métodos directos, dado que durante el proceso de triangulación muchos elementos nulos
pasan a ser no-nulos. Para estos sistemas se recomienda los métodos iterativos.
♦ Número de operaciones: Los métodos directos requieren un número mayor de operaciones
aritméticas.
♦ Errores de Redondeo: Lo métodos directos presentan serios problemas de redondeo y que para
atenuar este inconveniente se adopta la técnica de pivotamiento descrita anteriormente. Los
métodos iterativos no presentan problemas con el redondeo.
3.2- Dado el siguiente sistema de ecuaciones, resuelve por eliminación de Gauss, mostrando todas las
etapas del proceso.
− 12 x1 + x2 − 7 x3 = −80
x1 − 6x2 + 4 x3 = 5
− 2 x1 − x2 + 10 x3 = 92
3.3- Dado el siguiente sistema lineal, resuelve utilizando el método LU, con pivotamiento parcial y muestre
los valores de las matrices L y U al final del proceso.
3 x1 − 4 x2 + x3 = 9
x1 + 2x2 + 2 x3 = 3
4 x1 − 3x3 = −2
3.4- Usa el método de eliminación de Gauss, con pivotamiento parcial para resolver el sistema de
ecuaciones 3 x 2 − 13 x3 = −50
2 x1 − 6 x2 + x3 = 44
4 x1 + 8 x3 = 4
3.6- Analiza los siguientes sistemas con relación al número de soluciones, usando el método de eliminación
de Gauss
3 x1 − 2 x2 + 5 x3 + x4 = 7
0.252 x1 + 0.36 x 2 + 0.12 x3 = 7
− 6 x1 + 4 x2 − 8 x3 + x 4 = −9
a) b) 0.11x1 + 0.16 x 2 + 0.24 x3 = 8
9 x1 − 6 x2 + 19 x3 + x 4 = 23
0.147 x1 + 0.21x 2 + 0.25 x3 = 9
6 x1 − 4 x2 − 6 x3 + 15 x 4 = 11
3.8- Verifica la convergencia para los sistemas dados a continuación, utilizando la iteración de Gauss-
Jacobi. Efectúa tres iteraciones partiendo de una aproximación inicial de [1, 1, 1]. Calcula el error
relativo del resultado y explica lo que ocurre.
10 x +y +z=6 4 x + 2 y + z = 14
a) x + 10 y +z=6 b) x + 5 y − z = 10
x +y + 10 z = 6 x + 7 y − 8z = 0
3.9- Aplicar Gauss – Seidel (tres iteraciones) a los sistemas del problema anterior partiendo de a) [0, 0, 0]
b) [10, 10, 10]; compare y haz un comentario (analiza el error en cada iteración).
a) R1 = 1, R2 = 1, R3 = 2, R4 = 1, R5 = 2, R6 = 4,V1 = 23,V2 = 29
b) R1 = 1, R2 = 2, R3 = 4, R4 = 3, R5 = 1, R6 = 5,V1 = 413,V2 = 38
c) con las mismos valores de R del ítem a) pero cambiando
V1 = 10,V2 = 20
3.11- Haga un programa que dada una matriz A nxn verifique el criterio de las líneas para la convergencia de
los métodos iterativos.
3.12- Haga un programa que resuelva un sistema de 8 × 8 por el método de Gauss – Jacobi
3.14 – Resuelva el siguiente sistema de ecuaciones utilizando uno de los métodos numéricos
x1 + 2 x2 − x3 = 2
2 x1 + 5x2 + x3 + x4 = 6
− x1 + x2 + 14 x3 + 5x4 = 6
x2 + 5 x3 + 3x4 = 2
CAPITULO 4
INTERPOLACIÓN
4.1- INTRODUCCIÓN
Con frecuencia se tiene que estimar valores intermedios entre datos o valores conocidos, como por ejemplo;
se conocen los valores específicos del agua a ciertas temperaturas.
Temp °C 20 25 30 35 40 45 50
Calor esp. 0,99907 0,99852 0,99826 0,99818 0,99828 0,99849 0,99878
“INTERPOLAR una función, consiste en sustituir esta, por otra función p (x ) con el objeto de facilitar ciertas
operaciones”.
Podemos realizar la interpolación cuando:
• Conocemos los valores numéricos de f (x ) solamente en un conjunto de puntos y necesitamos f (x ) en un
punto no tabulado.
• La expresión f (x ) es difícil de derivar o integrar.
Gráficamente
x1 x2 x3 ...
Dado los puntos ( x0 ; f ( x0 )), ( x1 ; f ( x1 )),...,( xn ; f ( xn )) por lo tanto n + 1 puntos distintos, queremos
aproximar f (x ) por un polinomio de grado < n , p n (x) llamado de polinomio interpolador o interpolante, tal
que:
f ( xi ) = pn ( xi ) ; para i = 1,2,3,...., n (4.1)
Si representamos p n (x ) = a 0 + a1 x + a 2 x + ... + a n x ,
2 n
un polinomio de grado n ; debemos encontrar los
valores de los coeficientes, a0 , a1 , a 2 ,..., an de p n (x) .
El polinomio interpolador es único, es decir solo hay un polinomio que pasa por estos n + 1 puntos. No se
requiere que los datos estén igualmente espaciados ni en algún orden en particular.
A continuación veremos tres maneras de calcular el polinomio interpolador y analizaremos una forma
particular, que consiste en crear una unión de polinomios para aproximar un conjunto de datos denominada
interpolación Spline.
En la forma matricial:
1 x0 x02 ...x0n
1 x1 x12 ...x1n
Matriz de Valdermonde
. . . .
1 xn x n2 x nn
Resolviendo este sistema lineal, obtenemos los valores de los coeficientes a0 , a1 ,..., a n de p n (x) .
= a 0 + a1 x + a 2 x
2
Ejemplo 4.1: Dada la siguiente tabla, encuentre p n (x)
x -1 0 2
f (x) 4 1 -1
p2 ( x0 ) = a 0 + a1 ( −1) + a 2 ( −1) 2 = 4
p 2 ( x1 ) = a 0 + a1 (0) + a 2 (0) 2 = 1
p 2 ( x2 ) = a 0 + a1 ( 2) + a 2 ( 2) 2 = −1
Resolviendo el sistema de ecuaciones obtenemos que a 0 = 1 ; a1 = −7 / 3 ; a 2 = 2 / 3 ; por tanto, el polinomio
interpolador es:
7 2
p 2 ( x) = 1 − x + x2 (4.2)
3 3
Dado los siguientes puntos x 0 , x1 , x 2 ,..., x n , es decir n+1 puntos distintos y y i = f ( x i ) ; para todo i = 1, 2,
..., n . Considerando p n (x) , el polinomio de grado < n que interpola la función f (x) en x0 , x1 ,..., xn .
Representamos p n (x) por: p n ( x i ) = Y0 L0 ( x i ) + Y1 L1 ( xi ) + ... + Yn Ln ( x i ) = y i La forma más simple de
0 '( > ≠ (
:; ==
satisfacer la relación anterior es imponer la siguiente condición:
<
1 '( > = (
( x − x0 )( x − x1 )...(x − x K −1 )( x − x K +1 )...(x − x n )
Definimos entonces: L K ( x) =
( x K − x0 )( x K − x1 )...(x K − x K −1 )( x K − x K +1 )...(x K − x n )
En síntesis
K =n
p n ( x) = ∑Y
K =0
K L K ( x) ; donde (4.3)
j =n
∏ (x − x
j =o
j)
k≠ j
LK ( x) = j =n
(4.4)
∏ (x
j =0
K − xj)
k≠ j
Ejemplo 4.2: Utiliza la interpolación de Lagrange para un polinomio de segunda orden con los
siguientes valores:
x -1 0 2
f (x) 4 1 -1
n = 2; y p 2 ( x ) = Y0 L0 ( x ) + Y1 L1 ( x ) + Y2 L2 ( x ) ; donde:
( x − x1 )( x − x 2 ) ( x − 0)( x − 2) x 2 − 2x
L0 ( x ) = = =
( x0 − x1 )( x0 − x 2 ) ( −1 − 0)( −1 − 2) 3
( x − x0 )( x − x 2 ) ( x − ( −1))( x − 2) x 2 − x − 2
L1 ( x) = = =
( x1 − x0 )( x1 − x 2 ) (0 − ( −1))(0 − 2) −2
( x − x0 )( x − x1 ) ( x − ( −1))( x − 0) x 2 + x
L2 ( x ) = = =
( x 2 − x0 )( x 2 − x1 ) ( 2 + 1)( 2 − 0) 6
de la tabla Y0 = 4 ; Y1 = 1; y Y2 = −1 . Sustituyendo los valores en la fórmula tenemos:
4 2 1 1
p 2 ( x) = ( x − 2 x ) − ( x 2 − x − 2) − ( x 2 + 2 x )
3 2 6
Simplificando, obtenemos el siguiente polinomio de segundo grado que interpola a la función en los
puntos dados
7 2
p 2 ( x) = 1 − x + x2 (4.5)
3 3
La fórmula de Newton para el polinomio p n (x) que interpola f(x) en x0 , x1 ,..., xn , con n+1 puntos distintos
es: p n ( x ) = d 0 + d 1 ( x − x 0 ) + d 2 ( x − x 0 )( x − x1 ) + ... + d n ( x − x 0 )( x − x1 )...( x − x n −1 ) (4.6)
Donde dk es el operador de diferencias divididas y donde los coeficientes k = 0 , 1, 2,..., n son diferencias
divididas de orden k entre los puntos [x j ; f ( x j )] ∀j = 0, 1, 2,..., n
f [ x1 ] − f [ x0 ] f ( x1 ) − f ( x0 )
f [ x0 , x1 ] = = orden 1
x1 − x0 x1 − x 0
f [ x1 , x 2 ] − f [ x0 , x1 ]
f [ x0 , x1 , x 2 ] = orden 2
x 2 − x0
.
.
orden 8
f [ x1 , x 2 ,..., x n ] − f [ x0 , x1 ,..., x n−1 ]
f [ x0 , x1 ,..., x n ] =
x n − x0
Se dice que f [ x0 , x1 ,..., xk ] es la diferencia dividida de orden k de la función f (x) sobre los k + 1 puntos:
x 0 , x1 , x 2 ,..., x k .
Ejemplo 4.3: dada la siguiente tabla, construya la tabla de diferencias divididas de Newton
x -1 0 1 2 3
f (x) 1 1 0 -1 -2
Siguiendo los pasos de ítem anterior montamos la tabla de diferencias divididas de Newton
Tabla de diferencias divididas:
-1 1
0
0 1 -1/2
-1 1/6
1 0 0 -1/24
-1 0
2 -1 0
-1
3 -2
Hugo Franco Paats 48
Introducción al Cálculo Numérico
Ejemplo 4.4: utilice la interpolación de Newton para un polinomio de segunda orden. Con los
siguientes valores
x -1 0 2
f (x) 4 1 -1
2
de la tabla concluimos que d 0 = 4; ; d1 = −3; d 2 = ; el polinomio interpolador de segunda orden
3
7 2
de Newton será: p 2 ( x ) = 4 − 3( x + 1) + 2 / 3( x + 1)( x + 0) = 1 − x + x2
3 3
7 2
Simplificando p 2 ( x) = 1 − x + x2 (4.8)
3 3
Se puede a apreciar comparando los resultados en los ejemplos 4.1, 4.2 y 4.4; que dan las ecuaciones (4.2),
(4.5) y (4.8), que aunque los métodos son diferentes los resultados obtenidos fueron los mismos.
Al aproximar f (x ) por un polinomio interpolador de grado ≤ n se comete un error que está dado por el
error absoluto:
En ( x) = f ( x) − pn ( x) ∀x ∈ [x0 ; xn ]
El estudio del error es importante para saber cuan próximo está f (x ) de p n (x) .
En el gráfico siguiente, podemos ver que el mismo polinomio interpola f1 ( x) y f 2 ( x) en x0 y x1 el error
será por tanto:
E1 ( x) = f1 ( x) − p1 ( x)
E 2 ( x) = f 2 ( x) − p1 ( x)
En el gráfico vemos que E1 ( x) > E2 ( x) x0 > x < x1 , concluimos que el polinomio aproxima mejor a f 2 ( x)
que a f 1 ( x) .
Consideremos un intervalo [a, b] de la función f (x) y a = x0 < x1 < x2 .... < xn = b; en n + 1 puntos. Por el
método de Newton construimos p n (x ) que interpola f (x) en los puntos x 0 , x1 , x 2 ,..., x n . Entonces p0 ( x)
es el polinomio de grado cero que interpola f (x ) en x = x0 p0 ( x) = f ( x 0 ) . Del mismo modo ∀x ∈ [a, b]
y x = x0 tendremos:
f ( x) − f ( x0 )
f [x 0 , x ] = ⇒ ( x − x 0 ) f [x 0 , x ] = f ( x ) − f ( x 0 ) ⇒ f ( x ) = f ( x 0 ) − ( x − x 0 ) f [x 0 , x ]
x − x0
Donde p 0 ( x ) = f ( x 0 ) y el segundo término del segundo miembro de la ecuación corresponde al error, o
sea E 0 ( x ) = ( x − x 0 ) f [x 0 , x ]
Considerando ahora p1 ( x) que es el polinomio de grado 1 que interpola f (x ) en x0 , x1
f [x ] − f [x 0 ]
− f [x1 , x0 ]
f [x0 , x ] − f [x 0 , x0 ] x − x0 f [x] − f [x0 ] − ( x − x 0 )( x − x1 ) f [x1 , x0 ]
f [x0 , x1 ,..., x ] = = =
x − x1 x − x1 (x − x0 )(x − x1 )
f ( x ) = f ( x 0 ) + ( x − x 0 ) f [x, x 0 ] + (x − x 0 )( x − x1 ) f [x 0 , x1 , x ]
p1 ( x) E1 ( x)
Aplicando sucesivamente el mismo raciocinio para x 0 , x1 , x 2 ,..., x n tendremos la forma de Newton de grado
≤ n que interpola f (x ) en x 0 , x1 , x 2 ,..., x n ;
p n ( x) = f ( x 0 ) + (x − x 0 ) f [x 0 , x1 ] + (x − x 0 )( x − x1 ) f [x 0 , x1 , x 2 ] + ... + (x − x 0 )( x − x1 )...( x − x n ) f [x 0 , x1 ,..., x n ]
Y el error dado por:
E n ( x ) = (x − x 0 )( x − x1 )...(x − x n ) f [x 0 , x1 ,..., x n ] (4.9)
0,2 0,16
0,4286
0,34 0,22 2,022
0,8333 -17,8916
0,4 0,27 -3,7033
0,1667 18,2492
0,52 0,29 1,0415
0,375 -2,6031
0,6 0,32 0,2085
0,4167
0,72 0,37
Dado que 0,47 pertenece al intervalo [0,42; 0,52] y como el polinomio interpolador es de segunda orden
por lo tanto tenemos que elegir 3 puntos para obtener el polinomio, tomando:
x0 = 0,4 ; x1 = 0,52 ; x2 = 0,6 ; obtenemos:
Teorema: si x0 , x1 ,..., xn son n+1 puntos distintos contenidos en el intervalo [a; b] y f (x ) es una función
derivable n + 1 veces en [a; b] , entonces si x está contenido en el intervalo existe un número z (x ) tal
que:
f ( x) = p n ( x) + f n +1
( z ( x ))[( x − x 0 )( x − x1 )...( x − x n )] /( n + 1)!
Corolario: una cota para el error válida para todo punto x del intervalo es:
( x − x0 )( x − x1)...( x − xn )
En ( x) = f ( x) − pn ( x) ≤ máx f ( n +1) ( x) (4.11)
( n + 1)!
La tabla de diferencias divididas puede auxiliar en la elección del grado del polinomio que usamos para
interpolar una función dada. En primer lugar debemos construir la tabla de las diferencias divididas,
enseguida, examinamos las diferencias divididas de la función en las proximidades del punto de interés. Si en
estas proximidades las diferencias divididas de orden “ n ” son prácticamente constantes, o si las diferencias
divididas de orden “ n + 1 ” varían en torno de cero, podemos concluir que un polinomio interpolador de orden
“ n ” será el que mejor aproximará a la función en la región considerada.
Decimos entonces que en el intervalo [1; 1.05] un polinomio de orden n = 1 es una buena
aproximación para f (x )
Cuando hacemos interpolación polinomial para una función f (x ) deseamos que la secuencia {p n ( x )} de los
polinomios de grado ≤ n converja a f (x) cuando n crece. Pero existen ejemplos de divergencia como el
conocido fenómeno de Runge.
1
Ejemplo 4.7: sea f ( x) = definida ∀ ∈ [−1;1] Vamos a interpolar f (x) en puntos igualmente
1 + 12 x 2
espaciados, tales que: x i = −1 + 2i / n y tomamos n = 14 .Lo que ocurre gráficamente es:
Ejemplo de Runge.
Aproximamos la
función
por el polinomio de
interpolación que
pasa
por los puntos en
asterisco. Se puede
observar
que la
aproximación es
mala cerca de los
extremos
del intervalo.
La divergencia ocurre en los extremos del intervalo. En este ejemplo conforme n crece, los puntos de
interpolación se vuelven cada vez más próximos y la diferencia f ( x) − p( x) se vuelve arbitrariamente
grande.
Terminamos este capítulo, estudiando un tipo de interpolación que ha demostrado poseer una gran finura, y
que inclusive es usado para el diseño por computadora, por ejemplo, de tipos de letras, imágenes, etc.
Cabe mencionar que entre todas, las spline cúbicas han resultado ser las más adecuadas para aplicaciones
como la mencionada anteriormente. Así pues, podemos decir de manera informal, que una función spline está
formada por varios polinomios, cada uno definido en un intervalo y que se unen entre si bajo ciertas
condiciones de continuidad.
Claramente esta función cumple con las condiciones de la spline de grado 1. Así, tenemos que para este
caso:
s1 ( x ) si x ∈ [x0 , x1 ]
s ( x ) s x ∈ [x1 , x2 ]
s( x) = 2
M
sn ( x ) si x ∈ [xn −1 , xn ]
i) FH
dónde:
5 + 7 ∀ ∈ / ; 2
5 + 7 ∀ ∈ / ; 2
F =I
⋮
5E + 7E ∀ ∈ / E ; E 2
Ejemplo 4.8: Dada la siguiente tabla de datos, aproximar la función por Spline cuadrática
#
1 2 3
-1 2,5 1
F 1 =5 + 7 + M = −1 ……………………(1)
Condiciones de contorno
F 2 =5 + 27 + 4M = 2,5 …………………(2)
F 2 =5 + 27 + 4M = 2,5 …………………(3)
F 3 =5 + 37 + 9M = 1 ………………….. (4)
F ´ 2 = 7 + 4M = F ´ 2 = 7 + 2 …… (5)
Condiciones de continuidad
1 1 1 0 0 0 = −1
1 2 4 0 0 0 = 2,5
0 0 0 1 2 4 = 2 .5
0 0 0 1 3 9 =1
0 1 4 0 −1 −4 =0
0 0 1 0 0 0 =0
F = −4,4 + 3,5
F = −24,5 + 23,5 − 5
El siguiente caso, que es el más importante en las aplicaciones, sigue exactamente los mismos pasos del
ejemplo que acabamos de resolver, solamente que en vez de trabajar con polinomios cuadráticos, lo hace
con polinomios cúbicos.
Ejemplo 4.9: Interpolar los datos del ejemplo anterior mediante una spline cúbica:
#
x 1 2 3
-1 2,5 1
Solución.
Definimos un polinomio cúbico en cada uno de los intervalos que se forman:
F = 5 +7 +M +@ 9
∀ ∈ /2; 32
F =R
F = 5 +7 +M +@ 9
∀ ∈ /3; 52
A continuación, hacemos que se cumpla la condición de que la spline debe pasar por los puntos
F 1 = 51 + 71 + M1 + @1 = −1
dados en la tabla. Así, tenemos que:
F´ 2 = 7 + 4M + 12@ = 7 + 4M + 12@ = F´ 2
Ahora calculamos la primera derivada en el nodo e igualamos (continuidad)
Al igual que en el caso de las spline cuadráticas, se presentan ecuaciones que pueden presentar
discontinuidad en los cambios de intervalo, o nodos; las posibles discontinuidades son los puntos
donde se cambia de intervalo, en este caso x = 2 . Las segundas derivadas también son iguales en
En este punto contamos con 6 ecuaciones y 8 incógnitas, por lo tanto tenemos 2 grados de
libertad; en general, se agregan las siguientes 2 condiciones, llamadas de spline natural:
55 Hugo Franco Paats
Introducción al Cálculo Numérico
s ′′( x0 ) = 0
s ′′( x n ) = 0
F´´ 1 = 2M + 6M = 0
F´´ 3 = 2M + 18M = 0
Obsérvese la finura con la que se unen los polinomios cúbicos que conforman a la spline.
Prácticamente ni se nota que se trata de dos polinomios diferentes. Esto es debido a las condiciones
que se impusieron sobre las derivadas de la función. Estas condiciones, son las que permiten
aplicar las spline cúbicas para cuestiones como el diseño de letras por computadoras, o bien a
problemas de modelado.
Como puede deducirse al compararlo con el caso de spline cuadráticos y spline cúbica, existen condiciones
predeterminadas para igualar el número de ecuaciones con el número de incógnitas que tenemos.
La forma de solucionar esto, determina el carácter de los spline cúbicos. Así, podemos usar:
Ejemplo 4.10: Interpolar los siguientes datos utilizando spline cúbicos naturales
x -1 1 2 4
y -1 1 5 -2
Solución.
Nuevamente, definimos un polinomio cúbico en cada uno de los intervalos:
Después, hacemos que la spline pase por los puntos dados en la tabla. Así, tenemos que:
−1 1 −1 1 0 0 0 0 0 0 0 a1 − 1
0
1
1 1 1 0 0 0 0 0 0 0 b1 1
0
0 0 0 0 1 1 1 1 0 0 0 0 c1 1
0 0 0 0 8 4 2 1 0 0 0 0 d1 5
0 0 0 0 0 0 0 0 8 4 2 1 a2 5
0 0 0 0 0 0 0 0 64 16 4 1 b2 − 2
=
3 2 1 0 − 3 − 2 −1 0 0 0 0 0 c2 0
0 0 0 0 12 4 1 0 − 12 − 4 − 1 0 d 2 0
3 1 0 0 − 3 −1 0 0 0 0 0 0 a3 0
0 0 0 0 6 1 0 0 − 6 − 1 0 0 b3 0
− 3 1 0 0 0 0 0 0 0 0 0 0 c3 0
0 0 0 0 0 0 0 0 12 1 0 0 d3 0
51 21 24
a1 = a2 = − a3 =
140 , 10 , 35
153 297 288
b1 = b2 = b3 = −
140 , 35 , 35
89 473 1867
c1 = c2 = − c3 =
140 , 70 , 70
48
d1 = −
153 d2 = d3 = −
732
40 , 35 , 35
Por lo tanto, la spline cúbica es:
140
51
x 3 + 140 x + 140
153 2 89
x − 153
40 si x ∈ [− 1,1]
21 3 297 2 473
s ( x ) = − 10 x + 35 x − 70 x + 35 48
si x ∈ [1,2]
24 x 3 − 288 x 2 + 1867 x − 732
35 35 70 35 si x ∈ [2,4]
Finalmente, mostramos la gráfica correspondiente
8
-1 1 2 4
-2
4.9- EJERCICIOS
4.2- Construya la tabla de diferencias divididas de Newton con los siguientes datos:
a) Calcula # 1,6 usando polinomios de interpolación de Newton de orden 1, orden 2 y orden 3. Elija la
f (x) 1 2,119 2,910 3,945 5,72 8,695
secuencia de puntos.
b) Haga una estimativa del error en cada predicción.
c) Repita el ítem a) utilizando la interpolación de Lagrange.
4.6- Suponiendo que # tiene un cero en el intervalo [0; 2] y sabiendo que # 0 = 16; # 1 = 1; # 2 =
2, estime la localización de este cero.
x -2 0 2 3
f (x) 0 1 b -1
4.8 - Calcula el polinomio de interpolación de Newton para cada una de las siguientes tablas de datos:
x -2 1 2 4
y -3 2.4 0,5 7,8
4.9 - Construya una tabla que contenga valores de cos(x ) para puntos igualmente espaciados en el
intervalo [1; 2], a partir de ella, aproxima el cos(x ) usando interpolación cuadrática y determina una
cota para el error en la aproximación.
ii)
x -1,5 -0,5 1 -2 -4
y 9 -2 5 33 0
Soluciones:
( x + 2)( x − 3)( x + 5) ( x − 1)( x − 3)( x + 5) ( x − 1)( x + 2)( x + 5)
i ) p ( x) = 1.56 + 3.54 − 2.57
− 36 45 80
( x − 1)( x + 2)( x − 3)
− 8 .9
− 144
x -2 1 3
y 40 -5 -20
Solución:
CAPITULO 5
5.1- INTRODUCCIÓN
En muchos casos podemos buscar aproximar un cierto conjunto de datos por algún tipo de funciones
prefijadas, aun cuando no se consiga que toda la función de aproximación coincida con los valores de los
datos en todos los puntos.
El problema del ajuste de curvas consiste en que tenemos una tabla de puntos
( x1 ; f ( x1 ), ( x2 ; f ( x2 ),..., ( xn ; f ( xn ) , donde los puntos pertenecen a un intervalo [a; b] y seleccionamos n
funciones g 1 ( x ), g 2 ( x),..., g n ( x) continuas en [a; b] , para obtener n constantes α 1 , α 2 ,..., α n tales que:
ϕ ( x ) = α 1 g 1 ( x ) + α 2 g 2 ( x ) + ... + α n g n ( x ) se aproxime lo máximo posible a f (x) .
¿Cómo elegir las funciones g 1 ( x ), g 2 ( x),..., g n ( x) ? La elección puede ser hecha observando el gráfico de
los puntos dados en la tabla, colocándolos en un gráfico cartesiano para visualizar la curva que mejor se
ajusta a los datos.
Ejemplo 5.1 – Dados los datos de la función f (x) acotados en la siguiente tabla
x -1,0 -0,75 -0,6 -0,5 -0,3 0 0,2 0,4 0,5 0,7 1,0
f (x) 2,05 1,153 0,45 0,4 0,5 0 0,2 0,6 0,512 1,2 2,05
Este diagrama nos sugiere aproximar la función dada por una parábola pasando por el origen. Por lo
tanto elegimos g ( x) = x 2 y buscaremos la solución para ϕ ( x) = α1 g1 ( x) = α .x 2 donde α debe ser
tal que f ( xi ) − ϕ ( xi ) sea mínimo; ∀i = 1,2,..., m .
Sabemos por cálculo diferencial, que para obtener un punto mínimo de cualquier función, debemos
encontrar los puntos críticos. Imponiendo la condición que:
∂F
(α1 ,α 2 ,...,α n ) = 0 ∀j = 1,2,..., n
∂α j
tendremos:
m
j = 1 2∑ [( f ( x k ) − α 1 g1 ( x k ) − α 2 g 2 ( x k ) − ... − α n g n ( x k )) × ( g1 ( x k )] = 0
k =1
m
j = 2 2∑ [( f ( x k ) − α 1 g 1 ( x k ) − α 2 g 2 ( x k ) − ... − α n g n ( x k )) × ( g 2 ( x k )] = 0
k =1
:
m
j = n 2∑ [( f ( x k ) − α 1 g 1 ( x k ) − α 2 g 2 ( x k ) − ... − α n g n ( x k )) × ( g n ( x k )] = 0
k =1 (5.1)
m m m m
∑
k =1 k =1
∑
g 1 ( x k ) g 1 ( x k )α 1 + g1 ( x k ) g 2 ( x k )α 2 + ... + g1 ( x k ) g n ( x k )α n =
k =1
∑ ∑ f (x
k =1
k ) g1 ( x k )
m m m m
∑
k =1 k =1
∑
g 2 ( x k ) g 1 ( x k ) α 1 + g 2 ( x k ) g 2 ( x k )α 2 + ... + g 2 ( x k ) g n ( x k )α n =
k =1
∑ ∑ f (x
k =1
k ) g 2 ( xk )
: :
m
m
m m
∑ ∑
g n ( x k ) g 1 ( x k ) α 1 + g n ( x k ) g 2 ( x k )α 2 + ... + g n ( x k ) g n ( x k )α n = ∑ ∑ f (x k ) g n (xk )
k =1 k =1 k =1 k =1
(5.2)
Tenemos un sistema lineal con n ecuaciones y n incógnitas. Podemos expresarlo en forma matricial
Ax = b
m
m
∑ g ( x) g ( x) ∑ g ( x) g
1 1
m
1 2 ( x) ...
m
∑ g ( x) g
1 n ( x) α1
∑ f ( x) g ( x)
k =1
1
k =1 k =1 k =1
m m m m
∑g 2 ( x) g1 ( x) ∑g 2 ( x) g 2 ( x) ∑g
... 2 ( x) g n ( x) .α 2 = ∑ f ( x) g
k =1
2 ( x)
k =1 k =1 k =1
: : : : : :
m m m
αn
∑g
k =1
n ( x) g1 ( x) ∑g
k =1
n ( x) g 2 ( x) ∑g
...
k =1
n ( x) g n ( x )
m
∑ f ( x) g n ( x)
k =1 (5.3)
Ejemplo 5.2: tomamos como ejemplo la tabla anterior el cual, a través del diagrama de dispersión
sugería una parábola pasando por el origen como función de aproximación. Por lo tanto ϕ ( x) = αx 2
De la ecuación general tenemos:
63 Hugo Franco Paats
Introducción al Cálculo Numérico
11 11
∑
g ( x k ) g ( x k )α =
k =1 k =1
∑
f ( x k ) g ( x)
11 2
11
∑
g ( x k ) α = ∑
f ( x k ) g ( x) siendo g ( x) = x 2
k =1 k =1
11 2 2 11
∑
( x ) α =
k =1 k =1
∑
f ( xk ) x 2
x -1,0 -0,75 -0,6 -0,5 -0,3 0 0,2 0,4 0,5 0,7 1,0
x x2
2 1 0,3164 0,1296 0,0625 0,0081 0 0,0016 0,0256 0,0625 0,2401 1 2,8464
f ( x) x 2 2,05 0,6486 0,162 0,1 0,045 0 0,008 0,096 0,128 0,588 2,05 5,8756
En el caso continuo el problema de ajuste de curva consiste en dada una función f (x) continua en [a, b] y
seleccionadas las funciones g 1 ( x ), g 2 ( x ),... g n ( x ) todas continuas en [a, b] , determinar n constantes
α 1 , α 2 ,..., α n de modo que la función ϕ ( x ) = α 1 g 1 ( x ) + α 2 g 2 ( x ) + ... + α n g n ( x ) se aproxime lo máximo
posible a f (x) en el intervalo [a, b] .
Por ejemplo, supongamos que queremos encontrar la recta que mejor se aproxima de f ( x) = 4 x , en un
3
Por el criterio de los mínimos cuadrados, los coeficientes α a ser obtenidos deben ser tal que
b
∫ [ f ( x) − ϕ ( x)] dx = ∫ [ f ]
b b
( x) − 2 f ( x)ϕ ( x) + ϕ 2 ( x) dx ,
2 2
a a
Considerando también que ϕ ( x) = α 1 g1 ( x) + α 2 g 2 ( x) tenemos:
∫ [f ]
b
( x) − 2 f ( x)(α 1 g1 ( x) + α 2 g 2 ( x) ) + (α 1 g1 ( x) + α 2 g 2 ( x) ) dx
2 2
a
b
∂F
b
b 2 b
∂α 1 a
∫ a
∫ a
∫
= −2 f ( x) g1 ( x)dx + 2 g 1 ( x)dx α 1 + 2 g 1 ( x) g 2 ( x) dx α 2 = 0
∂F
b
b b
∂α 2 a
∫ a
∫
= −2 f ( x) g 2 ( x)dx + 2 g1 ( x)g 2 dx α 1 + 2 g 22 ( x)dx α 2 = 0
a
∫
reagrupando términos, tenemos entonces en forma matricial:
b b b
∫ g12 ( x)dx ∫ g ( x) g
1 2 ( x ) dx α1 ∫ g ( x) f ( x)dx
1
a11 a12 α 1 b
= = 1
a
a a
⇒
b b b a 21 a 22 α 2 b2
∫ ∫ α2
z
g1 ( x) g 2 ( x)dx
a
g 22 ( x)dx
∫g
a
2 ( x) f ( x)dx (5.4)
1 1 / 2 α1 1
=
1/ 2 1/ 3 α 2 4 / 5
4 18
resolviendo tenemos que α1 = − y α2 = y la recta que se ajusta a la función en [0; 1] es:
5 5
18 4
ϕ ( x) = x−
5 5
5.5 – LINEALIZACIÓN
En algunos casos, la familia de funciones escogidas puede no ser lineal en los parámetros. Por ejemplo, si
el diagrama de dispersión se ajusta a una exponencial del tipo y = ϕ ( x) = Ae . Para aplicar el método de
Bx
los mínimos cuadrados es necesario efectuar una linealización, a través de una transformación conveniente.
40
35
30
25
20
15
10
5
0
-1,5 -1 -0,5 0 0,5 1 1,5
Vemos que el gráfico nos sugiere un ajuste del tipo exponencial y = ϕ ( x) = Ae− Bx
8 8 8
a11 = ∑ 1 = 8 a12 = ∑x k = 0,3 = a 21 a 22 = ∑x 2
k = 3,59
k =1 k =1 k =1
8 8
b1 = ∑
k =1
f ( x k ) g 1 ( x k ) = 8,041 b2 = ∑ f (x
k =1
k ) g 2 ( x k ) = −8,646
8 0,3 α 1 8,041
luego resolvemos el sistema =
0,3 3,59 α 2 − 8,646
A la hora de cuantificar el error, a menudo resulta interesante para comparar la bondad entre distintos tipos
de ajuste y expresarlos en términos porcentuales del error cuadrático medio E m , que se calcula del
siguiente modo:
nE
Em = × 100% ; (5.8)
∑
n
f ( xi )
i =1
donde n indica el número de datos de que se dispone en la muestra y E es el error cuadrático global. Se
entiendo por error cuadrático global como siendo E = ∑ ( f ( xi ) − ϕ ( xi )) .
n 2
i =1
Error cuadrático mide el promedio de los errores, es decir la diferencia entre el estimador y lo que se estima.
Es usado para determinar la medida en la que el modelo no se ajusta a la información. El Error cuadrático
medio con valor mínimo a menudo, pero no siempre, indica una variación mínima, por lo que tener un error
cuadrático cero es ideal pero no es posible en la mayoría de los casos.
Ejemplo 5.5: Calcula el error cuadrático medio de la aproximación del ejemplo 5.4
∑
8
Calculamos los valores de E y de
i =1
f ( xi ) , utilizando los valores de la tabla
8 × 0,0019418
Por lo tanto el error cuadrático medio será Em = × 100 = 0,18%
69,1086
5.7 - EJERCICIOS
5.1 – Obtenga la recta de mínimos cuadrados que aproxima a los datos de la siguiente tabla:
x -1 1 3
f (x ) -3 1 11
5.2 – Ajusta una parábola por el método de los mínimos cuadrados a los datos de la tabla:
x 1 2 3 4 5 6 7 8 9
f (x) 2.1 3.3 3.9 4.4 4.6 4.8 4.6 4.2 3.4
5.3 – Dada la siguiente tabla, haga e gráfico de los datos y ajuste una curva de la mejor manera posible.
67 Hugo Franco Paats
Introducción al Cálculo Numérico
5.5 – Los beneficios, en millones de Gs, obtenidos por varias compañías del mismo grupo durante los años
2012 y 2013 vienen indicados por:
Obtener la recta de mínimos cuadrados y la parábola de mínimos cuadrados que se ajusta a los
datos anteriores e indica cuál de ellas se ajusta mejor.
5.6 – Obtenga los polinomios de mínimos cuadrados de primero, segundo y tercer grados para los datos de
la tabla anexa. En cada caso calcula el error absoluto y grafica los datos y los polinomios. Compara el
error cuadrático medio para cada aproximación.
5.7 – Repita el problema anterior para aproximar por una función del tipo y = Ae − Bx . Calculo el error
cuadrático medio.
5.8 – Utiliza el método de linealización de datos para hallar un ajuste exponencial a los datos que se
muestran en la tabla realizando los cambios de variable correspondiente:
x -1 0 1 2 3
f ( x) 6,62 3,94 2,17 1,35 0,89
a) Aproximar por y = Ce
Ax
1
b) Aproximar por y =
Ax + B
c) Calcula a través del error cuadrático medio cual e las dos es la mejor aproximación a los valores de
la tabla.
5.9 – Dado los puntos [1; 0,5], [2; 1,7], [3; 3,4] y [4; 5,7]. Encontrar la ecuación del tipo Q = 5 W que
aproxima dichos puntos utilizando el método de mínimos cuadrados con linealización de los datos.
5.10 – La población de conejos en una isla, fue registrado desde 2011 y los datos se muestran en la
siguiente tabla:
5.11 – Se consideran los puntos [(-2;-3), (-1;-6), (0; -5), (1; 1), (2; 13)]
a) Prueba que un polinomio de mínimos cuadrados de grado 3 pasa por todos ellos.
b) Determina la parábola de ajuste por mínimos cuadrados. ¿Pasa la parábola por alguno de los
puntos?
c) Determina la recta por mínimos cuadrados ¿Pasa la recta por alguno de los puntos?
CAPITULO 6
Es común en ingeniería encontrar el problema de integrar funciones que están definidas en forma tabular o
en forma gráfica y no como funciones explícitas. La idea de integración numérica es la de sustituir la función
f (x ) por un polinomio que se aproxima a f (x ) en un intervalo [ a, b] , por lo tanto necesitamos una
b
fórmula para aproximar ∫
a
f ( x)dx de la forma siguiente:
b
∫ f ( x)dx ≅ A0 f ( x0 ) + A1 f ( x1 ) + ... + An f ( x n ) ; xi ∈ [a, b] (6.1)
a
Esta fórmula es conocida como fórmula de Newton-Cotes (Isaac Newton y Roger Cotes), siendo el
b−a
polinomio que aproxima a f (x ) en puntos igualmente espaciados y tal que xi +1 − x i = h = ∀i = 0,
m
1, 2, . . ., n − 1; siendo m la cantidad de subintervalos y un número entero, x0 = a y xn = b , por lo tanto:
n
f ( x ) dx ≅ ∫ f ( x )dx ≈ A0 f ( x 0 ) + A1 f ( x1 ) + ... + An f ( x x ) = ∑ Ai f ( x i )
b xn
∫a x0
i =o
(6.2)
La idea esencial de estos métodos es sustituir la función a integrar por alguno de sus polinomios de
interpolación. Se trata por tanto de toda una familia general de métodos, según el polinomio de interpolador
que se considere. El valor de Ai se determina de acuerdo al grado del polinomio de aproximación.
Dentro de las fórmulas de Newton-Cotes, existen las formas cerradas y abiertas. En las formas cerradas se
conocen los valores de f (a ) y f (b ) , caso contrario, se llaman formas abiertas. Nos remitiremos
únicamente las formas cerradas, y por lo tanto, siempre supondremos que conocemos los valores en los
extremos.
Usando la fórmula de Lagrange para expresar el polinomio de primer grado p1 ( x) que interpola a f (x ) en
los puntos x1 , x2 y sea x0 = a ; x1 = b y h = b − a para m = 1; el polinomio de Lagrange es:
x − x1 x − x0
p1 ( x) = f ( x0 ) + f ( x1 ). Luego
x0 − x1 x1 − x0
b x − x1
x1 x − x0 1 x1
∫a
f ( x)dx = ∫
x0 x − x
0 1
f ( x0 ) +
x1 − x0
f ( x1 ) dx +
2 ∫x0
f ′′(ξ ( x))( x − x 0 )( x − x1 )dx
Esta fórmula es conocida por la Regla del Trapecio por que representa el área de un trapecio, como se
muestra en la figura:
Fig. 6.1
h
[ f ( x0 ) + 2[ f ( x1 + f ( x 2 + .... + f ( x n−1 )] + f ( x n )]
b
I TR = ∫a
f ( x ) dx ≅
2
(6.5)
Gráficamente
Fig. 6.2
(b − a ) h 2
ETR = f ′′(ξ ) podemos deducir una cota del error, o valor máximo del error considerando que
12
máx f ′′( x) (b − a ) h 2
f ′′(ξ ) ≤ M 2 = por lo que queda: E TR ≤ M2
x ∈ [a, b] 12 (6.6)
Respuesta:
1 b − a 1− 0
∫ e dx , siendo que m = 10 y h = = = 0,1
x
a) Debemos calcular
0 m 10
aplicamos la fórmula del trapecio repetida y tenemos
I=
0,1 0
2
[ ( ) ]
e + 2 e 0.1 + e 0.2 + e 0.3 + ... + e 0.9 + e1 = 1.7197134914 ..
1
el valor exacto de la integral es I = e x = 1,7182818284...
0
(b − a )h 2
b) Aplicando la fórmula ETR ≤ M 2 calculamos que f ′′( x) = e x por tanto M 2 = e1
12
0,12
valor aproximado del error ETR = × e1 = 0.002265
12
(b − a ) h 2
c) si el error ETR < 10 −3 entonces: M 2 < 10 −3 debemos despejar el valor de h
12
12 × 10 −3
h2 < = 0.0044146 h < 0.004414 = 0.064425 y el valor de m será
e1
b−a 1
m> = = 15,52 , siendo que m debe ser un número entero y mayor que 15,52
h 0.064414
asumimos que el valor de m = 16
( x − x1 )( x − x2 ) ( x − x0 )( x − x2 ) ( x − x 0 )( x − x1 )
p 2 ( x) = f ( x0 ) + f ( x1 ) + f ( x2 )
( x0 − x1 )( x0 − x 2 ) ( x1 − x0 )( x1 − x 2 ) ( x2 − x0 )( x 2 − x1 )
( x − x1 )( x − x 2 ) ( x − x 0 )( x − x 2 ) ( x − x 0 )( x − x1 )
p 2 ( x) = f ( x0 ) + f ( x1 ) + f ( x2 )
( − h)( −2h) ( h)( − h) ( 2h)( h)
(6.7)
Haciendo el cambio de variable x = x 0 + ht , de manera que dx = hdt . Los nuevos límites de integración
son t = 0 y t = 2 . Como los nodos son x k = x0 + kh están igualmente espaciados, podemos escribir que
xk − x j = (x − j )h y x − x k = h(t − k ) . Ahora simplificamos las integrales (6.7)
2 h(t − 1)h(t − 2) 2 h(t − 0)h(t − 2) 2 h(t − 0) h(t − 1)
I
S
1
3
= f ( x0 ) ∫0 2h 2
hdt + f ( x1 ) ∫0 − h2
hdt + f ( x 2 ) ∫ 0 2h 2
hdt =
∫ (t ) ∫ (t ) ∫ (t )
h 2 2 h 2
= f ( x0 ) 2
− 3t + 2 dt − f ( x1 ) h 2
− 2t dt + f ( x 2 ) 2
− t dt
2 0 0 2 0
2 2 2
h t 3 3t 2 t3 h t3 t2 h 4h h
= f ( x0 ) − + 2t − f ( x1 )h − t 2 + f ( x 2 ) − = f ( x0 ) + f ( x1 )
+ f ( x2 )
2 3 2 0 3 0 2 3 2 0 3 3 3
p 2 ( x)dx = [ f ( x 0 ) + 4 f ( x1 ) + f ( x 2 )]
b x2 h
así: I 1 = f ( x) dx ≈
S
3
a ∫ x0 3 ∫ (6.8)
(ξ ) , donde ξ ∈ [a, b]
h5
El error cometido está dado por E SR = − f ( 4)
90
I SR =
h
{ f ( x0 ) + 4[ f ( x1 ) + f ( x3 ) + ... + f ( x m−1 )] + 2[ f ( x 2 ) + f ( x 4 ) + ... + f ( x m− 2 )] + f ( x m )} (6.9)
3
f (ξ ) donde ξ ∈ [a; b]
mh 5 ( 4 )
El error cometido es E SR = −
180
Respuesta:
b − a 1− 0
a) siendo que m = 10 y h = = = 0,1
m 10
aplicamos la fórmula se 1/3 de Simpson repetida y tenemos
I SR =
0,1 0
3
[ ( ) (
e + 4 e 0.1 + e 0.3 + ... + e 0.9 + 2 e 2 + e 0.4 + ... + e 0.8 + e1 = 1.718282782 ... ) ]
el error absoluto es E A = 0,00000095346...
(b − a ) h 4
b) Aplicando la fórmula E TR ≤ M 4 calculamos que f IV ( x) = e x por tanto M 4 = e1
180
0,14
valor aproximado del error ETR = × e1 = 1,51 × 10 −6
180
−3 (b − a ) h 4
c) si el error ETR < 10 entonces: M 4 < 10 −3 debemos despejar el valor de h
180
−3
180 × 10
h4 < = 0.06621 h < 4 0.06621 = 0.5073 y el valor de m será
e1
b−a 1
m> = = 1,9712 , siendo que m debe ser un número entero y mayor que 1,9712
h 0.5073
asumimos que el valor de m=2
b−a 4
El análisis del error nos conduce a que en este caso: E 3≤ h M4
S
8
80
=
3h
{ f ( x 0 ) + 3[ f ( x1 ) + f ( x 2 ) + ... + f ( x m−1 )] + 2[ f ( x3 ) + f ( x 6 ) + ... + f ( x m−3 )] + f ( x m )} (6.12)
8
Algunos tipos de integrales que requieren atención especial como por ejemplo
∞
∫ e − x dx , se extiende sobre un dominio infinito conforme x → 0
2
I=
−∞
1 1
I=∫ dx
0 x (e x ) + 1
1
I= ∫x
0.7
cos( x)dx tienen singularidades en x=0
0
La derivación o diferenciación numérica consiste en evaluar derivadas de una función usando únicamente
los valores que toma la función en una serie de puntos. La técnica de aproximar las derivadas por
diferencias tiene muchas aplicaciones, en particular a la resolución numérica de ecuaciones diferenciales y
ecuaciones en derivadas parciales.
Fig. 6.4
f ( x + h) − f ( x) h
f ′( x ) ≈ , Cota del Error E ≤ M 2 (6.14)
h 2
Denominando M 2 = máx f ′′( x)
Es posible obtener, por el mismo procedimiento, derivadas de orden superior al primero, considerando la
derivada de una función del tipo y = f ′(x ) . Teniendo en cuenta las aproximaciones anteriores, calculamos
la segunda derivada:
f ( x i + 2 h) − f ( x i + h ) f ( xi + h) − f ( x i )
−
f ′( xi + h) − f ′( xi ) h h
f ′′( xi ) ≅ ≅
h h
f ( x i + 2h ) − 2 f ( x i + h) + f ( x i ) h2
f ′′( xi ) ≅ Cota del Error E ≤ M4 (6.17)
h2 12
Que constituye la fórmula de las diferencias progresivas para el cálculo aproximado de la derivada de 2º
orden.
f (x)
h h h h h
xi
Nomenclaturas:
f ( xi ) = f i
f ( xi ± h) = f i ±1
f ( x i ± 2h) = f i ± 2 . .. etc.
Fórmulas:
f i − 2 f i −1 + f i − 2
f i′′ ≅ ; diferencias regresivas (6.18)
h2
Para 3º y 4º orden:
75 Hugo Franco Paats
Introducción al Cálculo Numérico
f i + 3 − 3 f i + 2 + 3 f i +1 − f i
Diferencias progresivas: f i′′′=
h3
f i + 4 − 4 f i +3 + 6 f i + 2 − 4 f i +1 + f i
=
( IV )
fi
h4
f i − 3 f i −1 + 3 f i − 2 − f i −3
Diferencias regresivas: f i′′′=
h3
f i − 4 f i −1 + 6 f i − 2 − 4 f i −3 + f i − 4
=
( IV )
fi
h4
f i + 2 − 2 f i +1 + 2 f i −1 − f i − 2
Diferencias centrales: f i′′′=
2h 3
f i+2 − 4 f i +1 + 6 f i − 4 f i −1 + f i − 2
=
( IV )
fi
h4
Como ya se ha visto, es usual expresar las derivadas en relación con los distintos valores que toma una
función dada en puntos del eje x igualmente espaciados. La expresión general de una derivada depende
de: orden de la misma, grado deseado para el polinomio de interpolación empleado para aproximar la
función dada y el tipo de diferencias empleado.
Según lo anterior y empleando la fórmula de Gregory − Newton , la derivación aproximada de una función
tiene las expresiones que de indican a continuación, en la que se ha hecho f ( xi ) ≡ f i
− f 5 + 8 f 4 − 8 f 2 + f1 f − 2 f3 + f2
f 3′ = ; f 3′′ = 4
12h h2
f 5 − 2 f 4 + 2 f 2 − f1
f 3′′′ =
2h 3
Los resultados anteriores también pueden obtenerse manejando tablas de diferencias sobre funciones
evaluadas en puntos equidistantes separados por una distancia h
x1 f1
∆f 1
x2 f2 ∆2 f1
∆f 2 ∆3 f1
x3 f3 ∆2 f 2 ∆4 f1
∆f 3 ∆3 f 2 i .
x4 f4 ∆2 f 3 . .
∆f 4 . . .
.
x5 f5 . . . .
. .
. . . .
. .
. .
6.1- Calcula las siguientes integrales usando la regla de los trapecios y la regla de Simpson, usando cuatro y
seis divisiones para los intervalos de integración.
2 4
∫ e dx ∫
x
a) b) x dx
1 1
6.2- Usando las integrales del ejercicio anterior determine con cuantas divisiones del intervalo, en lo mínimo,
−5
podemos esperar obtener un margen de error menor que 1 × 10
0.6 dx
6.3- Calcule el valor aproximado de ∫0 1+ x
con tres casas decimales de precisión
4
∫ (3x − 3x + 1)dx por la regla de Simpson
3
6.4- ¿Cuál es el error máximo cometido en la aproximación de
0
con 4 sub-intervalos? Calcule por Trapecios y compare los resultados.
6.5- Calcula la integral de los siguientes datos tabulados mediante la regla del trapecio
#
0 0,1 0,2 0,3 0,4 0,5
1 7 4 3 5 9
Repita el problema utilizando la regla de Simpson.
π
6.6- Calcula la siguiente integral ∫ 0
(4 + 2 sen x)dx
a) Por la regla del Trapecio y calcula el margen de error.
b) Por la regla de Simpson de 1/3 y evalúa el error asociado.
c) Por la regla de Simpson de 3/8 evaluando la cota máxima del error
10 π
6.7- Utiliza medios analíticos para evaluar: 1) ∫0
(10 + 2 x − 6 x 2 + 5 x 4 )dx 2) ∫
0
(8 + 5 sen x)dx
a) Evalúa las integrales con la regla del Trapecio simple y repita utilizando m=2, 4 y 6
b) Evalúa las integrales con la regla de Simpson de 1/3, con m = 4 y 6
c) Evalúa con la regla de Simpson y m = 7.
6.8- Calcule la sección transversal del canal mostrado en la figura, donde las flechas indican donde fueron
efectuadas las mediciones. Utilice uno de los métodos numéricos para resolverlo.
5
−x
6.9- Determine el valor de h h necesario para aproximar la integral: ∫e
0
sen xdx , usando la regla de
−5
Simpson 1/3 repetida y la regla del Trapecio repetida con precisión de 10
6.10- Utilizando uno de los métodos numéricos para calcular las siguientes integrales con 3 decimales
exactos:
2 dx 2
∫ ∫ cosh x
2
a) b) dx
1 1+ x2 1
6.11 – La distribución de velocidad de un fluido cerca de una superficie plana dada por la tabla:
x(mm) 0 2 4 6 8
v 0 9,8853 15,4917 18,2075 19,0210
Evalúa las derivadas de v que pueda en x = 0
6.12 – El tiempo y la velocidad correspondiente a un móvil viene dados por la tabla siguiente. Calcula la
aceleración, en los instantes 0, 120, y 300 segundos
t 0 60 120 180 240 300
v 0,0 0,0824 0,2747 0,6502 1,3851 3,2229
6.15.- Se dan los puntos de coordenadas P1 (−2 : 5) y P2 (2 : 5) . Obtener una estimación para f ′(0) y f ′′(0) ,
sabiendo que es f (0) = 1
6.16 – Utilice la fórmula de tres puntos más conveniente para determinar las aproximaciones para calcular
f ′(1,3) y f ′′(1,3)
x 1,1 1,2 1,3 1,4
f (x) 9,025013 11,02318 13,46374 16,44465
Sabiendo que los datos corresponden a la función f ( x) = e 2 x , calcula los errores reales.
CAPITULO 7
7.1- INTRODUCCIÓN
Las ecuaciones diferenciales aparecen naturalmente al modelar situaciones físicas en las ciencias naturales,
ingeniería, y otras disciplinas, donde hay envueltas razones de cambio de una o varias funciones
desconocidas con respecto a una o varias variables independientes. Estos modelos varían entre los más
sencillos que envuelven una sola ecuación diferencial para una función desconocida, hasta otros más
complejos que envuelven sistemas de ecuaciones diferenciales acopladas para varias funciones
desconocidas. Por ejemplo, la ley de enfriamiento de Newton y las leyes mecánicas que rigen el movimiento
de los cuerpos, al ponerse en términos matemáticos dan lugar a ecuaciones diferenciales.
Usualmente estas ecuaciones están acompañadas de una condición adicional que especifica el estado del
sistema en un tiempo o posición inicial. Esto se conoce como la condición inicial y junto con la ecuación
diferencial forman lo que se conoce como el problema de valor inicial. Por lo general, la solución exacta de
un problema de valor inicial es difícil o imposible de obtener en forma analítica. Por tal razón los métodos
numéricos se utilizan para aproximar dichas soluciones.
La idea del método de Leonhard Euler es muy sencilla y está basada en el significado geométrico de la
derivada de una función en un punto dado.
Supongamos que tuviéramos la curva solución de la ecuación diferencial y trazamos la recta tangente a la
curva en el punto dado por la condición inicial.
Debido a que la recta tangente aproxima a la curva en valores cercanos al punto de tangencia, podemos
tomar el valor de la recta tangente en el punto x1 como una aproximación al valor deseado y ( x1 ) .
Ejemplo 7.1 - Dada la siguiente ecuación diferencial y la condición inicia, aproximar y (0,5)
y ′ = 2 xy ; y (0) = 1
Primero observamos que esta ecuación sí puede resolverse por métodos tradicionales de ecuaciones
diferenciales. Por ejemplo, podemos aplicar el método de separación de variables. Veamos las dos
soluciones.
dy
Solución Analítica. = 2 xy
dx
dy
= 2 xdx
y
ln y = x 2 + c
Sustituyendo la condición inicial: x = 0 ⇒ y = 1 ; ln1 = c
c=0
Por lo tanto, tenemos que la curva solución real está dada: ln y = x
2
2
e ln y = e x
2
y = ex
y(0,5) = e (0,5 ) = 1,28403
2
por lo tanto, la solución exacta es:
Solución Numérica
Aplicamos el método de Euler y para ello, observamos que la distancia entre x0 = 0 y x1 = 0,5
no es lo suficientemente pequeña. Si dividimos esta distancia entre cinco obtenemos un valor de
h = 0,1 y por lo tanto, obtendremos la aproximación deseada en cinco pasos.
De esta forma, tenemos los siguientes datos: x0 = 0 ; y 0 = 1 ; h = 0,1
Sustituyendo estos datos en la fórmula de Euler, tenemos, en un primer paso:
x1 = x0 + h = 0,1
y1 = y 0 + hf ( x0 ; y 0 ) = 1 + 0,1[2(0)(1)] = 1
Aplicando nuevamente la fórmula de Euler, tenemos, en un segundo paso:
x 2 = x1 + h = 0,2
y 2 = y1 + hf ( x1 ; y1 ) = 1 + 0,1[2(0,1)(1)] = 1,02
Y así sucesivamente hasta obtener y 5 . Resumimos los resultados en la siguiente tabla:
n x y
n n
0 0 1
1 0,1 1
2 0,2 1,02
3 0,3 1,0608
4 0,4 1,12445
5 0,5 1,2144
Concluimos que el valor aproximado, usando el método de Euler es: y (0,5) ≈ 1,2144
Puesto que en este caso, conocemos el valor verdadero, podemos usarlo para calcular el error
relativo porcentual que se cometió al aplicar la fórmula de Euler. Tenemos que:
1,28402 − 1,2144
E = × 100% = 5,2%
1,28402
Ejemplo 7.2 - Aplicar el método de Euler para aproximar y (1,3) , dada la ecuación diferencial:
y ′ = x 2 + 0,5 y 2 ; y(1) = 2
Solución
Nuevamente vemos que nos conviene dividir en pasos la aproximación. Así, elegimos nuevamente
h = 0,1 para obtener el resultado final en tres pasos. Por lo tanto, aplicamos el método de Euler con
los siguientes datos
x0 = 1 ; y0 = 2 ; h = 0,1 para f ( x, y) = x 2 + 0,5 y 2
En un primer paso, tenemos que:
x1 = x0 + h = 1,1
[
y1 = y 0 + hf ( x0 ; y 0 ) = 2 + 0,11 + 0,5(2) = 2,3
2 2
]
Hugo Franco Paats 82
Introducción al Cálculo Numérico
n xn yn
0 1 2
1 1,1 2,3
2 1,2 2,6855
3 1,3 3,1901
Este método propuesto por Karl Heun, se basa en la misma idea del método anterior, pero hace un
refinamiento en la aproximación, tomando un promedio entre ciertas pendientes. La fórmula es la
( f ( x n , y n ) + f ( x n +1 , y n*+1 )
siguiente: y n +1 = y n + h Donde y n+1 = y n + h. f ( x n , y n )
*
;
2 (7.2)
Para entender esta fórmula, analicemos el primer paso de la aproximación, con base en la siguiente gráfica:
Ejemplo 7.3 - Aplicar el método de Euler mejorado, para aproximar y (0,5) si: y ′ = 2 xy si y (0) = 1
Solución: Vemos que este es el ejemplo 7.1 del método anterior. Así que definimos h = 0,1 y
encontraremos la aproximación después de cinco iteraciones. A diferencia del método de Euler, en
*
cada iteración requerimos de dos cálculos en vez de uno solo: el de y n primero y posteriormente el
de yn .
Para aclarar el método veamos con detalle las primeras dos iteraciones. Primero que nada, aclaramos
que tenemos los siguientes datos iniciales: x 0 = 0 ; y 0 = 1 ; h = 0,1 y f ( x, y ) = 2 xy
En nuestra primera iteración tenemos:
x1 = x 0 + h = 0 + 0,1 = 0,1
y1* = y0 + hf ( x0 ; y0 ) = 1 + 0,1[2(0)(1)] = 1
f ( x0 ; y 0 ) + f ( x1 ; y1*
∴ y1 = y 0 + h = 1,01
2
Nótese que el valor de y1* coincide con el y1 (Ejemplo 7.1), y es el único valor que va a coincidir,
* *
pues para calcular y 2 se usará y1 y no y1 .
Esto lo veremos claramente en la siguiente iteración:
x2 = x1 + h = 0,1 + 0,1 = 0,2
y 2* = y1 + hf ( x1 ; y1 ) = 1,0302
f ( x1 ; y1 ) + f ( x2 ; y 2*
∴ y 2 = y1 + h = 1,040704
2
*
Nótese que ya no coinciden los valores de y 2 (Ejemplo 7.1) y el de y 2 . El proceso debe seguirse
hasta la quinta iteración. Resumimos los resultados en la siguiente tabla:
n xn yn
0 0 1
1 0,1 1,01
2 0,2 1,040704
3 0,3 1,093988
4 0,4 1,173192
5 0,5 1,28336
Vemos que efectivamente se ha obtenido una mejor aproximación con este método, reduciendo el
error relativo verdadero de un 5.4% hasta un 0.05%. En nuestro tercer método veremos cómo se
reduce aún más este error prácticamente a un 0%!
Veamos un segundo ejemplo.
x 2 = x1 + h = 1,1
y1* = y0 + hf ( x0 ; y0 ) = 2,4
4 + (1,1 − 2,4 + 5)
y1 = 2 + 0,1 = 2,385
2
Resumimos los resultados en la siguiente tabla:
n xn yn
0 1 2
1 1,1 2,385
2 1,2 2,742925
3 1,3 3,07635
Calcular y k +1 = y k +
h
2
[
f ( x k , y k ) + f ( x k +1 , y k* +1 ) ]
4) Mostrar los valores de xk +1 , y k +1
Los métodos de Runge-Kutta (Carl David Tolmé Runge y Martin Wilhelm Kutta), son un conjunto de
métodos iterativos (implícitos y explícitos) para la aproximación de soluciones de ecuaciones diferenciales
ordinarias, concretamente, del problema de valor inicial. Consideremos nuevamente la ecuación diferencial
ordinaria: y ′ = f ( x, y ) con y ( x0 ) = y 0 . Para calcular y n +1 en x n +1 = x n + h , dado un valor de y n ,
podemos integrar la ecuación anterior en el intervalo / E ; EY 2
QEY = QE + Z ]^_
#[ ; Q \@
]
(7.3)
Existen varias formas de resolver la integral, pero todas se pueden denotar en la forma generalizada por la
QEY = QE + X∅ E , QE , X ,
ecuación:
(7.4)
donde ∅ E , QE , X es conocida como función incremento, la cual puede interpretarse como una pendiente
representativa sobre el intervalo, ∅ E , QE , X = 5 > + 5 > +. . . +5E >E , donde las constantes y las > son:
> = # E QE ,
> = # E + V X, QE + b > X ,
>9 = # E + V X, QE + b > X + b > X .
Las > son relaciones de recurrencia, esto es, > aparece en la ecuación para > , la cual aparece en la
ecuación para >9 , etc.
Los diferentes métodos de Runge-Kutta surgen de las diferentes aproximaciones tomadas para calcular la
integral de f ( x, y ) en (7.3)
y n +1 = y n +
h
[ f ( x n+1 , y n+1 ) + f ( x n , y n )]
2
Este método es conocido con el nombre de Método de Euler Mejorado o Método de Heun. El problema
yn+1
lineal en Q entonces podemos despejar
con este método es que del lado derecho aparece que es lo que queremos encontrar. Si f ( x, y ) es
yn+1 .
Si aproximamos a f ( xn+1 , y n+1 ) mediante el método de Euler, entonces tenemos el Método de Runge-Kutta
de orden 2
y n*+1 = y n + f ( x n , y n )
1
[
y n +1 = y n + f ( x n +1 , y n*+1 ) + f ( x n , y n )
2
]
Este método suele aparecer en los libros bajo lo que se conoce como notación canónica, que es la siguiente
k1 = hf ( xn , yn );
k 2 = hf ( xn + h, y n + k1 )
y n +1 = y n + [k1 + k 2 ]
1
2 (7.4)
8+1 ℎ/2
c #[ , Q \@ ≅ e# 8 , Q8 + 4# f ℎ, Q
g ℎh + # 8+ℎ , Q
g8+ℎ i
8
3 8+2 8+2
donde Q
g8+ℎ y Q
g ℎ son estimaciones ya que los valores reales no se conocen. La estimación de Q
g ℎ
8+2 8+2
la
j
EY
hacemos por el método de Euler en el punto medio es decir en , que será:
k
l
Q
g ℎ = QE + #
8+ E , QE
2
Y para la aproximación de QmEY consideramos la combinación de la pendiente de recta tangente en el punto
medio y de la tangente en el punto inicial.
Q
g8+1 = QE + ℎ n2# o
EY ,
j ,Q
g 1p − #
8+ E , QE q
k 2
Tomando las aproximaciones mencionadas, el método de Runge Kutta de tercer orden queda definido
como:
y n +1 = y n +
1
[k1 + 4k 2 + k 3 ]
6 (7.5)
dónde:
k1 = hf ( x n , y n );
h k
k 2 = hf ( x n + , y n + 1 );
2 2
k 3 = hf ( xn + h, y n + 2k 2 − k1 )
y n +1 = y n +
1
[k1 + 2k 2 + 2k 3 + k 4 ]
6 (7.6)
Dependiendo del número de pasos intermedios empleados para calcular la derivada, es que surgen los
métodos de Runge-Kutta de tercer y cuarto orden. Este último, en notación canónica se escribe como:
k1 = h ⋅ f ( xn , yn )
h k
k 2 = h ⋅ f xn + , yn + 1
2 2
h k
k3 = h ⋅ f xn + , yn + 2
2 2
k 4 = h ⋅ f ( x n + h, y n + k 3 )
La deducción de este método no se expone aquí por ser muy extensa. Sin entrar en mucho detalle, el
método de Runge-Kutta cambia la dirección en el sentido de que no sigue la misma línea de los métodos de
Euler. De hecho está basado en una aplicación de los polinomios de Taylor. Cabe mensionar que el método
de Runge-Kutta, contiene como casos especiales el de Euler.
Ejemplo 7.5 – Usar el método de Runge-Kutta de orden 4 para aproximar y (0,5) dada la siguiente
ecuación diferencial: y ′ = 2 xy ; y (0) = 1
Solución
Primero, identificamos el mismo ejemplo 1 de los dos métodos anteriores. Segundo, procedemos con
los mismos datos: x0 = 0 ; y 0 = 1 ; h = 0,1
Para poder calcular el valor de y1 , debemos calcular primeros los valores de k1 , k 2 , k3 y k4
Tenemos entonces que:
k1 = hf ( x0 ; y0 ) = 0
k
k 2 = hf x 0 + ; y 0 + 1 = 0,1[2(0,05)(1)] = 0,01
h
2 2
k
k 3 = hf x 0 + ; y 0 + 2 = 0,1[2(0,05)(1,005)] = 0,01005
h
2 2
k 4 = hf ( x 0 + h; y 0 + k 3 ) = 0,1[2(0,1)(1,01005 )] = 0,020201
x2 = x1 + h = 0,2
k1 = hf ( x1 ; y1 ) = 0,1[2(0,1)(1,01005)] = 0,020201
k
k 2 = hf x1 + ; y1 + 1 = 0,1[2(0,15)(1,02010)] = 0,03060
h
2 2
k
k 3 = hf x1 + ; y1 + 2 = 0,1[2(0,15)(1,02535)] = 0,03076
h
2 2
k 4 = hf ( x1 + h; y1 + k 3 ) = 0,1[2(0,2 )(1,04081)] = 0,04163
∴ y 2 = y1 + [k1 + 2 k 2 + 2k 3 + k 4 ] = 1.04081
1
6
El proceso debe repetirse hasta obtener y5 . Resumimos los resultados en la siguiente tabla:
n xn yn
0 0 1
1 0,1 1,01005
2 0,2 1,04081
3 0,3 1,09417
4 0,4 1,17351
5 0,5 1,28403
Con lo cual vemos que efectivamente se ha reducido muchísimo el error relativo. De hecho
observamos que tenemos 6 cifras significativas en la aproximación.
Ejemplo 7.6 – Usar el método de Runge-Kutta para aproximar y (2,2) dada la ecuación
diferencial: y ′ = x + y ; y(2) = 4
Solución
Igual que siempre, tomamos h = 0,1 y llegaremos a la aproximación en dos pasos. Con esta
aclaración, tenemos los siguientes datos: x0 = 2 ; y0 = 4 ; h = 0,1
Primera Iteración: k1 = hf ( x 0 ; y 0 ) = 0,1[2 + 4] = 0,6
k
k 2 = hf x 0 + ; y 0 + 1 = 0,1[2,05 + 4,3] = 0,635
h
2 2
k
k 3 = hf x0 + ; y 0 + 2 = 0,1[2,05 + 4,3175] = 0,020201
h
2 2
k 4 = hf (x 0 + h; y 0 + k 3 ) = 0,1[2,1 + 4,63675 ] = 0,673675
∴ y1 = y 0 + [k1 + 2 k 2 + 2 k 3 + k 4 ] = 4,6362
1
6
Segunda Iteración: x1 = x0 + h = 2,1
k1 = hf ( x1 ; y1 ) = 0,1[2,1 + 4,6362] = 0,67362
k
k 2 = hf x1 + ; y1 + 1 = 0,1[2,15 + 4,97301] = 0,7123
h
2 2
k
k 3 = hf x1 + ; y1 + 2 = 0,1[2,15 + 4,99235] = 0,71424
h
2 2
k 4 = hf (x1 + h; y1 + k 3 ) = 0,1[2,2 + 5,35044 ] = 0,75504
∴ y 2 = y1 + [k1 + 2 k 2 + 2k 3 + k 4 ] = 5,34982
1
6
Hugo Franco Paats 88
Introducción al Cálculo Numérico
Concluimos entonces que el valor buscado es: y ( 2,2) ≈ 5,34982
Calcular y i +1 = y i +
1
[k1 + 2k 2 + 2k 3 + k 4 ]
6
Calcular xi +1 = xi + h
4) Imprimir los valores de xk +1 , y k +1
7.5 – EJERCICIOS
7.1- Resuelva la ecuación diferencial usando el método de Euler: y ' = x − y en [0,2] con y (0) = 1 ; y
2
comparando las soluciones que se obtienen con h = 1 y h = 0,5
7.2- Resuelva la ecuación diferencial y ' = x − y , con y (0) = 1 ; usando el método de Euler. Tome h = 0,2
2
y dé dos pasos calculando los valores. Repita los cálculos para h = 0.1 y dé cuatro pasos.
7.3- Utilizando el método de Euler, resuelva la ecuación diferencial y ' = − xy , con y (0) = 1 para encontrar
y (0,4) , siendo h = 0,2.
7.5- Utilizando el método de Heun, resuelve la siguiente ecuación diferencial y' = e −2 x − 2 y con
y (0) = 0,1 para calcular y (0,4) en dos pasos. Repita para el método de Euler y compare los
resultados y comente.
7.6- Mediante el método de Heun encuentre una aproximación de y (1,3) en la solución de la ecuación
diferencial y ' = 2 x − 3 y + 1 siendo que y (1) = 5 , utilizando cuatro decimales redondeados en los
cálculos y h = 0,1.
7.7- Resuelva utilizando el método de Runge- Kutta de segunda orden para resolver el problema del valor
inicial y ' = 0,5( x − y ) en [0; 2] con y (0) = 1 y h = 0,5.
7.9- Determinar el valor aproximado de y ( 0,1) en la ecuación diferencial y ' = x + y , y (0) = 1 mediante el
método de Runge-Kutta de 2ª. orden con h = 0,05
7.11- Un circuito serie tiene una inductancia L = 100mH , una resistencia R = 20Ω y una fuente de voltaje
de 10V . Si el interruptor se cierra en t = 0 . Determina el valor de la corriente, transcurrido 5mseg . ,
por el método de Runge-Kutta de 4ª orden en 2 y 5 pasos.
7.12- Utiliza el método de Runge-Kutta de orden 4 para aproximar la solución del problema del valor inicial:
Q´ = Q − r + 1, para 0 ≤ r ≤ 2, siendo Q 0 = 0,5, para ℎ = 0,5.
CAPITULO 8
EJERCICIOS RESUELTOS
Capítulo 1:
1.1- En un sistema de Aritmética de coma flotante de 3 dígitos para la mantisa, realiza la operación de
suma con los números = 3,45678 e Q = 0,1983, y evalúa el error absoluto, relativo y el error total
de la operación.
Solución
Valor exacto
F= + Q = 3,65508
Valores aproximados de x e y
̅ = 0,346 × 10 s = −3,22 × 10 9
Qm = 0,198 × 10 st = 3 × 10 B
Valor aproximado de la suma
F̅ = ̅ + Qm = 0,366 × 10
1.2- Calcula las siguientes operaciones con redondeo simétrico, de manera que el resultado tenga tres
decimales exactos, analizando previamente cuantos decimales deben tomarse para cada factor.
Verifique que cumple dicha condición.
a) 1,3134 * π b) e * π
m = 4,126
a) 5 = 1,3134 valor exacto z = 5 × { = 4,126167791 valor aproximado z
Solución:
m = 1,68 × 10 B
Error absoluto s| = z − z
= = 4,07 × 10 =
}~• €
| |m • ‚
F = w × { = 8,539734223
Valor aproximado con tres decimales exactos F̅ = 8,5397
b)
s = F − F̅ = 3,422 × 10 €
= 4,01 × 10 A
= ‚ = ƒ = 2,005 × 10 < 5 × 10 → r = 5
} € .
w̅ = 2,7183 {m = 3,1416
Como ambos tiene un entero, tendremos que tomar 4 decimales
Observamos que existe un cambio de signo entre 2 y 2,5 por lo tanto, el intervalo [2; 2,5] contiene a la
raíz.
’“”
Valor aproximado ̅ = 2,4648 ; error = 0,007813 es decir dos decimales exactos, en 6 iteraciones.
Graficando
2.2- Dada la función # = − 2 + w que tiene raíces en los intervalos [0; 0,5] y [1,5; 2]. Encontrar
todas las funciones de iteración posibles y comprobar su convergencia.
Solución:
Definimos las funciones de iteración y aplicamos las condiciones establecidas para la convergencia.
–´ 0 = ( * –´ 1,5 = 0,667
Función de iteración derivada 1ª raíz 2ª raíz
–´ 0 = ∞ –´ 1,5 = 0,248
No converge Converge
− –´ 2 = 0,1015
k
No converge Converge
–´ 0,5 = 0,197 –´ 2 =
Converge No converge
–´ 0,5 = 0,135 –´ 2 =
k
Converge No converge
No converge No converge
A continuación aplicamos el proceso iterativo para las funciones de iteración encontradas y verificar si el
proceso es convergente o no, para cada intervalo.
1) – = √2 − w
Divergente Converge
2) – =
•˜
Converge Diverge
•˜
4) –B =
Converge Diverge
5) –€ = −ln 2 −
Diverge Diverge
Por lo tanto, los cálculos iterativos verifican las pruebas de convergencia realizadas anteriormente.
2.3- Dada la función # = 6'w8[√ \ − . Encuentra la raíz aproximada de la función utilizando todos los
métodos vistos y compara el desempeño de los mismos.
Solución:
Aplicamos Bolzano
Gráficamente:
Aquí con diez iteraciones tenemos valor aproximado de ̅ = 4,846191; error 0,00097656
Falsa Posición
Newton-Raphson
Secante
Conclusiones: La convergencia de los métodos de la bisección y del MIL son lentas, mientras que la
más rápida para este caso es del método de Newton-Raphson para dos iteraciones y muy buena
precisión.
2.4- Plantea un proceso iterativo que utiliza el método de Newton-Raphson para encontrar el punto donde
se interceptan las funciones Q = w − 1 e Q = 5√ . Resuelve de manera que el resultado tenga
tres decimales exactos
Solución:
En el punto de intersección Q = Q por lo tanto # = Q − Q = 0.
# = w − 5√ − 1
€
#´ =w −
√
˜ž €Ÿ ž
;Y = ; − ˜ž €/ Ÿ ž
Vemos que existe un cambio de signo, y por lo tanto existe una raíz en [2; 2,5]
9
En la primera iteración el valor aproximado es 2,112 y el error 0,00035<10 por lo que el resultado
tiene 3 decimales exactos.
Capítulo 3:
3.1- Resuelve el siguiente sistema de ecuaciones por eliminación de Gauss con pivotamiento parcial.
Solución:
Realizamos el pivotamiento para la primera columna e intercambiamos la primera con la última fila
5 x +5 y +4t = 18 V( vr 5 =5
yxr(Vx(M5@vuw'
3x − 2 y +z − 2t =9
=€ 9 =€ = 2/5
4x − 3y − 4z + 3t = 13 9 B
B
2 x − 4 y − 3z + 5t = 14
yxr(Vx(M5@vuw'
0 − 7 − 4 − 1/ 5 − 7 / 5
9 =¡ B =¡
0 − 5 1 − 22 / 5 − 9 / 5 € A
− 7 / 5 V( vr 5 = 27/7
5 5 0 4 18
1
0 −7 −4 −1/ 5
=
0 0 27 / 7 − 149 / 35 − 4 / 5 B9
9
0 0 − 3/ 7 25 / 7 8
Aquí tampoco es necesario el pivotamiento
5 5 0 4 18
0 −7 −4 −1/ 5 − 7/5
0 0 27 / 7 − 149 / 35 − 4/5
0 0 0 182 / 45 364 / 45
t = 2; z = 2; y = −1 y x = 3
Resolviendo de atrás para adelante, obtenemos los resultados:
10 −2Q +¦ = −17
¥− +10Q −¦ = 24 ¥
2 −3Q +10¦ = −38
Solución:
;Y
= 1/10 −17 + 2Q ; −¦ ;
Proceso iterativo de Gauss-Jacobi
Q ;Y
= 1/10 24 + ; +¦ ;
¦ ;Y
= 1/10 −38−2 ; +3Q ;
Solución aproximada [-0,9985; 1,9988; -2,9978], vemos que la solución tiende a [-1; 2; -3]
Capítulo 4:
4.1- Considere la siguiente tabla de datos para el agua, donde T está en grados centígrados y la densidad
ρ en kg / m 3 .
T(°C) 50 60 65 75 80
ρ 988 987,5 980,5 974,8 971,6
a) Calcula la temperatura para la cual la densidad del agua es 973 kg / m 3 utilizando interpolación de
Newton de 3er grado.
Hugo Franco Paats 98
Introducción al Cálculo Numérico
b) Mediante la interpolación de Lagrange de 3er grado determina la densidad del agua a 70ºC.
Solución:
a) Completamos la tabla de diferencias divididas de Newton invirtiendo la tabla
Definimos el polinomio de 3er grado de Newton, tomando los cuatro últimos puntos:
V9 = 60 − 0,7143 − 987,5 + 0,0819 − 0,987,5 − 980,5 + 0,00651 −
0,987,5 − 980,5 − 974,8
Para = 973 → V3 973 = 77,89 viendo en la tabla es un valor entre 75 y 80 como esperado.
A€ ¡€ §
: = A A€ A ¡€ A §
→ : 70 = −1/6
A ¡€ §
: = A€ A A€ ¡€ A€ §
→ : 70 = 2/3
→ : 70 = 2/3
A A€ §
: =
¡€ A ¡€ A€ ¡€ §
:9 = → :9 70 = −1/6
A A€ ¡€
§ A § A€ § ¡€
#
1 2 3
-1 2,5 1
Solución:
F = 5 + 7 + M ∈ /1; 22
Definimos lo polinomios de segundo grado:
F = @ + w + # ∈ /2; 32
Grado de libertad
F " 1 = 0 = 4M = 0
1 1 1 0 0 0 = −1
1 2 4 0 0 0 = 2,5
0 0 0 1 2 4 = 2 .5
0 0 0 1 3 9 =1
0 1 4 0 −1 −4 =0
0 0 1 0 0 0 =0
F = −4,4 + 3,5
Definimos los polinomios spline:
F = −24,5 + 23,5 − 5
F =5 +7 +M +@ 9
∈ /1; 22
c) Para la Spline cúbica, definimos los siguientes polinomios:
F =5 +7 +M +@ 9
∈ /1; 22
F ´ 2 = 7 + 4M + 12@ = 7 + 4M + 12@ = F´ 2
F´´ 2 = 2M + 12@ = 2M + 12@ = F´´ 2
F´´ 1 = 2M + 6@ = 0
F´´ 3 = 2M + 18@ = 0
a1 b1 c1 d1 a2 b2 c2 d2 y
1 1 1 1 0 0 0 0 −1
1 2 4 8 0 0 0 0 2,5
0 0 0 0 1 2 4 8 2,5
0 0 0 0 1 3 9 27 1
0 1 4 12 0 −1 −4 − 12 0
0 0 2 12 0 0 −2 − 12 0
0 0 2 6 0 0 0 0 0
0 0 0 0 0 0 2 18 0
5.1- Aplicar los mínimos cuadrados para aproximar la función f , definida en la siguiente tabla:
1 1,5 2 2,5 3
Q 7,39 4,24 3,49 3,18 3,04
a) Por un polinomio de 2º grado
b) Por una ecuación del tipo * = ¨w ©
c) Calcula el error cuadrático medio y determina la mejor aproximación
Solución:
a) Para un polinomio de aproximación 2º grado – = ª + ª + ª9 para aplicar los mínimos
cuadrados de la forma general (5.3) tenemos el sistema de ecuaciones:
8ª + «¬ - ª + «¬ - ª9 = ¬ #
«¬ - ª + «¬ -ª + «¬ 9
- ª9 = ¬ #
«¬ -ª + «¬ 9
-ª «¬ B
- ª9 = ¬ #
Sistemas de ecuaciones
5ª +10ª +22,5ª9 = 21,34
10ª +22,5ª +55ª9 = 37,8
22,5ª +55ª 142,125ª9 = 78,125
b) Aplicamos la linealización
z = ln(g ) = ln( Ae − Bx ) = ln( A) − Bx ;
tenemos que z = ln( g ( x )) ; α 1 = ln( A) y α 2 = − B ,
∑.
8ª + «¬ - ª = ¬¦
«¬ - ª «¬ -ª =¬ ¦
√€× ,€9§
× 100% = = 7,69%
nE
Em =
,9B
∑
n
f ( xi )
i =1
√€× ,AA
× 100% = = 17,1%
nE
Em =
,9B
∑
n
f ( xi )
i =1
Capítulo 6:
7 = /1; 1,52
valor de 7
las funciones en el primer cuadrante.
7 = 1,3863
.9§A9 ,9§A9
Para evaluar la integral por /9 =Z 2 w − 0.5 @ ; con ℎ = = 0,13863
En la siguiente tabla se muestran los puntos ; y el valor de la función # ;
k 0 1 2 3 4 5 6 7 8 9 10
x 0 0,1386 0,2773 0,4159 0,5545 0,6932 0,8318 0,9704 1,109 1,2477 1,3863
f(x) 0 0,1721 0,2816 0,3408 0,3597 0,3466 0,3082 0,2502 0,1772 0,0928 -4E-06
Solución:
Capítulo 7:
7.1- Dada la EDO Q´ = 1 − , siendo que Q 1 = 1, aproxima el valor de Q 2 para X = 0,5 y X = 0,25.
t
Error = 15,1%
• Método de Euler ℎ = 0,25
Error = 7,5%
Error = 1,2%
Error = 0,38%
,¡9€¡€§• ,¡BB¡• ¡
Error= × 100 = 1,2%
.¡9€¡§•
,¡9€¡€§• ,¡9§€BB9
Error= × 100 = 0,38%
.¡9€¡§•
,¡9€¡€§• ,¡9¡ B
Error= × 100 = 0,18%
.¡9€¡§•
,¡9€¡€§• ,¡9€• •
Error= × 100 = 0,02%
.¡9€¡§•
,¡9€¡€§• ,¡9€§
Error= × 100 = 0,008%
.¡9€¡§•
,¡9€¡€§• ,¡9€¡A9•
Error= × 100 = 0,0007%
.¡9€¡§•
Comparando los errores podemos apreciar la exactitud del método de Runge-Kutta de 4ª orden.