DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

IIR Bessel High pass filter of order 10. The frequency response of the DIAdem 10 order High pass filter differs from the frequency response of the same filter generated in other programms.

Hi,

 

I have some doubts about the ChnFiltCalc function of diadem. By trial an error I have realized that the filter which better suits for my application is an IIR Bessel 10 order high pass filter. The problem for me now is that i cannot reproduce the same results (or really close results) with other programms. If I do an IIR Bessel 10 order high pass filter with other programs as for example Matlab or Python i get a really bad frequency response results. With low orders (for example Bessel order 4 ) I can reproduce the results propertly so, i think the key of my problem is as the DIAdem help says "High degree filters are cascade switches of first or second degree filters."

Here comes my question.

 

Does anybody know what exactly the IIR Bessel 10 Order High pass filter in DIAdem does? I mean, It makes internally two 5 order high pass filters and then, cascade them in a second degree filter? If is not that, what it does?

 

Thank you and any Help you can give to me would be aprecciated! 

 

0 Kudos
Message 1 of 2
(5,563 Views)

I answer myself.

 

10 Order bessel high pass filter in Diadem is the same as cascading two 5 order Bessel high pass filter with a correction factor.

I have simulated a 10 order Bessel high pass filter in Diadem and in Matlab using an unitary step and I get same results when I cascade two 5 order High pass filters in Matlab. Correction factor is in this case 2.192.

I got this factor by trial and error. The correction factor divides the cutoff frequency.

Pseudocode in Matlab would be:

 

[a,b] = besself(5,2*pi*cutoffFrequency/ CorrectionFactor,'high')

[num,den] = bilinear( b,a,samplingFrequency)

filteredSignal = filter( num , den , originalSignal )

 

Regards

 

 

0 Kudos
Message 2 of 2
(5,387 Views)