GNU Radio 3.7.2 C++ API
|
Finite Impulse Response (FIR) filter design functions. More...
#include <gnuradio/filter/firdes.h>
Public Types | |
enum | win_type { WIN_NONE = -1, WIN_HAMMING = 0, WIN_HANN = 1, WIN_BLACKMAN = 2, WIN_RECTANGULAR = 3, WIN_KAISER = 4, WIN_BLACKMAN_hARRIS = 5, WIN_BLACKMAN_HARRIS = 5, WIN_BARTLETT = 6, WIN_FLATTOP = 7 } |
Static Public Member Functions | |
static std::vector< float > | window (win_type type, int ntaps, double beta) |
static std::vector< float > | low_pass (double gain, double sampling_freq, double cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a low-pass FIR filter More... | |
static std::vector< float > | low_pass_2 (double gain, double sampling_freq, double cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a low-pass FIR filter More... | |
static std::vector< float > | high_pass (double gain, double sampling_freq, double cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a high-pass FIR filter More... | |
static std::vector< float > | high_pass_2 (double gain, double sampling_freq, double cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a high-pass FIR filter More... | |
static std::vector< float > | band_pass (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a band-pass FIR filter More... | |
static std::vector< float > | band_pass_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a band-pass FIR filter More... | |
static std::vector< gr_complex > | complex_band_pass (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a complex band-pass FIR filter More... | |
static std::vector< gr_complex > | complex_band_pass_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a complex band-pass FIR filter More... | |
static std::vector< float > | band_reject (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a band-reject FIR filter More... | |
static std::vector< float > | band_reject_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, win_type window=WIN_HAMMING, double beta=6.76) |
use "window method" to design a band-reject FIR filter More... | |
static std::vector< float > | hilbert (unsigned int ntaps=19, win_type windowtype=WIN_RECTANGULAR, double beta=6.76) |
design a Hilbert Transform Filter More... | |
static std::vector< float > | root_raised_cosine (double gain, double sampling_freq, double symbol_rate, double alpha, int ntaps) |
design a Root Cosine FIR Filter (do we need a window?) More... | |
static std::vector< float > | gaussian (double gain, double spb, double bt, int ntaps) |
design a Gaussian filter More... | |
Finite Impulse Response (FIR) filter design functions.
|
static |
use "window method" to design a band-pass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
use "window method" to design a band-pass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
out of band attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow –> more taps More attenuation –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
use "window method" to design a band-reject FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
use "window method" to design a band-reject FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
out of band attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow –> more taps More attenuation –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
use "window method" to design a complex band-pass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
use "window method" to design a complex band-pass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) low_cutoff_freq:
center of transition band (Hz) high_cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
out of band attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow –> more taps More attenuation –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
design a Gaussian filter
gain:
overall gain of filter (typically 1.0) symbols
per bit: symbol rate, must be a factor of sample rate ntaps:
number of taps
|
static |
use "window method" to design a high-pass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
use "window method" to design a high-pass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
out of band attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow –> more taps More attenuation –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
design a Hilbert Transform Filter
ntaps:
Number of taps, must be odd window_type:
What kind of window to use beta:
Only used for Kaiser
|
static |
use "window method" to design a low-pass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). The normalized width of the transition band is what sets the number of taps required. Narrow –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
use "window method" to design a low-pass FIR filter
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) cutoff_freq:
center of transition band (Hz) transition_width:
width of transition band (Hz). attenuation_dB
required stopband attenuation The normalized width of the transition band and the required stop band attenuation is what sets the number of taps required. Narrow –> more taps More attenuatin –> more taps window_type:
What kind of window to use. Determines maximum attenuation and passband ripple. beta:
parameter for Kaiser window
|
static |
design a Root Cosine FIR Filter (do we need a window?)
gain:
overall gain of filter (typically 1.0) sampling_freq:
sampling freq (Hz) symbol
rate: symbol rate, must be a factor of sample rate alpha:
excess bandwidth factor ntaps:
number of taps
|
static |