Main.beamer

110
Herramientas Computacionales de Simulación Dr. Manuel A. Andrade Universidad Autónoma de Nuevo León Facultad de Ingeniería Mecánica y Eléctrica Doctorado en Ingeniería Eléctrica Agosto – Diciembre 2010

Transcript of Main.beamer

Page 1: Main.beamer

Herramientas Computacionales de Simulación

Dr. Manuel A. Andrade

Universidad Autónoma de Nuevo LeónFacultad de Ingeniería Mecánica y Eléctrica

Doctorado en Ingeniería Eléctrica

Agosto –Diciembre 2010

Page 2: Main.beamer

Parte I

Aplicación de Matrices en IngenieríaEléctrica

Page 3: Main.beamer

Sesión 1: Eigenvalores, Parte ISesión del día

1. Introducción a Sistemas Lineales¿Dónde se encuentran los sistemas lineales?Los sistemas lineales son equivalentes a ecuaciones matriciales

2. Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)Matrices grandesEigenvalores complejos

Page 4: Main.beamer

Introducción a Sistemas Lineales¿Dónde se encuentran los sistemas lineales?

I Los sistemas de ecuaciones lineales aparecen naturalmente enmuchas áreas de la ingeniería, como el análisis estructural,dinámica y circuitos eléctricos.

I Actualmente, las computadoras nos permiten resolver de formarápida y eficiente sistemas de ecuaciones lineales cada vez másgrandes.

I Esto no sólo ha permitido resolver problemas cada vez máscomplejos donde los sistemas lineales naturalmente aparecen,sino que ha hecho que se empleé la teoría de sistemas linealespara resolver problemas donde normalmente no aparecen talescomo termodinámica, fluidos, análisis de grandes sistemas depotencia, fluidos y procesos químicos.

Page 5: Main.beamer

Introducción a Sistemas Lineales¿Dónde se encuentran los sistemas lineales?

I Se ha vuelto una práctica común en muchas áreas, analizar unproblema transformándolo a un conjunto de ecuaciones linealesy luego resolver estas ecuaciones numéricamente.

Page 6: Main.beamer

Introducción a Sistemas Lineales¿Dónde se encuentran los sistemas lineales?

El siguiente conjunto de ecuaciones describen las tensiones yfuerzas que actúan sobre la estructura:

.5T1 +T2 = R1 = f1.866T1 =−R2 =−.433f1− .5f2

−.5T1 + .5T3 +T4 =−f1.866T1 + .866T3 = 0

−T2− .5T3 + .5T5 +T6 = 0

.866T3 + .866T5 = f 2

−T4− .5T5 + .5T7 = 0,

(1.1)

donde Ti representa la tensión en el i-ésimo miembro de laestructura.

Page 7: Main.beamer

Introducción a Sistemas Lineales¿Dónde se encuentran los sistemas lineales?

Este sistema podría resolverse a mano, sistemáticamenteeliminando variables y sustituyendo. Sin embargo, sería mejorresolverlas computacionalmente.

La primera clave para resolver sistemas lineales es saber que sonequivalentes a matrices, que contienen números, no variables.

Page 8: Main.beamer

Introducción a Sistemas LinealesLos sistemas lineales son equivalentes a ecuaciones matriciales

El sistema de ecuaciones,

x1−2x2 +3x3 = 4

2x1−5x2 +12x3 = 15

2x2−10x3 =−10,

es equivalente a la ecuación matricial,1 −2 32 −5 120 2 −10

x1x2x3

=

415−10

,

que es equivalente a la matriz aumentada, 1 −2 3 42 −5 12 150 2 −10 −10

.

Page 9: Main.beamer

Introducción a Sistemas LinealesLos sistemas lineales son equivalentes a ecuaciones matriciales

La matriz aumentada para el sistema de ecuaciones ecuaciones dela estructura descrita por (1.1) está dada por:

.5 1 0 0 0 0 0 f1.866 0 0 0 0 0 0 −.433f1− .5f2−.5 0 .5 1 0 0 0 −f1.866 0 .866 0 0 0 0 0

0 −1 −.5 0 .5 1 0 00 0 .866 0 .866 0 0 f20 0 0 −1 −.5 0 .5 0

. (1.2)

Nótese que muchas de las entradas son 0. Matrices como esta,llamada dispersa son muy comunes y existen métodosespecialmente diseñados para manejarlas eficientemente.

Page 10: Main.beamer

Eigenvalores y Eigenvectores

I Suponga que A es una matriz cuadrada de (n×n). Se dice queun vector diferente de cero v es un eigenvector y que unescalar λ es un eigenvalor si

Av = λv (1.3)

I Geométricamente esto significa que Av está en la mismadirección que v, ya que al multiplicar un vector por un escalarcambia su magnitud, pero no su dirección.

Page 11: Main.beamer

Eigenvalores y Eigenvectores

Matlab tiene integrada una rutina para el cálculo de eigenvalores yeigenvectores:> A = pascal(4)> [v e] = eig(A)

El resultado es una matriz v que contiene los eigenvectores comocolumnas y una matriz diagonal e que contiene los eigenvalores enla diagonal. Esto puede checarse de la siguiente forma:> v1 = v(:,1)> A*v1> e(1,1)*v1

Page 12: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

Nótese que (1.3) puede reescribirse como:

Av−λv = 0. (1.4)

Aunque no se puede factorizar v de la parte derecha de la ecuación,ya que A es matriz y λ un escalar, como Iv = v, se puede hacer losiguiente:

Av−λv = Av−λ Iv= (A−λ I)v= 0

(1.5)

Page 13: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

Si v es no cero, entonces por el Teorema 1, la matriz (A−λ I) debeser singular. Por el mismo teorema, tenemos:

det(A−λ I) = 0 (1.6)

A esto se le conoce como ecuación característica.

Page 14: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

Teorema 1

Suponga que A es una matriz cuadrada. Los siguientes son todosequivalentes:1. La ecuación Ax = b tiene 0 o ∞ soluciones dependiendo de b.2. det(A) = 0

3. A no tiene inversa.4. La ecuación Ax = 0 tiene otras soluciones además de x = 0.5. Las columnas de A son linealmente dependientes como

vectores.6. Los renglones de A con linealmente dependientes.

Page 15: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

Para una matriz de 2×2, (A−λ I) se calcula como en el siguienteejemplo:

(A−λ I) =(

1 43 5

)−λ

(1 00 1

)=

(1 43 5

)−(

λ 00 λ

)=

(1−λ 4

3 5−λ

).

(1.7)

El determinante de (A−λ I) es entonces

det(A−λ I) = (1−λ )(5−λ )−4 ·3=−7−6λ +λ

2.(1.8)

Page 16: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

La ecuación característica det(A−λ I) = 0 es simplemente laecuación cuadrática:

