toeplitz#

Generate a toeplitz matrix

c represents the first column of the matrix while r represents the first row. c and r must have the same first value; if they don’t match, the first value from c will be used.

Passing a single array/operator as input is equivalent to passing the conjugate of the same input as the second parameter.

template<typename T, int D>
auto __MATX_INLINE__ matx::toeplitz(const T (&c)[D])#

Toeplitz operator

The toeplitz operator constructs a toeplitz matrix

Template Parameters:
  • T – Type of data

  • D – Length of array

Parameters:

c – Operator or view for first input

Returns:

New operator of the kronecker product

template<typename Op, std::enable_if_t<!std::is_array_v<typename remove_cvref<Op>::type>, bool> = true>
auto __MATX_INLINE__ matx::toeplitz(const Op &c)#

Toeplitz operator

The toeplitz operator constructs a toeplitz matrix

Template Parameters:

T1 – Type of first input

Parameters:

c – Operator or view for first input

Returns:

New operator of the kronecker product

template<typename T, int D1, int D2>
auto __MATX_INLINE__ matx::toeplitz(const T (&c)[D1], const T (&r)[D2])#

Toeplitz operator

The toeplitz operator constructs a toeplitz matrix

Template Parameters:
  • T – Type of matrix

  • D1 – Length of c

  • D2 – Length of r

Parameters:
  • c – First column of the matrix

  • r – First row of the matrix

Returns:

New operator of the kronecker product

template<typename COp, typename ROp, std::enable_if_t<!std::is_array_v<typename remove_cvref<COp>::type> && !std::is_array_v<typename remove_cvref<ROp>::type>, bool> = true>
auto __MATX_INLINE__ matx::toeplitz(const COp &c, const ROp &r)#

Toeplitz operator

The toeplitz operator constructs a toeplitz matrix

Template Parameters:
  • COp – Operator type of c

  • ROp – Operator type of r

Parameters:
  • c – First column of the matrix

  • r – First row of the matrix

Returns:

New operator of the kronecker product

Examples#

(out1 = toeplitz(c)).run(exec);
(out2 = toeplitz(c, r)).run(exec);