How to find response

3 views (last 30 days)
Emmanouel Lagoudakis
Emmanouel Lagoudakis on 29 Nov 2014
Edited: Azzi Abdelmalek on 29 Nov 2014
Hello, I put the following system in matlab but I get an error
"When simulating the response to a specific input signal, the input data U must be a matrix with as many rows as samples in the time vector T, and as many columns as input channels."
Can someone explain it to me? Thank you.
A = [3 0;0 -2];
B = [3 0;0 -2];
C = [-1 1;1 -1];
D=0;
x0 = [1 -1];
poles = eig(A)
% open-loop response:
t = 0:0.01:5;
u = 0*t;
sys = ss(A,B,C,D);
[y,t,x] = lsim(sys,u,t,x0);
plot(t,y)

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 29 Nov 2014
A = [3 0;0 -2];
B = [3 0;0 -2];
C = [-1 1;1 -1];
D=0;
x0 = [1 -1];
poles = eig(A) % You have unstable poles (pole=3)
% open-loop response:
t = (0:0.01:5)';
u = [sin(t) sin(t)] % create your input signals
sys = ss(A,B,C,D);
[y,t,x] = lsim(sys,u,t,x0);
plot(t,y)

More Answers (0)

Categories

Find more on Dynamic System Models in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!