dsp.AllpoleFilter
IIR Filter with no zeros
Description
The dsp.AllpoleFilter
object filters each channel of the input using
allpole filter implementations.
To filter each channel of the input:
Create the
dsp.AllpoleFilter
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?
Creation
Description
returns an
allpole filter System object™, allpole
= dsp.AllpoleFilterallpole
, which independently filters each channel of
the input over successive calls to the algorithm. This System object uses a specified allpole filter implementation.
returns an allpole filter System object, allpole
= dsp.AllpoleFilter(Name,Value
)allpole
, with each property set to the specified
value.
Properties
Unless otherwise indicated, properties are nontunable, which means you cannot change their
values after calling the object. Objects lock when you call them, and the
release
function unlocks them.
If a property is tunable, you can change its value at any time.
For more information on changing property values, see System Design in MATLAB Using System Objects.
Structure
— Filter structure
Direct form
(default)  Direct form transposed
 Lattice AR
Specify the filter structure as one of  Direct form

Direct form transposed
 Lattice AR
. Analysis
methods are not supported for fixedpoint processing if the structure is Direct
form
or Direct form transposed
. This property is
nontunable.
Denominator
— Filter denominator coefficients
[1 0.1]
(default)  row vector
Specify the denominator coefficients as a numeric row vector.
Tunable: Yes
Dependencies
This property is applicable when the Structure property is set to one of
Direct form
 Direct form transposed
.
Data Types: single
 double
 int8
 int16
 int32
 int64
 uint8
 uint16
 uint32
 uint64
Complex Number Support: Yes
ReflectionCoefficients
— Lattice filter coefficients
[0.2 0.4]
(default)  row vector
Specify the lattice filter coefficients as a numeric row vector.
Tunable: Yes
Dependencies
This property is applicable when the Structure
property is
set to Lattice AR
.
Data Types: single
 double
 int8
 int16
 int32
 int64
 uint8
 uint16
 uint32
 uint64
Complex Number Support: Yes
InitialConditions
— Initial conditions for the filter states
0
(default)  scalar  vector  matrix
Specify the initial conditions of the filter states.
You can specify the initial conditions as a scalar, vector, or matrix. If you specify a scalar value, this System object initializes all delay elements in the filter to that value. You can also specify a vector whose length equals the number of delay elements in the filter. When you do so, each vector element specifies a unique initial condition for the corresponding delay element. The object applies the same vector of initial conditions to each channel of the input signal.
You can also specify a matrix with the same number of rows as the number of delay elements in the filter and one column for each channel of the input signal. In this case, each element specifies a unique initial condition for the corresponding delay element in the corresponding channel.
Tunable: Yes
Data Types: single
 double
 int8
 int16
 int32
 int64
 uint8
 uint16
 uint32
 uint64
Complex Number Support: Yes
CoefficientsDataType
— Denominator coefficients word and fractionlength designations
Same word length as input
(default)  Custom
Specify the denominator coefficients fixedpoint data type as one of Same
word length as input
 Custom
. This property is
nontunable.
ReflectionCoefficientsDataType
— Reflection coefficients word and fractionlength designations
Same word length as input
(default)  Custom
Specify the reflection coefficients fixedpoint data type as one of Same
word length as input
 Custom
. This property is
nontunable.
FixedPoint Properties
ProductDataType
— Product word and fractionlength designations
Full precision
(default)  Same as input
 Custom
Specify the product fixedpoint data type as one of  Full
precision
 Same as input
 Custom
. This property is nontunable.
AccumulatorDataType
— Accumulator word and fractionlength designations
Full precision
(default)  Same as input
 Same as product
 Custom
Specify the accumulator fixedpoint data type to one of  Full
precision
 Same as input
 Same as
product
 Custom
. This property is nontunable.
OutputDataType
— Output word and fractionlength designations
Same as input
(default)  Same as accumulator
 Custom
Specify the output fixedpoint data type as one of  Same as
accumulator
 Same as input
 Custom
. This property is nontunable.
StateDataType
— State word and fractionlength designations
Same as accumulator
(default)  Same as input
 Custom
Specify the state fixedpoint data type as one of  Same as
input
 Same as accumulator

