9template <
class T,
size_t N>
21template <
class T,
size_t N,
class Implementation = BiQuadFilterDF1<T>>
38 input = section(input);
48template <
class T,
size_t M,
size_t N>
52 auto sub_tf =
sos2tf_helper(tf, sos.template slice<0, N - 2>());
59template <
class T,
size_t M>
74template <
class T,
size_t N>
77 return sos2tf_helper(sos[N - 1], sos.template slice<0, N - 2>());
TransferFunction< M+N *2, M+N *2, T > sos2tf_helper(const TransferFunction< M, M, T > &tf, AH::ArraySlice< BiQuadCoefficients< T >, N, false, true > sos)
Second Order Sections filter.
T operator()(T input)
Update the internal state with the new input and return the new output .
AH::Array< Implementation, N > sections
SOSFilter(const SOSCoefficients< T, N > §ionCoefficients)
Constructor.
Array< decltype(T1() *T2()), N1+N2 - 1 > distribute(const ArraySlice< T1, N1, Reverse1, Const1 > &a, const ArraySlice< T2, N2, Reverse2, Const2 > &b)
Array< T, N > copyAs(const Array< U, N > &src)
Copy an Array to an Array of a different type.
TransferFunction< N *2+1, N *2+1, T > sos2tf(const SOSCoefficients< T, N > &sos)
Convert Second Order Section (SOS) coefficients to an equivalent tranfer function representation.
AH::Array< BiQuadCoefficients< T >, N > SOSCoefficients
Class for transfer function coefficients.