HyperMath

Bessel

Bessel

Previous topic Next topic No expanding text in this topic  

Bessel

Previous topic Next topic JavaScript is required for expanding text JavaScript is required for the print function  

Generates filter coefficients for a digital or analog Bessel filter.

Syntax

Num, Den = Bessel(Order,Fc)

Num, Den = Bessel(Order,Fc,Type)

Num, Den = Bessel(Order,Fc,Band,Type)

Num, Den = Bessel(Order,Fc1,Fc2)

Arguments

Name

Description

 

Order

A positive integer specifying the order of the filter.  For band pass and band stop filter, the order is twice this value.

 

Fc

The corner frequency in Hz of a low pass or high pass filter, or a vector of two corner frequencies for a band pass or band stop filter.  For a digital filter, Fc is normalized by the Nyquist frequency and has values in the interval (0,1).  For an analog filter, Fc has positive value(s).

 

Band

(optional)

The filter band specifier.  When Fc is a value, Band can be either ‘low’ (default) or ‘high.’  When Fc is a vector, Band is omitted for a band pass filter and ‘stop’ for a band stop filter.

 

Type

(optional)

The digital/analog flag.  For analog, set to ‘s.’  For digital, set to ‘z’ (default).

 

Fc1, Fc2

For the Templex™ style convention, Fc1 and Fc2 are the normalized corner frequencies in Hz of a digital filter.  For a low pass filter, Fc1 = 0.  For a high pass filter, Fc2 = 0 or 1.  For a band pass filter, Fc1 < Fc2.  For a band stop filter, Fc1 > Fc2.

Outputs

Name

Description

 

Num

Vector of numerator coefficients in descending power of s or z.  Its length is one more than the filter order.

 

Den

Vector of denominator coefficients in descending power of s or z.  Its length is one more than the filter order.

Example 1

A low-pass second order digital Bessel filter with a cut-off frequency at 250 Hz, where the data sampling frequency is 1000 Hz.

 

Syntax

b, a = Bessel(2,0,250/500)

 

Result

 

b = 0.33561   0.67121    0.33561

a = 1.0000    0.25638    0.086043

Example 2

A band-pass second order digital Bessel filter with low cut-off and high cut-off frequencies of 150 Hz and 300 Hz, respectively, where the data sampling frequency is 1000 Hz.

 

Syntax

 

b, a = Bessel(2,150/500,300/500)

 

Result

b = 0.16521 0       -0.33042  0       0.16521

a = 1.0000 -0.43123  0.50466 -0.12117 0.117

Comments

For digital filters, the Nyquist frequency is half the sampling frequency.  All frequency arguments are to be normalized with this value.