| filtertype | = | Butterworth |
| passtype | = | Highpass |
| ripple | = | |
| order | = | 4 |
| samplerate | = | 44100 |
| corner1 | = | 3600 |
| corner2 | = | |
| adzero | = | |
| logmin | = | -48 |
Command line: /www/usr/fisher/helpers/mkfilter -Bu -Hp -o 4 -a 8.1632653061e-02 0.0000000000e+00
raw alpha1 = 0.0816326531
raw alpha2 = 0.0816326531
warped alpha1 = 0.0834706818
warped alpha2 = 0.0834706818
gain at dc : mag = 0.000000000e+00
gain at centre: mag = 1.394322769e+00 phase = 1.0000000000 pi
gain at hf : mag = 1.971870170e+00 phase = 0.0000000000 pi
S-plane zeros:
0.0000000000 + j 0.0000000000 4 times
S-plane poles:
-0.2007028271 + j -0.4845394871
-0.4845394871 + j -0.2007028271
-0.4845394871 + j 0.2007028271
-0.2007028271 + j 0.4845394871
Z-plane zeros:
1.0000000000 + j 0.0000000000 4 times
Z-plane poles:
0.7335632458 + j -0.3816870845
0.5995186082 + j -0.1292102252
0.5995186082 + j 0.1292102252
0.7335632458 + j 0.3816870845
Recurrence relation:
y[n] = ( 1 * x[n- 4])
+ ( -4 * x[n- 3])
+ ( 6 * x[n- 2])
+ ( -4 * x[n- 1])
+ ( 1 * x[n- 0])
+ ( -0.2571894065 * y[n- 4])
+ ( 1.3717141806 * y[n- 3])
+ ( -2.8190571746 * y[n- 2])
+ ( 2.6661637080 * y[n- 1])
/* Digital filter designed by mkfilter/mkshape/gencode A.J. Fisher
Command line: /www/usr/fisher/helpers/mkfilter -Bu -Hp -o 4 -a 8.1632653061e-02 0.0000000000e+00 -l */
#define NZEROS 4
#define NPOLES 4
#define GAIN 1.971870170e+00
static float xv[NZEROS+1], yv[NPOLES+1];
static void filterloop()
{ for (;;)
{ xv[0] = xv[1]; xv[1] = xv[2]; xv[2] = xv[3]; xv[3] = xv[4];
xv[4] = next input value / GAIN;
yv[0] = yv[1]; yv[1] = yv[2]; yv[2] = yv[3]; yv[3] = yv[4];
yv[4] = (xv[0] + xv[4]) - 4 * (xv[1] + xv[3]) + 6 * xv[2]
+ ( -0.2571894065 * yv[0]) + ( 1.3717141806 * yv[1])
+ ( -2.8190571746 * yv[2]) + ( 2.6661637080 * yv[3]);
next output value = yv[4];
}
}
For an expanded view, enter frequency limits (as a fraction of the sampling rate) here:
For a view on a different scale, enter upper time limit (integer number of samples) here: