Está en la página 1de 74

MUNIVERSIDAD NACIONAL AUTONOMA DE

HONDURAS
Facultad de Ciencias
Escuela de Matemática y Ciencias de la Computación
Departamento de Matematica Aplicada

Trabajo de Investigación

Asignatura
Análisis Numérico
MM-412

Sección
1100

Catedrático
Lic. Elvis Arrazola

Grupo
Mireya Lizbeth Laínez Galo 20181001880
Salvador Cuellar Diaz 20141030516
Esteban Emilio Pineda Moreno 20131008449

Tegucigalpa M.D.C
2

Contenido

Introducción .................................................................................................................................... 6

I. Ecuaciones en una Variable .................................................................................................... 7

A. Método de la Secante ....................................................................................................... 7

a) Detalles Históricos........................................................................................................ 7

b) Planteamiento del Método ............................................................................................ 7

c) Área de Aplicación del Método .................................................................................... 9

d) Ejemplos ..................................................................................................................... 10

e) Error de Aproximación ............................................................................................... 12

B. Método de Bernoulli....................................................................................................... 13

a) Detalles Históricos...................................................................................................... 13

b) Planteamiento del Método .......................................................................................... 14

c) Área de Aplicación del Método .................................................................................. 16

d) Ejemplos ..................................................................................................................... 17

e) Error de Aproximación ............................................................................................... 20

C. Método de Newton-Horner ............................................................................................ 21

a) Detalles Históricos...................................................................................................... 21

b) Planteamiento del Método .......................................................................................... 21

c) Área de Aplicación del Método .................................................................................. 23

d) Ejemplos ..................................................................................................................... 25
3

e) Error de Aproximación ............................................................................................... 28

II. Sistemas de Ecuaciones Lineales .......................................................................................... 29

A. Método de Jacobi ........................................................................................................... 29

a) Detalles Históricos...................................................................................................... 29

b) Planteamiento del Método .......................................................................................... 29

c) Área de Aplicación del Método .................................................................................. 31

d) Ejemplos ..................................................................................................................... 31

e) Error de Aproximación ............................................................................................... 34

B. Método del Gradiente Conjugado .................................................................................. 34

a) Detalles Históricos...................................................................................................... 34

b) Planteamiento del Método .......................................................................................... 35

c) Área de Aplicación del Método .................................................................................. 36

d) Ejemplos ..................................................................................................................... 37

e) Error de Aproximación ............................................................................................... 40

III. Derivación Numérica ......................................................................................................... 41

a) Detalles Históricos...................................................................................................... 41

b) Planteamiento del Método .......................................................................................... 42

c) Área de aplicación del método ................................................................................... 45

d) Ejemplos ..................................................................................................................... 46

e) Error de Aproximación ............................................................................................... 47


4

IV. Integración Numérica......................................................................................................... 48

A. Método de Romberg ....................................................................................................... 48

a) Detalles Históricos...................................................................................................... 48

b) Planteamiento del Método .......................................................................................... 49

c) Área de Aplicación del Método .................................................................................. 52

d) Ejemplos ..................................................................................................................... 53

e) Error de Aproximación ............................................................................................... 56

B. Método de Montecarlo ................................................................................................... 57

a) Detalles Históricos...................................................................................................... 57

b) Planteamiento del Método .......................................................................................... 58

c) Área de Aplicación del Método .................................................................................. 59

d) Ejemplos ..................................................................................................................... 60

e) Error de Aproximación ............................................................................................... 61

Referencias.................................................................................................................................... 64

Anexos .......................................................................................................................................... 67

Códigos en Matlab .................................................................................................................... 67

a. Método de la Secante ..................................................................................................... 67

b. Método de Bernoulli ................................................................................................... 67

c. Método de Newton-Horner ............................................................................................ 67

d. Método de Jacobi ........................................................................................................ 70


5

e. Método del Gradiente Conjugado .................................................................................. 71

f. Derivación Numérica ..................................................................................................... 72

g. Método de Romberg ................................................................................................... 72

h. Método de Montecarlo................................................................................................ 73

Figuras

Figura a.1 …………………………………………………………………………………. 7


6

Introducción

El análisis numérico ha sido de gran importancia para desarrollar el mundo en el que se

vive actualmente, desde el surgimiento de la tecnología computacional para la automatización de

procesos, que en la vida cotidiana nos tomaría mucho tiempo realizar, como por ejemplo: el cálculo

de la derivada de una función que puede ser un proceso "difícil" ya sea por lo complicado de la

definición analítica de la función o porque esta se conoce únicamente en un número discreto de

puntos (este es el caso si la función representa el resultado de algún experimento).

La presente investigación, busca explicar métodos de análisis numérico para aplicaciones

en el área de ingeniería y el análisis matemático, así como también para futuras investigaciones

donde se necesite manipular datos experimentales. Los métodos que aquí se explican van desde

soluciones a ecuaciones en una variable, sistemas de ecuaciones lineales, derivación e integración

numérica, dichos métodos no fueron vistos en la asignatura de análisis numérico.

Algo que nos motivó a realizar la investigación fue que, el hecho de conocer estos métodos, es

de gran utilidad en nuestra área del saber en ingeniería, matemática, física, pero, así como estos

métodos pueden funcionarnos, a otros investigadores del campo de la ciencia también.


7

I. Ecuaciones en una Variable

A. Método de la Secante

a) Detalles Históricos

El método de la secante es una variación del método creado por Newton para aproximar las

raíces de polinomios, éste quien en primera instancia lo vio como un método meramente

algebraico, hasta que Joseph Raphson (contemporáneo de Newton) se hizo miembro de la Royal

Society en 1691 por su libro Aequationum Universalis, análisis que publicó en 1690 y el cual

contenía este método para aproximar raíces. Mientras que Newton en su libro Método de las

fluxiones describe el mismo método escrito en 1671, no fue publicado hasta 1736, lo que significa

que Raphson había publicado este resultado casi 50 años antes, aunque no fue tan popular como

los trabajos de Newton y se le reconoció posteriormente. (Desconocido, Método de Newton

Raphson Y Método de la secante, 2013)

A pesar de lo que se cuenta antes, Morales, argumenta que lo anterior pasó de manera diferente.

“Raphson era una de las pocas personas a las que Newton le permitía ver sus trabajos” Raphson

en aquel entonces era el encargado de traducir del latín al inglés algunos de los trabajos de Newton,

así que probablemente, al estar en contacto con estos documentos, vio la formulación de Newton

–la cual había sido escrito primero, pero publicada hasta después de su muerte– lo que le ayudó a

formular el caso general al método escrito en primera instancia. (Desconocido, Método de Newton

Raphson Y Método de la secante, 2013)

b) Planteamiento del Método

En el método de la secante, teniendo en cuenta la definición de derivada, lo que se hace es que,

en vez de calcular la derivada de la función en el punto de estudio como en el método de Newton,


8

se aproxima la pendiente a la recta que une la función evaluada en el punto de estudio y en el punto

de iteración anterior. (Castro, 2013)

Este método, según Burden, es conveniente cuando sea difícil calcular la derivada de la función

en un punto, para evitar este problema, se plantea:

𝑓 (𝑥 ) − 𝑓(𝑃𝑛 − 1)
𝑓 ′(𝑃𝑛 − 1) = lím ( )
𝑥→𝑃𝑛−1 𝑥 − 𝑃𝑛 − 1

Si Pn-2 está cerca de Pn-1, entonces

𝑓(𝑃𝑛 − 2) − 𝑓 (𝑃𝑛 − 1) 𝑓 (𝑃𝑛 − 1) − 𝑓(𝑃𝑛 − 2)


𝑓 (𝑃𝑛 − 1) ≈ =
(𝑃𝑛 − 2) − (𝑃𝑛 − 1) (𝑃𝑛 − 1) − (𝑃𝑛 − 2)

Usando esta aproximación para f´(Pn-1) en la fórmula de Newton obtenemos

(a.1)

𝑓 (𝑃𝑛 − 1)((𝑃𝑛 − 1) − (𝑃𝑛 − 2))


𝑃𝑛 = (𝑃𝑛 − 1) −
𝑓 (𝑃𝑛 − 1) − 𝑓 (𝑃𝑛 − 2)

Lo anterior indica que se empieza con dos aproximaciones iniciales p0 y p1, la

aproximación p2 es la intersección de x de la recta que une los puntos (p0, f(p0)) y (p1, f(p1)).

La aproximación p3 es la intersección en x de la recta que une los puntos (p1, f(p1)) y (p2,

f(p2)) y así sucesivamente. Observe que solo se necesita una evaluación de la función por

cada paso para el método de la secante después de haber determinado p2. En contraste, cada
9

paso del método de Newton requiere una evaluación tanto de la función como de su

derivada. (Burden, Faires, & Burden, 2017, pág. 54)

Figura a.1 Ilustración de cómo se representaría gráficamente el método de la secante, en

el que se emplea una línea secante que une dos puntos que cortan la curva, para aproximar

una raíz.
c) Área (Burden, Faires,
de Aplicación del&Método
Burden, 2017)

Podemos aplicar el método de la secante en diversas áreas como:

▪ Aproximar raíces de funciones no lineales.

▪ Para resolver problemas en cuanto a modelados en ingeniería en general, por ejemplo:

modelados de movimientos ondulatorios como el estudio de las olas marítimas. (Vigil,

2011)

Comparando este método con el de Newton-Raphson, requeriría un par más de iteraciones para

obtener su convergencia al valor exacto de una raíz, esto indica que el método de la secante es

ligeramente más lento comparado con el de Newton. (Burden, Faires, & Burden, 2017, pág. 54)

Castro indica que:


10

“Ambos métodos son abiertos, es decir que se escoge un punto o dos puntos cualesquiera que

no necesariamente contengan a la raíz. Los métodos abiertos no siempre van a converger, pero

cuando la aproximación inicial es buena, estos convergen más rápido que los métodos acotados.”

(Castro, 2013)

Algunas ventajas y desventajas del método de la secante son:

▪ “Este método es de especial interés cuando el coste computacional de derivar la función de

estudio y evaluarla es demasiado elevado, por lo que el método de Newton no resulta

atractivo.” (Vigil, 2011)

▪ Es muy útil en ocasiones el no necesitar la derivada de la función para utilizar este método.

▪ Al igual que el método de Newton-Raphson, puede no converger en ocasiones por ser un

método abierto. (Castro, 2013)

d) Ejemplos

1. Utilice el método de la secante para encontrar una raíz real de la ecuación polinomial:

𝑓(𝑥 ) = 𝑥 3 + 2𝑥 2 + 10𝑥 − 20 = 0

Solución:

Utilizando la ecuación:

𝑥𝑛 − 𝑥𝑛−1
𝑥𝑛+1 = 𝑥𝑛 − 𝑓(𝑥𝑛 )
𝑓(𝑥𝑛 ) − 𝑓(𝑥𝑛 )

Obtenemos:

(𝑥𝑛 − 𝑥𝑛−1 )(𝑥𝑛3 + 2𝑥𝑛2 + 10𝑥𝑛 − 20)


𝑥𝑛+1 = 𝑥𝑛 − 3 3 2
(𝑥𝑛 + 2𝑥𝑛2 + 10𝑥𝑛 − 20) − (𝑥𝑛−1 + 2𝑥𝑛−1 + 10𝑥𝑛−1 − 20)

Y mediante x0=0 y x1=1 se calcula x2:


11

(1 − 0)(13 + 2(1)2 + 10(1) − 20)


𝑥2 = 1 − 3 = 1.53846
(1 + 2(1)2 + 10(1) − 20) − (03 + 2(0)2 + 10(0) − 20)

Lo anterior sólo fue la primera iteración, los valores posteriores son los siguientes:

n 𝒙𝒏 |xn+1−xn|

0 0.00000 ---
1 1.00000 1.00000
2 1.53846 0.53846
3 1.35031 0.18815
4 1.36792 0.01761
5 1.36881 0.00090

Allí tenemos el resultado, cuando se requiera una exactitud de 10 -3.

2. La ecuación de una ola estacionaria reflejada en un puerto está dada por:

2𝜋𝑥 2𝜋𝑡𝑣
ℎ = ℎ0 [𝑠𝑒𝑛 ( ) 𝑐𝑜𝑠 ( ) + 𝑒 −𝑥 ]
 

Para  =16, t=12, v=48, h=0.4h0, (40% de la altura inicial). Hallar la distancia donde rompe

la ola dada por x.

Solución:

Determinando la solución positiva más pequeña:


12

La solución más pequeña positiva se encuentra en el intervalo [5,10], y se definen las

variables:

𝑎+𝑏
a=5 b=10 𝑥0 = h=(𝑥𝑛 − 𝑥𝑛−1 )=0.001 k=0…n
2

Se evalúa en la fórmula para obtener la primera iteración:

𝑥𝑛 − 𝑥𝑛−1
𝑥𝑛+1 = 𝑥𝑛 − 𝑓(𝑥𝑛 )
𝑓(𝑥𝑛 ) − 𝑓(𝑥𝑛 )

La siguiente tabla nos indica las iteraciones necesarias para llegar a respuestas consistentes

y de 10-13.

n 𝒙𝒏 |xn+1−xn|

0 6.5 ---
1 6.97879137304883 0.4787913730488
2 6.95478092958251 0.0240104434663
3 6.95473129425136 0.0000496353311
4 6.95473128988187 4.3695E -9

5 6.95473128988151 4E -13

e) Error de Aproximación

Sobre los errores del método de la secante en contraste con el método de Newton:

▪ Los métodos de Newton Raphson y de la secante convergen cuadráticamente al


valor verdadero de la raíz.
▪ El error relativo verdadero es proporcional al cuadrado del error correspondiente de
la iteración anterior.
▪ Cuando el error relativo en una iteración es menor que 1 (inferior al 100%), la
convergencia está garantizada.
▪ Cuando el error relativo en una iteración es mayor que 1, la divergencia está
garantizada.
▪ Si bien es cierto  (x) no es lineal y x2 no es igual a la raíz, debe estar muy próxima.
Mejores estimaciones se logran iterando y reemplazando los valores x 0 y x1.
13

(Castro, 2013)

B. Método de Bernoulli

a) Detalles Históricos

Daniel Bernoulli, fue un destacado matemático, físico y conocedor de diversas áreas de las

ciencias. A lo largo de su vida publicó 86 obras, entre las más destacadas esta Hidrodinámica, en

la cual explica lo que más tarde vendrá a llamarse Principio de Bernoulli. Cabe resaltar que su

familia estaba compuesta por matemáticos los cuales hicieron algunos avances en la formulación

del cálculo.

Además de sus aportes en física, contribuyó en diferentes avances en las matemáticas; por

ejemplo, tuvo una idea preliminar de representación de funciones con ayuda de funciones

trigonométricas, lo que luego se conocería como las representaciones en series de Fourier.

(Desconocido, Daniel Bernoulli, s.f.)

McNamee y Pan, resumen la historia de este método de la siguiente manera:

“En 1928 Daniel Bernoulli publicó un artículo describiendo el método que lleva su nombre,

pero sin dar alguna justificación. Tal justificación fue dada por Leonhard Euler en 1748, quien usó

la expansión en series de una función racional en la cual el denominador es el polinomio a ser

resuelto. Lagrange en 1798 hizo una mejora a esto tomando el numerador de una función racional

como P’, para así eliminar la posibilidad de raíces múltiples. Luego Aiken en 1926 mostró cómo

usar una generalización del método de Bernoulli para obtener todas las raíces.” (Numerical

Methods for Roots of Polynomials, 2013)


14

b) Planteamiento del Método

A la hora de aproximar con métodos como el de Horner o el de Bairstow, se tiene que tener

una buena primera aproximación de la respuesta en cierto intervalo. El método de Bernoulli ayuda

a utilizar menos información, porque, para los otros métodos es necesario tener al intervalo y la

primera aproximación, pero con este, lo único que necesitamos saber son los coeficientes del

polinomio al que queremos aproximar sus raíces. (Muto, s.f.)

Entonces, se plantea un caso sencillo, tenemos el polinomio de grado N:

