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

Contact us at files@mathworks.com