freqs
아날로그 필터의 주파수 응답
설명
예제
전달 함수의 주파수 응답
전달 함수의 주파수 응답을 구하고 그래프로 나타냅니다.
a = [1 0.4 1]; b = [0.2 0.3 1]; w = logspace(-1,1); h = freqs(b,a,w); mag = abs(h); phase = angle(h); phasedeg = phase*180/pi; subplot(2,1,1) loglog(w,mag) grid on xlabel('Frequency (rad/s)') ylabel('Magnitude') subplot(2,1,2) semilogx(w,phasedeg) grid on xlabel('Frequency (rad/s)') ylabel('Phase (degrees)')
출력 인수 없이 freqs
를 호출하여 플롯을 생성할 수도 있습니다.
figure freqs(b,a,w)
아날로그 IIR 저역통과 필터 비교
2GHz의 차단 주파수를 갖는 5차 아날로그 버터워스 저역통과 필터를 설계합니다. 를 곱하여 주파수를 초당 라디안 값으로 변환합니다. 4096개 점에서 필터의 주파수 응답을 계산합니다.
n = 5;
fc = 2e9;
[zb,pb,kb] = butter(n,2*pi*fc,"s");
[bb,ab] = zp2tf(zb,pb,kb);
[hb,wb] = freqs(bb,ab,4096);
동일한 경계 주파수와 3dB의 통과대역 리플을 갖는 5차 체비쇼프 유형 I 필터를 설계합니다. 필터의 주파수 응답을 계산합니다.
[z1,p1,k1] = cheby1(n,3,2*pi*fc,"s");
[b1,a1] = zp2tf(z1,p1,k1);
[h1,w1] = freqs(b1,a1,4096);
동일한 경계 주파수와 30dB의 저지대역 감쇠량을 갖는 5차 체비쇼프 유형 II 필터를 설계합니다. 필터의 주파수 응답을 계산합니다.
[z2,p2,k2] = cheby2(n,30,2*pi*fc,"s");
[b2,a2] = zp2tf(z2,p2,k2);
[h2,w2] = freqs(b2,a2,4096);
동일한 경계 주파수, 3dB의 통과대역 리플, 30dB의 저지대역 감쇠량을 갖는 5차 타원 필터를 설계합니다. 필터의 주파수 응답을 계산합니다.
[ze,pe,ke] = ellip(n,3,30,2*pi*fc,"s");
[be,ae] = zp2tf(ze,pe,ke);
[he,we] = freqs(be,ae,4096);
동일한 경계 주파수를 갖는 5차 베셀 필터를 설계합니다. 필터의 주파수 응답을 계산합니다.
[zf,pf,kf] = besself(n,2*pi*fc); [bf,af] = zp2tf(zf,pf,kf); [hf,wf] = freqs(bf,af,4096);
감쇠량(단위: 데시벨)을 플로팅합니다. 주파수를 기가헤르츠 단위로 표현합니다. 필터를 비교합니다.
plot([wb w1 w2 we wf]/(2e9*pi), ... mag2db(abs([hb h1 h2 he hf]))) axis([0 5 -45 5]) grid xlabel("Frequency (GHz)") ylabel("Attenuation (dB)") legend(["butter" "cheby1" "cheby2" "ellip" "besself"])
버터워스 필터와 체비쇼프 유형 II 필터는 평탄한 통과대역과 넓은 천이 대역을 가집니다. 체비쇼프 유형 I 필터와 타원 필터는 더 빨리 롤오프되지만 통과대역 리플을 가집니다. 체비쇼프 유형 II 설계 함수에 대한 주파수 입력값은 통과대역의 끝값이 아니라 저지대역의 시작값을 설정합니다. 베셀 필터는 통과대역에서 거의 일정한 군지연을 가집니다.
저역통과 아날로그 베셀 필터의 주파수 응답
최대 rad/s까지 군지연이 거의 일정한 5차 아날로그 저역통과 베셀 필터를 설계합니다. freqs
를 사용하여 필터의 주파수 응답을 플로팅합니다.
[b,a] = besself(5,10000); % Bessel analog filter design freqs(b,a) % Plot frequency response
입력 인수
b
, a
— 전달 함수 계수
벡터
전달 함수 계수로, 벡터로 지정됩니다.
예: [b,a] = butter(5,50,'s')
는 50 rad/second의 차단 주파수를 갖는 5차 버터워스 필터를 지정합니다.
데이터형: single
| double
w
— 각주파수
양의 실수형 벡터
각주파수로, rad/second를 단위로 하는 양의 실수형 벡터로 지정됩니다.
예: 2*pi*logspace(6,9)
는 1 MHz(2π × 106 rad/second)부터 1GHz(2π × 109 rad/second) 범위 내에 50개의 로그 간격 각주파수를 지정합니다.
데이터형: single
| double
n
— 계산 지점 개수
200 (디폴트 값) | 양의 정수 스칼라
계산 지점 개수로, 양의 정수 스칼라로 지정됩니다.
데이터형: single
| double
알고리즘
freqs
는 b
및 a
에 의해 지정되는 아날로그 필터의 복소 주파수 응답을 반환합니다. 이 함수는 주파수 지점 s = jω에서의 허수축을 따라 라플라스 변환 다항식의 비율을 계산합니다.
s = 1j*w; h = polyval(b,s)./polyval(a,s);
버전 내역
R2006a 이전에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)