Matemáticas y Ciencias de la Computación. Taller
Enviado por Felipe Mascayano V. • 21 de Julio de 2023 • Apuntes • 2.881 Palabras (12 Páginas) • 73 Visitas
[pic 1]
Facultad de Ciencias
Departamento de Matemáticas y Ciencias de la Computación
TALLER V
El desarrollo del presente taller lo puede realizar en cualquiera de las 2 opciones siguiente:
- De forma manuscrita digitalizando posteriormente sus respuestas y pegando las imágenes con el desarrollo y la respuesta correspondiente en cada recuadro. Los códigos MATLAB deben ser pegados en los recuadros solicitados, junto con su respuesta.
- De forma digital con el desarrollo y la respuesta correspondiente en cada recuadro. Los códigos MATLAB deben ser pegados en los recuadros solicitados, junto con su respuesta.
En cualquiera de las dos opciones debe detallar (explicar) todo su desarrollo y adjuntar gráficos y códigos utilizados.
Es importante que cumpla con los plazos definidos en plataforma, y entregue el archivo en formato PDF.
Tendrá disponible para consultas tanto la sesión con el profesor, como la sesión de ayudantía en la respectiva semana.
- El movimiento de un sistema acoplado masa resorte (ver figura 1) está descrito por la ecuación diferencial
[pic 2]
Donde x = desplazamiento desde la posición de equilibrio, t = tiempo (seg), m = 20 Kg masa, y c = coeficiente de amortiguación (. El coeficiente de amortiguamiento c adapta tres valores. 5 (subamortiguado), y 200 (sobreamortiguado). La constante del resorte es k = 20 La velocidad inicial es cero y el desplazamiento inicial es de x = 1 m. [pic 3][pic 4]
Aproxime el desplazamiento y la velocidad del sistema con el uso de a) Euler, b) RK44, c) trapecio durante el periodo de con una variación de 2 seg, para los dos valores de c. Luego con los valores obtenidos construya los polinomios de mayor grado posible para aproximar la posición del sistema acoplado en , para los dos sistemas.[pic 5][pic 6]
[pic 7]
Figura 1. Sistema acoplado masa resorte.
Reemplazando por las constantes para el caso de subamortiguado:
[pic 8]
Condiciones iniciales del problema:
[pic 9]
[pic 10]
Utilizando cambio de variables, como u, una variable auxiliar.
[pic 11]
[pic 12]
[pic 13]
Ecuación de recursiva:
[pic 14]
Con h = 2.
f = @(t,u1,u2) [u2; (-20*u1-5*u2)/20]
u0 = [1;0]
ti = 0
tf = 10
n = 5
h = (tf-ti)/n
%Euler
ua = [u0]
for i=1:n
if i == 1
un = u0;
end
tn = ti + (i-1)*h;
un = un + h .* f(tn,un(1),un(2));
ta = ti + i*h;
ua = [ua un];
fprintf('la aproximación de u en la iteración %d en t = %d es: [%10.10f,%10.10f]\n',i,ta,un(1),un(2))
end
la aproximación de u en la iteración 1 en t = 2 es: [velocidad: 1.0000000000, aceleración: -2.0000000000]
la aproximación de u en la iteración 2 en t = 4 es: [velocidad: -3.0000000000, aceleración: -3.0000000000]
la aproximación de u en la iteración 3 en t = 6 es: [velocidad: -9.0000000000, aceleración: 4.5000000000]
la aproximación de u en la iteración 4 en t = 8 es: [velocidad: 0.0000000000, aceleración: 20.2500000000]
la aproximación de u en la iteración 5 en t = 10 es: [velocidad: 40.5000000000, aceleración: 10.1250000000]
[pic 15]
Grafica de velocidad (azul) y aceleración (rojo), utilizando método de Euler.
Para RK44, el algoritmo en Matlab es de la siguiente forma:
f = @(t,u1,u2) [u2; (-20*u1-5*u2)/20]
u0 = [1;0]
ti = 0
tf = 10
n = 5
h = (tf-ti)/n
%Euler
ua = [u0]
for i=1:n
if i == 1
un = u0;
end
tn = ti + (i-1)*h;
F1 = f(tn,un(1),un(2));
F2 = f(tn + h/2, un(1) + (h/2)*F1(1), un(2) + (h/2)*F1(2));
F3 = f(tn + h/2, un(1) + (h/2)*F2(1), un(2) + (h/2)*F2(2));
F4 = f(tn + h , un(1) + (h/2)*F3(1), un(2) + (h/2)*F3(2));
un = un + (h/6) * (F1 + 2.*F2 + 2.*F3 + F4);
ta = ti + i*h;
ua = [ua un];
fprintf('la aproximación de u en la iteración %d en t = %d es: [%10.10f,%10.10f]\n',i,ta,un(1),un(2))
end
t_k = ti:h:tf;
plot(t_k,ua(1,:),'-')
hold on
plot(t_k,ua(2,:),'-')
la aproximación de u en la iteración 1 en t = 2 es:
[ velocidad: -0.1041666667, aceleración: -0.8072916667]
la aproximación de u en la iteración 2 en t = 4 es:
[ velocidad: -0.6408691406, aceleración: 0.3311157227]
la aproximación de u en la iteración 3 en t = 6 es:
[ velocidad: 0.3340641658, aceleración: 0.4160503546]
la aproximación de u en la iteración 4 en t = 8 es:
[ velocidad: 0.3010756336, aceleración: -0.3969942918]
la aproximación de u en la iteración 5 en t = 10 es:
[ velocidad: -0.3518522287, aceleración: -0.1215797321]
[pic 16]
Grafica de velocidad (azul) y aceleración (rojo), utilizando método de RK44
Para el método del trapecio, en Matlab para el sistema subamortiguado.
...