DFiltNyquist
DFiltNyquist designs Nyquist (M'th band) filters
DFiltNyquist designs linear phase FIR Nyquist filters. Nyquist filters are filters with an impulse response which as regular zero crossings. For an N coefficient filter, the center coefficient is one, and coefficients displaced from the center by a multiple of M are zero.
Nyquist filters are essentially the same as interpolating filters or Mth band filters. In DFiltNyquist the filter is designed based on stopband performance.
Design Strategy:
The design strategy decomposes the filter H(z) as a product of two filters
H(z) = H0(z) H1(z).
The filter H1(z) controls the stopband. The filter H0(z) inserts the appropriate zero crossings into the response. The design is iterated as described in [1].
This program uses the routine DFiltFIR to design H1(z). This routine and other auxiliary routines are part of the DFiltFIR Matlab package.
Design Example:
Consider a Nyquist filter with 35 coefficients, and zero-crossing interval M=3. The sampling frequency is 16 kHz. The stopband starts at 3000 Hz. The stopband weight varies from 1 to 10.
B.Freq = [3000 8000];
B.Weight = [1, 10];
h = DFiltNyquist(3, 35, B, 16000);
The test directory includes a routine which verifies correct operation on some test cases.
1. R. P. Ramachandran and P. Kabal, “Minimax Design of Factorable Nyquist Filters for Data Transmission”, Signal Processing, vol. 18, no. 3, pp. 327–339, Nov. 1989 (available on-line at http://www.ece.mcgill.ca/~pkabal/papers/).
Cite As
Peter Kabal (2024). DFiltNyquist (https://www.mathworks.com/matlabcentral/fileexchange/24664-dfiltnyquist), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- Signal Processing > Signal Processing Toolbox > Digital and Analog Filters > Digital Filter Design > FIR Filter Design >
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.