54
Métodos Numéricos - MCC613 Cap10: Problemas de valor de Cap10: Problemas de valor de frontera de dos puntos frontera de dos puntos Prof: J. Solano Universidad Nacional de Ingeniería Facultad de Ciencias Maestría en Ciencia de la Computación Métodos Numéricos MCC613

Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Cap10: Problemas de valor deCap10: Problemas de valor defrontera de dos puntosfrontera de dos puntos

Prof: J. Solano

Universidad Nacional de IngenieríaFacultad de Ciencias

Maestría en Ciencia de la Computación

Métodos NuméricosMCC613

Page 2: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

IntroducciónIntroducción

2

Un probl común en ing civil es la deflexión de una viga de secc transversal rectangular sujeta a una carga uniforme, mientras que los extremos de la viga están soportados para que no se desvíen.

Supongamos que l, q, E, S e I representan, respectivamente, la longitud de la viga, la intensidad de la carga uniforme, el módulo de elasticidad, el esfuerzo en los puntos extremos y el momento central de inercia. La ec diferencial que se aproxima a la situación física es de la forma

donde ω(x) es la deflexión a una distancia x desde el extremo izquierdo de la viga. Como no se produce desviación en los extremos de la viga, existen 2 condic de contorno ω(0) = 0 and ω(l) = 0.

Page 3: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

IntroducciónIntroducción

3

Anteriormente vimos ecs diferenciales de 1er orden que tienen una condic inicial a

satisfacer. Después vimos que las técnicas podrían extenderse a sistemas de ecs y luego a ecs de orden superior, pero todas las condic especificadas están en el mismo punto final. Estos son probls de valor inicial.

Aquí mostraremos cómo aproximar la soluc a probls de valor límite (frontera/contorno), ecs diferenciales con condic impuestas en diferentes ptos. Para las ecs diferenciales de 1er orden, solo se especifica una condic, por lo que no hay distinción entre los probls de valor inicial y de valor límite. Consideraremos ecs de 2do orden con dos valores límite. Los probls físicos que dependen de la posic y no del tiempo son a menudo descritos en términos de ecs diferenciales con condic impuestas en más de un pto.

Probls de valor de frontera de 2 ptos aquí implican una ec diferencial de 2do orden de la forma

y” = f(x,y,y’), para a ≤ x ≤ b

junto con las condic de contorno y(a)= y y(b)=.

Page 4: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

IntroducciónIntroducción

4

Resolver y” = f(x,y,y’), y(a)=, y(b)=En probls de valores de frontera de 2 ptos, las condic aux asociadas con la ec diferencial, llamadas condic de contorno, se especifican en 2 valores diferentes de x. Esta desviación aparentemente pequeña de probls de valor inicial tiene una gran repercusión: hace que los probls de valor límite sean considerablemente más difíciles de resolver.

En un probl de valor inicial, pudimos comenzar en el pto en que se dieron los valores iniciales y avanzar la soluc hasta donde fue necesario. Esta técnica no funciona para probls de valores límite, porque no hay suficientes condic de inicio disponibles en ninguno de los ptos finales para producir una soluc única.

Una forma de superar la falta de condic de partida es adivinar la falta de valores límite en un extremo. Es poco probable que la soluc resultante satisfaga las condic de contorno en el otro extremo, pero al inspeccionar la discrepancia podemos estimar qué cambios realizar en las condic iniciales antes de integrar de nuevo.

Este procedimiento iterativo se conoce como el método de disparo (shooting method). El nombre se deriva de la analogía con el tiro al blanco: da un tiro y observa dónde golpea el objetivo, luego corrige el objetivo y vuelve a disparar.

Page 5: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

IntroducciónIntroducción

5

Otro medio de resolver probls de valores límite de 2 ptos es el Método de Diferencias Finitas, donde las ec diferenciales se aproximan mediante diferencias finitas en puntos de malla espaciados uniformemente.

