Filter IIR

<series> output = <series>.filterIIR(<string> Class Type , <number> Order, <number> Passband Ripple, <number> Attenuation, <string> Response,   <number> Cutoff Frequency 1, <number> Cutoff Frequency 2)

This function applies infinite impulse response filters to the input data.  Depending on the Class Type, not all arguments are used.  This function allows Low Pass (“LP”), High Pass (“HP”), Band Pass (“BP”), or Band Stop (“BS”) responses.  For class types, specify “Bessel”, “Butterworth”, Chebyshev”, “InverseChebyshev”, or “Elliptic”. These classes are used as follows:

Bessel

Has the slowest rolloff and requires the highest order to meet an attenuation specification.  This class does not use the Passband Ripple or Attenuation arguments.  They will be ignored, but must be supplied.
Example:

var mySeriesB = mySeriesA.filterIIR(“Bessel”, 4, 0, 0, “LP”, 500, 750);

Butterworth

Maximally flat in the passband and stopband, but has a transition region that is less steep than the other filters.  This class does not use the Passband Ripple or Attenuation arguments.  They will be ignored, but must be supplied.
Example:

var mySeriesB = mySeriesA.filterIIR(“Butterworth”, 3, 0, 0, “HP”, 500, 750);

Chebyshev

Achieves a steeper transition region by allowing ripple in the passband. The stopband is maximally flat.  This class does not use the Attenuation argument.  It will be ignored, but must be supplied.
Example:

var mySeriesB = mySeriesA.filterIIR(“Chebyshev”, 3, 50, 0, “LP”, 500, 750);

Inverse Chebyshev

Achieves a steeper transition region by allowing ripple in the stopband. The passband is maximally flat.  This class does not use the Passband Ripple argument.  It will be ignored, but must be supplied.
Example:

var mySeriesB = mySeriesA.filterIIR(“InverseChebyshev”, 3, 0, 40, “HP”, 500, 750);

Elliptic

Minimizes the transition width by allowing ripple in the both the passband and the stopband. This class generally meets filter requirements with the lowest order.  This class uses all arguments.
Example:

var mySeriesB = mySeriesA.filterIIR(“Elliptic”, 3, 50, 40, “HP”, 500, 750);