SIMULACION NUM ERICA - 11/12 Ejercicios 1 · con las opciones mf = 22, maxord = 4 (con la ultima de...

10
SIMULACI ´ ON NUM ´ ERICA - 11/12 Ejercicios 1 1. Consideremos el sistema de Lotka-Volterra ˙ u =(a - bv)u, ˙ v =(cu - d)v, a = d =1,b =0,02,c =0,03. a ) Hacer uso de ode45 para integrar el sistema con valores iniciales u(0) = 51,2461, v(0) = 33,5424, para t [0, 100]. b ) Obtener una figura con las gr´ aficas de ambas componentes de la soluci´ on con respecto del tiempo. c ) Representar gr´ aficamente la ´ orbita de la soluci´ on en el espacio de estados. d ) Se puede comprobar que I (u, v)= d ln u + a ln v - cu - bv es un invariante del sistema. Representar gr´ aficamente (con respecto al tiempo) el error I (u(t),v(t)) - I (u(0),v(0)). 2. Supongamos que un barco va a la deriva con velocidad uniforme v por efecto del viento (lo que, desde el punto de referencia del barco, producir´ a una corriente de agua uniforme debajo del casco). Supongamos que echamos al agua un objeto pesado (por ejemplo, el ancla) que aseguramos al barco mediante una cuerda, de tal forma que no llega a tocar fondo. Qu´ e forma adoptara dicha cuerda? Bajo determinadas hip´ otesis simplificadoras (entre ellas, por ejemplo, que el agua de mar est´ a totalmente en reposo, sin corrientes, y que la cuerda no presenta elasticidad alguna y es totalmente pl´ astica), el ´ angulo φ(L) que adopta la tangente a la cuerda a una determinada longitud L (medida desde el extremo inferior), y la tensi´ on T (L) de la cuerda a una determinada longitud, satisfacen el siguiente sistema de ecuaciones diferenciales, dL = μ cos φ - νv 2 (sin φ) 2 T , dT dL = μ sin φ + v cos φ, donde μ es la densidad lineal de la cuerda relativa al agua de mar (si μ> 0 la cuerda tiende a hundirse, y si μ< 0, tiende a flotar), ν> 0 es un parametro que depende de la forma y el grosor de la cuerda, > 0 es un coeficiente que fricci´ on que depende de la rugosidad de la cuerda y su grosor, y v es la velocidad a la que se mueve el barco. La tensi´ on T (0) y el ´ angulo φ(0) en el extremo inferior de la cuerda que dependen de la velocidad v del barco, de la forma del objeto suspendido de la cuerda, y de su densidad relativa respecto al agua. Para representar gr´ aficamente la forma que adopta la cuerda, en coordenadas x(L)y y(L) (alejamiento horizonal y vertical de la cuerda respecto al objeto suspendido), se puede ver que basta con considerar las siguientes ecuaciones diferenciales adicionales, dx dL = - cos φ, dy dL = sin φ, con las condiciones iniciales adicionales x(0) = 0, y(0) = 0 (tomamos como origen de coordenadas la posici´ on del barco).

Transcript of SIMULACION NUM ERICA - 11/12 Ejercicios 1 · con las opciones mf = 22, maxord = 4 (con la ultima de...

SIMULACION NUMERICA - 11/12 Ejercicios 1

1. Consideremos el sistema de Lotka-Volterra

u = (a− bv)u, v = (cu− d)v, a = d = 1, b = 0,02, c = 0,03.

a) Hacer uso de ode45 para integrar el sistema con valores iniciales u(0) = 51,2461,v(0) = 33,5424, para t ∈ [0, 100].

b) Obtener una figura con las graficas de ambas componentes de la solucion conrespecto del tiempo.

c) Representar graficamente la orbita de la solucion en el espacio de estados.

d) Se puede comprobar que

I(u, v) = d lnu+ a ln v − c u− b v

es un invariante del sistema. Representar graficamente (con respecto al tiempo) elerror

I(u(t), v(t))− I(u(0), v(0)).