𝑃 (𝑥 ) = 𝑎0 𝑥 𝑁 + 𝑎1 𝑥 𝑁−1 + ⋯ + 𝑎𝑁−1 𝑥 + 𝑎𝑁 (b.1)

los coeficientes 𝑎𝑛 pueden, incluso ser complejos, hay N ceros distintos, 𝑧1 , 𝑧2 , … , 𝑧𝑁 . Ahora si se

ve la ecuación de diferencias

𝑎0 𝑥𝑁 + 𝑎1 𝑥𝑁−1 + ⋯ + 𝑎𝑁−1 𝑥 + 𝑎𝑁 = 0 (b.2)

la solución X = {𝑥𝑛 } (cualesquiera que sean sus valores iniciales) debe poderse representar en la

forma

𝑥𝑛 = 𝑐1 𝑧1𝑛 + 𝑐2𝑧2𝑛 + ⋯ + 𝑐𝑁 𝑧𝑁𝑛 (b.3)

en donde 𝑐1 , 𝑐2 , … , 𝑐𝑁 son constantes adecuadas.

Para proseguir, formulemos las dos hipótesis siguientes:

i. El polinomio P tiene un solo cero dominantes, es decir, uno de los ceros (por ejemplo, 𝑧1)

tiene un módulo mayor que el de todos los restantes:

|𝑧1 | > |𝑧2 |, 𝑘 = 2, 3, … , 𝑁 . (b.4)


15

ii. Los valores iniciales son tales que el cero dominante está representado en la solución (b.3),

es decir, se tiene que

𝑐1 ≠ 0

Consideramos ahora la razón de dos valores consecutivos de la sucesión solución X. Usando (b.3)

encontramos

𝑥𝑛+1 𝑐1𝑧1𝑛+1 + 𝑐2 𝑧2𝑛+1 + ⋯ + 𝑐𝑁 𝑧𝑁𝑛+1


=
𝑥𝑛 𝑐1𝑧1𝑛 + 𝑐2 𝑧2𝑛 + ⋯ + 𝑐𝑁 𝑧𝑁𝑛

Con la condición: c ≠ 0, esto puede escribirse

𝑐2 𝑧2 𝑛+1 𝑐 𝑧 𝑛+1
𝑥𝑛+1 1+ ( ) + ⋯ + 𝑁 ( 𝑁)
𝑐1 𝑧1 𝑐1 𝑧1
= 𝑧1
𝑥𝑛 𝑐2 𝑧2 𝑛 𝑐𝑁 𝑧𝑁 𝑛
1 + 𝑐 (𝑧 ) + ⋯ + 𝑐 ( 𝑧 )
1 1 1 1

Por (b.4), |𝑧𝑘 /𝑧1| < 1 para 𝑘 = 2,3, … , 𝑁. Se sigue que

𝑧 𝑛
(𝑧𝑘) → 0 𝑐𝑢𝑎𝑛𝑑𝑜 𝑛 → ∞ (b.5)
1

para 𝑘 = 2,3, … , 𝑁. La fracción que multiplica a z 2 tiende pues a 1 cuando n → ∞ , y tenemos,

por tanto

𝑥𝑛+1
lim = 𝑧1
𝑛→∞ 𝑥𝑛

Tenemos entonces la siguiente formulación tentativa del método de Bernoulli:

- Escójanse valores arbitrarios 𝑥0 , 𝑥1 , … , 𝑥𝑁−1 , y determínese la sucesión X = {𝑥𝑛 } por la relación

de recurrencia
16

𝑎1 𝑥𝑛−1 + 𝑎2 𝑥𝑛−2 + ⋯ + 𝑎𝑁 𝑥𝑛−𝑁


𝑥𝑛 = − , 𝑛 = 1,2, … (𝑏. 6)
𝑎0

-Fórmese luego la sucesión de cocientes

𝑥𝑛+1
𝑞𝑛 = (𝑏. 7)
𝑥𝑛

Hemos entonces probado el siguiente teorema:

Teorema B.1

Si el cero dominante del polinomio P dado por (b.1) es único y si se satisface la condición 𝑐 ≠

0, entonces los cocientes 𝑞𝑛 están “al final” definidos y convergen al cero dominante del polinomio

P.

c) Área de Aplicación del Método

El método de Bernoulli se puede aplicar, según García, en áreas como el procesamiento de

señal o robótica, el sistema que se emplearía está descrito por un modelo polinómico que varía con

el tiempo, produciendo un flujo de polinomios de alto grado. La frecuencia con que se quiere hallar

sus raíces puede llegar a ser muy grande para otros métodos. Para hallar las raíces de un módulo

máximo se usa el método de Graeffe o el de Bernoulli. (Garcia, 2015)

Hay ciertas complicaciones con este método tales como: la convergencia lenta, ceros de

multiplicidad mayor que uno, elección desafortunada de valores iniciales y la presencia de varios

ceros dominantes. Incluso si las condiciones de convergencia del método de Bernoulli se

satisfacen, la velocidad de convergencia puede ser baja. (Muto, s.f.)


17

También puede mencionarse que, el alto grado de los polinomios y la complejidad de los

casos que pueden presentarse a la hora de aplicar este método, dificultan aplicarlo en el

procesamiento de señal. (Garcia, 2015)

Según McNamee y Pan, el método de Bernoulli es bastante simple, fácilmente programable y

para procesamiento paralelo (aunque en modo de series es relativamente lento). (Numerical

Methods for Roots of Polynomials, 2013)

d) Ejemplos

1. Utilizando el método de Bernoulli, calcular la raíz de mayor módulo del siguiente

polinomio:

𝑓 (𝑥 ) = 𝑥 5 + 17𝑥 4 + 105𝑥 3 + 295𝑥 2 + 374𝑥 + 168

Solución:

Primero con la ecuación (b.2) se generan las condiciones iniciales, así se obtiene:

• Con N=1 se tiene 𝑎5 𝑥1 + 𝑎4 = 0


• Con N=2 se tiene 𝑎5 𝑥2 + 𝑎4 𝑥1 + 2𝑎3 = 0
• Con N=3 se tiene 𝑎5 𝑥3 + 𝑎4 𝑥2 + 𝑎3 𝑥1 + 3𝑎2 = 0
• Con N=4 se tiene 𝑎5 𝑥4 + 𝑎4 𝑥3 + 𝑎3 𝑥2 + 𝑎2 𝑥1 + 4𝑎1 = 0
• Con N=5 se tiene 𝑎5 𝑥5 + 𝑎4 𝑥4 + 𝑎3 𝑥3 + 𝑎2 𝑥2 + 𝑎1 𝑥1 + 5𝑎0 = 0

Sustituyendo los valores de los coeficientes dados por el polinomio 𝑓(𝑥 ) se genera el siguiente

grupo de ecuaciones:

𝑥1 + 17 = 0

𝑥2 + 17𝑥1 + 210 = 0

𝑥3 + 17𝑥2 + 105𝑥1 + 885 = 0

𝑥4 + 17𝑥3 + 105𝑥2 + 295𝑥1 + 1496 = 0


𝑥5 + 17𝑥4 + 105𝑥3 + 295𝑥2 + 374𝑥1 + 840 = 0
18

En forma matricial, se tiene que:

1 0 0 0 0 𝑥1 −17
17 1 0 0 0 𝑥2 −210
105 17 1 0 0 𝑥3 = −885
295 105 17 1 0 𝑥4 −1496
[374 295 105 17 1] [𝑥5 ] [ −840 ]

De este grupo de ecuaciones se obtienen los valores iniciales para utilizar en la ecuación (b.3),

los cuales son: 𝑥1 = 17, 𝑥2 = 79, 𝑥3 = −443, 𝑥4 = 2775, 𝑥5 = −18107.

La ecuación en diferencias queda de la siguiente manera:

𝑥𝑁 = −17𝑥𝑁−1 − 105𝑥𝑁−2 − 295𝑥𝑁−3 − 374𝑥𝑁−4 − 168𝑥𝑁−5

Iniciando en N = 6, se obtiene:

𝑥6 = 122 539

Así, de acuerdo a la fórmula (b.2), la primera aproximación a la raíz es:

𝑥6
𝑅𝑎í𝑧 = = −6.767493
𝑥5

La tabla siguiente muestra los resultados hasta obtener dos valores consecutivos de la raíz que

difieren en menos de 10^-3.

Coeficiente Raíz
𝑥6
5 ( ) = −6.767493
𝑥6 = 1.225389 × 10
𝑥5
𝑥7
𝑥7 = −8.422429 × 105 ( ) = −6.873264
𝑥6
𝑥8
𝑥8 = 5.836154 × 106 ( ) = −6.930487
𝑥7
𝑥9
𝑥9 = −4.063594 × 107 ( ) = −6.961601
𝑥8
𝑥10
𝑥10 = 2.835838 × 108 ( ) = −6.978646
𝑥9
𝑥11
𝑥11 = −1.981700 × 109 ( ) = −6.988056
𝑥10
19

𝑥12
𝑥12 = 1.385859 × 1010 ( ) = −6.993287
𝑥11
𝑥13
𝑥13 = .9.695722 × 1010 ( ) = −6.996213
𝑥12
𝑥14
𝑥14 = 6.784963 × 1011 ( ) = −6.997857
𝑥13
𝑥15
𝑥15 = −4.748649 × 1012 ( ) = −6.998784
𝑥14
𝑥16
𝑥16 = 3.323726 × 1013 ( ) = −6.999309
𝑥15

“Analizando los resultados del ejercicio, se puede notar que el método de Bernoulli es de

convergencia lenta. Sin embargo, se puede apreciar que la primera aproximación es muy buena y

no necesita condiciones iniciales externas; es decir, el método por sí mismo fija las condiciones

iniciales. Por esta razón, aunque es un método de convergencia lenta, es bastante valioso como

primera aproximación para otro método de convergencia rápida.” (Análisis Numérico, 2010)

2. Sea

𝑃 (𝑥 ) = 70𝑥 4 − 140𝑥 3 + 90𝑥 2 − 20𝑥 + 1

Solución:

La ecuación de diferencia (b.2) (resuelta para 𝑥𝑛 ), o que es lo mismo la ecuación (b.6), toma aquí

la forma

140𝑥𝑛−1 − 90𝑥𝑛−2 + 20𝑥𝑛−3 − 𝑥𝑛−4


𝑥𝑛 = −
70

En la siguiente tabla se dan los valores de n, de la sucesión 𝑥𝑛 (iniciada con x0 = 1, 𝑥𝑛 = 0 para n

< 0) y de la sucesión 𝑞𝑛 .

n 𝑥𝑛 𝑞𝑛
20

0 1.0 2.0
1 2.0 1.3571429
2 2.7142857 1.1578947
3 3.1428571 1.0668831
4 3.3530611 1.0176506
5 3.4122447 0.9883800
6 3.3725945 0.9699170
7 3.2711367 0.9578036
. . .
. . .
. . .
14 2.1627466 0.9330692
15 2.0179923 0.9323640
16 1.8815034 0.9318586
17 1.8815034 .
. . .
. . .
. . 0.93057

Lo anterior es un mero bosquejo del método de Bernoulli en el caso más sencillo posible.

Obsérvese que presenta convergencia lenta como se explicó anteriormente.

e) Error de Aproximación

Incluso si las condiciones de convergencia del método de Bernoulli se satisfacen, la velocidad

de convergencia puede ser baja. Entendemos por esto que el error de la aproximación 𝑞𝑛 al cero
xn+1
z1, 𝑒𝑛 = q n − z1 = − z1 tiende a cero lentamente.
xn

La convergencia de este método es explicada por Zaguskin en 1961 y otros, los cuales plantean
xn+1
que el radio satisface:
xn

xn+1 𝑞2 𝑛+1
| − 𝑞1 | ≤ 2𝑛|𝑞1 | | |
xn 𝑞1

en lo anterior la convergencia es lineal, o similar a esto, como la de una progresión geométrica.


21

C. Método de Newton-Horner

a) Detalles Históricos

William Horner (1786-1837) fue un niño prodigio que se convirtió director de una escuela en

Bristol a los 18 años. El método de Horner para resolviendo ecuaciones algebraicas fue publicado

en 1819 en el Transacciones filosóficas de la Sociedad de la realeza. Paolo Ruffini (1765-1822)

describió un método similar que ganó la medalla de oro de la Sociedad Italiana de Matemáticas

para Ciencias. Ni Ruffini ni Horner fueron los primeros en descubrir el método este fue conocido

en China al menos 500 años antes. (Faires, 2015, pp. 92-95)

El método de Horner, también llamado la regla de Horner es un algoritmo que permite calcular

el resultado de un polinomio para un determinado valor de x.

El algoritmo tiene ese nombre por el matemático británico William George Horner, aunque

como se mencionó, él no fue el primer en encontrar este método siendo conocido por un gran

número de matemáticos de la antigüedad. Su primera aparición es en el libro matemático «Los

nueve capítulos del arte matemático», un libro realizado por varias generaciones de estudiosos en

China entre los siglos I y II AC.

Otros conocedores de este algoritmo fueron el matemático chino del siglo XI Jia Xian, el

matemático persa Sharaf al-Din al-Tusi en el siglo XII y el matemático chino Zhu Shijie en el siglo

XIV. (Navarro, 2016)

b) Planteamiento del Método

Para usar el método de Newton para localizar ceros aproximados de un polinomio P (x),

necesitamos evaluar P (x) y P (x) a los valores especificados. Desde P (x) y P (x) son ambos

polinomios, la eficiencia computacional requiere que la evaluación de estas funciones se realice


22

en el anidado. El método de Horner incorpora esta técnica de anidación y, como consecuencia,

requiere solo n multiplicaciones y n adiciones para evaluar un arbitrario polinomio de enésimo

grado.

El método de Horner, también conocido como método de Doble División Sintética, es una

variante del método de Newton, sólo es aplicable a polinomios, por ello debemos tener

conocimientos previos de la teoría de los polinomios.

Relación entre las raíces y los coeficientes de P(x).

Sea 𝑃(𝑥 ) = 𝑎𝑛 𝑥 𝑛 + 𝑎𝑛−1 𝑥 𝑛−1 + 𝑎𝑛−2 𝑥 𝑛−2 + ⋯ + 𝑎1 𝑥 + 𝑎0

Si dividimos P(x) entre el término (x – 𝑥0 ), tenemos:

𝑃 (𝑥 )
= 𝑄 (𝑥 ) + 𝑏0
(x – 𝑥0 )

Donde b0 = 0, si x0 es una raíz de P(x) y Q(x) es un polinomio de grado n-1

Encontremos una relación entre los coeficientes a’s y los coeficientes b’s

Por definición: 𝑄 (𝑥 ) = 𝑏𝑛 𝑥 𝑛−1 + 𝑏𝑛−1 𝑥 𝑛−2 + 𝑏𝑛−2 𝑥 𝑛−3 + ⋯ + 𝑏2 𝑥 + 𝑏1

(x – 𝑥0 ) 𝑄(𝑥 ) + 𝑏0 = (x – x0)( 𝑏𝑛 𝑥 𝑛−1 + 𝑏𝑛−1 𝑥 𝑛−2 + 𝑏𝑛−2 𝑥 𝑛−3 + ⋯ + 𝑏2 𝑥 + 𝑏1 ) + 𝑏0

(x – 𝑥0 ) 𝑄(𝑥 ) + 𝑏0 = ( 𝑏𝑛 𝑥 𝑛 + 𝑏𝑛−1 𝑥 𝑛−1 + 𝑏𝑛−2 𝑥 𝑛−2 + ⋯ + 𝑏2 𝑥 2 + 𝑏1 𝑥) −

(𝑏𝑛 𝑥 𝑛−1 𝑥0 + 𝑏𝑛−1 𝑥 𝑛−2 𝑥0 + 𝑏𝑛−2 𝑥 𝑛−3 𝑥0 + ⋯ + 𝑏2 𝑥 1 𝑥0 + 𝑏1 𝑥0 ) + 𝑏0


(x – 𝑥0 )Q(𝑥 ) + 𝑏0 = 𝑏𝑛 𝑥 𝑛 + (𝑏𝑛−1 − 𝑏𝑛 𝑥0 )𝑥 𝑛−1 + (𝑏𝑛−2 − 𝑏𝑛−1 𝑥0 )𝑥 𝑛−2 + … + (𝑏1 −
𝑏2 𝑥0 )𝑥 +(𝑏0 + 𝑏1 𝑥0 )

