Main Archive Specials Wiki | FAQ Links Submit Forum


One pole filter, LP and HP

Type : Simple 1 pole LP and HP filter
References : Posted by scoofy[AT]inf[DOT]elte[DOT]hu

Notes :
Slope: 6dB/Oct

Reference: www.dspguide.com


Code :
Process loop (lowpass):
out = a0*in - b1*tmp;
tmp = out;

Simple HP version: subtract lowpass output from the input (has strange behaviour towards nyquist):
out = a0*in - b1*tmp;
tmp = out;
hp = in-out;

Coefficient calculation:
x = exp(-2.0*pi*freq/samplerate);
a0 = 1.0-x;
b1 = -x;







Comments


Added on : 05/01/07 by dj_rejo[ AT ]hotmail[ DOT ]com
Comment :
Why don't you just say:

Process loop (lowpass):
out = a0*in + b1*tmp;
tmp = out;

Simple HP version: subtract lowpass output from the input (has strange behaviour towards nyquist):
out = a0*in + b1*tmp;
tmp = out;
hp = in-out;

Coefficient calculation:
x = exp(-2.0*pi*freq/samplerate);
a0 = 1.0-x;
b1 = x;




Added on : 05/01/07 by scoofy[ AT ]inf[ DOT ]elte[ DOT ]hu
Comment :
There's a tradition among digital filter designers that the pole coefficients have a negative sign. Of course the other one is also valid, and sometimes these notations are mixed up.

If you're worried about the extra negation operation, then you could say

b1 = -x;
a0 = 1.0+b1;

so that there's no additional operation overhead.

-- peter schoffhauzer




Added on : 06/01/07 by nobody[ AT ]nowhere[ DOT ]com
Comment :
Of course, you don't need tmp.

Process loop (lowpass):
out = a0*in + b1*out;





Added on : 16/02/07 by scoofy[ AT ]inf[ DOT ]elte[ DOT ]hu
Comment :
Indeed.              



Added on : 18/06/09 by bob[ AT ]yahoob[ DOT ]com
Comment :
Or...
out += a0 * (in - out);

:)

              




Added on : 12/10/15 by djdelaflav[ AT ]gmail[ DOT ]com
Comment :
can you please send me a few pictures to show me how you hooked up the mixer on the back...              



Add your own comment
Comments are displayed in fixed width, no HTML code allowed!
Email:

Comment:

Are you human?



Site created and maintained by Bram
Graphic design by line.out | Server sponsered by fxpansion