Toeplitzmult

This package implements fast matrix-vector multiplication for Toeplitz matrices.
1,3K Descargas
Actualizado 26 sep 2005

Ver licencia

This directory contains MATLAB functions for the fast multiplication of a Toeplitz matrix times a vector. By using these routines you can avoid storing the entire matrix (using two vectors of lenght n rather than a matrix of size n*n), and also dramatically speedup the multiplication. The algorithm used here runs in O(n*log(n)) time instead of the O(n^2) time required by conventional matrix multiplication.

The simplest case involves the multiplication of a Toeplitz matrix times a single vector. To multiply toeplitz(a,b) times x, use

>> y=toeplitzmult(a,b,x)

If you have a single matrix that will be multiplied times many vectors, then use

>> F=toeplitzmultaux(a,b);
>> y1=toeplitzmult2(F,x1);
>> y2=toeplitzmult2(F,x2);
>> y3=toeplitzmult2(F,x3);
...

The script example.m demonstrates the use of these functions.

Note that this code works correctly with matrices and vectors that are real or complex. However, due to round-off errors, the product might have a small imaginary component even though a,b, and x are all real. To correct this, simply use

real(toeplitz(a,b,x))

A good introduction to how these algorithms work can be found in the book "Matrix Computations, 3rd ed." by Golub and Van Loan.

Citar como

Brian Borchers (2026). Toeplitzmult (https://la.mathworks.com/matlabcentral/fileexchange/8548-toeplitzmult), MATLAB Central File Exchange. Recuperado .

Compatibilidad con la versión de MATLAB
Se creó con R14SP2
Compatible con cualquier versión
Compatibilidad con las plataformas
Windows macOS Linux
Categorías
Más información sobre Linear Algebra en Help Center y MATLAB Answers.
Versión Publicado Notas de la versión
1.0.0.0