How to give input function dz/dt=Z*omega*cos(omega) to state space system?

1 view (last 30 days)
EOm=4mu''+30 cu'+3ku=12cz'
Let
m=1000
k=5000
c=0.02*2*sqrt(Ke*Me)
How to write above equation in state space veriables?
I am confused with the part at R.H.S. 12cz', input= z(t)=Zcos(omega)
Kindly gude.

Accepted Answer

Alan Stevens
Alan Stevens on 18 Oct 2020
Edited: Alan Stevens on 18 Oct 2020
Do you mean something along these lines:
tspan = [0 2]; % Or whatever you need
IC = [1 0]; % Set your own initial conditions IC = [u(0) dudt(0)]
[t, U] = ode45(@fn, tspan, IC);
u = U(:,1); dudt = U(:,2);
plot(t,u,'r',t,dudt,'b'),grid
function dUdt = fn(t,U)
m=1000;
k=5000;
Ke = 1000; % Set to your own value
Me = 1000; % Ditto
Z = 1000; % Ditto
omega = 10; % Ditto
c=0.02*2*sqrt(Ke*Me);
% I suspect you want z = Z*sin(omega*t), so that
% dz/dt = Z*omega*cos(omega*t)
dzdt = Z*omega*cos(omega*t);
M = [1 0; 0 4*m];
K = [0 -1; 3*k 30*c];
V = [0; 12*c*dzdt];
dUdt = M^-1*(V - K*U);
end
% Let v = u', then your 2nd order equation becomes two ist order equations
% u' - v = 0
% 4*m*v' + 30*c*v + 3*k*u = 12*c*Z*omega*cos(omega*t)
% [1 0][u'] + [0 -1][u] = [0 ]
% [0 4*m][v'] [3*k 30*c][v] [12*c*Z*omega*cos(omega*t)]
  1 Comment
Sadia
Sadia on 19 Oct 2020
Thank you very much for the response. Yes you are right it was cos(omega*t) sorry about it. I also have to find Frequency response function, i-e U/Z and have to plot against frequency omega. I am working on it.

Sign in to comment.

More Answers (0)

Categories

Find more on Mathematics 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!