Como consecuencia, una ec diferencial se transforma en un conj de ecs algebraicas simultáneas.

Los 2 métodos tienen un probl común: dan lugar a conjs de ecs no lineales si la ec diferencial no es lineal.

Todos los métodos para resolver ecs no lineales son procedimientos iterativos que pueden consumir una gran cantidad de recursos computacionales. Por lo tanto, la soluc de probls de valor límite no lineal no es barata.

Otra complicación es que los métodos iterativos necesitan valores iniciales razonablemente buenos para converger.

Dado que no existe una fórmula establecida para determinar esto, un algoritmo para resolver probls de valor límite no lineal requiere una “entrada” inteligente; no puede ser tratado como una "caja negra".

Page 6: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Métodos de disparo (shooting method)Métodos de disparo (shooting method)

6

El siguiente teor proporciona condic generales que aseguran que la soluc a un probl de valor límite de 2do orden existe y es única.

Teorema 1: suponga que la función f en el probl del valor límite

y” = f(x,y,y’), para a ≤ x ≤ b con y(a)= y y(b)=.

es continua en D={(x,y,y’)| para a ≤ x ≤ b, con -ꝏ ≤ y ≤ ꝏ y -ꝏ ≤ y’ ≤ ꝏ}

y que las derivadas parciales fy y f

y’ también son continuas en D. Si

i) fy(x,y,y’)>0, para todo (x,y,y’)ϵ D, y

ii) existe una constante M con |fy’(x,y,y’)|≤ M , para todo (x,y,y’)ϵ D,

entonces el probl del valor límite tiene una soluc única.

Ej 1: Usa el Teor 1 para mostrar que el probl del valor límite

y” + e-xy + sin y’ = 0, para 1 ≤ x ≤ 2 con y(1)=y(2)=.

tiene soluc única.

Page 7: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Métodos de disparo (shooting method)Métodos de disparo (shooting method)

7

Ej 1: Usa el Teor 1 para mostrar que el probl del valor límite

y” + e-xy + sin y’ = 0, para 1 ≤ x ≤ 2 con y(1)=y(2)=.

tiene soluc única.

Solución:

Tenemos

f(x,y,y’) = - e-xy - sin y’

y para x en [1,2],

fy(x,y,y’) = x e-xy > 0

y

|fy’(x,y,y’)| = |-cos y’| ≤ 1

entonces el probl tiene soluc única.

Page 8: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Problemas lineales de valor de fronteraProblemas lineales de valor de frontera

8

La ec diferencial

y” = f(x,y,y’)

es lineal cuando funciones p(x), q(x) y r(x) existen con

f(x,y,y’) = p(x) y’ + q(x) y + r(x)

(una ec lineal solo implica potencias lineales de y y sus derivadas).

Probls de este tipo son frecuentes y, en este caso, el Teor 1 puede simplificarse.

Corolario 1: suponga que el probl lineal de valor límite

y” = p(x) y’ + q(x) y + r(x), para a ≤ x ≤ b con y(a)= y y(b)=.

satisface

i) p(x), q(x) y r(x) son continuos en [a,b]

ii) q(x) > 0 en [a,b]

Entonces el probl del valor límite tiene una soluc única.

Page 9: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Problemas lineales de valor de fronteraProblemas lineales de valor de frontera

9

Para aprox la soluc única a este probl lineal, primero consideramos los probls de valores inic

y” = p(x) y’ + q(x) y + r(x), para a ≤ x ≤ b con y(a)= y y’(a)= (a)

y

y” = p(x) y’ + q(x) y, para a ≤ x ≤ b con y(a)= y y’(a)= (b)

Una extensión del Teor de valor medio, que satisface condic de Lipschitz, asegura que bajo la hipótesis del Corolario 1, ambos probls tienen soluc única

Sea y1(x) la soluc de (a), y sea y

2(x) la soluc de (b). Asuma y

