Phase-plot when using freqz

Hi all.
Why does these two methods not create the same plot?
figure()
G3=[0.0178750173569734]
num3=[1,-2.22044604925031e-16,-1.00000000000000]
den3=[1,-1.96419015432470,0.964249965286053]
freqz(G3*num3,den3,1000,44100);
ax = findall(gcf, 'Type', 'axes');
set(ax, 'XLim', [0 500]), ylim([-15 1])
Amplitude-plot is the same, but phae plot differ from this one:
[H,w]=freqz(G3*num3,den3,1000,44100);
figure(), subplot(2,1,1)
plot(w,20*log10(abs(H)))
title('Frekvenskarakteristik')
xlabel('Frekvens [Hz]'), ylabel('Amplitude [dB]')
axis([0 500 -15 1]), grid
subplot(2,1,2)
plot(w,angle(H))
xlabel('Frekvens [Hz]'), ylabel('Fase')
axis([0 500 -100 50]), grid

 採用された回答

Vieniava
Vieniava 2011 年 3 月 25 日

1 投票

It is a matter of expressing angle in degrees or radians. Replace:
plot(w,angle(H))
with
plot(w, 360/(2*pi)*angle(H))

1 件のコメント

Alex
Alex 2011 年 3 月 25 日
Thanks!!

サインインしてコメントする。

その他の回答 (1 件)

Hassan Naseri
Hassan Naseri 2011 年 4 月 1 日

3 投票

You still need to unwrap the result to be the same as freqz output:
unwrap(angle(h)
or if you want it in degrees:
360/(2*pi)*unwrap(angle(H))

1 件のコメント

gbernardi
gbernardi 2012 年 11 月 8 日
This topic could be dead now, but I'd still like to point out that in some cases I cannot obtain the same result of freqz, although I perform both rad2deg conversion and phase unwrapping...
Has anybody experience this problem?

サインインしてコメントする。

カテゴリ

製品

タグ

質問済み:

2011 年 3 月 25 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by