Borrar filtros
Borrar filtros

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

4 visualizaciones (últimos 30 días)
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.

Respuesta aceptada

Alan Stevens
Alan Stevens el 18 de Oct. de 2020
Editada: Alan Stevens el 18 de Oct. de 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 comentario
Sadia
Sadia el 19 de Oct. de 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.

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by