Generate pole zero plot from measured impulse response
17 次查看(过去 30 天)
显示 更早的评论
Hello everybody,
I want to generate a pole zero plot from a measured impulse response (imported via audioread). I only find examples to generate pole zero plots for very simple filters with known differential equations. Maybe you can point me in the right direction or give an example.
Thank you very much in advance!
0 个评论
回答(1 个)
Sudheer Nuggehalli
2018-1-2
编辑:Sudheer Nuggehalli
2018-1-2
One possible way to do this is to use the "pzmap" function on the measured impulse response data imported via "audioread". However, since "pzmap" requires a Dynamic System Model, sys, as an input, the measured impulse response data needs to be converted into a Dynamic System Model object. One way to do this is to use the "iddata" and "tfest" functions. Below is some code that can get you started:
[y,Fs] = audioread(filename);
data = iddata(y,[],Ts); % where Ts = 1/Fs
sys = tfest(data,np); % where np is the number of poles
pzmap(sys)
Refer to the documentation links below for more information about each of these functions and examples of how they are used:
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Transfer Function Models 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!