2. Supongamos que un barco va a la deriva con velocidad uniforme v por efecto del viento(lo que, desde el punto de referencia del barco, producira una corriente de agua uniformedebajo del casco). Supongamos que echamos al agua un objeto pesado (por ejemplo, elancla) que aseguramos al barco mediante una cuerda, de tal forma que no llega a tocarfondo. Que forma adoptara dicha cuerda?

Bajo determinadas hipotesis simplificadoras (entre ellas, por ejemplo, que el agua demar esta totalmente en reposo, sin corrientes, y que la cuerda no presenta elasticidadalguna y es totalmente plastica), el angulo φ(L) que adopta la tangente a la cuerdaa una determinada longitud L (medida desde el extremo inferior), y la tension T (L)de la cuerda a una determinada longitud, satisfacen el siguiente sistema de ecuacionesdiferenciales,

dL=µ cosφ− ν v2(sinφ)2

T,

dT

dL= µ sinφ+ ε v cosφ,

donde µ es la densidad lineal de la cuerda relativa al agua de mar (si µ > 0 la cuerdatiende a hundirse, y si µ < 0, tiende a flotar), ν > 0 es un parametro que depende dela forma y el grosor de la cuerda, ε > 0 es un coeficiente que friccion que depende de larugosidad de la cuerda y su grosor, y v es la velocidad a la que se mueve el barco. Latension T (0) y el angulo φ(0) en el extremo inferior de la cuerda que dependen de lavelocidad v del barco, de la forma del objeto suspendido de la cuerda, y de su densidadrelativa respecto al agua.

Para representar graficamente la forma que adopta la cuerda, en coordenadas x(L) yy(L) (alejamiento horizonal y vertical de la cuerda respecto al objeto suspendido), sepuede ver que basta con considerar las siguientes ecuaciones diferenciales adicionales,

dx

dL= − cosφ,

dy

dL= sinφ,

con las condiciones iniciales adicionales x(0) = 0, y(0) = 0 (tomamos como origen decoordenadas la posicion del barco).

SIMULACION NUMERICA - 11/12 Ejercicios 2

Supongamos que ν = 0,1, µ = 0,001, ε = 0,001, v = 1, T (0) = 10, y φ(0) = π/3.

Representar graficamente la forma que adopta la cuerda, en coordenadas x(L) y y(L)(alejamiento horizonal y vertical de la cuerda respecto al objeto suspendido).

3. Consideremos la EDO de la velocidad del paracaidista.

mdv

dt= −mg + c v2, v(0) = 0,

donde g = 9,8m/s2, m = 70Kg y c = 0,3. Que queremos aproximar la solucion v(t)para t ∈ [0, 30].

Aproximar la solucion v(t) para t = t0, t1, t2, . . . , tn = 30 (donde tk = h k y h =30/n) utilizando el metodo de Euler con distintos valores de h. Nuestro objetivoes analizar como se reduce el error cometido segun reducimos h. Para ello, calcularpara h = 0,3, h = 0,15, h = 0,075

Error = max1≤k≤n

|v(tk)− vk|.

Repetir el experimento para el metodo de Euler mejorado.

4. Consideremos las ecuaciones del pendulo,

dt= ω, mL

dt= −mg sin(θ)− cω,

donde g = 9,8m/s2, L = 1m, m = 1Kg y c = 0,0003. Queremos aproximar la soluciony(t) = (θ(t), ω(t)) para t ∈ [0, T ] con T = 10.

Aproximar la solucion y(t) para t = t0, t1, t2, . . . , tn = T (donde tk = h k y h =T/n) utilizando el metodo de Euler mejorado con distintos valores de h. Comprobarexperimentalmente que el metodo es de orden 2. Para ello, calcular para h = 0,01,h = 0,005, h = 0,00025

1h2

Error =1h2

max1≤k≤n

||y(tk)− yk||.

Repetir el experimento para T = 20.

Repetir el experimento para T = 40.

Se puede extraer alguna conclusion sobre el crecimiento del error cuando la longitud Tdel intervalo aumenta?

5. Considermos el sistema de Lorenz

dx

dt= −a x+ a y,

dy

dt= r x− y − x z,

dz

dt= −b z + x y,

SIMULACION NUMERICA - 11/12 Ejercicios 3