P(x)=𝑏𝑛 𝑥 𝑛 +(𝑏𝑛−1 − 𝑏𝑛 𝑥0 ) 𝑥 𝑛−1 ++(𝑏𝑛−2 − 𝑏𝑛−1 𝑥0 )𝑥 𝑛−2 +…+(𝑏1 − 𝑏2 𝑥0 )𝑥 + (𝑏0 − 𝑏1 𝑥0 )

𝑎𝑛 = 𝑏𝑛 𝑏𝑛 = 𝑎𝑛
𝑎𝑛−1 = 𝑏𝑛−1 − 𝑏𝑛 𝑥0 𝑏𝑛−1 = 𝑎𝑛−1 + 𝑏𝑛 𝑥0
𝑎𝑛−2 = 𝑏𝑛−2 − 𝑏𝑛−1 𝑥0 𝑏𝑛−2 = 𝑎𝑛−2 + 𝑏𝑛−1 𝑥0
23

como los coeficientes de a son conocidos

𝑎1 = 𝑏1 − 𝑏2 𝑥0 𝑏1 = 𝑎1 + 𝑏2 𝑥0
𝑎0 = 𝑏0 − 𝑏1 𝑥0 𝑏0 = 𝑎0 + 𝑏1 𝑥0

De manera Recursiva.

𝑏𝑛 = 𝑎𝑛

𝑏𝑘 = 𝑎𝑘 + 𝑏𝑘+1 𝑥0 con 𝑘 = 0,1,2 … . , (𝑛 − 1)

𝑃(𝑥 ) = (𝑥 − 𝑥0 )𝑄(𝑥 ) + 𝑏0

𝑃 (𝑥 ) = (𝑥 − 𝑥0 ) 𝑄 (𝑥 ) + 𝑏0 = 𝑏0

Derivando P(x):

P′(x) = (x – 𝑥0 )𝑄 ′(𝑥 ) + 𝑄(𝑥)

Q(x) = (x – 𝑥0 )𝑅(𝑥 ) + 𝑏0 ’

Los coeficientes primados de R(x) tienen la forma

𝑏’𝑛 = 𝑏𝑛+1

𝑏𝑘 = 𝑏𝑘_1 + 𝑏’𝑘+1 𝑥0 con 𝑘 = 0,1,2 … . , (𝑛 − 1)

P′(x) = (x – 𝑥0 )𝑄 ′(𝑥 ) + 𝑄(𝑥)

P′(x) = (x – 𝑥0 )𝑄 ′(𝑥 ) + (x – 𝑥0 ) 𝑅 (𝑥 ) + 𝑏0 ’

P′(x) = (x – 𝑥0 )𝑄 ′ (𝑥 ) + (x – 𝑥0 ) 𝑅 (𝑥 ) + 𝑏0 ’ = 𝑏’0
𝑃 (𝑥 ) 𝑏
𝑥𝑛+1 = 𝑥𝑛 − 𝑃’(𝑥) = 𝑥𝑛 − 𝑏 0
’0

c) Área de Aplicación del Método

El algoritmo de Horner se usa a menudo para convertir entre distintos sistemas

numéricos posicionales — en cuyo caso x es la base del sistema numérico, y los


24

coeficientes 𝑎𝑖 son los dígitos de la representación del número dado en la base x — y puede

usarse también si x es una matriz, en cuyo caso la carga computacional se reduce aún más.

El algoritmo de Horner también puede considerarse como un algoritmo rápido para dividir

un polinomio por otro polinomio lineal (Padilla, 2014)

▪ Ventajas y desventajas

En el método de Horner se pueden resolver las divisiones de cualquier grado en el

divisor esta es una ventaja sobre el método de Ruffini ya que en este se emplea cuando el

divisor es de primer grado (Desconocido, La División algebraica por el método de Horner,

2013)

Los autores mencionan que por este método se pueden obtener raíces tanto

conmensurables como inconmensurable. Las raíces van evolucionando, por: primero la

parte entera (si la hay) y luego la parte decimal, hasta que la raíz termine si esta es

conmensurable, o llegue a cualquier número de plazas requerida si es inconmensurable.

El proceso es similar al proceso de extracción de raíces cuadradas o cubicas, las

cuales son casos particulares de la solución general del presento método justificante de

ecuaciones cuadráticas o cubicas (Sierra, 2010)

El principio principal que involucra el método de Horner es la disminución sucesiva

de las raíces dada por cantidades conocidas, esto es por el algoritmo de. Incrementar o

disminuir las raíces de una cantidad dada. La gran ventaja de este método es que las

transformaciones sucesivas son exhibidas en una forma aritmética compacta, y la raíz

obtenida por un proceso continuo exacto a cualquier número de decimales requeridos

Se ha visto que el método de aproximación dado por newton falla cuando las raíces

son casi iguales tales casos representan mucha más dificultad tanto para analizarlas como
25

para encontrarse solución. Con el método de Horner esto es posible, con más eficacia que

la necesaria en otros casos para encontrar la solución a tales ecuaciones. (Sierra, 2010)

Al realizar los cálculos para aproximar raíces por el método de Horner algunas

ecuaciones terminan en una etapa corta, cuando los cálculos son de gran longitud, sería

necesario encontrar las cifras sucesivas por sustitución y la labor del proceso podría ser

muy grande. Esto sin embargo no es necesario y una de las Ventajas más practicas del

método de Horner es que después de la segunda o tercera (algunas veces después de la

primera) cifra de la raíz encontrada, la ecuación transformada sugiere ella misma por mera

inspección la próxima figura de la raíz. El principio de esta simplificación se denomina

Principio del Trial-Divisor (Sierra, 2010).

d) Ejemplos

1. Hallar las raíces del Polinomio: P(x)=2𝑥 4 + 4𝑥 3 +2𝑥 2 − 2𝑥 − 24 con un error menor a

0.001.

Solución:

Sean: 𝑎4 = 2 𝑎2 = 2
𝑎0 = −24
𝑎3 = 4 𝑎1 = −1
Obtenemos los factores primos del término independiente.

24 2 3 3
12 2 1
6 2

Tomemos: 𝑥0 = 2

Entonces,

𝑏4 = 𝑎4 = 2
26

𝑏3 = 𝑎3 + 𝑏4 𝑥0 = 4 + 2(2) = 8

𝑏2 = 𝑎2 + 𝑏3 𝑥0 = 2 + 8(2) = 18
𝑏1 = 𝑎1 + 𝑏2 𝑥0 = −2 + 18(2) = 34

𝑏0 = 𝑎0 + 𝑏1 𝑥0 = −24 + 2(2) = 44

Ahora los coeficientes primados de R(x):

𝑏’3 = 𝑏4 = 2
𝑏’2 = 𝑏3 + 𝑏’3 𝑥0 = 8 + 2(2) = 12

𝑏’1 = 𝑏2 + 𝑏’2 𝑥0 = 18 + 12(2) = 42

𝑏’0 = 𝑏1 + 𝑏’1 𝑥0 = 34 + 42(2) = 118

Ahora calculamos 𝑥1 :

𝑏0 44
𝑥𝑛+1 = 𝑥𝑛 − =2− = 1.6271
𝑏’0 118

[𝑥𝑛−1 − 𝑥𝑛 ] = [1.6271 − 2] = 0.3729

Por facilidad, podemos construir la siguiente tabla:

n 𝒃𝟒 𝒃𝟑 𝒃𝟐 𝒃𝟏 𝒃𝟎 𝒃’𝟑 𝒃’𝟐 𝒃’𝟏 𝒃’𝟎 𝒙𝒏+𝟏 Error


1 2 8 18 34 44 2 12 42 118 1.6721 0.3729

2 2 7.2542 13.8035 20.4599 9.2907 2 10.5085 30.902 70.7412 1.4958 0.1313

3 2 6.9916 12.4579 16.6343 0.88813 2 9.9831 27.3905 57.6046 1.4805 0.0153

4 2 6.9610 12.3056 16.2183 0.0109 2 9.9219 26.9949 56.1838 1.4803 0.0002

Encontrando la primera raíz en 𝑥1 = 1.480 ± 0.001.

El polinomio Q(x) = 2x3 + 6.961x2 + 12.301x + 16.218

Aplicando el método al polinomio Q(x)

n 𝒃𝟑 𝒃𝟐 𝒃𝟏 𝒃𝟎 𝒃’𝟐 𝒃’𝟏 𝒃’𝟎 𝒙𝒏+𝟏 Error


1 2 6.9606 12.3037 16.213 2 6.9607 12.3037 -1.3177 1.3177
2 2 4.3251 6.6043 7.5103 2 1.6896 4.3778 -3.0333 1.7156
27

3 2 0.8941 9.5917 -12.8811 2 -5.1724 25.2811 -2.5237 0.5096


4 2 1.9131 7.4755 -2.6533 2 -3.1344 15.3858 -2.3513 0.1724
5 2 2.258 6.9945 -0.233 2 -2.4446 12.7424 -2.333 0.0183
6 2 2.2946 6.9504 -0.0024 2 -2.3714 12.4833 -2.3328 0.0002

Encontrando la segunda raíz en 𝑥2 = -2.333 ± 0.001

▪ Ejercicio tomado de esquema de Horner para calcular valores de polinomios

(Burden, Faires, & Burden, 2017)

2. En el esquema de Horner Mostrado


1 3 a 1 b C
m 9 D
2 E F
g H
N -2 P 4 -3
3+𝑎+𝑏+𝑐
Determinar el valor de. 𝑛+𝑝−2 + 𝑚. Para la resolucion de el ejerccio se desarrolla como division

sintetica para encontrar las variables de cada uno.

Solución:

3 𝑎+9
𝑛 = (1), n=3 𝑚 = (3𝑥3) = 9 m=3, 𝑑 = (3𝑥2) = 6. = −2 𝑎 = −11
1

𝑒 = (−2𝑥3) = −6. 𝑓 = (−2𝑥2) = −4

𝑝 = 1 + 𝑑 + 𝑒 = 1. 𝐺 = (1𝑥3) = 3. ℎ = (1𝑥2) = 2. Y b-4+3=4 b= 5

c+2=. -3., c= -5

El cuadro quedaría de la siguiente manera:

1 3 -11 1 5 -5
3 9 6
2 -6 -4
3 2
3 -2 1 4 -3
28

3−2+5−5
Por lo tanto + 3. = -1
3+1−2

e) Error de Aproximación

Surgen dos preguntas: ¿Cuándo nos detenemos?

[𝑥𝑛−1 − 𝑥𝑛 ] < 𝜀

¿Como se elige la aproximación inicial 𝑥0 ?

Cualquiera de los factores primos del término independiente es buena aproximación inicial.

(Gonzales, 2018)

La evaluación usando la forma monomial del polinomio de grado-n requiere al

menos n sumas y (𝑛2 + 𝑛)/2 multiplicaciones, si las potencias se calculan mediante la repetición

de multiplicaciones. El algoritmo de Horner sólo requiere n sumas y n multiplicaciones.

(Minimizar el número de multiplicaciones es lo más deseable porque necesitan mucha carga

computacional y son inestables comparadas con la suma).

Se ha demostrado que el algoritmo de Horner es óptimo, de modo que cualquier algoritmo que

se use para evaluar un polinomio requerirá como mínimo el mismo número de operaciones. El

hecho de que el número de operaciones requeridas es mínimo fue demostrado por Alexander

Ostrowski en 1954, y que el número de multiplicaciones es mínimo por Víctor Pan en 1966.

Cuando x es una matriz, el algoritmo de Horner no es óptimo (Padilla, 2014)


29

II. Sistemas de Ecuaciones Lineales

A. Método de Jacobi

a) Detalles Históricos

Carl Gustav Jacob Jacobi (1804-1851) fue reconocido en primer lugar por su trabajo en el área

de la teoría de números y funciones elípticas, pero sus intereses matemáticos y capacidades eran

muy amplios. El método iterativo de Jacobi es un método clásico que data de finales del siglo

XVIII. Las técnicas iterativas casi nunca se usan para resolver sistemas lineales de dimensiones

pequeñas ya que el tiempo requerido para suficiente precisión excede el requerido para las técnicas

directas, como la eliminación gaussiana. Para grandes sistemas con un alto porcentaje de entradas

0, sin embargo, estas técnicas son eficientes en términos tanto de almacenamiento como de cálculo

computacional. Los sistemas de este tipo surgen con frecuencia en análisis de circuitos y en la

solución numérica de problemas de valor en la frontera y ecuaciones diferenciales parciales.

(Burden, Faires, & Burden, 2017, pág. 334)

b) Planteamiento del Método

El método iterativo de Jacobi se obtiene al resolver la i-ésima ecuación en 𝐴𝑥 = 𝑏 para xi para


obtener (siempre que 𝑎𝑖𝑖 ≠ 0)
𝑛
𝑎𝑖𝑗 𝑥𝑗 𝑏𝑖
𝑥𝑖 = ∑ (− )+ , 𝑝𝑎𝑟𝑎 𝑖 = 1,2, … , 𝑛.
𝑎𝑖𝑖 𝑎𝑖𝑖
𝑗=1
𝑗≠𝑖

(𝑘)
Para cada 𝑘 ≥ 1, genere los componentes 𝑥𝑖 de 𝒙(𝑘) a partir de los componentes de 𝒙(𝑘−1)
por medio de

𝑛
(𝑘 ) 1 (𝑘−1
𝑥𝑖 = ∑(−𝑎𝑖𝑗 𝑥𝑗 + 𝑏𝑖 ) , 𝑝𝑎𝑟𝑎 𝑖 = 1,2, … 𝑛.
𝑎𝑖𝑖
𝑗=1
[ 𝑗≠𝑖 ]
30

En general, las técnicas iterativas para resolver sistemas lineales implican un proceso que
convierte el sistema 𝐴𝒙 = 𝒃 en un sistema equivalente de la forma 𝒙 = 𝑇𝒙(𝑘−1) + 𝒄 para una
matriz fija T y vector c. Después de seleccionar el vector inicial 𝒙(0), la sucesión de los vectores
aproximados se genera al calcular

𝒙(𝑘) = 𝑇𝒙(𝑘−1) + 𝒄,

Para cada 𝑘 = 1,2,3, . . . , 𝑛. Esto debería recordar la iteración de punto fijo.

El método de Jacobi se puede escribir en la forma 𝒙(𝑘) = 𝑇𝒙(𝑘−1) + 𝒄 al dividir A en sus


partes diagonal o fuera de la diagonal. Para observar esto, permitía que D sea la matriz diagonal
cuyas entradas diagonales sean las de A, -L es la parte estrictamente triangular inferior de A y –U
es la parte estrictamente superior de A. Con esta notación,

𝑎11 𝑎12 ⋯ 𝑎1𝑛


𝑎21 𝑎22 … 𝑎2𝑛
𝐴=[ ⋮ ]
⋮ ⋮
𝑎𝑛1 𝑎𝑛2 ⋯ 𝑎𝑛𝑛

Se divide en:

𝑎11 0 ⋯ 0 0 ⋯ ⋯ 0 0 −𝑎12 ⋯ −𝑎1𝑛


0 𝑎22 ⋱ ⋮ −𝑎21 ⋱ ⋮ ⋮ ⋱ ⋱ ⋮
𝐴=[ ]−[ ]−[ ]
⋮ ⋱ ⋱ 0 ⋮ ⋱ ⋱ ⋮ ⋮ ⋱ −𝑎𝑛−1,𝑛
0 … 0 𝑎𝑛𝑛 −𝑎𝑛1 ⋯ −𝑎𝑛.𝑛−1 0 0 ⋯ ⋯ 0

= 𝐷 − 𝐿 − 𝑈.

Entonces, la ecuación 𝐴𝒙 = 𝒃, o (𝐷 − 𝐿 − 𝑈)𝒙 = 𝒃, se transforma en

𝐷𝒙 = (𝐿 + 𝑈)𝒙 + 𝒃,

y, si existe 𝐷 −1, es decir, si 𝑎𝑖𝑖 ≠ 0 para cada i, entonces

𝒙 = 𝐷 −1 (𝐿 + 𝑈)𝒙 + 𝐷 −1𝒃, 𝑘 = 1,2, …

Esto resulta en forma matricial de la técnica iterativa de Jacobi:

𝒙(𝑘) = 𝐷 −1 (𝐿 + 𝑈)𝒙(𝑘−1) + 𝐷 −1 𝒃, 𝑘 = 1,2, ….


31

Al introducir la notación 𝑇𝑗 = 𝐷 −1 (𝐿 + 𝑈) 𝑦 𝒄𝑗 = 𝐷 −1𝒃 obtenemos la forma de la técnica de


Jacobi

𝒙(𝑘) = 𝑇𝑗 𝒙(𝑘−1) + 𝒄𝑗 .

c) Área de Aplicación del Método

