calculate output(y) from a state space model
조회 수: 16 (최근 30일)
이전 댓글 표시
I have defined a first order system in state space. How can I calculate Y matrix, if X matrix known
X'=Ax+Bu; Y=Cx;
I attempted to convert the system to a transfer function using tf command. Then can calculate output by y= tf * u The output matrix appears to be in tf data type. I would like to have y in the same data type as x. (full m file attached, following code is an extract of the state space portion)
%Filter Parameters
Lf= 8e-3; % Inductance for output filter
Cf= 400e-6; % Capacitance for output filter
% state space equations for LC filter
A=[zeros(3,3) eye(3)/(3*Cf) -eye(3)/(3*Cf); -eye(3)/Lf zeros(3,3) zeros(3,3);
eye(3,3)/Lload zeros(3,3) -eye(3)*Rload/Lload]; % systemmatrix
B=[zeros(3,3); eye(3)/Lf; zeros(3,3)]; % coefficient for thecontrol variable u
C=eye(9); % coefficient for the output y
D=[zeros(9,3)]; % coefficient for the output y
Ks = 1/3*[-1 0 1; 1 -1 0; 0 1 -1]; % Conversion matrix to transform [iiAB iiBC iiCA] to [iiA iiB iiC]
%Transfer function for inverter output stage
sys= ss(A,B,C,D);
H=tf(sys);
% calculating filtered output
Y=H(1,1) * V_AB;
댓글 수: 0
채택된 답변
Honglei Chen
2013년 12월 30일
Once you get the model, sys, you can use lsim to simulate the system behavior. You can find details here
HTH
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Pulsed Waveforms에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!