Error using DynamicSystem/lsim

3 次查看(过去 30 天)
Anthony Sirico
Anthony Sirico 2021-2-12
clear; clc; close all;
A = [1 0 0 0; 0 -1 0 0; 0 0 -2 0; 0 0 0 -3];
B = [1 0; -1 1; 0 -1; 1 -1];
C = eye(4);
D = 0;
X0 = [-2; -1; 1; 2];
EvA = eig(A);
sys = ss(A,B,C,D);
AT = transpose(A)
BT = transpose(B)
t = 0:1:3;
t0 = 0;
tfinal = 3;
Wc = integral(@(t) integrand(t,t0,A,B),t0,tfinal,'ArrayValued',true);
IW = inv(Wc)
phi = exp(AT.*(-t));
u = -BT*phi*IW*X0;
lsim(sys, u, t, X0)
grid on
Error using DynamicSystem/lsim (line 97)
When simulating the response to a specific input signal, the input data U must be a matrix of numeric values with at least two rows (samples) and without
any NaN or Inf.
Error in HW3_1 (line 19)
lsim(sys, u, t, X0)
Any thoughts

回答(1 个)

Shubham Khatri
Shubham Khatri 2021-2-21
Hello,
This error occurs when the number of rows in 'u' is not equal to number of rows in 't'. Please refer to the documentation link of the integral , lsim for more information.
Hope it helps

类别

Help CenterFile Exchange 中查找有关 Digital Filter Analysis 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by