2(x)≠0. (que

y2(x)=0 está en conflicto con hipótesis del Corolario 1) Defina

(c)

entonces y(x) es soluc al probl lineal de frontera (a). Para verificar esto, primero ten en cuenta que...

Page 10: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Problemas lineales de valor de fronteraProblemas lineales de valor de frontera

10

Para verificar esto, primero ten en cuenta que…

y

Sustituyendo para y’’1(x) y y’’

2(x) en esta ec da:

Page 11: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Problemas lineales de valor de fronteraProblemas lineales de valor de frontera

11

Además

y

.

Page 12: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Problemas lineales de valor de fronteraProblemas lineales de valor de frontera

12

Shooting linealEl método de Disparo para ecs lineales se basa en la sustitución del probl del límite lineal por los 2 probls de valor inicial (a) y (b). Hay numerosos métodos disponibles en el Capítulo de PVI de EDOs para aproximar las solucs y

1(x) y

y2(x), y una vez que estas aprox están disponibles, la soluc al probl del valor

límite se aproxima usando ec.(c). Gráficamente, el método tiene la apariencia que se muestra en la Fig.

Page 13: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Problemas lineales de valor de fronteraProblemas lineales de valor de frontera

13

El algoritmo 1 usa la técnica de 4to orden Runge-Kutta para encontrar las aprox a y

1(x) y y

2(x), pero otras técnicas para aprox las soluc a los probls de

valores iniciales se pueden sustituir en el paso 4. El algoritmo tiene el característica de obtener aprox para la derivada de la soluc al probl del valor límite, así como a la soluc del probl mismo. El uso del algoritmo no se restringe a aquellos probls para los cuales se verifica la hipótesis de Corolario 1; funcionará para muchos probls que no satisfacen esta hipótesis.

Algoritmo 1: Shooting linealPara aprox la soluc del probl de valor límite

-y” + p(x) y’ + q(x) y + r(x) = 0, para a ≤ x ≤ b con y(a)= y y(b)=.

(Nota: ecs (a) y (b) se escriben como sistemas de 1er orden y se resuelven).

ENTRADA: ptos finales a,b; condic contorno α,β; número de subintervalos N.

SALIDA: aprox de w1,i

a y(xi); w

2,i a y’(x

i) para cada i = 0, 1, ..., N.

Page 14: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo Shooting linealAlgoritmo Shooting lineal

14

Paso 1: definir

Paso 2: Para i=0,…,N-1 efectuar pasos 3 y 4

(en los pasos 3 y 4 se usa el método RK4 para sistemas de ecs)

Paso 3: definir

Paso 4: definir

Page 15: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo Shooting linealAlgoritmo Shooting lineal

15

Paso 5: definir

SALIDA

Paso 6: Para i=0,…,N

definir

SALIDA (x,W1,W2) Paso 7: PARADA (STOP)

Page 16: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo Shooting linealAlgoritmo Shooting lineal

16

Ejemplo: aplicar la técnica del shooting lineal con N=10 al probl de valor límite

para 1 ≤ x ≤ 2 con y(1)=1 ; y(2)=.

y comparar los resultados con la solución exacta

donde

y

Page 17: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo Shooting linealAlgoritmo Shooting lineal

17

Solución: aplicar técnica del shooting lineal con N=10 al probl de valor límite

para 1 ≤ x ≤ 2 con y1(1)=1 ; y’

1(1)=.

y

para 1 ≤ x ≤ 2 con y2(1)=0 ; y’

2(1)=.

Los resultados de los cálculos, usando el Algoritmo 1 con N=10 y h=0.1, se muestran en la tabla (siguiente pag).

El valor que figura como u1,i

se aproxima al valor de y1(x

i), el valor v

1,i se

aproxima a y2(x

i), y w

i se aproxima a

Page 18: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo Shooting linealAlgoritmo Shooting lineal

18

Los resultados precisos en este ej se deben a que el método RungeKutta de 4to orden da aprox O(h4) a las soluc de los probls de valor inicial.

