Question for using root function.

10 visualizzazioni (ultimi 30 giorni)
Trong Nhan Tran
Trong Nhan Tran il 18 Mag 2024
Modificato: Trong Nhan Tran il 20 Mag 2024
% Using the MATLAB function “roots” for find non-zero natural frequencies
% define symbolic variable w
syms w;
% Given parameters
m1 = 1.8; m2 = 6.3; m3 = 5.4; m4 = 22.5; m5 = 54;
c2 = 10; c3 = 0.5; c4 = 1.50; c5 = 1.1;
k2 = 100000; k3 = 50; k4 = 75; k5 = 10;
% Set up system matrices
% mass matrix
M = diag([m1, m2, m3, m4, m5]);
% damping matrix
C = [c2 -c2 0 0 0;
-c2 c2+c3 -c3 0 0;
0 -c3 c3+c4 -c4 0;
0 0 -c4 c4+c5 -c5;
0 0 0 -c5 c5];
% stiffness matrix
K = [k2 -k2 0 0 0;
-k2 k2+k3 -k3 0 0;
0 -k3 k3+k4 -k4 0;
0 0 -k4 k4+k5 -k5;
0 0 0 -k5 k5];
% Calculate frequency equation
Zw = w^2*M + 1i*w*C + K; % impedance matrix
freqEq = det(Zw); % take determinant to get frequency equation
pretty(simplify(freqEq)); % display simplified frequency equation
% Display the non-zero natural frequencies
disp('Non-zero natural frequencies (Hz):');
disp(root(freqEq))
  11 Commenti
Trong Nhan Tran
Trong Nhan Tran il 19 Mag 2024
but i think M1 was wrong cuz it has c in stiffness matrix
K = [k2 -k2 0 0 0;
-k2 k2+k3 -k3 0 0;
0 -k3 k3+k4 -k4 0;
0 0 -k4 k4+k5 -k5;
0 0 0 -k5 k5];
Torsten
Torsten il 19 Mag 2024
Modificato: Torsten il 19 Mag 2024
Write your equations (1)-(5) as
M1*[X1;X2;X3;X4;X5] + w*M2*[X1;X2;X3;X4;X5] + w^2*M3*[X1;X2;X3;X4;X5] = 0
and you will see that my M1, M2 and M3 matrices are correct to reproduce your system.
But as I said: I don't know if this is how "natural frequencies" are defined.

Accedi per commentare.

Risposte (0)

Tag

Prodotti


Release

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by