runlmc.linalg.toeplitz module

class runlmc.linalg.toeplitz.Toeplitz(top)[source]

Bases: runlmc.linalg.matrix.Matrix

Creates a class with a parsimonious representation of a symmetric, square Toeplitz matrix; that is, a matrix \(T\) with entries \(T_{ij}\) which for all \(i,j\) and \(i'=i+1, j'=j+1\) satisfy:

\[t_{ij} = t_{i'j'}\]
Parameters:top – 1-dimensional numpy array, used as the underlying storage, which represents the first row \(t_{1j}\). Should be castable to a float64.
Raises:ValueError – if top isn’t of the right shape or is empty.
as_numpy()[source]
Returns:numpy matrix equivalent, as a 2D numpy.ndarray
matvec(x)[source]

Multiply a vector \(\textbf{x}\) by this matrix, \(K\), yielding \(K\textbf{x}\).

Parameters:x – a one-dimensional numpy array of the same size as this matrix
Returns:the matrix-vector product
upper_eig_bound()[source]