λ2−6λ −7 = 0. (1.9)

Las raíces de esta ecuación son λ1 = 7 y λ2 =−1. Estos son loseigenvalores de la matriz A.

Page 17: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

Para encontrar los eigenvectores correspondientes regresaremos a laecuación (A−λ I)v = 0. Para λ1 = 7, la ecuación para loseigenvectores (A−λ I)v = 0 es equivalente a la matriz aumentada(

−6 4 03 −2 0

). (1.10)

Nótese que el primer y segundo renglones de esta matriz sonmúltiplos uno del otro. Por lo que esta ecuación tiene infinitassoluciones, i.e. infinito número de eigenvectores.

Page 18: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

Ya que sólo importa la dirección de los eigenvectores, sólo esnecesario encontrar uno de ellos. Ya que el segundo renglón de lamatriz aumentada representa la ecuación

3x−2y = 0,

tenemos

v1 =

(23

).

Esto se obtiene al notar que (x,y) = (2,3) es una solución de3x−2y = 0.

Page 19: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

Para λ2 =−1, (A−λ I)v = 0 es equivalente a la matriz aumentada:(2 4 03 6 0

).

Nuevamente el primer y segundo renglones de esta matriz sonmúltiplos uno del otro. Por simplicidad se tiene

v2 =

(−21

).

I Para una matriz de (3×3) se puede seguir el mismo proceso.I El det(A−λ I) = 0 debe ser un polinomio cúbico y

esperaríamos que tuviese usualmente 3 raíces, que son loseigenvalores.

Page 20: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

Para λ2 =−1, (A−λ I)v = 0 es equivalente a la matriz aumentada:(2 4 03 6 0

).

Nuevamente el primer y segundo renglones de esta matriz sonmúltiplos uno del otro. Por simplicidad se tiene

v2 =

(−21

).

I Para una matriz de (3×3) se puede seguir el mismo proceso.I El det(A−λ I) = 0 debe ser un polinomio cúbico y

esperaríamos que tuviese usualmente 3 raíces, que son loseigenvalores.

Page 21: Main.beamer

Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)

Para λ2 =−1, (A−λ I)v = 0 es equivalente a la matriz aumentada:(2 4 03 6 0

).

Nuevamente el primer y segundo renglones de esta matriz sonmúltiplos uno del otro. Por simplicidad se tiene

v2 =

(−21

).

I Para una matriz de (3×3) se puede seguir el mismo proceso.I El det(A−λ I) = 0 debe ser un polinomio cúbico y

esperaríamos que tuviese usualmente 3 raíces, que son loseigenvalores.

Page 22: Main.beamer

Eigenvalores y EigenvectoresMatrices grandes

1. Para una matriz de n×n este proceso es largo y problemáticopara realizarse a mano.

2. Mas aún, este proceso no es recomendado aún paraimplementarse en un programa computacional ya que incluyedeterminantes y la solución de un polinomio de grado n.

3. Para n≥ 4 se requieren métodos más ingeniosos.4. Estos métodos se basan más en el significado geométrico de

los eigenvalores y eigenvectores que en resolver ecuacionesalgebraicas.

Page 23: Main.beamer

Eigenvalores y EigenvectoresEigenvalores complejos

Los eigenvalores de algunas matrices son números complejos, aúncuando la matriz contenga sólo números reales. Cuando esto ocurre,los eigenvalores complejos aparecerán en pares conjugados, i.e.:

λ1,2 = α± jβ . (1.11)

Los eigenvectores correspondientes también serán pares conjugados:

w = u± jv. (1.12)

En aplicaciones, la parte imaginaria del eigenvalor, β , comúnmentese asocia a la frecuencia de una oscilación. Esto por la fórmula deEuler

eα+jβ = eα(cosβ + jsinβ ). (1.13)

Page 24: Main.beamer

Eigenvalores y EigenvectoresEjercicios

1. Encuentre, a mano, los eigenvalores y eigenvectores de lasiguiente matriz:

A =

(2 11 2

).

2. Encuentre, a mano, los eigenvalores y eigenvectores de lasiguiente matriz:

B =

(1 −22 1

).

3. ¿Puede adivinar cuales son los eigenvalores de la matriz

C =

(a −bb a

)?

Page 25: Main.beamer

Sesión 2: Eigenvalores, Parte IISesión anterior

1. Introducción a Sistemas Lineales¿Dónde se encuentran los sistemas lineales?Los sistemas lineales son equivalentes a ecuaciones matriciales

2. Eigenvalores y EigenvectoresCálculo de los eigenvalores para (2×2) y (3×3)Matrices grandesEigenvalores complejos

Page 26: Main.beamer

Sesión 2: Eigenvalores, Parte IISesión del día

3. Una Aplicación de Eigenvectores: Modos vibracionalesEjercicio

4. Métodos Numéricos para EigenvaloresMétodo de la potenciaMétodo de la potencia inversa

Page 27: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

Una aplicación de eigenvalores y eigenvectores se encuentra en elanálisis de problemas de vibración. Un problema no trivial simple esel movimiento de dos objetos de masas iguales m unidos uno a otroy fijos a las paredes exteriores por medio de resortes iguales conconstantes de resorte k, como se muestra en la Figura 1.

Figura 1: Sistema de dos masas unidas entre sí y fijas a las paredes por resortes iguales.

Page 28: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

Sea x1 el desplazamiento de la primera masa y x2 el desplazamientode la segunda, y notese que el desplazamiento de las paredes escero. Cada masa experimenta fuerzas de los resortes adyacentesproporcionales a la extensión o compresión de los resortes.Despreciando la fricción, la ley de Newton del movimiento, F = ma,resulta en

mx1 =−k(x1−0)+ k(x2− x1) =−2kx1 + kx2

mx2 =−k(x2− x1)+ k(0− x2) = kx1−2kx2. (1.14)

Page 29: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

Dividiendo ambos lados de (1.14) por m se puede escribir estesistema de ecuaciones en forma matricial:

-x =−Ax, (1.15)

donde

A = km B = k

m

(2 −1−1 2

). (1.16)

Page 30: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

La solución general, para este tipo de ecuación es:

x = c1v1 sin(√

km λ1 t+φ1

)+ c2v2 sin

(√km λ2 t+φ2

), (1.17)

donde λ1,2 son los eigenvalores de B, cuyos eigenvectores asociadosson v1 y v2. Los eigenvalores y eigenvectores de B se puedenencontrar usando Matlab:> B=[2 -1; -1 2]> [v e] = eig(B)

Esto debe producir una matriz v cuyas columnas son loseigenvectores de B y una matriz diagonal e cuyas entradas son loseigenvalores de B.

Page 31: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

I En el primer eigenvector, v1, las entradas son iguales. Estorepresenta un modo de oscilación donde las dos masas semueven en sincronía una con la otra.

