Halfband decimator

The `dsp.FIRHalfbandDecimator`

System
object™ performs an efficient polyphase decimation of the input signal by a
factor of two. You can use `dsp.FIRHalfbandDecimator`

to implement the
analysis portion of a two-band filter bank to filter a signal into lowpass and highpass
subbands. `dsp.FIRHalfbandDecimator`

uses an FIR equiripple design to
construct the halfband filters and a polyphase implementation to filter the
input.

To filter and downsample your data:

Create the

`dsp.FIRHalfbandDecimator`

object and set its properties.Call the object with arguments, as if it were a function.

To learn more about how System objects work, see What Are System Objects? (MATLAB).

returns a halfband decimator, `firhalfbanddecim`

= dsp.FIRHalfbandDecimator`firhalfbanddecim`

, with the
default settings. Under the default settings, the System
object filters and downsamples the input data with a halfband frequency
of `11025`

Hz, a transition width of `4.1`

kHz, and a stopband attenuation of `80`

dB.

returns a halfband decimator, with additional properties specified by one or
more `firhalfbanddecim`

= dsp.FIRHalfbandDecimator(`Name,Value`

)`Name,Value`

pair arguments.

```
firhalfbanddecim =
dsp.FIRHalfbandDecimator('Specification','Filter order and stopband
attenuation')
```

creates an FIR halfband decimator object with filter
order set to 52 and stopband attenuation set to 80 dB.`[`

computes the `ylow`

,`yhigh`

] = firhalfbanddecim(`x`

)`ylow`

and `yhigh`

, of the
analysis filter bank, `firhalfbanddecim`

for input
`x`

. A *Ki*-by-*N*
input matrix is treated as *N* independent channels. The
System
object generates two power-complementary output signals by adding and
subtracting the two polyphase branch outputs respectively.
`ylow`

and `yhigh`

are of the same
size (*Ko*-by-*N*) and data type.
*Ko* = *Ki*/2, where `2`

is the decimation factor.

To use an object function, specify the
System
object as the first input argument. For
example, to release system resources of a System
object named `obj`

, use
this syntax:

release(obj)

[1] Harris, F.J. *Multirate Signal Processing for
Communication Systems*, Prentice Hall, 2004, pp. 208–209.

`dsp.Channelizer`

|`dsp.DyadicAnalysisFilterBank`

|`dsp.FIRHalfbandInterpolator`

|`dsp.IIRHalfbandDecimator`