donde a, b, y r son constantes positivas. Tomaremos a = 10, b = 8/3, y r = 28, y lascondiciones iniciales

x(0) = 1, y(0) = 2, z(0) = 3.

Queremos aproximar la solucion (x(t), y(t), z(t)) para t ∈ [0, T ] con T = 1.

Aproximar la solucion y(t) para t = t0, t1, t2, . . . , tn = T (donde tk = h k y h =T/n) utilizando el metodo de Runge-Kutta de orden 4 con distintos valores de h.Comprobar experimentalmente que el metodo es de orden 4.

Repetir el experimento con T = 2 y T = 4. Que podemos deducir?

Obtener con ’ode45’ una solucion del problema de valor inicial para t ∈ [0, T ] conT = 4, tomando como tolerancias al error relativo y error absoluto igual a 10−10.Dibujar una figura que muestre la evolucion en el tiempo de los errores cometidosen cada componente.

Obtener con ’ode45’ una segunda solucion del problema, correspondiente a losvalores iniciales ligeramente perturbados

x(0) = 1,000001, y(0) = 1,999999, z(0) = 3,000002,

para t ∈ [0, T ] con T = 40, Comparar graficamente las dos soluciones. Llegamos aalguna conclusion sobre el problema?

SIMULACION NUMERICA - 11/12 Ejercicios 4

El problema del pendulo con muelle

Vamos a integrar numericamente un problema de valor inicial que corresponde a las ecua-ciones del movimiento de un pendulo formado por dos piezas unidas por un muelle que semueve en un plano vertical bajo la influencia de la fuerza de la gravedad.

a

r

L

Este sistema mecanico tiene dos grados de libertad, y podemos tomar como variables deposicion del sistema el angulo a y la distancia L entre el punto de giro y el centro de gravedadde la pieza inferior. Las ecuaciones del movimiento correspondientes (bajo condiciones idealesde ausencia de rozamiento) son las siguientes.

d2

dt2L = L

(da

dt

)2

+ g cos(a)− C1(L− L0),

d2

dt2a = −

g(C2 + L) sin(a) + 2L dLdt

dadt

C3 + L2,

donde g es la aceleracion de la gravedad, L0 es el valor de la distancia L correspondiente alestado de reposo del muelle,

C1 =K

m2, C2 =

rm1

m2, C3 = C2r +

I1 + I2m2

,

K es una constante determinada por la rigidez del muelle, m1 y m2 son respectivamente lasmasas de la pieza superior e inferior, I1 e I2 son los momentos de inercia de cada una de las

SIMULACION NUMERICA - 11/12 Ejercicios 5

piezas respecto a su centro de gravedad, y r es la distancia entre el punto de giro y el centrode gravedad de la pieza superior.

Vamos a considerar el caso en que L0 = 1, g = 1, y las constantes r, mi, Ii (i=1,2) sontales que C2 = 1 y C3 = 1. Dependiendo de la rigidez del muelle (dada por la constante K),se tendran distintos valores de la constante C1. Consideraremos dos casos, que de menor amayor rigidez del muelle, seran C1 = 100 y C1 = 10000.

Queremos resolver el problema de valor inicial correspondiente a

a(0) = π/2, L(0) = L0,d

dta(0) = 0,

d

dtL(0) = 0, (1)

en el intervalo t ∈ [0, 40].Obtendremos y representaremos graficamente los resultados para 1000 puntos uniforme-

mente espaciados en el intervalo [0, 40].En todas las pruebas que hagamos con los distintos integradores, variaremos la precision

de la integracion variando el valor de tol, y tomando tanto ’abstol’ como ’reltol’ igual a tol.

1. C1 = 100.

a) Aplicar ’ode45’ tres veces, una tomando tol = 10−4, otra tomando tol = 10−5.Representar graficamente respecto del tiempo las cuatro componentes para cadauna de las soluciones obtenidas con cada tolerancia. ¿Se aprecia alguna diferencia enlos resultados de ambas integraciones? Representar ahora solo las soluciones dadaspara d

dtL(t). ¿Son consistentes los resultados (en el sentido de que los resultadosparezcan fiables)?

