周波数応答など、各応答値を求める関数を教えてください。
11 views (last 30 days)
Show older comments
MathWorks Support Team
on 24 Jan 2018
Edited: MathWorks Support Team
on 17 Nov 2021
下記の各応答値を求める関数を教えてください。
1.周波数応答(振幅、位相応答)
2.インパルス応答
3.ステップ応答
4.群遅延
5.位相遅延
6.極零(ポール)
Accepted Answer
MathWorks Support Team
on 31 Aug 2021
Edited: MathWorks Support Team
on 17 Nov 2021
それぞれ関数が提供されており、求めることができます。
1.周波数応答(振幅・位相)
freqz 関数
angle 関数(位相角)
https://www.mathworks.com/help/matlab/ref/angle.html
2.インパルス応答
impz 関数
3.ステップ応答
stepz 関数
4.群遅延
grpdely 関数
5.位相遅延
phasedelay 関数
6.極零(ポール)
zplane 関数
以下、プログラム例 (Fs: サンプリング周波数 = 1000Hz)です。
[b1,a1]=butter(8,0.6); % Lowpass
[b2,a2]=butter(8,0.4,'high');% Highpass
h1=dfilt.df2t(b1,a1);
h2=dfilt.df2t(b2,a2);
hcas=dfilt.cascade(h1,h2) % Bandpass with passband 0.4-0.6
%1.周波数応答
[FH,F] = freqz(hcas,1024,1000);
% 振幅
Mg = 20*log10(abs(FH)); % dB 単位
% 位相応答
PR = angle(FH)*180/pi; % 角度
%2.インパルス応答
[IH,IT] = impz(hcas,100,1000);
%3.ステップ応答
[SH,ST] = stepz(hcas,100,1000);
%4.群遅延
[Gd,GF] = grpdelay(hcas,1024,1000);
%5.位相遅延
[phi,pf] = phasedelay(hcas,1024,1000);
%6.極零(ポール)
[hz,hp,hi] = zplane(hcas);
0 Comments
More Answers (0)
See Also
Categories
Find more on Pole and Zero Locations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!