Un elemento en contra que tienen los métodos Jacobi sobre los métodos directos es que
calculan aproximaciones a la solución. Los métodos iterativos se usan cuando no se conoce un
método para obtener la solución de forma exacta. También se utilizan cuando el método para
determinar la solución exacta requiere mucho tiempo de cálculo, cuando una respuesta aproximada
es adecuada y cuando el número de iteraciones es reducido.

En comparación con respecto sobre los métodos de Gauss Simple, estos pueden presentar
errores de redondeo, es decir, en el uso de cifras significativas el error en los resultados puede
reducir o aumentar. El problema de los errores de redondeo llega a volverse particularmente
importante cuando se trata de resolver un gran número de ecuaciones. Esto se debe al hecho que
cada resultado depende del anterior.

d) Ejemplos

1. El sistema lineal 𝐴𝒙 = 𝒃 dado por:

𝐸1 : 10𝑥1 − 𝑥2 + 2𝑥3 = 6,
𝐸2 : −𝑥1 + 11𝑥2 − 𝑥3 + 3𝑥4 = 25,
𝐸3 : 2𝑥1 − 𝑥2 + 10𝑥3 − 𝑥4 = −11,
𝐸4 : 3𝑥2 − 𝑥3 + 8𝑥4 = 15,
Tiene la solución única 𝒙 = (1, 2, −1, 1)𝑡 . Utilice la técnica iterativa de Jacobi para
encontrar aproximaciones 𝒙(𝑘) para x, que inicia con 𝒙(0) = (0, 0, 0, 0)𝑡 hasta

‖𝒙(𝑘) − 𝒙(𝑘−1) ‖∞
< 10−3 .
‖ 𝒙 (𝑘 ) ‖ ∞

Solución:
32

Primero resolvemos la ecuación Ei para xi, para cada i= 1,2,3,4, a fin de obtener:
1 1 3
𝑥1 = 𝑥 − 𝑥 +5
10 2 5 3
1 1 3 25
𝑥2 = 𝑥 + 11 𝑥3 − 𝑥 + 11
11 1 11 4
1 1 1 11
𝑥3 = − 𝑥1 + 𝑥 + 𝑥 −
5 10 2 10 4 10
3 1 15
𝑥4 = − 8 𝑥2 + 8 𝑥3 + 8

A partir de la aproximación inicial 𝒙(0) = (0, 0, 0, 0)𝑡 tenemos 𝒙(1) provista por:

( ) 1 (0) 1 ( 0) 3
𝑥11 = 𝑥 − 𝑥 + = 0.6000,
10 2 5 3 5
( ) 1 (0 ) 1 ( ) 3 ( 0) 25
𝑥21 = 𝑥 + 𝑥30 − 𝑥 + = 2.2727,
11 1 11 11 4 11
( ) 1 ( ) 1 (0) 1 ( ) 11
𝑥31 = − 𝑥10 + 𝑥 + 𝑥40 − = −1.1000,
5 10 2 10 10
( ) 3 ( ) 1 ( 0) 15
𝑥41 = − 𝑥20 + 𝑥 + = 1.8750,
8 8 3 8

( ) ( ) ( ) ( ) 𝑡
Las iteraciones adicionales, 𝒙(𝑘) = (𝑥1𝑘 , 𝑥2𝑘 , 𝑥3𝑘 , 𝑥4𝑘 ) , se generan de manera similar y se

presentan en la taba posterior:

k 0 1 2 3 4 5 6 7 8 9 10
( )
𝒙𝟏𝒌 0.000 0.6000 1.0473 0.9326 1.0152 0.9890 1.0032 0.9981 1.0006 0.9997 1.0001
( )
𝒙𝟐𝒌 0.0000 2.2727 1.7159 2.053 1.9537 2.0114 1.9922 2.0023 1.9987 2.0004 1.9998
(𝒌) 0.0000 -1.1000 -0.8052 -1.0493 -0.9681 -1.0103 -0.9945 -1.0020 -0.9990 -1.0004 -0.9998
𝒙𝟑
( )
𝒙𝟒𝒌 0.0000 1.8750 0.8852 1.1309 0.9739 1.0214 0.9944 1.0036 0.9989 1.0006 0.9998

Nos detuvimos después de 10 iteraciones porque

‖𝒙(10) − 𝒙(9) ‖∞ 8.0 × 10−4


= < 10−3 .
‖𝑥 (10) ‖∞ 1.9998

De hecho, ‖𝒙(10) − 𝒙‖∞ = 0.0002.

2. Resolvemos el sistema:
33

7𝑥1 − 2𝑥2 + 𝑥3 = 17
𝑥1 − 9𝑥2 + 3𝑥3 − 𝑥4 = 13
2𝑥1 +10𝑥3 + 𝑥4 = 15
𝑥1 − 𝑥2 + 𝑥3 + 6𝑥4 = 10

Mediante el método de Jacobi, utilizando una tolerancia ∈= 10−13 , un numero máximo de

30 iteraciones y el vector inicial 𝑥 (0) = 0 = (0, 0, 0, 0)𝑇 .

Solución:

En primer lugar, reescribimos las ecuaciones anteriores de la forma:

1
𝑥1 = (17 + 2𝑥2 − 𝑥3 )
7
1
𝑥2 = (−13 + 𝑥1 + 3𝑥3 − 𝑥4 )
9
1
𝑥3 = (15 − 2𝑥1 − 𝑥4 )
10
1
𝑥4 = (10 − 𝑥1 + 𝑥2 − 𝑥3 )
6

Que dan el siguiente método iterativo de Jacobi:

(𝑘+1) 1 (𝑘 ) (𝑘 )
𝑥1 = (17 + 2𝑥2 − 𝑥3 )
7
(𝑘+2) 1 (𝑘 ) (𝑘 ) (𝑘 )
𝑥2 = (−13 + 𝑥1 + 3𝑥3 − 𝑥4 )
9
( ) 1 ( ) ( )
𝑥3𝑘+1 = (15 − 2𝑥1𝑘 − 𝑥4𝑘 )
10
( ) 1 ( ) ( ) ( )
𝑥4𝑘+1 = (10 − 𝑥1𝑘 + 𝑥2𝑘 − 𝑥3𝑘 )
6

Sustituyendo 𝒙(0) = (0, 0, 0, 0)𝑇 en el lado derecho de cada una de las ecuaciones obtenemos
34

( ) 1
𝑥1𝑘+1 = (17 + 2(0) − 0) = 2.428571429
7
( ) 1
𝑥2𝑘+2 = (−13 + 0 + 3(0) − 0) = −1.444444444
9
( ) 1
𝑥3𝑘+1 = (15 − 2(0) − 0) = 1.5
10
( ) 1
𝑥4𝑘+1 = (10 − 0 + 0 − 0) = 1.666666667.
6

Luego, 𝑥 (1) = (2.428571429, −1.444444444,1.5,1.666666667)𝑇 . Procediendo de la misma

manera, véase [16], se genera una sucesión convergente a

𝒙(9) = (2.000127203, −1.000100162, 1.000118096, 1.000162172)𝑇

Con una tolerancia de 10−3 y utilizando la norma del máximo ‖𝒙‖∞ = max |𝑥𝑖 |.
𝑖=1,2,3,4

e) Error de Aproximación

Las iteraciones continúan hasta que se cumple la tolerancia a errores tol. ¿Qué criterio usamos
para determinar que el algoritmo ha cumplido con la tolerancia requerida? Una elección obvia es
‖𝐴𝑥𝑖 − 𝑏‖2 > 𝑡𝑜𝑙. Si, ‖𝐴−1‖2 es grande, ‖𝑥 − 𝑥𝑖 ‖ puede ser grande también. La mejor
‖𝑏−𝑥𝑖 ‖2
alternativa es aplicar una estimación de error relativo y finalizar cuando ‖𝑏‖
≤ 𝑡𝑜𝑙.

B. Método del Gradiente Conjugado

a) Detalles Históricos

El método de gradiente conjugado de Hestenes y Stiefel (HS) se desarrolló originalmente como


un método directo diseñado para resolver un sistema lineal n x n definido positivo. Como método
directo, en general es inferior a la eliminación gaussiana con pivoteo. Ambos métodos requieren
n pasos para determinar una solución y los pasos para el método de gradiente conjugado son más
costosos computacionalmente que los de eliminación gaussiana.
35

Sin embargo, el método de gradiente conjugado es útil cuando se usa como método de

aproximación iterativa para resolver los sistemas dispersos grandes con entradas diferentes a cero

que se presentan en patrones predecibles.

b) Planteamiento del Método

Teorema: Para cualquier vector x, y y z cualquier número real α, tenemos

a) 〈𝒙, 𝒚〉 = 〈𝒚, 𝒙〉;


b) 〈𝒙 + 𝒛, 𝒚〉 = 〈𝒙, 𝒚〉 + 〈𝒛, 𝒚〉;
c) 〈𝒙, 𝒙 〉 = 0 𝑠𝑖 𝑦 𝑠𝑜𝑙𝑜 𝑠𝑖 𝒙 = 𝟎.
d) 〈∝ 𝒙, 𝒚〉 = 〈𝒙, ∝ 𝒚〉 =∝ 〈𝒙, 𝒚〉;
e) 〈𝒙, 𝒙〉 ≥ 0;

Cuando A es definida positiva, 〈𝒙, 𝐴𝒙〉 = 𝒙𝑡 𝐴𝒙 > 0 a menos que 𝒙 = 0. Además, puesto que A es
simétrica, tenemos 𝒙𝑡 𝐴𝒚 = 𝒙𝑡 𝐴𝑡 𝒚 = (𝐴𝒙)𝑡 𝒚, por lo que, además los resultados en el teorema 1,
tenemos, para cada x y y

〈𝒙, 𝐴𝒚〉 = (𝐴𝒙)𝑡 𝒚 = 𝒙𝑡 𝐴𝑡 𝒚 = 𝒙𝑡 𝐴𝒚 = 〈𝐴𝒙, 𝒚〉.

El siguiente resultado es una herramienta básica en el desarrollo del método de gradiente


conjugado.

Teorema: El vector 𝒙∗ es una solución para el sistema lineal definido positivo 𝐴𝒙 = 𝒃 sí y solo
si 𝒙∗ produce el valor mínimo de

𝑔(𝒙) = 〈𝒙, 𝐴𝒙〉 − 2〈𝒙, 𝒃〉.


Teorema: Sea {𝒗(1) , … , 𝒗(𝑛)} un conjunto de vectores diferentes a cero ortogonal a A
relacionados con la matriz positiva A y sea 𝒙(0) arbitrario. Defina
〈𝒗(𝑘) , 𝒃 − 𝐴𝒙(𝑘−1) 〉
𝑡𝑘 = 𝑦 𝒙(𝑘) = 𝒙(𝑘−1) + 𝑡𝑘 𝒗(𝑘) ,
〈𝒗(𝑘) , 𝐴𝒗(𝑘) 〉
Para 𝑘 = 1, 2, … , 𝑛. Entonces, asumiendo la aritmética exacta, 𝐴𝒙(𝑛) = 𝒃.
36

c) Área de Aplicación del Método

Este método pertenece a una clase de métodos iterativos conocida con el nombre métodos de

minimización cuyo nombre se debe a que resuelve simultáneamente un conjunto de n ecuaciones

equivalente a encontrar el mínimo de una función error definida sobre un espacio n-dimensional

en cada paso de este método se usa un conjunto de valores variables para generar un nuevo

conjunto que proporciona un valor menor en la función error

En el área de la química especialmente en la cristalografía se usan bastantes métodos iterativos

por ejemplo en los métodos de mecánica molecular la evaluación analítica de las derivadas

segundas es rápida de forma que suponiendo que la molécula no sea grande se puede usar el

método de newton en el que el valor de la Hessiana se estima en lugar de calcularlo con exactitud,

para moléculas muy grandes se usa a menudo este método descrito anteriormente, cuando el

tamaño de la molécula impide el uso de los métodos anteriores la alternativa es usar métodos de

gradiente ya que con estos se elige cada nueva etapa una dirección usada en las etapas previas.

La principal ventaja de este método en esta aplicación es que en los casos de que la matriz sea

simétrica y definida positiva este suele requerir un menor número de iteraciones para encontrar la

solución del sistema, una desventaja sería el hecho de que necesita almacenar vectores adicionales

y que cada iteración podría consumir más tiempo de cálculo debido al mayor número de

operaciones matriciales.

Otra ventaja seria que, un método basado en el subespacio de Krylov no accede directamente

a los elementos de la matriz, si no que realiza la multiplicación matriz-vector para obtener vectores

que son proyecciones en un subespacio de Krylov de dimensión inferior donde se resuelve un

problema correspondiente. Este resultado se convierte luego en una solución del problema original
37

No requiere una factorización de la matriz, ni es dependiente de parámetros definidos por el

usuario, como sucede con otros métodos iterativos.

d) Ejemplos

1. El sistema lineal

4𝑥1 + 3𝑥2 = 24,


3𝑥1 + 4𝑥2 − 𝑥3 = 30,
−𝑥2 + 4𝑥3 = −24,

Tiene la solución exacta 𝒙∗ = (3, 4, −5)𝑡 .

Solución:

4 3 0
𝐴 = [3 4 −1]
0 −1 4

Del sistema es definida positiva. Si 𝒗(1) = (1,0,0)𝑡 , 𝒗(2) = (−3⁄4 , 1,0)𝑡 , y 𝒗(3) =

(−3⁄7 , 4⁄7 , 1)𝑡 . Entonces

3
4 3 0 −
〈𝒗(1) , 𝐴𝒗(2) 〉 = 𝒗(1)𝑡 𝐴𝒗(2) = (1,0,0) [3 4 −1] [ 4] = 0,
1
0 −1 4
0

3
4 3 0 −
4
〈𝒗(1), 𝐴𝒗(3) 〉 = (1,0,0) [3 4 −1] 4 = 0,
0 −1 4 7
[ 0 ]
y
3

3 4 3 0 7
〈𝒗(2), 𝐴𝒗(3) 〉 = (− , 1,0) [3 4 −1] 4 = 0,
4
0 −1 4 7
[ 0 ]

Por lo tanto, {𝒗(1) , 𝒗(2) , 𝒗(3)} es un conjunto ortogonal de A.


38

Al aplicar las iteraciones descritas en el teorema para A con 𝒙(0) = (0,0,0)𝑡 y

𝒃 = (24,30, −24)𝑡 obtenemos

𝒓(0) = 𝒃 − 𝐴𝒙(0) = 𝒃 = (24,30, −24)𝑡

por lo que

24
〈𝒗(1), 𝒓(0) 〉 = 𝒗(1)𝑡 𝒓(0) = 24, 〈𝒗(1) , 𝐴𝒗(1) 〉 = 4, 𝑦 𝑡0 = = 6.
4

Por lo tanto,

𝒙(1) = 𝒙(0) + 𝑡0 𝒗(1) = (0,0,0)𝑡 + 6(1,0,0)𝑡 = (6,0,0)𝑡 .

Al continuar, tenemos