2. C1 = 10000.

a) Aplicar ’ode45’ dos veces, una tomando tol = 10−4 y otra tomando tol = 10−5.Representar graficamente respecto del tiempo las cuatro componentes tanto de lasolucion dada para la tolerancia menor como para la tolerancia mayor. ¿Se apreciaalguna diferencia en los resultados de ambas integraciones? Representar ahora sololas soluciones dadas para d

dtL(t). ¿Son consistentes los resultados?

b) Repetir el apartado anterior (utilizando como antes las dos tolerancias tol = 10−4

y tol = 10−5) pero esta vez utilizando el integrador ’lsode’ de R con la opcion mf= 22 (con dicha opcion, le estamos diciendo que utilice los metodos de BDF deorden 1 hasta 5) ¿Son los resultados mas consistentes que los de ’ode45’?

c) Repetir el apartado anterior pero esta vez utilizando el integrador ’lsode’ de Rcon las opciones mf = 22, maxord = 4 (con la ultima de dichas opciones, estamosindicando que queremos que utilice los metodos de BDF de orden 1 hasta 4) ¿Sonlos resultados mas consistentes que en el caso anterior?

d) Repetir el apartado anterior pero esta vez utilizando el integrador ’radau’ de R(esta es una implementacion de un metodo de Runge-Kutta implıcito de ordencinco apropiado para problemas stiff). ¿Son los resultados consistentes?

e) Comentar que integradores han funcionado mejor en este ejemplo (con C1 =10000), y comentar las posibles causas de ello.

SIMULACION NUMERICA - 11/12 Ejercicios 6

La ecuacion del calor unidimensional

La ecuacion del calor es una ecuacion en derivadas parciales, que en su version unidimensionales

∂tu = a

∂2

∂x2u, (2)

donde a > 0 es la constante de difusion.Dada una solucion u = u(x, t) de la ecuacion, u(x, t) representa la temperatura en el

instante t del punto de la barra con coordenada x.Consideraremos el dominio espacial Ω = [0, 1], y como condiciones de contorno

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

para todo t. Para discretizar las derivadas parciales respecto de x utilizaremos la formula dediferencias centrales

f ′′(x) ≈ f(x+ ∆x)− 2f(x) + f(x−∆x)∆x2

1. Para a = 0,1 e intervalo de integracion t ∈ [0, 3], obtener una solucion aproximadacorrespondiente a las condiciones iniciales

u(x, 0) = (sin(πx))2.

2. Obtener otras aproximaciones con discretizaciones tanto temporales como espacialesmas finas, obteniendo estimaciones de los errores cometidos, hasta comprobar que losresultados obtenidos son fiables. Para la integracion del sistema de ecuaciones dife-renciales ordinarias que resulta de la semidiscretizacin espacial, utilizar el integrador’ode45’.

3. Repetir el ejercicio anterior, pero esta vez utilizando un metodo apropiado para sistemasde tipo ’stiff’. Se aprecia alguna diferencia con respecto al uso de ’ode45’?

4. Repetir todo lo anterior para a = 1 (mayor difusion) y tambien para a = 0,01 (menordifusion)). Se aprecia alguna diferencia entre el coste computacional en cada caso?

5. El sistema de ecuaciones diferenciales ordinarias que resulta de la semidiscretizacinespacial es un sistema lineal de la forma U ′ = AU . Obtener los autovalores de la matrizA, para distintas discretizaciones espaciales. Explicar la diferencia observada en esteproblema entre la aplicacion de ’ode45’ y el metodo adaptado para sistemas de tipo’stiff’ utilizado en el apartado (b). Estudiar lo que ocurre con dichos autovalores cuandola discretizacion espacial se va haciendo cada vez mas fina.

6. Representar la solucion con una grafica en tres dimensiones de u(x, t).

SIMULACION NUMERICA - 11/12 Ejercicios 7

La ecuacion del calor bidimensional

La ecuacion del calor es una ecuacion en derivadas parciales, que en su version bidimensionales

∂tu(x, y, t) = a

(∂2

∂x2u(x, y, t) +

∂2

∂y2u(x, y, t)

), (4)

