Thread Subject: mfilt.iirinterp( )

Subject: mfilt.iirinterp( )

From: Stephen Burgess

Date: 3 Sep, 2007 14:14:43

Message: 1 of 4

How do I specify a quassi linear phase iir halfband filter
using the mfilt.iirinterp( ) function, given a set of
coefficients.

The available documention/examples in the help was rather
vague and incomplete.

Could anyone provide a simple example?

Stephen

Subject: mfilt.iirinterp( )

From: Honglei Chen

Date: 4 Sep, 2007 21:23:40

Message: 2 of 4

Hi Stephen,



If you already have the desired coefficients, then you can use them to
directly construct an mfilt.iirinterp object.



For example, if you know your filter's coefficients are



[0.6 0.5] for the first phase in the first stage, 0.7 for the second phase
in the first stage and 0.8 for the third phase in the first stage;



as well as



0.5 for the first phase in the second stage and 0.4 for the second phase in
the second stage.



You can just construct the filter as



Hm = mfilt.iirinterp({[0.6 0.5] 0.7 0.8},{0.5 0.4})



and you'll get



Hm =



        FilterStructure: 'IIR Polyphase Interpolator'

              Polyphase: Phase1: Section1: [0.6 0.5]

                                              Section2: 0.7

                                              Section3: 0.8

                                 Phase2: Section1: 0.5

                                              Section2: 0.4

    InterpolationFactor: 2

       PersistentMemory: false



The documentation and m-file help example focus on a design approach when
the coefficients are not known. I have submitted a documentation enhancement
request to explain this better. Another good reference regarding the design
of a quasi linear phase IIR halfband filter can be found in the following
demo:



http://www.mathworks.com/products/filterdesign/demos.html?file=/products/demos/shipping/filterdesign/iirallpassdemo.html#16



HTH,



Honglei





"Stephen Burgess" <Stephen.Burgess@edu.fh-kaernten.ac.at> wrote in message
news:fbh4sj$1a4$1@fred.mathworks.com...
> How do I specify a quassi linear phase iir halfband filter
> using the mfilt.iirinterp( ) function, given a set of
> coefficients.
>
> The available documention/examples in the help was rather
> vague and incomplete.
>
> Could anyone provide a simple example?
>
> Stephen


Subject: mfilt.iirinterp( )

From: Stephen Burgess

Date: 18 Sep, 2007 11:52:16

Message: 3 of 4

"Honglei Chen" <hchen@mathworks.com> wrote in message
<fbkicu$pg8$1@fred.mathworks.com>...
> Hi Stephen,
>
>
>
> If you already have the desired coefficients, then you
can use them to
> directly construct an mfilt.iirinterp object.
>
>
>
> For example, if you know your filter's coefficients are
>
>
>
> [0.6 0.5] for the first phase in the first stage, 0.7 for
the second phase
> in the first stage and 0.8 for the third phase in the
first stage;
>
>
>
> as well as
>
>
>
> 0.5 for the first phase in the second stage and 0.4 for
the second phase in
> the second stage.
>
>
>
> You can just construct the filter as
>
>
>
> Hm = mfilt.iirinterp({[0.6 0.5] 0.7 0.8},{0.5 0.4})
>
>
>
> and you'll get
>
>
>
> Hm =
>
>
>
> FilterStructure: 'IIR Polyphase Interpolator'
>
> Polyphase: Phase1: Section1: [0.6 0.5]
>
> Section2:
0.7
>
> Section3:
0.8
>
> Phase2: Section1: 0.5
>
> Section2:
0.4
>
> InterpolationFactor: 2
>
> PersistentMemory: false
>
>
>
> The documentation and m-file help example focus on a
design approach when
> the coefficients are not known. I have submitted a
documentation enhancement
> request to explain this better. Another good reference
regarding the design
> of a quasi linear phase IIR halfband filter can be found
in the following
> demo:
>
>
>
> http://www.mathworks.com/products/filterdesign/demos.html?
file=/products/demos/shipping/filterdesign/iirallpassdemo.ht
ml#16
>
>
>
> HTH,
>
>
>
> Honglei
>
>
>
>
>
> "Stephen Burgess" <Stephen.Burgess@edu.fh-kaernten.ac.at>
wrote in message
> news:fbh4sj$1a4$1@fred.mathworks.com...
> > How do I specify a quassi linear phase iir halfband
filter
> > using the mfilt.iirinterp( ) function, given a set of
> > coefficients.
> >
> > The available documention/examples in the help was
rather
> > vague and incomplete.
> >
> > Could anyone provide a simple example?
> >
> > Stephen
>
>