( 1) (1)
〈𝒗(2), 𝒓(0) 〉 12 48
𝒓 = 𝒃 − 𝐴𝒙 )𝑡
= (0,12, −24 , 𝑡1 = (2) ( ) = = ,
〈𝒗 , 𝐴𝒗 〉 7⁄4
2 7
𝑡 𝑡
48 3 6 48
𝒙(2) = 𝒙(1) + 𝑡1 𝒗(2) = (6,0,0)𝑡 + (− , 1,0) = ( , , 0) ,
7 4 7 7
120 〈𝒗(3), 𝒓(2) 〉 − 120⁄7
𝒓(2) = 𝒃 − 𝐴𝒙(2) = (0,0, − ), 𝑡2 = ( ) ( ) = = −5,
7 〈𝒗 3 , 𝐴𝒗 3 〉 24⁄7
y
𝑡 𝑡
( 3) ( 2) ( 3) 6 48 3 4
𝒙 =𝒙 + 𝑡1 𝒗 = ( , , 0) + (−5) (− , , 1) = (3,4, −5)𝑡 ,
7 7 7 7
Puesto que aplicamos la técnica n=3 veces, esta debe ser la solución real.

2. El sistema lineal 𝐴𝒙 = 𝒃 dado por

4𝑥1 + 3𝑥2 = 24,


3𝑥1 + 4𝑥2 − 𝑥3 = 30,
−𝑥2 + 4𝑥3 = −24,
39

Tiene la solución (3, 4, −5)𝑡 . Utilice el método de gradiente conjugado con 𝒙(0) =

(0,0,0)𝑡 y sin precondicionamiento, es decir, con 𝐶 = 𝐶 −1 = 𝐼, para aproximar la solución.

Solución:

Para el método de gradiente conjugado iniciamos con

𝒓(0) = 𝒃 − 𝐴𝒙(0) = 𝒃 = (24,30, −24)𝑡 ;

𝒘 = 𝐶 −1 𝒓(0) = (24,30, −24)𝑡 ;

𝒗(1) = 𝐶 −1𝒘 = (24,30, −24)𝑡 ;

∝= 〈𝒘, 𝒘〉 = 2052.

Iniciamos con la primera iteración con k=1. Entonces,

𝒖 = 𝐴𝒗(1) = (186.0,216.0, −126.0)𝑡 ;



𝑡1 = = 0.1469072165;
〈 𝒗( 1 ) , 𝒖 〉

𝒙(1) = 𝒙(0) + 𝑡1 𝒗(1) = (3.52577319,4.407216945, −3.525773196)𝑡 ;

𝒓(1) = 𝒓(0) − 𝑡1 𝒖 = (−3.32474227, −1.73195876, −5.48969072)𝑡 ;

𝒘 = 𝐶 −1𝒓(1) = 𝒓(1) ;

𝛽 = 〈𝒘, 𝒘〉 = 443.19029651;
𝛽
𝑠1 = = 0.02153523222;

𝒗(2) = 𝐶 −1 𝒘 + 𝑠1 𝒗(1) = (−2.807896697, −1.085901793, −6.006536293)𝑡 .

Establezca

∝= 𝛽 = 44.19029651.

Para la segunda iteración, tenemos

𝒖 = 𝐴𝒗(2) = (−14.4829217, −6.760760967, −22.94024338)𝑡 ;

𝑡2 = 0.2378157558;
40

𝒙(2) = (2.858011121,4.148971939, −4.954222164)𝑡 ;

𝒓(2) = (0.121039698, −0.124143281, −0.034139402)𝑡 ;

𝒘 = 𝐶 −𝟏 𝒓(2) = 𝒓(2) ;

𝛽 = 0.03122766148;

𝑠2 = 0.0007066331363;

𝒗(3) = (0.1190554504, −0.1249106480, −0.03838400086)𝑡 .

Determina ∝= 𝛽 = 0.03122766148.

La tercera iteración da

𝒖 = 𝐴𝒗(3) = (0.1014898976, −0.1040922099, −0.0286253554)𝑡 ;

𝑡3 = 1.192628008;

𝒙(3) = (2.999999998,4.000000002, −4.999999998)𝑡 ;

𝒓(3) = (0.36 × 10−8 , 0.39 × 10−8 , −0.141 × 10−8 )𝑡 .

Puesto que 𝒙(3) es aproximadamente la solución exacta, el error de redondeo no afecta

significativamente el resultado.

e) Error de Aproximación

Esperamos que este método tenga un error vinculado que depende de

𝑘
1
√(𝐾 )𝑝 −1
𝐴
1

( (𝐾𝐴)𝑝 + 1)

Este enfoque también sugiere un error vinculado a una aproximación no iterativa a la solución
𝑝=1
de 𝐴𝒙 = 𝒃 dada una secuencia de vectores {𝐴𝑛⁄𝑝 𝑏}𝑛=1 nosotros podemos construir el polinomio

de mejor ajuste usando el procedimiento del método del gradiente conjugado. Esta aproximación
tendrá un error vinculado asintóticamente con 𝑘 = 𝑝 − 1. (Burden, Faires, & Burden, 2017)
41

III. Derivación Numérica

a) Detalles Históricos

El filósofo aléate Zenón de Elea consideró el problema de sumar una serie infinita para lograr

un resultado finito, pero lo descartó por considerarlo imposible: el resultado fueron las paradojas

de Zenón. Posteriormente, Aristóteles propuso una resolución filosófica a la paradoja, pero el

contenido matemático de esta no quedo resuelto hasta que lo retomaron Demócrito y después

Arquímedes. Fue a través del método exhaustivo de Arquímedes que un número infinito de

subdivisiones geométricas progresivas podían alcanzar un resultado trigonométrico finito.

Independientemente, Liu Hui utilizó un método similar cientos de años después. En el siglo XIV,

los primeros ejemplos del uso de series de Taylor y métodos similares fueron dados por Madhava

de Sangama grama. A pesar de que hoy en día ningún registro de su trabajo ha sobrevivido a los

años, escritos de matemáticos hindúes posteriores sugieren que él encontró un número de casos

especiales de la serie de Taylor, incluidos aquellos para las funciones trigonométricas del seno,

coseno, tangente y arco tangente. En el siglo XVII, James Gregory también trabajó en esta área y

publicó varias series de Maclaurin. Pero recién en 1715 se presentó una forma general para

construir estas series para todas las funciones para las que existe y fue presentado por Brook

Taylor, de quién recibe su nombre. (Desconocido, Serie de Taylor)

Existen varios métodos para obtener la derivada numérica, entre ellos los polinomios

interpoladores de Lagrange, de Newton o las series de Taylor, las que además de proporcionarnos

la fórmula para obtener la derivada nos dicen el posible error cometido. (Derivadas Numéricas,

2016)

La derivación o diferenciación numérica se deriva de la expansión de la serie de Taylor, la cual

es una representación o aproximación de una función como una suma de términos calculados de
42

los valores de sus derivadas en un mismo punto. Ésta se expande, al agregar más términos con el

objetivo de tener una mejor aproximación y como consecuencia, un resultado más acertado o con

un margen de error pequeño. (Desconocido, Serie de Taylor)

b) Planteamiento del Método

La diferenciación numérica es el proceso de encontrar el valor numérico de una derivada

de una función dada en un punto dado. Para ello, se hace uso del polinomio de Taylor, basado en

el siguiente teorema:

Teorema de Taylor

Si la función f y sus primeras n + 1 derivadas son continuas en un intervalo que contiene a

y x, entonces el valor de la función en x está dado por

f′′ (a) 𝑓(3) (𝑎) 𝑓(𝑛) (𝑎)


𝑓(𝑥) = 𝑓(𝑎) + f ′ (𝑎)(𝑥 − 𝑎) + (𝑥 − 𝑎)2 + (𝑥 − 𝑎)3 + ⋯ + (𝑥 − 𝑎)𝑛 + 𝑅𝑛
2! 3! 𝑛!

donde el residuo Rn se define como


𝑥(
𝑥 − 𝑡)𝑛 (𝑛+1)
𝑅𝑛 = ∫ 𝑓 (𝑡)𝑑𝑡
𝑎 𝑛!

donde t = a es una variable muda. La primera ecuación se llama serie de Taylor o fórmula de

Taylor. Si se omite el residuo, el lado derecho de la ecuación es la aproximación del polinomio de

Taylor para f(x). En esencia, el teorema establece que cualquier función suave puede aproximarse

mediante un polinomio.

La segunda ecuación es sólo una manera, denominada la forma integral, mediante la cual

puede expresarse el residuo. Se obtiene una formulación alternativa basándose en el teorema del

valor medio para integrales. (La Serie de Taylor, 2006, págs. 78-80)
43

La expansión de la serie de Taylor sirve para obtener estimaciones numéricas de las

derivadas de orden superior, así que tomando términos adicionales se pueden generar formulas por

diferencias divididas.

Haciendo h= x-a, donde h es el tamaño del paso o incremento, esto es, la longitud del
intervalo sobre el cual se realiza la aproximación, se obtiene lo siguiente:

′(
f ′′ (a) 2 𝑓 ′′′(𝑎) 3 𝑓 ( 𝑛 ) (𝑎 ) 𝑛
𝑓 (𝑥 ) = 𝑓 (𝑎 ) + f 𝑎 ) ℎ + ℎ + ℎ + ⋯+ 𝑓 + 𝑅𝑛
2! 3! 𝑛!

➢ Formula de la Segunda Derivada del Punto Medio

Tomando los primeros tres términos del polinomio de Taylor y utilizando los puntos 𝑥 −

ℎ, 𝑥, 𝑥 + ℎ se obtiene:

f ′′ (a) 2
𝑓 (𝑥 − ℎ ) = 𝑓 ( 𝑎 ) − f ′ ( 𝑎 ) ℎ + ℎ
2!

𝑓 (𝑥 ) = 𝑓 ( 𝑎 )

f ′′ (a) 2
𝑓 (𝑥 + ℎ ) = 𝑓 ( 𝑎 ) + f ′ ( 𝑎 ) ℎ + ℎ
2!

Si multiplicamos cada ecuación por una constante (a, b, c) podemos formar un sistema de

ecuaciones de la siguiente manera:


𝑎+𝑏+𝑐 =0
′( a 2 ′′ (
𝑎𝑓 (𝑥 − ℎ) = 𝑎𝑓 (𝑎) − ahf 𝑎) + 2! ℎ f a)
−𝑎 + 𝑐 = 0
𝑏𝑓 (𝑥 ) = 𝑏𝑓 (𝑎) 𝑎 𝑐
+ =1
c
2 2
𝑐𝑓(𝑥 + ℎ) = 𝑐𝑓(𝑎) + 𝑐hf ′ (𝑎) + 2! ℎ2 f ′′ (a)

Resolviendo el sistema obtenemos que a=1, b=-2 y c=1; por lo que al aplicar los valores y

despejando para f ′′ (a) nos genera la fórmula de la segunda derivada del punto medio de tres

puntos:
44

𝑓 (𝑥 − ℎ) − 2𝑓 (𝑥 ) + 𝑓(𝑥 + ℎ)
f ′′ (a) =
ℎ2

Para obtener la fórmula de cinco puntos centrada, se resuelve de la misma manera, con la

diferencia que los puntos que se utilizarán serán 𝑥 − 2ℎ, 𝑥 − ℎ, 𝑥, 𝑥 + ℎ, 𝑥 + 2ℎ y se debe utilizar

los primeros cinco términos del polinomio de Taylor. Después de resolver el sistema se obtiene

que la fórmula para la segunda derivada centrada de cinco puntos es:

−𝑓 (𝑥 − 2ℎ) + 16𝑓 (𝑥 − ℎ) − 30𝑓 (𝑥 ) + 16𝑓 (𝑥 + ℎ) − 𝑓(𝑥 + 2ℎ)


f ′′ (a) =
12ℎ2

➢ Formula de la Tercera Derivada del Punto Medio

La fórmula de cinco puntos centrada para la tercera derivada se obtiene utilizando los puntos

𝑥 − 2ℎ, 𝑥 − ℎ, 𝑥, 𝑥 + ℎ, 𝑥 + 2ℎ en donde se utilizan los primeros cinco términos del polinomio de

Taylor. Resolviendo de la misma manera que hicimos anteriormente y despejando para la tercera

derivada se obtiene su formula la cual es:

−𝑓 (𝑥 − 2ℎ) + 2𝑓 (𝑥 − ℎ) − 2𝑓 (𝑥 + ℎ) + 𝑓(𝑥 + 2ℎ)


f ′′′ (a) =
2ℎ3

La fórmula para tres puntos la obtenemos a partir de la formula centrada de tres puntos

para la primera derivada de la siguiente forma:

−𝑓(𝑥−ℎ)+𝑓(𝑥+ℎ) 1 3𝑓(𝑥−ℎ)−3𝑓(𝑥+ℎ ) 6𝑓′ (𝑥)


𝑓 ′ (𝑎 ) = + 6! ℎ3 𝑓 ′′′(𝑥 ) → 𝑓 ′′′(𝑎) = + →
2ℎ 2ℎ4 ℎ3

−𝑓(𝑥−ℎ)+𝑓(𝑥+ℎ)
3𝑓(𝑥−ℎ)−3𝑓(𝑥+ℎ) 6( ) 3𝑓(𝑥−ℎ)−3𝑓(𝑥+ℎ) 3𝑓(𝑥+ℎ)−3𝑓(𝑥−ℎ)
′′′ (
𝑓 𝑎) = + 2ℎ
=>𝑓 ′′′(𝑎) = +
2ℎ4 ℎ 3 2ℎ4 ℎ4

Finalmente obtenemos la fórmula de tres puntos centrada para la tercera derivada:

−3𝑓 (𝑥 − ℎ) + 3𝑓 (𝑥 + ℎ)
𝑓 ′′′(𝑎) =
2ℎ4
45

c) Área de aplicación del método

La diferenciación numérica es un método que sirve para evaluar las derivadas de una función

en aquellos casos en los que la derivada es difícil de obtener por un método directo, o si se cuenta

con los valores funcionales en puntos de datos discretos. (Diferenciación numérica de funciones,

2007, pág. 88)

Se consideran algunas técnicas de aproximación para derivar una función f(x) dada. Las reglas

que resultan son de grande importancia para la solución de ecuaciones diferenciales. Pueden ser

utilizadas para obtener aproximaciones numéricas de una derivada a partir de los valores de la

función. Pero el método de diferenciación numérica basado en interpolación numérica es un

proceso inestable y no se puede esperar una buena aproximación aun cuando la información

original está bien aproximada, por lo que el error f’(x) – p’(x) puede ser muy grande especialmente

cuando los valores de f(x) tengan perturbaciones. (Gutiérrez S. E., s.f.)

En la práctica, no podemos calcular una h óptima para usar en la aproximación de la derivada,

pero debemos permanecer conscientes que reducir el tamaño del paso no siempre mejorará la

aproximación. Ocurren dificultades como errores de redondeo con todas las fórmulas de

diferenciación. La razón se puede remontar a la necesidad de dividir por una potencia de h. La

división por números pequeños tiende a exagerar el redondeo error, y esta operación debe evitarse

si es posible. En el caso de la diferenciación numérica, no podemos evitar el problema por

completo, aunque los métodos de orden superior reducen la dificultad. (Round-Off Error

Instability, 2011, pág. 182)

Como métodos de aproximación, la diferenciación numérica es inestable, ya el valor pequeño

de h necesario para reducir el error de truncamiento, hace que crezca el error de redondeo. Este es

la primera clase de métodos inestables que hemos encontrado, y estas técnicas se evitarían si fueron
46

posibles, sin embargo, además de usarse con fines computacionales, las fórmulas son necesarios

para aproximar las soluciones de ecuaciones diferenciales ordinarias y parciales. (Round-Off Error

Instability, 2011, pág. 182)

d) Ejemplos

1. Calcule las aproximaciones por diferencia central con tres puntos de segundo orden para

la siguiente función en la ubicación y con el tamaño de paso que se especifica:

F(x) = x3 + 4x – 15 en x = 0, h = 0.25

X F(x)
-0.25 -16.015625 (x-h)
𝑓(𝑥 − ℎ) − 2𝑓 (𝑥 ) + 𝑓(𝑥 + ℎ)
0 -15 (x) f ′′ (x) =
0.25 -13.984375 (x+h) ℎ2

𝑓 (−0.25)−2𝑓(0)+𝑓(0.25) (−16.015625)−2(−15)+(−13.984375)
f ′′ (x) = → f ′′ (x) = → 𝒇′′ (𝒙) = 𝟎
(0.25)2 (0.25)2

