This interface overloads the Fortran intrinsic matmul for a
Toeplitz matrix, both for matrix-vector and matrix-matrix products.
For a matrix-matrix product , only the matrix
has to be a Toeplitz matrix. Both and need to be
standard Fortran rank-2 arrays. All the underlying functions are
defined as pure.
y = matmul(A, x)
Note
Matrix-vector products for Toeplitz matrices can be efficiently
computed by embedding the Toeplitz matrix into a Circulant matrix
of size [m+n x m+n] and using the Fast Fourier Transform provided
by fftpack.
Compute the matrix-vector product for a Toeplitz matrix .
Both x and y are rank-1 arrays with the same kind as A.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(Toeplitz), | intent(in) | :: | A |
Input matrix. |
||
| real(kind=dp), | intent(in) | :: | x(:) |
Input vector. |
Output vector.
Compute the matrix-matrix product for a Toeplitz matrix A.
Both X and Y are rank-2 arrays with the same kind as A.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(Toeplitz), | intent(in) | :: | A |
Input matrix. |
||
| real(kind=dp), | intent(in) | :: | x(:,:) |
Input matrix. |
Output matrix.