Package Filters

Class IIRFilterMethod

java.lang.Object
Filters.FilterMethod
Filters.IIRFilterMethod
Direct Known Subclasses:
ButterworthMethod, ChebyshevMethod

public abstract class IIRFilterMethod extends FilterMethod
  • Constructor Details

    • IIRFilterMethod

      public IIRFilterMethod(double sampleRate, FilterParams filterParams)
  • Method Details

    • getPoles

      public Complex[] getPoles(FilterParams filterParams)
    • getZeros

      public Complex[] getZeros(FilterParams filterParams)
    • getPoleZeros

      public PoleZeroPair[] getPoleZeros()
    • poleZeroCount

      public int poleZeroCount()
    • calculateOmegaValues

      public void calculateOmegaValues()
    • getFastFilterCoefficients

      public double[] getFastFilterCoefficients()
      Get coefficients from poles and zeros for fast filter computations.
      Overrides:
      getFastFilterCoefficients in class FilterMethod
      Returns:
    • getFilterGain

      public double getFilterGain(double omega)
      Description copied from class: FilterMethod
      Get the filter gain at an angular frequency (o invalid input: '<' omega invalid input: '<' pi).
      Specified by:
      getFilterGain in class FilterMethod
      Parameters:
      omega - angular frequency
      Returns:
      gain
    • getFilterPhase

      public double getFilterPhase(double omega)
      Description copied from class: FilterMethod
      Get the filter phase at an angular frequency (o invalid input: '<' omega invalid input: '<' pi).
      Specified by:
      getFilterPhase in class FilterMethod
      Parameters:
      omega - angular frequency
      Returns:
      phase
    • getFilterGainConstant

      public double getFilterGainConstant()
      Specified by:
      getFilterGainConstant in class FilterMethod
      Returns:
      any additional gain constant (needed for IIRF's)
    • createFilter

      public Filter createFilter(int channel)
      Specified by:
      createFilter in class FilterMethod
      Parameters:
      channel - channel number (used in filter book keeping)
      Returns:
      Create a filter object - which can actually do some filtering for us. Note that a filterMethod object may be asked to create multiple filters for multi-channel systems.