donde a > 0 es la constante de difusion.Dada una solucion u = u(x, y, t) de la ecuacion, u(x, y, t) representa la temperatura en el

instante t del punto de la barra con coordenada (x, y).Consideraremos el dominio espacial Ω = (x, y), 0 ≤ x ≤ 1, 0 ≤ y ≤ 1, y como

condiciones de contorno

u(x, 0, t) = (sin(2πt))2, u(x, 1, t) = 0,∂

∂xu(x, y, t)

∣∣∣∣x=0

= 0,∂

∂xu(x, y, t)

∣∣∣∣x=1

= 0. (5)

Para discretizar las derivadas parciales respecto de x (tanto de ecuacion (4) como de lascondiciones de contorno (7)), utilizaremos las formulas de derivacion

f ′(x) ≈ f(x+ ∆x)− f(x)∆x

,

f ′′(x) ≈ f(x+ ∆x)− 2f(x) + f(x−∆x)∆x2

.

(En la primera formula de arriba, ∆x puede ser tanto positiva como negativa).

1. Para a = 0,1 e intervalo de integracion t ∈ [0, 10], obtener una solucion aproximadacorrespondiente a las condiciones iniciales,

u(x, y, 0) = 0.

asegurndoos de que la solucion numerica obtenida sera consitente con la solucion real.

2. Representar la evolucin de la temperatura media con respecto del tiempo.

3. Repetir lo anterior (tambien para a = 0,1 e intervalo de integracion t ∈ [0, 10]) obteneruna solucion aproximada correspondiente a las condiciones iniciales

u(x, y, 0) = (sin(πx))2.

4. Representar, para distintos valores de t = tj en el intervalo [0, 10], una grafica en tresdimensiones de u(x, y, tj).

SIMULACION NUMERICA - 11/12 Ejercicios 8

La ecuacion de Sine-Gordon

La ecuacion de Sine-Gordon es una ecuacion en derivadas parciales, que en su version unidi-mensional es

∂2

∂t2u = µ

∂2

∂x2u− sin(u), (6)

donde µ > 0. Se puede interpretar como la modelizacion de una banda flexible que se balanceapor la accion de la gravedad. Tambien se puede interpretar como una cadena (infinita) dependulos (infinitamente cercanos) unidos por muelles de torsion. (Si µ = 0, entonces se tratade pendulos intependientes.) En este sentido, dada una solucion u de la ecuacion, u(x, t)representa el angulo que adopta banda en el instante t en la posicion x.

Consideraremos el dominio espacial Ω = [−10, 10], y condiciones de contorno periodicas

u(x+ 20, t) = u(x, t) (7)

para todo t y x. Para discretizar las derivadas parciales respecto de x utilizaremos la formulade diferencias centrales

f ′′(x) ≈ f(x+ ∆x)− 2f(x) + f(x−∆x)∆x2

Para µ = 0,2 e intervalo de integracion t ∈ [0, 10],

1. Obtener una solucion aproximada correspondiente a las condiciones iniciales

u(x, 0) =12

(e−(x−1)2 + e−(x+1)2

),

v(x, 0) = 0, donde v(x, t) =∂

∂tu(x, t).

2. Obtener otras aproximaciones con discretizaciones tanto temporales como espacialesmas finas, para obtener estimaciones de los errores, hasta comprobar que los resultadosobtenidos son fiables.

3. Representar la solucion con una grafica en tres dimensiones de u(x, t).

4. Efectuar una animacion con las graficas de u(x, tj) (como funcion de x), para distintosvalores de tj en el intervalo [0, 10].

SIMULACION NUMERICA - 11/12 Ejercicios 9

Figura 1: Grafica de los Uj(t) en funcion del tiempo

Figura 2: Representacion grafica en 3D de u(t, x)

SIMULACION NUMERICA - 11/12 Ejercicios 10

Figura 3: Metodo pseudo-espectral: Errores de la discretizacion espacial (azul) y discretizacintemporal (verde) para N = 128 y tol = 10−8

Figura 4: Metodo pseudo-espectral: Errores de la discretizacion espacial (azul) y discretizacintemporal (verde) para N = 128 y tol = 10−8