How to access data of an iddata object in a cell array?

11 vues (au cours des 30 derniers jours)
Benjamin Pommer
Benjamin Pommer le 5 Déc 2022
Commenté : Star Strider le 5 Déc 2022
Dear Matlab community!
I have a cell array where I store iddata objects with input signals and output signals. How can I inquire the input variable of the iddata object inside the cell array?
Best regards
Benjamin

Réponse acceptée

Star Strider
Star Strider le 5 Déc 2022
The iddata object is a structure, so in this instance, use cell array indexing and structure referencing to get its contents —
Fs = 500;
L = 50;
t = linspace(0, L-1, L).'/Fs;
u = [0 ones(1,L-1)].';
sys = tf([1 0], [1 0 1], 1/Fs);
y = lsim(sys, u, t);
% figure
% plot(t, y)
% hold on
% plot(t, u)
% hold off
% grid
k = 1;
data{k} = iddata(y, u, 1/Fs)
data = 1×1 cell array
{50×1×1 iddata}
Input = data{k}.InputData % Return Input Data From Cell Array Of 'iddata' Objects
Input = 50×1
0 1 1 1 1 1 1 1 1 1
I created data to test this, since none were provided.
.
  2 commentaires
Benjamin Pommer
Benjamin Pommer le 5 Déc 2022
Thank you
Star Strider
Star Strider le 5 Déc 2022
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by