Está en la página 1de 134

M ÉTODOS N UMÉRICOS

N OTAS DE C LSES

Carlos Reales

Author Affiliation,
Universidad de Córdoba

8 de marzo de 2023
PART I: D EMO P RESENTATION PART

1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Computación Cientifica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

3 Representación de números reales en un sistema de punto flotante . . . . . . . . . . . . . . 19


3.1 Almacenamiento de números reales en computador . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2 Overflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3 Underflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4 Repaso de Calculo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

1 / 133
PART II: D EMO P RESENTATION PART 2

1 Introducción al M ATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

2 Ecuaciones y Sistemas de Ecuaciones no Lineales . . . . . . . . . . . . . . . . . . . . . . . . 64

3 Método de Bisección . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

4 Método de la Falsa Posición . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

5 Método de Newton–Raphson. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

6 Método de la Secante. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

7 Método del punto fijo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103


7.1 Implementación en Matlab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

8 Taller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

9 Método de Newton para sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

2 / 133
Parte I

P RIMERA PARTE

3 / 133
I NTRODUCCIÓN

Ÿ Los métodos para resolver problemas numéricos se dividen en dos tipos: los directos y los
iteretivos.
Ÿ Los métodos directos son algoritmos que, en ausencia de error de redondeo, dan la respuesta
exacta en un número finito predeterminado de pasos.
Ÿ Por ejemplo, la solución de ax  b se puede calcular directamente como x  b{a. La precisión de
la respuesta es tan grande como la precisión con la que la máquina expresa a y b, y el algoritmo
consiste en una división.
Ÿ En general, los métodos directos toman una cantidad de tiempo fija y producen respuestas de
precisión fija.
Ÿ Desafortunadamente, muchos problemas no tienen métodos directos de solución. Por ejemplo,
un teorema fundamental en álgebra dice que no existe un método directo para calcular las
raíces de un polinomio de grado 5 o superior.
Ÿ En algunos casos, a pesar de que existen métodos directos no se pueden aplicar a algunos casos
³b
ex dx .
2
particulares, por ejemplo, no es posible encontrar el valor de a
Ÿ Incluso cuando existen, los métodos directos pueden requerir demasiado espacio o tiempo para
ser prácticos.

4 / 133
I NTRODUCCIÓN

Ÿ Cuando los métodos directos están ausentes o consumen demasiado tiempo, recurrimos a
métodos iterativos. Estos métodos tienen la forma

xn 1  gpxn, xn1, . . . q.
Ÿ Sea x la solución deseada al problema subyacente. Las preguntas básicas para un método
iterativo son si la secuencia xk converge a x y, si es convergente, con que rapidez lo hace.
Ÿ La convergencia puede depender de la aproximación inicial, x0 . No importa qué tan rápido
converja un algoritmo o qué tan precisos sean los cálculos, casi nunca alcanzaremos x .
Debemos terminar la iteración en algún punto finito.
Ÿ A diferencia de los métodos directos, los esquemas iterativos son flexibles porque podemos
controlar la calidad del resultado.
Ÿ Es posible que necesitemos solo una aproximación aproximada obtenida en unas pocas
iteraciones y poco tiempo, o podemos querer la mayor precisión obtenida utilizando más
iteraciones.
Ÿ Los procedimientos iterativos generalmente pedirán al usuario la precisión deseada

5 / 133
C OMPUTACIÓN C IENTIFICA

Ÿ La computación científica (calculo cientifico) es la disciplina que estudia el desarrollo y estudio


de algoritmos numéricos para la resolución de problemas matemáticos que se presentan en
diversas disciplinas de la ciencia y la ingeniería.
Ÿ Por lo general, el punto de partida es un modelo matemático dado que ha sido formulado en un
intento de explicar y entender un fenómeno observado en biología, química, física, economía, o
cualquier otra disciplina científica o de ingeniería.
Ÿ Nos concentraremos en los modelos matemáticos continuos que son difíciles o imposible de
resolver analíticamente.
Ÿ Las principales aplicaciones estan dentro de la informática y los campos de la ingeniería
relacionados que incluyen gráficos, análisis de movimiento, imagen y procesamiento de
señales, motores de búsqueda y minería de datos, aprendizaje automático.

6 / 133
C OMPUTACIÓN C IENTIFICA

Ÿ Para resolver de manera aproximada un modelo en un computador, el problema continuo es


aproximado por un modelo discreto.
Ÿ Se usan algoritmos que permitan resolver aproximadamente el problema matemático de
manera eficiente, precisa y fiable. Esto es lo mas importante de la computación científica.
Ÿ El Analisis numerico puede ser visto como la teoria detras de estos algoritmos.
Ÿ La principal caracteristica del cálculo numérico es la presencia inevitable de errores.
Ÿ El resultado de cualquier cálculo interesante (y de muchos otros sin interés) es generalmente
una aproximación del valor real y nuestro objetivo es asegurar que el error resultante sea
aceptablemente pequeño.

7 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Ÿ Los errores numéricos surgen del uso de aproximaciones para representar operaciones y
cantidades matemáticas exactas. Éstas incluyen los errores de truncamiento que resultan del
empleo de aproximaciones como un procedimiento matemático exacto, y los errores de
redondeo que se producen cuando se usan números que tienen un límite de cifras significativas
para representar números exactos.
Ÿ Para ambos tipos de errores, la relación entre el resultado exacto, o verdadero, y el aproximado
está dada por

Valor verdadero  Valor aproximado error (1)


Reordenando la ecuación (1) se encuentra que el error numérico es igual a la diferencia entre el
valor verdadero y el valor aproximado, es decir

εv  valor verdadero  valor aproximado (2)


donde εv se usa para denotar el valor exacto del error. El subíndice v indica que se trata del
error verdadero. Como ya se mencionó breve mente, esto contrasta con los otros casos, donde
se debe emplear una estimación aproximada del error.

8 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Una desventaja en esta definición es que no toma en consideración el orden de la magnitud del
valor que se estima. Por ejemplo, un error de un centímetro es mucho más significativo si se está
midiendo un remache en lugar de un puente. Una manera de tomar en cuenta las magnitudes de las
cantidades que se evalúan consiste en normalizar el error respecto al valor verdadero, es decir

Error relativo fraccional verdadero 


error verdadero
error verdadero
donde, como ya se mencionó en la ecuación (2)

error  valor verdadero  valor esperado

El error relativo también se puede multiplicar por 100 % para expresarlo como

εt  valor
error verdadero
verdadero
100 % (3)

donde εt denota el error relativo porcentual verdadero.

9 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Ejemplo 2.1
Planteamiento del problema. Suponga que se tiene que medir la longitud de un puente y la de un
remache, y se obtiene 9999 y 9 cm, respectivamente. Si los valores verdaderos son 10000 y 10 cm,
calcule a) el error verdadero y b) el error relativo porcentual verdadero en cada caso.

Solución
El error en la medición del puente es [ecuación (2)] εt  10000  9999  1cm y en la del remache es
de εt  10  9  1cm. El error relativo porcentual para el puente es [ecuación (3)]

εt  1000
1
100 %  0,01 %

y para el remache es de
εt  101 100 %  10 %
Por lo tanto, aunque ambas medidas tienen un error de 1 cm, el error relativo porcentual del
remache es mucho mayor. Se concluye entonces que se ha hecho un buen trabajo en la medición del
puente; mientras que la estimación para el remache dejó mucho que desear.
10 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Ÿ Observe que en las ecuaciones (2) y (3), E y e tienen un subíndice t que significa que el error ha
sido normalizado al valor verdadero. En el ejemplo 3.1 teníamos el valor verdadero.
Ÿ Sin embargo, en las situaciones reales a veces es difícil contar con tal información. En los
métodos numéricos, el valor verdadero sólo se conocerá cuando se tengan funciones que se
resuelvan analíticamente. Éste comúnmente será el caso cuando se estudie el comportamiento
teórico de una técnica espec.ífica para sistemas simples.Sin embargo, en muchas aplicaciones
reales, no se conoce a priori la respuesta verdadera.
Ÿ Entonces en dichos casos, una alternativa es normalizar el error, usando la mejor estimación
posible al valor verdadero; es decir, para la aproximación misma, como en

εa  valor
error aproximado
aproximado
100 % (4)

donde el subíndice a significa que el error está normalizado a un valor aproximado. Observe
también que en aplicaciones reales la ecuación (2) no se puede usar para calcular el término del
error de la ecuación (4).

11 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Ÿ Uno de los retos que enfrentan los métodos numéricos es el de determinar estimaciones del
error en ausencia del conocimiento de los valores verdaderos. Por ejemplo, ciertos métodos
numéricos usan un método iterativo para calcular los resultados.
Ÿ En tales métodos se hace una aproximación considerando la aproximación anterior. Este
proceso se efectúa varias veces, o de forma iterativa, para calcular en forma sucesiva, esperando
cada vez mejores aproximaciones. En tales casos, el error a menudo se calcula como la
diferencia entre la aproximación previa y la actual.
Ÿ Por lo tanto, el error relativo porcentual está dado por

actual  aproximación anterior


εa  aproximaciónaproximación actual
100 % (5)

12 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Ÿ En capítulos posteriores se explicarán con detalle éste y otros métodos para expresar errores.
Los signos de las ecuaciones (2) a (5) pueden ser positivos o negativos. Si la aproximación es
mayor que el valor verdadero (o la aproximación previa es mayor que la aproximación actual),
el error es negativo; si la aproximación es menor que el valor verdadero, el error es positivo.
También en las ecuaciones (3) a (5), el denominador puede ser menor a cero, lo cual también
llevaría a un error negativo.
Ÿ A menudo, cuando se realizan cálculos, no importa mucho el signo del error, sino más bien que
su valor absoluto porcentual sea menor que una tolerancia porcentual prefijada es. Por lo tanto,
es útil emplear el valor absoluto de las ecuaciones (2) a (5). En tales casos, los cálculos se repiten
hasta que
|εa|   εs (6)
Si se cumple la relación anterior, entonces se considera que el resultado obtenido está dentro
del nivel aceptable fijado previamente es. Observe que en el resto del texto en general
emplearemos exclusivamente valores absolutos cuando utilicemos errores relativos.
Es conveniente también relacionar estos errores con el número de cifras significativas en la
aproximación. Es posible demostrar (Scarborough, 1966) que si el siguiente criterio se cumple,
se tendrá la seguridad que el resultado es correcto en al menos n cifras significativas.
εs  p0,5  102nq % (7)
13 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Ejemplo 2.2
Estimación del error con métodos iterativos Planteamiento del problema. En matemáticas con
frecuencia las funciones se representan mediante series infinitas. Por ejemplo, la función
exponencial se calcula usando

x2 x3 xn
ex 1 x
2! 3!
 n!
(8)

Así cuanto más términos se le agreguen a la serie, la aproximación será cada vez más una mejor
estimación del valor verdadero de ex . La ecuación (8) se conoce como expansión en series de
Maclaurin. Empezando con el primer término ex  1 y agregando término por término, estime el
valor de e0,5 . Después de agregar cada término, calcule los errores relativo porcentual verdadero y
normalizado a un valor aproximado usando las ecuaciones (3) y (5), respectivamente. Observe que
el valor verdadero es e0,5  1, 648721. Agregue términos hasta que el valor absoluto del error
aproximado Ea sea menor que un criterio de error preestablecido es con tres cifras significativas.

14 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Solución
En primer lugar la ecuación (7) se emplea para determinar el criterio de error que asegura que un
resultado sea correcto en al menos tres cifras significativas:

εs  p0,5  1023q %  0,05 % (9)

Por lo tanto, se agregarán términos a la serie hasta que Ea sea menor que este valor. La primera
estimación es igual a la ecuación (8) con un solo término. Entonces, la primera estimación es igual a
1. La segunda estimación se obtiene agregando el segundo término, así: ex  1 x, y para x  0,05,
ε0,5  1 0,5  1,5. Esto representa el error relativo porcentual verdadero de [ecuación (3)]

εt  1,648721  1,5 100 %  9,02 %


1,648721
La ecuación (5) se utiliza para determinar una estimación aproximada del error, dada por:

εa  1,51,5 1 100 %  33,3 %


Como εa no es menor que el valor requerido es, se deben continuar los cálculos agregando otro
x2
término, , repitiendo el cálculo del error. El proceso continúa hasta que εa   εs . 15 / 133
2!
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Solución
Todos los cálculos se resumen de la siguiente manera

Términos Resultados εt p % q εa p % q
1 1 39.3
2 1.5 9.02 33.3
3 1.625 1.44 7.69
4 1.645833333 0.175 1.27
5 1.648437500 0.0172 0.158
6 1.648697917 0.00142 0.0158

Así, después de usar seis términos, el error aproximado es menor que εs = 0,05 %, y el cálculo
termina. Sin embargo, observe que, el resultado es exacto con cinco cifras significativas en vez de
tres cifras significativas. Esto se debe a que, en este caso, las ecuaciones (5) y (7) son conservadoras.
Es decir, aseguran que el resultado es, por lo menos, tan bueno como lo especifican.

16 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Ejemplo 2.3
En general, existen dos tipos básicos de errores. Dado un escalar u y su aproximación v:
Ÿ El error absoluto en v es
|u  v|.
Ÿ El error relativo en v es
|u  v| 100 %.
|u|
u v Error Absoluto Error Relativo
1 0.99 0.01 1%
1 1.01 0.01 1%
-1.5 -1.2 0.3 20 %
100 99.99 0.01 0.01 %
100 99 1 1%

