tema 3 edp presentación

47
Tema 3: Resoluci´ on Num´ erica de Ecuaciones Diferenciales: Problemas de Ecuaciones en Derivadas Parciales (EDP) Curso 2015-16 R. Marta Garc´ ıa [email protected] 12 de Mayo de 2016 [email protected] (Dpto. Matem´ aticas) Metodos Numericos I. Mec´ anica 12 de Mayo de 2016 1 / 47

Upload: sergio-garcia-gomez

Post on 08-Jul-2016

231 views

Category:

Documents


1 download

DESCRIPTION

ecuaciones diferenciales resueltas en derivadas parciales

TRANSCRIPT

Tema 3: Resolucion Numerica de Ecuaciones Diferenciales:Problemas de Ecuaciones en Derivadas Parciales (EDP)

Curso 2015-16

R. Marta Garcıa

[email protected]

12 de Mayo de 2016

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 1 / 47

Introduccion

Secciones

1 IntroduccionProblema 1Problema 2Problema 3

2 Ecuaciones elıpticas

3 Ecuaciones parabolicas

4 Ecuaciones hiperbolicas

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 2 / 47

Introduccion Problema 1

Problema 1 Ecuacion de Laplace en un rectangulo

Temperatura de una placa

Consideremos una placa rectangular de 5cm× 5cm.

Conservamos dos fronteras adyacentes a 0oC, mientras que el calor en las otras dosfronteras aumenta linealmente de 0o C a 100o C.

La distribucion de la temperatura u(x, y) en el interior de la placa viene dada por laexpresion

∂2u∂x2 (x, y) +

∂2u∂y2 (x, y) = 0

Se quiere calcular la temperatura en un punto interior de la placa.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 3 / 47

Introduccion Problema 2

Problema 2: Ecuacion del calor

Temperatura de una barra

Consideremos una barra larga y delgada de longitud l situada en el eje OX.

Supongamos que la temperatura en los extremos se mantiene constante con valores T1 y T2.

Si u(x, t) es la temperatura en el punto x de la barra en el instante t, se verifica la ecuacion

ut(x, t) = c2uxx(x, t) para 0 < x < l, t > 0 (1)

con la condicion inicialu(x, 0) = f (x) (2)

y las condiciones de contorno

u(0, t) = T1 u(l, t) = T2 t > 0 (3)

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 4 / 47

Introduccion Problema 3

Problema 3: Ecuacion de ondas

La cuerda vibrante

Consideramos un cuerda cuyos extremos estan fijos en dos puntos x = a y x = b del ejeOX que soporta una tension F.

Si se desplaza la cuerda de la posicion de equilibrio y se suelta comienza a vibrar en unplano vertical. El desplazamiento vertical u(x, t) de un punto x en el tiempo t satisface laecuacion diferencial:

c2 ∂2u∂x2 (x, t) =

∂2u∂t2 (x, t) a < x < b t > 0

Supondremos unas condiciones iniciales:

u(x, 0) = f (x),∂u∂t

(x, 0) = g(x) a ≤ x ≤ b

y unas condiciones de contorno:

u(a, t) = l(t) u(b, t) = s(t) t > 0

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 5 / 47

Introduccion Problema 3

Metodo de las diferencias finitas

En este tema vamos a describir metodos numericos, para la resolucion de ecuaciones enderivadas parciales de una funcion u(x, y) con dos variables, basados en la aproximacion pordiferencias finitas.

1 La funcion u(x, y) estara definida en un rectangulo

R = {(x, y)/ a ≤ x ≤ b c ≤ y ≤ d}

2 Dividiremos el intervalo [a, b] en n subintervalos iguales de amplitud h = b−an y el

intervalo [c, d] en m subintervalos iguales de amplitud k = d−cm

3 lo anterior da como resultado una cuadrıcula en el rectangulo R cuyos puntos de red son dela forma (xi, yj) con xi = a + ih e yj = c + jk.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 6 / 47

Introduccion Problema 3