Desafortunadamente, debido a errores de redondeo, puede haber problemas ocultos en esta técnica.

Page 19: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Reduciendo el error de redondeoReduciendo el error de redondeo

19

Los probs de redondeo pueden ocurrir si y1(x) aumenta rápidamente a medida

que x va de a a b. En este caso u1,N

≈ y1(b) será grande y si β es pequeña en

magnitud en comparación con u1,N

, el término 2,0

=(β-u1,N

)/v1,N

será aprox ≈ -u

1,N/v

1,N . Los cálculos en el Paso 6 se vuelven

que permite la posibilidad de una pérdida de dígitos significativos debido a la cancelación. Sin embargo, como u

1,i es una aprox a y

1(x

i), el comportamiento

de y1 puede monitorearse fácilmente, y si u

1,i aumenta rápidamente de a a b, la

técnica de disparo puede emplearse hacia atrás (backward) de x0= b a x

N= a.

Esto cambia los probls de valor inicial que deben resolverse para

y” = p(x) y’ + q(x) y + r(x), para a ≤ x ≤ b con y(b)= y y’(b)=y

y” = p(x) y’ + q(x) y, para a ≤ x ≤ b con y(b)= y y’(b)=

Page 20: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Reduciendo el error de redondeoReduciendo el error de redondeo

20

Si esta técnica de disparo inverso todavía da cancelación de dígitos significativos y si esta mejora no produce una mayor precisión, se deben usar otras técnicas. Algunas de estos se presentarán más adelante. En general, sin embargo, si u

1,i y v

1,i son aprox O(hn) a y

1(x

i) y y

2(x

i), respectivamente, para

cada i = 0,1,...,N, entonces 1,i

será una aprox O(hn) a y(xi). En particular,

para alguna constante K

Page 21: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Métodos de disparo (shooting method)Métodos de disparo (shooting method)

21

Ecuación diferencial de segundo orden

El probl más simple de valor de frontera de 2 ptos es una ec diferencial de 2do orden con una condic especificada en x=a y otra en x=b. Aquí un probl de valor de frontera típico de 2do orden:

y” = f(x,y,y’), y(a)=, y(b)=intentemos convertir esta ec en un probl del valor inicial

y” = f(x,y,y’), y(a)=, y’(a)=u

Clave: encontrar valor correcto de u. Puede hacerse por prueba y error: adivina y resuelve el probl del valor inicial al ir de x=a hasta b. Si soluc está de acuerdo con condic de frontera prescrita y(b)=β, estamos listos, caso contrario hay que ajustar u y tratar de nuevo.

Procedimiento muy tedioso.

Métodos más sistemáticos están disponibles si nos damos cuenta de que la determinación de u es un probl de búsqueda de raíces. Debido a que la solución del probl de valor inicial depende de u, el valor de límite calculado y(b) es una función de u, es decir

y(b) = θ(u)

Page 22: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Métodos de disparo (shooting method)Métodos de disparo (shooting method)

22

Entonces, u es una raíz de r(u) = θ(u) - β = 0

donde r(u) es límite residual (diferencia entre valores límite calculados y especificados).

Ec anterior puede resolverse con cualquiera de los métodos de búsqueda de raíz.

Rechazamos método de bisección porque implica demasiadas evaluaciones de θ(u).

En método Newton-Raphson nos encontramos con probl de tener que calcular dθ/du, que se puede hacer, pero no fácilmente.

Eso deja el algoritmo de Ridder como un buen método de elección (pero no el único).

Page 23: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Shooting method: problemas no linealesShooting method: problemas no lineales

23

Probl de valor de frontera/límite de 2 ptos

y” = f(x,y,y’), para a ≤ x ≤ b con y(a)= y y(b)=(d)

técnicas de solución similiares a probl de frontera/lineal, pero NO puede expresarse como combinación de soluc lineales de probls frontera de 2 ptos.

