I'm trying to design a second order low-pass filter using the following transfer function:

\$\ H(s)=\frac{f_c^2}{s^2 + 2 f_c s +f_c^2} \$

with cutoff frequency fc = 3400 Hz

Whenever I plot this, the cutoff frequency is at -6 dB instead of -3 dB. I'm not really sure what I'm doing wrong. Here's my Matlab code:

fc = 3400;

s = 1i*logspace(0,6,1000);

H_d = fc^2 ./ (s.^2 + 2*fc*s + fc^2);

semilogx(abs(s), 20 * log10(abs(H_d)))

I don't recognize your transfer function as one of the classic low-pass-filter implementations. A Butterworth filter, for instance, would be:

$$ H(s) = \frac{f_c^2}{s^2+1.414f_cs+f_c^2} $$

note: for me, it's unusual to see the use of \$f\$ instead of \$w\$ in these formulas, but mathematically it should be equivalent, as long as you use \$s=jf\$ instead of \$s=jw\$

  • \$\begingroup\$ This worked, thank you! What I did was I expanded k / (s + fc)^2 and set the constant k to fc^2 to balance it out. I overlooked the damping ratio and saw that ζ = 0.707 for Butterworth filters (I set ζ to 1). Some other observations I made was that 2 = 6 dB and 1.414 = 3 dB. Source of equations \$\endgroup\$ – kane40 Oct 16 '19 at 5:49
  • \$\begingroup\$ I'm glad you were able to trace back to the mistake. \$\endgroup\$ – joribama Oct 16 '19 at 5:59
  • \$\begingroup\$ A 2nd order low pass filter has a gain value at the resonant frequency equal to the circuit's Q. So when Q = 0.5, the gain at the resonant frequency is 0.5 or -6 dB. If Q is ten (\$\zeta\$ = 0.05) then gain is ten at resonance. \$\endgroup\$ – Andy aka Oct 16 '19 at 7:54

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.