Aproximaciones mediante diferencias finitas

∂u∂x

(x, y) ' u(x + h, y)− u(x, y)h

d. progresiva (4)

∂u∂y

(x, y) ' u(x, y + k)− u(x, y)k

d. progresiva (5)

∂u∂y

(x, y) ' u(x, y)− u(x, y− k)k

d. regresiva (6)

∂2u∂x2 (x, y) '

u(x + h, y)− 2u(x, y) + u(x− h, y)h2 d. centrada (7)

∂2u∂y2 (x, y) '

u(x, y + k)− 2u(x, y) + u(x, y− k)k2 d. centrada (8)

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 7 / 47

Introduccion Problema 3

Estudiaremos ecuaciones en derivadas parciales de la forma:

Auxx(x, y) + Buxy(x, y) + Cuyy(x, y) = f (x, y, u, ux, uy) (9)

donde A,B y C son constantes.

Estas ecuaciones se clasifican en tres tipos segun los valores de B2 − 4AC.

Si B2 − 4AC < 0 la ecuacion se llama elıptica. (10)

Si B2 − 4AC = 0 la ecuacion se llama parabolica. (11)

Si B2 − 4AC > 0 la ecuacion se llama hiperbolica. (12)

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 8 / 47

Ecuaciones elıpticas

Secciones

1 Introduccion

2 Ecuaciones elıpticas

3 Ecuaciones parabolicas

4 Ecuaciones hiperbolicas

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 9 / 47

Ecuaciones elıpticas

Problema 1

En el Problema 1 se presenta una ecuacion en derivadas parciales de tipo elıptico puesA = C = 1 y B = 0.

Un problema algo mas general que este se enunciara en la siguiente forma:

Sean u, f : R = [a, b]× [c, d] −→ R siendo las derivadas parciales segundas de u continuas enR. Calcular de forma aproximada la solucion de

∂2u∂x2 (x, y) + ∂2u

∂y2 (x, y) = f (x, y)u(a, y) = g1(y)u(b, y) = g2(y)u(x, c) = h1(x)u(x, d) = h2(x)

(13)

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 10 / 47

Ecuaciones elıpticas

Construccion de la ecuacion en diferencias (I)

Las formulas (7) y (8) en cada punto (xi, yj) de la cuadrıcula en que se ha dividido el rectanguloR son:

∂2u∂x2 (xi, yj) '

u(xi + h, y)− 2u(xi, yj) + u(xi − h, yj)

h2 =

=u(xi+1, y)− 2u(xi, yj) + u(xi−1, yj)

h2

∂2u∂y2 (xi, yj) '

u(xi, yj + k)− 2u(xi, yj) + u(xi, yj − k)k2 =

=u(xi, yj+1)− 2u(xi, yj) + u(xi, yj−1)

k2

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 11 / 47

Ecuaciones elıpticas

Construccion de la ecuacion en diferencias (II)

Sustituyendo en la ecuacion en derivadas parciales para i = 1, 2, ..., n− 1 y j = 1, 2, ...,m− 1obtenemos:

u(xi+1, yj)− 2u(xi, yj) + u(xi−1, yj)

h2 +u(xi, yj+1)− 2u(xi, yj) + u(xi, yj−1)

k2 = f (xi, yj)

u(x0, yj) = g1(yj) u(xn, yj) = g2(yj) para j = 0, 1, ...,m

u(xi, y0) = h1(xi) u(xi, ym) = h2(xi) para i = 0, 1, ..., n

Escribiendo ui,j = u(xi, yj) y agrupando terminos tenemos el sistema de (n− 1) · (m− 1)ecuaciones con las (n− 1) · (m− 1) incognitas ui,j i = 1, 2, ..., n− 1; j = 1, 2, ...,m− 1:

1h2 (ui+1,j + ui−1,j)− 2((

1h2 +

1k2 ))ui,j +

1k2 (ui,j+1 + ui,j−1) = fi,j (14)

