I have a signal like this:

$s(t) = C + a \cdot sin(2 \cdot \pi \cdot f \cdot t)$

where $C$ - arbitrary constant, $f$ - frequency of AC component (Hz) and $a$ - amplitude of AC component.

Parameters: $C = 1$, $f = 1$, and $a = 0.1$.

I want to synthesize a filter that will remove AC component with an angular frequency $\omega = 2 \cdot \pi \cdot f$ from this signal, i.e.:

$s(t) = C + a \cdot sin(2 \cdot \pi \cdot f \cdot t) \xrightarrow{After Filtering} s(t) ≈ C$

It is difficult to make this ideal, therefore, an elliptic filter was chosen as a filter, as a good frequency splitter.

After tuning it, I get the following frequency response of the filter:

enter image description here

The model of a computational experiment is as follows:

enter image description here

And the following results are obtained.

enter image description here

AC component has not been deleted. Signal after the filter repeats the input. In theory, AC components with a frequency above 0.5 Hz (and in my case the frequency is 1 Hz) should be removed, and only the constant $C$ component should remain, i.e. $1$.

Where did I make a mistake?


I agree, the 1 Hz signal should be attenuated given the filter response. I suggest sweeping the input frequency to create the frequency response manually as I assume the filter was somehow scaled, possibly by not including a factor of $T$ in the mapping from the analog filter. Try a much higher frequency to see where it is nulled and then narrow in on the actual cut-off.

Further notice that the frequency response is not completely nulled at 1 Hz, but would have about 65 dB attenuation and that it also contributes significant phase distortion to the passband.

Instead of using an elliptic lowpass filter, consider using a 2nd order notch filter for eliminating AC signals. This implementation is detailed further at this post:

Transfer function of second order notch filter


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.