Sistema resorte-masa (Grupo 8)
Muchos modelos de vibraciones se modelizan con sistemas de muelles y masas. Consideramos aquí un ejemplo simple formado por tres muelles y dos masas unidos a dos paredes que se deslizan libremente sobre un plano horizontal, como se muestra en la figura:
1 Modelización del sistema de ecuaciones
Modelizamos el sistema de ecuaciones diferenciales para el desplazamiento de ambas masas desde la posición de equilibrio. El sistema quedará en función de las posiciones de las masas, x1 y x2.
Suponemos que deslizan sobre una superficie horizontal y lisa, por lo que despreciamos la fuerza de rozamiento. Por tanto, las únicas fuerzas a tener en cuenta son las fuerzas que ejercen los muelles.
Según la Ley de Hooke, la fuerza ocasionada por un muelle es proporcional a su elongación.
Así para nuestro sistema las fuerzas que actúan sobre la masa 1 son: :
[math] F1=-k1x1 [/math] :
[math] F2=k2(x2-x1) [/math]
Sobre la masa 2: :
[math] F3=-k2(x2-x1) [/math] :
[math] F4=-k3x2 [/math]
Donde k1, k2 y k3 son las constantes elásticas de cada muelle.
Aplicando la segunda ley de Newton, [math] F=mx'' [/math], nos queda un sistema de ecuaciones diferenciales de segundo orden: [math] m1x1''=-k1x1+k2(x2-x1)[/math]: [math] m2x2''=-k2(x2-x1)-k3x2[/math]
2 Resolución del sistema
Suponemos:
- Las masas m1=2kg, m2=1kg.
- Las constantes de los muelles k1=4N/m, k2=2N/m, k3=1N/m.
- Las posiciones en el equilibrio x1=2, X2=4.
El sistema que se obtiene : [math] x1''=-3x1+x2[/math]: [math] x2''=2x1-3x2[/math]
2.1 Supuesto 1
Para t=0, se desplazan las masas 1 y 1,5 respectivamente y se sueltan repentinamente. Lo resolvemos mediante dos métodos.
2.1.1 Método de Newmark
clear all
t0=0;
tN=10;
N=100;
h=(tN-t0)/N;
t=t0:h:tN;
beta=1/4;
gamma=1/2;
a1=-3; b1=0; c1=1; d1=0;
a2=2; b2=0; c2=-3; d2=0;
A=[0 1 0 0; 0 0 0 0; 0 0 0 1; 0 0 0 0 ];
B=[a1 b1 c1 d1; 0 0 0 0; a2 b2 c2 d2; 0 0 0 0];
C=[0 0 0 0; a1 b1 c1 d1; 0 0 0 0; a2 b2 c2 d2];
D=((h^2)*beta)*B+(h*gamma)*C;
F=eye(4)-D;
x10=1; z10=0; x20=1.5; z20=0;
X(:,1)=[x10; z10; x20; z20];
Y=X(:,1);
for n=1:N
Y=(eye(4)+(h*A)+((h^2)*((1/2)-beta))*B+(h*(1-gamma))*C)*Y;
X(:,n+1)=F\Y;
Y=X(:,n+1);
end
%Solución real
Y1=1/2*[((3*sqrt(2)+4)/4)*cos(sqrt(3-sqrt(2))*t)-((3*sqrt(2)-4)/4)*cos(sqrt(3+sqrt(2))*t)];
Y2=((3*sqrt(2)+4)/(4*sqrt(2)))*cos(sqrt(3-sqrt(2))*t)+((3*sqrt(2)-4)/(4*sqrt(2)))*cos(sqrt(3+sqrt(2))*t);
%Representación gráfica
figure(1)
hold on
d=2+X(1,:);
e=4+X(3,:);
plot(d,t,'x')%Solución real
plot(e,t,'x')%Solución real
f=2+Y1;
g=4+Y2;
plot(f,t)%Solución aproximada
plot(g,t)%Solución aproximada
hold off
Obtenemos la siguiente gráfica tiempo-posición:
2.1.2 Método Runge-Kutta
Para aplicar el Método de Runge-Kutta es necesario descomponer el sistema en cuatro ecuaciones de primer orden: [math] x1'=z1[/math]: [math]z1'=x1''=-3x1+x2[/math]: [math]x2'=z2[/math]: [math]z2'=x2''=2x1-3x2[/math]
clear all
t0=0;
tN=10;
N=100;
h=(tN-t0)/N;
t=t0:h:tN;
A=[0 1 0 0;-3 0 1 0;0 0 0 1;2 0 -3 0];
x01=1; z01=0; x02=1.5; z02=0;
x1(1)=x01; z1(1)=z01; x2(1)=x02; z2(1)=z02;
X=[x01;z01;x02;z02];
for n=1:N
k1=A*X;
k2=A*(X+1/2*h*k1);
k3=A*(X+1/2*h*k2);
k4=A*(X+h*k3);
X=X+h/6*(k1+2*k2+2*k3+k4);
x1(n+1)=X(1);
z1(n+1)=X(2);
x2(n+1)=X(3);
z2(n+1)=X(4);
end
%Solución real
Y1=1/2*[((3*sqrt(2)+4)/4)*cos(sqrt(3-sqrt(2))*t)-((3*sqrt(2)-4)/4)*cos(sqrt(3+sqrt(2))*t)];
Y2=((3*sqrt(2)+4)/(4*sqrt(2)))*cos(sqrt(3-sqrt(2))*t)+((3*sqrt(2)-4)/(4*sqrt(2)))*cos(sqrt(3+sqrt(2))*t);
%Representación gráfica
figure(1)
hold on
d=2+x1;
e=4+x2;
plot(d,t,'x')%Solución real
plot(e,t,'x')%Solución real
f=2+Y1;
g=4+Y2;
plot(f,t)%Solución aproximada
plot(g,t)%Solución aproximada
hold offObtenemos la siguiente gráfica tiempo-posición:
2.1.3 Observaciones
Se observa que la gráfica es igual para ambos métodos. La diferencia a simple vista no se aprecia, pero Runge-Kutta es un método de cuarto orden y por tanto más preciso que el de Newmark, que es de segundo orden.
2.2 Supuesto 2
En este caso, partimos de las masas en la posición de equilibrio y con velocidad inicial v=1m/s en el mismo sentido. Aplicamos ambos métodos de la misma forma, sólo cambian las condiciones iniciales.
2.2.1 Método de Newmark
clear all
t0=0;
tN=10;
N=100;
h=(tN-t0)/N;
t=t0:h:tN;
beta=1/4;
gamma=1/2;
a1=-3; b1=0; c1=1; d1=0;
a2=2; b2=0; c2=-3; d2=0;
A=[0 1 0 0; 0 0 0 0; 0 0 0 1; 0 0 0 0 ];
B=[a1 b1 c1 d1; 0 0 0 0; a2 b2 c2 d2; 0 0 0 0];
C=[0 0 0 0; a1 b1 c1 d1; 0 0 0 0; a2 b2 c2 d2];
D=((h^2)*beta)*B+(h*gamma)*C;
F=eye(4)-D;
x10=0; z10=1; x20=0; z20=1;
X(:,1)=[x10; z10; x20; z20];
Y=X(:,1);
for n=1:N
Y=(eye(4)+(h*A)+((h^2)*((1/2)-beta))*B+(h*(1-gamma))*C)*Y;
X(:,n+1)=F\Y;
Y=X(:,n+1);
end
%Solución real
Y1=1/2*[((sqrt(2)+2)/(2*sqrt(3-sqrt(2))))*sin(sqrt(3-sqrt(2))*t)-((sqrt(2)-2)/(2*sqrt(3+sqrt(2))))*sin(sqrt(3+sqrt(2))*t)];
Y2=((sqrt(2)+2)/(2*sqrt(2)*sqrt(3-sqrt(2))))*sin(sqrt(3-sqrt(2))*t)+((sqrt(2)-2)/(2*sqrt(2)*sqrt(3+sqrt(2))))*sin(sqrt(3+sqrt(2))*t);
%Representación gráfica
figure(1)
hold on
d=2+X(1,:);
e=4+X(3,:);
plot(d,t,'x')%Solución real
plot(e,t,'x')%Solución real
f=2+Y1;
g=4+Y2;
plot(f,t)%Solución aproximada
plot(g,t)&Solución aproximada
hold off
Obteniendo la gráfica tiempo-posición:
2.2.2 Método de Runge-Kutta
clear all
t0=0;
tN=10;
N=100;
h=(tN-t0)/N;
t=t0:h:tN;
A=[0 1 0 0;-3 0 1 0;0 0 0 1;2 0 -3 0];
x01=0; z01=1; x02=0; z02=1;
x1(1)=x01; z1(1)=z01; x2(1)=x02; z2(1)=z02;
X=[x01;z01;x02;z02];
for n=1:N
k1=A*X;
k2=A*(X+1/2*h*k1);
k3=A*(X+1/2*h*k2);
k4=A*(X+h*k3);
X=X+h/6*(k1+2*k2+2*k3+k4);
x1(n+1)=X(1);
z1(n+1)=X(2);
x2(n+1)=X(3);
z2(n+1)=X(4);
end
%Solución real
Y1=1/2*[((sqrt(2)+2)/(2*sqrt(3-sqrt(2))))*sin(sqrt(3-sqrt(2))*t)-((sqrt(2)-2)/(2*sqrt(3+sqrt(2))))*sin(sqrt(3+sqrt(2))*t)];
Y2=((sqrt(2)+2)/(2*sqrt(2)*sqrt(3-sqrt(2))))*sin(sqrt(3-sqrt(2))*t)+((sqrt(2)-2)/(2*sqrt(2)*sqrt(3+sqrt(2))))*sin(sqrt(3+sqrt(2))*t);
%Representación gráfica
figure(1)
hold on
d=2+x1;
e=4+x2;
plot(d,t,'x')%Solución real
plot(e,t,'x')%Solución real
f=2+Y1;
g=4+Y2;
plot(f,t)%Solución aproximada
plot(g,t)%Solución aproximada
hold off
Obteniendo la gráfica tiempo-posición:
2.3 Supuesto 3
En este caso, partimos de las masas en la posición de equilibrio y con velocidad inicial v=1m/s en sentidos opuestos. Aplicamos ambos métodos de la misma forma, sólo cambian las condiciones iniciales.
2.3.1 Método de Newmark
clear all
t0=0;
tN=10;
N=100;
h=(tN-t0)/N;
t=t0:h:tN;
beta=1/4;
gamma=1/2;
a1=-3; b1=0; c1=1; d1=0;
a2=2; b2=0; c2=-3; d2=0;
A=[0 1 0 0; 0 0 0 0; 0 0 0 1; 0 0 0 0 ];
B=[a1 b1 c1 d1; 0 0 0 0; a2 b2 c2 d2; 0 0 0 0];
C=[0 0 0 0; a1 b1 c1 d1; 0 0 0 0; a2 b2 c2 d2];
D=((h^2)*beta)*B+(h*gamma)*C;
F=eye(4)-D;
x10=0; z10=1; x20=0; z20=-1;
X(:,1)=[x10; z10; x20; z20];
Y=X(:,1);
for n=1:N
Y=(eye(4)+(h*A)+((h^2)*((1/2)-beta))*B+(h*(1-gamma))*C)*Y;
X(:,n+1)=F\Y;
Y=X(:,n+1);
end
%Solución real
Y1=1/2*[((-sqrt(2)+2)/(2*sqrt(3-sqrt(2))))*sin(sqrt(3-sqrt(2))*t)-((-sqrt(2)-2)/(2*sqrt(3+sqrt(2))))*sin(sqrt(3+sqrt(2))*t)];
Y2=((-sqrt(2)+2)/(2*sqrt(2)*sqrt(3-sqrt(2))))*sin(sqrt(3-sqrt(2))*t)+((-sqrt(2)-2)/(2*sqrt(2)*sqrt(3+sqrt(2))))*sin(sqrt(3+sqrt(2))*t);
%Representación gráfica
figure(1)
hold on
d=2+X(1,:);
e=4+X(3,:);
plot(d,t,'x')%Solución real
plot(e,t,'x')%Solución real
f=2+Y1;
g=4+Y2;
plot(f,t)%Solución aproximada
plot(g,t)%Solución aproximada
hold off
Obteniendo la gráfica tiempo-posición:
2.3.2 Método de Runge-Kutta
clear all
t0=0;
tN=10;
N=100;
h=(tN-t0)/N;
t=t0:h:tN;
A=[0 1 0 0;-3 0 1 0;0 0 0 1;2 0 -3 0];
x01=0; z01=1; x02=0; z02=-1;
x1(1)=x01; z1(1)=z01; x2(1)=x02; z2(1)=z02;
X=[x01;z01;x02;z02];
for n=1:N
k1=A*X;
k2=A*(X+1/2*h*k1);
k3=A*(X+1/2*h*k2);
k4=A*(X+h*k3);
X=X+h/6*(k1+2*k2+2*k3+k4);
x1(n+1)=X(1);
z1(n+1)=X(2);
x2(n+1)=X(3);
z2(n+1)=X(4);
end
%Solución real
Y1=1/2*[((-sqrt(2)+2)/(2*sqrt(3-sqrt(2))))*sin(sqrt(3-sqrt(2))*t)-((-sqrt(2)-2)/(2*sqrt(3+sqrt(2))))*sin(sqrt(3+sqrt(2))*t)];
Y2=((-sqrt(2)+2)/(2*sqrt(2)*sqrt(3-sqrt(2))))*sin(sqrt(3-sqrt(2))*t)+((-sqrt(2)-2)/(2*sqrt(2)*sqrt(3+sqrt(2))))*sin(sqrt(3+sqrt(2))*t);
%Representación gráfica
figure(1)
hold on
d=2+x1;
e=4+x2;
plot(d,t,'x')%Solución real
plot(e,t,'x')%Solución real
f=2+Y1;
g=4+Y2;
plot(f,t)%Solución aproximada
plot(g,t)%Solución aproximada
hold off
Obteniendo la gráfica tiempo-posición:
3 Sistema de una masa
Suponemos ahora que el sistema tiene una masa, es decir desenganchamos la masa 2 de manera que nos queda un muelle y una masa. Suponemos también que el sistema está sumergido en un medio viscoso que provoca un amortiguamiento proporcional a la velocidad de la masa con coeficiente c=1. Modelizamos este sistema con los mismos parámetros para la masa y el muelle. Nos queda la ecuación: [math]x''=-(1/2)x'-2x[/math]
3.1 Método de Newmark
clear all
t0=0;
tN=10;
N=1000;
h=(tN-t0)/N;
t=t0:h:tN;
beta=1/4;
gamma=1/2;
A=[1+2*h^2*beta h^2*beta/2; 2*gamma*h 1+gamma*h/2];
B=[1+h^2+2*h^2*beta h-(h^2)/4+(1/2)*h^2*beta; -2*h+2*gamma*h 1-h/2+gamma*h/2];
y0=0; z0=1;
y(1)=y0; z(1)=z0;
Y=[y(1);z(1)];
for n=1:N
Y=A\(B*Y);
y(n+1)=Y(1);
z(n+1)=Y(2);
end
figure(1)
d=2+y;
plot(d,t);
hold on
Obteniendo la gráfica tiempo-posición:
3.2 Método de Runge-Kutta
Descomponemos la ecuación de segundo orden en dos ecuaciones de primer orden, quedando el sistema: [math]x'=z[/math] [math]z'=x''=-2x-(1/2)z[/math]
clear all
t0=0;
tN=10;
N=1000;
h=(tN-t0)/N;
t=t0:h:tN;
A=[0 1; -2 -1/2];
x01=1; z01=0;
x1(1)=x01; z1(1)=z01;
X=[x01;z01];
for n=1:N
k1=A*X;
k2=A*(X+1/2*h*k1);
k3=A*(X+1/2*h*k2);
k4=A*(X+h*k3);
X=X+h/6*(k1+2*k2+2*k3+k4);
x1(n+1)=X(1);
z1(n+1)=X(2);
end
figure(1)
hold on
d=2+x1;
plot(d,t)
hold off
Obteniendo la gráfica tiempo-posición:
3.3 Energía mecánica
Estudiamos ahora la evolución de la energía mecánica en el tiempo. La fórmula general es: [math] E=Ec+Ep=(1/2)mx'^2+(1/2)kx^2[/math] Particularizando en este caso: [math]E=x'^2+2x^2=z^2+2x^2[/math]
Utilizamos la solución del Runge-Kutta anterior y obtenemos la gráfica energía-tiempo:
Al incrementar el coeficiente de amortiguamiento "c", la energía decae más rápidamente. Esto se debe a que cuanto mayor es la viscosidad del medio, más rápido se disipa la energía, volviendo antes la masa a la posción de equilibrio.









