Skip to content

Function convolve

function convolve(const univector<T1, Tag1> &, const univector<T2, Tag2> &) dft

template <typename T1, typename T2, univector_tag Tag1, univector_tag Tag2>
    requires(std::is_same_v<std::remove_const_t<T1>, std::remove_const_t<T2>>)
univector<std::remove_const_t<T1>> convolve(const univector<T1, Tag1>& src1, const univector<T2, Tag2>& src2)

Computes the linear convolution of two real or complex signals.

Template parameters
T1 Element type of the first input (may be const-qualified).
T2 Element type of the second input (may be const-qualified).
Tag1 Storage tag of the first input univector.
Tag2 Storage tag of the second input univector.
Parameters
src1 First input signal.
src2 Second input signal.
Returns
The convolved signal of length src1.size() + src2.size() - 1 .

Note

T1 and T2 must be the same type (ignoring const). Supports float , double , complex<float> and complex<double> .

Note

When KFR is built with multiarchitecture support, this function is runtime-dispatched to the best implementation for the current CPU.

Fully qualified name: kfr::convolve(const univector<T1, Tag1> &, const univector<T2, Tag2> &)

This file was generated by cxxdox, a C++ documentation generator based on MkDocs Material and libclang.