How to change C and D matrices of a state-space model?
18 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Dino
il 26 Mag 2021
Commentato: Jesús Zambrano
il 27 Mag 2021
Hi,
I created a state-space model with the Simulink Linearization Manager and would like to derive a model with fewer outputs. So far, however, my approaches have only led to errors:
A = eye(3);
B = ones(3,1);
C = [1 0 0; 0 1 0];
D = [0; 0];
sys1 = ss(A, B, C, D, ...
'StateName', {'S1', 'S2', 'S3'}, ...
'OutputName', {'O1', 'O2'});
sys2_C = [1 0 0];
sys2_D = 0;
sys2 = sys1;
%sys2.C = sys2_C;
% Error: The "C" and "D" matrices must have the same number of rows.
sys2 = ss(A, B, sys2_C, sys2_D, sys1);
% Error: Property "OutputName" must specify one name per output channel.
Is there an elegant way to create sys2 while keeping the properties (such as StateName) of sys1?
0 Commenti
Risposta accettata
Jesús Zambrano
il 26 Mag 2021
What about:
sys2 = ss(A, B, sys2_C, sys2_D, 'StateName', sys1.StateName)
2 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Robust Control Toolbox in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!