Find the equations of Motion

8 ビュー (過去 30 日間)
Nicholas
Nicholas 2024 年 5 月 1 日
回答済み: Arnav 2024 年 9 月 4 日
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 件のコメント
nick
nick 2024 年 5 月 6 日
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?

サインインしてコメントする。

回答 (1 件)

Arnav
Arnav 2024 年 9 月 4 日
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

カテゴリ

Help Center および File ExchangeStatics and Dynamics についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by