dsp.ParallelFilter
Description
The dsp.ParallelFilter object is a parallel sum filter structure where
each branch is a filter System object™ or a scalar value. The object passes the input signal through each of its
branches and sums the filtered output from each branch.

To see a list of filter objects that you can add as branches to the parallel filter stack, run this command in the MATLAB® command prompt.
dsp.ParallelFilter.helpSupportedSystemObjects
To create a parallel sum filter structure:
Create the
dsp.ParallelFilterobject 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?
Alternatively, you can use the parallel function to
create a dsp.ParallelFilter object. However, when you use the
parallel function, you must specify at least one branch to be a filter
object.
Using the generateFilteringCode function, you can generate a MATLAB function script from the parallel filter object, and call that function to
filter a signal. The generated function supports C/C++ code generation if the filters in each
branch support code generation.
Creation
Syntax
Description
returns a parallel
filter System object that has a single branch of pf = dsp.ParallelFilterdsp.FIRFilter
System object with default properties.
returns a System object with parallel branches of filters. The first branch is set to
pf = dsp.ParallelFilter(filt1,filt2,...,filtn)filt1, the second branch is set to filt2, and so
on. Each branch can be a filter System object or a scalar gain value.
For example, create a parallel filter that includes a lowpass filter, a highpass filter, and a gain branch.
lpFilt = dsp.LowpassFilter(StopbandFrequency=15000, ... PassbandFrequency=12000); hpFilt = dsp.HighpassFilter(StopbandFrequency=5000, ... PassbandFrequency=8000); gain = 2; pf = dsp.ParallelFilter(lpFilt,hpFilt,gain)
pf =
dsp.ParallelFilter with properties:
Branch1: [1×1 dsp.LowpassFilter]
Branch2: [1×1 dsp.HighpassFilter]
Branch3: 2
CloneBranches: true
sets the pf = dsp.ParallelFilter(___, CloneBranches=flag)CloneBranches property to true or
false. Use this syntax in combination with any of the input arguments
in previous syntaxes.
specifies the input sample rate as one of these:pf = dsp.ParallelFilter(___,InputSampleRate=Value)
Positive real scalar — The input sample rate of the parallel filter is a positive real scalar.
"normalized"— The input sample rate of the parallel filter is in normalized frequency units regardless of the input sample rate of the individual filter branches."auto"— The input sample rate of the parallel filter is determined from the input sample rate of the individual filter branches as per these conditions:If all the branches have a normalized frequency, then the parallel filter has a normalized frequency.
If more than one branch has an absolute sample rate, then the sample rate of these branches must be consistent with the rate conversion ratio of the segment connecting them. The sample rate of the overall parallel filter is in absolute units.
If at least one branch has an absolute sample rate, then the sample rate of the overall parallel filter is in absolute units.
(since R2026a)
Properties
Usage
Syntax
Description
runs the
input y = pf(x)x through each branch of the parallel filter
pf, sums the outputs from each branch, and returns the resultant output
y. All branches of the parallel filter must support the size, data
type, and complexity of the input signal.
This object supports variable-size signals if all the filter branches within the object support variable-size signals.
Input Arguments
Output Arguments
Object Functions
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)

