Filter löschen
Filter löschen

3db bandwidth of a low pass filter

14 Ansichten (letzte 30 Tage)
Ratna
Ratna am 22 Sep. 2011
Hi, I need to generate a low pass filter and find its 3db values. Do we have any matlab command to find 3db bandwidth? If so, can I plot it?

Akzeptierte Antwort

Wayne King
Wayne King am 22 Sep. 2011
Another way is to get the magnitude response using freqz()
[B,A] = butter(10,0.1);
[H,W] = freqz(B,A);
magresp = 20*log10(abs(H));
maxresp = max(magresp);
[I,~] = find(magresp < maxresp-3,3,'first');
fprintf('3-dB point is %2.3f*pi radians/sample\n', W(I(1))/pi)
Wayne
  1 Kommentar
Vivek Bhadouria
Vivek Bhadouria am 22 Sep. 2011
freqz is a nice function to see the response of the filter.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Wayne King
Wayne King am 22 Sep. 2011
Hi, one way is to use an IIR design in MATLAB which uses the 3-dB point directly in the design of the filter. (FIR filters use 6-dB points).
For example:
d = fdesign.lowpass('N,F3dB',10,0.1);
Hd = design(d,'butter');
fvtool(Hd);
If you have the DSP System Toolbox installed, you are able to call the measure() method on Hd
measure(Hd)
Hope that helps,
Wayne

Satish reddy Kotamreddy
Satish reddy Kotamreddy am 6 Dez. 2017
Hi i need matlab script for operational trans conductance amplifier lowapass with 3db frequency of 1mhz

Community Treasure Hunt

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

Start Hunting!

Translated by