17 / 133
C OMPUTACIÓN C IENTIFICA
E RRORES R ELATIVOS Y A BSOLUTOS

Ejemplo 2.4
La aproximación de Stirling
?  n
v  Sn  2πn ne .
es usada para aproximar u  n! n  1, 2,    , n con n grande

n n! Sn Error Absoluto Error Relativo


1 1 0.92214 0.077863 7.7863 %
2 2 1.919 0.080996 4.0498 %
3 6 5.8362 0.16379 2.7298 %
4 24 23.506 0.49382 2.0576 %
5 120 118.02 1.9808 1.6507 %
6 720 710.08 9.9218 1.378 %
7 5040 4980.4 59.604 1.1826 %
8 40320 39902 417.6 1.0357 %
9 3.6288e+05 3.5954e+05 3343.1 0.92128 %
10 3.6288e+06 3.5987e+06 30104 0.8296 %

18 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE

Ÿ La memoria de computadora tiene una capacidad finita. Este hecho obvio tiene implicaciones
de largo alcance en la la representación de los números reales, que en general no tienen una
representación uniforme finita.
Ÿ No importa si usamos fracciones binarias o decimales: en algún momento tenemos que truncar.
Pero, cuánta precisión se necesita? Y dónde se necesita? Cuántos dígitos enteros y cuántos
fraccionarios?
Ÿ Para un ingeniero construyendo una autopista, no importa si tiene 10 metros o 10.0001 metros
de ancho posiblemente ni siquiera sus mediciones eran así de precisas.
Ÿ Para alguien diseñando un microchip, 0.0001 metros (la décima parte de un milímetro) es una
diferencia enorme pero nunca tendrá que manejar distancias mayores de 0.1 metros. Un físico
necesita usar la velocidad de la luz (más o menos 300000000) y la constante de gravitación
universal (más o menos 0.0000000000667) juntas en el mismo cálculo. Para satisfacer al
ingeniero y al diseñador de circuitos integrados, el formato tiene que ser preciso para números
de órdenes de magnitud muy diferentes. Sin embargo, solo se necesita precisión relativa.

19 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE

Ÿ Para satisfacer al físico, debe ser posible hacer cálculos que involucren números de órdenes
muy dispares.
Ÿ Básicamente, tener un número fijo de dígitos enteros y fraccionarios no es útil y la solución es
un formato con un punto flotante. Cómo funcionan los números de punto flotante? La idea es
descomponer el número en dos partes:
Ÿ Una mantisa (también llamada coeficiente o significando) que contiene los dígitos del número.
Mantisas negativas representan números negativos. Un exponente que indica dónde se coloca
el punto decimal (o binario) en relación al inicio de la mantisa. Exponentes negativos
representan números menores que uno. Este formato cumple todos los requisitos:
Ÿ Puede representar números de órdenes de magnitud enormemente dispares (limitado por la
longitud del exponente). Proporciona la misma precisión relativa para todos los órdenes
(limitado por la longitud de la mantisa). Permite cálculos entre magnitudes: multiplicar un
número muy grande y uno muy pequeño conserva la precisión de ambos en el resultado.

20 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE

En el computador se almacenan el signo, la mantisa y el exponente (con su signo) del número real.

± exponente mantisa
La cantidad de dígitos k que se utilizan para almacenar la mantisa es fija. Por lo tanto sólo pueden
almacenarse a lo sumo k dígitos de mantisa de un número real. La cantidad de dígitos l que se
utilizan para almacenar el exponente también es fija. Por lo tanto hay un exponente positivo
máximo y otro exponente negativo mínimo que pueden llegar a representarse.

21 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
A LMACENAMIENTO DE NÚMEROS REALES EN COMPUTADOR

Lo describiremos, por sencillez, en el sistema decimal, aunque los computadores representan los
números en sistema binario:

783,375 ÝÑ ,783375  103


0,00843215 ÝÑ ,843215  102
1,23456 ÝÑ ,123456  101
0,999999 ÝÑ ,999999  100

22 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
O VERFLOW

Si se intenta almacenar un número cuyo exponente positivo es mayor que el máximo representable
en el sistema, se produce un error fatal: overflow. Por lo tanto existe un máximo número positivo
que puede representarse. En Matlab el máximo número representable es aproximadamente 10308 .
Si se intenta representar un número mayor, el computador devuelve Inf (infinito) como una
indicación de que se produjo un overflow:

>> a=2^1023
a =
8.988465674311580e+307
>> b=2^1024
b =
Inf

23 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
U NDERFLOW

Si se intenta almacenar un número cuyo exponente negativo es menor que el mínimo representable
se produce un error leve: underflow. Por lo tanto existe un mínimo número positivo que puede
representarse. Si se representa un número positivo menor que ese mínimo, el computador almacena
0. En Matlab el mínimo número positivo representable es aproximadamente 10323 :

>> c=2^-1074
c =
4.940656458412465e-324
>> d=2^-1075
d =
0

24 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
E RROR DE REDONDEO

Si se intenta almacenar un número con más dígitos de mantisa que la cantidad máxima k que
permite el sistema, sólo se almacenan los primeros k dígitos. Por ello, al representar un número real
en un sistema de punto flotante, en general se comete un pequeño error de redondeo. En Matlab se
almacenan entre 15 y 16 dígitos decimales de mantisa:

>> e=123456789.0123456789
e =
1.234567890123457e+08

>> f=pi

f =
3.14159265358979

25 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
O PERACIONES EN PUNTO FLOTANTE

