Filter Design Toolbox    

ReferenceCoefficients

The ReferenceCoefficients property values are specified as a cell array that specifies the original (unquantized) reference filter coefficients. You specify these in double-precision, using a syntax specific to the value of the FilterStructure property.

Default value: {1 1}

Assigning Reference Filter Coefficients

To assign the coefficients that specify the filter that serves as the reference for your quantized filter, specify the value of the ReferenceCoefficients property. The syntax you use to assign reference filter coefficients for your quantized filter depends on the value you assign to the FilterStructure property. These syntaxes are described in the following two tables. The first table explains the syntax for the ReferenceCoefficients property value when you want to specify one section for your filter. The next table explains how to specify the coefficients for filters with L cascaded sections.

Table 12-4: Syntax for Assigning Reference Filter
Coefficients (Single Section) 
FilterStructure Property Value
Syntax for ReferenceCoefficients Property Value
'antisymmetricfir'
{b}:
  • This is a cell array containing one vector.
  • b(i) = -b(n-i+1); i = 1, ..., n
  • n-1 is the order of the polynomial represented by b.
  • When n is odd, the center coefficient, b((n+1)/2) should be 0.

If you don't supply an antisymmetric vector b, it is converted to be antisymmetric automatically.

'df1'
{b,a}:
  • This is a cell array of vectors.
  • b is the vector representing the coefficients of the transfer function numerator polynomial.
  • a is the vector representing the coefficients of the transfer function denominator polynomial.

'df1t'
{b,a}: This is a cell array of vectors.
'df2'
{b,a}: This is a cell array of vectors.
'df2t'
{b,a}: This is a cell array of vectors.
'fir'
{b}: This is a cell array containing one vector.
'firt'
{b}: This is a cell array containing one vector.
'latticeca'
{k1,k2,beta}:
  • This is a cell array of vectors.
  • k1 and k2 are the vectors of reflection coefficients for the two lattice allpass filters in the coupled allpass structure.
  • beta is the unity gain complex scalar coupling coefficient.

'latticecapc'
{k1,k2,beta}:
  • This is a cell array of vectors.
  • k1 and k2 are the vectors of reflection coefficients for the two lattice allpass filters in the coupled allpass structure.
  • beta is the unity gain complex scalar coupling coefficient.

'latticear'
{k}:
  • This is a cell array containing one vector.
  • k is the vector of reflection coefficients for an all-pole (AR) lattice filter.

'latticema'

{k}:

  • This is a cell array containing one vector.
  • k is the vector of reflection coefficients for an FIR (MA) lattice filter.

'latticearma'
{k,v}:
  • This is a cell array of vectors.
  • k is the vector of reflection coefficients for an IIR (ARMA) lattice filter.
  • v is the vector of ladder coefficients for an IIR lattice filter.

'statespace'
{A,B,C,D}:
  • This is a cell array of matrices.
  • A is the n-by-n state transition matrix (n states).
  • B is the n-by-1 input to state transmission vector.
  • C is the 1-by-n state to output transmission vector.
  • D is the input to output transmission scalar.

'symmetricfir'
{b}:
  • This is a cell array containing one vector.
  • b(i) = b(n-i+1); i = 1, ..., n
  • n-1 is the order of the polynomial represented by b.
  • If you don't supply a symmetric vector b, it is converted to be symmetric automatically.

You can specify quantized filters with multiple sections for all of the filter structures.

The following table describes the syntax for entering reference coefficients to specify a quantized filter with L second-order or arbitrary-order sections.

Table 12-5: Syntax for Assigning Reference Filter
Coefficients (L Sections) 
Section Structure
Syntax for ReferenceCoefficients Property Value
L second-order sections
{ {b1 a1} {b2 a2} ... {bL aL} }
  • This is a 1-by-L cell array of 1-by-2 cell arrays.
  • bi is a 1-by-3 row vector for the numerator of the ith section, i=1, ... , L.
  • ai is a 1-by-3 row vector for the denominator of the ith section, i=1, ... , L.

