How to convert filter object to state space?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I'm creating a filter object using
%B1(f) is my target transfer function
d_1a = fdesign.arbmagnphase('n,f,h',8,(0:0.1:30),double(B1(0:0.1:30)),60);
filtObj = design(d_1a,'iirls','SystemObject',true)
Then, I can use
freqz(filtObj)
to confirm it matches the target function. However, when I convert it to state space using
[A,B,C,D] = ss(filtObj);
sys_ss1 = ss(A,B,C,D);
Then I try to confirm the behavior of this system using
[H,wout] = freqresp(sys_ss1);
this output does not match my target transfer function. What am I missing here?
0 Kommentare
Akzeptierte Antwort
Robert U
am 29 Aug. 2022
Hi tfg250,
You missed to supply the sample frequency for your state space model. Converting the filter object for a time discrete system to state space requires to use a time-discrete state space model as well.
[A,B,C,D] = ss(filtObj);
sys_ss1 = ss(A,B,C,D,1/60);
Kind regards,
Robert
1 Kommentar
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Filter Analysis finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!