# obtaining discrete time model from impulse response or transfer function

Started by August 28, 2011
```Hi,
I am a novice in DSP. I am trying to find out discrete time model of a
system when initial gain is 1.

the transfer function is H(s)=a/(s+a);
and the impulse response is hence: h(t) = a*(e^(-at))u(t)

I don't know how to compute the discrete-time model of the impulse
response from this information.. What is the significance of the
initial gain?
```
```On Sun, 28 Aug 2011 10:10:54 -0700 (PDT), tiktak
<ciba.kiran@gmail.com> wrote:

>Hi,
>I am a novice in DSP. I am trying to find out discrete time model of a
>system when initial gain is 1.
>
>the transfer function is H(s)=a/(s+a);
>and the impulse response is hence: h(t) = a*(e^(-at))u(t)
>
>I don't know how to compute the discrete-time model of the impulse
>response from this information.. What is the significance of the
>initial gain?

Look into z-transforms and how to convert from the LaPlace s-domain to
the z-domain.   The z-domain is essentially the time-sampled (or
discrete time) representation of the s-domain.

Eric Jacobsen
http://www.ericjacobsen.org
http://www.dsprelated.com/blogs-1//Eric_Jacobsen.php
```
```On Sun, 28 Aug 2011 10:10:54 -0700, tiktak wrote:

> Hi,
> I am a novice in DSP. I am trying to find out discrete time model of a
> system when initial gain is 1.
>
> the transfer function is H(s)=a/(s+a); and the impulse response is
> hence: h(t) = a*(e^(-at))u(t)
>
> I don't know how to compute the discrete-time model of the impulse
> response from this information.. What is the significance of the initial
> gain?

What are you trying to do with your model?  The sampled-time signal that
you end up with is only an approximation of your real-word signal, so in
general any 'conversion' to discrete time is of necessity an
approximation, also.

Knowing what you're trying to do makes a big difference to what
approximation you might like to use.

If you just want to know what z-domain signal has the same impulse
response as your s-domain signal at the sampling instants, replace t with
T * k (T being your sampling time) in your stated impulse response, and
take the z transform with k as your index.

--
Tim Wescott
Control system and signal processing consulting
www.wescottdesign.com
```
```On 8/28/11 1:10 PM, tiktak wrote:
>
> I am a novice in DSP.

are you a student?  perhaps self-taught?

that's okay, but i recognize the source of your questions.

> I am trying to find out discrete time model of a
> system when initial gain is 1.

> the transfer function is H(s)=a/(s+a);

> and the impulse response is hence: h(t) = a*(e^(-at))u(t)

looks consistent.

> I don't know how to compute the discrete-time model of the impulse
> response from this information..

there are (more than) a couple of different ways to do it.  they lead to
somewhat different results that will become noticeably different at high
frequencies.

the simplest conceptual transformation from an s-plane transfer function
to a z-plane is to replace the "s" operator (which means "derivative" in
the Laplace transform) with a crude discrete-time approximation:

s  <--  (1/T) * (1 - z^-1)

(do you know what z^-1 means in your discrete-time model?)  this is the
same thing as the forward Euler's forward method of numerically solving
(a better term would be "emulating") differential equations.  1/T is the
sampling frequency.

a less crude discrete-time approximation is the bilinear transform:

s   <--  (2/T) * (1 - z^-1)/(1 + z^-1)

there are all sorts of reasons this is better.  when using the bilinear
transform, you should look up the term "frequency warping" and
compensate for that regarding the most significant frequency, which in
your case is f0 = a/(2*pi).

> What is the significance of the initial gain?

by "initial gain" do you mean the gain at DC (0 Hz)?

if that is what you mean, the significance is that H(0) = 1 which is
guaranteed since the "a" in the numerator is the same "a" in the
denominator.

another method of discretizing your continuous-time model is the
"Impulse Invariant" transformation.  in that, you define the
discrete-time impulse response to be a sampled copy of the
continuous-time imoulse response.  turns out there is overlapping and
aliasing in the time domain, which causes the DC gain to be slightly off
and sometimes part of the impulse-invariant method is to fix that gain
error.

--

r b-j                  rbj@audioimagination.com

"Imagination is more important than knowledge."

```
```
robert bristow-johnson wrote:

> another method of discretizing your continuous-time model is the
> "Impulse Invariant" transformation.  in that, you define the
> discrete-time impulse response to be a sampled copy of the
> continuous-time imoulse response.

^^^^^^^^^^^^^^^^
This is a popular misconception.

Impulse Invariant Design is a direct conversion of the location of
poles/zeroes from S domain to Z domain as Z = exp(S)

DSP and Mixed Signal Design Consultant
http://www.abvolt.com
```
```On Aug 29, 5:10&#2013266080;am, tiktak <ciba.ki...@gmail.com> wrote:
> Hi,
> I am a novice in DSP. I am trying to find out discrete time model of a
> system when initial gain is 1.
>
> the transfer function is H(s)=a/(s+a);
> and the impulse response is hence: h(t) = a*(e^(-at))u(t)
>
> I don't know how to compute the discrete-time model of the impulse
> response from this information.. What is the significance of the
> initial gain?

put t=kT
```
```On 8/28/11 4:53 PM, Vladimir Vassilevsky wrote:
>
>
> robert bristow-johnson wrote:
>
>> another method of discretizing your continuous-time model is the
>> "Impulse Invariant" transformation. in that, you define the
>> discrete-time impulse response to be a sampled copy of the
>> continuous-time imoulse response.
>
> ^^^^^^^^^^^^^^^^
> This is a popular misconception.
>

uh, Vlad, if i refrain from prepending "STUPIDENT" to the Subject
header, might you refrain from using it a few times regarding some poor
student?

the misconception is quite popular indeed.  it's a misconception with
every single DSP textbook in existence that describes "Filter Design by
Impulse Invariance" (what O&S call it in section 7.1.1 in my 1989
edition).  maybe i'm overstating it and there's some dumb Russian
language textbook that says differently.

for another indication about how popular this misconception is, you
might want to take a peek at Wikipedia:

http://en.wikipedia.org/wiki/Impulse_invariance

or maybe just google it.  there are plenty of references.

> Impulse Invariant Design is a direct conversion of the location of
> poles/zeroes from S domain to Z domain as Z = exp(S)

would you care to refer to some text or widespread publication that says

the poles map thusly in Impulse Invariance (because of partial fraction
expansion), but not the zeros.

the method you're referring to is called (at least on Wikipedia):
http://en.wikipedia.org/wiki/Matched_Z-transform_method

--

r b-j                  rbj@audioimagination.com

"Imagination is more important than knowledge."

```
```
robert bristow-johnson wrote:
> On 8/28/11 4:53 PM, Vladimir Vassilevsky wrote:
>
>>
>>
>> robert bristow-johnson wrote:
>>
>>> another method of discretizing your continuous-time model is the
>>> "Impulse Invariant" transformation. in that, you define the
>>> discrete-time impulse response to be a sampled copy of the
>>> continuous-time imoulse response.
>>
>>
>> ^^^^^^^^^^^^^^^^
>> This is a popular misconception.
>>> Impulse Invariant Design is a direct conversion of the location of
>>> poles/zeroes from S domain to Z domain as Z = exp(S)

> uh, Vlad, if i refrain from prepending "STUPIDENT" to the Subject
> header, might you refrain from using it a few times regarding some poor
> student?
> the misconception is quite popular indeed.  it's a misconception with
> every single DSP textbook in existence that describes "Filter Design by
> Impulse Invariance" (what O&S call it in section 7.1.1 in my 1989
> edition).

And if the impulse response is infinite, then what?

>  maybe i'm overstating it and there's some dumb Russian
> language textbook that says differently.

I am sorry, Robert, but there a dumb English MIT textbook of W. M.
Siebert "Circuits, Signals and Systems" that has it differently.

> for another indication about how popular this misconception is, you
> might want to take a peek at Wikipedia:
>  http://en.wikipedia.org/wiki/Impulse_invariance
> the method you're referring to is called (at least on Wikipedia):
>  http://en.wikipedia.org/wiki/Matched_Z-transform_method

Wikipedia. Ah - Ah

> or maybe just google it.  there are plenty of references.

Later. I don't care.
```
```On 8/28/11 9:30 PM, Vladimir Vassilevsky wrote:
>
>
> robert bristow-johnson wrote:
>> On 8/28/11 4:53 PM, Vladimir Vassilevsky wrote:
>>
>>>
>>>
>>> robert bristow-johnson wrote:
>>>
>>>> another method of discretizing your continuous-time model is the
>>>> "Impulse Invariant" transformation. in that, you define the
>>>> discrete-time impulse response to be a sampled copy of the
>>>> continuous-time imoulse response.
>>>
>>>
>>> ^^^^^^^^^^^^^^^^
>>> This is a popular misconception.
>>>> Impulse Invariant Design is a direct conversion of the location of
>>>> poles/zeroes from S domain to Z domain as Z = exp(S)
>
>
>> uh, Vlad, if i refrain from prepending "STUPIDENT" to the Subject
>> header, might you refrain from using it a few times regarding some
>> poor student?
>> the misconception is quite popular indeed. it's a misconception with
>> every single DSP textbook in existence that describes "Filter Design
>> by Impulse Invariance" (what O&S call it in section 7.1.1 in my 1989
>> edition).
>
> And if the impulse response is infinite, then what?

of course it's infinite (in the +t direction).  the Impulse Invariant
method is about matching the causal, decaying exponentials (this
includes the decaying sinusoids) of the continuous h(t) to the discrete
h[n].  and it does it with:

h[n] = T * h(n*T)    where  T = 1/Fs

That is what the impulse invariance method is.  and by sampling the
impulse response, that has the effect of repeating amd overlapping the
frequency response which can get the gain at DC to be off a little,
which is what might have been the "initial gain" concern of the OP.

>> maybe i'm overstating it and there's some dumb Russian language
>> textbook that says differently.
>
> I am sorry, Robert, but there a dumb English MIT textbook of W. M.
> Siebert "Circuits, Signals and Systems" that has it differently.
>

so what does Siebert say?  exactly.  i can't seem to get a good

i would invite anyone else with that textbook to chime in about it.  i
don't have it.

>> for another indication about how popular this misconception is, you
>> might want to take a peek at Wikipedia:
>> http://en.wikipedia.org/wiki/Impulse_invariance
>> the method you're referring to is called (at least on Wikipedia):
>> http://en.wikipedia.org/wiki/Matched_Z-transform_method
>
> Wikipedia. Ah - Ah

lotta crap coming outa USENET, too.  but these two articles seem
reasonably accurate.

--

r b-j                  rbj@audioimagination.com

"Imagination is more important than knowledge."

```
```On Sun, 28 Aug 2011 20:17:22 -0400, robert bristow-johnson
<rbj@audioimagination.com> wrote:

>On 8/28/11 4:53 PM, Vladimir Vassilevsky wrote:
>>
>>
>> robert bristow-johnson wrote:
>>
>>> another method of discretizing your continuous-time model is the
>>> "Impulse Invariant" transformation. in that, you define the
>>> discrete-time impulse response to be a sampled copy of the
>>> continuous-time imoulse response.
>>
>> ^^^^^^^^^^^^^^^^
>> This is a popular misconception.
>>
>
>uh, Vlad, if i refrain from prepending "STUPIDENT" to the Subject
>header, might you refrain from using it a few times regarding some poor
>student?
>
>the misconception is quite popular indeed.  it's a misconception with
>every single DSP textbook in existence that describes "Filter Design by
>Impulse Invariance" (what O&S call it in section 7.1.1 in my 1989
>edition).  maybe i'm overstating it and there's some dumb Russian
>language textbook that says differently.
>
>for another indication about how popular this misconception is, you
>might want to take a peek at Wikipedia:
>
>  http://en.wikipedia.org/wiki/Impulse_invariance
>
>or maybe just google it.  there are plenty of references.
>
>> Impulse Invariant Design is a direct conversion of the location of
>> poles/zeroes from S domain to Z domain as Z = exp(S)
>
>would you care to refer to some text or widespread publication that says
>
>the poles map thusly in Impulse Invariance (because of partial fraction
>expansion), but not the zeros.
>
>the method you're referring to is called (at least on Wikipedia):
>  http://en.wikipedia.org/wiki/Matched_Z-transform_method

Hi Robert,
you are correct in that the 'impulse invariance' filter
design technique (where the discrete-time filter's impulse
response is a sampled version of a continuous-time filter's
impulse response) is in almost every DSP textbook in existence.

The earliest description of that filter design technique
that I've found is in a paper by two of DSP's greatest
pioneers: "Digital Filter Design Techniques in the Frequency
Domain", by Charles rader and Bernard Gold.  That paper was
in the Feb. 1967 issue the the 'Proceedings of the IEEE'.
That filter design technique, then, is over 40 years old.

Robert, where were you in 1967?  Ha ha.
That year I was enrolled in a two-year technical school
tryin' to figure out how vacuum tubes, capacitors, and
transformers worked.

See Ya',
[-Rick-]
```