2. Calcule las aproximaciones por diferencia central con cinco puntos de tercer orden para la

siguiente función en la ubicación y con el tamaño de paso que se especifica:

𝑓 (𝑥 ) = 𝑒 𝑥 cos (𝑥) en x=2, h=0.2

X F(x) −𝑓(𝑥−2ℎ)+2𝑓(𝑥−ℎ)−2𝑓(𝑥+ℎ)+𝑓(𝑥+2ℎ)
f ′′′ (x) =
1.6 -0.144626 (x-2h) 2ℎ3
1.8 -1.374493 (x-h)
2 -3.074932 (x)
2.2 -5.311231 (x+h)
2.4 -8.128421 (x+2h) −𝑓(1.6)+2𝑓(1.8)−2𝑓(2.2)+𝑓(2.4)
f ′′′ (x) = 2(0.2)3
47

−(−0.144626)+2(−1.374493)−2(−5.311231)+(−8.128421)
𝑓 ( x) = → 𝒇′′′ (𝒙) = −𝟔. 𝟖𝟗𝟒𝟗𝟑𝟖
2(0.2)3

e) Error de Aproximación

Los errores de truncamiento son aquellos que resultan al usar una aproximación en lugar de un

procedimiento matemático exacto. Para explicar mejor el error, partiremos de el termino de orden

cero. Suponga que se trunca la expansión de la serie de Taylor después del término de orden cero

para obtener:

𝑓(𝑥𝑖+1 ) ≅ 𝑓(𝑥𝑖 )

El residuo o error de esta predicción consiste de la serie infinita de términos que fueron truncados:

′(
f ′′ (𝑥𝑖 ) 2 𝑓 ′′′(𝑥𝑖 ) 3 𝑓 (𝑛) (𝑥𝑖 ) 𝑛
𝑅0 = f 𝑥𝑖 )ℎ + ℎ + ℎ +⋯+ 𝑓
2! 3! 𝑛!

Obviamente no resulta conveniente manipular el residuo en este formato de serie infinita.

Se obtiene una simplificación truncando el residuo mismo de la siguiente manera 𝑅0 = f ′ (𝑥𝑖 )ℎ

Al utilizar este teorema del valor medio para la derivada resulta fácil darse cuenta, de que
𝑅
la pendiente 𝑓 ′(𝜉 ) es igual al cociente de la elevación R0 entre el recorrido h, o 𝑓 ′(𝜉 ) = 0 que se

puede reordenar para obtener 𝑅0 = f ′ (𝜉 )ℎ.
Por lo tanto, se ha obtenido la versión de orden cero de la ecuación.
Las versiones de orden superior son tan sólo una extensión lógica del razonamiento usado
anteriormente. (El residuo en la expansión de la serie de Taylor, 2006, págs. 84-85)
La versión de segundo orden y tercer orden son:
𝑓 ′′′(𝜉 ) 3
𝑅2 = ℎ
3!

𝑓 (4) (𝜉 ) 4
𝑅3 = ℎ
4!
48

IV. Integración Numérica

A. Método de Romberg

a) Detalles Históricos

Romberg describió un método basado en el hecho de que si se conocen los dos resultados de

la integración trapezoidal (o de Simpson) para intervalos de anchura h y 2h entonces el método de

mejora de Richardson permite obtener una mejor aproximación al valor de la integral que los dos

valores iniciales. El método es iterativo y se puede aplicar hasta conseguir la precisión que se

requiere. (Desconocido, Integración Numérica)

Aunque Romberg nunca se pensó en construir un método de extrapolación o en dar un principio

general para la aceleración de convergencia ("solo" quería encontrar nuevas fórmulas para la

integración numérica), su artículo inspiró a muchos autores para trabajar en este campo y producir

algunos buenos resultados, que hoy en día influyen en muchas partes del análisis numérico. (Walz,

1991, pág. 9)

Debemos mencionar el artículo de H. Rutishauser [1963] sobre el "método de Romberg ",

donde señala muy claramente que el método de extrapolación se puede aplicar a cualquier

secuencia de números {T (h)}, siempre que esta secuencia posea una expansión asintótica. Para

ilustrar esto, usa el método para el cálculo de log (x), para la diferenciación numérica y para la

evaluación de integrales singulares. (Walz, 1991, pág. 10)

El método de Romberg quizás tuvo que ser nombrado después de Kommerell o Saigey. Sin

embargo, hay que decir que el pequeño documento de Romberg dio la inicialización para el rápido

desarrollo de métodos de extrapolación en aquellos tiempos, y es por eso que este nombre está

justificado. (Walz, 1991, pág. 10)


49

b) Planteamiento del Método

En la integración de Romberg se usa la regla compuesta del trapecio para obtener

aproximaciones preliminares, y luego el proceso de extrapolación de Richardson para mejorar las

aproximaciones. En la sección 4.2 dijimos que la extrapolación de Richardson puede efectuarse en

cualquier procedimiento de aproximación de la forma:

𝑀 − 𝑁 (ℎ) = 𝐾1 ℎ + 𝐾2 ℎ + ⋯ + 𝐾𝑛 ℎ𝑛

donde 𝐾1 , 𝐾2 ,…., 𝐾𝑛 son constantes y N(h) es una aproximación al valor desconocido M.

En esta fórmula el error de truncamiento está dominado por 𝐾1 ℎ cuando h es pequeño y, por tanto,

esta fórmula da O(h) aproximaciones. En la extrapolación de Richardson se utiliza una técnica de

prorrateo para producir fórmulas con un error de truncamiento de orden superior. Usaremos la

extrapolación para aproximar integrales definidas.

Para comenzar a explicar el método de integración de Romberg, recordemos lo siguiente: la regla

compuesta del trapecio para aproximar la integral de una función f en un intervalo [a, b] por medio

de m subintervalos es

𝑏 𝑚−1
ℎ (𝑏 − 𝑎 ) 2
∫ 𝑓 (𝑥 )𝑑𝑥 = [ 𝑓 (𝑎) + 𝑓 (𝑏) + 2 ∑ 𝑓(𝑥𝑗 )] − ℎ 𝑓′′(𝜇)
𝑎 2 12
𝑗=1

(𝑏−𝑎)
Donde 𝑎 < 𝜇. , < 𝑏, y 𝑥𝑗 = 𝑎 + 𝑗ℎ para cada 𝑗 = 0,1, . . . , 𝑚.
𝑚

Primero obtenemos las aproximaciones mediante la regla compuesta del trapecio, con 𝑚1 =

1, 𝑚2 = 2, 𝑚3 = 4, …. Y 𝑚𝑛 = 2𝑛−1 , donde n es un entero positivo. Los valores del tamaño del

paso ℎ𝑘 correspondientes a 𝑚𝑘 son ℎ𝑘 = (𝑏 − 𝑎)/ 𝑚𝑘 = (𝑏 − 𝑎)/2𝑘−1 . Con esta notación, la

regla del trapecio se expresa como:


50

𝑏 2𝑘−1 −1
ℎ𝑘 (𝑏 − 𝑎) 2
∫ 𝑓(𝑥 )𝑑𝑥 = [𝑓(𝑎) + 𝑓(𝑏) + 2 ∑ 𝑓(𝑎 + 𝑖ℎ𝑘 )] − ℎ𝑘 𝑓’’(𝜇𝑘 )
𝑎 2 12
𝑖=1

donde 𝜇𝑘 es un número en (a, b).

Si introducimos la 𝑅𝑘,1 para denotar la parte de la ecuación con que se realiza la aproximación por

trapecios, tenemos que

ℎ1 (𝑏 − 𝑎 )
𝑅1,1 = [𝑓(𝑎) + 𝑓(𝑏)] = [𝑓 (𝑎) + 𝑓(𝑏)];
2 2

ℎ2
𝑅2,1 = [𝑓 (𝑎) + 𝑓 (𝑏) + 2𝑓(𝑎 + ℎ2 )]
2

(𝑏 − 𝑎) (𝑏 − 𝑎 )
= [𝑓 (𝑎) + 𝑓 (𝑏) + 2𝑓 (𝑎 + )]
4 2

1
= [𝑅1,1 + ℎ1 𝑓 (𝑎 + ℎ2 )]
2

Y en general

2𝑘−2
1
𝑅𝑘,1 = [𝑅𝑘−1,1 + ℎ𝑘−1 ∑ 𝑓(𝑎 + (2𝑖 − 1)ℎ𝑘 )]
2
𝑖=1

Para cada 𝑘 = 2, 3, … , 𝑛.

Este método converge bastante lento, la extrapolación de Richardson servirá para agilizar

la convergencia.

Podemos demostrar, aunque ello no sea fácil (véase [RR, pp. 136- 138]) que si 𝑓 ∈ 𝐶 ∞[a,

b] entonces podemos escribir la regla compuesta del trapecio con un término de error alterno en la

forma:
51

𝑏 ∞ ∞

∫ 𝑓 (𝑥 )𝑑𝑥 − 𝑅𝑘,1 = ∑ 𝐾𝑖 ℎ𝑘2𝑖 = 𝐾1 ℎ𝑘2 + ∑ 𝐾𝑖 ℎ𝑘2𝑖


𝑎 𝑖=1 𝑖=2

Donde 𝐾𝑖 para cada i es independiente de ℎ𝑘 solo en 𝑓 (2𝑖−1) (𝑎) y 𝑓 (2𝑖−1) (𝑏).

Con la regla compuesta del trapecio en esta forma, podemos suprimir el término que

contiene ℎ𝑘2 al combinar esta ecuación con su correspondiente que tiene ℎ𝑘 reemplazada por

ℎ𝑘+1 = ℎ𝑘/2 :

𝑏 ∞ ∞ ∞
2𝑖
𝐾𝑖 ℎ𝑘2𝑖 𝐾1 ℎ𝑘2 𝐾𝑖 ℎ𝑘2𝑖
∫ 𝑓 (𝑥 )𝑑𝑥 − 𝑅𝑘+1,1 = ∑ 𝐾𝑖 ℎ𝑘+1 = ∑ 2𝑖 = +∑ 𝑖
𝑎 2 4 4
𝑖=1 𝑖=2 𝑖=2

Al restar la ecuación anterior a cuatro veces esta y al simplificarla, obtenemos la fórmula

𝑂(ℎ𝑘4 ):

𝑏 ∞
𝑅𝑘+1,1 − 𝑅𝑘,1 𝐾𝑖 1 − 4𝑖−1
∫ 𝑓(𝑥 )𝑑𝑥 − [𝑅𝑘+1,1 + ] = ∑ ( 𝑖−1 )ℎ𝑘2𝑖
𝑎 3 3 4
𝑖=2

Ahora podemos aplicar la extrapolación a esta fórmula para obtener un resultado 𝑂(ℎ𝑘6 ) y

así sucesivamente. Para simplificar la notación definimos:

𝑅𝑘,1 − 𝑅𝑘−1,1
𝑅𝑘,2 = 𝑅𝑘,1 +
3

para cada k = 2, 3, ..., n, y aplicamos el procedimiento de extrapolación de Richardson a estos

valores. Continuando esta notación tenemos, para cada 𝑘 = 2, 3, 4, . . . , 𝑛 y 𝑗 = 2, . . . , 𝑘, una

fórmula de aproximación 𝑂(ℎ𝑘2𝑗 ) definida por:

𝑅𝑘,𝑗−1 − 𝑅𝑘−1,𝑗−1
𝑅𝑘,𝑗 = 𝑅𝑘,𝑗−1 +
4𝑗−1 − 1
52

Los resultados generados con estas fórmulas se incluyen en la tabla

𝑅1,1
𝑅2,1 𝑅2,2
𝑅3,1 𝑅3,2 𝑅3,3
𝑅4,1 𝑅4,2 𝑅4,3 𝑅4,4
. . . .
. . . .
. . . .
𝑅𝑛,1 𝑅𝑛,2 𝑅𝑛,3 𝑅𝑛,2 …………. 𝑅𝑛,𝑛

El método de Romberg tiene la característica adicional de que permite calcular íntegramente

un nuevo renglón de la tabla con sólo hacer una aplicación más de la regla compuesta del trapecio,

y luego promediar los valores previamente calculados para obtenerlos elementos sucesivos del

renglón. (Burden, Faires, & Burden, 2017)

c) Área de Aplicación del Método

La aplicación del método de Romberg es muy útil en diferentes ramas de la Geometría, la

Física, la Química, las Ciencias Económicas y, prácticamente, en todas las ramas del saber, se ven

reflejadas cada día más en nuestra vida profesional, como en el cálculo de áreas, volúmenes,

mecánica aplicada, ecuaciones diferenciales; entre otras. Por ejemplo, en la industria de la

construcción de edificios, los ingenieros necesitan realizar la evaluación de los elementos de las

matrices de flexibilidades, así como los giros de fijación, los cuales requieren del proceso

matemático de integración. Para elementos de sección variable, en la mayoría de los casos, el

realizar la integración analítica resulta bastante tedioso y poco práctico, por lo que es más adecuada

la aplicación de integración numérica y Romberg es una buena opción para esta finalidad.

Por conveniencia, si consideramos que los datos están uniformemente espaciados (segmentos

en que se divide el intervalo de integración del mismo tamaño), por su sencillez la regla trapecial
53

puede ser la primera de las fórmulas de integración cerrada aplicable al problema por resolver.

Una de las ventajas del método es su sencillez y rápida convergencia gracias a la extrapolación de

Richard.

d) Ejemplos

Por medio del algoritmo desarrollado en Matlab de integración de Romberg calcule R3,3 para las

siguientes integrales:

1. 𝑓 (𝑥 ) = 𝑥 2 ln (𝑥) en el intervalo [1,1.5]

Solución:

𝑏 2𝑘−1 −1
ℎ𝑘
∫ 𝑓 (𝑥 )𝑑𝑥 = [𝑓 (𝑎) + 𝑓 (𝑏) + 2 ∑ 𝑓(𝑎 + 𝑖ℎ𝑘 )]
𝑎 2
𝑖=1

ℎ𝑘 = (b - a) / 𝑚𝑘 = (b - a) /2𝑘−1

A el primer término de la sumatoria lo denotamos por:

ℎ1 (𝑏 − 𝑎 )
𝑅1,1 = [𝑓(𝑎) + 𝑓 (𝑏)] = [𝑓(𝑎) + 𝑓(𝑏)]
2 2

El cual nos sirve como semilla del método.

Los siguientes términos están dados por:

2𝑘−2
1
𝑅𝑘,1 = [𝑅𝑘−1,1 + ℎ𝑘−1 ∑ 𝑓(𝑎 + (2𝑖 − 1)ℎ𝑘 )] ; 𝑑𝑜𝑛𝑑𝑒 𝑘 = 2,3,4, … 𝑛
2
𝑖=1

Aplicando el método:
54

ℎ1 = (𝑏 − 𝑎)/21−1

(1.5 − 1) 2
𝑅1,1 = [{1 ln(1) + 1.52 ln(1.5)}] = 0.22807
2

ℎ2 = (𝑏 − 𝑎)/22−1

