Impulse response: Difference between revisions

Content deleted Content added
clean up loudspeaker and electronic processing sections
OAbot (talk | contribs)
m Open access bot: url-access updated in citation with #oabot.
 
(275 intermediate revisions by more than 100 users not shown)
Line 1:
{{Short description|Output of a dynamic system when given a brief input}}
{{Cleanup|May 2006}}
[[File:Impulse.png|thumb|300px|right|The impulse response from a simple audio system. Showing, from top to bottom, the original impulse, the response after high frequency boosting, and the response after low frequency boosting.]]
 
In [[Image:Impulse.png|thumb|300px|right|Thesignal Impulseprocessing]] responseand from[[control a simple audio system. Showingtheory]], the original '''impulse, with high frequencies boostedresponse''', then with low frequencies boosted.]]In simple terms, theor '''impulse response function''' ('''IRF'''), of a [[dynamic system]] is its output when presented with a very brief input signal, called an [[Dirac delta function|impulse]] ({{math|δ(''t'')}}). WhileMore generally, an impulse response is athe difficultreaction conceptof toany imagine,dynamic andsystem anin impossibleresponse thingto insome reality,external itchange. representsIn both cases, the limitimpulse caseresponse describes the reaction of the system as a [[pulseFunction (signal processingmathematics)|pulsefunction]] made infinitely short inof time ''while'' maintaining its area (or integralpossibly (thusas givinga anfunction infinitelyof highsome peak).other While[[independent thisvariable]] isthat impossibleparameterizes inthe anydynamic realbehavior system,of itthe is a useful concept as an idealizationsystem).
 
In all these cases, the dynamic system and its impulse response may be actual physical objects, or may be mathematical systems of equations describing such objects.
== Mathematical basis ==
Mathematically, an impulse can be modeled as a [[Dirac delta function]]. Suppose that T is a (discrete) system, i.e. something that takes an input x[n] and produces an output y[n]:
:<math>
y\left[ n\right] =T\left[ x\left[ n\right] \right]
</math>
 
