Digital filtering
|
| |
| Series | Geophysical References Series |
|---|---|
| Title | Digital Imaging and Deconvolution: The ABCs of Seismic Exploration and Processing |
| Author | Enders A. Robinson and Sven Treitel |
| Chapter | 5 |
| DOI | http://dx.doi.org/10.1190/1.9781560801610 |
| ISBN | ISBN 9781560801481 |
| Store | SEG Online Store |
On such a full sea are we now afloat; And we must take the current when it serves, Or lose our ventures. - William Shakespeare, ''Julius Caesar''
What is digital filtering? The behavior of analog filters ordinarily is studied in the frequency domain. Digital filtering, on the other hand, is treated more fruitfully in the time domain. A digital filter is represented by its impulse response. The impulse response is made up of a sequence of numbers that act as weighting coefficients. The output of a digital filter is obtained by convolving the digitized input signal with the filter’s impulse response.
The mechanics of digital filtering in the time domain can be described with the aid of Z-transform theory. The amplitude spectrum and the phase spectrum represent an important characterization of the filter. A digital filter is said to be causal if its output at time n depends only on its input at time n and on inputs at times before n. In Chapter 6, these ideas are related to the more familiar interpretation of filter behavior in the frequency domain.
What is a causal digital filter? As we just mentioned, a digital filter is represented by a sequence of numbers called its impulse response or its weighting coefficients. A digital filter is causal if its present output (at time n) depends only on present and past inputs (that is, depends only on inputs at times n, n – 1, n – 2, …, and so on). Another term for a causal filter is a realizable filter.
What is a constant digital filter? A constant filter is one that has a single constant weighting coefficient Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0 . Such a filter is causal. Its action is shown schematically by the block diagram in Figure 1a, in which the input is on the left and the output is on the right of the rectangular box that indicates the filter.
Let us show that a constant filter scales the input. We can illustrate the action of the constant filter with Table 1 (in which we have let Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0={0.5} ). Figure 1b shows the input and the output. The output is the input scaled by the constant coefficient 0.5.
What is a unit-delay digital filter? We introduce the concept of a digital filter that produces a unit delay. Such a digital filter is called the unit-delay filter. Let us represent this filter with the symbol Z. Thus, we have the block diagram shown in Figure 2a. Figure 2b shows the input signal (the original signal) and the output signal (the signal with a delay of one time unit).

| Time index n | Input Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n | Output Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): y_n\ =\ {0.5}\ x_n |
|---|---|---|
| 0 | 10 | 5 |
| 1 | 20 | 10 |
| 2 | 10 | 5 |
| 3 | 10 | 5 |
| 4 | –10 | –5 |
| 5 | 0 | 0 |

We see that this filter is causal because its output at time n depends only on its input at time n – 1. In terms of the readings, we have
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} y_1 \; = \;x_0 ,\;y_2 \; = \;x_1 ,\;y_3 \; = \;x_2 ,\; \ldots \;. \end{align} ()
Table 2 shows the results.
What is the symbol Z? The symbol Z used here has a special mathematical meaning: Z represents an operator that produces a unit delay. Thus, we call Z the unit-delay operator. It follows that Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): Z^{-1} represents an operator that produces a unit advance. As we will see, the symbol Z is the variable that defines the Z-transform. Used in this way, Z is a complex variable in the complex Z-plane.
What is a series connection? If we connect two unit-delay filters in series, we have the situation shown in Figure 3a. By a series connection, we mean that the output from filter 1 is the input to filter 2. We see that the resulting overall filter is causal because its output at time n depends only on the input at time n – 2. Now, filter 1 produces a unit delay, so its output is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_{n-1} . Next we use the fact that the input to filter 2 is the output from filter 1, so the input to filter 2 is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_{n-1} . Because filter 2 produces a unit delay, its output is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_{n-2} .
| Time index n | Input $ x_{n} $ | Output Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): y_n = x_{n - 1} |
|---|---|---|
| 0 | 10 | - |
| 1 | 20 | 10 |
| 2 | 10 | 20 |
| 3 | 0 | 10 |
| 4 | –10 | 0 |
| 5 | 0 | –10 |
| 6 | - | 0 |

| Time index n | Input Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n | Output from Filter 1 | Input to Filter 2 | Output Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): y_n=x_{n-2} |
|---|---|---|---|---|
| 0 | 10 | - | - | - |
| 1 | 20 | 10 | 10 | - |
| 2 | 10 | 20 | 20 | 10 |
| 3 | 0 | 10 | 10 | 20 |
| 4 | –10 | 0 | 0 | 10 |
| 5 | 0 | –10 | –10 | 0 |
| 6 | - | 0 | 0 | –10 |
| 7 | - | - | - | 0 |

