iirfiltsos_crcf

Variants: iirfiltsos_cccf, iirfiltsos_crcf, iirfiltsos_rrrf

Infinite impulse response filter primitive using second-order sections

Public Functions

iirfiltsos_crcf iirfiltsos_crcf_create(float * _b, float * _a)
iirfiltsos_crcf iirfiltsos_crcf_copy(iirfiltsos_crcf _q)
int iirfiltsos_crcf_set_coefficients(iirfiltsos_crcf _q, float * _b, float * _a)
int iirfiltsos_crcf_destroy(iirfiltsos_crcf _q)
int iirfiltsos_crcf_print(iirfiltsos_crcf _q)
int iirfiltsos_crcf_reset(iirfiltsos_crcf _q)
int iirfiltsos_crcf_execute(iirfiltsos_crcf _q, float complex _x, float complex * _y)
int iirfiltsos_crcf_execute_df1(iirfiltsos_crcf _q, float complex _x, float complex * _y)
int iirfiltsos_crcf_execute_df2(iirfiltsos_crcf _q, float complex _x, float complex * _y)
float iirfiltsos_crcf_groupdelay(iirfiltsos_crcf _q, float _fc)

Interfaces

iirfiltsos_crcf iirfiltsos_crcf_create(float * _b, float * _a)

create 2nd-order infinite impulse response filter

  • _b : feed-forward coefficients, shape: (_3, 1)
  • _a : feed-back coefficients, shape: (_3, 1)

iirfiltsos_crcf iirfiltsos_crcf_copy(iirfiltsos_crcf _q)

Copy object including all internal objects and state

int iirfiltsos_crcf_set_coefficients(iirfiltsos_crcf _q, float * _b, float * _a)

explicitly set 2nd-order IIR filter coefficients

  • _q : iirfiltsos object
  • _b : feed-forward coefficients, shape: (3, 1)
  • _a : feed-back coefficients, shape: (3, 1)

int iirfiltsos_crcf_destroy(iirfiltsos_crcf _q)

destroy iirfiltsos object, freeing all internal memory

int iirfiltsos_crcf_print(iirfiltsos_crcf _q)

print iirfiltsos object properties to stdout

int iirfiltsos_crcf_reset(iirfiltsos_crcf _q)

clear/reset iirfiltsos object internals

int iirfiltsos_crcf_execute(iirfiltsos_crcf _q, float complex _x, float complex * _y)

compute filter output

  • _q : iirfiltsos object
  • _x : input sample
  • _y : output sample pointer

int iirfiltsos_crcf_execute_df1(iirfiltsos_crcf _q, float complex _x, float complex * _y)

compute filter output, direct-form I method

  • _q : iirfiltsos object
  • _x : input sample
  • _y : output sample pointer

int iirfiltsos_crcf_execute_df2(iirfiltsos_crcf _q, float complex _x, float complex * _y)

compute filter output, direct-form II method

  • _q : iirfiltsos object
  • _x : input sample
  • _y : output sample pointer

float iirfiltsos_crcf_groupdelay(iirfiltsos_crcf _q, float _fc)

compute and return group delay of filter object

  • _q : filter object
  • _fc : frequency to evaluate