22−2
1
𝑅2,1 = [𝑅2−1,1 + ℎ2−1 ∑ 𝑓(𝑎 + (2𝑖 − 1)ℎ2 ]
2
𝑖=1

1
= [𝑅 + ℎ1 ((1 + (2 ∗ 1 − 1)ℎ2 )2 ln(1 + (2 ∗ 1 − 1)ℎ2 )]
2 1,1

= 0.20120

ℎ3 = (𝑏 − 𝑎)/23−1

𝑅3,1 = 0.19449

Ahora aplicamos la extrapolación de Richard

𝑅𝑘,𝑗−1 − 𝑅𝑘−1,𝑗−1
𝑅𝑘,𝑗 = 𝑅𝑘,𝑗−1 +
4𝑗−1 − 1

𝑅2,2−1 − 𝑅2−1,2−1
𝑅2,2 = 𝑅2,2−1 + = 0.19225
42−1 − 1

𝑅3,2−1 − 𝑅3−1,2−1
𝑅3,2 = 𝑅3,2−1 + = 0.19226
42−1 − 1

𝑅3,3−1 − 𝑅−31,3−1
𝑅3,3 = 𝑅3,3−1 + = 0.19226
43−1 − 1

𝑹𝒌,𝒋 1 2 3
1 0.22807
2 0.20120 0.19225
3 0.19449 0.19226 0.19226
55

2
2. 𝑓 (𝑥 ) = 𝑥2 −4 en el intervalo [0,0.35]

Solución:

𝑏 2𝑘−1 −1
ℎ𝑘
∫ 𝑓 (𝑥 )𝑑𝑥 = [𝑓 (𝑎) + 𝑓 (𝑏) + 2 ∑ 𝑓(𝑎 + 𝑖ℎ𝑘 )]
𝑎 2
𝑖=1

ℎ𝑘 = (𝑏 − 𝑎)/ 𝑚𝑘 = (𝑏 − 𝑎)/2𝑘−1

A el primer término de la sumatoria lo denotamos por:

ℎ1 (𝑏 − 𝑎 )
𝑅1,1 = [𝑓(𝑎) + 𝑓 (𝑏)] = [𝑓(𝑎) + 𝑓(𝑏)]
2 2

El cual nos sirve como semilla del método.

Los siguientes términos están dados por:

2𝑘−2
1
𝑅𝑘,1 = [𝑅𝑘−1,1 + ℎ𝑘−1 ∑ 𝑓(𝑎 + (2𝑖 − 1)ℎ𝑘 ] ; 𝑑𝑜𝑛𝑑𝑒 𝑘 = 2,3,4, … 𝑛
2
𝑖=1

Aplicando el método:

ℎ1 = (𝑏 − 𝑎)/21−1

(0.35 − 0) 2 2
𝑅1,1 = [{ 2 + ] = −0.17776
2 (0) − 4 (0.35)2 − 4

ℎ2 = (𝑏 − 𝑎)/22−1

22−2
1
𝑅2,1 = [𝑅2−1,1 + ℎ2−1 ∑ 𝑓(𝑎 + (2𝑖 − 1)ℎ2 ]
2
𝑖=1

1 2
= [𝑅1,1 + ℎ1 ( )]
2 (0 + (2 ∗ 1 − 1)ℎ2 )2 − 4
56

= −0.17705

ℎ3 = (𝑏 − 𝑎)/23−1

𝑅3,1 = −0.17688

Ahora aplicamos la extrapolación de Richard

𝑅𝑘,𝑗−1 − 𝑅𝑘−1,𝑗−1
𝑅𝑘,𝑗 = 𝑅𝑘,𝑗−1 +
4𝑗−1 − 1

𝑅2,2−1 − 𝑅2−1,2−1
𝑅2,2 = 𝑅2,2−1 + = −0.17682
42−1 − 1

𝑅3,2−1 − 𝑅3−1,2−1
𝑅3,2 = 𝑅3,2−1 + = −0.17682
42−1 − 1

𝑅3,3−1 − 𝑅−31,3−1
𝑅3,3 = 𝑅3,3−1 + = −0.17682
43−1 − 1

𝑹𝒌,𝒋 1 2 3
1 −0.17776
2 −0.17705 −0.17682
3 −0.17688 −0.17682 −0.17682

e) Error de Aproximación

El algoritmo requiere un entero n previamente establecido, para determinar el número de

renglones a generar. A menudo conviene más fijar una tolerancia de error de la aproximación y

generar n, dentro de una cota superior, hasta que las entradas diagonales consecutivas 𝑅𝑛−1,𝑛−1 y

𝑅𝑛,𝑛 concuerden en el margen de tolerancia. Para evitar la posibilidad de que dos elementos de

renglón consecutivos concuerden entre sí, pero no con el valor de la integral a aproximar,

generamos aproximaciones hasta que no sólo |𝑅𝑛−1,𝑛−1 − 𝑅𝑛,𝑛 | esté dentro de la tolerancia, sino

también |𝑅𝑛−2,𝑛−2 − 𝑅𝑛−1,𝑛−1 |. Aunque esta medida no es aplicable a todos los casos, nos
57

garantizará que dos conjuntos de aproximaciones generados en forma distinta concuerden dentro

del límite de la tolerancia especificada, antes de que aceptemos 𝑅𝑛,𝑛 como suficientemente exacto.

(Burden, Faires, & Burden, 2017)

La integración de Romberg aplicada a f en [a, b], se basa en la suposición de que la regla

compuesta del trapecio tiene un término de error que podemos expresar en la forma de la ecuación

que usamos antes de aplicar la extrapolación de Richard; es decir, debemos tener 𝑓 ∈ 𝐶 2𝑘+2 [a, b]

para poder generar el k-ésima renglón. Romberg incluye una verificación en cada etapa para

cerciorarse de que la suposición se cumple. A estos métodos se les llama algoritmos cautelosos de

Romberg y se describen en [Joh]. En esa obra se explica también cuando se usa el método de

Romberg como procedimiento adaptativo, semejante a la regla adaptativa de Simpson. (Burden,

Faires, & Burden, 2017)

B. Método de Montecarlo

a) Detalles Históricos

En 1955, W. Romberg publicó un método notable para efectuar la integración numérica

(Romberg 1955). Inicialmente atrajo comparativamente poca atención; pero a principios de los

años sesenta, estimulados al menos en parte por la búsqueda intensiva de automáticos

procedimientos eficientes de integración en el campo de rápido desarrollo de la computación

científica, el interés en el método floreció rápidamente. Una considerable desarrollada literatura

sobre varios aspectos y extensiones del método luego de investigaciones teóricas iniciales por F.

L. Bauer (1961) y H. Rutishauser y E. L. Stiefel. La revisión y extensión de este trabajo se da en

un documento conjunto (Bauer et al. 19631). Allí, y en el trabajo de S. Filippi en 1964, se señaló

que el procedimiento de integración de Romberg puede considerarse como una aplicación

particular de una técnica de extrapolación ampliamente utilizada en el análisis numérico, conocida


58

desde hace muchos años, pero con frecuencia asociado en los tiempos modernos con su destacado

defensor, L. F. Richardson. (Dutka, 1984, pág. 2)

b) Planteamiento del Método

Se desea estimar la integral de una función G continua. Esta integral puede verse como el

cálculo del valor esperado de la función G cuando se aplica a una variable aleatoria con

distribución uniforme. Supongamos que el intervalo de integración es [0, 1] y sea X1, X2 hasta

XM una muestra de variables aleatorias, independientes con distribución uniforme en el intervalo

[0, 1], entonces

1
∫ 𝑔(𝑥)𝑑𝑥 = 𝐸(𝐺 (𝑋))
0

con X una variable aleatoria uniforme en [0, 1].

De esta forma, con base en la Ley de los Grandes Números, esta integral se puede aproximar por:

1 𝑀
1
∫ 𝐺 (𝑥 )𝑑𝑥 ≈ ∑ 𝐺 (𝑥𝑖 )
0 𝑀
𝑖=1

Todo el problema se reduce a generar la muestra. Por otro lado, obsérvese que cualquier integral

sobre el intervalo [a, b] se puede transformar a una integral sobre el intervalo [0, 1] con el siguiente

cambio de variable 𝑥 = 𝑎 + (𝑏 − 𝑎)𝑢, entonces:

𝑏 1 𝑀
(𝑏 − 𝑎)
∫ 𝑓(𝑥 )𝑑𝑥 = (𝑏 − 𝑎) ∫ 𝐺 (𝑎 + (𝑏 − 𝑎)𝑢)𝑑𝑢 ≈ ∑ 𝐺(𝑎 + (𝑏 − 𝑎)𝑢𝑖 )
𝑎 0 𝑀
𝑖=1

con 𝑢𝑖 variables aleatorias uniformes en el intervalo [0, 1].


59

c) Área de Aplicación del Método

▪ Aplicaciones al cálculo de integrales:

Cálculo estocástico de integrales multidimensionales y de integrales de camino. Método de

acertar o fallar. Muestreo de la media. Efectos del ruido. Técnicas de reducción de varianza.

Muestreo por importancia. Muestreo correlacionado. Muestreo estratificado. Partición de las

regiones. Reducción de la dimensionalidad. Método de la Cuadratura Aleatoria. Integración de

Monte Carlo Ponderada. Sistemas de redes y colas. (Landrove)

▪ Aplicaciones a teoría de transporte:

Simulaciones en teoría de transporte. Simulación regenerativa. Estabilidad del sistema

estocástico. Técnicas de reducción de varianza. Aplicaciones a diversos problemas de ciencias,

ingeniería y ciencias de la salud con particular énfasis en problemas de difusión. (Landrove)

▪ Aplicaciones a problemas de optimización:

Planteamiento general de problemas de optimización. Algoritmos de búsqueda aleatoria.

Eficiencia de los algoritmos de búsqueda aleatoria. Solución en forma cerrada para

Optimización Global. Optimización por Funcionales Suavizados. Algoritmo de recocido

simulado. Aplicación a problemas inversos de ciencias e ingeniería. (Landrove)

El uso de los métodos de Montecarlo como herramienta de investigación, proviene del trabajo

realizado en el desarrollo de la bomba atómica durante la Segunda Guerra Mundial en

el Laboratorio Nacional de Los Álamos en EE. UU. Este trabajo conllevaba la simulación de

problemas probabilísticos de hidrodinámica concernientes a la difusión de neutrones en el

material de fisión. Esta difusión posee un comportamiento eminentemente aleatorio. En la

actualidad es parte fundamental de los algoritmos de raytracing para la generación de


60

imágenes 3D. La mayor desventaja de este método es la gran cantidad de iteración que se

necesitan para alcanzar una buena aproximación. (Landrove)

La mayor desventaja del método es su lenta convergencia ya que necesita al menos 10 4

iteraciones para generar una buena aproximación, en términos computacionales significa una

gran potencia para realizar cálculos. (Landrove)

d) Ejemplos

1. Usando el método de integración de Montecarlo integre la siguiente función 𝑓 (𝑥 ) = 𝑥 3 +

𝑥 2 + 1 en el intervalo [2,5] con M=10.

Solución:

Utilizando la formula desarrollada:

𝑏 1 𝑀
(𝑏 − 𝑎)
∫ 𝑓(𝑥 )𝑑𝑥 = (𝑏 − 𝑎) ∫ 𝐺 (𝑎 + (𝑏 − 𝑎)𝑢)𝑑𝑢 ≈ ∑ 𝐺(𝑎 + (𝑏 − 𝑎)𝑢𝑖 )
𝑎 0 𝑀
𝑖=1

Aplicándola:

5 (5 − 2)
∫ (𝑥 3 + 𝑥 2 + 1)𝑑𝑥 ≈ [{(2 + (5 − 2)0.8147)3 + (2 + (5 − 2)0.8147)2 + 1}
2 10
+ {(2 + (5 − 2)0.9058)3 + (2 + (5 − 2)0.9058)2 + 1}
+ {(2 + (5 − 2)0.9134)3 + (2 + (5 − 2)0.9134)2 + 1}
+ {(2 + (5 − 2)0.2785)3 + (2 + (5 − 2)0.2785)2 + 1}
+ {(2 + (5 − 2)0.9649)3 + (2 + (5 − 2)0.9649)2 + 1}
+ {(2 + (5 − 2)0.6324)3 + (2 + (5 − 2)0.6324)2 + 1}
+ {(2 + (5 − 2)0.5469)3 + (2 + (5 − 2)0.5469)2 + 1}
+ {(2 + (5 − 2)0.1576)3 + (2 + (5 − 2)0.1576)2 + 1}

{(2 + (5 − 2)0.0975)3 + (2 + (5 − 2)0.9575)2 + 1}

+{(2 + (5 − 2)0.9706)3 + (2 + (5 − 2)0.9706)2 + 1}

= 193.45511
61

▪ Todos los 𝑢𝑖 fueron generados en Matlab.

2. Usando el algoritmo de Montecarlo desarrollado en Matlab integre la siguiente función

𝑓 (𝑥 ) = 6𝑥 4 − 3cos (𝑥) + 3.65 en el intervalo [1,3] con M=10.

Solución:

Utilizando la formula desarrollada:

𝑏 1 𝑀
(𝑏 − 𝑎)
∫ 𝑓(𝑥 )𝑑𝑥 = (𝑏 − 𝑎) ∫ 𝐺 (𝑎 + (𝑏 − 𝑎)𝑢)𝑑𝑢 ≈ ∑ 𝐺(𝑎 + (𝑏 − 𝑎)𝑢𝑖 )
𝑎 0 𝑀
𝑖=1

Aplicándola:

3
∫ (6𝑥 4 − 3 cos(𝑥 ) + 3.65 )𝑑𝑥
1
(3 − 1)
≈ [ {6(1 + (3 − 1)0.2572)4 − 3 cos(1 + (3 − 1)0.2572) + 3.65)}
10
+ {6(1 + (3 − 1)0.1419)4 − 3 cos(1 + (3 − 1)0.1419) + 3.65)}
+ {6(1 + (3 − 1)0.7922)4 − 3 cos(1 + (3 − 1)0.7922) + 3.65)}
+ {6(1 + (3 − 1)0.4854)4 − 3 cos(1 + (3 − 1)0.4854) + 3.65)}
+ {6(1 + (3 − 1)0.4218)4 − 3 cos(1 + (3 − 1)0.4218) + 3.65)}
+ {6(1 + (3 − 1)0.9595)4 − 3 cos(1 + (3 − 1)0.9595) + 3.65)}
+ {6(1 + (3 − 1)0.8003)4 − 3 cos(1 + (3 − 1)0.8003) + 3.65)}
+ {6(1 + (3 − 1)0.9157)4 − 3 cos(1 + (3 − 1)0.9157) + 3.65)}
+ {6(1 + (3 − 1)0.6557)4 − 3 cos(1 + (3 − 1)0.6557) + 3.65)}
+ {6(1 + (3 − 1)0.1578)4 − 3 cos(1 + (3 − 1)0.1578) + 3.65)}
= 353.35188

▪ Todos los 𝑢𝑖 fueron generados en Matlab.

e) Error de Aproximación

Sea X una variable aleatoria con distribución F, con primero y segundo momento finitos,

g una función continua y sea I = E(g(X)). Sea 𝑥1 , 𝑥2 , . . . , 𝑥𝑛 una muestra de variables aleatorias
1
independientes con distribución F y denótese por 𝐼̂ 𝑀
𝑀 = 𝑀 ∑𝑖=1 𝑔(𝑋𝑖 ).
62

𝜎
Si σ es la desviación estándar de g(X), entonces se tiene que es la desviación estándar
√𝑀

de 𝐼̂
𝑀 , por ser las Xi variables aleatorias independientes.

(𝐼−𝐼̂
𝑀)
Por el Teorema del Límite Central se sabe que, para M grande, 𝑍𝑀 = 𝜎 se comporta como
( )
√𝑀

una variable aleatoria normal con media cero y varianza uno por lo que:

𝑐𝜎
𝑃(|𝐼 − 𝐼̂
𝑀| < ) = 𝑃 (|𝑍𝑀 | < 𝑐 ) ≈ 2Φ(𝑐 ),
√𝑀

1 𝑐 −𝑥 2 /2
Con Φ(𝑐 ) = ∫ 𝑒 𝑑𝑥 y c se selecciona dependiendo de la probabilidad que se desee
2𝜋 0

obtener. Por ejemplo, si se quiere que la probabilidad sea .95, se selecciona a c como 1.96.

𝜎
Por lo tanto, el error que se comete al usar el método de Monte-Carlo es aproximadamente .
√𝑀

Como se observa, si σ ≈ 1, se requiere de M = 104 para tener al menos dos cifras significativas.

Este resultado permite estimar un intervalo de confianza de α %. Para ello se selecciona

c de tal forma que Φ(c) = α/2. De esta manera, con probabilidad α podemos asegurar que

el valor exacto de la esperanza I está en el intervalo

𝑐𝜎 𝑐𝜎
[𝐼̂
𝑀− , 𝐼̂
𝑀+ .]
√𝑀 √𝑀

El problema para usar el resultado anterior es que hay que conocer el valor de la desviación

estándar de g(X). Lo que se hace en la práctica es estimarla por la varianza muestral. Con este