In terms of the readings, we have the results shown in Table 3. Thus, two unit-delay filters in series result in a filter of delay two. Figure 3b shows the input and output signals.
In summary, we see that two unitdelay filters in series are equivalent to a filter with a two-unit delay. That is, if the input is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n , the output is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_{n-2} . Thus, a delay of two units is represented by the mathematical operator Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): Z^2 (i.e., Z to the second power), with the exponent 2 representing the delay (Figure 4a).
What happens when we connect N unit-delay filters in series? By the same reasoning as above, we see that N unit-delay filters in series are equivalent to a filter with an N-unit delay. That is, if the input is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n , the output is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_{n-N} . A delay of N units is represented by the mathematical operator Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): Z^{N} (i.e., Z to the Nth power), with the exponent N representing the delay (Figure 4b).
What happens when N = 0? Because the exponent represents the delay, we see that in this case, the delay is zero, so input is equal to output (Figure 4c). Thus, the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): Z^0 represents the identity filter, and in keeping with ordinary algebra, we let Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): Z^0=1 . We see that the N-unit delay filter is causal for any nonnegative value of N (i.e., for N > 0) because the output at time n depends only on input at time n – N. The constant filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0 (described previously) can be represented more explicitly by the term Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0Z^0 .
Now let us connect a constant filter and a unit-delay filter in series. The series (or cascaded) combination of a constant filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1} followed by the unit-delay filter Z gives the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1}Z , the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1} connected in series with the filter Z is shown in Figure 5a. We see that this filter is causal because its output at time n depends on its input at time n – 1. We can illustrate the action of the filter by Table 4 (in which we have let Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1}=0.25 ) as well as by Figure 5b.
Next we connect a unit-delay filter and a constant filter in series. We notice that the weighting coefficient Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1} is associated with the unit-delay filter. It is evident that the series combination of the Z filter followed by the Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1} filter gives the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): Zb_{1} (Figure 5c). We can illustrate the action of the filter by Table 5 (in which we have let Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1}=0.25 ). Hence, we see that the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1}Z is equivalent to the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): Zb_{1} .

| Time index n | Input Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n | Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_1 \ x_n | Output Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): y_n=b_{1}x_{n-1} |
|---|---|---|---|
| 0 | 10 | 2.5 | - |
| 1 | 20 | 5.0 | 2.5 |
| 2 | 10 | 2.5 | 5.0 |
| 3 | 0 | 0.0 | 2.5 |
| 4 | –10 | –2.5 | 0.0 |
| 5 | 0 | 0.0 | –2.5 |
| 6 | - | - | 0.0 |
| Time index n | Input Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n | Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_{n - 1} | Output Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): y_n=x_{n-1}b_{1} |
|---|---|---|---|
| 0 | 10 | - | - |
| 1 | 20 | 10 | 2.5 |
| 2 | 10 | 20 | 5.0 |
| 3 | 0 | 10 | 2.5 |
| 4 | –10 | 0 | 0.0 |
| 5 | 0 | –10 | –2.5 |
| 6 | - | 0 | 0.0 |

What is a parallel connection and what is a mixer? Up to this point, we have connected two digital filters in series. Now we wish to introduce a parallel connection. Such a connection will be illustrated in our block diagrams by the connecting element, as shown in Figure 6a. This figure illustrates that a parallel connecting element, when taken by itself, yields the same output on each line of a fork. The combination of the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0 and the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1}Z connected in parallel to the same input Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n would yield the block diagram shown in Figure 6b. A mixer is a device that adds (or subtracts) two inputs to yield an output. The circle in Figure 6c shows an example of such a device.
Let us diagram a two-term digital filter. The block diagram of Figure 7a depicts the filter given by Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0+b_{1}Z . We see that this filter is causal because its output at time n depends only on its input at times n and n – 1. The output of the subcomponent Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0 is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0x_{n} . The output of the subcomponent Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1}Z is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1}x_{n-1} . These two outputs then are fed as inputs into the mixer, which adds them and produces the output Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): y_n=b_0x_n+b_{1}x_{n-1} . Let us illustrate numerically the action of this filter for Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0=0.5 and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1}=0.25 so that our filter is 0.5 + 0.25 Z (Figure 7b and Table 6). The block diagram shown in Figure 7c depicts another representation of the same two-term causal filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0+b_{1}\ Z .
What happens if we connect a constant filter and a unit-delay filter in series? As we have seen, the series connection of two unit-delay filters is equivalent to a filter with a two-unit delay. We recall that Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): Z^N represents an N-unit delay filter. A constant filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_N connected in series with the N-unit delay filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): Z^N yields the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_NZ^N , shown by Figure 8a. For example, suppose that N = 2 and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_2=0.75 . Then the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_2 \ Z^2 (Figure 8b) is illustrated by Table 7.