I El segundo eigenvector, v2, tiene las mismas entradas pero consignos opuestos. Esto representa un modo en el que las dosmasas oscilan en anti-sincronía.

I Note que la frecuencia del movimiento anti-síncrono es√

3veces la del movimiento síncrono.

Page 32: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

I En el primer eigenvector, v1, las entradas son iguales. Estorepresenta un modo de oscilación donde las dos masas semueven en sincronía una con la otra.

I El segundo eigenvector, v2, tiene las mismas entradas pero consignos opuestos. Esto representa un modo en el que las dosmasas oscilan en anti-sincronía.

I Note que la frecuencia del movimiento anti-síncrono es√

3veces la del movimiento síncrono.

Page 33: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

I En el primer eigenvector, v1, las entradas son iguales. Estorepresenta un modo de oscilación donde las dos masas semueven en sincronía una con la otra.

I El segundo eigenvector, v2, tiene las mismas entradas pero consignos opuestos. Esto representa un modo en el que las dosmasas oscilan en anti-sincronía.

I Note que la frecuencia del movimiento anti-síncrono es√

3veces la del movimiento síncrono.

Page 34: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

La Figura 2 presenta ambos modos de oscilación. En el modoizquierdo, las masas se mueven juntas. Mientras que en el mododerecho, se mueven en direcciones opuestas. Nótese que ambosmodos se mueven a diferente velocidad.

Figura 2: Dos modos vibracionales de un sistema oscilatorio simple.

Page 35: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

¿Cuál de los dos modos es el más peligroso para unaestructura o máquina?Es aquel con la menor frecuencia, ya que es el modo que puedetener mayor desplazamiento. A este modo se le conoce algunasveces como el modo fundamental.

Page 36: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionales

Nótese que si vi es un eigenvector de B entonces:

Av1 =km Bvi =

km λivi.

Se puede concluir que A tiene los mismos eigenvectores que B perosus eigenvalores se multiplican por el factor k/m. Así, las dosfrecuencias son √

km y

√3km

Page 37: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionalesEjercicio

I Repita el análisis para tres masas iguales. La matriz Bcorrespondiente sería: 2 −1 0

−1 2 −10 −1 2

Encuentre los eigenvalores y eigenvectores e interprete los tresdiferentes modos a partir de los eigenvectores.

Page 38: Main.beamer

Una Aplicación de Eigenvectores: Modos vibracionalesTarea

1. Encuentre las frecuencias y modos para un sistema con cuatromasas iguales y resortes iguales. Interprete los modos.

2. Encuentre las frecuencias y los modos para un sistemas conmasas no idénticas y resortes iguales en los siguientes casos.¿Cómo afecta esto a los modos?a) Dos masas con m1 = 1 y m2 = 2.b) Tres masas con m1 = 1, m2 = 2 y m3 = 3.

Page 39: Main.beamer

Métodos Numéricos para Eigenvalores

I Como se mencionó en las secciones anteriores, los eigenvaloresy eigenvectores para una matriz de n×n donde n≥ 4 se debenencontrar numéricamente, en lugar de hacerse manualmente.

I Los métodos numéricos que se emplean en la prácticadependen del significado geométrico de los eigenvalores yeigenvectores de (1.3).

I La esencia de todos estos métodos se captura en el método dela Potencia, que se presenta a continuación.

Page 40: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia

En la ventana de comandos de Matlab introduzca el siguientecódigo:> A = hilb(5)> x = ones(5,1)> x = A*x> el = max(x)> x = x/elI Compare el nuevo valor de x con el original.I Repita las tres últimas líneas.I Compare el nuevo valor de x con el valor previo y el original.

Note que el cambio es menor entre los dos segundos.

I Repita los tres últimos comandos una y otra vez hasta que losvalores dejen de cambiar.

Page 41: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia

En la ventana de comandos de Matlab introduzca el siguientecódigo:> A = hilb(5)> x = ones(5,1)> x = A*x> el = max(x)> x = x/elI Compare el nuevo valor de x con el original.I Repita las tres últimas líneas.I Compare el nuevo valor de x con el valor previo y el original.

Note que el cambio es menor entre los dos segundos.

I Repita los tres últimos comandos una y otra vez hasta que losvalores dejen de cambiar.

Page 42: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia

En la ventana de comandos de Matlab introduzca el siguientecódigo:> A = hilb(5)> x = ones(5,1)> x = A*x> el = max(x)> x = x/elI Compare el nuevo valor de x con el original.I Repita las tres últimas líneas.I Compare el nuevo valor de x con el valor previo y el original.

Note que el cambio es menor entre los dos segundos.

I Repita los tres últimos comandos una y otra vez hasta que losvalores dejen de cambiar.

Page 43: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia

En la ventana de comandos de Matlab introduzca el siguientecódigo:> A = hilb(5)> x = ones(5,1)> x = A*x> el = max(x)> x = x/elI Compare el nuevo valor de x con el original.I Repita las tres últimas líneas.I Compare el nuevo valor de x con el valor previo y el original.

Note que el cambio es menor entre los dos segundos.

I Repita los tres últimos comandos una y otra vez hasta que losvalores dejen de cambiar.

Page 44: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia

En la ventana de comandos de Matlab introduzca el siguientecódigo:> A = hilb(5)> x = ones(5,1)> x = A*x> el = max(x)> x = x/elI Compare el nuevo valor de x con el original.I Repita las tres últimas líneas.I Compare el nuevo valor de x con el valor previo y el original.

Note que el cambio es menor entre los dos segundos.I Repita los tres últimos comandos una y otra vez hasta que los

valores dejen de cambiar.

Page 45: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia

En la ventana de comandos de Matlab introduzca el siguientecódigo:> A = hilb(5)> x = ones(5,1)> x = A*x> el = max(x)> x = x/elI Compare el nuevo valor de x con el original.I Repita las tres últimas líneas.I Compare el nuevo valor de x con el valor previo y el original.

Note que el cambio es menor entre los dos segundos.I Repita los tres últimos comandos una y otra vez hasta que los

valores dejen de cambiar.

Page 46: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia

En la ventana de comandos de Matlab introduzca el siguientecódigo:> A = hilb(5)> x = ones(5,1)> x = A*x> el = max(x)> x = x/elI Compare el nuevo valor de x con el original.I Repita las tres últimas líneas.I Compare el nuevo valor de x con el valor previo y el original.

Note que el cambio es menor entre los dos segundos.I Repita los tres últimos comandos una y otra vez hasta que los

valores dejen de cambiar.Habrá completado el llamado Método de la Potencia.

Page 47: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia

Como ejemplo considérese una matriz de 2×2 cuyos eigenvaloresson 2/3 y 2 y cuyos correspondientes eigenvectores son v1 y v2. Seax0 cualquier vector que sea una combinación de v1 y v2, e.g.,

x0 = v1 +v2

Ahora sea x1 A veces x0. A partir de (1.3) se tiene que

x1 = Av1 +Av2

= 13 v1 +2v2.

(1.18)

Entonces la parte de v1 se estrecha mientras que la de v2 seagranda.

Page 48: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia

Repitiendo el proceso k veces, entonces:

x1 = Axk−1

= Akx0

=(1

3

)v1 +2kv2.

(1.19)

xk crece en la dirección de v2 y se estrecha en la dirección de v1.Este es el principio del Método de la Potencia, los vectoresmultiplicados por A se estrechan en la dirección del eigenvectorcuyo eigenvalor tiene el mayor valor absoluto. También llamadoeigenvalor dominante.

Page 49: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia inversa

I En aplicaciones como el análisis vibracional, el modo(eigenvector) con la menor frecuencia (eigenvalor) es el máspeligroso para la máquina o estructura.

I El Método de la Potencia proporciona el mayor eigenvalor, quees el de frecuencia menos importante.

I Para obtener el eigenvalor de menor frecuencia se utilizará elMétodo de la Potencia Inversa

Los siguientes hechos son el corazón del Método de la PotenciaInversa:

I Si λ es un eigenvalor de A, entonces 1/λ es un eigenvalor deA−1.

I Los eigenvectores de A y A−1 son los mismos.

Page 50: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia inversa

I Si aplicamos el Método de la Potencia a A−1 obtendremos eleigenvalor de mayor valor absoluto de A−1, que es exactamenteel recíproco del eigenvalor de menor valor absoluto de A.

I También se obtiene el eigenvector correspondiente, que es uneigenvector tanto para A como para A−1.

I Recordemos que en el análisis de modos de vibración, el menoreigenvalor y su eigenvector corresponde exactamente a lafrecuencia y modo de mayor interés.

Page 51: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia inversa

I Si aplicamos el Método de la Potencia a A−1 obtendremos eleigenvalor de mayor valor absoluto de A−1, que es exactamenteel recíproco del eigenvalor de menor valor absoluto de A.

I También se obtiene el eigenvector correspondiente, que es uneigenvector tanto para A como para A−1.

I Recordemos que en el análisis de modos de vibración, el menoreigenvalor y su eigenvector corresponde exactamente a lafrecuencia y modo de mayor interés.

Page 52: Main.beamer

Métodos Numéricos para EigenvaloresMétodo de la potencia inversa

I Si aplicamos el Método de la Potencia a A−1 obtendremos eleigenvalor de mayor valor absoluto de A−1, que es exactamenteel recíproco del eigenvalor de menor valor absoluto de A.

I También se obtiene el eigenvector correspondiente, que es uneigenvector tanto para A como para A−1.

I Recordemos que en el análisis de modos de vibración, el menoreigenvalor y su eigenvector corresponde exactamente a lafrecuencia y modo de mayor interés.

Page 53: Main.beamer

Métodos Numéricos para EigenvaloresTarea

1. Escriba un programa en Matlab que ejecute el método de lapotencia en la matriz de entrada A. Emplee un ciclo whilepara hacer que continue hasta que el valor deje de cambiar(hasta alguna tol). Agregue un contador en el ciclo paracontar el número de iteraciones. Pruebe su programa enalgunas matrices simétricas aleatorias de varios tamaños(Consejo: use A = rand(n) y luego A = A*A’). ¿Existealguna relación entre el tamaño de la matriz y el número deiteraciones necesarias o entre el tamaño y el eigenvalor?

2. Escriba un programa que implemente el Método de la PotenciaInversa, empleando el programa desarrollado en el incisoanterior como subrutina. Realice entonces el análisis descritoen este inciso.

Entregue su programas impresos y un breve reporte de las pruebas.

Page 54: Main.beamer

Sesión 3: Eigenvalores, Parte IIISesión anterior

3. Una Aplicación de Eigenvectores: Modos vibracionalesEjercicio

4. Métodos Numéricos para EigenvaloresMétodo de la potenciaMétodo de la potencia inversa

Page 55: Main.beamer

Sesión 3: Eigenvalores, Parte IIISesión del día

5. Método QR

Parte 2: Solución de Ecuaciones Lineales y No Lineales

6. Método de Newton

7. Medición del Error

Page 56: Main.beamer

Método QR

I Los métodos de la potencia y de la Potencia Inversa nosproporcionan sólo un par eigenvalor-eigenvector.

I Aunque ambos métodos se pueden modificar para proporcionarmás eigenvalores y eigenvectores, existe un método mejor paraobtener todos los eigenvalores llamado método QR.

I El método QR es la base de todo el software moderno paracálculo de eigenvalores, incluyendo Matlab.

Page 57: Main.beamer

Método QR

I Los métodos de la potencia y de la Potencia Inversa nosproporcionan sólo un par eigenvalor-eigenvector.

I Aunque ambos métodos se pueden modificar para proporcionarmás eigenvalores y eigenvectores, existe un método mejor paraobtener todos los eigenvalores llamado método QR.

I El método QR es la base de todo el software moderno paracálculo de eigenvalores, incluyendo Matlab.

Page 58: Main.beamer

Método QR

I Los métodos de la potencia y de la Potencia Inversa nosproporcionan sólo un par eigenvalor-eigenvector.

I Aunque ambos métodos se pueden modificar para proporcionarmás eigenvalores y eigenvectores, existe un método mejor paraobtener todos los eigenvalores llamado método QR.

I El método QR es la base de todo el software moderno paracálculo de eigenvalores, incluyendo Matlab.

Page 59: Main.beamer

Método QR

I El metodo QR se basa en el hecho de que cualquier matrizcuadrada tiene una descomposición QR. I. e., para cualquier Aexisten matrices Q y R tal que A = QR, donde Q es ortogonal:

Q−1 = Q′

y R es triangular superior.I El método QR consiste de los siguientes pasos iterativos:

1. Transforme A en una matriz tridiagonal H.2. Descomponga H en Q y R.3. Multiplique Q y R en orden inverso para formar una nueva H.

I La diagonal de H convergerá a los eigenvalores.

Page 60: Main.beamer

Método QR

I El metodo QR se basa en el hecho de que cualquier matrizcuadrada tiene una descomposición QR. I. e., para cualquier Aexisten matrices Q y R tal que A = QR, donde Q es ortogonal:

Q−1 = Q′

y R es triangular superior.I El método QR consiste de los siguientes pasos iterativos:

1. Transforme A en una matriz tridiagonal H.2. Descomponga H en Q y R.3. Multiplique Q y R en orden inverso para formar una nueva H.

I La diagonal de H convergerá a los eigenvalores.

