DSPRelated.com
Forums

Basic understanding problem of continuous-time to discrete-time conversion

Started by Georg P. December 5, 2007
Hello,

Assuming I have a time-continuous first-order lowpass filter given by 
the transfer function

              1          Wc
Hc(jW) = --------- = -------
          1 + jW/Wc   Wc + jW

where W is the (continuous-time) frequency in rad/s and Wc is the 
(continuous-time) 3dB-cutoff frequency of the filter. Now I want to 
create a time-discrete system with the same transfer function. Therefore 
I use the formula of impulse-invariance

H(e^jw) = Hc(jw/T)

where w is the (discrete-time) frequency in rad and T is the sampling 
period. This gives:

               wc/T        wc
H(e^jw) = ----------- = -------
           wc/T + jw/T   wc + jw

Clearly, the transfer function is the same as the one of the 
continuous-time filter (just with scaled frequency-axis). What I don't 
understand now is that this term looks very different from the transfer 
function of normal time-discrete filters. I mean, normally there would 
be a term e^jw in the denominator. I would expect something like

                 1
H(e^jw) = -------------
           1 + e^(jw/wc)

 From this latter function I can calculate the impulse respons h[n] by 
applying IDTFT, but the previous one I won't find in a table of DTFT 
transform pairs.

Can anyone explain this to me? Is the term e^jw in time-discrete 
transfer functions just symbolically and can be replaced with jw?

I'm very confused...
Thanks for any help,
Georg
On Dec 5, 6:39 am, "Georg P." <ponti...@sbox.tugraz.at> wrote:
> Hello, > > Assuming I have a time-continuous first-order lowpass filter given by > the transfer function > > 1 Wc > Hc(jW) = --------- = ------- > 1 + jW/Wc Wc + jW > > where W is the (continuous-time) frequency in rad/s and Wc is the > (continuous-time) 3dB-cutoff frequency of the filter. Now I want to > create a time-discrete system with the same transfer function. Therefore > I use the formula of impulse-invariance > > H(e^jw) = Hc(jw/T) > > where w is the (discrete-time) frequency in rad and T is the sampling > period. This gives: > > wc/T wc > H(e^jw) = ----------- = ------- > wc/T + jw/T wc + jw > > Clearly, the transfer function is the same as the one of the > continuous-time filter (just with scaled frequency-axis). What I don't > understand now is that this term looks very different from the transfer > function of normal time-discrete filters. I mean, normally there would > be a term e^jw in the denominator. I would expect something like > > 1 > H(e^jw) = ------------- > 1 + e^(jw/wc) > > From this latter function I can calculate the impulse respons h[n] by > applying IDTFT, but the previous one I won't find in a table of DTFT > transform pairs. > > Can anyone explain this to me? Is the term e^jw in time-discrete > transfer functions just symbolically and can be replaced with jw? > > I'm very confused... > Thanks for any help, > Georg
Going from continuous time to discrete time is confusing. Part of the problem is that you have a number of different ways of doing it. You can convert to state variables and do some intergrations, which typically comes down to doing a matrix exponential. Most dsp books tend to concentrate on the bilinear transform. Those look very different in the discrete time domain. Some books, particularly those concerned with simulation, like to oversample and approximate finite differences with derivatives.
Georg P. wrote:

   ...

