Hello All, Just a quick question - would anyone know how to perform inverse chirp z in Matlab. I know that this type of algorithm is used in commercial equipment that performs calculation of impulse response form frequency domain data. It looks like chirp z and especially inverse transform is some sort of mystery. I found a couple posts over the net but majority of them never got any replies, what's wrong with chirp z people? Regards Pawel
Inverse chirp z
Started by ●March 25, 2008
Reply by ●March 25, 20082008-03-25
On Mar 25, 9:11 am, Pawel <prulikow...@gmail.com> wrote:> Hello All, > > Just a quick question - would anyone know how to perform inverse chirp > z in Matlab. I know that this type of algorithm is used in commercial > equipment that performs calculation of impulse response form frequency > domain data. It looks like chirp z and especially inverse transform is > some sort of mystery. I found a couple posts over the net but majority > of them never got any replies, what's wrong with chirp z people? > > Regards > > PawelAlthough I haven't done it - I believe you would just setup the phase factors to be complements of what you set in the forward CZT. I've used the CZT to do linear array beam forming - it is quite efficient (and exact) if the beams are linearly spaced in sin(theta). There are a few articles around - IEEE, and Acoustical Society of America, it is also discussed to some degree in the O&S books. Cheers, Dave
Reply by ●March 25, 20082008-03-25
On Mar 25, 6:11 am, Pawel <prulikow...@gmail.com> wrote:> Hello All, > > Just a quick question - would anyone know how to perform inverse chirp > z in Matlab. I know that this type of algorithm is used in commercial > equipment that performs calculation of impulse response form frequency > domain data. It looks like chirp z and especially inverse transform is > some sort of mystery. I found a couple posts over the net but majority > of them never got any replies, what's wrong with chirp z people? > > Regards > > PawelYou might Google on: matlab "chirp-z" You might try: help czt in Matlab What's wrong? Why haven't you? Dale B. Dalrymple http://dbdimages.com
Reply by ●March 25, 20082008-03-25
On Mar 25, 2:58 pm, dbd <d...@ieee.org> wrote:> On Mar 25, 6:11 am, Pawel <prulikow...@gmail.com> wrote: > > > Hello All, > > > Just a quick question - would anyone know how to perform inverse chirp > > z in Matlab. I know that this type of algorithm is used in commercial > > equipment that performs calculation of impulse response form frequency > > domain data. It looks like chirp z and especially inverse transform is > > some sort of mystery. I found a couple posts over the net but majority > > of them never got any replies, what's wrong with chirp z people? > > > Regards > > > Pawel > > You might Google on: > matlab "chirp-z" > > You might try: > help czt > in Matlab > > What's wrong? Why haven't you? > > Dale B. Dalrymplehttp://dbdimages.comBelieve me I have tried, but Matlab can only calculate CZT chirp z transform not inverse of it, Google does not provide any meaningful results regarding INVERSE CZT.
Reply by ●March 25, 20082008-03-25
On Mar 25, 2:28 pm, Dave <dspg...@netscape.net> wrote:> On Mar 25, 9:11 am, Pawel <prulikow...@gmail.com> wrote: > > > Hello All, > > > Just a quick question - would anyone know how to perform inverse chirp > > z in Matlab. I know that this type of algorithm is used in commercial > > equipment that performs calculation of impulse response form frequency > > domain data. It looks like chirp z and especially inverse transform is > > some sort of mystery. I found a couple posts over the net but majority > > of them never got any replies, what's wrong with chirp z people? > > > Regards > > > Pawel > > Although I haven't done it - I believe you would just setup the phase > factors to be complements of what you set in the forward CZT. > > I've used the CZT to do linear array beam forming - it is quite > efficient (and exact) if the beams are linearly spaced in sin(theta). > > There are a few articles around - IEEE, and Acoustical Society of > America, it is also discussed to some degree in the O&S books. > > Cheers, > DaveDave, Would You have any idea why inverse CZT is preferred over simple IFFT for reconstruction of impulse responses from frequency domain data? To my surprise even Wikipedia does not directly refer to CZT but uses somewhat enigmatic description Bluestein's FFT algorithm, how CZT is related to FFT - this would have some implications as taking FFT of FFT gives You IFFT till some extent. Regards Pawel
Reply by ●March 25, 20082008-03-25
On Mar 25, 8:28 am, Pawel <prulikow...@gmail.com> wrote:> On Mar 25, 2:58 pm, dbd <d...@ieee.org> wrote: > > > > > On Mar 25, 6:11 am, Pawel <prulikow...@gmail.com> wrote: > > > > Hello All, > > > > Just a quick question - would anyone know how to perform inverse chirp > > > z in Matlab. I know that this type of algorithm is used in commercial > > > equipment that performs calculation of impulse response form frequency > > > domain data. It looks like chirp z and especially inverse transform is > > > some sort of mystery. I found a couple posts over the net but majority > > > of them never got any replies, what's wrong with chirp z people? > > > > Regards > > > > Pawel > > > You might Google on: > > matlab "chirp-z" > > > You might try: > > help czt > > in Matlab > > > What's wrong? Why haven't you? > > > Dale B. Dalrymplehttp://dbdimages.com > > Believe me I have tried, but Matlab can only calculate CZT chirp z > transform not inverse of it, Google does not provide any meaningful > results regarding INVERSE CZT.Did you try applying Dave's comment about the phasing for the inverse transform via the W parameter in czt()? Dale B. Dalrymple
Reply by ●March 25, 20082008-03-25
On Mar 25, 3:55 pm, dbd <d...@ieee.org> wrote:> On Mar 25, 8:28 am, Pawel <prulikow...@gmail.com> wrote: > > > > > On Mar 25, 2:58 pm, dbd <d...@ieee.org> wrote: > > > > On Mar 25, 6:11 am, Pawel <prulikow...@gmail.com> wrote: > > > > > Hello All, > > > > > Just a quick question - would anyone know how to perform inverse chirp > > > > z in Matlab. I know that this type of algorithm is used in commercial > > > > equipment that performs calculation of impulse response form frequency > > > > domain data. It looks like chirp z and especially inverse transform is > > > > some sort of mystery. I found a couple posts over the net but majority > > > > of them never got any replies, what's wrong with chirp z people? > > > > > Regards > > > > > Pawel > > > > You might Google on: > > > matlab "chirp-z" > > > > You might try: > > > help czt > > > in Matlab > > > > What's wrong? Why haven't you? > > > > Dale B. Dalrymplehttp://dbdimages.com > > > Believe me I have tried, but Matlab can only calculate CZT chirp z > > transform not inverse of it, Google does not provide any meaningful > > results regarding INVERSE CZT. > > Did you try applying Dave's comment about the phasing for the inverse > transform via the W parameter in czt()? > > Dale B. DalrympleNo I haven't try Dave's approach but I will give it a try, would You know why inverse CZT is used for transfering from frequency to time domain in commercial vector network analysers? Pawel
Reply by ●March 25, 20082008-03-25
On Mar 25, 8:59 am, Pawel <prulikow...@gmail.com> wrote:> On Mar 25, 3:55 pm, dbd <d...@ieee.org> wrote: > > > > > On Mar 25, 8:28 am, Pawel <prulikow...@gmail.com> wrote: > > > > On Mar 25, 2:58 pm, dbd <d...@ieee.org> wrote: > > > > > On Mar 25, 6:11 am, Pawel <prulikow...@gmail.com> wrote: > > > > > > Hello All, > > > > > > Just a quick question - would anyone know how to perform inverse chirp > > > > > z in Matlab. I know that this type of algorithm is used in commercial > > > > > equipment that performs calculation of impulse response form frequency > > > > > domain data. It looks like chirp z and especially inverse transform is > > > > > some sort of mystery. I found a couple posts over the net but majority > > > > > of them never got any replies, what's wrong with chirp z people? > > > > > > Regards > > > > > > Pawel > > > > > You might Google on: > > > > matlab "chirp-z" > > > > > You might try: > > > > help czt > > > > in Matlab > > > > > What's wrong? Why haven't you? > > > > > Dale B. Dalrymplehttp://dbdimages.com > > > > Believe me I have tried, but Matlab can only calculate CZT chirp z > > > transform not inverse of it, Google does not provide any meaningful > > > results regarding INVERSE CZT. > > > Did you try applying Dave's comment about the phasing for the inverse > > transform via the W parameter in czt()? > > > Dale B. Dalrymple > > No I haven't try Dave's approach but I will give it a try, would You > know why inverse CZT is used for transfering from frequency to time > domain in commercial vector network analysers? > > PawelTraditionally, while the DFT/IDFT pair provide fixed mappings between time and frequency samples, the chirp-z transforms allow the mapping to be controlled (as by the W and A parameters in czt()). If you want to find out about a particular analyzer, you'll need to specify the analyzer in your question. Dale B. Dalrymple
Reply by ●March 25, 20082008-03-25
On Mar 25, 11:37 am, Pawel <prulikow...@gmail.com> wrote:> On Mar 25, 2:28 pm, Dave <dspg...@netscape.net> wrote: > > > > > On Mar 25, 9:11 am, Pawel <prulikow...@gmail.com> wrote: > > > > Hello All, > > > > Just a quick question - would anyone know how to perform inverse chirp > > > z in Matlab. I know that this type of algorithm is used in commercial > > > equipment that performs calculation of impulse response form frequency > > > domain data. It looks like chirp z and especially inverse transform is > > > some sort of mystery. I found a couple posts over the net but majority > > > of them never got any replies, what's wrong with chirp z people? > > > > Regards > > > > Pawel > > > Although I haven't done it - I believe you would just setup the phase > > factors to be complements of what you set in the forward CZT. > > > I've used the CZT to do linear array beam forming - it is quite > > efficient (and exact) if the beams are linearly spaced in sin(theta). > > > There are a few articles around - IEEE, and Acoustical Society of > > America, it is also discussed to some degree in the O&S books. > > > Cheers, > > Dave > > Dave, > > Would You have any idea why inverse CZT is preferred over simple IFFT > for reconstruction of impulse responses from frequency domain data? To > my surprise even Wikipedia does not directly refer to CZT but uses > somewhat enigmatic description Bluestein's FFT algorithm, how CZT is > related to FFT - this would have some implications as taking FFT of > FFT gives You IFFT till some extent. > > Regards > > PawelThe CZT is quite flexible - it isn't fixed to just evaluating around the entire unit circle (as the FFT or IFFT). While I can't say for sure why a CZT is used instead of an IFFT - I'd bet that it is because the CZT allows you to evaluate the DFT over a selected portion of the bandwidth rather than the entire bandwidth. You can achieve the same results with a zoom FFT i.e. frequency shift, low-pass filter, decimate and then do your regular FFT analysis. But I think if you look at the CZT algorithm that is essentially what it is doing, but in a relatively efficient manner. Agilent used to have some tutorial type design notes - I'm not sure if they're still available on the web. Another possible place to check is the B&K site. Hope that helps. Cheers, Dave
Reply by ●March 25, 20082008-03-25
On Mar 25, 4:42 pm, dbd <d...@ieee.org> wrote:> On Mar 25, 8:59 am, Pawel <prulikow...@gmail.com> wrote: > > > > > On Mar 25, 3:55 pm, dbd <d...@ieee.org> wrote: > > > > On Mar 25, 8:28 am, Pawel <prulikow...@gmail.com> wrote: > > > > > On Mar 25, 2:58 pm, dbd <d...@ieee.org> wrote: > > > > > > On Mar 25, 6:11 am, Pawel <prulikow...@gmail.com> wrote: > > > > > > > Hello All, > > > > > > > Just a quick question - would anyone know how to perform inverse chirp > > > > > > z in Matlab. I know that this type of algorithm is used in commercial > > > > > > equipment that performs calculation ofimpulseresponseform frequency > > > > > > domain data. It looks like chirp z and especially inverse transform is > > > > > > some sort of mystery. I found a couple posts over the net but majority > > > > > > of them never got any replies, what's wrong with chirp z people? > > > > > > > Regards > > > > > > > Pawel > > > > > > You might Google on: > > > > > matlab "chirp-z" > > > > > > You might try: > > > > > help czt > > > > > in Matlab > > > > > > What's wrong? Why haven't you? > > > > > > Dale B. Dalrymplehttp://dbdimages.com > > > > > Believe me I have tried, but Matlab can only calculate CZT chirp z > > > > transform not inverse of it, Google does not provide any meaningful > > > > results regarding INVERSE CZT. > > > > Did you try applying Dave's comment about the phasing for the inverse > > > transform via the W parameter in czt()? > > > > Dale B. Dalrymple > > > No I haven't try Dave's approach but I will give it a try, would You > > know why inverse CZT is used for transfering from frequency to time > > domain in commercial vector network analysers? > > > Pawel > > Traditionally, while the DFT/IDFT pair provide fixed mappings between > time and frequency samples, the chirp-z transforms allow the mapping > to be controlled (as by the W and Aparametersin czt()). > > If you want to find out about a particular analyzer, you'll need to > specify the analyzer in your question. > > Dale B. DalrympleThanks a lot for Your input it is really helpful, Dale: Actually I am trying to figure out how to create reliable data in time domain from measured S parameters, it is not trivial task as it seems to be at the first sight. Pawel