Page 61: Main.beamer

Método QR

I El metodo QR se basa en el hecho de que cualquier matrizcuadrada tiene una descomposición QR. I. e., para cualquier Aexisten matrices Q y R tal que A = QR, donde Q es ortogonal:

Q−1 = Q′

y R es triangular superior.I El método QR consiste de los siguientes pasos iterativos:

1. Transforme A en una matriz tridiagonal H.2. Descomponga H en Q y R.3. Multiplique Q y R en orden inverso para formar una nueva H.

I La diagonal de H convergerá a los eigenvalores.

Page 62: Main.beamer

Método QR

I El metodo QR se basa en el hecho de que cualquier matrizcuadrada tiene una descomposición QR. I. e., para cualquier Aexisten matrices Q y R tal que A = QR, donde Q es ortogonal:

Q−1 = Q′

y R es triangular superior.I El método QR consiste de los siguientes pasos iterativos:

1. Transforme A en una matriz tridiagonal H.2. Descomponga H en Q y R.3. Multiplique Q y R en orden inverso para formar una nueva H.

I La diagonal de H convergerá a los eigenvalores.

Page 63: Main.beamer

Método QR

I El metodo QR se basa en el hecho de que cualquier matrizcuadrada tiene una descomposición QR. I. e., para cualquier Aexisten matrices Q y R tal que A = QR, donde Q es ortogonal:

Q−1 = Q′

y R es triangular superior.I El método QR consiste de los siguientes pasos iterativos:

1. Transforme A en una matriz tridiagonal H.2. Descomponga H en Q y R.3. Multiplique Q y R en orden inverso para formar una nueva H.

I La diagonal de H convergerá a los eigenvalores.

Page 64: Main.beamer

Método QR

I El metodo QR se basa en el hecho de que cualquier matrizcuadrada tiene una descomposición QR. I. e., para cualquier Aexisten matrices Q y R tal que A = QR, donde Q es ortogonal:

Q−1 = Q′

y R es triangular superior.I El método QR consiste de los siguientes pasos iterativos:

1. Transforme A en una matriz tridiagonal H.2. Descomponga H en Q y R.3. Multiplique Q y R en orden inverso para formar una nueva H.

I La diagonal de H convergerá a los eigenvalores.

Page 65: Main.beamer

Método QR

I Matlab incluye una descomposición QR incorporada, la cual esllamada con el comando [Q R] = qr(A).

I El siguiente algoritmo implementa el método QR para lamatriz A:H = hessiana(A)E = diagonal(H)cambio = 1while cambio > 0 doE0 = E[Q R] = qr(H)H = RQE = diagonal(H)cambio = |E−E0|

end while

Page 66: Main.beamer

Método QRTarea

1. Escriba una función que implemente el método QR, queincluya un criterio de paro basado en un número máximo deiteraciones. Utilice esta función, con el número máximo deiteraciones establecido en 1000, en la matriz A = hilb(n) conn igual a 10, 50, y 200. Emplee la norma para comparar losresultados de los eigenvalores obtenidos con la funciónincorporada de Matlab eig. Entregue una copia impresa de sufunción y un reporte breve del experimento.

Page 67: Main.beamer

Resumen de la Parte 1

1. Introducción a Sistemas Lineales

2. Eigenvalores y Eigenvectores

3. Una Aplicación de Eigenvectores: Modos vibracionales

4. Métodos Numéricos para Eigenvalores

5. Método QR

Page 68: Main.beamer

Parte II

Solución de Ecuaciones Lineales y NoLineales

Page 69: Main.beamer

Método de Newton

I En las siguientes sesiones nos enfocaremos en la solución de laecuación

f (x) = 0. (2.1)

En muchos problemas de optimización, el paso final es resolveruna ecuación de esta forma donde f es la derivada de unafunción, F, que se desea maximizar o minimizar.

I Algunos de los métodos existentes para resolver (2.1) son:método de bisección, método de la secante y método deNewton. Todos dependen de un punto inicial cercano (enalgún sentido) a la solución real x∗.

Page 70: Main.beamer

Método de Newton

I La base del método de Newton es la aproximación de unafunción por su linealización en un punto, i. e.

f (x)≈ f (x0)+ f ′(x0)(x− x0). (2.2)

I Ya que deseamos encontrar x tal que f (x) = 0, establezcamosla parte izquierda (f (x)) de esta aproximación igual a 0 ydespejemos x para obtener:

x≈ x0−f (x0)

f ′(x0). (2.3)

Page 71: Main.beamer

Método de Newton

I Si iniciamos el método con un estimado inicial x0, queesperamos esté cercana a x∗, entonces podemos definir unasecuencia de puntos x0,x1,x2,x3, . . . a partir de la fórmula:

xi+1 ≈ xi−f (xi)

f ′(xi), (2.4)

que se deriva de (2.4). Si f (x) es bien comportada cerca de x∗

y x0 está lo suficientemente cerca de x∗, entonces la secuenciaconvergerá a x∗ y lo hará rápidamente.

I El método de Newton converge rápidamente si f ′(x∗) esdiferente de cero y finita y x0 está suficientemente cerca de x∗

para que la aproximación lineal (2.2) sea válida.

Page 72: Main.beamer

Método de NewtonTarea

1. Suponga que una pelota con coeficiente de elasticidad de 0.9se deja caer desde una altura de 2 metros en una superficiedura. Escriba un programa que calcule la distancia recorridapor la pelota después de n rebotes. Incluya muchoscomentarios en el programa. A prueba y error aproxime que tangrande debe ser n para que la distancia total deje de cambiar.Entregue el programa y un breve resumen de los resultados.

2. Para f (x) = x3−4, realice 3 iteraciones del método de Newtoncon punto inicial x0 = 2. (En papel, pero empleandocalculadora.) Calcule la solución (x∗ = 41/3) en una calculadoray encuentre los errores y porcentajes de error de x0, x1, x2 y x3.Ponga los resultados en una tabla.

Page 73: Main.beamer

Medición del Error

I Si estamos tratando de resolver numéricamente f (x) = 0,entonces existen algunas formas de medir el error de nuestraaproximación. La más directa de éstas es:

Error en el paso n = en = xn− x∗

donde xn es la n-ésima aproximación y x∗ es el valor verdadero.I Sin embargo, normalmente no sabemos el valor de x∗, o no

estaríamos tratando de aproximarlo.I Esto hace imposible conocer el error directamente.

Page 74: Main.beamer

Medición del Error

I Si estamos tratando de resolver numéricamente f (x) = 0,entonces existen algunas formas de medir el error de nuestraaproximación. La más directa de éstas es:

Error en el paso n = en = xn− x∗

donde xn es la n-ésima aproximación y x∗ es el valor verdadero.I Sin embargo, normalmente no sabemos el valor de x∗, o no

