Find the equations of Motion

9 views (last 30 days)
Nicholas
Nicholas on 1 May 2024
Answered: Arnav on 4 Sep 2024
For a base excitation single DOF oscillatory system (mass-spring-damper) (like an Earthquake): Period of pi/2 sec; m = 1 kg; Spring coefficient (k) = 100 N/m; Damping Ratio = 0.15; Damper coefficient (c) = 3 N-s/m; Natural Frequency = 10 rad/s.
I want to find the equations of motion and the response given these properties and I need to use MatLab for simualtion. I'm not completely sure how to go about this with the functions, independent variable (t), and maybe ode45 to make this a consistent equation. The Equation of Motion that's for the system is at the bottom of my script. I'm just a little lost and would appreciate some guidance. If plotted, the graph should look like:
Here's my code so far:
% For the response of a damped system under the harmonic motion of the base
k = 100 % N/m
m = 1 % kg
DR = 0.15 % Damping Ratio
wn = (k/m)^(1/2) % rad/s
w = ???
t = % independent ???
Y = % Big Y is Maximum Amplitude of Base Motion Test Bed (Unknown)
c = DR*2*m*wn %N-s/m
alpha = arctan((-c*w)/k)
A = Y*((k^2)+(c*w)^2)^(1/2)
EOM1 = A*sin(w*t-alpha) % External Force
  1 Comment
nick
nick on 6 May 2024
Hi Nicholas,
The external force, EOM1, on the system as shared in the code is function of displacement. Is EOM1 the net external force on the system? Are there any intial conditions on the system?

Sign in to comment.

Answers (1)

Arnav
Arnav on 4 Sep 2024
As per my understanding of the question, you are dealing with a base-excited damped mass system where the base displacement is provided externally.
Assume the base excitation to be y and assume the displacement of the mass relative to the base is u. Then the system can be modelled as the equation:
where m is the mass, c is the appropriate damping constant and k is the spring constant.
We can formulate and solve this equation as:
system_ode = @(t, z) [z(2); (1/m) * (-c * z(2) - k * z(1) - m * yg_ddot_interp(t))];
t_span = [0, 20]; % Time span for the simulation initial_conditions = [0; 0]; % Initial rel distance and speed
[t, z] = ode45(system_ode, t_span, initial_conditions);
Sample Output:
You can try this out with your own parameters. For more information you might want to have a look at the documentation page of ode45: https://www.mathworks.com/help/matlab/ref/ode45.html?searchHighlight=ode45&s_tid=srchtitle_support_results_1_ode45

Categories

Find more on Statics and Dynamics in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!