en el que observamos aparece relacionada en cada ecuacion el valor de la solucion en los nodos:

(xi, yj), (xi−1, yj), (xi+1, yj), (xi, yj−1), (xi, yj+1)

.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 12 / 47

Ecuaciones elıpticas

Solucion de la ecuacion en diferencias

Si despejamos ui,j para aplicar el metodo de Jacobi para resolver este sistema y llamamosλ = 2( 1

h2 + 1k2 )tenemos:

ui,j =ui+1,j + ui−1,j

λh2 +ui,j+1 + ui,j−1

λk2 − fi,j

λ(15)

Si asignamos un valor inicial u(0)i,j a las variables, la formula de iteracion por el metodo de

Jacobi es:

u(k+1)i,j =

u(k)i+1,j + u(k)

i−1,j

λh2 +u(k)

i,j+1 + u(k)i,j−1

λk2 − fi,j

λ(16)

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 13 / 47

Ecuaciones elıpticas

Figura: Malla y ecuacion en diferencias para la ecuacion de Laplace

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 14 / 47

Ecuaciones elıpticas

Ejemplo

Consideremos una placa cuadrada de 5 dm ×5 dm. Conservamos dos fronteras adyacentes a 0o

C, mientras que el calor en las otras dos fronteras aumenta linealmente de 0o C a 100o C. Ladistribucion de la temperatura u(x, y) en el interior de la placa viene dada por la expresion

∂2u∂x2 (x, y) +

∂2u∂y2 (x, y) = 0

Se quiere aproximar la temperatura en un punto interior de la placa.

Tomaremos

R = {(x, y)/ 0 ≤ x ≤ 0.5 0 ≤ y ≤ 0.5}h = k = 0.125

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 15 / 47

Ecuaciones elıpticas

La placa se divide en 16 cuadrados de lado 0.125 cm. Las condiciones de frontera en este casoson:

u(0, y) = 0, u(x, 0) = 0, u(x, 0.5) = 200x, u(0.5, y) = 200y

h = k = 0.125 = 1/8 y λ = 256 nos queda

4ui,j − ui+1,j − ui−1,j − ui,j+1 − ui,j−1 = 0

ui,j =ui+1,j + ui−1,j

4+

ui,j+1 + ui,j−1

4

Figura: Malla

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 16 / 47

Ecuaciones elıpticas

Tenemos las siguientes ecuaciones:

P1 : 4u1 − u2 − u4 = u03 + u14

P2 : 4u2 − u3 − u1 − u5 = u24

P3 : 4u3 − u2 − u6 = u43 + u34

P4 : 4u4 − u5 − u1 − u7 = u02

P5 : 4u5 − u6 − u4 − u2 − u8 = 0P6 : 4u6 − u5 − u3 − u9 = u42

P7 : 4u7 − u8 − u4 = u01 + u10

P8 : 4u8 − u9 − u7 − u5 = u20

P9 : 4u9 − u8 − u6 = u30 + u41

Sustituyendo los valores de la funcion en la frontera tenemos el siguiente sistema de ecuacioneslineales:

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 17 / 47

Ecuaciones elıpticas

4 −1 0 −1 0 0 0 0 0−1 4 −1 0 −1 0 0 0 00 −1 4 0 0 −1 0 0 0−1 0 0 4 −1 0 −1 0 00 −1 0 −1 4 −1 0 −1 00 0 −1 0 −1 4 0 0 −10 0 0 −1 0 0 4 −1 00 0 0 0 −1 0 −1 4 −10 0 0 0 0 −1 0 −1 4

u1

u2

u3

u4

u5

u6

u7

u8

u9

=

2550150

00

5000

25

Aplicando el metodo de Jacobi obtenemos:

i 1 2 3 4 5 6 7 8 9ui 18.7500 37.4999 56.2500 12.4999 24.9999 37.4999 6.2500 12.4999 18.7500

Las respuestas anteriores son exactas pues la verdadera solucion es u(x, y) = 400xy.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 18 / 47