Since the impulse function contains all frequencies (see [[Dirac delta function#Fourier transform|the Fourier transform of the Dirac delta function]], showing infinite frequency bandwidth that the Dirac delta function has), the impulse response defines the response of a [[linear time-invariant system]] for all frequencies.
So T is an operator acting on sequences (over the integers) and producing sequences. Beware that T is not ''the'' system but a mathematical representation of the system. Now, T can be non-linear, e.g.
:<math>
T\left[ x\left[ n\right] \right] =x^{2}\left[ n\right]
</math>
 
==Mathematical considerations==
or linear e.g.
[[Image:unit impulse.gif|thumb|right|Unit sample function]]
:<math>
T\left[ x\left[ n\right] \right] =x\left[ n-1\right]
</math>.
 
{{See also|Vector autoregression#Impulse response|Moving average model#Interpretation}}
Suppose that T is linear. Then
Mathematically, how the impulse is described depends on whether the system is modeled in [[discrete-time|discrete]] or [[continuous-time|continuous]] time. The impulse can be modeled as a [[Dirac delta function]] for [[continuous-time]] systems, or as the [[Kronecker delta|discrete unit sample function]] for [[discrete-time]] systems. The Dirac delta represents the limiting case of a [[pulse (signal processing)|pulse]] made very short in time while maintaining its area or integral (thus giving an infinitely high peak). While this is impossible in any real system, it is a useful idealization. In [[Fourier analysis]] theory, such an impulse comprises equal portions of all possible excitation frequencies, which makes it a convenient test probe.
:<math>
T\left[ x\left[ n\right] +y\left[ n\right] \right] =T\left[ x\left[ n\right] \right] +T\left[ y\left[ n\right] \right]
</math>
 
Any system in a large class known as ''linear, time-invariant'' ([[Time-invariant system|LTI]]) is completely characterized by its impulse response. That is, for any input, the output can be calculated in terms of the input and the impulse response. (See [[LTI system theory]].) The impulse response of a [[linear transformation]] is the image of [[Dirac's delta function]] under the transformation, analogous to the [[fundamental solution]] of a [[partial differential operator]].
and
:<math>
T\left[ \lambda x\left[ n\right] \right] =\lambda T\left[ x\left[ n\right] \right]
</math>
 
It is usually easier to analyze systems using [[transfer function]]s as opposed to impulse responses. The transfer function is the [[Laplace transform]] of the impulse response. The Laplace transform of a system's output may be determined by the multiplication of the transfer function with the input's Laplace transform in the [[complex plane]], also known as the [[frequency ___domain]]. An [[inverse Laplace transform]] of this result will yield the output in the [[time ___domain]].
Suppose also that T is invariant under translation i.e. if <math>y\left[ n\right] =T\left[ x\left[ n\right] \right]</math> then <math>y\left[ n-k\right] =T\left[ x\left[ n-k\right] \right]</math>. In such a system any output can be calculated in terms of the input and a very special sequence called impulse response which characterizes the system completely. This can be seen as follows: Take the identity
:<math>
x\left[ n\right] =\sum_{k}x\left[ k\right] \delta \left[ n-k\right]
</math>
 
To determine an output directly in the time ___domain requires the [[convolution]] of the input with the impulse response. When the transfer function and the Laplace transform of the input are known, this convolution may be more complicated than the alternative of multiplying two functions in the [[frequency ___domain]].
and take the T of both sides
:<math>
T\left[ x\left[ n\right] \right] =T\left[ \sum_{k}x\left[ k\right] \delta \left[ n-k\right] \right]
</math>
 
The impulse response, considered as a [[Green's function]], can be thought of as an "influence function": how a point of input influences output.
Of course this has a meaning only if
:<math>
\sum_{k}x\left[ k\right] \delta \left[ n-k\right]
</math>
lies in the ___domain of T. Now, since T is linear and invariant under translation we may write
 
==Practical applications==
<math>T\left[ x\left[ n\right] \right] =\sum_{k}x\left[ k\right] T\left[ \delta \left[ n-k\right] \right]</math>
In practice, it is not possible to perturb a system with a perfect impulse. One can use a brief pulse as a first approximation. Limitations of this approach include the duration of the pulse and its magnitude. The response can be close, compared to the ideal case, provided the pulse is short enough. Additionally, in many systems, a pulse of large intensity may drive the system into the nonlinear regime. Other methods exist to construct an impulse response. The impulse response can be calculated from the input and output of a system driven with a pseudo-random sequence, such as [[Maximum length sequence|maximum length sequences]].<ref>{{cite book | title = Master Handbook of Acoustics | author = F. Alton Everest | author-link = F. Alton Everest | publisher = McGraw-Hill Professional | year = 2000 | isbn = 0-07-136097-2 | edition = Fourth | url = https://books.google.com/books?id=sgwg1Vwm9VUC&q=%22impulse+response%22+loudspeaker+testing&pg=RA1-PA510 }}</ref> Another approach is to take a sine sweep measurement and process the result to get the impulse response.<ref>{{cite journal |last1=Stan |first1=Guy-Bart |date=April 2002 |title=Comparison of Different Impulse Response Measurement Techniques |url=https://aes2.org/publications/elibrary-page/?id=11083 |journal=Journal of the Audio Engineering Society |volume=50 |issue=4 |page= |pages=249-262 |access-date=2 May 2025}}</ref>
 
===Loudspeakers===
Since the output y[k] is given by
Impulse response [[loudspeaker]] testing was first developed in the 1970s. Loudspeakers suffer from phase inaccuracy (delayed frequencies) which can be caused by passive [[Audio crossover|crossovers]], resonance, cone momentum, the internal volume, and vibrating enclosure panels.<ref>{{cite journal |title=Modeling and Delay-Equalizing Loudspeaker Responses |journal=Journal of the Audio Engineering Society |last1=Mäkivirta |first1=Aki |last2=Liski |first2=Juho |last3=Välimäki |first3=Vesa |volume=66 |issue=11 |year=2018 |pages=922–934 |doi=10.17743/jaes.2018.0053 |url=https://aes2.org/e-lib/download.cfm/pg922.pdf?ID=19869 }}</ref> The impulse response can be used to indicate when such inaccuracies can be improved by different materials, enclosures or crossovers.
:<math>
y\left[ k\right] =T\left[ x\left[ k\right] \right]
</math>
we may write
:<math>
y\left[ n\right] =\sum_{k}x\left[ k\right] T\left[ \delta \left[ n-k\right] \right]
</math>
 
Loudspeakers have a physical limit to their power output, thus the input amplitude must be limited to maintain linearity. This limitation led to the use of inputs like [[maximum length sequence]]s in obtaining the impulse response.<ref>{{cite web|url=https://books.google.com/books?id=q6w7AAAAMAAJ&q=%22impulse+response%22+%22loudspeaker+testing%22|title=Monitor|date=9 April 1976|access-date=9 April 2018|via=Google Books}}</ref>
Putting
:<math>
h\left[ n-k\right] =T\left[ \delta \left[ n-k\right] \right]
</math>
 
===Electronic processing===
we have finally
Impulse response analysis is a major facet of [[radar]], [[ultrasound imaging]], and many areas of [[digital signal processing]]. An interesting example is found in [[broadband]] internet connections. [[Digital subscriber line]] service providers use [[Adaptive filter|adaptive equalization]] to compensate for signal distortion and interference from using copper phone lines for transmission.
:<math>
y\left[ n\right] =\sum_{k}x\left[ k\right] h\left[ n-k\right]
</math>
 
===Control systems===
The sequence <math>h\left[ n\right]</math> is the impulse response of the system represented by T. As can be seen from the above, h[n] is the output of the system when its input is the discrete Dirac delta. Similar results hold for continuous time systems.
In [[control theory]] the impulse response is the response of a system to a [[Dirac delta function|Dirac delta]] input. This proves useful in the analysis of [[dynamic systems]]; the [[Laplace transform]] of the delta function is 1, so the impulse response is equivalent to the [[inverse Laplace transform]] of the system's [[transfer function]].
 
===Acoustic and audio applications===
As a conceptual example consider a room and a balloon in it at point p. The balloon pops and makes a "pow" sound. Here the room is a system T which takes the "pow" sound and diffuses it through multiple reflections. The input <math>\delta_{p}[n]</math> is the "pow", which is similar (due in part to its short duration) to a Dirac delta, and the output h[n,p] is the sequence of the damped sound. Here h[n,p] depends on the ___location (point p) of the balloon. If we know h[n,p] for every p of the room, then we actually know the impulse response of the room. It is then possible to predict its response to any sound produced in it.
In acoustic and audio settings, impulse responses can be used to capture the acoustic characteristics of many things. The reverb at a ___location, the [[Acoustic guitar#Body shape|body]] of an instrument, certain analog audio equipment, and [[Amplifier modeling|amplifiers]] are all emulated by impulse responses. The impulse is convolved with a dry signal in [[convolution reverb|software]], often to create the effect of a physical recording. Various packages containing impulse responses from specific locations are available online.<ref>http://www.acoustics.hut.fi/projects/poririrs/ the Concert Hall Impulse Responses from Pori, Finland</ref>
 
===Economics===
== Mathematical applications ==
In [[economics]], and especially in contemporary [[Model (macroeconomics)|macroeconomic modeling]], impulse response functions are used to describe how the economy reacts over time to [[exogenous]] impulses, which economists usually call [[Shock (economics)|shocks]], and are often modeled in the context of a [[vector autoregression]]. Impulses that are often treated as exogenous from a macroeconomic point of view include changes in [[government spending]], [[tax rate]]s, and other [[fiscal policy]] parameters; changes in the [[monetary base]] or other [[monetary policy]] parameters; changes in [[total factor productivity|productivity]] or other [[production function|technological]] parameters; and changes in [[Utility#Preference|preferences]], such as the degree of [[discount factor|impatience]]. Impulse response functions describe the reaction of [[Exogenous and endogenous variables|endogenous]] macroeconomic variables such as [[GDP|output]], [[Consumption (economics)|consumption]], [[Investment#Economics|investment]], and [[employment]] at the time of the shock and over subsequent points in time.<ref>{{cite book |author-link=Helmut Lütkepohl |first=Helmut |last=Lütkepohl |year=2008 |chapter=Impulse response function |title=The New Palgrave Dictionary of Economics |edition=2nd }}</ref><ref>{{cite book |author-link=James D. Hamilton |first=James D. |last=Hamilton |year=1994 |title=Time Series Analysis |chapter=Difference Equations |page=5 |publisher=Princeton University Press |isbn=0-691-04289-6 }}</ref> Recently, asymmetric impulse response functions have been suggested in the literature that separate the impact of a positive shock from a negative one.<ref>{{cite journal |last=Hatemi-J |first=A. | year=2014 |title= Asymmetric generalized impulse responses with an application in finance |journal=[[Economic Modelling]] |volume=36 |pages=18–2 |doi=10.1016/j.econmod.2013.09.014 |url=https://ideas.repec.org/a/eee/ecmode/v36y2014icp18-22.html|url-access=subscription }}</ref>
In the language of [[mathematics]], the impulse response of a [[linear transformation]] is the image of [[Dirac's delta function]] under the transformation.
 
==See also==
The [[Laplace transform]] of the impulse response function is known as the [[transfer function]]. It is usually easier to analyze systems using transfer functions as opposed to impulse response functions. The [[Laplace transform]] of a system's output may be determined by the multiplication of the transfer function with the input function in the [[complex plane]], also known as the [[frequency ___domain]]. An [[inverse Laplace transform]] of this result will yield the output function in the [[time ___domain]].
{{Div col}}
* [[Convolution reverb]]
* [[Duhamel's principle]]
* [[Dynamic stochastic general equilibrium]]
* [[Frequency response]]
* [[Gibbs phenomenon]]
* [[Küssner effect]]
* [[Linear response function]]
* [[LTI system theory]]
* [[Point spread function]]
* [[Pre-echo]]
* [[Step response]]
* [[System analysis]]
* [[Time constant]]
* [[Transient (oscillation)]]
* [[Transient response]]
* [[Variation of parameters]]
* [https://www.roomeqwizard.com/ Room EQ Wizard]: Software for creating audio impulse responses
{{div col end}}
 
==References==
To determine an output function directly in the time ___domain requires the [[convolution]] of the input function with the impulse response function. This requires the use of integrals, and is usually more difficult than simply multiplying two functions in the [[frequency ___domain]].
{{Reflist}}
 
==External links==
== Practical applications ==
* {{Commons category-inline}}
In real, practical systems, it is not possible to produce a perfect impulse to serve as input for testing. Therefore, a brief pulse is used as an approximation of an impulse. Provided that the pulse is short compared to the impulse response, the result will be near enough to the true, theoretical, impulse response.
 
{{Authority control}}
=== Loudspeakers ===
A very useful real application that demonstrates this idea was the development of impulse response [[loudspeaker]] testing in the 1980s which led to big improvements in loudspeaker design. Loudspeakers suffer from [[colouration]], a defect unlike normal measured properties like [[frequency response]]. Colouration is caused by small delayed sounds that are the result of resonance, energy storage in the cone, the internal volume, or the enclosure panels vibrating. Colouration 'smears' the sound which reduces the 'clarity' and 'transparency.' Measuring the impulse response, which is a direct plot of this '[[time-smearing]]' provided a tool for use in reducing resonances by the use of improved materials for cones and enclosures. Initially, short pulses were used, but the need to limit their amplitude to maintain the linearity of the system meant that the resulting output was very small and hard to distinguish from the [[noise]]. Later techniques therefore moved towards the use of other types of input, like [[maximal length sequence]]s, and using computer processing to derive the impulse response. Recently this has led to graphical [[spectrogram]] plots that show delayed response against time for each frequency.
 
=== Digital filtering ===
Impulse response is a very important concept in the design of [[digital filters]] for audio processing, because these differ from 'real' filters in often having a [[pre-echo]], which the ear is not accustomed to.
 
=== Electronic processing ===
Impulse response analysis is a major facet of [[radar]], [[ultrasound imaging]], and many areas of [[digital signal processing]]. An interesting example would be [[broadband]] internet connections. Where once it was only possible to get 4 kHz speech signal over a local telephone wire, or data at 300 bit/s using a modem, it is now commonplace to pass 2 Mb/s over these same wires, largely because of '[[Adaptive filter|adaptive equalisation]]' which processes out the time smearing and echoes on the line.
 
=== Control systems ===
In [[control theory]] the impulse response is the response of a system to a Dirac delta input. This proves useful in the analysis of [[dynamic systems]]: the [[Laplace transform]] of the delta function is 1, so the impulse response is equivalent to the [[inverse Laplace transform]] of the system's [[transfer function]].
 
== See also ==
*[[Kronecker delta]]
*[[Dirac delta function]]
*[[Unit impulse function]]
*[[Green function]]
*[[frequency response]]
*[[LTI system theory]]
*[[system analysis]]
*[[transfer function]]
*[[Convolution reverb]]
*[[transient]]
*[[transient response]]
 
[[Category:Signal processing]]
[[Category:Control theory]]
[[Category:Time ___domain analysis]]
 
[[Category:Analog circuits]]
[[de:Impulsantwort]]
[[fr:Réponse impulsionnelle]]
[[nl:Impulsantwoord]]
[[pt:Resposta ao impulso]]
[[ru:Импульсная переходная функция]]
[[sv:Impulssvar]]
[[vi:Đáp ứng xung]]