Subject: mfilt.iirinterp( )

From: Stephen Burgess

Date: 18 Sep, 2007 12:19:48

Message: 4 of 4

Thanks Honglei,

Your example helped and with some further experimentation I
was able to get things working.

Good idea regarding the documention enhancement request.
 
Thanks again,
Stephen


"Honglei Chen" <hchen@mathworks.com> wrote in message
<fbkicu$pg8$1@fred.mathworks.com>...
> Hi Stephen,
>
>
>
> If you already have the desired coefficients, then you
can use them to
> directly construct an mfilt.iirinterp object.
>
>
>
> For example, if you know your filter's coefficients are
>
>
>
> [0.6 0.5] for the first phase in the first stage, 0.7 for
the second phase
> in the first stage and 0.8 for the third phase in the
first stage;
>
>
>
> as well as
>
>
>
> 0.5 for the first phase in the second stage and 0.4 for
the second phase in
> the second stage.
>
>
>
> You can just construct the filter as
>
>
>
> Hm = mfilt.iirinterp({[0.6 0.5] 0.7 0.8},{0.5 0.4})
>
>
>
> and you'll get
>
>
>
> Hm =
>
>
>
> FilterStructure: 'IIR Polyphase Interpolator'
>
> Polyphase: Phase1: Section1: [0.6 0.5]
>
> Section2:
0.7
>
> Section3:
0.8
>
> Phase2: Section1: 0.5
>
> Section2:
0.4
>
> InterpolationFactor: 2
>
> PersistentMemory: false
>
>
>
> The documentation and m-file help example focus on a
design approach when
> the coefficients are not known. I have submitted a
documentation enhancement
> request to explain this better. Another good reference
regarding the design
> of a quasi linear phase IIR halfband filter can be found
in the following
> demo:
>
>
>
> http://www.mathworks.com/products/filterdesign/demos.html?
file=/products/demos/shipping/filterdesign/iirallpassdemo.ht
ml#16
>
>
>
> HTH,
>
>
>
> Honglei
>
>
>
>
>
> "Stephen Burgess" <Stephen.Burgess@edu.fh-kaernten.ac.at>
wrote in message
> news:fbh4sj$1a4$1@fred.mathworks.com...
> > How do I specify a quassi linear phase iir halfband
filter
> > using the mfilt.iirinterp( ) function, given a set of
> > coefficients.
> >
> > The available documention/examples in the help was
rather
> > vague and incomplete.
> >
> > Could anyone provide a simple example?
> >
> > Stephen
>
>

Tags for this Thread

Everyone's Tags:

Add a New Tag:

Separated by commas
Ex.: root locus, bode

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Tag Activity for This Thread
Tag Applied By Date/Time
halfband Stephen Burgess 3 Sep, 2007 10:15:06
iir Stephen Burgess 3 Sep, 2007 10:15:06
quasi linear phase Stephen Burgess 3 Sep, 2007 10:15:06
mfiltiirinterp Stephen Burgess 3 Sep, 2007 10:15:05
rssFeed for this Thread
 

MATLAB Central Terms of Use

NOTICE: Any content you submit to MATLAB Central, including personal information, is not subject to the protections which may be afforded information collected under other sections of The MathWorks, Inc. Web site. You are entirely responsible for all content that you upload, post, e-mail, transmit or otherwise make available via MATLAB Central. The MathWorks does not control the content posted by visitors to MATLAB Central and, does not guarantee the accuracy, integrity, or quality of such content. Under no circumstances will The MathWorks be liable in any way for any content not authored by The MathWorks, or any loss or damage of any kind incurred as a result of the use of any content posted, e-mailed, transmitted or otherwise made available via MATLAB Central. Read the complete Terms prior to use.

Contact us at files@mathworks.com