Aquí se aprox la soluc a probl valor frontera usando las soluc a una secuencia de PVIs que contienen parámetro t:

y” = f(x,y,y’), para a ≤ x ≤ b con y(a)= y y’(a)= t (e)

hacemos esto eligiendo parámetros t = tk tal que

donde y(x,tk) es soluc a (e) con t = t

k y y(x) es soluc al PVF (d). Esta técnica

es método shooting.

Empezamos con valor t0 que da la elevación inicial a la cual el objeto es

“lanzado” del pto inicial (a,) y a lo largo de la curva descrita por la soluc al PVI

y” = f(x,y,y’), para a ≤ x ≤ b con y(a)= y y’(a)= t0

(f)

Page 24: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Shooting method: problemas no linealesShooting method: problemas no lineales

24

Si y(b,t0) no es suficiente cercano a , corregimos nuestra aprox escogiendo

t1,t

2,.., hasta que y(b,t

k) es suficientemente cercano a .

Para determinar parámetros tk, suponga un PVF tipo (d), q satisface Teor 1. Si

denota y(x,t) denota la solución al PVI (e), entonces determinamos t con

y(b,t) – = 0

Page 25: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Shooting method: problemas no linealesShooting method: problemas no lineales

25

Esta es una ec no lineal en una variable t. Hay varios mét para obetner raices vistos en CN1. Para usar el mét Secante para resolver el probl, necesitamos elegir las aprox inic t

0 y t

1, y luego generar los términos restantes de la secuencia

con

Page 26: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método iterativo de NewtonMétodo iterativo de Newton

26

Para usar el método más poderoso de Newton para generar la secuencia {tk}, solo

se necesita una aproximación inicial, t0. Sin embargo, la iteración tiene la forma

y requiere el conocimiento de (dy/dt)(b,tk-1

). Esto es una dificultad xq no se conoce una representación explícita para y(b,t); solo conocemos los valores y(b,t

0),

y(b,t1), ..., y(b,t

k-1).

Supongamos que reescribimos el probl del valor inicial (e), enfatizando que la soluc depende tanto de x como del parámetro t:

y”(x.t) = f(x,y(x,t),y’(x,t)), para a ≤ x ≤ b con y(a,t)= y y’(a,t)= t (g)

Hemos conservado la notación principal para indicar la diferenciación con respecto a x. Necesitamos determinar (dy/dt)(b,t

k) cuando t=t

k-1, así que primero

tomamos la derivada parcial de (g) con respecto a t. Esto implica que

Page 27: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método iterativo de NewtonMétodo iterativo de Newton

27

Como x y t son independientes, tenemos ∂x/∂t = 0 y la ec se simplifica al (ec (h))

para a ≤ x ≤ b. Las condiciones iniciales dan

Page 28: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método iterativo de NewtonMétodo iterativo de Newton

28

Simplificando la notación usando z(x.t) para denotar (∂y/∂t)(x.t) y asumiendo que el orden de diferenciación de x y t puede intercambiarse, la ec (h) con las condiciones iniciales se convierte en el PVI

(i)

para a ≤ x ≤ b, con z(a.t)=0 y z’(a.t)=1.

El método de Newton requiere que las ecs de PVI (g) y (h) sean resueltas para cada iteración. Entonces

Ninguno de estos PVI se resuelve en forma exacta, las soluc son aprox por alguno de los métodos de soluc del capítulo de PVIs de EDOs.

Algoritmo 2 usa metodo RK4 para aprox ambas soluc requeridas por el método de Newton.

Algo similar puede hacerse con el método de la Secante.

Page 29: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo 2: Shooting No Lineal con Algoritmo 2: Shooting No Lineal con Método de NewtonMétodo de Newton

29

Para aprox la soluc al PVF

y” = f(x,y,y’), para a ≤ x ≤ b con y(a)= y y(b)=(Nota: ecs (g) y (h) se escriben como sistemas de 1er orden y se resuelven).