El computador calcula cada una de las cuatro operaciones matemáticas fundamentales, suma ( ),
resta ( ), producto ( ) y cociente ( {), de manera tal que el resultado que se obtiene tiene correctos
el máximo número k de dígitos representables. Por ello, en cada operación matemática también se
comete un pequeño error de redondeo:

>> g=1.0000000001*1.0000000001
g =
1.00000000020000

>> h=1+10^-17
h =
1

26 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
C ONSTANTE DE PRECISIÓN

Como se ve en el ejemplo anterior, si se calcula en punto flotante 1 ε, con ε suficientemente


pequeño, debido al error de redondeo el resultado que se obtiene es 1. La constante de precisión (o
unidad de redondeo) del computador se define como el mínimo número ε ¡ 0 tal que, en punto
flotante,
1 ε  1.
Se demuestra que el error relativo que comete el computador al representar un número real o al
hacer una operación elemental en punto flotante es menor o igual que la contante de precisión. En
Matlab la constante de precisión se llama eps y es aproximadamente 1016 :
>> eps
ans =
2.220446049250313e-16

>> p=(1+eps)-1
p =
2.220446049250313e-16

>> q=(1+eps/2)-1
q = 27 / 133

0
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
C ANCELACIÓN EXCESIVA

Las operaciones de producto y cociente en punto flotante dan siempre resultados confiables, en el
sentido que todos los dígitos del resultado que se obtienen son correctos (siempre que no se
produzca overflow o underflow). Las operaciones de suma y resta usualmente dan resultados con
todos sus dígitos correctos. Sin embargo, esto no es así cuando se restan números muy parecidos.
Este fenómeno se denomina cancelación excesiva.

>> r=.123456789012345;
>> s=.12345678901234;
>> t=r-s % El valor exacto es t=5.e-15
t =
4.996003610813204e-15

>> u=12345678901234567;
>> v=12345678901234566;
>> w=u-v % El valor exacto es w=1
w =
2

28 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
P ROPAGACIÓN DE ERRORES

Las integrales
»1
In : xn ex1 dx , n  1, 2, . . .
0
se relacionan mediante la expresión
In  1  nIn1, n  2, 3, . . .
que se obtiene fácilmente por integración por partes. Esta expresión permite calcular esas integrales
recursivamente a partir del valor de I1 , que se calcula exactamente también por partes:
»1 1 »1

I1  xe  dx
x 1
 xe x 1
  ex1 dx  e1  0,36787944...
0 0 0

 0,367879 (correctamente redondeado a 6 dígitos) se obtiene:


Si se parte del valor aproximado Î1

Î2  0,264242,    Î9  0,06848   0 !!!


Dado que la expresión In  1  nIn1 es exacta para números reales, el error en Î9 se debe
necesariamente a la propagación del error en Î1 . Para estudiar esta propagación sea:
ϵ  I1  Î1  e1  0,367879  0,44  106.
29 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
P ROPAGACIÓN DE ERRORES

Entonces:

Î1  I1  ϵ,
Î2  1  2Î1  1  2pI1  ϵq  I2 p2qpϵq,
Î3  1  3Î2  1  3rI2 p2qpϵqs  I3 p3qp2qpϵq,
..
.
Î9  1  9Î8  I9 p9q    p3qp2qpϵq  I9  9!ϵ.
Por lo tanto,

I9  Î9  9!ϵ  362 880  0,44  106  0,16 e Î9  0,06848 !


Un algoritmo como el anterior, donde el error crece en cada paso, se dice que es inestable.

30 / 133
R EPRESENTACIÓN DE NÚMEROS REALES EN UN SISTEMA DE PUNTO
FLOTANTE
P ROPAGACIÓN DE ERRORES

Este tipo de algoritmos debe evitarse pues propaga de manera catastrófica los errores en los datos,
como se ve en el ejemplo. La relación anterior puede reformularse para obtener el siguiente
algoritmo:

 IN : dato,
1  In


 In1 : , n  N, N  1, . . . , 3, 2.
n
Un análisis semejante al anterior permite demostrar que, en el paso n-ésimo de este algoritmo, el
error del paso anterior se divide por n. En consecuencia este algoritmo no sólo no amplifica los
errores, sino que los reduce. Un algoritmo como éste, que no amplifica los errores, se dice que es
estable. Por ejemplo, si se toma N  20 e Î20  0, verifique que mediante este algoritmo se obtiene
Î9  0,091 612 292 990, con error menor que 1012 .

31 / 133
R EPASO DE C ALCULO

Teorema 4.1 (Teorema del valor Intermedio)


Si f P Cra, bs y k es cualquier número entre m  mı́na¤x¤b f pxq y M  máxa¤x¤b f pxq, entonces existe un
número c P ra, bs para e cuales f pcq  k.

Teorema 4.2 (Teorema del valor medio para integrales)


Sea f continua y w Riemann integrable en ra, bs y suponga que wpxq ¥ 0 para x P ra, bs. Entonces, existe un
punto ξ in ra, bs tal que
»b »b
wpxqf pxqdx  f pξ q wpxqdx
a a

Demostración 4.1
Sea A  mı́na¤x¤b f pxq y sea B  máxa¤x¤b f pxq. Entonces Awpxq ¤ f pxqwpxq ¤ Bwpxq. Así,
»b »b »b
A wpxqdx ¤ wpxqf pxqdx ¤ B wpxqdx.
a a a

Entonces, ³b
wpxqf pxqdx
A¤ a
³b ¤ B.
a wpxqdx
32 / 133
R EPASO DE C ALCULO

Teorema 4.3 (Teorem de Taylor)


Suponga que f P Cn 1ra, bs. Entonces, para cualquier x P ra, bs, f pxq  Pnpxq Rn pxq, donde
pnq
   f px0qpn!x  x0q 
n ņ
f 1 px0 qpx  x0 q
1 pk q
Pn pxq  f px0 q f px0 qpx  x0 qk ,
k!

k 0

y »x
R n px q  ptqpx  x0qn dt
1
fn 1
n! x0

Adicionalmente, existe un ξ  ξpxq entre x0 y x con


Rn pxq 
fn 1 pξpxqqpx  x0qn
pn 1q!

33 / 133
R EPASO DE C ALCULO

Demostración 4.2
Recordemos la fórmula de integración por partes ∫ uvdv  uv  ∫ vdu. Entonces,
»x
f pxq  f px0 q  f 1 ptq sea u  f 1 ptq, v  t  x, dv  dtq
x0
»x
f 1 p x  x 0 q px  tqf 2ptqdt
x0
(let u  f 2 ptq, v  t  x, dv  dtq
»
1 p x  x0 q2 2 x x px  tq2 3
f px0qpx  x0q  2 f ptq x f ptqdt
2 0
x0
Continuando este proceso,

f pxq f px0 q f 1 px0 qpx  x0 q


px  x0q2 f 2px q
0
» x2
   px n!x0q px  tqn f pn 1qptqdt
n
f pnq px0 q
x0 n!
Pnpxq Rnpxq

34 / 133
R EPASO DE C ALCULO

Demostración 4.3
Ahora consideraremos Rn pxq 
³x px  tqn f pn 1qptqdt y asumamos que x   x (el mismo argumento
x0 0
n!
si x0 ¡ x). Entonces, por teorema Theorem 1.2,
»x
Rn pxq  f pn 1q pξ pxqq
px  tqn dt  f pn 1qpξpxqq px  x0qn 1 ,
x0 n! p n 1 q!
donde ξ esta entre x0 y x y entonces, ξ  ξ pxq.
Un importante caso particular del Teorema de Taylor es obtenido cuandoh n  0, el cual se sigue
directamente del Teorema fundamental del Calculo:
Teorema 4.4 (Teorema del Valor Medio)
Suponga que f P C1 ra, bs, x P ra, bs y y P ra, bs (y, sin perdida de generalidad, x ¤ y). Entonces, existe
ξ P rx, ys „ ra, bs tal que
f pyq  f pxq  f 1 pξ qpy  xq.

Ejemplo 4.1
x2
Muestre que ex ¥1 x
2
para todo x ¥ 0.
35 / 133
Parte II

S EGUNDA PARTE

36 / 133
M ATLAB

(www.mathworks.com) es un lenguaje de programación y una herramienta de cálculo.


A continuación daremos una serie de comandos que muestran como trabajar con escalares, vectores
y matrices. Empecemos con lo mas sencisllo, un escalar:
>> a=1
a =

1
Para ingresar el vector fila v  p1 3 5 7q:
>> v=[1 3 5 7]
v =

1 3 5 7
Si nuestro deseo es ingresar un vector columna cada fila debe ir separada de otra por ";".
>> w=[1;3;5]
w =

1
3 37 / 133
5
I NTRODUCCIÓN AL M ATLAB

Un vector con 100 componentes, donde la primera componente es 2, la última es 200 y las
componentes intermedias van incrementados de dos en dos, puede ingresarse de la siguiente
manera abreviada:

>> q=2:2:200;

En este ejemplo hemos incluido un “;” al final. Cuando se ejecuta un comando terminado en “;”,
los contenidos de las variables involucradas no se muestran en la pantalla.
A continuación mostraremos ejemplos de algunas operaciones con vectores que pueden realizarse.
Ingresaremos un par de vectores de igual tamaño

>> u=[1 2 3 4 5 6]; % Se ingresa un vector (fila).


>> v=6:-1:1; % Se ingresa otro vector (fila).
>> u+v % Suma de vectores.
ans =
7 7 7 7 7 7

38 / 133
I NTRODUCCIÓN AL M ATLAB

Veamos como se obtienen algunas operaciones entre vectores

>> v' % Vector transpuesto (columna).


ans =
6
5
4
3
2
1
>> u*v' % El vector u por el v transpuesto (producto interior entre vectores).
ans =
120
>> sqrt(u*u') % Norma del vector u ("sqrt" calcula la raiz cuadrada)
ans =
14.2829
>> length(v) % Entrega el numero de componentes del vector v (longitud de v).
ans =
8

39 / 133
I NTRODUCCIÓN AL M ATLAB

Podemos producir otros vectores a partir de aplicar funciones a cada componente de los vectores
dados:
>> sin(u) % Las componentes corresponden al seno de las componentes de u
ans =

0.8415 0.9093 0.1411 -0.7568 -0.9589 -0.2794 0.6570 0.9894


>> sqrt(u) % Las componentes corresponden a las raices cuadradas de u

ans =

1.0000 1.4142 1.7321 2.0000 2.2361 2.4495 2.6458 2.8284


Para realizar operaciones entre las componentes de los vectores dados debemos incluir el signo “.”
para significar que estamos operando componente a componente:
>> u.*v % Vector con los productos de las componentes de u por las de v
ans =

8 14 18 20 20 18 14 8
>> u./v % Vector con las divisiones de las componentes de u por las de v
ans =
40 / 133
I NTRODUCCIÓN AL M ATLAB

Una matriz se ingresa por filas. Los elementos de una misma fila se separan por un espacio y para
separar una fila de otra se usa ";". Matlab posee una importante colección de funciones de matrices
que nos pueden servir en nuestro trabajo:
 
1 2 5
M 2
 1 6
3 0 1
>> M=[1 2 5; 2 -1 6; 3 0 -1]
M =

1 2 5
2 -1 6
3 0 -1
>> IM=inv(M) % Inversa de la matriz.

IM =

0.0179 0.0357 0.3036


0.3571 -0.2857 0.0714
0.0536 0.1071 -0.0893 41 / 133
I NTRODUCCIÓN AL M ATLAB

>> TM=M' % Transpuesta de la matriz.


TM =

1 2 3
2 -1 0
5 6 -1

>> Det=det(M) % Determinante de la matriz.


Det =

56

>> VP=eig(M) % Valores propios de la matriz.


VP =

5.0903
-3.0451 + 1.3147i
-3.0451 - 1.3147i 42 / 133
I NTRODUCCIÓN AL M ATLAB

A continuación mostramos algunos ejemplos d operaciones que pueden realizarse con matrices
>> A=[2 -2 6; 0 -1 4; 2 4 8]; % Ingresa la matriz A.
>> A(2,3) % Muestra el elemento que esta en la posicion (2,3).
ans =

>> A(:,3) % Muestra la tercera columna de la matriz A.


ans =

6
4
8

>> A(2,:) % Muestra la segunda fila de la matriz A.


ans =

0 -1 4 43 / 133
I NTRODUCCIÓN AL M ATLAB

>> A(2:3,2) % Muestra desde el elemento 2 al 3 de la columna 2 de A.


ans =

-1
4

>> diag(A) % Vector formado por la diagonal de A.


ans =

2
-1
8

>> triu(A) % Parte triangular superior de A.


ans =

2 -2 6
0 -1 4 44 / 133
0 0 8
I NTRODUCCIÓN AL M ATLAB

Los siguientes comandos permiten construir matrices preestablecidas:

>> eye(n) %Matriz identidad de orden n.


>> zeros(m,n) %Matriz de ceros de orden m por n.
>> ones(m,n) %Matriz de unos de orden m por n.
>> rand(m,n) %Matriz m por n generada aleatoriamente con valores entre 0 y 1.
>> hilb(n) %Matriz de Hilbert de orden n.

45 / 133
Matlab

permite hacer gráficos, mediante el comando plot. Por ejemplo:

>> x=0:.01:5;
>> y=x.*sin(pi*x);
>> plot(x,y)

−1

−2

−3

−4
0 1 2 3 4 5

46 / 133
I NTRODUCCIÓN AL M ATLAB

También pueden hacerse varios gráficos a la vez agregando el comando subplot. Por ejemplo:

>> x=-2:.05:2;
>> xx=-0.5:0.0025:0.5;
>> xxx=-3.8:0.1:3.8;
>> y=(1./(x.^2+1)).*sin(pi*x);
>> z=(xxx+3.5).*(xxx+2.5).*xxx.*(xxx-2.5).*(xxx-3.5);
>> v=(x+2).*(x+1).*x.*(x-1).*(x-2);
>> w=xx.*sin(1./xx);
>> subplot(2,2,1) % Se divide la pantalla grafica en dos filas por dos
% columnas y se utiliza la primera ventana.
>> plot(x,y)
>> subplot(2,2,2) % Estamos usando la segunda ventana.
>> plot(xx,w,'r') % Note la diferencia con el anterior.
>> subplot(2,2,3) % Estamos usando la tercera ventana.
>> plot(x,v,'k*') %La k es de color negro y * asterisco.
>> subplot(2,2,4) % Estamos usando la cuarta ventana.
>> plot(xxx,z,'c.') % La c es del color cyan.

47 / 133
I NTRODUCCIÓN AL M ATLAB

1 0.6

0.4
0.5
0.2
0
0
−0.5
−0.2

−1 −0.4
−2 −1 0 1 2 −0.5 0 0.5

4 100

2 50

0 0

−2 −50

−4 −100
−2 −1 0 1 2 −4 −2 0 2 4 48 / 133
I NTRODUCCIÓN AL M ATLAB

Tambien lo podemos usar si conocemos el intervalo donde se encuentra la raiz:


f(zero(f,[a,b]). En este caso es necesario que haya un cambio de signo de la funcón en los
extremos de dicho intervalo.
La función roots(C) calcula las raices de un polinomio cuyos coeficientes estan almacenados en el
vector C.. Si queremos calcular las raices de ppxq  4x2 3x 1 tenemos que hacer lo siguiente

>> C=[4 3 1];


>> roots(C)

ans =

-0.3750 + 0.3307i
-0.3750 - 0.3307i

Note que la primera componente del vector C corresponde al coeficiente del monomio de mayor
grado y la ultima entrada corresponde al término independiente.

49 / 133
I NTRODUCCIÓN AL M ATLAB

Si queremos encontrar las raices del polinomio entonces ppxq  x2  1 C=[1 0 -1]. Si V es un
vector, poly(V) devuelve un vector con los coeficientes del polinomio cuyas raices son las entradas
de V. Por ejemplo, encontremos el polinomio que cuyas raices son 2, 3 y 5 :

>> V=[2 -3 5];


>> poly(V)
ans =

1 -4 -11 30

Nuestro polinomio será ppxq  x3  4x2  11x 30.

50 / 133
I NTRODUCCIÓN AL M ATLAB

Las soluciones a los sistemas de ecuaciones lineales se pueden obtener en Matlab con el uso del
operador de la barra invertida . Si deseamos conocer la solución de la ecuación matricial Ax  b,
donde A es una matriz de orden n  n, basta usar la orden x=A\b.

>> A=[3 2 1;0 2 1;1 2 5];


>> b=[6;3;8];
>> x=A\b

x =

1
1
1

La función lu de Matlab permite expresar una matriz A como producto de una matriz triangular
inferior L y una matriz triangular superior U. La función lu utiliza pivoteo parcial y por lo tanto
permite conocer la matriz de permutación P y las triangulares L y U tal que PA  LU.

51 / 133
I NTRODUCCIÓN AL M ATLAB

>> A=[3 2 1;0 2 1;1 2 5];


>> [L U P]=lu(A)

L =

1.0000 0 0
0 1.0000 0
0.3333 0.6667 1.0000

U =

3 2 1
0 2 1
0 0 4

P =
52 / 133
1 0 0
I NTRODUCCIÓN AL M ATLAB

Por ser un lenguaje de programación Matlab permite que podamos desarrollar nuestros propios
programas y rutinas con la gran ventaja de que podemos usar las funciones y herramientas propias
de él. Hay dos tipos de programas M ATLAB: uno se donomina script y el otro function. Todos
los archivos con programas M ATLAB deben terminar con la extensión .m. Veamos un ejemplo:
Los programas tipo script se utilizan para recoger una secuencia de comandos que constituyen
un proceso. Para ejecutar estos programas solo debemos introducir el nombre del programa en la
linea de comandos. Deseamos resolver la ecuación de segundo grado 3x2 5x 2  0. Escribamos
primeramente un programa tipo script. El programa puede ser el siguiente:
a=3;
b=5;
c=2;
D=b^2-4*a*c;
x(1)=(-b+sqrt(D))/(2*a);
x(2)=(-b-sqrt(D))/(2*a);
x
Guarde el programa con el nombre eje1.m. Para ejecutarlo escriba en M ATLAB el nombre del
archivo y obtendrá:
>> eje1
53 / 133
x =
I NTRODUCCIÓN AL M ATLAB

Podemos usar programas tipo script.m si queremos gráficas mas elaboradas, con varias
funciones, titulos, leyendas y otras herramientas útiles. El siguiente es un ejemplo
x=0:.01:2;
y=cos(pi*x);
z=sin(pi*x).*cos(pi*x);
plot(x,y,'r',x,z,'b','linewidth',2) % Asi se dibujan dos curvas en un mismo
grafico.
grid on
xlabel('x')
ylabel('y')
title('grafica de dos funciones')
l=legend('$cos(\pi x)$','$sin(\pi x)cos(\pi x)$','FontSize',22)
set(l,'Interpreter','Latex');

grafica de dos funciones


1
y = cos(πx)
0.8
y = sin(πx)cos(πx)
0.6

0.4

0.2

0 54 / 133
y

−0.2
I NTRODUCCIÓN AL M ATLAB

Una desventaja de este tipo de programas es que para resolver otra ecuación que utilice la misma
fórmula debemos modificar el programa. A pesar de que existe una fórmula general para resolver
las ecuaciones cuadráticas, nuestro programa no estaba hecho para cualquier ecuación de este tipo.
Para hacer este programa más útil, conviene reescribirlo de tal forma que que los datos de la
ecuación sean datos que el usuario pueda elegir, es decir escribirlo como una función que dependa
de los parametros de la ecuación. Ademas de las funciones propias de Matlab podemos definir
nuestras propias funciones, guardarlas en un archivo y usarlas de forma similar a como se usan las
funciones predefinidas de Matlab. El definir nuestras propias funciones y guardarlas en archivos
nos va permitir poder usarlas en otros programas distintos. La entrada y la salida puede ser una o
varias variables, cada una de ellas puede ser un escalar, un vector o una matriz de cualquier
tamaño. Los programas tipo function tienen una estructura esquematizada y siempre comienzan
de la siguiente forma:

function [salida1,salida2,...]=nombre(entrada1,entrada2,...)
sentencias
end

55 / 133
I NTRODUCCIÓN AL M ATLAB

El nombre de la función debe ser significativo y coincide con el nombre del archivo de extensión .m
en el que se guarda el código de dicha función. Al igual que cualquier variable que definamos en
Matlab, el nombre de una función no debe llevar espacios ni se pueden usar palabras reservadas
por Matlab. Las entradas son los parámetros que se le pasa a la función, sus nombres van entre
paréntesis y separadas por coma. Las salidas son los valores de las variables devueltos por la
función. Las variables de salida van después de la palabra reservada function entre corchetes
cuadrados y separados por comas si hay varios. El end, marca el final de la función y es opcional a
menos que estemos usando ciclos o funciones anidadas. El programa anterior escrito como function
queda asi:

function x=eje2(a,b,c)
D=b^2-4*a*c;
x(1)=(-b+sqrt(D))/(2*a);
x(2)=(-b-sqrt(D))/(2*a);

Se almacena en un archivo eje2.m y se ejecuta del siguiente modo:

>> eje2(3,5,2)
ans =

-0.6667 -1.0000
56 / 133
I NTRODUCCIÓN AL M ATLAB

Es conveniente usar programas tipo function, cuando sea posible, pues permiten un ahorro de
memoria. Las funciones se pueden asignar a variables y estas variables se pueden pasar a otras
funciones como se pasan escalares o vectores. Comparamos la definición de una función func que
se guarda en un fichero func.m y su equivalente anónima

function y=func(x)
y=cos(x)-x;
end

Las funciones anónimas nos permiten definir una función simple sin necesidad de crearla y
guardarla en un fichero .m. Se pueden definir en la ventana de comandos, en un fichero script o
dentro de otra función, con la siguiente sintaxis:

variable=@(lista_argumentos) expresion

expresion consiste en una única y válida expresión, puede tener una o más variables de entrada que
se especifican en la lista de argumentos separadas por comas.

57 / 133
I NTRODUCCIÓN AL M ATLAB

>> f=@(x) cos(x)-x;


>> z=f(0.5)
z = 0.3776

Cuando en un programa tipo script.m o function.m hay varios es muy útil para usted y para el
lector desprevenido complementar los pasos con líneas de comentario . Una linea de comentario
comienza con el signo de porcentaje, % . Cuando se ejecuta una secuencia de comandos las líneas de
comentario se ignoran.
Una diferencia importante entre los script.m y los function.m radica en la forma en que el se
utiliza espacio de trabajo. En un script.m, todas las definiciones de las variables y cálculos son
hecha en un espacio de trabajo que se puede acceder desde la línea de comandos. En el Ejemplo 2.3 ,
la vector x se puede ver inmediatamente después de ejecutar el script.m, simplemente
introduciendo x en la línea de comandos. Por el contrario, en un function.m, las variables no son
accesibles desde el comando la línea . Un function.m tiene su propio espacio de trabajo ,
independientemente de la línea de comandos espacio de trabajo. Este acuerdo nos permite utilizar
nombres de variables en una function.m que son los mismos que en otras archivos.m sin riesgo
de confusión. por ejemplo, prácticamente todas las function.m llaman a una de sus variables x.

58 / 133
I NTRODUCCIÓN AL M ATLAB

Ejemplo 1.1
Construya un programa que evalúe la función
#
2 sen2 p2xq, x ¤ 0,
f px q 
1  ex , x ¡ 0.

function y=fun1(x) % Si la entrada es un vector, la salida tambien lo es.


n=length(x); % Determina la longitud del vector x.
% A continuacion se calcula el valor de la funcion
% componente a componente.
for i=1:n % Al omitir el incremento este se asume igual a 1.
if x(i)<=0
y(i)=2*(sin(2*x(i)))^2;
else
y(i)=1-exp(-x(i));
end
end

Para hacer la gráfica de la función f en el intervalo r10, 10s puede utilizarse este programa del
siguiente modo: 59 / 133
I NTRODUCCIÓN AL M ATLAB

Ejemplo 1.3

function y=fun2(x)
n=length(x);
for i=1:n
if x(i)<=-2
y(i)=x(i)-1;
elseif (x(i)>-2 & x(i)<0)
y(i)=1-x(i).^2;
else
y(i)=-1/(x(i)+1);
end
end

Utilice este programa para hacer gráficos de la función en diferentes intervalos.

60 / 133
I NTRODUCCIÓN AL M ATLAB

Ejemplo 1.4
Construya una función que genere una matriz de la forma
 

2 1 0
A
 
 1

..
.
..
. 

 P Rnn.


..
.
..
.  1

0 1 2

function A=matriz(n)
B=[zeros(n-1,1) eye(n-1);zeros(1,n)];
A=2*eye(n)-B-B';

genere y visualice la matriz A para n  8 y el vector b  r1    1st P R8 y resuelva el sistema Ax  b


mediante el comando x=A\b de Matlab.

61 / 133
I NTRODUCCIÓN AL M ATLAB

Ejemplo 1.5

>> A=matriz(6)
A =
2 -1 0 0 0 0
-1 2 -1 0 0 0
0 -1 2 -1 0 0
0 0 -1 2 -1 0
0 0 0 -1 2 -1
0 0 0 0 -1 2
>> b=ones(6,1);
>> x=A\b
x =
3.0000
5.0000
6.0000
6.0000
5.0000
3.0000
62 / 133
I NTRODUCCIÓN AL M ATLAB

Ejemplo 1.6
8̧ xn
Construya una función que evalúe ex mediante su serie de Taylor: ex
 .
 n!
n 0

function y=miexp(x)
y=1;
sum=x;
n=1;
while (y+sum~=y)
y=y+sum;
n=n+1;
sum=x*sum/n;
end
8̧ xn
Este programa siempre se detiene porque la serie converge para cualquier x.
 n!
n 0

63 / 133
E CUACIONES Y S ISTEMAS DE E CUACIONES NO L INEALES I

Ÿ En matemática, se conoce como raíz (o cero) de una función f pxq a todo elemento x
perteneciente al dominio de dicha función tal que se cumpla: f pxq  0.
Ÿ Por ejemplo, dada la función f pxq  x2  6x 8, podemos afirmar que 2 y 4 son raíces ya que
f p2q  0 y f p4q  0.
Ÿ En caso de funciones reales los puntos en los que el gráfico corta al eje de las abscisas es una
interpretación gráfica de las raíces de dicha función.
Ÿ El teorema fundamental del álgebra determina que todo polinomio en una variable compleja y
de grado n tiene n raíces (contando sus multiplicidades). Aun así, las raíces de los polinomios
reales no son necesariamente reales; algunas de ellas, o incluso todas, pueden ser complejas.
Ÿ Una ecuación lineal es una ecuación relacionada con una línea recta, por ejemplo f pxq  mx c
describe una recta con pendiente m y la ecuación lineal f pxq  0, que implica tal f , se resuelve
fácilmente, x  c{m (siempre que m  0).
Ÿ Si una función f no está representada por una línea recta de esta manera, decimos que no es
lineal. En otras palabras,una ecuación se dice no lineal si contiene terminos polinomiales de
grado mayor que uno o si contiene terminos que no son polinómicos.

64 / 133
E CUACIONES Y S ISTEMAS DE E CUACIONES NO L INEALES II

Ÿ En general, las ecuaciones no lineales no pueden ser resueltas analíticamente. En este caso, por
lo tanto, la solución debe ser obtenida usando métodos iterativos. El principio de estos métodos
de solución consiste en partir de un punto arbitrario, el más cercano posible a la solución, y
llegar a la solución gradualmente a través de iteraciones sucesivas.
Ÿ La idea general de resolver una ecuación mediante la mejora sucesiva de una estimación inicial
agregando términos correctivos se ha usado desde hace mucho tiempo. Los griegos y
babilonios usaban este tipo de métodos para extraer raices.
Ÿ En esta sección estudiaremos algunos métodos básicos de resolución de ecuaciones o sistemas
de ecuaciones no lineales. La búsqueda de una raíz de una ecuación que modela una relación
no lineal es compleja y no es posible proporcionar un método que funcione de manera optima
en todos los casos.
Ÿ Las dos clases principales de métodos disponibles para obtener la aproximación de la raiz de
una ecuación no lineal se distinguen por el tipo de datos o valores iniciales.
Ÿ Normalmente, un procedimiento iterativo comienza con una iteración inicial x0 y produce una
secuencia de iteraciones x1 , x2 , . . . , xk .

65 / 133
E CUACIONES Y S ISTEMAS DE E CUACIONES NO L INEALES III

Ÿ Obsérvese que en general no esperamos que el procedimiento iterativo produzca la solución


exacta x. Podríamos concluir que la serie de iterados converge si los valores de |f pxk q| y o
|xk  xk1| tienden hacia 0 suficientemente rápido a medida que aumenta el contador de
iteración k.
Ÿ Correspondientemente, uno o más de los siguientes criterios generales se utilizan para terminar
con éxito tal proceso iterativo después de n iteraciones:
|xn  xn1| ¤ Atol
|xn  xn1| ¤ Rtol|xn|
|f pxnq| ¤ Ftol
donde Atol, Rtol y Ftol son constantes especificadas por el usuario.
Ÿ Por lo general, pero no siempre, el segundo criterio relativo es más robusto que el primero,
absoluto. Una combinación adecuada puede usar un valor de tolerancia tol, que dice:
|xn  xn1| ¤ Tolp1 |xn|q.
Ÿ El tercer criterio es independiente de los dos primeros; Toma el valor de la función en cuenta.
La función f pxq puede ser en general muy plana, o muy empinada, o ninguna, cerca de su raíz.

66 / 133
E CUACIONES Y S ISTEMAS DE E CUACIONES NO L INEALES

Ÿ Los métodos cerrados (bracketing methods) calculan los puntos finales de una serie de
intervalos sucesivamente más pequeños que contienen una raíz.
Ÿ Esto les permite proporcionar límites del error absoluto en la ubicación de una raíz cuando se
sabe que la función es continua. Estos métodos requieren dos puntos iniciales, uno a cada lado
de la raíz.
Ÿ Los métodos abiertos usan uno o mas aproximaciones iniciales de la raíz pero no hay necesidad
de que la raiz este entre esas aproximaciones.
Ÿ Para problemas bien planteados, los métodos cerrados siempre funcionan,por lo que tambien
son llamados de convergencia garantizada, pero convergen lentamente, es decir, típicamente
toman más iteraciones para obtener la respuesta adecuada.
Ÿ En contraste, los métodos abiertos no siempre funcionan (es decir, pueden diverger), pero
cuando lo hacen, generalmente convergen más rápido.

67 / 133
E CUACIONES Y S ISTEMAS DE E CUACIONES NO L INEALES

Ÿ Por esta razón, es importante conocer las debilidades y fortalezas de los métodos en lo teorico y
en lo practico.
Ÿ En este sección estudiaremos los métodos de Bisección, Posición Falsa, Newton-Raphson,
Secante y de Punto Fijo. Los cuatro son iterativos y comienzan con una o varias aproximaciones
de la ecuación f pxq  0.
Ÿ Las diferencias radican en
el número de valores iniciales,
la garantia de convergencia,
la velocidad de convergencia y
el costo computacional.

68 / 133
M ÉTODO DE B ISECCIÓN I

Ÿ El problema consiste en, dada f : R Ñ R (no lineal), encontrar x P R tal que f pxq  0, para el
caso de una sola ecuación, o bien, dada : Rn Ñ Rn (no lineal), encontrar x  px1 , . . . , xn qt P Rn
tal que pxq  0, para el caso de un sistema de ecuaciones. Para el caso escalar (una sola
ecuación), la solución x se denomina raíz de la función f .
Ÿ El método de bisección es un algoritmo de búsqueda de raíces que trabaja dividiendo el
intervalo de trabajo a la mitad y seleccionando el subintervalo que tiene la raíz. Este método es
el algoritmo más simple y más robusto para encontrar la raíz de una función continua
unidimensional en un intervalo cerrado.
Ÿ Se basa en el teorema del valor intermedio, el cual establece que toda función continua f en un
intervalo cerrado ra, bs toma todos los valores que se hallan entre f paq y f pbq.

69 / 133
M ÉTODO DE B ISECCIÓN II

Teorema 3.1
Sea f : ra, bs Ñ R una función continua en el intervalo ra, bs y supongamos que f paq   f pbq. Entonces, para
cada valor intermedio z tal que f paq   z   f pbq, existe α P pa, bq tal que f pαq  z. La misma conclusión se
obtiene para el caso que f paq ¡ f pbq.
En particular, si f paq y f pbq tienen signos opuestos, entonces z  0 es precisamente un valor
intermedio y, por lo tanto, existe por lo menos una raíz α de f en el intervalo pa, bq.
Dados a y b tales que a   b y f P C pra, bsq tal que f paqf pbq   0, sean a0 : a y b0 : b. Por lo tanto f
tiene una raíz en el intervalo pa0 , b0 q. Sea c0 :
a 0 b0
. Forzosamente debemos caer en uno de los
2
siguientes casos:
(a) f pa0 qf pc0 q  0: en este caso se tiene que f pc0 q  0; por lo tanto ya localizamos una raíz, c0 , y se
finaliza el proceso;
(b) f pa0 qf pc0 q   0: por lo tanto f tiene una raíz en el intervalo pa0 , c0 q y definimos a1  a0 y b1  c0;
(c) f pa0 qf pc0 q ¡ 0: por lo tanto f tiene una raíz en el intervalo pc0 , b0 q y definimos a1  c0 y b1  b0 .

70 / 133
M ÉTODO DE B ISECCIÓN III

En los casos ?? y ?? anteriores f tiene una raíz en el nuevo intervalo pa1 , b1 q. Por lo tanto, el proceso
se vuelve a repetir desde con el nuevo intervalo pa1 , b1 q y c1 : pa0 b0 q{2, hasta que se satisfaga
algún criterio de detención.

a2
a1 x1
a0

x0 b0
b1

x2 b2

Figura. Método de Bisección

71 / 133
M ÉTODO DE B ISECCIÓN IV

Es fácil comprobar a partir del algoritmo que, si α es la raíz de la ecuación, entonces los valores
ck  cr calculados en cada paso (donde k denota el número de paso) satisfacen

k
|α  ck | ¤ 1
2
pb  aq
y, por lo tanto, α  lı́mkÑ8 ck , como queda establecido en el siguiente teorema:

Teorema 3.2
Suponga que f P Cra, bs y f paqf pbq   0. El método de bisección genera una sucesión tcn u8
n1 de aproximación
de un cero c de f tal que

k
|ck  α| ¤ 1
2
pb  a q cuando n ¥ 1. (10)

Demostración.
Para cada k ¥ 1, tenemos bk  ak  pb  aq{2k y α P pak , bk q. Como ck  pak bk q{2 para todo k ¥ 1 ,
resulta que |ck  α| ¤ 21 pak  bk q  pb  aq{2k . De lo anterior se sigue que la sucesión converge a α
con una tasa de convegencia Op 21k q, esto es ck  α Op 21k q.
72 / 133
M ÉTODO DE B ISECCIÓN V

Ejemplo 3.1
Encuentre el numero de iteraciones que se requieren para alcanzar una aproximación con una
exactitud de 104 a la solución de x3  x  1  0 que se encuentra en el intervalo r1, 2s.

Solución
Por (??) tenemos que |ck  α| ¤ pb  aq{2k para k ¥ 1. Como queremos que |ck  α| ¤ 104 , esto
requiere que |ck  α| ¤ pb  aq{2k  2k   104 así, despejando k se obtiene k ¡ 4{ ln 2  13,2. Luego
el numero minimo de iteraciones para alcanzar una precisión de 104 es 14.

73 / 133
M ÉTODO DE B ISECCIÓN
I MPLEMENTACIÓN EN M ATLAB

Cuadro. Algoritmo de Bisección.

Método de Bisección
1 Encuentre el intervalo ra, bs en el cual f pxq  0
2 Haga c  pa bq{2
3 Calcule f pcq
4 Revise el criterio de convergencia
5 Si f pcq y f pbq tienen signos opuestos haga a  c, en caso contrario haga b  c
6 Reptita el paso 2.

El siguiente programa calcula la raíz de una ecuación f pxq  0 mediante el método de bisección. Los
datos del programa son la función f , los extremos del intervalo ra, bs donde se busca la raíz, y la
tolerancia tol con la que se desea calcular ésta. El programa tiene una salida de error en el caso en
que la función f no cambie de signo en el intervalo inicial.

74 / 133
M ÉTODO DE B ISECCIÓN
I MPLEMENTACIÓN EN M ATLAB

function raiz=bisec(funct,a,b,tol)
fa=feval(funct,a);fb=feval(funct,b);
if (fb*fa>0)
error('La funcion tiene el mismo signo en ambos extremos.')
end
while (abs(b-a)>tol)
if (fa*fb==0)
if (fa==0)
raiz=a;
else
raiz=b;
end
else
raiz=(a+b)/2;fraiz=feval(funct,raiz);
if fraiz==0;
disp('El punto medio es la raiz!')
break
elseif (fa*fraiz>0)
a=raiz;fa=fraiz;
75 / 133
else
M ÉTODO DE B ISECCIÓN
I MPLEMENTACIÓN EN M ATLAB

Ejemplo 3.2
?
Encuentre una aproximación a 3
25 correcta con una exactitud de 104 usando el método de
bisección.
Solución
?
Para aproximar 3 25 utilizamos la ecuación f pxq? x3  25
? 0. Para establecer el intervalo donde
buscaremos la raiz tenemos en cuenta que 2  3 8 y 3  3 27 y comprobamos que f p2q.f p3q   0. Así
utilizaremos el método de bisección en la función f pxq  x3  25  0 en r2, 3s.

>> f=inline ('x^3 - 25')


f=inline ('x^3 - 25')
f =
Inline function:
f(x) = x^3 - 25
>> raiz=bisec(f,2,3,10^-4)
raiz =
2.9240
?
3
luego la solución es 2,9240, por tanto 25 es aproximadamente 2, 9240.
76 / 133
M ÉTODO DE B ISECCIÓN
I MPLEMENTACIÓN EN M ATLAB

Ejemplo 3.3
Aplique el método de bisección para encontrar soluciones exactas dentro de 105 para el problema:
x cosp2xq  px 1q2  0 para 3 ¤ x ¤ 2 y para 1 ¤ x ¤ 0.

Solución
La raiz para el intervalo escogido es c17  2,065315246582031 como se pede ver en el cuadro ??.
Cuadro. Bisección xk : pak bk q{2.

k ak bk pak bk q{2 f pak q f ppak bk q{2q f pbk q


0 -3 -2 -2.5 -6.88051 -2.95916 3.07287e1
1 -2.5 -2 -2.25000 -2.95916 -1.08821 3.07287e1
2 -2.25000 -2 -2.12500 -1.08821 -3.17689e1 3.07287e1
.. .. .. .. .. .. ..
. . . . . . .
16 -2.06537 -2.06531 -2.06534 -2.87010e4 -1.33426e4 2.01494e5
17 -2.06534 -2.06531 -2.06532 -1.33426e4 -5.66369e5 2.01494e5

77 / 133
M ÉTODO DE B ISECCIÓN
I MPLEMENTACIÓN EN M ATLAB

Ejemplo 3.4
Compruebe que hay un cero de f pxq  ex  x en el intervalo indicado r0, 1s. Use el método de
Bisección con una precisión de ϵ  104 .

Solución
Verifiquemos que existe un cambio de signo de f en r0, 1s. En efecto,
f p0q  f p1q  pe0  0q  pe1  1q  0,6321   0.
Con la certeza de la existencia de una raíz en ese intervalo, vamos a Matlab para calcular dicha
aproximación:

a=0;b=1;tol=0.0001;
funct=inline('exp(-x)-x');
raiz=bisec(funct,a,b,tol)

La solución es:

5.6719970703e-01

78 / 133
M ÉTODO DE B ISECCIÓN
I MPLEMENTACIÓN EN M ATLAB

Ejemplo 3.5
Usted está trabajando para una compañia que fabrica objetos flotadores. El balón flotante tiene una
gravedad específica de 0,6 y tiene un radio de 5, 5cm. Se le pide que encuentre la profundidad a la
que se sumerge la bola cuando flota en el agua. La ecuación que da la profundidad x a la que se
sumerge la bola bajo el agua viene dada por

x3  0,165x2 0,0003993  0
donde x esta dada en metros. Usa el método de bisección para encontrar las raíz de la ecuación para
hallar la profundidad x a la que se sumerge la bola bajo el agua.

x
Agua

79 / 133
M ÉTODO DE B ISECCIÓN
I MPLEMENTACIÓN EN M ATLAB

Solución
Lo primero que debemos buscar es el dominio d ela función f pxq  x3  0,165x2 0,0003993. Cuando
el balón está totalmente afuera x  0 y cuando está totalmente sumergido x  2R  11cm  0,11m.

a=0;
b=0.11;
funct=inline('x^3-0.165*x^2+0.0003993');
raiz=bisec(funct,a,b,tol)

La solución es:

6.2358398438e-02

Esto quiere decir que la bola se sumerge 6,2358398438e  02m  6,2cm.

80 / 133
M ÉTODO DE LA FALSA P OSICIÓN

Una desventaja del del método de bisección es que al dividir el intervalo ra, bs en mitades iguales,
no se tiene en cuenta las magnitudes de f paq y f pbq. Por ejemplo, si f paq está mucho más cercana a
cero que f pbq, es lógico que la raíz se encuentre más cerca de a que de b (figura ??). El método de la
falsa posición al igual que el método de bisección: localiza la raíz en una sucesión de intervalos de
tamaño decreciente. En lugar de seleccionar el punto medio cada intervalo, este método utiliza el
punto donde las líneas secantes cortan al el eje x.
(b, f (b))

a α

c b

(a, f (a))

Figura. Método de Regula Falsi

81 / 133
M ÉTODO DE LA FALSA P OSICIÓN

En la figura ??, la línea secante sobre el intervalo ra, bs es la cuerda entre pa, f paqq y pb, f pbqq. Los dos
triángulos rectos de la figura son similares, lo que significa que

bc
f pbq
 c fpaaq
Es fácil mostrar que
   
ab ba
c  b  f p bq
f p a q  f p bq
 a  f pa q f pbq  f paq
 aff ppbbqq  bff papqaq
Entonces calculamos f pcq y procedemos al siguiente paso con el intervalo ra, cs si f paqf pcq   0 o al
intervalo rc, bs si f pcqf pbq   0.

Cuadro. Comparación de los métodos.

Método de Falsa Posición


1 Encuentre el intervalo ra, bs en el cual f pxq  0
2 Haga c  paf pbq  bf paqqpf pbq  f paqq
3 Calcule f pcq
4 Revise el criterio de convergencia
5 Si f pcq y f pbq tienen signos opuestos haga a  c, en caso contrario haga b  c
6 Reptita el paso 2.
82 / 133
M ÉTODO DE N EWTON –R APHSON .

Ÿ Este método fue propuesto por Newton en 1669. En su trabajo, Newton solo trató con
polinomios y fue J. Raphson, quien propuso en 1690 la forma general del método, es decir, con
f pxq general, es por eso que el método es a menudo llamado el método de Newton-Raphson.
Ÿ El progreso en el desarrollo del método está relacionada con famosos matemáticos como
Fourier, Cauchy y otros.
Ÿ Por ejemplo, Fourier demostró en 1818 que el método converge cuadráticamente en la vecindad
de una raíz, mientras que Cauchy proporcionó la extensión a sistemas de ecuaciones.
Ÿ En el trabajo Tjalling se expone el desarrollo historico del Método de Newton Raphson a través
de las notas, cartas y publicaciones existentes de Isaac Newton, Joseph Raphson y Thomas
Simpson.

83 / 133
M ÉTODO DE N EWTON –R APHSON .

x2 x1 x0

Figura. Método de Newton Raphson

Este método se basa en usar una recta tangente a la gráfica de f para aproximar esta gráfica, cerca
del punto donde la función se anula: Supongamos que tenemos la aproximación xk a la raíz α de
f pxq. Trazamos la recta tangente a la curva en el punto pxk , f pxk qq, cuya ecuación es:
y  f pxk q f 1 pxk qpx  xk q. Esta recta cruza al eje de abscisas en un punto xk 1 que será nuestra
siguiente aproximación a la raíz α. El punto xk 1 donde la recta tangente y  f pxk q f 1 pxk qpx  xk q
corta al eje de abscisas queda determinado por f pxk q f 1 pxk qpxk 1  xk q  0.
84 / 133
M ÉTODO DE N EWTON –R APHSON .

El método de Newton Raphson o de la tangente define entonces la sucesión de aproximaciones a α


de la manera siguiente:
f px q
xk 1 : xk  1 k , k  0, 1, 2, . . .
f px k q
a partir de una aproximación inicial x0 dada y siempre que f 1 pxk q  0.

Cuadro. Método de Newton Raphson.

Método de Newton Raphson


1 Escoja el punto inicial x0
2 Si f 1 px0 q  0, haga x1  x0  f px0 q{f 1 px0 q, en caso contrario use otro valor para x0 .
3 Revise el criterio de convergencia
4 Haga x0  x1
5 Repita el paso 2.

85 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

function raiz=newton(f,Df,x0,tol,maxit)
k=0;
raiz=x0;
corr=tol+1;
while (k<maxit) & (abs(corr)>tol)
k=k+1;
xk=raiz;
fxk=feval(f,xk);
Dfxk=feval(Df,xk);
if (Dfxk==0)
error('La derivada de la funcion se anula.')
end
corr=fxk/Dfxk;
raiz=xk-corr;
end

if (abs(corr)>tol)
error('Se excedio el numero maximo de iteraciones.')
end
86 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Ejemplo 5.1
Calcule mediante este programa las raíces de la ecuación cospxq  x  0 con un error menor que
1012 .

>> f3=inline('cos(x)-x');
>> Df3=inline('-sin(x)-1');
>> tol=1.e-12;
>> maxit=10;
>> x0=1;
>> format long
>> raiz=newton(f3,Df3,x0,tol,maxit)

raiz =
0.73908513321516

87 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Definición 5.1 (Orden de Convergencia)


Considere una sucesión txk ukPN que converge a α. Sea ek  α  xk para k ¥ 0. Si existen constantes positivas
λ y p tales que
|α  xk 1|  lı́m |ek 1|  λ
nÝÑ8 |α  xk |p nÝÑ8 |ek |p
lı́m

se dice que txk u converge a α con orden p y constanted de error asintotico λ.

Teorema 5.1
Sea f P C 2pra, bsq con una raíz α P pa, bq y sean m1 y M2 tales que
   
m1 ¤ mı́n f 1 pxq y máx f 2 pxq ¤ M2 .
xPra,bs xPra,bs

Dado x0 P ra, bs, sea txk ukPN la sucesión obtenida por el método de Newton–Raphson. Si xk P ra, bs @k P N y
m1 ¡ 0, entonces
|α  xk 1| ¤ 2mM2
|α  xk |2 .
1
Por lo tanto, si x0 se escoge suficientemente cercano a α, se tiene la convergencia lı́mkÑ8 xk  α, con orden
p  2.
88 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Demostración.
Para establecer la convergencia cuadrática del método, sea en  r  xn. La formula que define la
sucesión txn u nos permite escribir

f pxn q f px n q 1
en 1  α  xn 1  α  xn f 1 pxn q
 en f 1 pxn q
 enf pxfn1pqx qf pxnq
n

Por la formula de Taylor existe un punto ξn situado entre xn y r tal que

en f 1 pxn q
1 2 2
0  f prq  f pxn en q  f pxn q e f pξ n q
2 n
re-ordenando la última ecuación obtenemos

f pxn q en f 1 pxn q   e2n f 2 pξn q


1
2
Reemplazando esto en la ecuación obtenida previamente para en 1 se tiene
2
en 1   21 ff 1ppxξnqq e2n.
n
89 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Demostración.
Por otro otro lado  2
p q  ¤ máxxPra,bs |f 2pξnq| ¤ M2 .
 f ξn

p nq  mı́nxPra,bs |f 1pxnq| m1
f1 x

Entonces  
 1 f 2 ξn 2 
p q ¤ M2 |α  x |2
|α  xk 1|   
p q

 2 f 1 x en 
2m1
k
n

Teorema 5.2
Sea f P C 2pra, bsq y sean m1 y M2 tales que
m1 ¤ mı́n |f 1 pxq| y máx |f 2 pxq| ¤ M2 .
xPra,bs Pr s
x a,b

Dado x0 P ra, bs, sea txk ukPN la sucesión obtenida por el método de Newton–Raphson. Si xk P ra, bs @k P N y
m1 ¡ 0, entonces
|α  xk 1| ¤ 2mM2
|xk 1  xk |2 , k  0, 1, 2, . . .
1

90 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Ÿ De acuerdo al Teorema ??, si el método de Newton–Raphson converge, lo hace cuadraticamente


(es decir, con orden p  2).
Ÿ La convergencia está asegurada por el Teorema ??, bajo la hipótesis de que x0 esté
suficientemente cerca de la solución α: |α  x0 |   M2 {2m1 .
Ÿ Sin embargo, no hay una forma práctica de verificar esto. El Teorema??, nos provee de una
estimación a posteriori del error, siempre que se conozcan las cotas m1 y M2 . Si se itera hasta que
a
|xk 1  xk | ¤ 2m1 ϵ{M2 ,

entonces del teorema se obtiene


|α  xk 1| ¤ ϵ.

91 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Ejemplo 5.2
Verificación experimental del orden de convergencia Considere el ? método de Newton aplicado a la
función f pxq  x3 x  3x  3 la cual tiene una raiz en r1, 2s (x  3). La siguiente tabla muestra el
2

error en cada iteración. Además listamos el radio |en |{|en1 |2

Cuadro. Orden de convergencia experimental del método de Newton–Raphson

n xn Error Absoluto |en | |en|{|en1|2


1 1.777777777778 0.045726970209
2 1.733360666940 0.001309859371 0.626440486363027
3 1.732051929409 0.000001121841 0.653855540614936
4 1.732050807570 0.000000000001 0.654740004973474

Si recordamos la definición de orden de convergencia

|α  xn 1|  lı́m |en 1|  λ
n
lı́m
ÝÑ8 |α  xn|p nÝÑ8 |e |p n

tenemos que el orden de convergencia es, efectivamente, 2 y que la constante de error asintotico es
λ  0,654740004973474. El Teorema ?? tambien predice la constante de error asintotico: 92 / 133

2
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Definición 5.2
Criterio de detención. Si el método de Newton–Raphson converge, cuando |xk 1  xk | ¤ ϵ, con ϵ
suficientemente pequeño como para que
M2 ϵ
2m1
! 1, entonces se tiene que
|α  xk | ¤ |α  xk 1| |xk 1  xk |
¤ 2m
M2
|xk 1  xk |2 |xk 1  xk |  |xk 1  xk | .
1

Como además |α  xk 1 | ! |α  xk | , es razonable estimar |α  xk 1 | ¤ |xk 1  xk | ¤ ϵ. En consecuencia, si


se desea calcular la raíz α con error menor que ϵ mediante este método, puede usarse como criterio de
detención confiable |xk 1  xk | ¤ ϵ.

93 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Ejemplo 5.3
?
Calculemos 2 resolviendo la la ecuación x2  2  0 con un error menor que 105 usando el método
de Bisección y el método Newton.

Cuadro. Resultados obtenidos por los métodos de Bisección y Newton–Raphson

Bisección Newton–Raphson
1 1.50000000000000 2.00000000000000
2 1.25000000000000 1.50000000000000
3 1.37500000000000 1.41666666666667
4 1.43750000000000 1.41421568627451
5 1.40625000000000 1.41421356237469
6 1.42187500000000
7 1.41406250000000
.. ..
. .
15 1.41421508789063
16 1.41419982910156
17 1.41420745849609
94 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Ejemplo 5.4
Se desea usar el método para calcular la raíz cuadrada de R, px2  Rq. Verifique que la sucesión de
iteraciones debe estar definida por


1 
1 R
xn xn
2 xn
En efecto, la raíz cuadrada de R es la solución de la ecuación x2  R  0. Entonces, f pxq  x2  R y
obtenemos 

f px n q x2n  R
xn 1  xn  1  xn  2x  2 xn x
1 R
f px n q n n

Ejemplo 5.5
A una empresa le cuesta Cpqq dólares producir q gramos por día de un determinado producto
químico, donde
Cpqq  1000 2q 3q2{3
La empresa puede vender cualquier cantidad de producto químico a $ 4 por gramo. Encuentre el
punto de equilibrio de la empresa, es decir, cuántos gramos debe producir por día para no tener
ganancias ni pérdidas. Use el Método de Newton. 95 / 133
M ÉTODO DE N EWTON –R APHSON .
I MPLEMENTACIÓN EN M ATLAB

Solución
Nos estan pidiendo que el costo sea igual a las ventas, esto es Cpqq  4  q, entonces, la función a la
cual le debemos aproximar la raíz es :

f pxq  Cpqq  4q  1000 2q 3q2{3  4q  1000  2q 3q2{3 .

Para encontrar un valor inicial adecuado, graficamos la función

q=1:1:1000;fq=1000-2*q+3*q.^(2/3);plot(q,fq)

En la gráfica podemos ver que x0  600 es un buen punto inicial.


tol=0.0001;maxit=100;x0=600;
f=inline('1000-2*x+3*x.^(2/3)');Df=inline('-2+2*x.^(-1/3)');
raiz=newton(f,Df,x0,tol,maxit)

La salida es:

6.0760678863e+02

Se deben producir 607,60678863 gramos para no tener perdidas ni ganancias.


96 / 133
M ÉTODO DE LA S ECANTE .

Ÿ Un problema con el método de Newton es que requiere para evaluar tanto la función como su
derivada en cada paso. Cuando la función f es difícil de evaluar , esto puede ser costoso.
Ÿ Por lo tanto, a veces es mejor contar con métodos que no requieran la evaluación de la derivada
de la función aunque esto implique a tener que usar un mayor número de valores iniciales.
Ÿ Un ejemplo de estos métodos alternativos al método de Newton–Raphson, es el método de la
secante.
Ÿ Éste método consiste, simplemente, en reemplazar la derivada f 1 pxk q por el cociente incremental

f pxk q  f pxk1 q
xk  xk1
.

Es decir,
xk  xk1
: xk  f pxk q
f pxk q  f pxk1 q
xk 1 , (11)

para k  1, 2, . . . , con x0 , x1 dados.

97 / 133
M ÉTODO DE LA S ECANTE .

x2 x3 x1 x0

Cuadro. Método de Newton Raphson.

Método de Secante
1 Escoja los puntos iniciales x0 y x1
2 Haga x2  x1  f px1 qpx1  x0 q{pf px1 q  f px0 qq.
3 Revise el criterio de convergencia
4 Haga x0  x1 y x1  x2
5 Repita el paso 2.
98 / 133
M ÉTODO DE LA S ECANTE .

Teorema 6.1
Sea f P C 2 pra, bsq con una raíz α P pa, bq y tal que f 1 pxq  0 @x P ra, bs. Dado x0 , x1 P ra, bs, sea txk ukPN la
sucesión obtenida por el método de la secante. Supongamos que xk P ra, bs @k P N. Entonces

|α  xk 1| ¤ C |α  xk |p ,
?
con p  p1 5q{2 y C ¡ 0. Por lo tanto, si x0 se?
escoge suficientemente cercano a α, se tiene la
convergencia lı́mkÑ8 xk  α, con orden p  p1 5q{2.

Observacion 6.1
Como en el método de Newton–Raphson, la convergencia del método de la secante no está siempre
garantizada, pero cuando tiene lugar es bastante veloz, con un orden levemente inferior al de
Newton–Raphson.

99 / 133
M ÉTODO DE LA S ECANTE .

Ejemplo 6.1
Verificación experimental del orden de convergencia. Considere el método de la secante aplicado a
la función f pxq  x3 2x2  3x  1 la cual tiene una raiz en r1, 2s (x  1,198691243515997). La
siguiente tabla muestra el error en cada iteración. Además listamos el radio |en |{|en1 |1,618

Cuadro. Orden de convergencia experimental del método de Secante

n xn Error Absoluto |en | |en|{|en1|1,618


1 1.100000000000 0.098691243516
2 1.221729490022 0.023038246506 0.976577270126503
3 1.196485326620 0.002205916896 0.984341928053430
4 1.198645368416 0.000045875100 0.911275692925359
5 1.198691336426 0.000000092910 0.971918310184230
6 1.198691243512 0.000000000004 0.932193699385018

Si recordamos la definición de orden de convergencia tenemos que el orden de convergencia es,


efectivamente, 1,618 y que la constante de error asintotico es λ  0,932193699385018.

100 / 133
M ÉTODO DE LA S ECANTE .

Ejemplo 6.2
La sangre se comporta como un fluido no newtoniano y entre los los principales modelos no
newtonianos existentes para su descripción está el modelo Casson. Este modelo predice que a
diferencia de los líquidos como el agua, la sangre fluye a través de un tubo de tal manera que el
núcleo central se moverá como un tapón con poca deformación, y la mayor parte del gradiente de
velocidad se producirá cerca de la pared del vaso. La siguiente ecuación se utiliza para describir el
flujo del tapón de un fluido Casson.

16 a
Fpξ q  1  ξ  ξ4
4 1
ξ
7 3 21
donde F mide la reducción del caudal (relativa a un fluido newtoniano) experimentado por el fluido
Casson para un gradiente de presión dada y ξ representa la fracción del tubo se llena de flujo de
tapón. Para un valor de F  0,40, utilice el método de la secante para determinar el valor
correspondiente de ξ . Utilice como aproximaciones iniciales ξ  0,25 y ξ  0,26.

101 / 133
M ÉTODO DE LA S ECANTE .

Solución
Fpξ q

k ξk F pξ k q
2 0.154945125357809 0.306838746970189
3 0.121713497103167 0.364846520543225
4 0.101574690022528 0.406952778324256
0,4 5 0.104900102175629 0.399557373801510
6 0.104701071205083 0.399994679461919
7 0.104698649668035 0.400000004108657

ξ
α
Debemos buscar unaraiz de f pξ q : Fpξ q  0,4. La ecuación para ξk es

ξk 1  ξk  f pξk q f pξξk q  fξpξk1q


k 
k 1

Entonces para que el caudal sea 0,4 la fraccion de l tubo debe ser 0,104698649668035. 102 / 133
M ÉTODO DEL PUNTO FIJO

Un punto fijo de una función es un número en el que el valor de la función no cambia cuando se
aplica la función.

Definición 7.1
El número real α es llamado un punto fijo de la función g si y sólo si gppq  p.

Ejemplo 7.1
Sea gpxq  x2  3x 4. 2 es un punto fijo de g porque gp2q  2.
Una condición suficiente alterna para la existencia de una solución a la ecuación f pxq  0 es
obtenida reescribiendo la ecuación en la forma equivalente x  gpxq  0, donde g es cierta función
de valor real definida y continua en ra, bs. Por tanto si p es un punto fijo de g, entonces la función
f pxq  x  gpxq tiene un cero en p.
Note que hay distintas formas de escoger dicha función g. Por ejemplo encontrar una raíz de
f pxq  ex  3x  4 es equivalente a encontrar un punto fijo de las siguientes funciones
Ÿ g1 pxq  lnp3x 4q
ex  4
Ÿ g2 pxq 
3
Ÿ g3 pxq  ex 4x 4

103 / 133
M ÉTODO DEL PUNTO FIJO

y=x
b

f (b) y = g(x)

f (a)

a b

104 / 133
M ÉTODO DEL PUNTO FIJO

Teorema 7.1
Suponga que g es una función de valor real, definida y continua sobre un intervalo cerrado y acotado ra, bs de
la recta real, y sea gpxq P ra, bs, para todo x P ra, bs entonces g tiene un punto fijo en ra, bs. Si además, g1 pxq
existe en pa, bq y existe 0 ¤ k   1 tal que |gpxq| ¤ k para todo x P pa, bq el punto fijo es unico.

Demostración.
Si gpaq  a o gpbq  b, tenemos el resltado que deseamos. Si no, entonces gpaq ¡ a y gpbq   b. La
función hpxq  gpxq  x es continua tal que hpaq  gpaq  a ¡ 0 y hpbq  gpbq  b   0. El Teorema del
valor medio implica que existe p P pa, bq para el cual hppq  0. Este número p es un punto fijo de g
pues gppq  hppq p  p.
Probemos ahora la unicidad: Supongamos que |g1 pxq| ¤ k   1 y que p y q son puntos fijos en ra, bs. Si
p  q, entonces por el Teorema del valor medio tenemos que existe un número ξ entre p y q tal que
gppq  gpqq  g1 pξ qpp  qq de donde |p  q|  |gppq  gpqq|  |g1 pξ q||p  q| ¤ k|p  q|   |p  q| lo cual es
una contradicción. Esta contradicción se genero al suponer que p  q. Luego p  q y el punto fijo en
ra, bs es único.

105 / 133
M ÉTODO DEL PUNTO FIJO

En la figura ?? se puede ver que no todas las funciones obtenidas a partir de la ecuación
ex  3x  4  0 cumplen la hipotesis de gpxq P ra, bs como se exige en el teorema. Mientras que
g1 pxq P r0, 3s para todo x P r0, 3s, esto no se cumple para g2 pxq y g3 pxq.
f pxq

y g1xpxq  lnp3x 4q
ex 
f p32xpxq qexex3x 
4
g 4x4 4
3x
3

Figura. Ecuación ex  3x  4  0

106 / 133
M ÉTODO DEL PUNTO FIJO

Ejemplo 7.2

Pruebe que la función gpxq  π 1
2 sen x
2 tiene un único punto fijo en r0, 2π s.

Solución
Lo primero que debemos verificar es que gpxq P r0, 2π s. En efecto, calculemos los puntos críticos de
gpxq : g1 pxq  14 cosp x2 q por tanto g1 pxq  0 si x  π. Los puntos críticos de g son 0, π y 2π y
gp0q  π, gp2π q  π y gpπ q  π 12 . La función g es continua en r0, 2π s y tiene máximo y mínimo
absoluto. Por tanto se tiene que π ¤ gpxq ¤ π 12 , de este modo vemos que gpxq P r0, 2π s para todo
x P r0, 2π s. La primera parte del Teorema ?? garantiza la existencia del punto fijo. Para probar que es
único basta observar que |g1 pxq| ¤ 1{4  k   1.
y

yπ sinpx{2q
f pxq  x
107 / 133
x
α 2π
M ÉTODO DEL PUNTO FIJO

Teorema 7.2
Suponga que g es una función de valor real, definida y continua sobre un intervalo cerrado y acotado ra, bs de
la recta real, y sea gpxq P ra, bs, para todo x P ra, bs. Si además, g1 pxq existe en pa, bq y existe 0 ¤ k   1 tal que
|g1pxq| ¤ k para todo x P pa, bq y si p0 P ra, bs entonces la sucesión
pn 1  gppnq, n  0, 1, 2, . . . (12)

converge al único punto fijo p de g. Adicionalmente

|pn  p| ¤ kn máxtb  p0, a  p0u (13)


n
|p  pn| ¤ 1 k k |p1  p0| (14)

Demostración.
Por Teorema ?? tenemos que existe un único punto fijo p en ra, bs para el cual gppq  p. Como g
mapea en ra, bs, la sucesión tpn u8
n1 esta bien definida para todo n ¥ 0 y pn P ra.bs para todo n.
Usando el echo de que |g1 pxq| ¤ k y el Teorema del valor medio, nosotros tenemos que para cada n,
|pn  p|  |gppn1  gppqq|  |g1pξnq||pn1  p| ¤ k|pn1  p| donde ξn P pa, bq.
108 / 133
M ÉTODO DEL PUNTO FIJO

Demostración.
Aplicando la inecuación reiterativamente optenemos

|pn  p| ¤ k|pn1  p| ¤ k2|pn2  p| ¤    ¤ kn|p0  p| (15)

como 0   k   1, tenemos que lı́m kn  0 y lı́m |pn  p| ¤ lı́m kn |p0  p|  0. Luego tpn u8
n0
nÑ8 nÑ8 nÑ8
converge a p. Como p P ra, bs, la primera inecuación se obtiene de la inecuación

|pn  p| ¤ kn|p0  p| ¤ kn máxtp0  a, b  p0u


para n ¥ 1, procedemos como (??), entonces

|pn 1  pn|  |gppnq  gppn1q| ¤ k|pn  pn1| ¤    ¤ kn|p1  p0|.


Así para m ¡ n ¥ 1

|pm  pn|  |pm  pm1 pm1     pn 1  p0|


¤ |pm  pm1| |pm1  pm2|    |pn 1  pn|
¤ km1|p1  p0| km2|p1  p0|    kn|p1  p0|
 kn|p1  p0|p1 k k2    kmn1q
109 / 133
M ÉTODO DEL PUNTO FIJO

Demostración.
Ya hemos probado que, lı́m pm
mÑ8  p, luego


n 1 8̧
|p  pn|  mlı́m
Ñ8 |pm  pn | ¤ mlı́m
Ñ8 k |p1  p0 |
n
k i
¤ k |p1  p0|
n
ki .

i 0 
i 0
°8
Como 
i 0k
i  1{p1  kq, tenemos que |p  pn| ¤ pknq{p1  kq|p1  p0|.
Ejemplo 7.3
Muestre que la función gpxq  lnp2x 1q tiene un único punto fijo en r1, 2s y aproximelo tomando
como punto inicial x0  0,5 .

Solución
Note que gp1q  lnp3q P r1, 2s y gp2q  lnp5q P r1, 2s; además g1 pxq  1{p2x 1q, de este modo
g1 pxq ¡ 0 para todo x P r1, 2s por tanto g es una función monotona creciente y gpxq P r1, 2s. Para
probar la unicidad vemos que 3 ¤ 2x 1 ¤ 5 para todo x P r1, 2s y por consiguiente
 
 
|g1pxq|  
 2x
1 
1
¤ 13 .
110 / 133
M ÉTODO DEL PUNTO FIJO

Solución
En la tabla siguiente se muestra una aproximación para dicho punto fijo, tomando como punto
incial x0  1,5
y n xn g px n q
2 1 1.500000 1.386294
2 1.386294 1.327761
y  lnp2x 31q
yx
1.327761 1.296239
4 1.296239 1.278842
5 1.278842 1.269110
1
19 1.256440 1.256436
20 1.256436 1.256434
21 1.256434 1.256433
x 22 1.256433 1.256432
1 2

111 / 133
M ÉTODO DEL PUNTO FIJO
I MPLEMENTACIÓN EN M ATLAB

function y = punto_fijo(g,p0,tol,max1)
format long
for k=1:max1
p = g(p0);
error_abs = abs(p-p0);
error_rel = error_abs/( abs(p)+eps );
if (error_abs<tol) & (error_rel<tol)
break
end
p0 = p
end
if (k==max1)
disp('El algoritmo alcanza el maximo de iteraciones')
end
y = p;

112 / 133
TALLER

Ejemplo 8.1
Considere f pxq  x3 x2  3x  3 la cual tiene un único cero en p1, 2q ya que f p1q  f p2q   0. Es
posible transformar el problema f pxq  0 en un problema de punto fijo x  gpxq. Las cinco funciones
listadas a contiuacion tienen un punto fijo donde f tiene una raiz.
5

a) g1 pxq 
x3 3 x2
3 4
b) g2 pxq  1
3x 3
?3 x2 3
c) g3 pxq  3 3x  x2

1{2
3x  x2 2 g 2 px q
d) g4 pxq 
3
g543
x g1
x2  3x  3
3 1
e) g5 pxq  x 
x
3x2 2x  3
0 1 2 3

113 / 133
TALLER

Cuadro. Comparación de las funciones de punto fijo.

k pq
g1 x pq
g2 x pq
g3 x pq
g4 x pq
g5 x
1 -0.333333333333 5.000000000000 1.709975946677 2.236067977500 3.000000000000
5 -0.999148069558 -0.548624511498 1.732050658660 1.788336635491 1.732072291545
6 -0.999716506837 3.498925607171 1.732050815248 1.699764652977 1.732050807871
7 -0.999905555850 0.102454435339 1.732050807173 1.750767137020 1.732050807569
8 -0.999968524563 314.079665339168 1.721269132176
9 -0.999989508848 -0.990417871487 1.738283890790
10 -0.999996503023 -0.970694690711 1.728454854472
11 -0.999998834349 -0.906695571833 1.734127846317
12 -0.999999611451 -0.659513011025 1.730851931929
13 -0.999999870484 1.348416050448 1.732743080114
14 -0.999999956828 2.874792655876 1.731651157563
15 0.406554839135 1.732281556863
16 24.529343947040 1.731917588152
17 -0.872711536715 1.732127723086
18 -0.498617855102 1.732006400791
19 5.049987345603 1.732076445973
20 -0.288302989971 1.732036005276
21 1.732059353692
22 1.732045873467
23 1.732053656275
30 1.732050746654
31 1.732050842738

114 / 133
TALLER

Ejemplo 8.2
Use el manejo algebráico para demostrar que las siguientes funciones tienen un punto fijo en p
exactamente cuando f ppq  0, donde f pxq  x4 2x2  x  3.
a) g1 pxq  px 3  2x2 q1{4

1{2
b) g2 pxq 
x 3
x2 2

1{2
3  x4
c) g3 pxq 
x
2
 4

2x2 3
d) g4 pxq 
3x
4x3 4x  1

Cuadro. Comparación de las funciones de punto fijo.

k g1 pxq g2 pxq g 3 px q g 4 px q
1 1,189207115 1,224744871 1,544700538 1,422857123
2 1,080057753 0,993666159 1,11642741 1,124481692
3 1,149671431 1,228568645 1,126052233 1,124123164
4 1,107820532 0,987506429 1,123638885 1,124123029
115 / 133
TALLER

Solución
La tabla ?? muestra las cuatro primeras iteraciones usando cada una de las funciones de punto fijo
con p0  1. La raiz de la función f es 1,124123029704315 por lo que la función g4 pxq es la que mejor
funciona.
a) Haciendo f pxq  0 tenemos que x4  x 3  2x2 , luego x  px 3  2x2 q1{4 , por lo que
g1 pxq  px 3  2x2 q1{4 tiene un punto fijo p tal que f ppq  0.
a f pxq  0 tenemos que x px 2q  xa 2x2  x 3, luego x2  px 3q{px2 2q, por lo
b) Igualando 2 2 4

que x  px 3q{px2 2q, por lo que g2 pxq  px 3q{px2 2q tiene un punto fijo p tal que
f ppq  0.
a
c) Cuandoa f pxq  0 tenemos que 2x2  x 3  2x2 , luego x  px 3  x4 q{2, y por consiguiente
g3 pxq  px 3  x4 q{2 tiene un punto fijo p tal que f ppq  0.
d) Si f pxq  0, entonces 3x4 2x2 3  f pxq 3x4 2x2 3  4x4 4x2  x luego se tiene que
3x4 2x2 3  xp4x3 4x  1q, y por tanto x  p3x4 2x2 3q{p4x3 4x  1q. Así
g4 pxq  p3x4 2x2 3q{p4x3 4x  1q tiene un punto fijo p tal que f ppq  0.

116 / 133
TALLER

Ejemplo 8.3
 
Use el Teorema ?? para mostrar que gpxq  2x tiene un único punto fijo en 31 , 1 . Use la iteración
del punto fijo para obtener una aproximación del punto fijo exacta en 104 . Use los estimativos del
Teorema ?? para estimar la cantidad de iteraciones necesarias para alcanzar una exactitud de 104 y
después compare esta estimación teórica con la que realmente se requiere.

Solución
1 
Claramente g es continua y además es decreciente en 3, 1 porque g1 pxq  2x ln 2   0. Por tanto


1
¤ 21  gp1q  mı́n gpxq ¤ máx gpxq  g
1
 21{3  0, 79 ¤ 1
3 Pr s
x 1
3
,1 xPr s
1
3
,1 3

De esta manera se tiene que gpxq P r 13 , 1s para todo x P r 13 , 1s. Por otra parte tenemos que

|g1pxq|  |  2x ln 2| ¤ |2x| ln 2 ¤ 21{3 ln 2


para todo x P p 13 , 1q. Sea p0  0,5 y pn 1  gppn q para n  0, 1, 2, . . . .

117 / 133
TALLER

Solución
Para estimar el número de iteraciones necesarias para poder alcanzar con exactitud de 104 el punto
fijo recordamos queremos
|pn  p| ¤ kn máxtb  p0, a  p0u (16)
por tanto hacemos
|pn  p| ¤ p21{3 ln 2qn máxt1  0,5, 0,5  31 u   104 (17)

y despejando n tenemos que n ¥ 15. La tabla ?? muestra que en la iteración 11 ya se tiene una
presición 104 lo que no contradice el estimativo (??).
yx
Iteración pn g pp n q
1 0.500000 0.707107
y
2 0.707107 0.612547
1 3 0.612547 0.654041
.. .. ..
. . .
9 0.640964 0.641285
10 0.641285 0.641142
x
y  211 0.641142 0.641205
12 0.641205 0.641177
118 / 133
13 0.641177 0.641190
TALLER

Ejemplo 8.4
Determine un intervalo ra, bs donde la iteración de punto fijo converge si gpxq  p2 x2  ex q{3.
Estime la cantidad de iteraciones necesarias para obtener una aproximación con una exactitud de
105 y realiza los calculos.

Solución
Consideremos el intervalo r0, 1s. Notar que si x P r0, 1s entonces 2x   ex , lo que implica que
g1 pxq  p2x  ex q{3   0 para todo x P r0, 1s, por tanto, g es una función continua y decreciente en
r0, 1s. En consencuencia se tiene que:
3e
0¤  gp1q  xmı́n gpxq ¤ máx gpxq  gp0q   0, 33 ¤ 1
1
3 Pr0,1s xPr0,1s 3

De esta manera se tiene que gpxq P r0, 1s para todo x P r0, 1s. Por otro lado tenemos que
g2pxq  p2  ex q{3  0 cuando x  ln 2  0,6931 P r0,1s, por tanto los candidatos a extremos relativos
de g1 en r0, 1s son:
g1 p0q  1{3  0,33, g1 pln 2q  p2 ln 2  2q{3  0,2045, g1 p1q  p2  eq{3  0,2339. Lo que implica
que máxxPr0,1s |g1 pxq|  31 : k. Luego por el Teorema ??, (g cumple las hipótesis del teorema) g tiene
un punto fijo en r0, 1s y además la iteración del punto fijo converge en r0, 1s. Sea p0  0,5 y
pn 1  gppn q para n  0, 1, 2, . . ..
119 / 133
TALLER

Solución
Ahora, deseamos estimar el número de iteraciones necesarias para poder alcanzar con exactitud de
104 el punto fijo, para esto debemos calcular, según el Teorema ??, un natural n para el cual se
cumpla 
n
|pn  p| ¤ 13 máxt1  0,5, 0,5  0u   104 (18)

Despejando se obtiene n ¡ 7,75 por lo que el numero de iteraciones adecuado será n  8.


yx

y Iteración pn g pp n q
1 0.700000 0.158749
1
2 0.158749 0.284386
3 0.284386 0.250643
4 0.250643 0.259323
5 0.259323 0.257065
6 0.257065 0.257651
7 0.257651 0.257499
8 0.257499 0.257538
y  p2 x2  ex q{3
x 120 / 133
α 1
TALLER

Ejemplo 8.5
Sea f pxq  px  1q10 , p  1 y pn  1 1{n. Demuestre que |f ppn q|   103 siempre que n ¡ 1, pero que
|p  pn|   103, requiere que n ¡ 1000.
Solución
 
Si 1   n entonces 2 ¤ n y por tanto 210 ¤ n10 , asi |f ppn q|  n10  ¤ 210 ¤ 103 Ahora veamos que
|p  pn|   103 requiere que n ¡ 1000. En efecto, |p  pn|  |1  p1 1{nq|  |1{n|  1{n Note que
1{n   103 es equivalente a n ¡ 103 y por tanto |p  pn |   103 cuando n ¡ 1000.

121 / 133
TALLER

Ejemplo 8.6
Encuentre una función de punto fijo para aproximar la raíz de la ecuación x3  6x 2  0 en el
intervalo r0, 1s. Demuestre que esa función cumple las hipotesis del Teorema de Punto fijo y estime
las iteraciones necesarias para tener una presición de 104 . Encuentre dicha aproximación usando
un p0 P r0, 1s.

Solución
Probemos inicialmente con la función gpxq : px3 2q{6. Vemos que g1 pxq  x2 {2 ¡ 0 por tanto g es
una función creciente. Así

0   1{3  gp0q ¤ gpxq ¤ gp1q  1{2   1.

Por otro lado |g1 pxq|  |x2 {2| ¤ 1{2. Entonces, se cumplen las hipótesis del teorema de punto fijo.

tol=0.0001;
maxit=100;
g=inline('(x^3+2)/6');%
p0=0.5;
y = punto_fijo(g,p0,tol,maxit)

122 / 133
3.3987976508e-01
M ÉTODO DE N EWTON PARA SISTEMAS

Consideremos relaciones no lineales que involucran más de una variable. En esta ocasión solo nos
ocuparemos de los sistemas de ecuaciones que tienen el mismo número de ecuaciones y de
incógnitas.
Sea : Rn Ñ Rn una función de varias variables, no-lineal. Se quiere resolver el sistema de ecuaciones
pxq  0, donde x  px1, . . . , xnqt P Rn representa al vector de incógnitas. Una de las ventajas del
método de Newton–Raphson además de su velocidad de convergencia, es que se puede generalizar
fácilmente a sistemas de ecuaciones no lineales. Esta generalización se conoce como método de
Newton. Al igual que en el método de Newton–Raphson, buscamos una aproximación de la
solución mediante un desarrollo de Taylor.
Supongamos que a  pα1 , . . . , αn qt P Rn es la solución del sistema de ecuaciones, y que
 pf1, . . . , fnqt es dos veces diferenciable. Entonces, aplicando el desarrollo de Taylor para funciones
pk q pk q
de varias variables de en torno a una aproximación de la raíz xpkq  px1 , . . . , xn qt , se tiene que:

0  paq  pxpkq q Dpxpkq q pa  xpkq q O }a  xpkq}2 ,

donde Dpxpkq q es la matriz Jacobiana de en xpkq :



Bf1 pxpkqq    Bf1 pxpkqq
 B x1 B xn 
 
Dpxpkq q : 

..
.
..
.
.

 f B pxpkqq    Bfn pxpkqq
n

B x1 B xn 123 / 133
M ÉTODO DE N EWTON PARA SISTEMAS


Cuando }a  xpkq } es pequeño, el término O }a  xpkq }2 es mucho más pequeño aún y puede
despreciarse en en el desarrollo de Taylor anterior:

0  pxpkqq Dpxpkq q pa  xpkq q O }a  xpkq}2
 pxpkqq Dpxpkq q pa  xpkq q.

Si además la matriz Dpxpkq q es invertible, entonces podemos aproximar la raíz a despejándola en la


ecuación anterior:
a  xpkq  Dpxpkq q1 pxpkq q.
El método de Newton consiste en, dada la aproximación de la solución xpkq , tomar como nueva
aproximación xpk 1q el valor de la expresión anterior:

xpk q : xpkq  Dpxpkq q1 pxpkq q,


1
k  0, 1, 2, . . .

donde xp0q es la aproximación inicial.

124 / 133
M ÉTODO DE N EWTON PARA SISTEMAS

En la práctica no es necesario (ni conveniente) invertir la matriz Dpxpkq q, sino que se utiliza un
método menos costoso: resolver en cada iteración el sistema de ecuaciones lineal
Dpxpkq q pxpk q  xpkq q  pxpkq q.
1

Así, llamando dxpkq : xpk q  xpkq , se obtiene el siguiente algoritmo:


1


 Dado xp0q Rn ,
P


 para k 0, 1, 2, . . .


 resolver D xpkq dxpkq
p q xpkq ,
 p q
 x pk 1q : xp
 k q pk
dx , q

 hasta que se satisfaga algún criterio de detención.

Observacion 9.1
Los teoremas de convergencia, y estimación del error del método de Newton–Raphson se pueden
generalizar al caso de sistemas, reemplazando el valor absoluto por una norma vectorial. Así se
obtiene que
}a  xpk 1q} ¤ C}a  xpkq}2, k  0, 1, 2, . . .
donde C es una constante positiva que depende de las derivadas primeras y segundas de f . Al igual
que en el método de Newton–Raphson, si se desea calcular la solución a del sistema con error
menor que ¤ ϵ, puede usarse }xpk 1q  xpkq } ¤¤ ϵ como criterio de detención.
125 / 133
M ÉTODO DE N EWTON PARA SISTEMAS

Ejemplo 9.1
Resolver el siguiente sistema de ecuaciones con error menor que tol  105 :
"
y2 x2 1
y  x2

Solución
Las funciones a utilizar son las siguientes
   
x2 y2  1
F px, yq  Dpx, yq 
2x 2y
y  x2 2x 1
y
y  x2
px0, y0q x y
pxk , yk q 1.00000000000000 1.00000000000000
x2 y2  1 0.83333333333333 0.66666666666667
x 0.78809523809524 0.61904761904762
0.78615406630609 0.61803444782168
126 / 133
0.78615137776208 0.61803398874999
M ÉTODO DE N EWTON PARA SISTEMAS

Ejemplo 9.2
Encontrar un mínimo de la función Fpx, yq  x2 plog yq2
La función de MATLAB fzero es un método híbrido para encontrar raíces de una ecuación no lineal
ya que combina la fiabilidad del método de bisección con la rapidez de convergencia de métodos
como el de la secante y la interpolación cuadrática inversa. Calcula el cero de la función f cercano al
punto x0 . La función debe escribirse como una función inline.
>> f=inline('sin(x)')
f =

Inline function:
f(x) = sin(x)
Calculemos el cero de la función f pxq  senpxq mas cercano a 3 :
>> r=fzero(f,3)
r =

3.141592653589793
Tambien lo demos usar si conocemos el intervalo donde se encuentra la raiz: f(zero(f,[a,b]).
En este caso es necesario que haya un cambio de signo de la funcón en los extremos de dicho 127 / 133

intervalo.
M ÉTODO DE N EWTON PARA SISTEMAS

La función roots(C) calcula las raices de un polinomio cuyos coeficientes estan almacenados en el
vector C.. Si queremos calcular las raices de ppxq  4x2 3x 1 tenemos que hacer lo siguiente

>> C=[4 3 1];


>> roots(C)

ans =

-0.3750 + 0.3307i
-0.3750 - 0.3307i

Note que la primera componente del vector C corresponde al coeficiente del monomio de mayor
grado y la ultima entrada corresponde al término independiente. Si queremos encontrar las raices
del polinomio entonces ppxq  x2  1 C=[1 0 -1].

128 / 133
M ÉTODO DE N EWTON PARA SISTEMAS

Ÿ En este sección hemos los métodos para encontrar una raiz de una funcion: Bisección,
Newton-Raphson, Secante y de Punto Fijo.
Ÿ Para compararlos es necesario tener en cuenta
el requisito de proporcionar un intervalo inicial,
la garantia de convergencia o dicho de otro modo la garantia de encontrar una raíz y
la velocidad de convergencia y
el costo computacional.
Ÿ En este capítulo, se han presentado cinco métodos para resolver una ecuación f pxq  0. Los
métodos de bisección y regula falsi son fiables pero lentos.
Ÿ El método de Newton es rápido, pero a menudo sólo converge cuando el dato inicial está cerca
de la raíz y requiere f 1 .
Ÿ El método secante es casi tan rápido como el método de Newton y no requiere el conocimiento
de la derivada f 1 , la cual puede no estar disponible o puede ser demasiado costoso de calcular.
Ÿ El usuario del método de bisección o de regula falsi debe proporcionar dos puntos en los que
los signos de f pxq difieren, y la función f sólo necesita ser continua.

129 / 133
M ÉTODO DE N EWTON PARA SISTEMAS

Ÿ Al usar el método de Newton, se debe especificar un punto de partida cerca de la raíz, y f debe
ser diferenciable.
Ÿ El método secante requiere dos buenos puntos de partida.
Ÿ El método secante es a menudo más rápido en la aproximación de las raíces de las funciones no
lineales en comparación con la bisección y la falsa posición.
Ÿ A diferencia de estos dos métodos, los intervalos rak , bk s no tienen que estar en lados opuestos
de la raíz y tener un cambio de signo.
Ÿ Además, la pendiente de la línea secante puede llegar a ser bastante pequeña, y un paso puede
alejarse de la corriente punto.
Ÿ El método secante puede fallar al encontrar una raíz de una función no lineal que tiene una
pequeña pendiente cerca de la raíz porque la línea secante puede alejarse muchoi de la raiz.
Ÿ Para funciones amigables y datos iniciales relativamente cercanas a la raíz, la mayoría de estos
métodos requieren pocas iteraciones antes de acercarse a la raíz.

130 / 133
M ÉTODO DE N EWTON PARA SISTEMAS

Ÿ Sin embargo, hay funciones patológicas que pueden causar problemas para cualquiera de esos
métodos. Al seleccionar un método para resolver un problema no lineal dado, uno debe
considerar muchas cuestiones como lo que sabe
Ÿ Sobre el comportamiento de la función, un intervalo ra, bs que satisface f paqf pbq   0, la primera
derivada de la función, una buena conjetura inicial a la raíz deseada, y así sucesivamente.
Ÿ Para una ecuación no lineal f pxq  0, buscamos un punto donde la curva f interseca el eje x
(y  0). Un enfoque alternativo es reformular el problema como un problema de punto fijo
x  gpxq para una función no lineal relacionada g.
Ÿ Para el problema de punto fijo, buscamos un punto donde la curva g intersecte la línea diagonal
y  x. Un valor de x tal que x  gpxq es un punto fijo de g porque x no cambia cuando se le
aplica g.
Ÿ Muchos algoritmos iterativos para resolver una ecuación no lineal f pxq  0 se basan en un
método iterativo de punto fijo xn 1  gpxn q donde g tiene puntos fijos que son soluciones de
f pxq  0.
Ÿ Se selecciona un valor inicial inicial x0 y el método iterativo se aplica repetidamente hasta que
converge suficientemente bien.

131 / 133
M ÉTODO DE N EWTON PARA SISTEMAS

Ÿ Un método podría ser considerado inapropiado si requiere una cantidad excesiva de cálculos
para llegar a una solución, sobre todo en aplicaciones reales donde una rápida respuesta podria
ser necesaria.
Ÿ El orden de convergencia da una idea de la velocidad a la que un proceso iterativo alcanza la
solución.
Ÿ El orden de convergencia es una medida de cómo el error (el valor absoluto de la diferencia
entre el valor aproximado y la verdadera solución) disminuye a medida que avanza iteración.
Ÿ Por ejemplo, un método iterativo que tiene la convergencia lineal (u orden de convergencia 1)
podría producir una secuencia de errores de 0, 1, 0,5, 0,25, . . . Es decir, el error se reduce a la
mitad en cada iteración.
Ÿ Mientras que un método que tiene la convergencia cuadrática (o orden de convergencia 2)
podría producir una secuencia de errores de 0, 1, 0, 01, 0, 001, . . . es decir, se eleva al cuadrado el
error en cada iteración.
Ÿ De ello se desprende que un método que tiene la convergencia cuadrática general converge
mucho más rápido que un procedimiento que tiene la convergencia lineal.

132 / 133
R EFERENCES I

133 / 133

También podría gustarte