Ecuaciones parabolicas

Secciones

1 Introduccion

2 Ecuaciones elıpticas

3 Ecuaciones parabolicasMetodo explıcitoMetodo implıcitoMetodo de Crank-Nicholson

4 Ecuaciones hiperbolicas

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 19 / 47

Ecuaciones parabolicas Metodo explıcito

Ecuaciones parabolicas: Metodo explıcito

En el Problema 2 se presenta una ecuacion en derivadas parciales de tipo parabolico puesA = c2 y B = C = 0. Seleccionamos un paso del tiempo k > 0 y un paso de la longitud

h =ln> 0 con lo que el rectangulo

R = {(x, t) / 0 ≤ x ≤ l 0 ≤ t ≤ b}

queda dividido mediante los nodos (xi, tj) con xi = ih e tj = jk. En cada nodo interior se ha deverificar la ecuacion diferencial

ut(xi, tj) = c2uxx(xi, tj)

Sustituyendo las derivadas parciales por (5) y (7)

∂u∂t

(xi, tj) =u(xi, tj+1)− u(xi, tj)

k;∂2u∂x2 (xi, tj) =

u(xi+1, tj)− 2u(xi, tj) + u(xi−1, tj)

h2

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 20 / 47

Ecuaciones parabolicas Metodo explıcito

u(xi, tj+1)− u(xi, tj)

k= c2 u(xi+1, tj)− 2u(xi, tj) + u(xi−1, tj)

h2

Y utilizando la notacion ui,j = u(xi, tj)

ui,j+1 − ui,j

k= c2 ui+1,j − 2ui,j + ui−1,j

h2

Despejamos ui,j+1 y tenemos:

ui,j+1 = (1− 2kc2

h2 )ui,j + kc2

h2 (ui+1,j + ui−1,j) i = 1, 2, ..., n− 1; j = 1, 2, ... (17)

u(0, tj) = T1 u(l, tj) = T2 j = 0, 1, ...

u(xi, 0) = f (xi) i = 0, 1, ..., n

La expresion anterior nos proporciona la solucion en el instante tj+1 a partir de la solucion en el

instante anterior tj. Este esquema converge siempre que r =kc2

h2 ≤12

.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 21 / 47

Ecuaciones parabolicas Metodo explıcito

Figura: Esquema de la ecuacion en diferencias para la ecuacion del calor

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 22 / 47

Ecuaciones parabolicas Metodo explıcito

En forma matricial podemos escribir:u1,j+1

u2,j+1

...un−1,j+1

=

1− 2r r 0 · · · 0 0

r 1− 2r r · · · 0 0...

......

. . ....

...0 0 0 · · · r 1− 2r

u1,j

u2,j

...un−1,j

+

ru0,j

0...

run,j

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 23 / 47

Ecuaciones parabolicas Metodo explıcito

Si u0,j = un,j = T1 = T2 = 0 y

u(0) = (f (x1), f (x2), ..., f (xn−1))′

yu(j) = (u1,j, u2,j, ..., un−1,j)

′ para toda j = 1, 2, ...

entonces la solucion aproximada viene dada por

u(j+1) = Au(j) para toda j = 0, 1, ...

A este metodo se le conoce con el nombre de metodo de diferencias progresivas porque ∂u∂y se

ha sustituido por la expresion (5) llamada diferencia progresiva y es de orden O(k + h2).Tambien se le conoce con el nombre de metodo explıcito porque calcula directamente lasolucion en el tiempo tj+1 a partir de la solucion en el instante tj. Tiene el inconveniente de quepara ser estable se ha de verificar que r ≤ 0.5.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 24 / 47

Ecuaciones parabolicas Metodo implıcito

Ecuaciones parabolicas: Metodo Implıcito

Para obtener un metodo estable se utiliza la formula (6) llamada de diferencia regresiva y si sesustituye en la ecuacion en derivadas parciales junto con (7) tenemos:

u(xi, tj)− u(xi, tj−1)