ENTRADA: ptos finales a,b; condic contorno ,; número de subintervalos N>1.

SALIDA: aprox de 1,i

a y(xi);

2,i a y’(x

i) para cada i = 0,1,...,N, o un mensaje q

se excedió el número máx de iteraciones.

Paso 1: definir

Paso 2: mientras que k ≤ M pasos 3-10.

Paso 3:

Page 30: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo 2: Shooting No Lineal con Algoritmo 2: Shooting No Lineal con Método de NewtonMétodo de Newton

30

Paso 4: Para i=1,…,N hacer pasos 5-6

(se usa metodo RK4 para pasos 5-6)

Paso 5:

Paso 6:

Page 31: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo 2: Shooting No Lineal con Algoritmo 2: Shooting No Lineal con Método de NewtonMétodo de Newton

31

Page 32: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo 2: Shooting No Lineal con Algoritmo 2: Shooting No Lineal con Método de NewtonMétodo de Newton

32

Paso 7: Si |1,N

- | ≤ TOL entonces hacer pasos 8-9

(se usa metodo RK4 para pasos 5-6)

Paso 8: Para i=0,…,N

def x = a + ih

SALIDA (x,1,i

,2,i

)

Paso 9: Procedimiento completo: PARE/STOP

Paso 10: def k=k+1

Page 33: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo 2: Shooting No Lineal con Algoritmo 2: Shooting No Lineal con Método de NewtonMétodo de Newton

33

El valor t0 = TK en Paso 1 es la pendiente de la recta que pasa por (a,α) y

(b,β). Si el probl satisface las hipótesis del Teor 1, cualquier elección de t0 dará

convergencia, pero una buena elección de t0 mejorará la convergencia, y el

procedimiento incluso funcionará para muchos probls que no satisfacen estas hipótesis.

Ejemplo: Aplicar el método de shooting con el método de Newton para el PVF

y” = (32 + 2x3 – yy’)/8, para 1 ≤ x ≤ 3, con y(1)=17 y y(3)=43/3,

Use N=20, M=10 y TOL=10-5, y compare los resultados con la solución exacta y(x) = x2 + 16/x.

Solución: Necesitamos aprox soluc a los dos PVIs

y” = (32 + 2x3 – yy’)/8, para 1 ≤ x ≤ 3, con y(1)=17 y y’(1)=tk,

Page 34: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo 2: Shooting No Lineal con Algoritmo 2: Shooting No Lineal con Método de NewtonMétodo de Newton

34

y

, para 1 ≤ x ≤ 3, con z(1)=0 y z’(1)=1,

a cada paso de la iteración. La técnica de “paro”del algoritmo 2 requiere

Comenzando con 2,0

=t0=TK, procedemos a las siguientes iteraciones y vemos

que en la cuarta iteración t0 = -14.000203 obtenemos el resultado con la

aproximación requerida (ver tabla en siguiente slide).

Aunque el método de Newton requiere soluc de un PVI adicional, en gral converge más rápido que el método de Secante. Los dos métodos solo son localmente convergentes ya que requieren buenas aprox inic

Page 35: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Algoritmo 2: Shooting No Lineal con Algoritmo 2: Shooting No Lineal con Método de NewtonMétodo de Newton

35

Page 36: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

36

Los métodos de Shooting lineal y no lineal para PVF pueden presentar problemas de inestabilidad. El método de Diferencias Finitas tiene mejor estabilidad pero en gral requiere mas gasto computacional para obtener una precisión específica.

Métodos de Diferencias Finitas para resolver PVF reemplaza c/u de las derivadas de la ec diferencial con una aprox apropiada de diferencia de cocientes (tipo Diferenciación Numérica).

La diferencia de cocientes y el tamaño del paso h se escogen para mantener un orden específico de error de truncamiento.

Aproximación Discreta