estaríamos tratando de aproximarlo.I Esto hace imposible conocer el error directamente.

Page 75: Main.beamer

Medición del Error

I Si estamos tratando de resolver numéricamente f (x) = 0,entonces existen algunas formas de medir el error de nuestraaproximación. La más directa de éstas es:

Error en el paso n = en = xn− x∗

donde xn es la n-ésima aproximación y x∗ es el valor verdadero.I Sin embargo, normalmente no sabemos el valor de x∗, o no

estaríamos tratando de aproximarlo.I Esto hace imposible conocer el error directamente.

Page 76: Main.beamer

Medición del Error

I En lugar de medir que tan cerca está xn de x∗, es másconveniente medir que tan cerca está la ecuación de sersatisfecha, o en otras palabras, que tan cerca f (xn) está de 0.

I Emplearemos, en muchas situaciones, la cantidadrn = f (xn)−0, llamada el residuo.

I La mayor parte del tiempo, sólo nos interesará el tamaño dern, así que emplearemos |rn|= |f (xn)|.

Page 77: Main.beamer

Sesión 4: Solución de Ecuaciones Lineales y No Lineales,Parte IISesión anterior

5. Método QR

6. Método de Newton

7. Medición del Error

Page 78: Main.beamer

Sesión 4: Solución de Ecuaciones Lineales y No Lineales,Parte IISesión del día

8. Método de Bisección

9. Métodos Basados en Aproximaciones por Líneas SecantesMétodo de la SecanteMétodo Regula FalsiConvergenciaSimulaciones y Experimentos

10. Funciones Vectoriales No Lineales – Método de NewtonNotación vectorialAproximación lineal para funciones vectorialesMétodo de NewtonEjercicio

Page 79: Main.beamer

Método de Bisección

Suponga que c = f (a)< 0 y d = f (b)> 0. Si f es continua,entonces debe ser cero en algún x∗ entre a y b.

I El método de bisección consiste en buscar en la mitad deltrayecto entre a y b el cero de f , i.e. hacer x = (a+b)/2 yevaluar y = f (x).

I A menos que este punto sea cero, entonces por los signos de c,d y y podemos decidir que nuevo intervalo subdividir.

I En particular, si c y y tienen el mismo signo, entonces [x,b]debe ser el nuevo intervalo, pero si c y f tienen diferentessignos, entonces [a,x] debe ser el nuevo intervalo.

Page 80: Main.beamer

Método de Bisección

Una ventaja del método de bisección, que no la tiene el método deNewton, es que siempre sabremos que la solución real x∗ seencuentra dentro del intervalo [a,b], ya que f (a) y f (b) tienensignos diferentes. Esto permite saber con seguridad que el error essiempre menos de la mitad que la longitud del intervalo actual[a,b]. i.e.

{Error Absoluto}= |x− x∗|< (b−a)/2, (2.5)

donde x es el punto central entre los a y b actuales.

Figura 3: El método de bisección

Page 81: Main.beamer

Método de BisecciónTarea

I Escriba un programa en Matlab que resuelva con el método debisección hasta que el error esté limitado a una toleranciadada. Use un ciclo while para hacerlo. ¿Cómo debe medirseel error? Corra su programa en la función f (x) = 2x3 +3x−1con intervalo inicial [0,1] y una tolerancia de 10−8. ¿Cuántospasos necesita el programa para alcanzar esta tolerancia?Entregue el programa y un breve resumen de los resultados.

I Realice 3 iteraciones del método de bisección en la funciónx3−4, con un intervalo inicial [1,3]. (En papel, peroempleando calculadora.) Calcule los errores y porcentaje deerrores de x0, x1 y x2.

Page 82: Main.beamer

Métodos Basados en Aproximaciones por Líneas SecantesMétodo de la Secante

El método de la secante require dos puntos iniciales x0 y x1 queestén razonablemente cerca de la solución x∗. Preferentemente lossignos de y0 = f (x0) y y1 = f (x1) deben ser diferentes. Una vez quese determinan x0 y x1 el método procede con la siguiente fórmula:

xi+1 = xi−xi− xi−1

yi− yi−1yi (2.6)

Page 83: Main.beamer

Métodos Basados en Aproximaciones por Líneas SecantesMétodo de la Secante

Ejemplo: Suponga f (x) = x4−5 para la cual la solución verdaderaes x∗ = 4

√5. La gráfica de la función revelaría que la solución

está alrededor de 1.25. Si hacemos x0 = 1 y x1 = 2 sabemosque la raíz está entre x0 y x1. Ahora tenemos que y0 = f (1)−4y y1 = f (2) = 11. Podemos calcular x2 de la fórmula (2.6):

x2 = 2− 2−111− (−4)

11 =1915≈ 1.26666 . . . (2.7)

Empleando x2 = 19/15 en f (x) obtenemosy2 = f (19/15)≈−2.425758 . . .. En el siguiente paso usamosx1 = 2 y x2 = 19/15 en la fórmula (2.6) para encontrar x3 yasí sucesivamente.

Page 84: Main.beamer

Métodos Basados en Aproximaciones por Líneas SecantesMétodo de la Secante

I A continuación se presenta un programa para el método de lasecante. Note que requiere dos condiciones iniciales de entradax0 y x1, pero no requiere como entrada la derivada de f (x).

function x = mysecant(f,x0,x1,n)format longformat compacty0 = f(x0);y1 = f(x1);for i = 1:n

x = x1 - (x1-x0)*y1/(y1-y0)y = f(x)x0 = x1;y0 = y1;x1 = x;y1 = y;

end

Page 85: Main.beamer

Métodos Basados en Aproximaciones por Líneas SecantesMétodo Regula Falsi

El método Regula Falsi es una combinación del método de lasecante y del método de bisección.

I La idea es emplear líneas secantes para aproximar f (x), peroescoger cómo actualizar usando el signo de f (xn).

I Así como en el método de bisección, empezamos con a y bpara los cuales f (a) y f (b) tienen diferentes signos. Entonceshacemos:

x = b− b−af (b)− f (a)

f (b). (2.8)

I Después checamos el signo de f (x). Si es del mismo signo quef (a) entonces x se convierte en la nueva a. De otra forma,tenemos que b = x.

Page 86: Main.beamer

Métodos Basados en Aproximaciones por Líneas SecantesConvergencia

I Si empezamos con una buena condición inicial x0, el método deNewton convergerá a x∗ rápidamente. El método de la secantees un poco más lento que el mpetodo de Newton y el métodoRegula Falsi es ligeramente más lento que este. Ambos son,sin embargo, mucho más rápidos que el método de bisección.

I Si no tenemos una buena condición o intervalo iniciales, elmétodo de la secante, así como el método de Newton puedenfallar. El método Regular Falsi, de la misma forma que elmétodo de bisección siempre converge ya que mantiene lasolución dentro de un intervalo definido.