k= c2 u(xi+1, tj)− 2u(xi, tj) + u(xi−1, tj)

h2

y utilizando la notacion ui,j = u(xi, tj)

ui,j − ui,j−1

k= c2 ui+1,j − 2ui,j + ui−1,j

h2

Multiplicando por k, llamando r =kc2

h2 y ordenando podemos escribir

(1 + 2r)ui,j − r(ui+1,j + ui−1,j) = ui,j−1 i = 1, 2, ..., n− 1 j = 1, 2, ...

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 25 / 47

Ecuaciones parabolicas Metodo implıcito

En este caso tenemos para cada j un sistema de ecuaciones lineales en las n− 1 incognitas ui,j

escrito en forma matricial:1 + 2r −r 0 · · · 0 0−r 1 + 2r −r · · · 0 0...

......

. . ....

...0 0 0 · · · −r 1 + 2r

u1,j

u2,j

...un−1,j

=

u1,j−1

u2,j−1

...un−1,j−1

+

rT1

0...

rT2

Este sistema siempre tiene solucion mediante el metodo de Jacobi o el de Gauss-Seidel porquela matriz es de diagonal estrictamente dominante. Aplicando el metodo de Jacobi podemosescribir:

u(k+1)i,j =

u(k)i,j−1 + r(u(k)

i−1,j + u(k)i+1,j)

1 + 2rPor el metodo de Gauss-Seidel tenemos que:

u(k+1)i,j =

u(k+1)i,j−1 + r(u(k+1)

i−1,j + u(k)i+1,j)

1 + 2r

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 26 / 47

Ecuaciones parabolicas Metodo implıcito

Figura: Esquema de Jacobi utilizando diferencias regresivas

Este metodo tiene el inconveniente de que el error local de truncamiento tiene una parte conorden O(k) lo cual requiere hacer mucho mas pequenos los subintervalos de tiempo que los deespacio.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 27 / 47

Ecuaciones parabolicas Metodo de Crank-Nicholson

Ecuaciones parabolicas: Metodo de Crank-Nicholson

Para evitar este inconveniente surge el metodo de Crank-Nicholson que discretiza en dosinstantes y hace la media.En el instante tj aproxima ut(xi, tj) mediante una diferencia progresiva:

ui,j+1 − ui,j

k− c2 ui+1,j − 2ui,j + ui−1,j

h2 = 0

En el instante tj+1 aproxima ut(xi, tj+1) mediante una diferencia regresiva:

ui,j+1 − ui,j

k− c2 ui+1,j+1 − 2ui,j+1 + ui−1,j+1

h2 = 0

y haciendo la media resulta:

ui,j+1 − ui,j

k− c2

2

[ui+1,j − 2ui,j + ui−1,j

h2 +ui+1,j+1 − 2ui,j+1 + ui−1,j+1

h2

]= 0

para i = 1, 2, ..., n− 1 y j = 1, 2, ....

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 28 / 47

Ecuaciones parabolicas Metodo de Crank-Nicholson

Al despejar los terminos del instante j + 1 nos queda el sistema de ecuaciones lineales en lasn− 1 incognitas ui,j+1:

2(1 + r)ui,j+1 − r(ui+1,j+1 + ui−1,j+1) = 2(1− r)ui,j + r(ui+1,j + ui−1,j)

o en forma matricial:2(1 + r) −r 0 · · · 0 0

−r 2(1 + r) −r · · · 0 0...

......

. . ....

...0 0 0 · · · −r 2(1 + r)

u1,j+1u2,j+1

...un−1,j+1

=

=

2(1 − r) r 0 · · · 0 0

r 2(1 − r) r · · · 0 0...

...... · · ·

......

0 0 0 · · · r 2(1 − r)

u1,ju2,j

...un−1,j

+

2rT1

0...

2rT2

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 29 / 47

Ecuaciones parabolicas Metodo de Crank-Nicholson

La matriz de este sistema es de diagonal estrictamente dominante por lo que siempre se puederesolver.

