2011-11-03 12 views

答えて

0

お使いのシステムが10個の入力があり、Nt時間ステップのためにシミュレートしたい場合は、t1 x Ntuする必要があります例えば、18 x Ntでなければなりません。:

sys = whatever; 
m = 10;  % num inputs 

Nt = 1000; % 1000 samples 
t_end = 10; % simulate for 10 seconds 
t = linspace(0, t_end, Nt); 

u = ones(m, Nt);  % a step input on all inputs 
y = lsim(sys, u, t); 

% or, e.g. 
u = [sin(t); cos(t); zeros(m-2, Nt)]; % sin and cos for the first two inputs, 
             % zero for the others 
y = lsim(sys, u, t); 
+0

どうもありがとうございました。これは本当に助けになりました。私はそれに数秒間一定の入力を与えたい。私の10個の入力は、例えば10,23,34,45,56,5,4,3,2,25のような数字です。この場合、同じ数の時間サンプルでどのようにuを書きますか?私はあなたの助けに感謝します。 – user1028035

+0

最速の方法は 'u = kron([10、23、etc、25] '、ones(size(t)))'ですが、 ); 23 * ones(1、Nt);等...] ' – dantswain

関連する問題