Untitled

 avatar
unknown
plain_text
a month ago
992 B
3
Indexable
% Massa m = 250g --> 0.250 Kg
% Costante elstica k = 30 N/m
% Coeff smorzamento B = 1 Ns/m
% Posizionale iniziale y0 = -0.2m
% Velocità iniziale = v0 = 0 m/s

%Equazione del moto:
% y'' = g-(k/m)y - (B/m)y'

% y'' + (B/m)y' + (k/m)y = g

% y'' + (1/0.250)y' + (30/0.250)y = 9.81

% y'' + 4y' + 120y = 9.81

% Termine di smorzamento --> B/m = 4

% Frequenza naturale al quadrato k/m = 120

% Coeff di smorzamento -->


m = 0.25;
k = 30;
beta = 1;
g = 9.81;

y0 = [-0.2; 0];
tspan = [0, 3];

[t, y] = ode45(@ode_sys, tspan, y0);

%y(:,2)
bounces = 0;
for i = 2:length(t)
    if sign(y(i,2)) > sign(y(i-1,2))
        bounces = bounces +1;
    end
end

figure;
plot(t, y(:, 1), 'b-', 'LineWidth', 1.5);
grid on;
xlabel('Tempo (s)');
ylabel('Posizione (m)');
title('Oscillazione smorzate della massa');

fprintf('Numero di rimbalzi in 3 secondi: %d', bounces);



function dydt = ode_sys(t,y)

    dydt = zeros(2,1);
    dydt(1) = y(2);
    dydt(2) = g-(k/m)*y(1) - (beta/m)*y(2);
end











Leave a Comment