Custom
. This property is nontunable.
CustomCoefficientsDataType
— Custom denominator word and fractionlengths
numerictype ([],16,15)
(default)  numerictype
Specify the denominator coefficients fixedpoint type as an autosigned numerictype
(FixedPoint Designer) object. This property is nontunable.
Dependencies
This property is applicable when the CoefficientsDataType
property is Custom
.
CustomReflectionCoefficientsDataType
— Custom reflection coefficients word and fractionlengths
numerictype ([],16,15)
(default)  numerictype
Specify the denominator coefficients fixedpoint type as an autosigned numerictype
(FixedPoint Designer) object. This property is nontunable.
Dependencies
This property is applicable when the
ReflectionCoefficientsDataType
property is
Custom
.
CustomProductDataType
— Custom Product word and fractionlengths
numerictype ([],32,30)
(default)  numerictype
Specify the product fixedpoint type as an autosigned scaled numerictype
(FixedPoint Designer) object. This property is nontunable.
Dependencies
This property applies when you set the ProductDataType
property to Custom
.
CustomAccumulatorDataType
— Custom accumulator word and fractionlengths
numerictype([],32,30)
(default)  numerictype
Specify the accumulator fixedpoint type as an autosigned scaled numerictype
(FixedPoint Designer) object. This property is nontunable.
Dependencies
This property applies when you set the AccumulatorDataType
property to Custom
.
CustomStateDataType
— Custom state word and fractionlengths
numerictype([],16,15)
(default)  numerictype
Specify the state fixedpoint type as an autosigned scaled numerictype
(FixedPoint Designer) object. This property is nontunable.
Dependencies
This property applies when you set the StateDataType
property to Custom
.
CustomOutputDataType
— Custom output word and fractionlengths
numerictype([],16,15)
(default)  numerictype
Specify the output fixedpoint type as an autosigned scaled numerictype
(FixedPoint Designer) object. This property is nontunable.
Dependencies
This property applies when you set the OutputDataType
property to Custom
.
Usage
Syntax
Description
Input Arguments
x
— Data input
vector  matrix
Data input, specified as a vector or a matrix. This object also accepts variablesize inputs. Once the object is locked, you can change the size of each input channel, but you cannot change the number of channels.
When the input data is of a fixedpoint type, it must be signed. The allpole filter object operates on each channel of the input signal independently over successive calls to the algorithm.
Data Types: single
 double
 int8
 int16
 int32
 uint8
 uint16
 uint32
 fi
Complex Number Support: Yes
Output Arguments
y
— Filtered output
vector  matrix
Filtered output, returned as a vector or a matrix. The size, data type, and complexity of the output signal matches that of the input signal.
Data Types: single
 double
 int8
 int16
 int32
 uint8
 uint16
 uint32
 fi
Complex Number Support: Yes
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)
Specific to dsp.AllpoleFilter
freqz  Frequency response of discretetime filter System object 
fvtool  Visualize frequency response of DSP filters 
impz  Impulse response of discretetime filter System object 
info  Information about filter System object 
coeffs  Returns the filter System object coefficients in a structure 
cost  Estimate cost of implementing filter System object 
grpdelay  Group delay response of discretetime filter System object 
phasez  Phase response of discretetime filter System object (unwrapped) 
Examples
Lowpass Filter a Waveform with Two Frequencies
Use an Allpole filter to apply a lowpass filter to a waveform with two sinusoidal frequencies.
t = (0:1000)./8e3; xin = sin(2*pi*1e3*t)+sin(2*pi*3e3*t); src = dsp.SignalSource(xin', 4); sink = dsp.SignalSink; allpole = dsp.AllpoleFilter; tt = (25:25)'; xsinc = 0.4*sinc(0.4*tt); asinc = lpc(xsinc,51); allpole.Denominator = asinc; sa = spectrumAnalyzer('SampleRate',8e3,... 'Method','welch',... 'PlotAsTwoSidedSpectrum',false,... 'OverlapPercent',80,'SpectrumUnits','dBW',... 'YLimits',[150 50]); while ~isDone(src) input = src(); filteredOutput = allpole(input); sink(filteredOutput); sa(filteredOutput) end
filteredResult = sink.Buffer;
fvtool(allpole,'Fs',8000)
Algorithms
This object implements the algorithm, inputs, and outputs described on the Allpole Filter block reference page. The object properties correspond to the block parameters.
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Usage notes and limitations:
Only the
Denominator
property is tunable for code generation.See System Objects in MATLAB Code Generation (MATLAB Coder).
Version History
Introduced in R2012b
See Also
Functions
Objects
Open Example
You have a modified version of this example. Do you want to open this example with your edits?
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
 América Latina (Español)
 Canada (English)
 United States (English)
Europe
 Belgium (English)
 Denmark (English)
 Deutschland (Deutsch)
 España (Español)
 Finland (English)
 France (Français)
 Ireland (English)
 Italia (Italiano)
 Luxembourg (English)
 Netherlands (English)
 Norway (English)
 Österreich (Deutsch)
 Portugal (English)
 Sweden (English)
 Switzerland
 United Kingdom (English)