Metodo de Jacobi:

u(k+1)i,j+1 =

2(1− r)u(k)i,j + r(u(k)

i−1,j + u(k)i+1,j) + r(u(k)

i−1,j+1 + u(k)i+1,j+1)

2(1 + r)

Metodo de Gauss-Seidel:

u(k+1)i,j+1 =

2(1 − r)u(k+1)i,j + r(u(k+1)

i−1,j + u(k+1)i+1,j ) + r(u(k+1)

i−1,j+1 + u(k)i+1,j+1)

2(1 + r)

i = 1, 2, ..., n − 1 j = 1, 2, ...

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 30 / 47

Ecuaciones parabolicas Metodo de Crank-Nicholson

Figura: Metodo de Jacobi para el metodo de Crank-Nicholson

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 31 / 47

Ecuaciones parabolicas Metodo de Crank-Nicholson

Ejemplo

Resuelve la ecuacion del calor

ut(x, t) = uxx(x, t) para 0 < x < 1 0 < t < 0.20

con las condiciones iniciales

u(x, 0) = f (x) = 4x− 4x2 para t = 0 0 ≤ x ≤ 1

y las condiciones de contorno

u(0, t) = 0 = u(1, t) para 0 ≤ t ≤ 0.20

Tomamos un paso h = 0.2 y k = 0.02.

La malla tendra 5 columnas de ancho y 10 de alto. Las formulas son:

ui,j+1 =ui−1,j + ui+1,j

2

La formula es estable pues r =c2kh2 =

12

.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 32 / 47

Ecuaciones parabolicas Metodo de Crank-Nicholson

x1 = 0.00 x2 = 0.20 x3 = 0.40 x4 = 0.60 x5 = 0.80 x6 = 1.00t1 = 0.00 0.000000 0.640000 0.960000 0.960000 0.640000 0.000000t2 = 0.02 0.000000 0.480000 0.800000 0.800000 0.480000 0.000000t3 = 0.04 0.000000 0.400000 0.640000 0.640000 0.400000 0.000000t4 = 0.06 0.000000 0.320000 0.520000 0.520000 0.320000 0.000000t5 = 0.08 0.000000 0.260000 0.420000 0.420000 0.260000 0.000000t6 = 0.10 0.000000 0.210000 0.340000 0.340000 0.210000 0.000000t7 = 0.12 0.000000 0.170000 0.275000 0.275000 0.170000 0.000000t8 = 0.14 0.000000 0.137500 0.222500 0.222500 0.137500 0.000000t9 = 0.16 0.000000 0.111250 0.180000 0.180000 0.111250 0.000000t10 = 0.18 0.000000 0.090000 0.145625 0.145625 0.090000 0.000000t11 = 0.20 0.000000 0.072812 0.117813 0.117813 0.072812 0.000000

Resultados obtenidos con el metodo de las diferencias progresivas en una ecuacion parabolica para r = 0.5.

Si se toma k =130

el metodo no es estable.

Con Matlab

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 33 / 47

Ecuaciones hiperbolicas

Secciones

1 Introduccion

2 Ecuaciones elıpticas

3 Ecuaciones parabolicas

4 Ecuaciones hiperbolicasMetodo explıcitoMetodo implıcitoEjemplos con el metodo explıcito

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 34 / 47

Ecuaciones hiperbolicas Metodo explıcito

Ecuaciones hiperbolicas: Metodo explıcito

El Problema 3 presenta una ecuacion diferencial en derivadas parciales de tipo hiperbolico.

Senalamos un paso h =b− a

npara x y un paso k =

Tm

para t. Mediante los nodos (xi, tj) dondexi = a + ih y tj = jk tenemos una cuadrıcula o malla en el dominio donde queremos resolver laecuacion. En cualquier punto interior de la malla la ecuacion de la onda se transforma en:

c2 ∂2u∂x2 (xi, tj) =

∂2u∂t2 (xi, tj)

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 35 / 47

