ELECTRONICS - FilterS - guide series
Introduction to Electronics - Filters: Impulse response of first-order filters
Understand how first-order filters respond to an impulse input and how their exponential decay characterises system dynamics. Learn the mathematical foundation, simulate the response, and explore how the impulse response reveals a filter’s behaviour over time.
The impulse response describes how a filter reacts to a sudden, instantaneous input—an impulse. In theory, an impulse is represented by a Dirac delta function, which has an infinitely high peak at time zero and an area of 1. In practical terms, the impulse response provides a complete characterisation of a linear time-invariant system. For first-order filters, such as an RC low-pass filter, the impulse response reveals the filter's inherent dynamics and is useful for predicting the output for any arbitrary input through . The impulse response is closely related to the step response; in fact, for causal systems, the impulse response is the derivative of the step response.
Circuit Diagram
Consider the same RC low-pass filter used in previous articles:
When an impulse is applied at the input, the output voltage of an RC low-pass filter is determined by how the capacitor charges through the resistor.
Mathematical Underpinning
For an RC low-pass filter subjected to a step input of amplitude [math]V_{in}[/math], the step response is
[math]V_{out}(t)=V_{in}\left(1-e^{-t/RC}\right).[/math]
The impulse response, [math]h(t)[/math], is the time derivative of the step response (assuming zero initial conditions). Taking the derivative, we obtain
[math]h(t)=\frac{d}{dt}\left[V_{in}\left(1-e^{-t/RC}\right)\right] = V_{in}\left(\frac{1}{RC}\,e^{-t/RC}\right).[/math]
For a normalized impulse with area 1, we set [math]V_{in}=1[/math], so
[math]h(t)=\frac{1}{RC}\,e^{-t/RC} \quad \text{for } t\ge 0,[/math]
and
[math]h(t)=0 \quad \text{for } t<0.[/math]
This exponential decay function defines the behaviour of the filter in response to an impulse.
Demo Python Script
The following Python script simulates the impulse response of an RC low-pass filter. The script computes [math]h(t)[/math] using the formula above and plots the impulse response over a suitable time range. In this example, we assume [math]R=1\,\text{k}\Omega[/math] and [math]C=1\,\mu\text{F}[/math].
import numpy as np
import matplotlib.pyplot as plt
# Time vector
t = np.linspace(0, 5, 1000) # 0 to 5 ms
# Parameters
tau = 1 # Time constant in milliseconds
impulse_time = 2 # Impulse occurs at 2 ms
impulse_magnitude = 1000
# Create input impulse signal
input_impulse = np.zeros_like(t)
input_impulse[np.argmin(np.abs(t - impulse_time))] = impulse_magnitude
# Create impulse response: zero before impulse_time, then exponential decay
impulse_response = np.zeros_like(t)
impulse_response[t >= impulse_time] = (
impulse_magnitude * np.exp(-(t[t >= impulse_time] - impulse_time) / tau)
)
# Plot
plt.figure(figsize=(6, 4))
plt.plot(t,
impulse_response,
label='Impulse Response h(t)',
color='blue')
plt.plot(t,
input_impulse,
label='Input Impulse',
color='red',
linestyle='--')
plt.axvline(x=impulse_time,
color='red',
linestyle='--',
alpha=0.5) # Visual marker for impulse time
plt.title('Impulse Response of RC Low-Pass Filter (Impulse at 2 ms)')
plt.xlabel('Time (ms)')
plt.ylabel('Amplitude')
plt.legend()
plt.grid(True)
plt.xlim(0, 5)
plt.ylim(0, 1100)
plt.tight_layout()
plt.show()
And, here is the plot generated by the script:
The red dashed vertical line is at t = 0 indicates the moment of the input impulse.
Key Takeaways
Here's a few key points to remember from this article:
- The impulse response characterises the complete dynamic behaviour of a filter by showing its output when subjected to an impulse input.
- For an RC low-pass filter, the impulse response is given by [math]h(t)=\frac{1}{RC}\,e^{-t/RC} \quad (t\ge 0),[/math] which reflects an exponential decay governed by the time constant [math]RC[/math].
Ready for the next tutorial in this series? Here's the next one, or choose an alternative from the list of articles in the side bar. There's also lots of interesting article in our Blog. where you can read about off-grid communication technologies, electronics test equipment, course updates, and much more.
INTRODUCTION TO ELECTRONICS FILTERS
This course and eBook introduces the core concepts of RC and RL filters, helping you understand, design, and analyse these essential circuits. You will learn how low-pass and high-pass filters shape signals, calculate key parameters like cutoff frequency and phase shift, and explore practical applications such as audio tone control, noise filtering, sensor signal conditioning, and switch debouncing.
Jump to another article
- Introduction to Filters
- Real-world applications of first- and second-order filters
- The four filters: low-pass, high-pass, band-pass, and band-stop
- Example: Compare a filtered and unfiltered signal
- Dive into first order RC and RL filters
- What is a first-order filter?
- RC low-pass filter behaviour
- RC high-pass filter behaviour
- RL low-pass filter behaviour
- RL high-pass filter behaviour
- Voltage division in AC using reactance
- Cutoff frequency
- Phase shift
- Step response of first-order filters
- Impulse response of first-order filters
- Just in case... definitions
We publish fresh content each week. Read how-to's on Arduino, ESP32, KiCad, Node-RED, drones and more. Listen to interviews. Learn about new tech with our comprehensive reviews. Get discount offers for our courses and books. Interact with our community. One email per week, no spam; unsubscribe at any time