High-pass filter
From Wikipedia, the free encyclopedia
A high-pass filter is a filter that passes high frequencies well, but attenuates (reduces the amplitude of) frequencies lower than the cutoff frequency. The actual amount of attenuation for each frequency varies from filter to filter. It is sometimes called a low-cut filter; the terms bass-cut filter or rumble filter are also used in audio applications. A high-pass filter is the opposite of a low-pass filter, and a band-pass filter is a combination of a high-pass and a low-pass.
It is useful as a filter to block any unwanted low frequency components of a complex signal while passing the higher frequencies. Of course, the meanings of 'low' and 'high' frequencies are relative to the cutoff frequency chosen by the filter designer.
Contents |
[edit] Implementation
The simplest electronic high-pass filter consists of a capacitor in series with the signal path in conjunction with a resistor in parallel with the signal path. The resistance times the capacitance (R×C) is the time constant (τ); it is inversely proportional to the cutoff frequency, at which the output power is half the input (−3 dB):
Where f is in hertz, τ is in seconds, R is in ohms, and C is in farads.
[edit] Digital simulation
The effect of a high-pass filter can be simulated on a computer by analyzing its behavior in the time domain, and then discretizing the model.
From the circuit diagram above, according to Kirchoff's Laws and the definition of capacitance:
- Vout(t) = I(t)R
Taking the time derivative of the second equation, . Combining this with the first equation:
Now we may discretize the equation. Let us represent Vin by a series of samples x1...n. We will likewise represent Vout by a series of sample y1...n at the same points in time. For simplicity we assume that the samples are taken at evenly-spaced points in time separated by Δt. Making these substitutions:
And rearranging terms:
or more succinctly,
- yn = α(yn − 1 + xn − xn − 1)
- where
This gives us a way to determine the output samples in terms of the input samples and the preceding output. The following algorithm will simulate the effect of a high-pass filter on a series of digital samples:
// Return RC high-pass filter output samples, given input samples, // time interval dt, and time constant RC function highpass(real[0..n] x, real dt, real RC) var real[0..n] y var real alpha := RC / (RC + dt) y[0] := x[0] for i from 1 to n y[i] := alpha*(y[i-1] + x[i] - x[i-1]) return y
[edit] Applications
Such a filter could be used to direct high frequencies to a tweeter speaker while blocking bass signals which could interfere with or damage the speaker. A low-pass filter could be realized by using an inductor instead of a capacitor, to simultaneously direct low frequencies to the woofer. See audio crossover. However, inductors are prone to parasitic coupling; hence the RC low-pass filter.
High-pass and low-pass filters are also used in digital image processing to perform transformations in the spatial frequency domain.
Most high-pass filters have zero gain (-inf dB) at DC. Such a high-pass filter with very low cutoff frequency can be used to block DC from a signal that is undesired in that signal (and pass nearly everything else). These are sometimes called DC blocking filters.