Ecuaciones hiperbolicas Metodo explıcito

Si usamos las formulas (7) (8) y la notacion u(xi, tj) = ui,j tenemos:

c2 ui+1,j − 2ui,j + ui−1,j

h2 =ui,j+1 − 2ui,j + ui,j−1

k2

Llamando α =ckh

y despejando ui,j+1 podemos escribir para i = 1, 2, ..., n− 1;j = 1, 2, ...,m− 1

ui,j+1 = α2(ui+1,j + ui−1,j) + 2(1− α2)ui,j − ui,j−1 (18)

La expresion (18) nos permite obtener la solucion en el instante tj+1 a partir de la solucion enlos instantes tj y tj−1.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 36 / 47

Ecuaciones hiperbolicas Metodo explıcito

Figura: Esquema de la ecuacion en diferencias

Por lo tanto, para iniciar el proceso necesitamos la solucion en los instantes t0 y t1. De laprimera condicion inicial u(x, 0) = f (x), obtenemos la solucion en el instante t0, ui,0 = fi parai = 1, 2, ..., n− 1.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 37 / 47

Ecuaciones hiperbolicas Metodo explıcito

Para ello, aproximamos la derivada ut mediante la diferencia centrada y utilizando la segundacondicion inicial ∂u

∂t (x, 0) = g(x)

ut(xi, tj) 'u(xi, tj + k)− u(xi, tj − k)

2k

Para j = 0 podemos escribir el valor en los nodos fantasma:

ui,−1 = ui,1 − 2kgi

que al sustituirla en (18) para j = 0 tenemos:

ui,1 = α2(ui+1,0 + ui−1,0) + 2(1− α2)ui,0 − ui,−1 =

= α2(ui+1,0 + ui−1,0) + 2(1− α2)ui,0 − ui,1 + 2kgi

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 38 / 47

Ecuaciones hiperbolicas Metodo explıcito

ui,1 = α2(ui+1,0 + ui−1,0) + 2(1− α2)fi − ui,1 + 2kgi

de donde

ui,1 =α2

2(ui+1,0 + ui−1,0) + (1− α2)fi + kgi

Obtenemos ası los valores de la funcion u en el instante t1. El metodo converge para α ≤ 1.

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 39 / 47

Ecuaciones hiperbolicas Metodo implıcito

Ecuaciones hiperbolicas: Metodo implıcito

Para obtener un esquema en diferencias implıcito, sustituimos la parcial segunda con respecto altiempo por la diferencia centrada (8) mientras que la derivada segunda respecto a x laaproximamos por la media de las diferencias centradas en tj−1 y tj+1. Obtenemos ası laexpresion:

ui,j+1 − 2ui,j + ui,j−1 =α2

2[(ui+1,j+1 − 2ui,j+1 + ui−1,j+1) + (ui+1,j−1 − 2ui,j−1 + ui−1,j−1)]

Agrupando en el primer miembro los valores del paso j + 1 y en el segundo los valores de pasosanteriores queda:

(1 + α2)ui,j+1 −α2

2(ui+1,j+1 + ui−1,j+1) = 2ui,j +

α2

2(ui+1,j−1 + ui−1,j−1)− (1 + α2)ui,j−1

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 40 / 47

Ecuaciones hiperbolicas Metodo implıcito

Para cada paso temporal fijo, resolveremos un sistema de n− 1 ecuaciones lineales del que seobtienen los valores de ui,j+1 para i = 1, 2, ..., n− 1. La matriz del sistema es tridiagonal yestrictamente dominante y por lo tanto el sistema se puede resolver para cualquier valor de α.Podemos simplificar su resolucion agrupando las incognitas en funcion de sus coeficientes demanera que el termino independiente se reduzca a un unico elemento y obtenemos:

1 + α2

2(ui,j+1 + ui,j−1)−

α2

4(ui+1,j+1 + ui+1,j−1)−

α2

4(ui−1,j+1 + ui−1,j−1) = ui,j