You can use tf2sos and sos2cell to covert a transfer function directly into this format (a cell array of cells). You can also use sos to convert quantized filters with other topologies directly to a second-order sections form.

L sections, each of arbitrary order (except FIR filters)
 { {b1 a1} {b2 a2} ... {bL aL} }
  • This is a 1-by-L cell array of 1-by-2 cell arrays.
  • bi is a 1-by-nbi row vector for the numerator of the ith section, i=1, ... , L.
  • ai is a 1-by-nai row vector for the denominator of the ith section, i=1, ... , L.
  • nbi is the order of the numerator of the ith section.
  • nai is the order of the denominator of the ith section.

L sections, each of arbitrary order (only FIR)
 { {b1} {b2} ... {bL} }
  • This is a 1-by-L cell array of one-dimensional cell arrays.
  • bi is a 1-by-nbi row vector for the numerator of the ith FIR section, i=1, ... , L.
  • nbi is the order of the ith FIR section.

L sections of coupled allpass lattice filters
{{k11,k21,beta1},...,{k1L,k2L,betaL)}:
  • This is a 1-by-L cell array of 1-by-3 cell arrays.
  • k1i and k2i are the vectors of reflection coefficients for the two lattice allpass filters in the ith coupled allpass structure, i=1, ... , L.
  • betai is the unity gain complex scalar coupling coefficient in the ith coupled allpass structure, i=1, ... , L.

L sections of lattice ARMA filters
{{k1,v1},...,{kL,vL}}:
  • This is a 1-by-L cell array of 1-by-2 cell arrays.
  • ki is the vector of reflection coefficients for the ith IIR lattice (ARMA) filter in the cascade, i=1, ... , L.
  • vi is the vector of ladder coefficients for ith IIR lattice (ARMA) filter in the cascade, i=1, ... , L.

L sections of lattice AR or MA filters
{{k1},...,{kL}}:
  • This is a 1-by-L cell array of one-dimensional cell arrays.
  • ki is the vector of reflection coefficients for the ith lattice AR or MA filter in the cascade, i=1, ... , L.

L sections of state-space filters
{{A1,B1,C1,D1},...,{AL,BL,CL,DL}}:
  • This is a cell array of 1-by4 cell arrays.
  • Ai is the ni-by-ni state transition matrix (ni states) of the ith state-space filter in the cascade, i=1, ... , L.
  • Bi is the ni-by-1 input to state transmission vector of the ith state-space filter in the cascade, i=1, ... , L.
  • Ci is the 1-by-ni state to output transmission vector of the ith state-space filter in the cascade, i=1, ... , L.
  • Di is the input to output transmission scalar of the ith state-space filter in the cascade, i=1, ... , L.

Conversion functions in this toolbox and in Signal Processing Toolbox let you convert transfer functions to other filter forms and from filter forms to transfer functions. Relevant conversion functions include the following functions.

Conversion Function
 

Description
ca2tf
Converts from a coupled allpass filter to a transfer function.
cl2tf
Converts from a lattice coupled allpass filter to a transfer function.
sos
Converts quantized filters to create second-order sections. This is the recommended method for converting quantized filters to second-order sections.
tf2ca
Converts from a transfer function to a coupled allpass filter.
tf2cl
Converts from a transfer function to a lattice coupled allpass filter.
tf2latc
Converts from a transfer function to a lattice filter.
tf2sos
Converts from a transfer function to a second-order section form.
tf2ss
Converts from a transfer function to state-space form.
tf2zp
Converts from a rational transfer function to its factored (single section) form (zero-pole-gain form).
zp2sos
Converts a zero-pole-gain form to a second-order section form.
zp2ss
Conversion of zero-pole-gain form to a state-space form.
zp2tf
Conversion of zero-pole-gain form to transfer functions of multiple order sections.

You can specify a filter with L sections of arbitrary order by:

  1. Factoring your entire transfer function with tf2zp.
  2. Using zp2tf to compose the transfer function for each section from the selected first-order factors obtained in step 1.


  ProductFormat ScaleValues 

Learn more about the latest releases of MathWorks products:

 © 1994-2010 The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS