3
$\begingroup$

Does anyone have any good references for deriving parameters of an IIR Low pass/High Pass filter directly in the digital domain using the magnitude squared at the corner frequency?

I have been able to derive the parameters of a first order Low/High pass filter with $3\textrm{ dB}$ attenuation at the corner frequency i.e. calculating $k$ and $\alpha$ in:

$$H(z) = k\frac{\left(1+z^{-1}\right)}{\left(1-\alpha z^{-1}\right)}$$

My issue is that I distinctly remember deriving the parameters using a $6\textrm{ dB}$ attenuation at the corner frequency in a DSP course I have done previously but I have forgotten the trigonometric identiftes used to finish the derivation.

The general procedure is as follows:

  1. Let $\omega = 0/\pi$ to calculate the gain term $k$ such that there is a $0\textrm{ dB}$ gain at $0/\pi$
  2. Calculate the magnitude squared at the corner frequency to obtain a value for $\alpha$ in terms of the corner frequency.

The problem may be that it should be a second order filter or I am recalling the method for a band pass/stop filter but I'm not sure and it appears this method is not used very often except in the case of band pass/stop filters for parametric EQ.

I hope the question is clear and I will try to improve the structure with the responses so it will be useful for others. Any help will be appreciated.

$\endgroup$
1

1 Answer 1

2
$\begingroup$

To solve the case that you mentioned...

You have 2 variables to determine, so you need two relationships to resolve the two variables. I'm going to use $k$ and $a$ as the variables to make this easy to type up.

$$H(z) = k\frac{1 + z^-1}{1-az^-1}$$

Start by considering the passband gain. Use $f = 0$ for this. Assume you want unity gain at $f_0=0$.

Assume: $H(f_0) = 1, f_0 = 0$

Substitute $e^{i2\pi f/f_s}$ for $z$, $f_s$ is your sampling rate, set $f = 0$ and solve for $k$ to satisfy $H\left(f_0\right) = 1$.

From this you get $k = \frac{(1-a)}{2}$

Now work on the gain squared at your desired corner frequency ($f_c$) to determine $a$.

$H(f_c) = -3\textrm{ dB}$ (magnitude squared will be $-6\textrm{ dB}$ as you've stated)

We'll work with the magnitude squared at $f_c$ and set the gain to $1/2$ ($-6\textrm{ dB}$).

$\lvert H\left(f_c\right)\rvert^2 = \frac{1}{2}$

This time substitute $e^{i2\pi fc/f_s}$ for $z$.

To simplify the arithmatic you can solve this equation:

$$ \left(\frac{\lvert H(f_0)\rvert}{\lvert H(f_c)\rvert}\right)^2 = 2 $$

This eliminates the factor $k$.

You will end up with a quadradic relationship in $a$. Solving for $a$ yields:

$$ a = \frac {1 - \sqrt{1-\cos^2\left(2\pi\frac{f_c}{f_s}\right)}} {\cos\left(2\pi\frac{f_c}{f_s}\right) }= \frac {1 - \sin\left(2\pi\frac{f_c}{f_s}\right)} {\cos\left(2\pi\frac{f_c}{f_s}\right) } $$

$\endgroup$
4
  • 1
    $\begingroup$ You're welcome! :-) I just have OCD when it comes to math formatting. :-) $\endgroup$
    – Peter K.
    Feb 28, 2013 at 19:11
  • 3
    $\begingroup$ I have to get my posts in quickly, so I don't always get things the way I want them. My wife was glaring at me last night when she noticed I was posting some geeky thing on the internet instead of watching "The Bachelor" with her. $\endgroup$
    – user2718
    Feb 28, 2013 at 20:26
  • $\begingroup$ Thank you for the response and the detailed derivation. I had the same result for the 3dB case, however, when I mentioned the 6dB attenuation I was referring to the design specification such that magnitude squared will have 12 dB attenuation. It is more than likely the lecturer plotted the magnitude squared and this is where the confusion has set in. I'm happy enough that this is the case and will use a -3db corner frequency. Cheers $\endgroup$
    – melinnde
    Feb 28, 2013 at 23:03
  • $\begingroup$ I see, I missed the original point. I would agree that the prof was probably using mag squared to simplify the math. 3dB is generally used because it is a corner frequency. 6dB is well into the filter transition region which is less well defigned. $\endgroup$
    – user2718
    Mar 1, 2013 at 12:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.