Page 87: Main.beamer

Métodos Basados en Aproximaciones por Líneas SecantesSimulaciones y Experimentos

Aunque el método de Newton converge más rápido que losmétodos restantes, existen contextos en los que no es conveniente oes imposible emplearlo.

I Una situación obvia es cuando es difícil calcular una fórmulapara f ′(x) aún cuando se conozca una fórmula para f (x). Estosucede a menudo cuando f (x) no está definida explícitamente,sino implícitamente.

I Existen otras situaciones, que son comunes en las áreas deingeniería e investigación, cuando ni siquiera se conoce unafórmula para f (x).

I Esto sucede cuando f (x) es el resultado de un experimento osimulación en lugar de una fórmula. En tales situaciones, elmétodo de la secante es usualmente la mejor opción.

Page 88: Main.beamer

Métodos Basados en Aproximaciones por Líneas SecantesSimulaciones y Experimentos

Aunque el método de Newton converge más rápido que losmétodos restantes, existen contextos en los que no es conveniente oes imposible emplearlo.

I Una situación obvia es cuando es difícil calcular una fórmulapara f ′(x) aún cuando se conozca una fórmula para f (x). Estosucede a menudo cuando f (x) no está definida explícitamente,sino implícitamente.

I Existen otras situaciones, que son comunes en las áreas deingeniería e investigación, cuando ni siquiera se conoce unafórmula para f (x).

I Esto sucede cuando f (x) es el resultado de un experimento osimulación en lugar de una fórmula. En tales situaciones, elmétodo de la secante es usualmente la mejor opción.

Page 89: Main.beamer

Métodos Basados en Aproximaciones por Líneas SecantesTarea

I Use el programa mysecant en f (x) = x3−4. Compare losresultados con los de la Tarea anterior. Después modifique elprograma para aceptar una tolerancia usando un ciclowhile. Entregue el programa y un breve reporte de losresultados.

I Escriba un programa myregfalsi basado en su programa paraimplementar el método Regula Falsi. Empléelo enf (x) = x3−4. Compare los resultados con los del incisoanterior y con los de la Tarea anterior.

Page 90: Main.beamer

Funciones Vectoriales No Lineales – Método de Newton

Ejemplo El sistema LORAN (LOng RAnge Navigation) calcula laposición de un barco en el agua empleando señales detransmisores fijos. A partir de las diferencias en tiempo de lasseñales entrantes, el bote obtiene diferencias de distanciasdesde los transmisores. Esto resulta en dos ecuaciones, cadauna representando hipérbolas definidas por las diferencias dedistancia de dos puntos (lugar). Un ejemplo de talesecuaciones son:

x21862 −

y2

3002−1862 = 1

(y−500)2

2792 − (x−300)2

5002−2792 = 1.(2.9)

Page 91: Main.beamer

Funciones Vectoriales No Lineales – Método de Newton

I Resolver dos ecuaciones cuadráticas con dos incógnitas,requeriría resolver una ecuación polinomial de grado 4. Sepuede hacer esto a mano, pero para que un sistemanavegacional funcione bien, los cálculos se deben hacerautomática y numéricamente. Nótese que el Sistema dePosicionamiento Global (GPS) funciona bajo principiossimilares.

Page 92: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonNotación vectorial

I Usualmente resolvemos sistemas de ecuaciones en las que elnúmero de incógnitas es igual al número de ecuaciones. Así,nos interesa encontrar soluciones a sistemas de la forma:

f1(x1,x2,x3, . . . ,xn) = 0f2(x1,x2,x3, . . . ,xn) = 0f3(x1,x2,x3, . . . ,xn) = 0

...fn(x1,x2,x3, . . . ,xn) = 0.

(2.10)

Page 93: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonNotación vectorial

I Podemos pensar en (x1,x2,x3, . . . ,xn) como un vector x y en(f1, f2, f3, . . . , fn) como una función vectorial f. Con estanotación, podemos reescribir el sistema de ecuaciones (2.10)como:

f(x) = 0. (2.11)

i.e. queremos encontrar un vector que haga que la funciónvectorial sea igual al vector cero.

I Como en el método de Newton para una variable, necesitamosiniciar con una condición inicial x0. En teoría, entre másvariables, más difícil encontrar una buena condición inicial. Enla práctica, esto se puede solucionar empleando elconocimiento físico sobre los posibles valores de la solución.Una vez escogida x0, tenemos

∆x = x1−x0 (2.12)

Page 94: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonAproximación lineal para funciones vectoriales

I En el caso de una sola variable, el método de Newton se derivóconsiderando la aproximación lineal de la función f alrededorde la condición inicial x0. Del Cálculo, la aproximación lineal def alrededor de x0, para vectores y funciones vectoriales, es:

f(x)≈ f(x0)+ [J f(x0)] (x−x0). (2.13)

I [J f(x0)] es una matriz Jacobiana de n×n cuyas entradas sonlas derivadas parciales de las componentes de f:

[J f(x0)] =

∂ f1∂x1

∣∣∣x0

∂ f1∂x2

∣∣∣x0

∂ f1∂x3

∣∣∣x0· · · ∂ f1

∂xn

∣∣∣x0

∂ f2∂x1

∣∣∣x0

∂ f2∂x2

∣∣∣x0

∂ f2∂x3

∣∣∣x0· · · ∂ f2

∂xn

∣∣∣x0

......

.... . .

...∂ fn∂x1

∣∣∣x0

∂ fn∂x2

∣∣∣x0

∂ fn∂x3

∣∣∣x0· · · ∂ fn

∂xn

∣∣∣x0

. (2.14)

Page 95: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonMétodo de Newton

I Deseamos encontrar x que haga que f sea igual al vector cero,así que debemos escoger x1 tal que

f(x0)+ [J f(x0)] (x1−x0) = 0.

I Ya que [J f (x0)] es una matriz cuadrada, podemos resolver estaecuación de la forma

x1 = x0− [J f(x0)]−1 f(x0),

en el caso de que la inversa exista.

Page 96: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonMétodo de Newton

Sin embargo, en la práctica no se emplea la inversa de la matriz, ensu lugar podemos primero resolver la ecuación

[J f(x0)]∆x =−f(x0). (2.15)

Ya que [J f (x0)] es una matriz conocida y −f(x0) es un vectorconocido, esta ecuación es simplemente un sistema de ecuacioneslineales, que se puede resolver eficientemente con precisión. Unavez que el vector solución ∆x es obtenido, podemos obtener nuestroestimado mejorado x1:

x1 = x0 +∆x.

I Resuelva [J f(x0)]∆x =−f(x0) para ∆x.I Haga xi+1 = xi +∆x.

