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.

Added in version 0.9.0.

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 – First column of the matrix. The first row starts with c[0] and continues with the remaining elements of c, conjugated for complex types. The matrix is symmetric for real types and Hermitian for complex types when c[0] is real.

Returns:

Operator that generates the D x D Toeplitz matrix

template<typename Op>
auto __MATX_INLINE__ matx::toeplitz(const Op &c)#

Toeplitz operator

The toeplitz operator constructs a toeplitz matrix

Template Parameters:

Op – Operator type of c

Parameters:

c – First column of the matrix. The first row starts with c[0] and continues with the remaining elements of c, conjugated for complex types. The matrix is symmetric for real types and Hermitian for complex types when c[0] is real.

Returns:

Operator that generates the c.Size(0) x c.Size(0) Toeplitz matrix

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. Its first element is ignored; the diagonal uses c[0].

Returns:

Operator that generates the D1 x D2 Toeplitz matrix

template<typename COp, typename ROp>
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. Its first element is ignored; the diagonal uses c[0].

Returns:

Operator that generates the c.Size(0) x r.Size(0) Toeplitz matrix

Examples#

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