> Clearly, the transfer function is the same as the one of the > continuous-time filter (just with scaled frequency-axis). ...
You are burdened with a misconception. Continuous-to-discrete transformations can be only approximate. Recall that a signal sampled at Fs can represent only those frequencies less than Fs/2. Impulse invariance provides a good approximation the continuous-time impulse response only at frequencies well below Fs/2. The bilinear transform does much better at higher frequencies. The price one pays is warping. Although all the frequencies of the continuous-time signal are represented in a way, their spacing is compressed so that they all fit in the allowed range, below Fs/2. What books do you have available? There is some very good on-line material if you need it. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Jerry Avins wrote:
> Georg P. wrote: > > ... > >> Clearly, the transfer function is the same as the one of the >> continuous-time filter (just with scaled frequency-axis). ... > > You are burdened with a misconception. Continuous-to-discrete > transformations can be only approximate. Recall that a signal sampled at > Fs can represent only those frequencies less than Fs/2. Impulse > invariance provides a good approximation the continuous-time impulse > response only at frequencies well below Fs/2.
Sorry, I forgot to mention that the input signal is limited to frequencies below Fs/4, so there should be no problem and impulse invariance is the method of choice. Still, my problem can be reduced to basically two questions: Is the result that I wrote previously wc H(e^jw) = ------- wc + jw correct, and if yes, how do I get the impulse response h[n] from this?
> > What books do you have available? There is some very good on-line > material if you need it.
I have Oppenheim/Schafer/Buck: "Discrete-time signal processing" right by my side and a technical library two floors below :-) Thanks for the reply, Georg
Georg P. wrote:

   ...