Page 97: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Resolveremos el siguiente conjunto de ecuaciones:

x3 + y = 1

y3− x =−1.(2.16)

I Se puede fácilmente ver que (x,y) = (1,0) es una solución paraeste sistema. Graficando ambas ecuaciones se puede ver que(1,0) es la única solución (Figura 4).

Page 98: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

Figura 4: Gráfica de las ecuaciones x3 + y = 1 y y3− x =−1. Existe una y sólo una intersección; en(x,y) = (1,0)

Page 99: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Podemos poner estas ecuaciones en forma vectorial haciendox1 = x, x2 = y y

f1(x1,x2) = x31 + x2−1

f2(x1,x2) = x22− x1 +1,

(2.17)

o, equivalentemente

f(x) =(

x31 + x2−1

x32− x1 +1

). (2.18)

Page 100: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Escriba el siguiente programa script:format longf = inline(’[x(1)ˆ3+x(2)-1; x(2)ˆ3-x(1)+1]’);x = [.5; .5]x = fsolve(f,x)

I Guarde el programa como mysolve.m y córralo. Puede ver queel comando interno de Matlab fsolve aproxima la solución,pero sólo a cerca de 7 decimales. Mientras que esto puede sersuficientemente aproximado para la mayoría de lasaplicaciones, uno podría esperar una mejor aproximación paraun problema tan simple.

Page 101: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Ahora implementaremos el método de Newton para esteproblema. Modifique su programa mysolve a:

format longn = 8f = inline(’[x(1)ˆ3+x(2)-1; x(2)ˆ3-x(1)+1]’);J = inline(’[3*x(1)ˆ2, 1; -1, 3x(2)ˆ2]’);x = [.5; .5]for i = 1:n

Dx = -J(x)\f(x);x = x + Dxf(x)

endI Guarde el programa como mymultnewton y córralo y veremos

que encuentra la raíz exacta (a la precisión de la máquina) ensólo 6 iteraciones.

Page 102: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Ahora implementaremos el método de Newton para esteproblema. Modifique su programa mysolve a:

format longn = 8f = inline(’[x(1)ˆ3+x(2)-1; x(2)ˆ3-x(1)+1]’);J = inline(’[3*x(1)ˆ2, 1; -1, 3x(2)ˆ2]’);x = [.5; .5]for i = 1:n

Dx = -J(x)\f(x);x = x + Dxf(x)

endI Guarde el programa como mymultnewton y córralo y veremos

que encuentra la raíz exacta (a la precisión de la máquina) ensólo 6 iteraciones.

Page 103: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Ahora implementaremos el método de Newton para esteproblema. Modifique su programa mysolve a:

format longn = 8f = inline(’[x(1)ˆ3+x(2)-1; x(2)ˆ3-x(1)+1]’);J = inline(’[3*x(1)ˆ2, 1; -1, 3x(2)ˆ2]’);x = [.5; .5]for i = 1:n

Dx = -J(x)\f(x);x = x + Dxf(x)

endI Guarde el programa como mymultnewton y córralo y veremos

que encuentra la raíz exacta (a la precisión de la máquina) ensólo 6 iteraciones.

Page 104: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Ahora implementaremos el método de Newton para esteproblema. Modifique su programa mysolve a:

format longn = 8f = inline(’[x(1)ˆ3+x(2)-1; x(2)ˆ3-x(1)+1]’);J = inline(’[3*x(1)ˆ2, 1; -1, 3x(2)ˆ2]’);x = [.5; .5]for i = 1:n

Dx = -J(x)\f(x);x = x + Dxf(x)

endI Guarde el programa como mymultnewton y córralo y veremos

que encuentra la raíz exacta (a la precisión de la máquina) ensólo 6 iteraciones.

Page 105: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Ahora implementaremos el método de Newton para esteproblema. Modifique su programa mysolve a:

format longn = 8f = inline(’[x(1)ˆ3+x(2)-1; x(2)ˆ3-x(1)+1]’);J = inline(’[3*x(1)ˆ2, 1; -1, 3x(2)ˆ2]’);x = [.5; .5]for i = 1:n

Dx = -J(x)\f(x);x = x + Dxf(x)

endI Guarde el programa como mymultnewton y córralo y veremos

que encuentra la raíz exacta (a la precisión de la máquina) ensólo 6 iteraciones.

Page 106: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Ahora implementaremos el método de Newton para esteproblema. Modifique su programa mysolve a:

format longn = 8f = inline(’[x(1)ˆ3+x(2)-1; x(2)ˆ3-x(1)+1]’);J = inline(’[3*x(1)ˆ2, 1; -1, 3x(2)ˆ2]’);x = [.5; .5]for i = 1:n

Dx = -J(x)\f(x);x = x + Dxf(x)

endI Guarde el programa como mymultnewton y córralo y veremos

que encuentra la raíz exacta (a la precisión de la máquina) ensólo 6 iteraciones.

Page 107: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Ahora implementaremos el método de Newton para esteproblema. Modifique su programa mysolve a:

format longn = 8f = inline(’[x(1)ˆ3+x(2)-1; x(2)ˆ3-x(1)+1]’);J = inline(’[3*x(1)ˆ2, 1; -1, 3x(2)ˆ2]’);x = [.5; .5]for i = 1:n

Dx = -J(x)\f(x);x = x + Dxf(x)

endI Guarde el programa como mymultnewton y córralo y veremos

que encuentra la raíz exacta (a la precisión de la máquina) ensólo 6 iteraciones.

Page 108: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonEjercicio

I Ahora implementaremos el método de Newton para esteproblema. Modifique su programa mysolve a:

format longn = 8f = inline(’[x(1)ˆ3+x(2)-1; x(2)ˆ3-x(1)+1]’);J = inline(’[3*x(1)ˆ2, 1; -1, 3x(2)ˆ2]’);x = [.5; .5]for i = 1:n

Dx = -J(x)\f(x);x = x + Dxf(x)

endI Guarde el programa como mymultnewton y córralo y veremos

que encuentra la raíz exacta (a la precisión de la máquina) ensólo 6 iteraciones.

Page 109: Main.beamer

Funciones Vectoriales No Lineales – Método de NewtonTarea

Adapte el programa mymultnewton para encontrar una solución alpar de ecuaciones en el ejemplo LORAN. ¡Estas ecuaciones tienenen realidad 4 diferentes soluciones! Vea cuantas puede encontrarintentando con diferentes condiciones iniciales. Piense en al menosuna forma en la que el sistema de navegación pueda determinarcuál es la correcta.

Page 110: Main.beamer

Resumen de la Parte 2

6. Método de Newton

7. Medición del Error

8. Método de Bisección

9. Métodos Basados en Aproximaciones por Líneas Secantes

10. Funciones Vectoriales No Lineales – Método de Newton