| Time index n | Input Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n | Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0\ x_n | Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_{n-1} | Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_1 x_{n-1} | Output Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): y_n=b_0x_n+b_{1}x_{n-1} |
|---|---|---|---|---|---|
| 0 | 10 | 5 | - | - | 5.0 |
| 1 | 20 | 10 | 10 | 2.5 | 12.5 |
| 2 | 10 | 5 | 20 | 5.0 | 10.0 |
| 3 | 0 | 0 | 10 | 2.5 | 2.5 |
| 4 | –10 | –5 | 0 | 0.0 | –5.0 |
| 5 | 0 | 0 | –10 | –2.5 | –2.5 |
| 6 | - | - | 0 | 0.0 | 0.0 |
The most general causal filter with a finite number of delay elements has the form
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} b_0+b_{1}Z+b_2Z^2+b_3Z^3+\dots +b_NZ^N \end{align} ()
The set of coefficients Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \left\{b_0,\ b_{1},\ \ b_2,\ b_3,\ b_{N}\right\} makes up the impulse-response function of the filter. For example, the filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0+b_{1} Z+b_2 Z^2 has the block diagram shown in Figure 9a. We see that this filter is causal because its output at time n depends only on its input at times n, Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): n-1 , and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): n-2 . We can illustrate this filter numerically by letting Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0=0.5, b_{1} =0.25, b_2=0.75 . Thus, the filter (Figure 9b and Table 8) is
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} y_n=b_0x_n+b_{1}x_{n-1}+b_2x_{n-2}=0.5x_n+0.25x_{n-1}+0.75x_{n-2}. \end{align} ()
The Nth-order causal filter Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0+b_{1}Z+...+b_NZ^N can be illustrated by the block diagram shown in Figure 10.

| Time index n | Input Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n | Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_{x-2} | Output Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): y_n=b_2x_{n-2} |
|---|---|---|---|
| 0 | 10 | - | - |
| 1 | 20 | - | - |
| 2 | 10 | 10 | 7.5 |
| 3 | 0 | 20 | 15.0 |
| 4 | –10 | 10 | 7.5 |
| 5 | 0 | 0 | 0.0 |
| 6 | - | –10 | –7.5 |
| 7 | - | 0 | 0.0 |
What is a feedforward filter? In Figure 10, we see that the input is fed forward through the delay boxes and the impulse-response-coefficient boxes to produce the output. As a result, we call a causal filter of this type a causal feedforward filter. The set of weighting coefficients of the causal feedforward filter is also called the impulse-response function or the memory function of the filter. Because the number of coefficients is finite, such a filter is often called a causal finite impulse-response filter, or simply a causal FIR filter, where FIR is an acronym.

| Time index n | Input Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x_n | Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_0x_n | Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_{1}x_{n-1} | Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_2x_{n-2} | Output Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): y_n =\sum^{2}_{i{=0}}{b_i}x_{n-i} |
|---|---|---|---|---|---|
| 0 | 10 | 5 | - | - | 5.0 |
| 1 | 20 | 10 | 2.5 | - | 12.5 |
| 2 | 10 | 5 | 5.0 | 7.5 | 17.5 |
| 3 | 0 | 0 | 2.5 | 15.0 | 17.5 |
| 4 | –10 | –5 | 0.0 | 7.5 | 2.5 |
| 5 | 0 | 0 | –2.5 | 0.0 | –2.5 |
| 6 | - | - | 0.0 | –7.5 | –7.5 |
| 7 | - | - | - | 0.0 | 0.0 |

Now we shall explain the reason for the term impulse-response function. Let Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \{ b_0,b_{1} Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b_2,b_3,\ldots , b_N \} be the impulse-response function of a filter. Let the input to the filter be the Kronecker delta function, or unit-impulse function, given by
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} \delta =\left\{{1,\ 0,\ 0,\ }\cdots \right\} , \end{align} ()
where the 1 occurs at time 0. Then, from Figure 10, we see that the output of the filter is
Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} y = \left\{ {{b_0},\;{b_1},\;{b_2},\;{b_3},\;.\;.\;.\;,\;{b_N}} \right\}. \end{align} ()
Thus, the impulse-response function is the response of a filter to a unit impulse. The impulse-response function is also called the transfer function in the time domain.
Continue reading
| Previous section | Next section |
|---|---|
| none | Convolution |
| Previous chapter | Next chapter |
| Sampling | Frequency |
Also in this chapter