> Sorry, I forgot to mention that the input signal is limited to > frequencies below Fs/4, so there should be no problem and impulse > invariance is the method of choice.
There is considerable departure at Fs/4. At half that, the response gets pretty similar.
> Still, my problem can be reduced to basically two questions: Is the > result that I wrote previously > > wc > H(e^jw) = ------- > wc + jw > > correct, and if yes, how do I get the impulse response h[n] from this?
wc H(e^jw) = ------- is a frequency, not an impulse, response. You want to wc + jw start with it's Laplace transform.
>> What books do you have available? There is some very good on-line >> material if you need it. > > I have Oppenheim/Schafer/Buck: "Discrete-time signal processing" right > by my side and a technical library two floors below :-)
See if the library has Lyons /Understanding Digital Signal Processing/ and Smith /The Scientist and Engineer's Guide to Digital Signal Processing/ (also available on line at http://www.dspguide.com/). -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
On Dec 5, 11:17 am, "Georg P." <ponti...@sbox.tugraz.at> wrote:
> > I have Oppenheim/Schafer/Buck: "Discrete-time signal processing" right > by my side and a technical library two floors below :-) >
you have the most current version of what has been called "O&S" for decades (now we'll have to call it OSB and confuse that with the Benedictines). that book, for my money, is still the most rigorously anal-retentive reference or "bible" on a variety of DSP subjects including basic DSP subjects, so keep it around. but it doesn't make much of a beginner's textbook on DSP. it *looks* too dense and formidable. Rick's book is much better in that regard. r b-j
On Dec 5, 1:28 pm, robert bristow-johnson <r...@audioimagination.com>
wrote:
> On Dec 5, 11:17 am, "Georg P." <ponti...@sbox.tugraz.at> wrote: > > > > > I have Oppenheim/Schafer/Buck: "Discrete-time signal processing" right > > by my side and a technical library two floors below :-) > > you have the most current version of what has been called "O&S" for > decades (now we'll have to call it OSB and confuse that with the > Benedictines). that book, for my money, is still the most rigorously > anal-retentive reference or "bible" on a variety of DSP subjects > including basic DSP subjects, so keep it around. > > but it doesn't make much of a beginner's textbook on DSP. it *looks* > too dense and formidable. > > Rick's book is much better in that regard. > > r b-j
r b-j, What has been called 'O&S' for years is actually 'Digital Signal Processing'. 'Discrete-Time Signal Processing' is a later, easier to read book; not a version of the original. Dirk
On Dec 6, 6:55 pm, dbell <bellda2...@cox.net> wrote:
> On Dec 5, 1:28 pm, robert bristow-johnson <r...@audioimagination.com> > wrote: > > > > > On Dec 5, 11:17 am, "Georg P." <ponti...@sbox.tugraz.at> wrote: > > > > I have Oppenheim/Schafer/Buck: "Discrete-time signal processing" right > > > by my side and a technical library two floors below :-) > > > you have the most current version of what has been called "O&S" for > > decades (now we'll have to call it OSB and confuse that with the > > Benedictines). that book, for my money, is still the most rigorously > > anal-retentive reference or "bible" on a variety of DSP subjects > > including basic DSP subjects, so keep it around. > > > but it doesn't make much of a beginner's textbook on DSP. it *looks* > > too dense and formidable. > > > Rick's book is much better in that regard. > > > r b-j > > r b-j, > > What has been called 'O&S' for years is actually 'Digital Signal > Processing'. 'Discrete-Time Signal Processing' is a later, easier to > read book; not a version of the original.
i dunno if i agree. the original Yellow O&S (1975) has not been revised and they literally replaced it in 1989 when they came out with the first one titled "Discrete-Time Signal Processing". it *is* different and deserving of a different title, but you can find some chapters and verse that are virtually identical, if you update the numbers for equations and figures. this was something i recently noted (to Steven Johnson) in that FFT thread. i think there is more in common than different. that "Buck" joined them (with slightly smaller lettering for his name on the cover) is another qualitative change, so we might have to start calling it "OSB" and risk confusing that with the Benedictines. but my 1989 edition of "Discrete-Time Signal Processing" is "O&S". it doesn't have that stuff on "Homomorphic processing" but that might have been considered to be a little esoteric or off-the-beaten path for a "bible" or reference anyway. r b-j
On Dec 5, 3:39 am, "Georg P." <ponti...@sbox.tugraz.at> wrote:
> Hello, > > Assuming I have a time-continuous first-order lowpass filter given by > the transfer function > > 1 Wc > Hc(jW) = --------- = ------- > 1 + jW/Wc Wc + jW > > where W is the (continuous-time) frequency in rad/s and Wc is the > (continuous-time) 3dB-cutoff frequency of the filter. Now I want to > create a time-discrete system with the same transfer function. Therefore > I use the formula of impulse-invariance > > H(e^jw) = Hc(jw/T) > > where w is the (discrete-time) frequency in rad and T is the sampling > period. This gives: > > wc/T wc > H(e^jw) = ----------- = ------- > wc/T + jw/T wc + jw > > Clearly, the transfer function is the same as the one of the > continuous-time filter (just with scaled frequency-axis). What I don't > understand now is that this term looks very different from the transfer > function of normal time-discrete filters. I mean, normally there would > be a term e^jw in the denominator. I would expect something like > > 1 > H(e^jw) = ------------- > 1 + e^(jw/wc) >
So far the responses have been pitiful. Your answer above is not quite right because when w=0 then H(e^jw)) will equal 1/2 you need to add a scaling factor. I don't understand why you are using H(e^jw)? I would express this in the s domain H(s)=Wc/(s+Wc) The technique I think you are looking for is the matched z transform or MZT. There isn't much info on the web so I will help out You must replace all poles (s+Wc) in the s domain with Wc/(1-exp(- Wc*T)(1-exp(-Wc*T)*z^-1) so Wc/(s+Wc)= Wc/(Wc/(1-exp(-Wc*T)(1-exp(-Wc*T)*z^-1)). When you simplify this the result will be H(z)=(1-exp(-Wc*T)*z/(z-exp(- Wc*T)). From this it is easy to convert to a difference equation. y(n)=exp(-Wc*T)*y(n-1)+(1-exp(-Wc*T)*x(n). You can see that Wc/(1-exp(-Wc*T) scales the result so the gain will be zero when z=1 or the steady state value. What I like about MZT is that it doesn't add poles and is accurate in that the coefficients don't have to be warpped. It is also easy to memorize unlike the z transform tables. I rarely use Tustin's approximation. Peter Nachtwey
On Fri, 7 Dec 2007 07:08:20 -0800 (PST), pnachtwey
<pnachtwey@gmail.com> wrote:

   (snipped)

>> >So far the responses have been pitiful.
Hi Peter, Ya' get what ya' pay for. [-Rick-]