Whenever I am given a system type with a certain transfer function, I am always asked to proceed to find out the 1. impulse response and 2. step response of the system. My question is, what is so special about these two response types that other responses, like for example parabolic response, is not what I am asked to find out?

  • 2
    \$\begingroup\$ From an impulse response it is really easy to determine response to any other signal. \$\endgroup\$
    – jippie
    Feb 26, 2014 at 6:55
  • \$\begingroup\$ How is that possible? How can I use the step response to determine a triangulated waveform response or sawtooth voltage response?? \$\endgroup\$ Feb 26, 2014 at 6:57
  • 3
    \$\begingroup\$ See this: dsp.stackexchange.com/questions/536/… \$\endgroup\$
    – Andy aka
    Feb 26, 2014 at 10:49
  • 1
    \$\begingroup\$ I go into some background on impulse and step response and include a real world example here: electronics.stackexchange.com/a/27861/4512 \$\endgroup\$ Feb 26, 2014 at 15:08

5 Answers 5


Actually, when you apply impulse signal to any LTI system, the output you get is 'impulse response'. Similarly, when input to LTI system is step signal, the output it produces is known as 'step response'.

Now, sampled version of any signal can be represented as the product of original continuous time signal with shifted version of unit impulse signal (Sifting Property). Hence, the response of LTI system to any input signal is nothing but convolution of input signal & impulse response of LTI system. Hence, impulse response is very important practically. That's why they usually ask about finding impulse response of LTI system.

For mathematical details, you may want to look at this.


I think the link to the dsp SE is very good. The mathematics to fully explain the continuous case is a bit delicate so it is probably best to only understand the main ideas.

However, given your second question in the comment I wanted to write something short not mentioned in the other posts.

First lets review the terminology:

Let \$H\$ be your LTI system. That is, we input functions into \$H\$ and \$H\$ returns functions. We write this as \$H(f(t))(T) = H(f)(T)\$. It has two main features given by the name.

Time invariance: \$H(f(t+\tau)) = H(f)(T + \tau)\$

Linearity: \$H(af(t)+bg(t)) = aH(f)(T)+bH(g)(T)\$

The time-domain transfer function of \$H\$ is defined to be the (unique) function \$h(t)\$ such that for all mathematically suitable functions \$f(t)\$ we have $$H(f)(T) = (f*h)(T) = \int_{\mathbb{R}}f(t)h(T-t)dt.$$

Suppose that \$u_0(t)\$ denotes the unit step function at \$0\$ and we know \$H(u_0)(T) = y(T)\$. By time invariance we know the response to the step function \$u_\tau(t)\$ (the unit step function where the step occurs at time \$\tau\$) is \$y(T-\tau)\$. By linearity, if \$\tau_1 < \tau_2\$ we know the response to their difference \$u_{\tau_1}(t) - u_{\tau_2}(t) = u_{[\tau_1,\tau_2]}\$ is \$y(T-\tau_1)-y(T-\tau_2)\$.

Summing up, given any interval \$I=[\tau_1,\tau_2]\$ we know \$H(u_{[\tau_1,\tau_2]})(T)\$. Given any mathematically suitable input \$f(t)\$ (say a sawtooth wave) we know that \$f(t)\$ is approximated by functions of the form $$\sum_i c_i u_{I_i}(t)$$ for intervals \$I_i\$.

Thus by linearity the response to input \$f(t)\$ is approximated by $$H(f)(T) \sim \sum_i c_i H(u_{I_i})(T) = \sum_i c_i \int_{I_i}h(T-t)dt$$ where $$\int_Ih(T-t)dt = \int_{\tau_1}^{\tau_2}h(T-t)dt = y(T-\tau_1) - y(T-\tau_2).$$


And to expand on yuvi's answer, the step response is important because the unit step function is the integral of the unit impulse function. In the real world, it's easier to generate a step function than an impulse function, so this is what is used to measure actual systems. Knowing the relationship between the two makes it straightforward to derive the system impulse response from its step response, and then you can readily derive the response to any other stimulus from the impulse response.


To add to yuvi and Dave's answers, the transfer function of the system is nothing but the Fourier transform of the impulse response. Therefore those represent the basic behavior of the system in the frequency and time domain, respectively.


Impulse response:

  • as its Laplace transform is 1, the impulse response in the frequency domain is just the transfer function of your model;
  • makes it easy to estimate eventual response delays.

Step response:

  • as already pointed out by another user, given the practical impossibility (in continuous systems, not in discrete ones) to generate the impulse, the step response (whose transform is a pure integrator) can be used to estimate the impulse response. In practice though it's better to identify the model directly with other system identification approaches;
  • the analysis of the response gives many useful insights in the system, especially during tests. From there you can get peak (maximum gain in Bode magnitude plot), estimate the response delay by inspection, estimate the main time constant, estimate its damping coefficient, and evaluate eventual performance requirements.

However, in reality you are not 'always asked' to find out those responses, but rather to guarantee some degrees of performance, or to design a good control system.

For reference tracking problems, I believe ramps and parabolas, but even sines and anything that the real world might request could be important as well to evaluate the performance of the system.

For system identification purposes, a persistently exciting signal (like PRBS) could be better than a step, and a frequency sweep could give you more interesting insight in the system's frequency response.

For PID tuning, step response is useful because there are many rules-of-thumb that require its response.

And so on.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.