If the desired interpolation points are not uniformly spaced
between

Inside Collection (Course): Intro to Digital Signal Processing

Summary: (Blank Abstract)

If the desired interpolation points are not uniformly spaced
between

In the following example, we design a length 19 Type I FIR.
Then

`C = cos(wk*[0:M]);`

where `wk`

is a column vector containing
the frequency points. To solve the linear system of
equations, we can use the Matlab backslash command.
```
N = 19;
M = (N-1)/2;
wk = [0 .1 .2 .3 .5 .6 .7 .8 .9 1]'*pi;
Ak = [1 1 1 1 0 0 0 0 0 0]';
C = cos(wk*[0:M]);
a = C/Ak;
h = (1/2)*[a([M:-1:1]+1); 2*a([0]+1); a(1:M]+1)];
[A,w] = firamp(h,1);
plot(w/pi,A,wk/pi,Ak,'o')
title('A(\omega)')
xlabel('\omega/\pi')
```

The general interpolation problem is much more flexible than the uniform interpolation problem that the DFT solves. For example, by leaving a gap between the pass-band and stop-band as in this example, the ripple near the band edge is reduced (but the transition between the pass- and stop-bands is not as sharp). The general interpolation problem also arises as a subproblem in the design of optimal minimax (or Chebyshev) FIR filters.

FIR digital filters have several desirable properties.

- They can have exactly linear phase.
- They can not be unstable.
- There are several very effective methods for designing linear-phase FIR digital filters.

- Linear-phase filters can have long delay between input and output.
- If the phase need not be linear, then IIR filters can be more efficient.

- « Previous module in collection Design of Linear-Phase FIR Filters by DFT-Based Interpolation
- Collection home: Intro to Digital Signal Processing
- Next module in collection » Linear-Phase FIR Filters: Amplitude Formulas