Extract a frequency subband using a one-sided (complex) bandpass decimator
The dsp.ComplexBandpassDecimator
System object™ extracts a specific sub-band of frequencies using a one-sided, multistage,
complex bandpass decimator. The object determines the bandwidth of interest using the
specified CenterFrequency
, DecimationFactor
and
Bandwidth
values.
To extract a frequency subband using a complex bandpass decimator:
Create the dsp.ComplexBandpassDecimator
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?.
creates a System object that filters each channel of the input over time using a one-sided,
multistage, complex bandpass decimation filter. The object determines the bandwidth of
interest using the default center frequency, decimation factor, and bandwidth
values.bpdecim
= dsp.ComplexBandpassDecimator
creates a complex bandpass decimator object with the bpdecim
= dsp.ComplexBandpassDecimator(d
)DecimationFactor
property set to d
.
creates a complex bandpass decimator object with the bpdecim
= dsp.ComplexBandpassDecimator(d
,Fc
)DecimationFactor
property set to d
, and the CenterFrequency
property set to Fc
.
creates a complex bandpass decimator object with the bpdecim
= dsp.ComplexBandpassDecimator(d
,Fc
,Fs
)DecimationFactor
property set to d
, the CenterFrequency
property
set to Fc
, and the SampleRate
property set to
Fs
.
dsp.ComplexBandpassDecimator(48e3/1e3,2e3,48e3);
creates a complex bandpass decimator object with each specified property set to the
specified value. Enclose each property name in quotes. You can use this syntax with any
previous input argument combinations.bpdecim
= dsp.ComplexBandpassDecimator(Name,Value
)
dsp.ComplexBandpassDecimator(48e3/1e3,2e3,48e3,'CenterFrequency',1e3);
filters
the real or complex input signal, y
= bpdecim(x
)x
, to produce the output,
y
. The output contains the subband of frequencies specified by the
System object properties. The System object filters each channel of the input signal independently over time. The frame
size (first dimension) of x
must be a multiple of 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)
The complex bandpass decimator is designed by applying a complex frequency shift transformation on a lowpass prototype filter. The lowpass prototype in this case is a multirate, multistage finite impulse response (FIR) filter. The desired frequency shift applies only to the first stage. Subsequent stages scale the desired frequency shift by their respective cumulative decimation factors. For details, see Complex Bandpass Filter Design and Zoom FFT.