gr::filter::firdes
gnuradio/filter/firdes.h
std::vector< float > static std::vector< float > gr::filter::firdes::window (fft::window::win_type type, int ntaps, double param) window gr::filter::firdes::window fft::window::win_type type int ntaps double param band_pass band_pass_2 band_reject band_reject_2 complex_band_pass complex_band_pass_2 complex_band_reject complex_band_reject_2 high_pass high_pass_2 low_pass low_pass_2
std::vector< float > static std::vector< float > gr::filter::firdes::low_pass (double gain, double sampling_freq, double cutoff_freq, double transition_width, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) low_pass gr::filter::firdes::low_pass double gain double sampling_freq double cutoff_freq double transition_width fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a low-pass FIR filter. The normalized width of the transition band is what sets the number of taps required. Narrow --> more taps. Window type determines maximum attenuation and passband ripple.

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)

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< float > static std::vector< float > gr::filter::firdes::low_pass_2 (double gain, double sampling_freq, double cutoff_freq, double transition_width, double attenuation_dB, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) low_pass_2 gr::filter::firdes::low_pass_2 double gain double sampling_freq double cutoff_freq double transition_width double attenuation_dB fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a low-pass FIR filter. 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. The window type determines maximum attenuation and passband ripple.

gain

overall gain of filter (typically 1.0)

sampling_freq

sampling freq (Hz)

cutoff_freq

beginning of transition band (Hz)

transition_width

width of transition band (Hz)

attenuation_dB

required stopband attenuation

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< float > static std::vector< float > gr::filter::firdes::high_pass (double gain, double sampling_freq, double cutoff_freq, double transition_width, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) high_pass gr::filter::firdes::high_pass double gain double sampling_freq double cutoff_freq double transition_width fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a high-pass FIR filter. The normalized width of the transition band is what sets the number of taps required. Narrow --> more taps. The window determines maximum attenuation and passband ripple.

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)

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< float > static std::vector< float > gr::filter::firdes::high_pass_2 (double gain, double sampling_freq, double cutoff_freq, double transition_width, double attenuation_dB, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) high_pass_2 gr::filter::firdes::high_pass_2 double gain double sampling_freq double cutoff_freq double transition_width double attenuation_dB fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a high-pass FIR filter. 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. The window determines maximum attenuation and passband ripple.

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

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< float > static std::vector< float > gr::filter::firdes::band_pass (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) band_pass gr::filter::firdes::band_pass double gain double sampling_freq double low_cutoff_freq double high_cutoff_freq double transition_width fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a band-pass FIR filter. The normalized width of the transition band is what sets the number of taps required. Narrow --> more taps. The window determines maximum attenuation and passband ripple.

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).

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< float > static std::vector< float > gr::filter::firdes::band_pass_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) band_pass_2 gr::filter::firdes::band_pass_2 double gain double sampling_freq double low_cutoff_freq double high_cutoff_freq double transition_width double attenuation_dB fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a band-pass FIR filter. 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 determines maximum attenuation and passband ripple.

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

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< gr_complex > static std::vector< gr_complex > gr::filter::firdes::complex_band_reject (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) complex_band_reject gr::filter::firdes::complex_band_reject double gain double sampling_freq double low_cutoff_freq double high_cutoff_freq double transition_width fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use the "window method" to design a complex band-reject FIR filter. The normalized width of the transition band is what sets the number of taps required. Narrow --> more taps. The window type determines maximum attenuation and passband ripple.

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)

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< gr_complex > static std::vector< gr_complex > gr::filter::firdes::complex_band_reject_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) complex_band_reject_2 gr::filter::firdes::complex_band_reject_2 double gain double sampling_freq double low_cutoff_freq double high_cutoff_freq double transition_width double attenuation_dB fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a complex band-reject FIR filter. 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 determines maximum attenuation and passband ripple.

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

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< gr_complex > static std::vector< gr_complex > gr::filter::firdes::complex_band_pass (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) complex_band_pass gr::filter::firdes::complex_band_pass double gain double sampling_freq double low_cutoff_freq double high_cutoff_freq double transition_width fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use the "window method" to design a complex band-pass FIR filter. The normalized width of the transition band is what sets the number of taps required. Narrow --> more taps. The window type determines maximum attenuation and passband ripple.

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)

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< gr_complex > static std::vector< gr_complex > gr::filter::firdes::complex_band_pass_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) complex_band_pass_2 gr::filter::firdes::complex_band_pass_2 double gain double sampling_freq double low_cutoff_freq double high_cutoff_freq double transition_width double attenuation_dB fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a complex band-pass FIR filter. 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 determines maximum attenuation and passband ripple.

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

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< float > static std::vector< float > gr::filter::firdes::band_reject (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) band_reject gr::filter::firdes::band_reject double gain double sampling_freq double low_cutoff_freq double high_cutoff_freq double transition_width fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a band-reject FIR filter. The normalized width of the transition band is what sets the number of taps required. Narrow --> more taps. Window type determines maximum attenuation and passband ripple.

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)

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< float > static std::vector< float > gr::filter::firdes::band_reject_2 (double gain, double sampling_freq, double low_cutoff_freq, double high_cutoff_freq, double transition_width, double attenuation_dB, fft::window::win_type window=fft::window::win_type::WIN_HAMMING, double param=6.76) band_reject_2 gr::filter::firdes::band_reject_2 double gain double sampling_freq double low_cutoff_freq double high_cutoff_freq double transition_width double attenuation_dB fft::window::win_type window fft::window::win_type::WIN_HAMMING double param 6.76