El método de diferencias finitas para PVF lineal de 2do orden,

y” = p(x) y’ + q(x) y + r(x), para a ≤ x ≤ b con y(a)= y y(b)=.

requiere que las aprox de cociente de diferencia se usen para aprox y y y’. Primero, seleccionamos un entero N>0 y dividimos el intervalo [a, b] en (N+1) subintervalos iguales cuyos ptos finales son los ptos de malla x

i = a + ih, para

i=0,1,...,N+1, donde h=(b-a)/(N+1). Elegir el tamaño de paso h de esta manera facilita la aplicación de un algoritmo de matriz, que resuelve un sistema lineal que implica una matriz NxN.

Page 37: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

37

En el mét de diferencia finita, dividimos el rango de integración (a,b) en n-1

subintervalos iguales de long h c/u, como se muestra en la figura. Los valores de la soluc numérica en los ptos de malla se denotan por y

i, i=1,2,...,n;

Page 38: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

38

En los puntos de malla interiores, xi, para i=1,2,...,N, la ecuación diferencial a

aproximar es

(i)

Expandiendo y en un polinomio de Taylor de 3er grado sobre xi evaluado en

xi+1

y xi-1

, tenemos, asumiendo que

para algún + en (xi,x

i+1), y

para algún - en (xi-1

,xi). Si esas ecs son sumadas tenemos

y resolviendo para y da

Page 39: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

39

El Teor del Valor Intermedio se puede usar para simplificar el término de error para dar

(j)

para algun en (xi-1

,xi+1

),. Esto se llama fórmula de diferencia-centrada para y”(x

i).

Una fórmula de diferencia centrada para y’(xi) se obtiene de manera similar, lo

que resulta en

(k)

para algún en (xi-1

,xi+1

).

Esta es la 1ra aprox en el met de diferencias finitas, que consiste en reemplazar las derivadas de y por sus expresiones de diferencias finitas (ecs (j), (k), etc).

Page 40: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

40

La 2da aprox es que la ec diferencial se aplica solo en los ptos de malla. Como resultado, las ecs diferenciales son reemplazadas por n ecs algebraicas simultáneas, siendo las incógnitas y

i , i=1,2,...,n.

Si la ec diferencial es no lineal, las ecs algebraicas también serán no lineales y se resolverán con el mét de Newton-Raphson.

Dado que el error de truncamiento en una 1ra aprox de diferencia central es O(h2), el mét de diferencia finita no es tan preciso como el mét de shooting: recuerde que el mét de Runge-Kutta tiene un error de truncamiento de O(h5).

Por tanto, el criterio de convergencia en el mét de Newton-Raphson no debería ser demasiado severo.

Page 41: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

41

El uso de estas fórmulas ((j),(k)) de diferencia centrada en ec. (i) da como resultado la ec

Un mét de diferencia finita con error de truncamiento de orden O(h2) resulta al usar esta ec junto con las condic de contorno y(a)=α e y(b)=β para definir el sist de ecs lineales

0=α ,

N+1=β

y

(l)

para cada i=1,2,...,N.

En la forma que consideraremos, ec. (l) se reescribe como

Page 42: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

42

y el sist de ecs resultante se expresa en la forma de la matriz tridiagonal N×N .

Aw = b, donde

Page 43: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

43

El Teor 1 garantiza la existencia y unicidad de la solución para EDOs lineales.

Para aprox la soluc al PVF

y” = p(x) y’ + q(x) y + r(x), para a ≤ x ≤ b con y(a)= y y(b)=.

Algoritmo 3ENTRADA: ptos finales a,b; condic contorno ,; número subintervalos N>1.

SALIDA: aprox de i a y(x

i) para cada i = 0,1,...,N+1

Paso 1: definir

Paso 2: para i = 0,1,...,N+1.

Page 44: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

44

Paso 3: definir

Paso 4: definir

Paso 5: para i = 0,1,...,N+1:

Paso 6: definir

