Métodos Numéricos. Grado en Ingeniería en Informática Tema...
Transcript of Métodos Numéricos. Grado en Ingeniería en Informática Tema...
ULPGCLogo
Métodos Numéricos.Grado en Ingeniería en Informática
Tema 1 : Aritméticas de Precisión Finita
Luis Alvarez León
Univ. de Las Palmas de G.C.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 1 / 31
ULPGCLogo
Contenido
1 Los diferentes tipos de números y como se escriben en base 2
2 Las aritméticas standard de 32 y 64 bits
3 El tratamiento de las excepciones en una aritmética
4 La unidad de redondeo de una aritmética
5 Acotaciones del error de redondeo
6 Comparación de variables
7 Fuentes de errores númericos
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 2 / 31
ULPGCLogo
Contenido
1 Los diferentes tipos de números y como se escriben en base 2
2 Las aritméticas standard de 32 y 64 bits
3 El tratamiento de las excepciones en una aritmética
4 La unidad de redondeo de una aritmética
5 Acotaciones del error de redondeo
6 Comparación de variables
7 Fuentes de errores númericos
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 3 / 31
ULPGCLogo
Aritméticas de precisión finita
Tipos de NúmerosEjemplo de números naturales = ? 1Ejemplo de números enteros = ? −1Ejemplo de números racionales = ? 1
3
Ejemplo de números irracionales = ? π,√
2Ejemplo de números complejos = ? 2 + 3i
Verdadero o Falso ?¿Los números racionales tienen siempre un número finito decifras decimales? : verdadero o falso? Falso 1
3 = 0,3333333.....¿Los números irracionales tiene un número infinito de cifrasdecimales ? :verdadero o falso? Verdadero, en caso contrarioserían racionales 0,789 = 789
1000
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 4 / 31
Notes
Notes
Notes
Notes
ULPGCLogo
Aritméticas de precisión finita
TeoremaUn número real positivo y se puede expresar como
y = 2e∞∑
n=0
an
2n = 2e(
a0 +a1
2+
a2
22 + · · · + · · ·)
donde e es un número entero, a0 = 1, y para n > 0, an = 0 ó an = 1.
Ejemplo (Expresion de números sencillos)
5 = 2?(
1 +?2
+?22 +
?23 +
?24 + ....
)
5 = 22(
1 +02+
122 +
023 +
024 + ....
)
11 = 2?(
1 +?2
+?22 +
?23 +
?24 + ....
)
11 = 23
(1 +
?2
+?22 +
?23 +
?24 + ....
)
11 = 23
(1 +
02+
?22 +
?23 +
?24 + ....
)
11 = 23
(1 +
02+
122 +
?23 +
?24 + ....
)
11 = 23
(1 +
02+
122 +
123 +
?24 + ....
)
11 = 23(
1 +02+
122 +
123 +
024 + ....
)
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 5 / 31
ULPGCLogo
Aritméticas de precisión finita
ProblemaDemostrar que al representar el número real 0,1 como
0,1 = 2e∞∑
n=0
an
2n
el número de elementos no nulos an es infinito.
ProblemaRepresentar el número 0,703125 como
0,703125 = 2e∞∑
n=0
an
2n
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 6 / 31
ULPGCLogo
Aritméticas de precisión finita
Por tanto, en una aritmética de precisión finita, los números realesdistintos de cero se representan como
Definición
y = ±2et∑
n=0
an
2n
donde e varía entre dos valores limites emin ≤ e ≤ emax . Al valor t sele llama precisión de la aritmética. A la secuencia a0a1a2a3......at ,(donde ai ∈ {0,1}) se le denomina mantisa. Hay que hacer notar aquíque, dado que hemos impuesto siempre que a0 = 1, el número 0debemos añadirlo a la aritmética, ya que 0 no se puede representarde la forma anterior.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 7 / 31
ULPGCLogo
Aritméticas de precisión finita
ProblemaCalcular los valores positivos mínimo y máximo que puede tomar unnúmero real en una aritmética de precisión finita en función de t , eminy emax .
Solución :Número real mínimo de la aritméticaymin =2?
∑tn=0
?2n 2emin
(1 +
∑tn=1
02n
)Número real máximo de la aritméticaymax =2?
∑tn=0
?2n 2emax
(∑tn=0
12n
)∑t
n=012n = ? 1− 1
2t+1
1− 12
=2− 12t
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 8 / 31
Notes
Notes
Notes
Notes
ULPGCLogo
Aritméticas de precisión finita
ProblemaCalcular todos los números reales que se pueden construir tomando 5bits de la forma siguiente: 1 bit para el signo, 2 bits para la mantisa (esdecir t = 3, puesto que a0 = 1 y sólo se almacenan a1 y a2) y 2 bitspara el exponente e, tomando como rango de e = −2,−1,0,1.Representar dichos números sobre una recta.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 9 / 31
ULPGCLogo
Aritméticas de precisión finita
Solución: Los valores posibles positivos se representan en lasiguiente tabla
e a1 = a2 = 0 a1 = 0,a2 = 1 a1 = 1,a2 = 0 a1 = a2 = 1e = −2 1
22122 + 1
24122 + 1
23122 + 1
23 + 124
e = −1 ?12 ?1
2 + 123 ?1
2 + 122 ?1
2 + 122 + 1
23
e = 0 ?1 ?1 + 122 ?1 + 1
2 ?1 + 12 + 1
22
e = 1 ?2 ?2 + 12 ?2 + 1 ?2 + 1 + 1
2
los valores negativos son los mismos cambiados de signo.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 10 / 31
ULPGCLogo
Aritméticas de precisión finita
Si representamos los números positivos sobre una recta obtenemos
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 11 / 31
ULPGCLogo
Contenido
1 Los diferentes tipos de números y como se escriben en base 2
2 Las aritméticas standard de 32 y 64 bits
3 El tratamiento de las excepciones en una aritmética
4 La unidad de redondeo de una aritmética
5 Acotaciones del error de redondeo
6 Comparación de variables
7 Fuentes de errores númericos
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 12 / 31
Notes
Notes
Notes
Notes
ULPGCLogo
Aritméticas de precisión finita
En 1985, la sociedad I.E.E.E. presentó una serie de especificacionesestándares para la definición de una aritmética de precisión finita paralos números reales. En este trabajo, se codifica un número real ensimple precisión utilizando 32 bits de memoria, de los cuales 23 bitsse utilizan para la mantisa (es decir t = 23 puesto que a0 = 1 no sealmacena), 1 bit se utiliza para el signo y 8 bits se utilizan para elexponente e, lo cual da un rango de 28 = 256 valores posibles para elexponente e. En este caso, por ejemplo, se toma emin = −126 yemax = 127. Como puede observarse, el número total de exponentesposibles es 254, dos menos que los 256 posibles, ello se hace así,porque se reservan dos casos para tratar las denominadasexcepciones, como se verá más adelante.El valor máximo que puede tomar un número en esta aritmética es
ymax = 212723∑
n=0
12n = 3.4× 1038
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 13 / 31
ULPGCLogo
Aritméticas de precisión finita
y el valor mínimo positivo es
ymin = 2−126 × 1 = 1.18× 10−38
Además, el número de combinaciones posibles que puede tener lamantisa es 223 ≈ 1.68× 107. Es decir, la aritmética tiene unaprecisión de 7 dígitos decimales.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 14 / 31
ULPGCLogo
Aritméticas de precisión finita
También se define en este trabajo de I.E.E.E. un estándar para una aritmética endoble precisión. En este caso, se utilizan 64 bits para almacenar un número real,de los cuales 52 bits se utilizan para la mantisa (t = 52), 1 bit para el signo y 11bits para el exponente, lo que da lugar a 211 = 2048 posibilidades de elección deexponente e. En este caso, se toma emin = −1022 y emax = 1023.Por tanto, el valor máximo que puede tomar un número real en esta aritmética es
ymax = 2102352∑
n=0
12n = 1.78× 10308
y el valor mínimo positivo es
ymin = 2−1022 × 1 = 2.23× 10−308
Además, el número de combinaciones posibles que puede tener la mantisa es252 ≈ 9.0×1015. Es decir, la aritmética tiene una precisión de 15 dígitos decimales.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 15 / 31
ULPGCLogo
Contenido
1 Los diferentes tipos de números y como se escriben en base 2
2 Las aritméticas standard de 32 y 64 bits
3 El tratamiento de las excepciones en una aritmética
4 La unidad de redondeo de una aritmética
5 Acotaciones del error de redondeo
6 Comparación de variables
7 Fuentes de errores númericos
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 16 / 31
Notes
Notes
Notes
Notes
ULPGCLogo
Aritméticas de precisión finita
Tratamiento de las excepciones en el estándar de I.E.E.E.
Infinito∞ =? 1
0 = 2emax+1 (1 + 02 + 0
22 + 023 + 0
24 + .......)
(ai = 0)Operación no validaNaN =? √−1 = 2emax+1 (1 + 0
2 + 022 + 1
23 + 024 + .......
)(algún
ai 6= 0)El cero0 = ? 2emin−1 (1 + 0
2 + 022 + 0
23 + 024 + .......
)(ai = 0)
Números más pequeñosy = ? 2emin−1 (0
2 + 022 + 1
23 + 024 + .......
)(a0 = 0 y algún ai 6= 0)
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 17 / 31
ULPGCLogo
Aritméticas de precisión finita
ProgramaPseudocódigo para calcular el número positivo (mayor que cero) máspequeño
Algoritmo Menor_Numero_Positivovariable real A←1.variable entera M←0mientras A>0 hacer
A←A/2M←M+1
fin mientrasescribir(M-1)
fin algoritmo
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 18 / 31
ULPGCLogo
Aritméticas de precisión finita
ProgramaPseudocódigo para calcular el mayor número positivo de unaaritmética. El programa devuelve un entero M tal que 2M es el númeropositivo mayor posible.
Algoritmo Mayor_Numero_Positivovariable real A←1.variable real B←2.variable entera M←0mientras B>A hacer
A←2*AB←2*AM←M+1
fin mientrasescribir(M-1)
finalgoritmoLuis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 19 / 31
ULPGCLogo
Aritméticas de precisión finita
ProblemaDada una aritmética de precisión finita cualquiera, calcular la distancia que hay entre elnúmero 1 y su inmediato superior, es decir, el número que va después de 1, y ladistancia entre el número 1 y su inmediato inferior.
Solución:el número inmediato superior a 1 en la aritmética es
?1 +12t
y el número inmediato inferior a 1 viene dado por
?2−1(
1 +12+ ..+
12t
)=
12 −
12t+2
1− 12
= 1− 12t+1
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 20 / 31
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Los diferentes tipos de números y como se escriben en base 2
2 Las aritméticas standard de 32 y 64 bits
3 El tratamiento de las excepciones en una aritmética
4 La unidad de redondeo de una aritmética
5 Acotaciones del error de redondeo
6 Comparación de variables
7 Fuentes de errores númericos
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 21 / 31
ULPGCLogo
Aritméticas de precisión finita
Dado un número real cualquiera y , al representarlo en una aritméticade precisión finita se produce un error de redondeo, llamaremos y ∈ Aal número real que mejor aproxima a y dentro de A.
DefiniciónDada una aritmética de precisión finita, se define la unidad deredondeo u como
u = ? 12t
Por ejemplo, si t = 23 (reales en simple precisión) u = 2−23 ≈ 10−8, yen doble precisión (t = 52), u ≈ 10−16.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 22 / 31
ULPGCLogo
Aritméticas de precisión finita
ProgramaPseudocódigo para calcular la unidad de redondeo (precisión de laaritmética) de una aritmética. El programa devuelve un entero M talque u = 2−M
Algoritmo Unidad_Redondeovariable real A←1.variable real B←2variable entera M←1mientras B>1 hacer
A←A/2B←1+AM←M+1
fin mientrasescribir(M-1)
fin algoritmo
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 23 / 31
ULPGCLogo
Contenido
1 Los diferentes tipos de números y como se escriben en base 2
2 Las aritméticas standard de 32 y 64 bits
3 El tratamiento de las excepciones en una aritmética
4 La unidad de redondeo de una aritmética
5 Acotaciones del error de redondeo
6 Comparación de variables
7 Fuentes de errores númericos
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 24 / 31
Notes
Notes
Notes
Notes
ULPGCLogo
Aritméticas de precisión finita
A continuación, mostraremos un resultado que indica el error deredondeo máximo que se produce al aproximar un número realcualquiera en una aritmética de precisión finita.
TeoremaSean ymin , ymax los valores positivos menor y mayor de una aritméticade precisión finita. Sea u la unidad de redondeo de dicha aritmética. Siun número real z verifica queymin <| z |< ymax , entonces
| z − z |≤| z | u
donde z es el número más cercano a z en la aritmética.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 25 / 31
ULPGCLogo
Contenido
1 Los diferentes tipos de números y como se escriben en base 2
2 Las aritméticas standard de 32 y 64 bits
3 El tratamiento de las excepciones en una aritmética
4 La unidad de redondeo de una aritmética
5 Acotaciones del error de redondeo
6 Comparación de variables
7 Fuentes de errores númericos
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 26 / 31
ULPGCLogo
Aritméticas de precisión finita
En muchos algoritmos, el test de parada se basa en el hecho de quedos variables estén próximas entre sí. Por ejemplo si queremosdetener un algoritmo cuando las variables A y B coincidanapróximadamente en sus primeras N cifras significativas podremosutilizar como criterio de parada cualquiera de los siguientes :
| A− B |<| A | ·TOL
| A− B |<| B | ·TOL
| A− B |< max {| A |, | B |} · TOL
donde TOL = 10−N . Si queremos que A y B coincidan en todas suscifras significativas menos las N últimas tomaremos TOL = 10N · udonde u es la unidad de redondeo de la aritmética u = 2−t
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 27 / 31
ULPGCLogo
Aritméticas de precisión finita
En número 0 también es un caso especial cuando comparamosnúmeros. Si A ó B valen 0, los criterios de comparación anteriores nofuncionan bien. Para evitar este problema se le suele sumar unnúmero pequeño positivo al módulo al hacer la comparación, es decirharemos :
| A− B |< (| A | + ε) · TOL
| A− B |< (| B | + ε) · TOL
| A− B |< (max {| A |, | B |}+ ε) · TOL
donde ε es un número pequeño que depende de la aplicaciónnumérica en concreto que estemos implementando. A lo largo delcurso siempre utilizaremos, por sencillez, ε = 1
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 28 / 31
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Los diferentes tipos de números y como se escriben en base 2
2 Las aritméticas standard de 32 y 64 bits
3 El tratamiento de las excepciones en una aritmética
4 La unidad de redondeo de una aritmética
5 Acotaciones del error de redondeo
6 Comparación de variables
7 Fuentes de errores númericos
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 29 / 31
ULPGCLogo
Aritméticas de precisión finitaFuentes de errores numéricos.
Dentro de las posibles fuentes de errores numéricos, destacaremos 3tipos:
Errores de redondeo. Son los que se producen al ”redondear” unnúmero real para poder expresarlo en una aritmética de precisiónfinita:
| z − z |≤ ?| z | uLa mayor parte de los errores de redondeo se producen al realizar enlos algoritmos operaciones con números.
Errores de cambio de base. Es un tipo especial de error de redondeoque se produce al realizar un cambio de base para representar unnúmero real. Por ejemplo al hacer la asignación
A = 0,1
estamos generando un error de cambio de base al pasar el número0.1 en base 10 a una variable donde los números se representan enbase 2.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 30 / 31
ULPGCLogo
Aritméticas de precisión finitaFuentes de errores numéricos.
Errores por Cancelación. Estos errores se producen al restarnúmeros de aproximadamente la misma magnitud. Por ejemplo, en laconocida fórmula del cálculo de raíces de un polinomio de grado 2,ax2 + bx + c = 0 (con a 6= 0)
x = ?−b ±√
b2 − 4ac2a
una forma de evitar la cancelación que se produce cuandob ≈√
b2 − 4ac consiste en calcular primero la raíz de mayor valorabsoluto, es decir
x1 =−(
b + sign(b)√
b2 − 4ac)
2a
y después la segunda raíz x2 utilizando la relación x1x2 = ?c/a.
Luis Alvarez León () Análisis Numérico Univ. de Las Palmas de G.C. 31 / 31
Notes
Notes
Notes
Notes
ULPGCLogo
Métodos Numéricos.Grado en Ingeniería Informática.
Tema 2. Cálculo de ceros de una función
Luis Alvarez León
Univ. de Las Palmas de G.C.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 1 / 67
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 2 / 67
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 3 / 67
ULPGCLogo
Cálculo de los ceros de una función. Ejemplo
Una persona aporta a un plan de pensiones durante 30 años unacuota anual de 600 euros que se va incrementado en un 10 % cadaaño. Al final de los 30 años le dan 156.263 euros. ¿Que interés i nosestá dando el banco por el dinero depositado?
año aportación anual valor a los 30 añosaño 1 600 600×?(1 + i)30
año 2 600×?1,1 600×?1,1× (1 + i)29
año 3 600×?1,12 600×?1,12 × (1 + i)28
año . .......... .............año 30 600×?1,129 600×?1,129 × (1 + i)TOTAL .......... 156263
La ecuación que debemos resolver para obtener el interés i es
29∑n=0
(600) (1,1)n (1.+ i)30−n = 156263
29∑n=0
(600) (1,1)n (1.+ i)30−n − 156263 = 0
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 4 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la bisección. Objetivo: Confinar en un intervalo cada vez más pequeño uncero de la función
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 6 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la bisección. Objetivo: Confinar en un intervalo cada vez más pequeño uncero de la función
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 7 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la bisección. Objetivo: Confinar en un intervalo cada vez más pequeño uncero de la función
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la bisección. Objetivo: Confinar en un intervalo cada vez más pequeño uncero de la función
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la bisección. Objetivo: Confinar en un intervalo cada vez más pequeño uncero de la función
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 10 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la bisección. Objetivo: Confinar en un intervalo cada vez más pequeño uncero de la función
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la bisección. Objetivo: Confinar en un intervalo cada vez más pequeño uncero de la función
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la bisección. Objetivo: Confinar en un intervalo cada vez más pequeño uncero de la función
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 13 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la bisección. Objetivo: Confinar en un intervalo cada vez más pequeño uncero de la función
Descripción del algoritmo del método de la bisección
Se parte de una función f (x) y de un intervalo [a,b] donde lafunción cambia de signo
Se calcula el punto medio x = a+b2
Si f (a)f (x) < 0 hacemos b = x , en caso contrario hacemos a = x
Hacemos iteraciones de este procedimiento hasta que f (x) = 0 o|b − a| ≤ (|b|+ ε)TOL
¿Puede el algoritmo entrar en un bucle infinito de iteraciones? ?No
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 67
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 15 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Regula Falsi
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Regula Falsi
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 17 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Regula Falsi
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 18 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Regula Falsi
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 19 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Regula Falsi
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 20 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Regula Falsi
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Regula Falsi
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 22 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Regula Falsi
En el método de la Regula Falsi el punto x para dividir el intervalo [a,b]es el punto donde se anula la recta que pasa por los puntos (a,f(a)) y(b,f(b)). La ecuación de dicha recta viene dada por la expresión :
? y − f (a)f (b)− f (a)
=x − ab − a
Por tanto, el punto x que se utiliza para dividir el intervalo es :
?x = a− b − af (b)− f (a)
f (a)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 67
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 24 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Newton-Raphson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 25 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Newton-Raphson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 26 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Newton-Raphson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 27 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Newton-Raphson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 28 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Newton-Raphson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 29 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Newton-Raphson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 30 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Newton-Raphson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 31 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Newton-Raphson
En el método de Newton-Raphson, a partir de una aproximación inicialx0 del cero de la función, se va actualizando dicho punto a través delcero de la recta tangente en x0. Para calcular la recta tangenteutilizaremos el desarrollo de Taylor de una función que es :
f (x) = f (x0) + ?f ′(x0)(x − x0) + ? f ′′(x0)2! (x − x0)
2 + ..+ ? f n)(x0)n! (x − x0)
n + .
La ecuación anterior es la recta tangente en x0, si la igualamos a ceroy despejamos obtenemos :
x1 = x0 − f (x0)f ′(x0)
En general, partir de x0 obtenemos una secuencia xn de valores quevan aproximando la raíz, definidos porxn+1 = xn − f (xn)
f ′(xn)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 32 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Newton-Raphson. Criterios de convergencia
En el método de Newton-Raphson el criterio de convergencia habituales :
|xn+1 − xn| ≤ (|xn+1|+ ε)TOL
Hay que poner un número máximo de iteraciones porque el métodopuede no converger.
Además, el algoritmo se puede bloquear cuando ? f ′(xn) = 0
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 33 / 67
ULPGCLogo
Cálculo de los ceros de una función. Pseudocódigopara calcular la raiz cuadrada de un número.
Algoritmo Raiz_Cuadradavariables reales A,TOLvariable entera Nmaxvariables reales X0, X1leer(A,TOL)leer(Nmax)si A<0 entonces
escribir(’El numero A no es positivo’)devolver CODIGO DE ERROR
finsiX0←1para K←1 hasta Nmax hacer
X1←X0-(X0*X0-A)/(2.*X0)si | X0− X1 | <| X1 | * TOL entonces
escribir (’LA RAIZ DE A ES’,X0)devolver X1
sinoX0←X1
finsifinparaescribir(’No máximo de iterac. excedido’)devolver CODIGO DE ERROR
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 34 / 67
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 35 / 67
ULPGCLogo
Cálculo de los ceros de una funciónEl método de la Secante
El método de la Secante es una variante del método de Newton parael caso en que no sea posible calcular la derivada de f (x) de unaforma analítica. En este caso, se sustituye el valor f ′(xn) en elalgoritmo, por el valor
f (xn)− f (xn−1)
xn − xn−1
que corresponde a una aproximación de f ′(xn). Para iniciar elalgoritmo, son necesarias dos aproximaciones iniciales, x0 y x1.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 36 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Secante
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 37 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Secante
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 38 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Secante
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 39 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de la Secante
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 40 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 41 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Müller
En el método de Müller, hacemos una aproximación parabólica de unafunción. A partir de una aproximación inicial x0 del cero de la función,se calcula la parábola tangente a x0 :
f (x) h f (x0) + f ′(x0)(x − x0) +f ′′(x0)
2! (x − x0)2
Se calculan las 2 raices de la parábola y se actualiza el valor de x0tomando la raiz más cercana.
Si no tenemos acceso a las funciones derivadas, hay queaproximarlas. Para ello vamos a tener una secuencia xn de valoresque van aproximando la raíz.
En cada etapa, para pasar de xn−1 a xn, calculamos f ′(xn), f ′′(xn)utilizando los valores xn−1, xn−2, xn−3 de la siguiente forma :
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 42 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Müller
f (x) ≈ f (xn−1) + f ′(xn−1)(x − xn−1) +f ′′(xn−1)
2(x − xn−1)
2
xn = xn−1 +−f ′(xn−1)±
√(f ′(xn−1))
2 − 2f (xn−1)f ′′(xn−1)
f ′′(xn−1)
f ′′(xn−1) ≈ 2f (xn−2)−f (xn−3)
xn−2−xn−3− f (xn−1)−f (xn−2)
xn−1−xn−2
xn−3 − xn−1
f ′(xn−1) ≈f (xn−1)− f (xn−2)
xn−1 − xn−2+
f ′′(xn−1)
2(xn−1 − xn−2)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 43 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Müller
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 44 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Müller
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 45 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Müller
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 46 / 67
ULPGCLogo
Cálculo de los ceros de una funciónMétodo de Müller
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 47 / 67
ULPGCLogo
Funciones matemáticas en C
#include <math.h>
raiz cuadrada√
xsqrt(double x)sqrtf(float x)sqrtl(long double x)
exponencial ex
exp(double x)expf(float x)expl(long double x)
Como usar las funciones matematicas con realsqrtl( (long double) real x)expl( (long double) real x)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 48 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 49 / 67
ULPGCLogo
Cálculo de los ceros de una funciónCaso especial de un polinomio
Algoritmo de Horner para evaluar un polinomio en un punto
P(x) = 4x3 − 3x2 − 2x + 1 = ((4x − 3)x − 2)x + 1
P(2) = ((4(2)− 3)2− 2)2 + 1 = ((5)2− 2)2 + 1 = (8)2 + 1 = 17
Ejemplos:
P(x) = x4 − 2x3 + 3x + 4 = (((?x − 2)?x + 0)?x + 3)?x + 4
P(x) = x4 − x3 + x2 − x + 1 = (((?x − 1)?x + 1)?x − 1)?x + 1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 50 / 67
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 51 / 67
ULPGCLogo
Cálculo de los ceros de una funciónCaso especial de un polinomio
Algoritmo de Horner para evaluar la derivada de un polinomio en unpunto. Se evalua simultáneamente el polinomio y su derivada
P(x) = 4x3 − 3x2 − 2x + 1 = ((4x − 3)x − 2)x + 1
P(2) = ((4(2)− 3)2− 2)2 + 1 = ((5)2− 2)2 + 1 = (8)2 + 1 = 17
P ′(2) = 4(2)2 + 5(2) + 8
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 52 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de una funciónCaso especial de un polinomio
Algoritmo de Horner para evaluar la derivada de un polinomio en unpunto. Se evalua simultáneamente el polinomio y su derivada
P(x) = x4 − x3 + x2 − x + 1 = (((1x − 1)x + 1)x − 1)x + 1
P(3) = ?1272061
P ′(3) = ?1(3)3 + ?2(3)2 + ?7(3)1 + ?20
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 53 / 67
ULPGCLogo
Contenido
1 Introducción
2 El método de la bisección
3 El método de la Regula-Falsi
4 El método de Newton-Raphson
5 El método de la secante
6 El método de Müller
7 Cálculo de los ceros de un polinomio
8 El algoritmo de Horner para evaluar un polinomio y su derivada
9 Separación en intervalos de los ceros de un polinomio
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 54 / 67
ULPGCLogo
Cálculo de los ceros de una funciónAislar todos los ceros de un polinomio en un sólo intervalo
TeoremaSea un polinomio P(x) = anxn + an−1xn−1 + ......+ a0 con an 6= 0,entonces las raíces reales de P(x) están en el intervalo[
−1−maxk=0,..,n−1 | ak |
| an |,1 +
maxk=0,..,n−1 | ak || an |
]
Ejemplo
El polinomio P(x) = 4x3 − 8x2 + x − 3 tiene todas sus raíces en elintervalo
?[−3,3]
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 55 / 67
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 56 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 57 / 67
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 58 / 67
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 59 / 67
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 60 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 61 / 67
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 62 / 67
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 63 / 67
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 64 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 65 / 67
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 66 / 67
ULPGCLogo
Cálculo de los ceros de un polinomioAislar cada raíz en un intervalo diferente
Procedimiento para aislar las raíces de un polinomio P(x) de grado n.
Calculamos el intervalo [−a,a] donde se encuentran todas lasraíces
Derivamos n − 1 veces el polinomio, obteniendo el polinomioPn−1)(x) de grado 1
Calculamos la raiz xn−10 de Pn−1)(x)
Calculamos las raíces xn−20 , xn−2
1 del polinomio Pn−2)(x) en los
intervalos[−a, xn−1
0
]y[xn−1
0 ,a]
Calculamos las raíces xn−30 , xn−3
1 , xn−32 del polinomio Pn−3)(x) en
los intervalos[−a, xn−2
0
],[−xn−2
0 , xn−21
], y[xn−2
1 ,a]
Continuamos de esta manera hasta llegar a las raíces de P(x)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 67 / 67
Notes
Notes
Notes
Notes
ULPGCLogo
Métodos NuméricosGrado en Ingeniería Informática
Tema 3: Interpolación de Funciones I
Luis Alvarez León
Univ. de Las Palmas de G.C.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 1 / 38
ULPGCLogo
Contenido
1 Introducción
2 Interpolación de funciones utilizando los polinomios de Lagrange
3 El error de interpolación
4 Elección de los puntos de interpolacion óptimos para minimizar elerror
5 Aproximación de funciones elementales utilizando polinomios
6 El método de diferencias de Newton para calcular el polinomiointerpolador
7 Aproximación por mínimos cuadrados. Regresión lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 2 / 38
ULPGCLogo
Contenido
1 Introducción
2 Interpolación de funciones utilizando los polinomios de Lagrange
3 El error de interpolación
4 Elección de los puntos de interpolacion óptimos para minimizar elerror
5 Aproximación de funciones elementales utilizando polinomios
6 El método de diferencias de Newton para calcular el polinomiointerpolador
7 Aproximación por mínimos cuadrados. Regresión lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 3 / 38
ULPGCLogo
Interpolación de funcionesPlanteamiento del problema de interpolación
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 4 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funcionesPlanteamiento del problema de interpolación
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 38
ULPGCLogo
Interpolación de funcionesInterpolación lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 6 / 38
ULPGCLogo
Interpolación de funcionesInterpolación lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 7 / 38
ULPGCLogo
Interpolación de funcionesInterpolación polinómica
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funcionesInterpolación polinómica
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 38
ULPGCLogo
Contenido
1 Introducción
2 Interpolación de funciones utilizando los polinomios de Lagrange
3 El error de interpolación
4 Elección de los puntos de interpolacion óptimos para minimizar elerror
5 Aproximación de funciones elementales utilizando polinomios
6 El método de diferencias de Newton para calcular el polinomiointerpolador
7 Aproximación por mínimos cuadrados. Regresión lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 10 / 38
ULPGCLogo
Interpolación de FuncionesPolinomios base de Lagrange
T (0) = 20, T (2) = 18, T (4) = 16, T (6) = 17, T (8) = 21, T (10) = 23
Polinomios base de Lagrange
P0(x) = (x−2)(x−4)(x−6)(x−8)(x−10)(0−2)(0−4)(0−6)(0−8)(0−10)
P2(x) = ? (x−0)(x−4)(x−6)(x−8)(x−10)(2−0)(2−4)(2−6)(2−8)(2−10)
P4(x) = ? (x−0)(x−2)(x−6)(x−8)(x−10)(4−0)(4−2)(4−6)(4−8)(4−10)
P6(x) = ? (x−0)(x−2)(x−4)(x−8)(x−10)(6−0)(6−2)(6−4)(6−8)(6−10)
P8(x) = ? (x−0)(x−2)(x−4)(x−6)(x−10)(8−0)(8−2)(8−4)(8−6)(8−10)
P10(x) = ? (x−0)(x−2)(x−4)(x−6)(x−8)(10−0)(10−2)(10−4)(10−6)(10−8)
Polinomio Interpolador
P5(x) =?20P0(x)+?18P2(x)+?16P4(x)+?17P6(x)+?21P8(x)+?23P10(x)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 38
ULPGCLogo
Interpolación de FuncionesAproximación de la función ex por un polinomio de grado 2
Interpolamos la función ex en los puntos 0,−1,1
Polinomios base de Lagrange
P0(x) = ? (x+1)(x−1)(0−1)(0+1)
P−1(x) = ? (x−0)(x−1)2
P1(x) = ? (x+1)(x−0)2
Polinomio Interpolador
P2(x) = ?e0P0(x) + ?e−1P−1(x) + ?e1P1(x)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funcionesComparación de la función ex (trazo discontinuo) y P2(x)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 13 / 38
ULPGCLogo
Contenido
1 Introducción
2 Interpolación de funciones utilizando los polinomios de Lagrange
3 El error de interpolación
4 Elección de los puntos de interpolacion óptimos para minimizar elerror
5 Aproximación de funciones elementales utilizando polinomios
6 El método de diferencias de Newton para calcular el polinomiointerpolador
7 Aproximación por mínimos cuadrados. Regresión lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 38
ULPGCLogo
Interpolación de FuncionesError de interpolación de Lagrange
TeoremaSea f (x) una función, y PN(x) su polinomio interpolador de Lagrangeen los puntos {xi}i=0,..,N ⊂ [a,b] y x ∈ [a,b], entonces
f (x)− PN(x) =f N+1)(ξ)
(N + 1)!ΠN
i=0(x − xi)
donde ξ es un valor intermedio perteneciente a [a,b].
ProblemaCalcular la expresión del error de interpolación al aproximar la funciónf (x) = sen(x) en el intervalo [0,2π] interpolando en los puntos 0, π2 , πy 3π
2 , y acotarlo superiormente.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 15 / 38
ULPGCLogo
Interpolación de FuncionesPolinomios base de Lagrange
Solución:f (x) = sen(x) f (x)− PN(x) = f N+1)(ξ)
(N+1)! ΠNi=0(x − xi)
f ′(x) = ?cos(x)
f ′′(x) = ?− sen(x) Los puntos a interpolar son0, π/2, π,3π/2f ′′′(x) = −cos(x)
f 4)(x) = sen(x)
La fórmula del error de interpolación es
f (x)− P?3(x) = ?sen(ξ)
4!?x(
x − π
2
)(x − π)
(x − 3π
2
)
Como el valor máximo del sen(x) es 1 y el valor más alejado de lospuntos de interpolación en [0,2π] es 2π podemos acotar el error como:
|f (x)− P3(x)| ≤ 14!
2π(
2π − π
2
)(2π − π)
(2π − 3π
2
)Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción
2 Interpolación de funciones utilizando los polinomios de Lagrange
3 El error de interpolación
4 Elección de los puntos de interpolacion óptimos para minimizar elerror
5 Aproximación de funciones elementales utilizando polinomios
6 El método de diferencias de Newton para calcular el polinomiointerpolador
7 Aproximación por mínimos cuadrados. Regresión lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 17 / 38
ULPGCLogo
Interpolación de FuncionesElección de los puntos de interpolación
TeoremaSea N ≥ 0, y un intervalo [a,b] Se consideran los puntos xi dados por
xi = a +b − a
2
(1 + cos
(2i + 12N + 2
π
))i = 0, ...,N
entonces
maxx∈[a,b] | ΠNi=0(x − xi) |=
(b − a
2
)N+1 12N ≤ maxx∈[a,b] | ΠN
j=0(x − xj) |
para cualquier otra elección posible de valores de interpolación xj .
Por tanto, utilizando este resultado, el error de interpolación máximo vienedeterminado por:
| f (x)− PN(x) |≤maxx∈[a,b]f N+1)(ξ)
(N + 1)!2N
(b − a
2
)N+1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 18 / 38
ULPGCLogo
Interpolación de FuncionesElección de puntos de interpolación
xi = a +b − a
2
(1 + cos
(2i + 12N + 2
π
))i = 0, ...,N
EjemploSe considera [a,b] = [0,1] y N = 5 (es decir 6 puntos deinterpolación). Los puntos de interpolación dados por el teoremaanterior son:
x0 = .982 96x1 = .853 55x2 = .629 41x3 = .370 59x4 = .146 45
x5 = 1.703 7× 10−2
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 19 / 38
ULPGCLogo
Interpolación de FuncionesPolinomios base de Lagrange
ProblemaCalcular el error máximo de interpolación en el intervalo [0,1] alinterpolar la función cos(x) utilizando los puntos de interpolaciónóptimos tomando N = 5.
El error de interpolación viene dado por la expresión:
| f (x)− PN(x) |≤maxx∈[a,b]
∣∣f N+1)(ξ)∣∣
(N + 1)!2N
(b − a
2
)N+1
en nuestro caso N = 5 y la derivada sexta de cos(x) es − cos(x) cuyomáximo en valor absoluto es 1. Por tanto obtenemos:
| f (x)− P5(x) |≤ ? 16!25
(12
)6
= 6.78× 10−7
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 20 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción
2 Interpolación de funciones utilizando los polinomios de Lagrange
3 El error de interpolación
4 Elección de los puntos de interpolacion óptimos para minimizar elerror
5 Aproximación de funciones elementales utilizando polinomios
6 El método de diferencias de Newton para calcular el polinomiointerpolador
7 Aproximación por mínimos cuadrados. Regresión lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 38
ULPGCLogo
Interpolación de FuncionesAproximación de la función ex
Si aproximamos la función ex en el intervalo [0,1] utilizando los puntos :
xi =12
(1 + cos
(2i + 12N + 2
π
))i = 0, ...,N
El error de interpolación viene acotado por :
| ex − PN(x) | ≤ e(N + 1)!2N
(12
)N+1
Por tanto si u es la unidad de redondeo y se verifica que
e(N + 1)!2N
(12
)N+1
≤ u · ex ∀x ∈ [0,1]
Entonces la aproximación será la mejor posible dentro de la aritmética. Eneste ejemplo esto ocurre cuando N = 6, (en una aritmética de 32 bits). Asi,tomando un polinomio de grado N = 6, es decir 7 puntos de interpolación,obtenemos ya la mejor aproximación posible de ex en el intervalo [0,1].
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 22 / 38
ULPGCLogo
Interpolación de FuncionesAproximación de la función cos(x)
También podemos aproximar funciones utilizando el desarrollo de Taylor que viene dado por
f (x) = f (x0) + f ′(x0)(x − x0) + ...f N)(x0)
N!(x − x0)N +
f N+1)(ξ)
(N + 1)!(x − x0)N+1
Por ejemplo, consideremos f (x) = cos(x) en el intervalo [0, π4 ], x0 = 0
cos(x) = 1− x2
2!+
x4
4!− ...+ (−1)N x2N
(2N)!+ (−1)N+1 sin(ξ)x2N+1
(2N + 1)!
La mejor aproximación de cos(x) en una aritmética vendrá dada por la condición∣∣∣∣sin(ξ)x2N+1
(2N + 1)!
∣∣∣∣ ≤ u|cos(x)| →
∣∣∣∣∣ (π/4)2N+1
cos(x)(2N + 1)!
∣∣∣∣∣ ≤ 2 (π/4)2N+1√
2(2N + 1)!≤ u
Por tanto, a partir de esta expresión, y en función de la calidad de la aritmética, se calcularáhasta que término hay que llegar en el desarrollo de Taylor para obtener la aproximacióndeseada.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 38
ULPGCLogo
Contenido
1 Introducción
2 Interpolación de funciones utilizando los polinomios de Lagrange
3 El error de interpolación
4 Elección de los puntos de interpolacion óptimos para minimizar elerror
5 Aproximación de funciones elementales utilizando polinomios
6 El método de diferencias de Newton para calcular el polinomiointerpolador
7 Aproximación por mínimos cuadrados. Regresión lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 24 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de FuncionesMétodo de diferencias de Newton
0 : 20? 18−20
2−0 = −12 : 18
? 16−184−2 = −1
4 : 16? 17−16
6−4 = 12
6 : 17? 21−17
8−6 = 28 : 21
? 23−2110−8 = 1
10 : 23
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 25 / 38
ULPGCLogo
Interpolación de FuncionesMétodo de diferencias de Newton
0 : 2018−20
2−0 = −1
2 : 18 ? −1−(−1)4−0 = 0
16−184−2 = −1
4 : 16 ? 1/2−(−1)6−2 = 3
817−16
6−4 = 12
6 : 17 ? 2−1/28−4 = 3
821−17
8−6 = 2
8 : 21 ? 1−210−6 = −1
423−2110−8 = 1
10 : 23
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 26 / 38
ULPGCLogo
Interpolación de FuncionesMétodo de diferencias de Newton
0 : 2018−20
2−0 = −1
2 : 18 −1−(−1)4−0 = 0
16−184−2 = −1 ? 3/8−0
6−0 = 116
4 : 16 1/2−(−1)6−2 = 3
817−16
6−4 = 12 ? 3/8−3/8
8−2 = 0
6 : 17 2−1/28−4 = 3
821−17
8−6 = 2 ? −1/4−3/810−4 = − 5
48
8 : 21 1−210−6 = −1
423−2110−8 = 1
10 : 23
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 27 / 38
ULPGCLogo
Interpolación de FuncionesMétodo de diferencias de Newton
0 : 2018−20
2−0 = −1
2 : 18 −1−(−1)4−0 = 0
16−184−2 = −1 3/8−0
6−0 = 116
4 : 16 1/2−(−1)6−2 = 3
8 ? 0−1/168−0 = − 1
12817−16
6−4 = 12
3/8−3/88−2 = 0
6 : 17 2−1/28−4 = 3
8 ? −5/48−010−2 = − 5
38421−17
8−6 = 2 −1/4−3/810−4 = − 5
48
8 : 21 1−210−6 = −1
423−2110−8 = 1
10 : 23
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 28 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de FuncionesMétodo de diferencias de Newton
0 : 2018−20
2−0 = −1
2 : 18 −1−(−1)4−0 = 0
16−184−2 = −1 3/8−0
6−0 = 116
4 : 16 1/2−(−1)6−2 = 3
80−1/16
8−0 = − 1128
17−166−4 = 1
23/8−3/8
8−2 = 0 ? −5/384−(−1/128)10−0 = − 1
1920
6 : 17 2−1/28−4 = 3
8−5/48−0
10−2 = − 5384
21−178−6 = 2 −1/4−3/8
10−4 = − 548
8 : 21 1−210−6 = −1
423−2110−8 = 1
10 : 23
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 29 / 38
ULPGCLogo
Interpolación de FuncionesMétodo de diferencias de Newton
0 : 2018−20
2−0 = −1
2 : 18 −1−(−1)4−0 = 0
16−184−2 = −1 3/8−0
6−0 = 116
4 : 16 1/2−(−1)6−2 = 3
80−1/16
8−0 = − 1128
17−166−4 = 1
23/8−3/8
8−2 = 0 −5/384−(−1/128)10−0 = − 1
1920
6 : 17 2−1/28−4 = 3
8−5/48−0
10−2 = − 5384
21−178−6 = 2 −1/4−3/8
10−4 = − 548
8 : 21 1−210−6 = −1
423−2110−8 = 1
10 : 23
P(x) = ?20 ?− 1x ? + 0x(x − 2) ? + 116x(x − 2)(x − 4)
?− 1128x(x − 2)(x − 4)(x − 6) ?− 1
1920x(x − 2)(x − 4)(x − 6)(x − 8)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 30 / 38
ULPGCLogo
Contenido
1 Introducción
2 Interpolación de funciones utilizando los polinomios de Lagrange
3 El error de interpolación
4 Elección de los puntos de interpolacion óptimos para minimizar elerror
5 Aproximación de funciones elementales utilizando polinomios
6 El método de diferencias de Newton para calcular el polinomiointerpolador
7 Aproximación por mínimos cuadrados. Regresión lineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 31 / 38
ULPGCLogo
Interpolación de funcionesAproximación por mínimos cuadrados
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 32 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de FuncionesAproximación por mínimos cuadrados
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 33 / 38
ULPGCLogo
Interpolación de FuncionesAproximación por mínimos cuadrados
La aproximación mínimo cuadrática aproxima, a través de una función,un conjunto de valores de forma global, sin exigir que la funciónaproximante pase exactamente por ese conjunto de puntos.
Dado un conjunto de valores {(xi , yi)}i=1,..,N , la aproximación mínimocuadrática lineal consiste en buscar la recta y = ax + b, tal que lafunción de error cuadrático
E(a,b) =N∑
i=1
(axi + b − yi)2
sea mínima. Esta aproximación en estadística se denomina regresiónlineal
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 34 / 38
ULPGCLogo
Interpolación de FuncionesAproximación por mínimos cuadrados
TeoremaLos valores a y b que minimizan el error cuadrático anterior son
a =N∑N
1 xiyi −∑N
i xi∑N
1 yi
N∑N
1 x2i −
(∑N1 xi
)2 y b =
∑N1 x2
i∑N
1 yi −∑N
1 xiyi∑N
1 xi
N∑N
1 x2i −
(∑N1 xi
)2
Demostración Primero, observamos que, dada la forma cuadráticaque tiene el funcional, debe poseer un mínimo. Además, en un mínimode E(a,b), las derivadas parciales son cero, y por tanto
∂E∂a
(a,b) = 2N∑
i=1
(axi + b − yi) xi = 0 y∂E∂b
(a,b) = 2N∑
i=1
(axi + b − yi) = 0
Esto da lugar a un sistema lineal de ecuaciones cuyas incógnitas sona y b, y cuya resolución lleva al resultado establecido en el teorema.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 35 / 38
ULPGCLogo
Interpolación de FuncionesAproximación por mínimos cuadrados
Efectívamente si partimos deN∑
i=1
(axi + b − yi) xi = 0 yN∑
i=1
(axi + b − yi) = 0
esto nos lleva al sistema :{a∑N
i=1 x2i + b
∑Ni=1 xi =
∑Ni=1 yixi
a∑N
i=1 xi + b∑N
i=1 1 =∑N
i=1 yi
cuya solución por el método de Cramer es
a =
∣∣∣∣∣∑N
i=1 yixi∑N
i=1 xi∑Ni=1 yi N
∣∣∣∣∣∣∣∣∣∣∑N
i=1 x2i∑N
i=1 xi∑Ni=1 xi N
∣∣∣∣∣b =
∣∣∣∣∣∑N
i=1 x2i∑N
i=1 xiyi∑Ni=1 xi
∑Ni=1 yi
∣∣∣∣∣∣∣∣∣∣∑N
i=1 x2i∑N
i=1 xiyi∑Ni=1 xi N
∣∣∣∣∣Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 36 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de FuncionesAproximación por mínimos cuadrados
ProblemaLa evolución de altura de un niño ha sido la siguiente : al nacer : 50cm, a los 3 meses 60 cm, a los 6 meses 67 cm y a los 9 meses 71 cm.Calcular la tasa de variación del peso del niño utilizando unaaproximación mínimo cuadrática.
Solución: Tenemos que calcular a =N∑N
i=1 xi yi−∑N
i=1 xi∑N
i=1 yi
N∑N
i=1 x2i −(
∑Ni=1 xi)
2
Cálculando cada término por separado tenemos
N∑i=1
xiyi = 1221N∑
i=1
xi
N∑i=1
yi = 4464N∑
i=1
x2i = 126
(N∑
i=1
xi
)2
= 324
Por tanto la tasa de variación es a =4 · 1221− 4464
4 · 126− 324=
73
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 37 / 38
ULPGCLogo
Interpolación de FuncionesAproximación por mínimos cuadrados. Gráficas de crecimieno de niños
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 38 / 38
Notes
Notes
Notes
Notes
ULPGCLogo
Métodos Numéricos.Grado en Ingeniería en Informática
Tema 4. Análisis Numérico Matricial I
Luis Alvarez León
Univ. de Las Palmas de G.C.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 1 / 23
ULPGCLogo
Contenido
1 Introducción a los sistemas de ecuaciones
2 Resolución de un sistema triangular de ecuaciones
3 El método de Gauss para resolver sistemas de ecuaciones
4 El método de Cholesky para resolver sistemas de ecuaciones
5 Factorización LU de una matriz
6 Estimación del error numérico al resolver un sistema
7 Método de Crout para sistemas tridiagonales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 2 / 23
ULPGCLogo
Contenido
1 Introducción a los sistemas de ecuaciones
2 Resolución de un sistema triangular de ecuaciones
3 El método de Gauss para resolver sistemas de ecuaciones
4 El método de Cholesky para resolver sistemas de ecuaciones
5 Factorización LU de una matriz
6 Estimación del error numérico al resolver un sistema
7 Método de Crout para sistemas tridiagonales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 3 / 23
ULPGCLogo
Análisis Numérico Matricial IIntroducción
Un sistema lineal de ecuaciones viene dado por la igualdad
Au = b
donde A = (aij) es una matriz de NxN, b = (bi) es un vector de tamaño N quedetermina los términos independientes, y u = (ui) es el vector soluciónbuscado.
Ejemplo −2 −2 06 18 123 11 7
u1u2u3
=
0248
6 18 12
0 4 40 0 −1
u1u2u3
=
248−8
Para que el sistema tenga una única solución debe cumplirse : ?
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 4 / 23
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial ICálculo del determinante de A
|A| =1 2 34 5 67 8 9
= 15 68 9
− 24 67 9
+ 34 57 8
Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:
determinante(A,N)SI N > 1
construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·
determinante(AN ,N − 1)ELSE
determinante=A(1,1)END
No de operaciones del algoritmo recursivo determinante(A,N) = N multiplicaciones, ?sumas y ? llamadas a determinantes de dimensión N − 1
Complejidad total del algoritmo recursivo determinante(A,N) = N! operaciones
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23
ULPGCLogo
Análisis Numérico Matricial ICálculo del determinante de A
10! = 3 · 106 50! = 3 · 1064 100! = 9 · 10157
Uno de los super-ordenadores más rápidos que existen en laactualidad es el BlueGene/L System desarrollado por IBM. Es capazde realizar del orden de 1021operaciones en coma flotante porsegundo. Este ordenador, para calcular un determinante de una matrizde dimensión 100 tardaría del orden de 10129 años.
Por tanto un algoritmo de complejidad factorial con N=100 no es unproblema que pueda resolverse por mucho que avance la tecnologíapues el número de operaciones necesarias es gigantesco einalcanzable.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 6 / 23
ULPGCLogo
Contenido
1 Introducción a los sistemas de ecuaciones
2 Resolución de un sistema triangular de ecuaciones
3 El método de Gauss para resolver sistemas de ecuaciones
4 El método de Cholesky para resolver sistemas de ecuaciones
5 Factorización LU de una matriz
6 Estimación del error numérico al resolver un sistema
7 Método de Crout para sistemas tridiagonales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 7 / 23
ULPGCLogo
Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones
a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1
u0u1.
uN−2uN−1
=
b0b1.
bN−2bN−1
Solución Número de OperacionesuN−1 =
bN−1aN−1,N−1
1 división
uN−2 =bN−2−aN−2,N−1uN−1
aN−2,N−21 división + 1 suma + 1 multiplicación
uk =bk−
∑N−1l=k+1 ak,l ulak,k
k = N − 2, ..,1 1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.
1 + 2 + .....+ N − 1 =N2(N − 1) = O(N2)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones
a0,0 0 0 . 0a1,0 a1,1 0 . 0. . . . .
aN−2,0 . . aN−2,N−2 0aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1
u0u1u2.
uN−1
=
b0b1b2.
bN−1
Solución:
u0 = b0a0,0
u1 =b1−a1,0u0
a1,1
uk =bk−
∑k−1l=1 ak,l ul
ak,kk = 1, ..,N − 1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 23
ULPGCLogo
Contenido
1 Introducción a los sistemas de ecuaciones
2 Resolución de un sistema triangular de ecuaciones
3 El método de Gauss para resolver sistemas de ecuaciones
4 El método de Cholesky para resolver sistemas de ecuaciones
5 Factorización LU de una matriz
6 Estimación del error numérico al resolver un sistema
7 Método de Crout para sistemas tridiagonales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 10 / 23
ULPGCLogo
Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular
−2 −2 06 18 123 11 7
u1u2u3
=
0248
La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0
6 18 123 11 7
u1u2u3
=
0248
−−−−−→pivoteo
6 18 12−2 −2 03 11 7
u1u2u3
=
2408
6 18 12−2 −2 03 11 7
u1u2u3
=
2408
−−−−−−−−−→ceros 1a col .
6 18 120 4 40 2 1
u1u2u3
=
248− 4
6 18 12
0 4 40 2 1
u1u2u3
=
248−4
−−−−−−−−−→ceros 2a col .
6 18 120 4 40 0 − 1
u1u2u3
=
248− 8
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23
ULPGCLogo
Análisis Numérico Matricial IMétodo de Gauss. Recuento de operaciones
a0,0 a0,1 a0,2 . a0,N−1
a1,00 a1,1 a0,2 . a1,N−1.0 .0 . . ..0 . . aN−2,N−2 aN−2,N−1
aN−1,00 aN−1,10 . aN−1,N−20 aN−1,N−1
u0u1u2.
uN−1
=
b0b1b2.
bN−1
Recuento de Operaciones
Convertir en 0 el elemento a1,0 1 división + N multiplicaciones y sumasConvertir en cero a1,0,a2,0, ...aN−1,0 N-1 divisiones + N(N-1) multiplicaciones y sumasConvertir en cero a2,1,a3,1, ...aN−1,1 N-2 divisiones + (N-1)(N-2) multiplicaciones y sumasConvertir en cero aN−1,N−2 1 divisiones + 2 multiplicaciones y sumasTotal Operaciones : (1+2+..+N-1) divisiones
+ (2+6+...+N(N-1)) multiplicaciones y sumas
2 + 6 + ...+ N(N − 1) =N3 − N
3= O(N3)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 23
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción a los sistemas de ecuaciones
2 Resolución de un sistema triangular de ecuaciones
3 El método de Gauss para resolver sistemas de ecuaciones
4 El método de Cholesky para resolver sistemas de ecuaciones
5 Factorización LU de una matriz
6 Estimación del error numérico al resolver un sistema
7 Método de Crout para sistemas tridiagonales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 13 / 23
ULPGCLogo
Análisis Numérico Matricial IMétodo de Cholesky. Ejemplo descomposición de matriz
A =
1 1 41 5 64 6 26
=
b0,0 0 0b1,0 b1,1 0b2,0 b2,1 b2,2
b0,0 b0,1 b0,20 b1,1 b1,20 0 b2,2
1 1 4
1 5 64 6 26
=
b20,0 b0,1b1,0 b0,2b2,0
b0,0b1,0 b21,0 + b2
1,1 b1,0b2,0 + b1,1b2,1
b0,0b2,0 b1,0b2,0 + b1,1b2,1 b22,1 + b2
2,1 + b22,2
b20,0 = 1 −→ b0,0 = 1 b0,0b1,0 = 1 −→ b1,0 = 1
b0,0= 1
b0,0b2,0 = 4 −→ b2,0 = 4b0,0
= 4
b21,0 + b2
1,1 = 5 −→ b1,1 = ±√(
5− b21,0
)=√
(4) = 2
b1,0b2,0 + b1,1b2,1=6 −→ b2,1 =6−b1,0b2,0
b1,1= 6−4
2 = 1
b22,0 + b2
2,1 + b22,2 = 26 −→ b2,2 =
√(26− b2
2,0 − b22,1
)=√(
26− 16− 12)= 3
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 23
ULPGCLogo
Análisis Numérico Matricial IMétodo de Cholesky. Algoritmo general
El algoritmo para descomponer A = B · Bt es el siguiente
Para i = 0, ...,N − 1
bi,i =
√(ai,i −
∑i−1k=0 b2
i,k
)Para j = i + 1, ...,N − 1
bj,i =1
bi,i
(aj,i −
∑i−1k=0 bj,kbi,k
)Fin Para j
Fin Para i
Una vez calculada B, resolvemos el sistema Au = B · Btu = b descomponiéndoloen los siguientes sistemas triangulares :
Bz = b
Btu = z
Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 15 / 23
ULPGCLogo
Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método
Las condiciones para poder aplicar el método de Cholesky son las siguientes :
La matriz A debe ser simétrica ai,j = aj,iLa matriz A debe ser definida positiva
x tAx > 0 para todo vector x 6= 0todos los autovalores de A son positivosLos menores principales de la matriz son positivos
a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .
aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción a los sistemas de ecuaciones
2 Resolución de un sistema triangular de ecuaciones
3 El método de Gauss para resolver sistemas de ecuaciones
4 El método de Cholesky para resolver sistemas de ecuaciones
5 Factorización LU de una matriz
6 Estimación del error numérico al resolver un sistema
7 Método de Crout para sistemas tridiagonales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 17 / 23
ULPGCLogo
Análisis Numérico Matricial IFactorización LU de una matriz.
La factorización LU es un método parecido al de Cholesky que sirvepara matrices no-simétricas. Busca una descompocisión de la forma :
A =
1 1 42 5 61 1 26
=
1 0 0l1,0 1 0l2,0 l2,2 1
u0,0 u0,1 u0,20 u1,1 u1,20 0 u2,2
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 18 / 23
ULPGCLogo
Análisis Numérico Matricial IFactorización LU. Algoritmo general
El algoritmo para descomponer A = L · U es el siguiente
Inicializar a 0 todos los elementos de L y U.Para i = 0, ...,N − 1
li,i = 1ui,i = ai,i −
∑i−1k=0 li,kuk ,i
Para j = i + 1, ...,N − 1ui,j = ai,j −
∑i−1k=0 li,kuk ,j
lj,i = 1ui,i
(aj,i −
∑i−1k=0 lj,kuk ,i
)Fin Para j
Fin Para i
Una vez calculadas L,U, resolvemos el sistema Au = L · U · u = bdescomponiéndolo en los siguientes sistemas triangulares :
Lz = b
Uu = z
Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 19 / 23
ULPGCLogo
Contenido
1 Introducción a los sistemas de ecuaciones
2 Resolución de un sistema triangular de ecuaciones
3 El método de Gauss para resolver sistemas de ecuaciones
4 El método de Cholesky para resolver sistemas de ecuaciones
5 Factorización LU de una matriz
6 Estimación del error numérico al resolver un sistema
7 Método de Crout para sistemas tridiagonales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 20 / 23
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IEstimación del error de un método para resolver sistemas.
Para estimar la fiabilidad de la solución numérica de un sistema deecuaciones, haremos lo siguiente: dada una matriz A, un vector de términosindependientes b y un vector solución u, calculado utilizando alguna técnicanumérica, si la solución es perfecta entonces Au − b = 0. Ahora bien, esto nosuele suceder, porque los errores de redondeo y de cálculo producen que estaestimación no sea exacta. Para estimar el error cometido al resolver el sistemautilizaremos la expresión siguiente, donde e es el vector e = Au − b :
ErrorSistema =1N
∑ |ei ||bi |+ ε
donde N es la dimensión del sistema y ErrorSistema representa el errorrelativo medio al resolver el sistema. En el denominador se añade ε > 0 paraevitar las posibles divisiones por 0. Cuanto más pequeño sea ErrorSistema,mejor aproximada estará la solución del sistema.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 23
ULPGCLogo
Contenido
1 Introducción a los sistemas de ecuaciones
2 Resolución de un sistema triangular de ecuaciones
3 El método de Gauss para resolver sistemas de ecuaciones
4 El método de Cholesky para resolver sistemas de ecuaciones
5 Factorización LU de una matriz
6 Estimación del error numérico al resolver un sistema
7 Método de Crout para sistemas tridiagonales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 22 / 23
ULPGCLogo
Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales
Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1
=
l0 0 . 0
m0 l1 . 00 . . 00 . mN−2 lN−1
1 u0 . 00 1 . 00 . . uN−20 . 0 1
Los vectores mi , li, y ui se calculan utilizando el esquema:
l0 = a0u0 = b0/l0Para i = 1, ..,N − 2
mi−1 = ci−1 La complejidad del método de Crout es O(N1)li = ai −mi−1ui−1ui = bi/li
Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2
A partir de la descomposición se resuelven los 2 sistemas triangularesasociados como en Cholesky mediante un descenso y un remonte
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23
Notes
Notes
Notes
Notes
ULPGCLogo
Métodos NuméricosGrado en Informática
Tema 5: Diferenciación e Integración Numérica
Luis Alvarez León
Univ. de Las Palmas de G.C.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 1 / 43
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 2 / 43
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 3 / 43
ULPGCLogo
Diferenciación e Integración NuméricaEl método de Muller para calcular ceros de una función
El método de Muller para calcular ceros de una función utiliza lassiguientes fórmulas basadas en 3 puntos para calcular la primera ysegunda derivada de una función:
f ′′(xn−1) ≈ 2f (xn−2)−f (xn−3)
xn−2−xn−3− f (xn−1)−f (xn−2)
xn−1−xn−2
xn−3 − xn−1
f ′(xn−1) ≈ f (xn−1)− f (xn−2)
xn−1 − xn−2+
f ′′(xn−1)
2(xn−1 − xn−2)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 4 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmula para calcular la derivada primera con 2 puntos
La manera habitual de aproximar la derivada de una función f (x) en un punto xiconsiste en utilizar el desarrollo de Taylor centrado en xi :
f (x) = f (xi) +f ′(xi)
1!(x − xi) +
f ′′(xi)
2!(x − xi)
2 + ...+f N)(xi)
N!(x − xi)
N + ...
Si tomamos un punto xj 6= xi , y despejamos f ′(xi) obtenemos:
f ′(xi) =f (xj)− f (xi)
xj − xi− f ′′(xi)
2!(xj − xi)− .... =
f (xj)− f (xi)
xj − xi+O
(∣∣xj − xi∣∣)
donde O(∣∣xj − xi
∣∣) indica, básicamente, que el error cometido es una suma depotencias de
∣∣xj − xi∣∣ en la que la potencia más pequeña es 1.. Se denomina orden
de la aproximación a la potencia más pequeña que aparece en el término del error.Por lo tanto, en este caso, diremos que el orden de aproximación es 1. Si xj > xi ,entonces la derivada se calcula hacia adelante, mientras que si xj < xi , la derivada secalcula hacia atrás.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 6 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmula para calcular la derivada primera con 2 puntos
Ejemplo
f (x) = x3 + x f ′(x) = 3x2 + 1xi = 1 f ′(1) = 4
xj = 0 f ′(1) ≈ f (xj )−f (xi )xj−xi
= 0−20−1 = 2
xj = 2 f ′(1) ≈ f (xj )−f (xi )xj−xi
= 10−22−1 = 8
xj = 1.1 f ′(1) ≈ f (xj )−f (xi )xj−xi
= 2.431−21.1−1 = 4.31
xj = 1.01 f ′(1) ≈ f (xj )−f (xi )xj−xi
= 2.040301−21.01−1 = 4.0301
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 7 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmula para calcular la derivada primera con 3 puntos
f (xr ) = f (xi) + f ′(xi )1! (xr − xi) + f ′′(xi )
2! (xr − xi)2 + f ′′′(xi )
3! (xr − xi)3 + ...
f (xl) = f (xi) + f ′(xi )1! (xl − xi) + f ′′(xi )
2! (xl − xi)2 + f ′′′(xi )
3! (xl − xi)3 + ...
Despejamos la derivada primera y nos preguntamos por que factores hay quemultiplicar las igualdades para que al sumar desaparezca el término en la derivadasegunda
(xl − xi)· f ′(xi) = (f (xr )−f (xi ))xr−xi
− f ′′(xi )2! (xr − xi)− f ′′′(xi )
3! (xr − xi)2 − ...
−(xr − xi)· f ′(xi) = (f (xl )−f (xi ))xl−xi
− f ′′(xi )2! (xl − xi)− f ′′′(xi )
3! (xl − xi)2 − ...
Sumando las 2 ecuaciones y despejando obtenemos :
f ′(xi) =(xi − xl)
f (xr )−f (xi )xr−xi
+ (xr − xi)f (xi )−f (xl )
xi−xl
xr − xl+O(h2)
donde h =| xr − xi |≈| xl − xi |
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Diferenciación e Integración NuméricaFórmula para calcular la derivada primera con 3 puntos
En el caso de que los puntos esten equiespaciados, es decirxr = xi + h y xl = xi − h la fórmula para calcular la primera derivada sesimplifica obteniendo
f ′(xi) =f (xi + h)− f (xi − h)
2h+O(h2)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmula para calcular la derivada primera con 3 puntos
Ejemplo
f (x) = x3 + x f ′(x) = 3x2 + 1xi = 1 f ′(1) = 4h = 1 f ′(1) ≈ f (xi+h)−f (xi−h)
2h = 10−02 = 5
h = 0.1 f ′(1) ≈ f (xi+h)−f (xi−h)2h = 2.431−1.629
0.2 = 4.01
h = 0.01 f ′(1) ≈ f (xi+h)−f (xi−h)2h = 2,040301−1,960299
0.02 = 4.0001
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 10 / 43
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmula para calcular la derivada segunda con 3 puntos
Partimos de nuevo de los desarrollos en serie de Taylor y nos planteamos por quefactores hay que multiplicar las ecuaciones para que al sumar desaparezca el términoen derivada primera
(xl − xi)· f (xr ) = f (xi) + f ′(xi )1! (xr − xi) + f ′′(xi )
2! (xr − xi)2 + f ′′′(xi )
3! (xr − xi)3 + ...
−(xr − xi)· f (xl) = f (xi) + f ′(xi )1! (xl − xi) + f ′′(xi )
2! (xl − xi)2 + f ′′′(xi )
3! (xl − xi)3 + ...
Sumando las 2 ecuaciones obtenemos :
(xl − xi)(f (xr )− f (xi))− (xr − xi)(f (xl)− f (xi)) =f ′′(xi )
2
((xr − xi)
2(xl − xi)− (xl − xi)2(xr − xi)
)+
f ′′′(xi )3!
((xr − xi)
3(xl − xi)− (xl − xi)3(xr − xi)
)+ ....
despejando f ′′(xi) y agrupando términos obtenemos:
f ′′(xi) = 2f (xr )−f (xi )
xr−xi− f (xi )−f (xl )
xi−xl
xr − xl+O(h)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Diferenciación e Integración NuméricaFórmula para calcular la derivada segunda con 3 puntos
En el caso de que los puntos esten equiespaciados, es decirxr = xi + h y xl = xi − h, la fórmula para calcular la segunda derivadase simplifica obteniendo
f ′′(xi) =f (xi + h) + f (xi − h)− 2f (xi)
h2 +O(h2)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 13 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmula para calcular la derivada segunda con 3 puntos
Ejemplo
f (x) = x3 + x f ′′(x) = 6xxi = 1 f ′′(1) = 6h = 1 f ′′(1) ≈ f (xi+h)+f (xi−h)−2f (xi )
h2 = 10+0−2·212 = 6
La fórmula para la derivada segunda es exacta para polinomios degrado 3.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmula para calcular la derivada segunda con 3 puntos
Ejemplo
f (x) = x4 f ′′(x) = 12x2
xi = 1 f ′′(1) = 12h = 1 f ′′(1) ≈ f (xi+h)+f (xi−h)−2f (xi )
h2 = 16+0−21 = 14
h = 0.1 f ′′(1) ≈ f (xi+h)+f (xi−h)−2f (xi )h2 = 1,4641+0.6561−2
0.01 = 12.02
h = 0.01 f ′′(1) ≈ f (xi+h)+f (xi−h)−2f (xi )h2 = 1.040604+0.960596−2
0.0001 = 12.0002
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 15 / 43
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Diferenciación e Integración NuméricaDerivadas de funciones de varias variables
Consideremos una función de 2 variables como por ejemplo :
F (x , y) = x3y2
Las derivadas parciales de F (x , y) son :
∂F∂x
(x , y) = 3x2y2 ∂F∂y
(x , y) = 2x3y
Para aproximar numéricamente la derivada parcial en una dirección sepueden utilizar las mismas fórmulas que en una dimensión dejando elresto de variables constantes. Por ejemplo
∂F∂x
(x , y) ≈ (x + h)3y2 − (x − h)3y2
2h∂F∂y
(x , y) ≈ x3(y + h)2 − x3(y − h)2
2h
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 17 / 43
ULPGCLogo
Diferenciación e Integración NuméricaDerivadas de funciones de varias variables
Podemos considerar que una imagen digital es una función de 2variables donde (x , y) representa la posición de un pixel y F (x , y) elnivel de gris o color.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 18 / 43
ULPGCLogo
Diferenciación e Integración NuméricaDerivadas de funciones de varias variables
La derivada en la dirección horizontal de una imagen detecta losbordes verticales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 19 / 43
ULPGCLogo
Diferenciación e Integración NuméricaDerivadas de funciones de varias variables
La derivada en la dirección vertical de una imagen detecta los bordeshorizontales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 20 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 43
ULPGCLogo
Diferenciación e Integración NuméricaIntegración Numérica
∫ b
af (x)dx = ?
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 22 / 43
ULPGCLogo
Diferenciación e Integración NuméricaIntegración Numérica
∫ b
af (x)dx = Area encerrada por la curva y el eje x en [a,b]
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 43
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 24 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss
Sea f (x) una función definida en un intervalo [a,b], vamos a aproximarel valor de la integral de f (x) en [a,b] utilizando la evaluación de f (x)en ciertos puntos de [a,b]. Es decir, una fórmula de integraciónnumérica se puede escribir como∫ b
af (x)dx ≈
N−1∑k=0
wk f (xk )
donde xk representa los puntos de evaluación de f (x) y wk el peso decada punto de evaluación.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 25 / 43
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss. Ejemplo
Veamos como se construye la fórmula de Cuadratura de Gaussutilizando un sólo punto ∫ 1
−1f (x)dx ≈ w0f (x0)
Para calcular w0 y x0 vamos a exigir que la fórmula se exacta parapolinomios de grado 0 y 1.∫ 1
−1 1dx = 2 = w0f (x0) = w0 =⇒ w0 = 2∫ 1−1 xdx = x2
2
]1
−1= 0 = w0f (x0) =⇒ x0 = 0
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 26 / 43
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss
DefiniciónUna fórmula de integración numérica se denomina exacta de orden Msi, para cualquier polinomio P(x) de grado menor o igual que M, lafórmula es exacta. Es decir∫ b
aP(x)dx =
N−1∑k=0
wkP(xk )
La fórmula de cuadratura de Gauss que utiliza N puntos es exacta deorden M = 2N − 1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 27 / 43
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss
DefiniciónSe denominan polinomios de Legendre LN(x) a la familia de polinomios dada porL0(x) = 1, L1(x) = x , y para N = 2,3, ....
NLN(x) = (2N − 1)xLN−1(x)− (N − 1)LN−2(x)
TeoremaSean{xk}k=1,..,N los ceros del polinomio de Legendre LN(x). Si definimos
wk =
∫ 1
−1
Πi 6=k (x − xi)
Πi 6=k (xk − xi)dx
entonces la fórmula de integración numérica generada por los puntos xk y lospesos wk es exacta hasta el orden 2N − 1 para el intervalo [−1,1].
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 28 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss
EjemploA continuación se exponen algunos valores de raíces xk y coeficientes wk enfunción del grado del polinomio LN(x) :
N xk wk2 0,5773502692 1.−0,5773502692 1
3 0,7745966692 0,55555555560. 0,8888888889
− 0,7745966692 0,55555555564 0,8611363116 0,3478548451
0,3399810436 0,6251451549−0,3399810436 0,6251451549− 0,8611363116 0,3478548451
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 29 / 43
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss
Problema(2 puntos) Aproximar el valor de la siguiente integral, utilizando las fórmulas deLegendre para N = 2 y N = 3:∫ 1
−1
(x3 − x4
)dx '
N−1∑k=0
wk f (xk )
Solución:
N = 21∑
k=0wk f (xk ) = 1 · f (0,5773502692) + 1 · f (−0,5773502692) = −.222 22
N = 32∑
k=0wkP (xk ) = 0,555 · f (0,774) +0,888 · f (0) + 0,555 · f (−0,774) = −.4
El valor exacto de la integral es∫ 1−1
(x3 − x4)dx = −2
5 = −.4
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 30 / 43
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss
Cuando el intervalo [a,b] es infinito, es decir, a = −∞ o b =∞, hay que emplearotros métodos para aproximar las integrales. En el caso [a,b] = (−∞,∞), seutilizan los ceros de los denominados polinomios de Hermite. En este caso, lafórmula de integración numérica aproxima la integral de la siguiente forma:∫ ∞
−∞f (x)e−x2
dx ≈N−1∑k=0
wk f (xk )
Los puntos que se utilizan para calcular los integrales son :
N xk wk1 0. 1.772 453 8512 −0.707 106 781 0.886 226 925 5
0.707 106 781 0.886 226 925 5
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 31 / 43
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss
Problema(2 puntos) Aproximar, utilizando dos puntos de aproximación, el valor de la integral:∫ ∞
−∞
11 + x2 dx
Solución:∫∞−∞
11+x2 dx = arctan(x)]∞−∞ = π
2 −−π2 = π =
∫∞−∞
ex2
1+x2 e−x2dx
f (x) = ex2
1+x2∫∞−∞
11+x2 dx ' w1f (x1) + w2f (x2) = 0,8862269255 · f (−0,707106781) +
+0,8862269255 · f (0,707106781) = 1.948 2
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 32 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss. Polinomios de Laguerre
Para el intervalo (0,∞), se utilizan los polinomios de Laguerre. En este caso, lafórmula de integración numérica aproxima:∫ ∞
0f (x)e−xdx ≈
N−1∑k=0
wk f (xk )
Los puntos y pesos de integración son
N xk wk1 1. 1.2 0.585 786 438 0.853 553 390 3
3.414 213 562 0.146 446 609 3
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 33 / 43
ULPGCLogo
Diferenciación e Integración NuméricaMétodos de Cuadratura de Gauss
ProblemaA partir de los ceros y de los pesos asociados a los polinomios de Legendre, ydado un intervalo [a,b] cualquiera, encontrar los puntos xk , y los pesos wk quehacen exacta hasta el orden 2N − 1 una fórmula de integración numérica sobre elintervalo [a,b]
Solución: Tenemos que hacer un cambio de variable en la integral para llevarla alintervalo [−1,1] ∫ b
af (x) dx =
∫ 1
−1f(
(b − a) t + b + a2
)b − a
2dt
Buscamos un cambio de variable x(t) tal que x(−1) = a y x(1) = b. Dicho cambioviene dada por una recta que tiene por ecuación :
x(t)− ab − a
=t − (−1)
1− (−1)→ x(t) =
(b − a) t + b + a2
∫ b
af (x) dx '
N∑k=1
wkb − a
2f(
(b − a) xk + b + a2
)Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 34 / 43
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 35 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmulas de Integración para integrales múltiples
Consideremos una fórmula de integración numérica en una variable∫ 1
−1f (x)dx =
N∑k=1
wk f (xk )
A partir de esta fórmula podemos deducir
∫ 1
−1
∫ 1
−1F (x , y) dxdy =
∫ 1
−1
N∑k=1
wkF (xk , y)dy =N∑
k=1
wk
∫ 1
−1F (xk , y) dy
=N∑
k=1
wk
N∑j=1
wjF(xk , xj
) =N∑
k ,j=1
Wk ,jF(xk , xj
),
donde Wk ,j = wk wj
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 36 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 37 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmulas de Integración Numérica Compuestas. Fórmula del rectángulo
∫ b
af (x)dx =
M∑k=0
∫ xk+1
xk
f (x)dx ≈M∑
k=0
f(
xk + xk+1
2
)(xk+1 − xk )
x0 = a, xM+1 = b
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 38 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmulas de Integración Numérica Compuestas. Fórmula del trapecio
∫ b
af (x)dx =
M∑k=0
∫ xk+1
xk
f (x)dx ≈M∑
k=0
f (xk ) + f (xk+1
2(xk+1 − xk )
x0 = a, xM+1 = b
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 39 / 43
ULPGCLogo
Diferenciación e Integración NuméricaFórmulas de Integración Numérica Compuestas. Fórmula de Simpson
∫ b
af (x)dx =
M∑k=0
∫ xk+1
xk
f (x)dx ≈M∑
k=0
f (xk ) + 4f(
xk+xk+12
)+ f (xk+1)
6(xk+1 − xk )
x0 = a, xM+1 = b
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 40 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Diferenciación e Integración NuméricaFórmulas de Integración Numérica Compuestas. Demostración Fórmula Simpson
∫ xk+1
xk
f (x)dx ≈∫ xk+1
xk
(f (xm) + f ′(xm)(x − xm) +
f ′′(xm)
2(x − xm)2
)dx =
f (xm)(xk+1 − xk ) + 0 +f ′′(xm)
3
(xk+1 − xk
2
)3
Ahora aproximamos f ′′(xm) utilizando los puntos xk , xm, xk+1
f ′′(xm) ≈ f (xk+1)− 2f (xm) + f (xk )(xk+1−xk
2
)2
Por tanto, sustituyendo este valor en la aproximación anterior obtenemos∫ xk+1
xk
f (x)dx ≈ f (xm)(xk+1 − xk ) +f (xk+1)− 2f (xm) + f (xk )
3
(xk+1 − xk
2
)
=f (xk+1) + f (xk ) + 4f
(xk+xk+1
2
)6
(xk+1 − xk )
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 41 / 43
ULPGCLogo
Contenido
1 Introducción a la Diferenciación Numérica
2 Fórmulas para calcular la derivada primera
3 Fórmulas para calcular la derivada segunda
4 Derivadas de funciones de varias variables
5 Integración Numérica
6 Métodos de Cuadratura de Gauss de Integración Numérica
7 Fórmulas de Integración para Integrales Múltiples
8 Fórmulas de Integración Numérica Compuestas
9 Práctica 5. Implementación del Método de Simpson
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 42 / 43
ULPGCLogo
Diferenciación e Integración NuméricaPráctica 4. Implementar el método de Simpson
Implementar en C el método de Simpson. Los parámetros de la función serán: Loslímites del intervalo de integración en precisión real y el número de subintervalosen los que se dividirá el intervalo inicial. La función devolverá el valor de la integralobtenido. Probar el método para aproximar las siguientes integrales con diferentesvalores para el parámetro de número de subintervalos y comprobar que elresultado se aproxima al valor exacto de la integral.
1∫ π
0 sin(x)dx = 2
2∫ 1
0x√
1−x2dx = 1
3∫∞−∞ e−x2
dx =√π = 1.772 5
Nota: Las integrales con límites infinitos se aproximarán cambiando el infinito porun número grande. Cambiar la precisión de la aritmética y valorar si hay diferenciasen los resultados
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 43 / 43
Notes
Notes
Notes
Notes
ULPGCLogo
Métodos NuméricosGrado en Informática
Tema 6: Análisis Numérico Matricial II
Luis Alvarez León
Univ. de Las Palmas de G.C.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 1 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectores
2 Método de Jacobi para calcular autovalores de matrices simétricas
3 Método de la potencia para calcular el autovalor máximo
4 Métodos iterativos de resolución de sistemas de ecuaciones
5 Práctica 7. Implementar el método de relajación
6 Método de Newton-Raphson para sistemas no-lineales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 2 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectores
2 Método de Jacobi para calcular autovalores de matrices simétricas
3 Método de la potencia para calcular el autovalor máximo
4 Métodos iterativos de resolución de sistemas de ecuaciones
5 Práctica 7. Implementar el método de relajación
6 Método de Newton-Raphson para sistemas no-lineales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 3 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectoresdistancia entre 2 puntos en el planoNorma de vectoresNorma de una matrizProducto EscalarBase ortonormal de vectoresautovalores de una matrizRadio espectral de una matrizCondicionamiento de una matriz
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 4 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIDistancia entre 2 puntos en el plano
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 82
ULPGCLogo
Análisis Numérico Matricial IIDistancia entre 2 puntos en el plano. La distancia Euclídea
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 6 / 82
ULPGCLogo
Análisis Numérico Matricial IIDistancia entre 2 puntos en el plano. La distancia L1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 7 / 82
ULPGCLogo
Análisis Numérico Matricial IIDistancia entre 2 puntos en el plano. La distancia L∞
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIDistancia entre 2 puntos en el plano
Consideremos los puntos (1,2) y (3,7)
Distancia Euclídea =√
(3− 1)2 + (7− 2)2
Distancia L1 = | 3− 1 | + | 7− 2 |
Distancia L∞ = | 7− 2 |
Orden entre las distancias
? distancia L∞ ≤ ? distancia Euclídea ≤ ? distanciaL1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectoresdistancia entre 2 puntos en el planoNorma de vectoresNorma de una matrizProducto EscalarBase ortonormal de vectoresautovalores de una matrizRadio espectral de una matrizCondicionamiento de una matriz
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 10 / 82
ULPGCLogo
Análisis Numérico Matricial IIDistancia y norma Lp
distancia Lp entre 2 puntos (x1, x2) y (x ′1, x′2)
distancia Lp =(| x1 − x ′1 |p + | x2 − x ′2 |p
)1/p
Norma Lp de un vector x = (x1, x2, .....xN) y sus propiedades
‖ x ‖p=(∑N
i=1 |xi |p)1/p
Propiedades
1 ‖ x ‖p= 0 si y sólo si x = 02 ‖ λx ‖p=| λ |‖ x ‖p para todo λ y x3 ‖ x + y ‖p≤‖ x ‖p + ‖ y ‖p para todo x , y
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 82
ULPGCLogo
Análisis Numérico Matricial IILugar geométrico de los puntos que verifican ‖ x ‖2≤ 1
Cual es el lugar geométrico de los puntos que verifican
‖ x ‖2=√
x21 + x2
2 ≤ 1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IILugar geométrico de los puntos que verifican ‖ x ‖1≤ 1
Cual es el lugar geométrico de los puntos que verifican
‖ x ‖1=| x1 | + | x2 |≤ 1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 13 / 82
ULPGCLogo
Análisis Numérico Matricial IILugar geométrico de los puntos que verifican ‖ x ‖∞≤ 1
Cual es el lugar geométrico de los puntos que verifican
‖ x ‖1= max{| x1 |, | x2 |} ≤ 1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectoresdistancia entre 2 puntos en el planoNorma de vectoresNorma de una matrizProducto EscalarBase ortonormal de vectoresautovalores de una matrizRadio espectral de una matrizCondicionamiento de una matriz
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 15 / 82
ULPGCLogo
Análisis Numérico Matricial IINorma de una matriz
Sea A una matriz y sea ‖ . ‖ una norma vectorial. Se define la normade A, subordinada a la norma vectorial ‖ . ‖ como
‖ A ‖= supx 6=0‖Ax‖‖x‖
Ejemplos∥∥∥∥( λ 00 λ
)∥∥∥∥ = supx 6=0
‖λx‖‖x‖ = sup
x 6=0
|λ|‖x‖‖x‖ = |λ|∥∥∥∥( 2 0
0 1
)∥∥∥∥2
= supx 6=0
√(2x1)2+x2
2√x2
1+x22
=
√(2·1)2+02√
12+02= 2∥∥∥∥( 2 0
0 1
)∥∥∥∥1
= supx 6=0
|2x1|+|x2||x1|+|x2| = |2·1|+|0|
|1|+|0| = 2∥∥∥∥( 2 00 1
)∥∥∥∥∞
= supx 6=0
max{|2x1|,|x2|}max{|x1|,|x2|} = max{|2·1|,|0|}
max{|1|,|0|} = 2∥∥∥∥( 1 01 1
)∥∥∥∥2
= supx 6=0
√x2
1+(x1+x2)2√x2
1+x22
=
√(1+√
5)2+(1+√
5+2)2√(1+√
5)2+(2)2= 1.618∥∥∥∥( 1 0
1 1
)∥∥∥∥1
= supx 6=0
|x1|+|x1+x2||x1|+|x2| = |1+|1+0|
|1|+|0| = 2∥∥∥∥( 1 01 1
)∥∥∥∥∞
= supx 6=0
max{|x1|,|x1+x2|}max{|x1|,|x2|} = max{|1|,|1+1|}
max{|1|,|1|} = 2
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IINorma de una matriz
TeoremaSea A una matriz y ‖ . ‖ una norma vectorial. Entonces, para cualquiervector x se verifica que
‖ Ax ‖≤‖ A ‖ · ‖ x ‖
Demostración: Si x = 0, la desigualdad es trivial. Si x 6= 0, entonces,puesto que ‖ x ‖> 0, la desigualdad anterior es equivalente a
‖ Ax ‖‖ x ‖
≤ ? ‖ A ‖
Ahora bien, esta desigualdad es cierta por ? la propia definición de‖ A ‖ al tratarse del supremo de todos los cocientes de este tipo
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 17 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectoresdistancia entre 2 puntos en el planoNorma de vectoresNorma de una matrizProducto EscalarBase ortonormal de vectoresautovalores de una matrizRadio espectral de una matrizCondicionamiento de una matriz
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 18 / 82
ULPGCLogo
Análisis Numérico Matricial IIProducto escalar de 2 vectores
DEFINICION: Producto escalar de 2 vectores
(xi , xj) =N∑
k=1
(xi)k(xj)
k
donde (xi)k indica la coordenada k -ésima del vector xi .
Ejemplo: Sean x1 = (1,2,3)T y x2 = (9,8,−5)T , entonces :
(x1, x2) = 1 · 9 + 2 · 8− 3 · 5 = 10
Propiedad importante: ‖ x ‖2=√
(x , x)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 19 / 82
ULPGCLogo
Análisis Numérico Matricial IINormalizar vectores
Normalizar vectoresDado un vector x normalizarlo respecto a la norma ‖ . ‖ consiste en dividirel vector por su norma, es decir, hacer
x‖ x ‖
La norma de un vector normalizado es 1.
Ejemplo:Sea x = (1,2,−3)T , normalizar el vector depende de la normaconsiderada y consiste en hacer :
x‖ x ‖2
=
1/√
142/√
14−3/√
14
x‖ x ‖1
=
1/62/6−3/6
x‖ x ‖∞
=
1/32/3−3/3
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 20 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectoresdistancia entre 2 puntos en el planoNorma de vectoresNorma de una matrizProducto EscalarBase ortonormal de vectoresautovalores de una matrizRadio espectral de una matrizCondicionamiento de una matriz
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 82
ULPGCLogo
Análisis Numérico Matricial IIBase ortonormal de vectores
DEFINICION: Base ortonormal de vectoresUna base ortornormal de vectores de RN son N vectores x1, ....xNnormalizados y tal que el producto escalar entre todos ellos es 0 (es decir losvectores son perpendiculares entre sí).
Ejemplo: los vectores columna de las siguientes matrices forman una baseortonormal de vectores 1 0 0
0 1 00 0 1
1/√
2 1/√
3 −1/√
60 1/
√3 2/
√6
1/√
2 −1/√
3 1/√
6
cos(α) sin(α) 0− sin(α) cos(α) 00 0 1
Propiedad importante: Si x = η1x1 + ...+ ηNxN entonces
‖ x ‖2=√η2
1 + ...+ η2N
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 22 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectoresdistancia entre 2 puntos en el planoNorma de vectoresNorma de una matrizProducto EscalarBase ortonormal de vectoresautovalores de una matrizRadio espectral de una matrizCondicionamiento de una matriz
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 82
ULPGCLogo
Análisis Numérico Matricial IIAutovalores de una matriz
DefiniciónUn autovalor de A es un número real λ tal que existe un vector x,denominado autovector, tal que
Ax = λx
DefiniciónSe denomina polinomio característico P(λ) de la matriz A, al polinomiodado por el determinante
P(λ) =| A− λI |
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 24 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIAutovalores de una matriz
ProblemaCalcular los autovectores de la matriz 1 1 0
1 1 00 0 2
y determinar una base ortonormal de R3 de autovectores de A.
Solución: tenemos que calcular los ceros del polinomio característico|A− λi Id | = 0
∣∣∣∣∣∣1− λ 1 0
1 1− λ 00 0 2− λ
∣∣∣∣∣∣ = ((1− λ)2 − 1)(2− λ) = 0
de donde obtenemos λ1 = 0, λ2 = 2 y λ3 = 2
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 25 / 82
ULPGCLogo
Análisis Numérico Matricial IIAutovalores de una matriz
Calculamos los autovectores de A :
λ1 = 0 1 1 01 1 00 0 2
x1x2x3
=
000
→
x1 = −x2
x3 = 0→ x1 =
1√2−1√
20
λ2, λ3 = 2 −1 1 0
1 −1 00 0 0
x1x2x3
=
000
→
x1 = x2
x3 libre→ x2 =
1√2
1√2
0
, x3 =
001
La matriz,
B =
1√2
1√2
0−1√
21√2
00 0 1
contiene los autovectores de A que forman una base ortonormal de R3.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 26 / 82
ULPGCLogo
Análisis Numérico Matricial IIAutovalores de matrices simétricas
TeoremaTodas las matrices simétricas poseen una base ortonormal deautovectores.
Por tanto, poseen tantos autovalores como dimensión tenga la matriz(aunque alguno de los autovalores puede salir repetido)
No todas las matrices poseen una base de autovectores.
A =
(1 01 1
)tiene como autovalor λ = 1
y tiene como autovector x = (0,1)T
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 27 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectoresdistancia entre 2 puntos en el planoNorma de vectoresNorma de una matrizProducto EscalarBase ortonormal de vectoresautovalores de una matrizRadio espectral de una matrizCondicionamiento de una matriz
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 28 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIRadio espectral de una matriz
DefiniciónSe define el radio espectral de una matriz A como
ρ(A) = maxi{| λi | : λi autovalor de A}
TeoremaSea A una matriz y ‖ . ‖ una norma vectorial. Entonces
‖ A ‖≥ ρ(A)
Demostración: Si λ es un autovalor de A, entonces existe un autovector x talque Ax = λx , por tanto
‖ Ax ‖‖ x ‖
=‖ λx ‖‖ x ‖
= |λ| ≤ ‖ A ‖
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 29 / 82
ULPGCLogo
Análisis Numérico Matricial IInormas de matrices
TeoremaSi los autovectores de una matriz A de dimensión NxN forman una base ortonormal deRN , entonces
‖ A ‖2= ρ(A)
Demostración: Ya sabemos que ‖ A ‖2 ≥ρ(A). Para demostrar la desigualdad en elotro sentido sea x un vector cualquiera, y x1, x2..., xN los autovectores de A, como sonuna base podemos expresar x en dicha base, es decir
x = η1x1 + η2x2 + ..+ ηNxN
Por tanto se tiene que
‖ Ax ‖2‖ x ‖2
=
√λ2
1η21 + ...+ λ2
1η2N√
η21 + ...+ η2
N
≤
√ρ(A)2η2
1 + ...+ ρ(A)2η2N√
η21 + ...+ η2
N
= ρ(A)→ ‖ A ‖2≤ ρ(A)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 30 / 82
ULPGCLogo
Análisis Numérico Matricial IICálculo de las normas de una matriz
TeoremaSea A una matriz cualquiera, entonces
‖ A ‖2=√ρ(tAA)
‖ A ‖1= maxj(∑
i | aij |)
‖ A ‖∞= maxi
(∑j | aij |
)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 31 / 82
ULPGCLogo
Análisis Numérico Matricial IICálculo de las normas de una matriz
Problema: Calcular las normas 2, 1 e infinito de la matriz
A =
(1 01 2
)
Solución
‖ A ‖2=√ρ(tAA) =
√ρ
(2 22 4
)=√√
5 + 3 = 2.288
‖ A ‖1= maxj(∑
i | aij |)
= 2
‖ A ‖∞= maxi
(∑j | aij |
)= 3
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 32 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectoresdistancia entre 2 puntos en el planoNorma de vectoresNorma de una matrizProducto EscalarBase ortonormal de vectoresautovalores de una matrizRadio espectral de una matrizCondicionamiento de una matriz
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 33 / 82
ULPGCLogo
Análisis Numérico Matricial IICondicionamiento de una matriz
El condicionamiento de una matriz es un número que nos indica lacalidad de una matriz cuando se trabaja con ella numéricamente
Ejemplo
Consideremos el siguiente sistema de ecuaciones10 7 8 77 5 6 58 6 10 97 5 9 10
xyzv
=
32233331
cuya solución es (1,1,1,1). Vamos a considerar ahora el mismosistema, perturbando ligeramente el término independiente:
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 34 / 82
ULPGCLogo
Análisis Numérico Matricial IICondicionamiento de una matriz
Ejemplo 10 7 8 77 5 6 58 6 10 97 5 9 10
xyzv
=
32,122,933,130,9
La solución de este sistema es (9.2,-12.6,4.5,-1.1). Como podemosobservar, a pesar de que la perturbación del sistema es del orden de0.1 la perturbación de la solución del sistema puede llegar a ser delorden de 13.6.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 35 / 82
ULPGCLogo
Análisis Numérico Matricial IICondicionamiento de una matriz
Consideremos un sistema de ecuaciones de la forma
Au = b
y el sistema de ecuaciones perturbado
A (u + δu) = b + δb
Queremos controlar el error relativo en la solución del sistema a partirdel error relativo en el término independiente b.
‖ δu ‖‖ u ‖
≤ χ(A)‖ δb ‖‖ b ‖
donde χ(A) es un número que llamaremos condicionamiento de lamatriz. Cuanto más pequeño sea χ(A) mejor comportamiento tendrála matriz A.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 36 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IICondicionamiento de una matriz
Teorema
Si definimos χ(A) =‖ A ‖ · ‖ A−1 ‖ ⇒ ‖ δu ‖‖ u ‖
≤ χ(A)‖ δb ‖‖ b ‖
Demostración:
A(u + δu) = b + δb ⇒ Au = bAδu = δb ⇒ δu = A−1δb
{‖δu‖ ≤ ‖A−1‖‖δb‖‖b‖ = ‖Au‖ ≤ ‖A‖‖u‖ ⇒ 1
‖u‖ ≤‖A‖‖b‖
⇒ ‖δu‖‖u‖
≤ ‖A‖‖A−1‖‖ δb ‖‖ b ‖
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 37 / 82
ULPGCLogo
Análisis Numérico Matricial IICondicionamiento de una matriz
ProblemaDemostrar que, si los autovectores de una matriz A de dimensión NxNforman una base ortonormal de RN , entonces, para la norma 2, secumple que
χ(A)2 =‖ A ‖2 · ‖ A−1 ‖2=maxi{| λi |}mini{| λi |}
Solución:
Ax = λx ⇒ A−1x =1λ
x ⇒ ‖ A−1 ‖2=1
mini{λi}
Nota: En el caso del ejemplo de matrix 4x4 anterior los autovalores dela matriz son 0.01, 0.84, 3.86, y 30.29, por tanto el condicionamientosería
χ(A)2 =30.290.01
= 3029
lo cual indica un condicionamiento bastante malo.Ejemplo
A =
(λ 00 λ
)⇒ χ(A)2 = 1
| A |= 0 ⇒ χ(A)2 =∞χ(µA)2 = χ(A)2
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 38 / 82
ULPGCLogo
Análisis Numérico Matricial IICondicionamiento de una matriz
Ejemplo
A =
(1 01 2
)⇒ A−1 =
(1 0−1
212
)χ (A)2 = ‖A‖2‖A−1‖2 =
√ρ(tAA)
√ρ(tA−1A−1) = 2.618
χ (A)1 = ‖A‖1‖A−1‖1 = 2 · 32
= 3
χ (A)∞ = ‖A‖∞‖A−1‖∞ = 3 · 1 = 3
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 39 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectores
2 Método de Jacobi para calcular autovalores de matrices simétricas
3 Método de la potencia para calcular el autovalor máximo
4 Métodos iterativos de resolución de sistemas de ecuaciones
5 Práctica 7. Implementar el método de relajación
6 Método de Newton-Raphson para sistemas no-lineales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 40 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIMétodo de Jacobi para calcular autovalores de matrices simétricas
Este método se basa en que, dadas dos matrices A y R, se verificaque los autovalores de A son los mismos que los autovalores deR−1AR. :
R−1ARx = λx ⇒ ARx = λRx ⇒{λ es autovalor de Apara el autovector Rx
Las matrices R que se van a utilizar son matrices de rotación :
R =
(cosα sinα− sinα cosα
)⇒ R−1 =
(cosα − sinαsinα cosα
)En 3 variables las matrices de rotación respecto a cada eje son cosα sinα 0− sinα cosα 00 0 1
cosα 0 sinα0 1 0− sinα 0 cosα
1 0 00 cosα sinα0 − sinα cosα
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 41 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodo de Jacobi para calcular autovalores de matrices simétricas
El objetivo del método es convertir A en una matriz diagonal.
R−1AR =
(cosα − sinαsinα cosα
)(a0,0 a0,1a0,1 a1,1
)(cosα sinα− sinα cosα
)=(
a0,0 cos2 α− a0,1 sin 2α + a1,1 sin2 α a0,1 cos 2α−(1
2a1,1 − 12a0,0
)sin 2α
a0,1 cos 2α−(1
2a1,1 − 12a0,0
)sin 2α a0,0 cos2 α− a0,1 sin 2α + a1,1 sin2 α
)
lo que nos lleva a la condición : tan(2α) =2a0,1
a1,1 − a0,0
Ejemplo
A =
(1 11 1
)⇒ tan(2α) = 2
0 ⇒ α = π4 ⇒ R−1AR =
(0 00 2
)Por tanto los autovalores y autovectores de A son :
λ1 = 0⇒ x = R(
10
)=
( √2/2
−√
2/2
)λ2 = 2⇒ x = R
(01
)=
( √2/2√2/2
)Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 42 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodo de Jacobi para calcular autovalores de matrices simétricas
Ejemplo cosα 0 − sinα0 1 0
sinα 0 cosα
1 −1 2−1 2 −12 −1 5
cosα 0 sinα0 1 0
− sinα 0 cosα
tan(2α) =
2a0,2
a2,2 − a0,0=
44
= 1 → α =π
8
cos π8 0 − sin π
80 1 0
sin π8 0 cos π
8
1 −1 2−1 2 −12 −1 5
cos π8 0 sin π
80 1 0
− sin π8 0 cos π
8
=
0,17 −0,54 0−0,54 2,0 −1,30
0,0 −1.30 5,82
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 43 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodo de Jacobi para calcular autovalores de matrices simétricas
Iteración 2 : 1 0 00 cosα − sinα0 sinα cosα
0,17 −0,54 0−0,54 2,0 −1,30
0,0 −1.30 5,82
1 0 00 cosα sinα0 − sinα cosα
tan(2α) =
2a32
a33 − a22=
2 · (−1,30)
5,82− 2,0= −0,68 → α =
arctan(−0,68)
2= −0,3
1 0 00 cosα − sinα0 sinα cosα
0,17 −0,54 0−0,54 2,0 −1,30
0,0 −1.30 5,82
1 0 00 cosα sinα0 − sinα cosα
=
0,17 −0,51 0,15−0,51 1,59 00,15 0 6,23
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 44 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIAlgoritmo del Método de Jacobi para el Cálculo de autovalores. Cálculo de losautovectores
R−1N ...R−1
2 R−11 AR1R2...RN
Si llamamos B = R1R2 · ...RN entonces si B−1AB es diagonal se tieneque los autovectores de A son :
x1 = B
10.0
x2 = B
01.0
.... xN = B
00.1
Es decir, los autovectores de A son los vectores columna de B
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 45 / 82
ULPGCLogo
Análisis Numérico Matricial IIAlgoritmo del Método de Jacobi para el Cálculo de autovalores. Cálculo de losautovectores
En el algoritmo inicializamos B como la matriz identidad. En cadaiteración actualizamo B multiplicándola por la derecha por una matrizde rotación
b0,0 b0,1 b0,2 b0,3b1,0 b1,1 b1,2 b1,3b2,0 b2,1 b2,2 b2,3b3,0 b3,1 b3,2 b3,3
1 0 0 00 cosα 0 sinα0 0 1 00 − sinα 0 cosα
→ p
→ q
Si llamamos B′ a la actualización de B, los únicos términos que hayque actualizar corresponden a :
b′ip = cos(α)bip − sin(α)biq i = 1, ..,N
b′iq = sin(α)bip + cos(α)biq i = 1, ..,N
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 46 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectores
2 Método de Jacobi para calcular autovalores de matrices simétricas
3 Método de la potencia para calcular el autovalor máximo
4 Métodos iterativos de resolución de sistemas de ecuaciones
5 Práctica 7. Implementar el método de relajación
6 Método de Newton-Raphson para sistemas no-lineales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 47 / 82
ULPGCLogo
Contenido
3 Método de la potencia para calcular el autovalor máximoMétodo de la potencia para calcular el autovalor máximoMétodo de la potencia inversa para calcular el autovalor mínimoMétodo de la potencia inversa para calcular el autovalor máscercano a un númeroAlgoritmo general para calcular los autovectores de una matrizcualquiera
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 48 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIMétodo de la potencia para calcular el autovalor máximo
Consideremos la matriz(
1 01 3
)λmax = 3, xmax =
(01
)vamos a hacer iteraciones del esquema
un =Aun−1
‖ un−1 ‖∞partiendo de u0 =
(11
)
u1 = Au0
‖u0‖∞=
(14
)‖ u1 ‖∞= 4
u2 = Au1
‖u1‖∞=
(1/413/4
)‖ u2 ‖∞= 13
4 = 3,25
u3 = Au2
‖u2‖∞=
(1/1340/13
)‖ u3 ‖∞= 40
13 = 3,07
‖ u1 ‖∞= 4 ‖ u2 ‖∞= 3,25 ‖ u3 ‖∞= 3,07 → 3
u1
‖u1‖∞=
(1/41
)u2
‖u2‖∞=
(1/13
1
)u3
‖u3‖∞=
(1/40
1
)→
(01
)Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 49 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodo de la potencia para calcular el autovalor mayor
Si cambiamos el signo a la matriz(−1 0−1 −3
)λmax = −3, xmax =
(01
)vamos a hacer iteraciones del esquema
un =Aun−1
‖ un−1 ‖∞partiendo de u0 =
(11
)
u1 = Au0
‖u0‖∞=
(−1−4
)‖ u1 ‖∞= 4
u2 = Au1
‖u1‖∞=
(1/413/4
)‖ u2 ‖∞= 13
4 = 3,25
u3 = Au2
‖u2‖∞=
(−1/13−40/13
)‖ u3 ‖∞= 40
13 = 3,07
‖ u1 ‖∞= 4 ‖ u2 ‖∞= 3,25 ‖ u3 ‖∞= 3,07 → 3
u1
‖u1‖∞=
(−1/4−1
)u2
‖u2‖∞=
(1/13
1
)u3
‖u3‖∞=
(−1/40−1
)→
(0±1
)Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 50 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodo de la potencia para calcular el autovalor mayor
TeoremaSea una matriz A que posee una base de autovectores tal que enmódulo su autovalor máximo λmax es único. Sea un vector u1 noortogonal al subespacio engendrado por los autovectores delautovalor λmax , entonces, si definimos la secuencia
un = Aun−1
‖ un−1 ‖
se verifica que
Limn→∞sign((
un,un−1))‖ un ‖= λmax
Limn→∞
(sign
((un,un−1
)))n un
‖ un ‖es un autovector de λmax
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 51 / 82
ULPGCLogo
Contenido
3 Método de la potencia para calcular el autovalor máximoMétodo de la potencia para calcular el autovalor máximoMétodo de la potencia inversa para calcular el autovalor mínimoMétodo de la potencia inversa para calcular el autovalor máscercano a un númeroAlgoritmo general para calcular los autovectores de una matrizcualquiera
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 52 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIMétodo de la potencia inversa para calcular el autovalor menor
El método de la potencia inversa se basa en que si
Ax = λx → A−1x =1λ
x
y por tanto
El autovalor máximo de A−1 =1
min{λi}
Para realizar las iteraciones del método de la potencia inversa, aveces, en lugar de calcular A−1 se resuelve en cada etapa un sistemade ecuaciones teniendo en cuenta que
un =A−1un−1
‖ un−1 ‖⇐⇒ Aun =
un−1
‖ un−1 ‖
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 53 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodo de la potencia inversa para calcular el autovalor menor
Consideremos la matriz(
2 11 5
)λmin = 1,70, xmin =
(1,0−0,30
)vamos a hacer iteraciones del método de la potencia cambiando A por A−1
un =A−1un−1
‖ un−1 ‖∞partiendo de u0 =
(11
)
u1 = A−1u0
‖u0‖∞=
(0,440,11
)‖ u1 ‖∞= 0,44
u2 = A−1u1
‖u1‖∞=
(0,52−0,055
)‖ u2 ‖∞= 0,52
u3 = A−1u2
‖u2‖∞=
(0,57−0,134
)‖ u3 ‖∞= 0,57
‖ u1 ‖∞= 0,44 ‖ u2 ‖∞= 0,52 ‖ u3 ‖∞= 0,57 → λmin = 10,57 = 1,75
u1
‖u1‖∞=
(1,0
0,25
)u2
‖u2‖∞=
(1,0−0,1
)u3
‖u3‖∞=
(1,0−0,23
)→ xmin =
(1,0−0,30
)Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 54 / 82
ULPGCLogo
Contenido
3 Método de la potencia para calcular el autovalor máximoMétodo de la potencia para calcular el autovalor máximoMétodo de la potencia inversa para calcular el autovalor mínimoMétodo de la potencia inversa para calcular el autovalor máscercano a un númeroAlgoritmo general para calcular los autovectores de una matrizcualquiera
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 55 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodo de la potencia inversa para calcular el autovalor más cercano a un número
El método de la potencia directa e inversa nos permite calcular el autovalormás grande y más pequeño de una matriz. Ahora bien para calcular losautovalores que se encuentren entre λmin y λmax necesitamos informaciónadicional como puede ser tener una aproximación del autovalor buscado. Porejemplo si µ es una aproximación del autovalor λ de tal forma que µ seencuentre más cercano a λ que a cualquier otro autovalor, podemos construirla matriz A′ = A− µI. Si llamamos λ′min al autovalor más pequeño de A′, secumple que
A′x = (A− µI)x = λ′minx
de donde despejandoAx = (λ′min + µ)x
y por tanto λ′min + µ es el autovalor de A más cercano a µ.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 56 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIMétodo de la potencia inversa para calcular el autovalor más cercano a un número
Consideremos la matriz A =
5 0 01 1 01 1 2
, el autovalor más cercano a 3 λprox = 2,
xprox = (0,0,1)T .Vamos a hacer iteraciones del método de la potencia inversa conB = A− 3Id partiendo de u0 = (1,1,1)T
u1 = B−1u0
‖u0‖∞= (0.5,−0.25,−0.75)T ‖ u1 ‖∞= 0.75
u2 = A−1u1
‖u1‖∞= (0.33,0.33,1.66)T ‖ u2 ‖∞= 1,66
u3 = A−1u2
‖u2‖∞= (0.1,−0.05,−0.95)T ‖ u3 ‖∞= 0,95
Como los autovectores van cambiando de signo en cada iteración tenemos :
xprox = (0.1,−0.05,−0.95)T y (A− 3Id)xprox = − 10.95
xprox = −1.05xprox
de donde despejando obtenemos: Axprox = (3− 1.05)xprox = 1.95xprox
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 57 / 82
ULPGCLogo
Contenido
3 Método de la potencia para calcular el autovalor máximoMétodo de la potencia para calcular el autovalor máximoMétodo de la potencia inversa para calcular el autovalor mínimoMétodo de la potencia inversa para calcular el autovalor máscercano a un númeroAlgoritmo general para calcular los autovectores de una matrizcualquiera
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 58 / 82
ULPGCLogo
Análisis Numérico Matricial IIAlgoritmo general para calcular los autovectores de una matriz cualquiera
1 Paso 1: Se calcula el polinomio característico |A− λI| = 0.
2 Paso 2: Se calculan las raíces {λi} del polinomio característico
3 Paso 3 : Utilizando el método de la potencia inversa se calcula losautovectores más pequeños de las matrices A− λi I
La principal limitación del algoritmo anterior es que calcular elpolinomio característico tiene una complejidad factorial, y por tanto elmétodo es sólo aplicable para matrices de dimensión pequeña (paradimensión mayor que 12 el algoritmo se vuelve muy lento)
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 59 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodo para calcular el polinomio característico
Dada una matriz A de dimensión N se calcula ‖A‖1, como todos los autovalores de Acumplen que |λi | ≤ ‖A‖1 , ello significa que todos los autovalores estan en el intervalo[−‖A‖1 , ‖A‖1]. Elegimos a continuación N + 1 valores xi equidistribuidos en[−‖A‖1 , ‖A‖1] y para cada uno de esos valores tenemos que
|A− xi I| = aNxNi + aN−1xN−1
i + ......+ a0
donde {aN ,aN−1, .....,a0} representan los coeficientes del polinomio característicobuscado. Observese que para xi la relación de arriba es una ecuación lineal en loscoeficientes del polinomio y por tanto dichos coeficientes se pueden encontrarresolviendo el sistema :
xN0 xN−1
0 . 1xN
1 xN−11 . 1
. . . .
xNN xN−1
N . 1
aNaN−1.
a0
=
|A− x0I||A− x1I|
.|A− xN I|
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 60 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectores
2 Método de Jacobi para calcular autovalores de matrices simétricas
3 Método de la potencia para calcular el autovalor máximo
4 Métodos iterativos de resolución de sistemas de ecuaciones
5 Práctica 7. Implementar el método de relajación
6 Método de Newton-Raphson para sistemas no-lineales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 61 / 82
ULPGCLogo
Contenido
4 Métodos iterativos de resolución de sistemas de ecuacionesMétodo de JacobiMétodo de Gauss-SeidelMétodo de relajación
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 62 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. Método de Jacobi
Consideremos el sistema de ecuaciones : 2 −1 0−1 2 −10 −1 2
xyz
=
101
→
2x − y = 1x + 2y − z = 0−y + 2z = 1
despejando los elementos de la diagonal podemos escribir lasanteriores relaciones como una ecuación de punto fijo:
x = 1+y2
y = x+z2
z = 1+y2
→
xn =
1+yn−12
yn =xn−1+zn−1
2
zn =1+yn−1
2
partiendo de u0 = (x0, y0, z0)T = (0,0,0)T las iteraciones serían:
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 63 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. Método de Jacobi
xn =1+yn−1
2
yn =xn−1+zn−1
2
zn =1+yn−1
2
→
x1 = 1+0
2 = 12
y1 = 0+02 = 0
z1 = 1+02 = 1
2
→
x2 = 1+0
2 = 12
y2 = 1/2+1/22 = 1
2
z2 = 1+02 = 1
2
x3 = 1+1/2
2 = 34
y3 = 1/2+1/22 =1
2
z3 = 1+1/22 = 3
4
→
x4 = 1+1/2
2 = 34
y4 = 3/4+3/42 = 3
4
z4 = 1+1/22 = 3
4
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 64 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. Método de Jacobi
En la práctica, el método de Jacobi se implementa a través delsiguiente esquema iterativo:
un0 =
−a0,1un−11 − ...− a0,N−1un−1
N−1 + b0
a0,0
un1 =
−a1,0un−10 − a1,2un−1
2 ...− a1,N−1un−1N−1 + b1
a1,1.
unN−1 =
−aN−1,0un−10 − aN−1,1un−1
1 ...− aN−1,N−2un−1N−2 + bN−1
aN−1,N−1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 65 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. El método de Jacobi
Podemos descomponer la matriz A del ejemplo anterior como :
A =
0 0 0−1 0 00 −1 0
L
+
2 0 00 2 00 0 2
D
+
0 −1 00 0 −10 0 0
U
de esta manera el método de Jacobi puede interpretarse como :
Au = b → Dun = (−L− U)un−1 + b
despejando un obtenemos
un = D−1(−L− U)MJ
un−1 + D−1bcJ
→ un = Mjun−1 + cJ
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 66 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. Convergencia del método
Veamos como evolucionan las iteraciones del esquema un = Mun−1 + c
u1 = Mu0 + c
u2 = Mu1 + c = M2u0 + Mc + c
u3 = Mu2 + c = M3u0 + M2c + Mc + c..un = Mun−1 + c = Mnu0 + Mn−1c + ....+ Mc + c
la condición de convergencia es que para alguna norma se verifique que
‖M‖ < 1 ⇔ ρ(M) < 1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 67 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. Convergencia del método
TeoremaSi una matriz A verifica que
|aii | >∑j 6=i
|aij | ∀i . ó |ajj | >∑i 6=j
|aij | ∀j .
entonces el método de Jacobi asociado al sistema Au = b converge.
Demostración: En primer lugar, observamos que la matriz MJ puede expresarse como:
MJ =
0 −a0,1
a0,0−a0,2
a0,0. −a0,N−1
a0,0
−a1,0a1,1
0 −a1,2a1,1
. −a1,N−1a1,1
. . . . .
− aN−2,0aN−2,N−2
− aN−2,1aN−2,N−2
. 0 −aN−2,N−1aN−2,N−2
− aN−1,0aN−1,N−1
− aN−1,1aN−1,N−1
. −aN−1,N−2aN−1,N−1
0
Por tanto ‖ MJ ‖1= maxj
(∑i
|aij ||aii |
)< 1 o ‖ MJ ‖∞= maxi
∑j
|aij
|ajj |
< 1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 68 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
4 Métodos iterativos de resolución de sistemas de ecuacionesMétodo de JacobiMétodo de Gauss-SeidelMétodo de relajación
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 69 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. Método de Gauss-Seidel
En el método de Gauss Seidel actualizamos las componentes del vectorsolución al mismo tiempo que se va calculando :
xn =1+yn−1
2
yn =xn+zn−1
2
zn = 1+yn2
→
x1 = 1+0
2 = 12
y1 = 1/2+02 = 1
4
z1 = 1+1/22 = 5
8
→
x2 = 1+1/4
2 = 58
y2 = 5/8+5/82 = 5
8
z2 = 1+5/82 = 13
16
x3 = 1+5/8
2 = 1316
y3 = 13/16+13/162 = 13
16
z3 = 1+13/162 = 29
32
→
x4 = 1+12/16
2 = 2932
y4 = 3/4+3/42 = 29
32
z4 = 1+29/322 = 61
64
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 70 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. El método deGauss-Seidel
Podemos descomponer la matriz A del ejemplo anterior como :
A =
0 0 0−1 0 00 −1 0
L
+
2 0 00 2 00 0 2
D
+
0 −1 00 0 −10 0 0
U
de esta manera el método de Gauss-Seidel puede interpretarse como :
Au = b → (D + L)un = (−U)un−1 + b
despejando un obtenemos
un = (L + D)−1(−U)MGS
un−1 + (D + L)−1bcGS
→ un = MGSun−1 + cGS
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 71 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. Método de Gauss-Seidel
En la práctica, el método de Gauss-Seidel se implementa a través delsiguiente esquema iterativo:
un0 =
−a0,1un−11 − ...− a0,N−1un−1
N−1 + b0
a0,0
un1 =
−a1,0un0 − a1,2un−1
2 ...− a1,N−1un−1N−1 + b1
a1,1.
unN−1 =
−aN−1,0un0 − aN−1,1un
1 ...− aN−1,N−2unN−2 + bN−1
aN−1,N−1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 72 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
4 Métodos iterativos de resolución de sistemas de ecuacionesMétodo de JacobiMétodo de Gauss-SeidelMétodo de relajación
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 73 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. Método de Relajación
En el método de relajación se combina la solución propuesta porGauss-Seidel con la solución en la etapa anterior a través del parámetro derelajación w . Vamos a hacer iteraciones del esquema:
xn = w 1+yn−12 + (1− w)xn−1
yn = w xn+zn−12 + (1− w)yn−1
zn = w 1+yn2 + (1− w)zn−1
→ Si hacemos w = 1,17 obtenemos:
x1 = 1,171+0
2 = 0,58
y1 = 1,170,58+02 = 0,34
z1 = 1,171+0,342 = 0,78
→
x2 = 1,171+0,34
2 − 0,17 · 0,29= 0,58
y2 = 1,171+0,682 − 0,17 · 0,17 = 0,92
z2 = 1,171+0,922 − 0,17 · 0,78 = 0,99
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 74 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. El método de Relajación
El método de relajación hace iteraciones del esquema :
xn = w 1+yn−1
2 + (1− w)xn−1
yn = w xn+zn−12 + (1− w)yn−1
zn = w 1+yn2 + (1− w)zn−1
En términos de las matrices L,D,U el método puede interpretarse como :
Au = b → (D + wL)un = (−wU + (1− w)D)un−1 + b
despejando un obtenemos
un = (D + wL)−1(−wU + (1− w)D)Mw
un−1 + (D + wL)−1bcw
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 75 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. El método de Relajación
La elección del parámetro w es, en general, un problema difícil. Sin embargo,en el caso de matrices tridiagonales, es decir, matrices con todos loselementos nulos salvo la diagonal principal y sus codiagonales, el siguienteresultado muestra la forma de calcular el valor óptimo de w .
TeoremaSi A es una matriz tridiagonal y ρ(MJ) < 1, entonces el valor de w queoptimiza la velocidad de convergencia del método es:
wopt =2
1 +√
1− ρ(MJ)2
Como puede observarse de la expresión anterior, el valor de wopt seencuentra siempre entre 1 y 2.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 76 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. El método de Relajación
TeoremaSi en el método de relajación w /∈ (0,2), entonces ρ(Mw ) ≥ 1.
Demostración: En primer lugar, observamos que las matrices D + Lw y(1− w)D − wU son matrices triangulares y, por tanto, su determinante es elproducto de los elementos diagonales. Además, teniendo en cuenta que eldeterminante del producto de dos matrices es el producto de susdeterminantes y que el determinante de la matriz inversa es el inverso deldeterminante, obtenemos que
|Mw | = | (D + wL)−1 ((1− w)D − wU)| =|(1− w)D − wU||(D + wL)|
=(1− w)NΠiaii
Πiaii
Por lo tanto, como el determinante de una matriz es el producto de susautovalores, obtenemos que, si w /∈ (0,2), entonces |1− w | ≥ 1 y, enconsecuencia, Mw posee al menos un autovalor de módulo mayor o igual queuno.
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 77 / 82
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectores
2 Método de Jacobi para calcular autovalores de matrices simétricas
3 Método de la potencia para calcular el autovalor máximo
4 Métodos iterativos de resolución de sistemas de ecuaciones
5 Práctica 7. Implementar el método de relajación
6 Método de Newton-Raphson para sistemas no-lineales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 78 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodos iterativos de resolución de sistemas de ecuaciones. Método de Relajación
En la práctica, el método de relajación se implementa a través delsiguiente esquema iterativo:
un0 = w
−a0,1un−11 − ...− a0,N−1un−1
N−1 + b0
a0,0+ (1− w)un−1
0
un1 = w
−a1,0un0 − a1,2un−1
2 ...− a1,N−1un−1N−1 + b1
a1,1+ (1− w)un−1
1
.
unN−1 = w
−aN−1,0un0 − aN−1,1un
1 ...− aN−1,N−2unN−2 + bN−1
aN−1,N−1+ (1− w)un−1
N−1
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 79 / 82
ULPGCLogo
Análisis Numérico Matricial IIPráctica 7. Implementar método de relajación (2 horas)
Implementar en Fortran 77 el método de relajación. Los parámetros de lafunción serán: la matriz A, el vector b, un vector u donde se almacenará lasolución, y que inicialmente será el vector aproximación inicial, que pordefecto se tomará 0, el parámetro de relajación w , el número máximo deiteraciones Nmax , y la tolerancia TOL para evaluar la diferencia entre un yun−1. La función devolverá el número de iteraciones necesarias para alcanzarla solución. Si el método no converge devuelve −1. Comparar la diferencia enla velocidad de convergencia entre el método de Gauss-Seidel y el Método derelajación. Probar el método para los sistemas
1 −1 0−1 2 00 −1 3
xyz
=
−131
2 −1 0−1 2 −10 −1 2
xyz
=
101
1 3 3
3 1 33 3 1
xyz
=
777
Los sistemas ejemplosde 10, 100 y 500 dela página web
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 80 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Nociones básicas sobre matrices y vectores
2 Método de Jacobi para calcular autovalores de matrices simétricas
3 Método de la potencia para calcular el autovalor máximo
4 Métodos iterativos de resolución de sistemas de ecuaciones
5 Práctica 7. Implementar el método de relajación
6 Método de Newton-Raphson para sistemas no-lineales
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 81 / 82
ULPGCLogo
Análisis Numérico Matricial IIMétodo de Newton-Raphson para sistemas no-lineales
Consideremos el siguiente sistema no lineal de ecuaciones:{x2 − y2 + 1 = 0
2xy = 0f (u) = f (x , y) =
(x2 − y2 + 1
2xy
)=
(00
)Utilizamos el desarrollo de Taylor en varias variable
f (u) = f (u0) +∇f (u0)(u − u0) + .... ∇f (u) =
(2x −2y2y 2x
)Igualando a 0 el desarrollo de Taylor y tomamos u0 = (1,1) obtenemos
f (u0) +∇f (u0)(u − u0) = 0 →(
12
)+
(2 −22 2
)(x1 − x0y1 − y0
)= 0
Resolvemos el sistema asociado y obtenemos u1 = (1/4,3/4).
Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 82 / 82
Notes
Notes
Notes
Notes
ULPGCLogo
Métodos NuméricosGrado en Ingeniería Informática
Tema 7 Interpolación de funciones II
Luis Alvarez León
Univ. de Las Palmas de G.C.
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 1 / 34
ULPGCLogo
Contenido
1 Interpolación de Hermite
2 Interpolación por splines cúbicos.
3 Interpolación utilizando la función seno cardinal
4 Interpolación de funciones periódicas utilizando polinomiostrigonométricos
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 2 / 34
ULPGCLogo
Contenido
1 Interpolación de Hermite
2 Interpolación por splines cúbicos.
3 Interpolación utilizando la función seno cardinal
4 Interpolación de funciones periódicas utilizando polinomiostrigonométricos
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 3 / 34
ULPGCLogo
Interpolación de funciones IIEl problema de interpolación
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 4 / 34
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funciones IIInterpolación Lineal
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 5 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación a través del polinomio de Lagrange
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 6 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación de Hermite. Se interpola tanto la función como su derivada
Figura:
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 7 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación de Hermite. Se interpola tanto la función como su derivada.
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 8 / 34
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funciones IILa interpolación de Hermite
En la interpolación de Lagrange ajustamos el polinomio interpoladorP(x) para que P(xi) = f (xi). En el caso de Hermite además deajustar el valor de la función f (x), ajustamos sus derivadas es decir:
P(xi) = f (xi) y P ′(xi) = f ′(xi)
Ejemplo: Buscar un polinomio P(x) tal que P(−1) = 1, P(1) = 0 yP ′(−1) = 0, P ′(1) = 0. El grado del polinomio buscado debe ser 3.Por tanto
P ′(x) = a(x + 1)(x − 1) = ax2 − a → P(x) = ax3
3− ax + b
Si exigimos que P(−1) = 1 y P(1) = 0 llegamos al sistema{−a/3 + a + b = 1a/3− a + b = 0
→{
a = 3/4b = 1/2
→ P(x) =312
x3 − 34
x +12
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 9 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación de Hermite. Polinomios base de Hermite en los puntos de interpolación-1,1..
Polinomio de Hermite H0−1(x) Polinomio de Hermite H0
1 (x)
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 10 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación de Hermite. Polinomios base de Hermite en los puntos de interpolación-1,1..
Polinomio de Hermite H1−1(x) Polinomio de Hermite H1
1 (x)
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 11 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación de Hermite. Polinomios base de Hermite en los puntos de interpolación-1,1..
Vamos a calcular H1−1(x) que verifica que P(−1) = P(1) = P ′(1) = 0
y P ′(−1) = 1. Como P(x) vale 0 en −1,1 se tiene que
P(x) = (x + 1)(x − 1)(ax + b) → P(x) = ax3 + bx2 − ax − b
derivando obtenemos
P ′(x) = 3ax2 + 2bx − a
Si exigimos que P ′(−1) = 1 y P ′(1) = 0 llegamos al sistema{3a− 2b− a = 13a + 2b− a = 0
→{
a = 1/4b = −1/4
→ H1−1(x) = (x2−1)(
14
x +14)
En función de los polinomios base de HermiteH0−1(x),H
01 (x),H
1−1(x),H
11 (x), el polinomio que interpola a una
función en f (−1), f (1), f ′(−1) y f ′(1) es
P(x) = f (−1)H0−1(x) + f (1)H0
1 (x) + f ′(−1)H1−1(x) + f ′(1)H1
1 (x)Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 12 / 34
Notes
Notes
Notes
Notes
ULPGCLogo
Contenido
1 Interpolación de Hermite
2 Interpolación por splines cúbicos.
3 Interpolación utilizando la función seno cardinal
4 Interpolación de funciones periódicas utilizando polinomiostrigonométricos
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 13 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por splines cúbicos
Los polinomios de grado alto tienden a oscilar.
EjemploEl polinomio base de Lagrange que verifica P(0) = 1 y P(xi) = 0sobre los puntos xi = −5,−4,−3,−2,−1,1,2,3,4,5 es
P(x) =(x2 − 1)(x2 − 4)(x2 − 9)(x2 − 16)(x2 − 25)(−5)(−4)(−3)(−2)(−1)(1)(2)(3)(4)(5)
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 14 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por splines cúbicos
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 15 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por splines cúbicos
Cuando se trabaja con muchos puntos de interpolación, se sueleinterpolar la función utilizando polinomios a trozos, definiendo unpolinomio distinto para cada intervalo [xi , xi+1]. La técnica másconocida son los splines cúbicos, que son polinomios de grado 3. Portanto, tendremos un polinomio de grado 3 distintoP i
3(x) = di(x − xi)3 + ci(x − xi)
2 + bi(x − xi) + ai para cada intervalo[xi , xi+1]. Si hay N + 1 puntos, el número de polinomios es N. Paradefinir estos polinomios, se imponen las siguientes condiciones:
P i3(xi) = f (xi) i = 0, ..,N − 1
P i3(xi+1) = f (xi+1) i = 0, ...,N − 1
∂P i3
∂x(xi+1) =
∂P i+13
∂x(xi+1) i = 0, ..,N − 2
∂2P i3
∂x2 (xi+1) =∂2P i+1
3∂x2 (xi+1) i = 0, ...,N − 2
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 16 / 34
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funciones IIInterpolación por splines cúbicos
TeoremaSi P i
3(x) = di(x − xi)3 + ci(x − xi)
2 + bi(x − xi) + ai , i = 0, ..,N − 1,satisface las condiciones anteriores, entonces
ai = f (xi) i = 0, ..,N di =ci+1 − ci
3hii = 0, ..,N − 1 (1)
bi =ai+1 − ai
hi− hi (2ci + ci+1)
3i = 0, ..,N − 1
hi−1ci−1 + 2(hi−1 + hi)ci + hici+1 =3(ai+1 − ai)
hi− 3 (ai − ai−1)
hi−1
para i = 1, ..,N − 1. donde hi = xi+1 − xi .. La última relacióndetermina un sistema de ecuaciones en las variables ci . Dichosistema tiene N + 1 incognitas (c0, ..., cN) y N − 1 ecuaciones. Paracompletar dicho sistema, se suele imponer que c0 = cN = 0.
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 17 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por splines cúbicos
EjemploVamos a utilizar splines cúbicos al interpolar la función f (x) en lospuntos x = 0,1,2, y 3, sabiendo que f (0) = 0, f (1) = 1, f (2) = 0,f (3) = 2, tomando c0 = c3 = 0. En este caso hi = 1. Debemos definir3 Polinomios distintos que corresponden a los intervalos [0,1], [1,2], y[2,3].
Los términos ai se calculan utilizando la relación ai = f (xi) :
a0 = 0 a1 = 1 a2 = 0 a3 = 2
Los términos ci se calculan utilizando la relación
hi−1ci−1 + 2(hi−1 + hi)ci + hici+1 =3(ai+1 − ai)
hi− 3 (ai − ai−1)
hi−1
lo que lleva al sistema{
4c1 + c2 = −6c1 + 4c2 = 9
→(
c1c2
)=
(−2,22,8
)Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 18 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por splines cúbicos
Los valores bi se calculan utilizando bi =ai+1−ai
hi− hi (2ci+ci+1)
3
b0 = 1,733 b1 = −0,467 b2 = 0,133
Los valores di se calculan utilizando di =ci+1−ci
3hi
d0 = −0,733 d1 = 1,667 d2 = −0,933
Por tanto, los polinomios son
P0(x) = −0,733x3 + 1,733x
P1(x) = 1,667 (x − 1)3 − 2,2 (x − 1)2 − 0,467 (x − 1) + 1
P2(x) = −0,933 (x − 2)3 + 2,8 (x − 2)2 + 0,133 (x − 2)
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 19 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por splines cúbicos
a continuación se muestra una gráfica con los 3 polinomiosconcatenados en el intervalo [0,3]. Como puede observarse no seaprecia nada irregular en las uniones de los intervalos. Parece unaúnica función
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 20 / 34
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funciones IIInterpolación por splines cúbicos
Presentamos ahora las gráficas de la función derivada y derivadasegunda de la misma función:
derivada primera derivada segunda
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 21 / 34
ULPGCLogo
Contenido
1 Interpolación de Hermite
2 Interpolación por splines cúbicos.
3 Interpolación utilizando la función seno cardinal
4 Interpolación de funciones periódicas utilizando polinomiostrigonométricos
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 22 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación utilizando la función seno cardinal
Una base de funciones interpolantes muy utilizada en la teoría deFourier es la base formada a partir de la función seno cardinal,definida por
sin c(x) =sin(x)
x
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 23 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación utilizando la función seno cardinal
Esta función tiene la propiedad de que en x = 0, sin c(0) = 1, y paracualquier entero i distinto de 0, sin c(πi) = 0. Dada una función f (x),su función interpolante en los puntos xi = a · i para i = M, ...,N vienedada por la función
f (x) =N
∑i=M
f (xi)sin(π
( xa − i
))
π( x
a − i)
Esta base de funciones se suele utilizar cuando a partir de una señalmuestreada (por ejemplo una señal de sonido que se muestreaguardando el valor de la señal cada cierto intervalo de tiempo)queremos recuperar la señal original (por ejemplo para oir el sonidoalmacenado digitalmente).
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 24 / 34
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funciones IIInterpolación utilizando la función seno cardinal
EjemploSi f (0) = 0, f (1) = 1, f (2) = 0, f (3) = 2. La interpolación utilizando lafunción seno cardinal es:
f (x) = 1sin(π (x − 1))
π(x − 1)+ 2
sin(π (x − 3))π(x − 3)
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 25 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación utilizando la función seno cardinal
Comparación del sin x (en azul) con su aproximación utilizandosin c(x) (en rojo) tomando como puntos de interpolaciónx=−π, −π
2 ,0, π2 ,π.
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 26 / 34
ULPGCLogo
Interpolación de funciones IIComparación de la interpolación de Lagrange, los splines cúbicos y seno cardinal.
Polinomio de Lagrange (línea verde), splines cúbicos (línea azul), y lainterpolación por sin c(x) (línea roja).
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 27 / 34
ULPGCLogo
Contenido
1 Interpolación de Hermite
2 Interpolación por splines cúbicos.
3 Interpolación utilizando la función seno cardinal
4 Interpolación de funciones periódicas utilizando polinomiostrigonométricos
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 28 / 34
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funciones IIInterpolación por polinomios trigonométricos para aproximar funciones ondulatoriasperiódicas
f (x) = 2 cos(x)− 2 cos(2x) + 6 cos(4x)
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 29 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por polinomios trigonométricos. Funciones base
f (x) = 2︸︷︷︸amplitud
cos( 1︸︷︷︸frecuencia
x) −2︸︷︷︸amplitud
cos( 2︸︷︷︸frecuencia
x)+ 6︸︷︷︸amplitud
cos( 4︸︷︷︸frecuencia
x)
azulcos 1x
rojocos 2x
verdecos 4x
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 30 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por polinomios trigonométricos. Polinomios trigonométricos
Polinomio trigonométrico : Pk (x) = eikx = cos kx + i sin kx
cos kx =eikx + e−ikx
2sin kx =
eikx − e−ikx
2
f (x) = 2 cos(x)− 2 cos(2x) + 6 cos(4x) =
= 1eix + 1e−ix − 1ei2x − 1e−i2x + 3ei4x + 3e−i4x
Descomposición general de una función periódica (de periodo 2π)usando polinomios trigonométricos
f (x) ≈N
∑k=−N
ckeikx
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 31 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por polinomios trigonométricos. Cálculo de los coeficientes de lospolinomios trigonométricos
TeoremaLos coeficientes ck que minimizan el error cuadrático medio
E(c−N , .., cN) =∫ π
−π
(f (x)−
N
∑k=−N
ckeikx
)2
dx son ck =
∫ π−π f (x)e−ikxdx
2π
Demostración Un mínimo de E(c−N , ..., cN), debe verificar :
∂E∂ck
(c−N , ..., cN) = 2∫ π
−π
(f (x)−
N
∑l=−N
cleilx
)eikxdx = 0
la demostración del teorema se concluye teniendo en cuenta que∫ π
−πeilxeikxdx =
∫ π
−πei(l+k)xdx =
ei(l+k)x
i(l + k)
]π
−π
=
{2π si l = −k0 si l 6= k
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 32 / 34
Notes
Notes
Notes
Notes
ULPGCLogo
Interpolación de funciones IIInterpolación por polinomios trigonométricos. Ejemplo de aproximación
Consideremos la función
f (x) ={
1 si x ∈ [−π2 ,
π2 ]
0 si x /∈ [−π2 ,
π2 ]
Vamos a calcular el polinomio trigonométrico interpolante para N = 3.Los valores de ck son
c0 =
∫ π−π f (x)dx
2π=
12
c1 =
∫ π−π f (x)e−ixdx
2π=
1π
= c−1
c2 =
∫ π−π f (x)e−2ixdx
2π= 0 = c−2 c3 =
∫ π−π f (x)e−3ixdx
2π= − 1
3π= c−3
Por tanto, el polinomio trigonométrico interpolador es
P3(x) =12+
2π
cos(x)− 23π
cos(3x)
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 33 / 34
ULPGCLogo
Interpolación de funciones IIInterpolación por polinomios trigonométricos. Ejemplo de aproximación
La siguiente gráfica muestra la aproximación entre f (x) y P3(x):
Luis Alvarez León () Métodos Numéricos Grado en Ingeniería Informática Tema 7 Interpolación de funciones IIUniv. de Las Palmas de G.C. 34 / 34
Notes
Notes
Notes
Notes