Use "window method" to design a band-reject FIR filter. 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 determines maximum attenuation and passband ripple.

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

window

one of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_HAMMING
window
std::vector< float > static std::vector< float > gr::filter::firdes::hilbert (unsigned int ntaps=19, fft::window::win_type windowtype=fft::window::win_type::WIN_RECTANGULAR, double param=6.76) hilbert gr::filter::firdes::hilbert unsigned int ntaps 19 fft::window::win_type windowtype fft::window::win_type::WIN_RECTANGULAR double param 6.76

design a Hilbert Transform Filter

ntaps

number of taps, must be odd

windowtype

one kind of fft::window::win_type

param

parameter for Kaiser, Exp., Gaussian, Tukey windows

gr::fft::window::WIN_RECTANGULAR
std::vector< float > static std::vector< float > gr::filter::firdes::root_raised_cosine (double gain, double sampling_freq, double symbol_rate, double alpha, int ntaps) root_raised_cosine gr::filter::firdes::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?)

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

std::vector< float > static std::vector< float > gr::filter::firdes::gaussian (double gain, double spb, double bt, int ntaps) gaussian gr::filter::firdes::gaussian double gain double spb double bt int ntaps

design a Gaussian filter

gain

overall gain of filter (typically 1.0)

spb

symbol rate, must be a factor of sample rate

bt

bandwidth to bitrate ratio

ntaps

number of taps

double static double gr::filter::firdes::bessi0 (double x) bessi0 gr::filter::firdes::bessi0 double x
void static void gr::filter::firdes::sanity_check_1f (double sampling_freq, double f1, double transition_width) sanity_check_1f gr::filter::firdes::sanity_check_1f double sampling_freq double f1 double transition_width
void static void gr::filter::firdes::sanity_check_2f (double sampling_freq, double f1, double f2, double transition_width) sanity_check_2f gr::filter::firdes::sanity_check_2f double sampling_freq double f1 double f2 double transition_width
void static void gr::filter::firdes::sanity_check_2f_c (double sampling_freq, double f1, double f2, double transition_width) sanity_check_2f_c gr::filter::firdes::sanity_check_2f_c double sampling_freq double f1 double f2 double transition_width
int static int gr::filter::firdes::compute_ntaps (double sampling_freq, double transition_width, fft::window::win_type window_type, double param) compute_ntaps gr::filter::firdes::compute_ntaps double sampling_freq double transition_width fft::window::win_type window_type double param
int static int gr::filter::firdes::compute_ntaps_windes (double sampling_freq, double transition_width, double attenuation_dB) compute_ntaps_windes gr::filter::firdes::compute_ntaps_windes double sampling_freq double transition_width double attenuation_dB

Finite Impulse Response (FIR) filter design functions.

- gr::filter::firdes
  band_pass
- gr::filter::firdes
  band_pass_2
- gr::filter::firdes
  band_reject
- gr::filter::firdes
  band_reject_2
- gr::filter::firdes
  bessi0
- gr::filter::firdes
  complex_band_pass
- gr::filter::firdes
  complex_band_pass_2
- gr::filter::firdes
  complex_band_reject
- gr::filter::firdes
  complex_band_reject_2
- gr::filter::firdes
  compute_ntaps
- gr::filter::firdes
  compute_ntaps_windes
- gr::filter::firdes
  gaussian
- gr::filter::firdes
  high_pass
- gr::filter::firdes
  high_pass_2
- gr::filter::firdes
  hilbert
- gr::filter::firdes
  low_pass
- gr::filter::firdes
  low_pass_2
- gr::filter::firdes
  root_raised_cosine
- gr::filter::firdes
  sanity_check_1f
- gr::filter::firdes
  sanity_check_2f
- gr::filter::firdes
  sanity_check_2f_c
- gr::filter::firdes
  window