Paso 7: definir

Page 45: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

45

Paso 8: para i = N-1,...,1. def i = z

i - u

i

i+1

Paso 9: para i = 0,1,...,N+1. def x = a - ih

SALIDA: (x,i)

Paso 10: STOP

EjemploUse algoritmo 3 con N=9 para aprox soluc al PVF

para 1 ≤ x ≤ 2 con y(1)=1 ; y(2)=.

Para este ejemplo usamos N=9, entonces h=0.1

Page 46: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Método de Diferencias Finitas para Problemas LinealesMétodo de Diferencias Finitas para Problemas Lineales

46

Resultados menos precisos que en ej anterior (pag 16). Es porque el mét usado en ese ej fue la técnica RK4 con error de truncamiento local orden O(h4), mientras que el mét de diferencia utilizado aquí tiene error de truncamiento local de orden O(h2).

Page 47: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Usando MathematicaUsando Mathematica

47

Usando Mathematica:

s=NDSolve[{y''[x]+(2/x)y'[x]-(2/x̂ 2)y[x]-(1/x̂ 2)Sin[Log[x]]==0,y[1]==1,y[2]==2},y,{x,1,2},Method→ "Automatic"]

Plot[Evaluate[First[{y[x],y'[x]} /. s]],{x,1,2}]

Page 48: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Diferencias Finitas Lineales (otro enfoque)Diferencias Finitas Lineales (otro enfoque)

48

Ecuación diferencial de segundo orden

Considere la ec diferencial de 2do orden y” = f(x,y,y’),

con condic frontera

y(a)= o y’(a)=

y(b)= o y’(b)=Aprox las deriv en los ptos de la malla por diferencias finitas, el probl se vuelve

(m)

Notar que y0 y y

n+1 , están asociados con ptos fuera del dominio de la soluc

(a,b).

Page 49: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Diferencias Finitas Lineales (otro enfoque)Diferencias Finitas Lineales (otro enfoque)

49

Pero antes reescribamos ec (m) como:

(a)

(b)

(c)

Las condiciones de frontera en y se tratan fácilmente: Eq. (a) simplemente se reemplaza por y

1-α=0 y Eq. (c) se reemplaza por y

2-=0.

Si y’ están prescritos, obtenemos de ec (m) y0=y

2-2hα e y

n+1=y

n-1+2hβ, que

luego se sustituyen en las ecuaciones. (a) y (c), respectivamente.

Page 50: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Diferencias Finitas Lineales (otro enfoque)Diferencias Finitas Lineales (otro enfoque)

50

Por tanto, terminamos con n ecs en las incógnitas yi , i=1,2,...,n.

(n)

Ejemplo: Escribir ecs (n) para el PVF, usando n=11:

Page 51: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Diferencias Finitas Lineales (otro enfoque)Diferencias Finitas Lineales (otro enfoque)

51

Solución:

Aquí (aplicable a y), (aplicable a y’) y f(x,y,y’)=-4y+4x. Y ecs (n) serian:

yi =0

yi-1

– 2yi + y

i+1 – h2(-4y

i + 4x

i) = 0, i=2,3,...,n-1

2y10

– 2y11

- h2(-4y11

+ 4x11

) = 0

o también

yi =0

yi-1

+ (–2+4h2)yi + y

i+1 = 4h2x

i, i=2,3,...,n-1

2y10

+ (–2+4h2)y11

= 4h2x11

o usando notación matricial

Page 52: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Usando Wolfram AlphaUsando Wolfram Alpha

52

Page 53: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Usando Wolfram AlphaUsando Wolfram Alpha

53

Page 54: Cap10: Problemas de valor de frontera de dos puntos · 2020. 2. 7. · Problemas lineales de valor de frontera 12 Shooting lineal El método de Disparo para ecs lineales se basa en

Métodos Numéricos - MCC613

Usando Wolfram AlphaUsando Wolfram Alpha

54