intervalo se determina el tamaño que se requiere que tenga M para tener la precisión deseada. Por

ejemplo, si se desea tener un intervalo de confianza del 95 % de longitud 10-2 se debe escoger M

> 4(1.96)2 𝜎 2g104. (Barrera, 2008)

Error cuadrático medio


63

Desde el punto de vista estadístico el método de Monte-Carlo genera un estimador

insesgado ya que 𝐸(𝐼𝑀 ) = 𝐼. Por otro lado, el error cuadrático medio se define por

2
𝐸 ((𝐼 − 𝐼̂ ̂ 2 ̂
𝑀 ) ) = 𝐸(𝐼 − 𝐸(𝐼𝑀 )) + 𝑉𝑎𝑟(𝐼𝑀 )

dado que el estimador es insesgado, existe una constante C > 0 tal que

2 𝐶𝜎 2
𝐸 ((𝐼 − 𝐼̂ ̂
𝑀 ) ) = 𝑉𝑎𝑟(𝐼𝑀 ) ≈
𝑀

Si se desea reducir el error cuadrático medio lo que hay que hacer es reducir σ o incrementar

el tamaño M de la muestra de variables aleatorias. A veces el valor de M es tan grande que es

costoso incrementar la muestra, por lo que se ha optado por generar métodos para reducir la

varianza; estos métodos se conocen con el nombre de métodos de reducción de varianza. (Barrera,

2008)
64

Referencias

Análisis Numérico. (2010). En J. Gutiérrez, M. Olmos, & J. Casillas. McGrawHill.

Burden, R. L., Faires, D. J., & Burden, A. M. (2017). Análisis Númerico. Cengage Learning.

Castro, C. (2013). Métodos Numéricos. Obtenido de

https://cristiancastrop.files.wordpress.com/2010/09/catedra-metodos-numericos-2013-

unsch-041.pdf

Derivadas Numéricas. (2016). En T. F. Calderón, Métodos numéricos que deber saber (Primera

ed.). Universidad Nacional de Colombia. Obtenido de

https://books.google.hn/books?id=yzSrDwAAQBAJ&pg=PT119&dq=para+que+podemo

s+usar+la+diferencia+numerica&hl=en&sa=X&ved=0ahUKEwjgkOLG_cHpAhUPVN8

KHcMGA38Q6AEIKTAA#v=onepage&q=para%20que%20podemos%20usar%20la%20

diferencia%20numerica&f=false

Desconocido. (26 de septiembre de 2013). La División algebraica por el método de Horner.

Obtenido de https://prezi.com/ywb5iv_but76/la-division-algebraica-por-el-metodo-de-

horner/

Desconocido. (28 de febrero de 2013). Método de Newton Raphson Y Método de la secante.

Obtenido de http://metodosnew.blogspot.com/

Desconocido. (s.f.). Daniel Bernoulli. Obtenido de https://hernanleon1002.wordpress.com/fisica-

de-fluidos-y-termodinamica/segundo-corte/biografias/daniel-bernoulli/

Desconocido. (s.f.). Método de la Secante. Obtenido de

https://sites.google.com/site/ittgiscfap/mtodo-secante
65

Desconocido. (s.f.). Serie de Taylor. Obtenido de

http://www.guiasdeapoyo.net/guias/cuart_mat_e/Serie%20de%20Taylor.pdf

Diferenciación numérica de funciones. (2007). En R. D. Giraldo, Métodos numéricos en quimica

con Matlab (Primera ed., pág. 88). Universidad de Antioquia. Obtenido de

https://books.google.hn/books?id=K1M4iJHKS1UC&printsec=frontcover#v=onepage&q

&f=false

El residuo en la expansión de la serie de Taylor. (2006). En S. Chapra, & R. Canale, Métodos

Numéricos para Ingenieros (Quinta ed., págs. 84-85). McGrawHill.

Faires, R. L. (2015). Numerical Analisis. En R. L. Faires, Numerical Analisis (págs. 92-95).

Brooks/Cole.

Garcia, J. (2015). Métodos Geométricos para aproximar raíces de polinomios con aplicaciones a

procesamiento de señal.

Gonzales, M. (2018). Metodo de Horner.

Gutiérrez, S. E. (s.f.). Diferenciación Numérica. Obtenido de

http://lya.fciencias.unam.mx/gfgf/sc091/archivos/DiferenciacionNumerica.pdf

La Serie de Taylor. (2006). En S. Chapra, & R. Canale, Métodos Numéricos para Ingenieros

(Quinta ed., págs. 78-80). McGrawHill.

Medina, M. Á. (22 de octubre de 2013). La Historia del Método de Newton-Raphson y otro caso

más de mala documentación en el cine . Obtenido de https://www.gaussianos.com/la-

historia-del-metodo-de-newton-raphson-y-otro-caso-mas-de-mala-documentacion-en-el-

cine/.
66

Muto, V. (s.f.). Ceros de Polinomio:Método de Horner. Obtenido de

https://ocw.ehu.eus/file.php/81/capitulo-12.pdf

Navarro, A. (16 de noviembre de 2016). Método de Horner – Algoritmos antiguos. Obtenido de

https://juncotic.com/metodo-de-horner-algoritmos-antiguos/

Numerical Methods for Roots of Polynomials. (2013). En J. McNamee, & V. Pan. Academic

Press-Elsevier.

Padilla, F. (5 de julio de 2014). Teorema de Horner. Obtenido de

https://chuchua79.wordpress.com/teorema-de-horner/

Round-Off Error Instability. (2011). En R. Borden, & D. Faires, Numerical Analysis (Novena ed.,

pág. 182). Brooks/Cole,Cengage Learning.

Sierra, F. R. (2010). Desarrolo conceptual de los metodos iterativos en la resolucion de ecuaciones

no lineales: un enfoque didactico . Salamanca .

Vigil, J. C. (enero de 2011). Application of numerical methods to solve nonlinear equations for

sea wave modeling. Obtenido de http://v-beta.urp.edu.pe/pdf/id/2555/n/application-of-

numerical-methods-to-solve-nonlinear-equations-for-sea-wave-modeling.
67

Anexos

Códigos en Matlab

a. Método de la Secante

El método de la secante es similar al método de regla falsa, sólo que utiliza los puntos en sucesión

estricta Por esta razón, es necesario hacer la prueba de convergencia antes de su implementación,

o bien, estar verificando que las iteraciones no diverjan.

%Este es un programa para calcular raices de una función, mediante


%el método de la secante
clear,clc
f = input ('ingrese una funcion: f(x)=','s');
fx = inline (f);
x0 = input ('ingrese el primer valor: ');
x1 = input ('ingrese el segundo valor: ');
ni = input ('numero maximo de iteraciones: ');
Es = input('ingrese la toleracia de error Es: ');
i=0;
Ea=1;

%Envio y recepcion de valores


[ni,x1,Ea,i]=MetodoSecante(xo,x1,Es,Ea,ni,i,fx);

%Impresion de resultados
if Ea<Es
fprintf('La raiz aproximada es: %0.8f\n',x1);
fprintf('error relativo: %i\n',Ea);
fprintf('Numero de iteraciones:%i\n',i);
else
fprintf('No hay convergencia despues de %i iteraciones\n',i)
fprintf('Error relativo %i\n',Ea);
end

%Envio y recepcion de valores


function [ni,x1,Ea,i]=MetodoSecante(xo,x1,Es,Ea,ni,i,fx);

b. Método de Bernoulli

c. Método de Newton-Horner

% Raíces mediante Horner

n=input('Ingrese el grado del polinomio(el exponente mayor): ')+1;

vectCoeficientes=linspace(0,0,n);

vectMultipliTemporales= linspace(0,0,n);
68

vectMultipliTemporales2= linspace(0,0,n-1);

vectSumasTemporales=linspace(0,0,n);

vectSumasTemporales2=linspace(0,0,n-1);

valoresX=linspace(0,0,n);

fprintf('Recuerde que el polinomio debe estar Ordenado de Mayor a menor Grado

\nEjemplo : 6x³+ 5x² + 3x + 1 \n')

fprintf('Recuerde tambien que si falta por ejemplo el x² cuando le pida el

termino aunque no este ingrese cero 0 \n')

for i= 1: n

fprintf('Ingrese el coeficionete %d',i);

vectCoeficientes(i)=input(': ');

end

Xo=input('ingrese el valor de X0: ');

XoTemp =Xo;

itera=input('ingrese la cantidad de iteraciones: ');

for j=1: itera

%INICIA ITERACION

%PRIMERA PARTE DE LA DIVISION SINTETICA

for i= 1: n

if (i==1)

vectSumasTemporales(i)=vectCoeficientes(i);

vectMultipliTemporales(i)=0;

end

if (i>1)

vectMultipliTemporales(i)=vectSumasTemporales(i-1)*Xo;

vectSumasTemporales(i)=vectCoeficientes(i)+(vectMultipliTemporales(i));

end

end

%SEGUDA PARTE DE LA DIVISION SINTETICA


69

for i= 1: n-1

if (i==1)

vectSumasTemporales2(i)=vectSumasTemporales(i);

vectMultipliTemporales2(i)=0;

end

if (i>1)

vectMultipliTemporales2(i)=vectSumasTemporales2(i-1)*Xo;

vectSumasTemporales2(i)=vectSumasTemporales(i)+(vectMultipliTemporales2(i));

end

end

XoTemp=Xo; %valor de Xo antes de finalizar la iteracion

Xo=Xo-(vectSumasTemporales(n)/vectSumasTemporales2(n-1)); %CALCULAR Xo para la

siguiente iteracion

vectSumasTemporales;

vectSumasTemporales2;

valoresX(j)= Xo; %vector que almacena los valores de X sub n

format long;

fprintf('*/*/*/*/*/ITERACION NO %d /*/*/*/*/*\n', j)

fprintf('%.13f \t',vectCoeficientes)

fprintf('\n')

fprintf('%.13f \t',vectMultipliTemporales)

fprintf('\n

_____________________________________________________________________________

____________ \n')

fprintf('%.13f \t',vectSumasTemporales)

fprintf('\n')

fprintf('%.13f \t',vectMultipliTemporales2)

fprintf('\n

________________________________________________________________\n')
70

fprintf('%.13f \t',vectSumasTemporales2)

fprintf('\n')

fprintf('\n X(%d)=%.13f -(%.13f/ %.13f) = %.13f \t',j,XoTemp,

vectSumasTemporales(n), vectSumasTemporales2(n-1), Xo)

fprintf('\n')

operacion=((Xo - XoTemp)/Xo)*100;

fprintf('\n |Et|= ((%.13f - %.13f) / %.13f )*100 \n',Xo,XoTemp,Xo)

fprintf('\n |Et|= %.13f \n',operacion)

fprintf('\n \n ')

end

valoresX;

d. Método de Jacobi

% METODO ITERATIVO DE JACOBI

clc %permite borrar el area de trabajo


clear %permite borrar las variables almacenadas
format long %permite utilizar la máxima capacidad de la maquina
fprintf('METODO ITERATIVO DE JACOBI\n\n\n')
%fprintf me permite ingresar comentarios de manera textual que pueden
%orientar al usuario en el uso del programa
%input es un comando de solicitud de entrada de datos del usuario.
a=input('Ingrese la matriz de coeficientes:\n ');
b=input('\nIngrese los términos independientes:\n ');
x=input('\nIngrese el vector con las aproximacimaciones Iniciales:\n ');
iter=input('\nIngrese el número máximo de iteraciones:\n ');
tol=input('\nIngrese la tolerancia:\n ');
cond=norm(a)*norm(a^-1);%Se calcula el condicional de la matriz de coeficientes
disp('condicional=')
disp(cond)
% la funcion disp nos permite imprimir una variable en el espacio de trabajo
determinante=det(a);%se calcula el determinante de la matriz de coeficientes
if determinante==0
disp('El determinante es cero, el problema no tiene solución única')
return
end
n=length(b);%numero de elementos del vector b
d=diag(diag(a)); %obtencion de la matriz diagonal
l=d-tril(a); %obtencion de la matriz diagonal superior L
u=d-triu(a);%obtencion de la matriz diagonal inferior u
fprintf('\n SOLUCION:\n')
fprintf('\nLa matriz de transicion de jacobi:\n')
T=d^-1*(l+u); % matriz de transicion de jacobi
disp(T)
re=max(abs(eig(T))) %calculo del radio espectral
71

if re>1
disp('Radio Espectral mayor que 1')
disp('el método no converge')
return
end
fprintf('\nEl vector constante es::\n')
C=d^-1*b; % vector constante C, para el metodo
disp(C)
i=0;
err=tol+1;
z=[i,x(1),x(2),x(3),err]; %vector que me permite graficar la tabla
while err>tol & i<iter
xi=T*x+C;
%disp(xi)

err=norm(xi-x); %norma 2
%err=max(abs(xi-x)); %norma 1
%err=norm(xi-x)/norm(xi); %norma relativa
x=xi;
i=i+1;
z(i,1)=i;
z(i,2)=x(1);
z(i,3)=x(2);
z(i,4)=x(3);
z(i,5)=err;
end
fprintf('\nTABLA:\n\n n x1 x2 x3 Error\n\n ');
disp(z)%impresión de la tabla.

e. Método del Gradiente Conjugado

function [x, s ] = precondconjgrad(A, b, tol, smax, solveM),


n = length(b);
x = zeros(n, 1);
r = b;
z = solveM(r);
p = z;
delta = r' * p;
nr = norm(r);
s=0;
while (s < smax) && (nr >= tol),
q= A * p;
alpha = delta / (p' * q);
x = x + alpha * p;
rold = r;
r = r – alpha * q;
z = solveM(r);
deltaold = delta;
delta = r' * z;
nr = norm (r);
beta = delta / deltaold;
p = z + beta * p;
s = s + 1;
end
end
72

f. Derivación Numérica

syms x;

f=input('Ingrese la funcion f: ');

x=input('Ingrese el punto donde desea evaluar la derivada: ');

h=input('Ingrese el tamaño de paso con el que desea evaluar: ');

f2=subs(f,x+2*h);

f1=subs(f,x+h);

f0=subs(f,x);

f_1=subs(f,x-h);

f_2=subs(f,x-2*h);

segundaderivada3puntos=(f_1-2*f0+f1)/h^2

segundaderivada5puntos=(-f_2+16*f_1-30*f0+16*f1-f2)/(12*h^2)

terceraderivada3puntos=(-3*f_1+3*f1)/(2*h^4)

terceraderivada5puntos=(-f_2+2*f_1-2*f1+f2)/(2*h^3)

end

g. Método de Romberg

%-------Integracion de Romberg---------%

clear

clc

syms x;

f = input('Ingrese la funcion: ');

a = input('Ingrese limite inferior, a: ');

b = input('Ingrese el limite superior, b: ');

n = input('Numero de subintervalos, n: ');

h = b-a;

r = zeros(2,n+1);

r(1,1) = (h/2)*(subs(f,a)+subs(f,b));
73

fprintf('\nTabla de Integracion de Romberg:\n');

fprintf('\n %11.5f\n\n', r(1,1));

for i = 2:n

sum = 0;

for k = 1:2^(i-2)

sum = sum+subs(f,a+(k-0.5)*h);

end

r(2,1) = (r(1,1)+h*sum)/2;

for j = 2:i

l = 2^(2*(j-1));

r(2,j) = r(2,j-1)+(r(2,j-1)-r(1,j-1))/(l-1);

end

for k = 1:i

fprintf(' %11.5f',r(2,k));

end

fprintf('\n\n');

h = h/2;

for j = 1:i

r(1,j) = r(2,j);

end

end

h. Método de Montecarlo

%-----Integracion Por Metodo Montecarlo------%

clear
74

clc

format long;

syms x;

a=input('Ingrese el limite inferior: ');

b=input('Ingrese el limite superior: ');

m=input('Ingrese M: ');

f=input('Ingrese la funcion a integrar: ');

g=0;

j=0;

for t=1:m

u=rand(1);

g=a+(u.*(b-a));

j=subs(f,g)+j;

s=j*((b-a)/m);

end

fprintf(' El resultado es: %f ' , s)

También podría gustarte