Al resolver el sistema en cada paso temporal fijo, obtenemos el valor de wi = ui,j+1 + ui,j−1

para i = 1, 2, ..., n− 1 y como en cada paso j se tiene resuelto el sistema para el paso j− 1podemos obtener ui,j+1 = wi − ui,j−1

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 41 / 47

Ecuaciones hiperbolicas Ejemplos con el metodo explıcito

Ejemplo

Una cuerda de un determinado instrumento musical mide 80 cm de longitud y pesa 1 g. Seestira con una tension de 40000 g. En un punto a 20cm de un extremo, se tira de la cuerda 0.6cm con respecto a la posicion de equilibrio y luego se suelta.

1 Tomando un paso espacial de 10 cm, determina la posicion de la cuerda en el instante t=1,utilizando el metodo explıcito con el paso temporal mas grande posible que garantice laconvergencia del metodo.

2 Representa la posicion de la cuerda en diferentes instantes de tiempo. ¿Es posibledeterminar en cuanto tiempo se completa un ciclo de movimiento?

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 42 / 47

Ecuaciones hiperbolicas Ejemplos con el metodo explıcito

La ecuacion que rige las vibraciones de la cuerda tensa estirada entre dos puntos fijos es:

utt =Fgw

uxx

donde F es la tension 40000 g, g es la gravedad 980 cm/s2 y w es el peso por unidad de longitud1/80 g/cm, por lo tanto la ecuacion que rige el movimiento es:

utt =40000g · 980cm/s2

1g/80cmuxx = 3136 · 106uxx

La condicion inicial del problema es:

u(x, 0) ={

0.03x 0 ≤ x ≤ 200.8− 0.01x 20 ≤ x ≤ 80

ut(x, 0) = 0

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 43 / 47

Ecuaciones hiperbolicas Ejemplos con el metodo explıcito

Como la cuerda esta sujeta en los extremos las condiciones de contorno son:

u(0, t) = u(80, t) = 0

Puesto que el metodo explıcito converge cuando α ≤ 1 y tenemos

α = (ck/h) = (√

3136 · 106 · k/10), por tanto, k ≤ 15600

luego el mayor valor de k es1

5600.

Fichero.m

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 44 / 47

Ecuaciones hiperbolicas Ejemplos con el metodo explıcito

Ejemplo

Consideremos la ecuacion de ondas:

utt(x, t) = uxx(x, t) 0 < x < 1, t > 0

con la condicion inicialu(x, 0) =

18

sen(πx), 0 ≤ x ≤ 1

ut(x, 0) = 0, 0 ≤ x ≤ 1

y las condiciones de contorno

u(0, t) = u(1, t) = 0, t > 0

1 Aproxima la solucion del problema en el instante t = 3, utilizando el metodo explıcito,tomando como paso espacial h = 0.1 y como paso temporal k = 0.025 y k = 0.15.

2 Aproxima la solucion del problema en el instante t = 3, utilizando el metodo implıcito,tomando los pasos como en el apartado anterior.

3 Compara los resultados obtenidos en los apartados 1) y 2) con la solucion exacta

u(x, t) =18

sen(πx)cos(πt)

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 45 / 47

Ecuaciones hiperbolicas Ejemplos con el metodo explıcito

Con Matlab

Creamos el fichero forma.m conteniendo la funcion f(x)> function fx=forma(x)> fx=(1/8)*sin(pi*x);

Creamos el fichero velocidad.m> function vx= velocidad(x)> vx = 0;

Contamos con el fichero finedif.mEn la Command Window tecleamos> U = finedif (@forma,@velocidad,1,1,1,9,39);> surf(U);

Fichero.m

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 46 / 47

Ecuaciones hiperbolicas Ejemplos con el metodo explıcito

Ecuacion de ondas

Figura: Aproximacion con Matlab

[email protected] (Dpto. Matematicas) Metodos Numericos I. Mecanica 12 de Mayo de 2016 47 / 47