Toeplitzmult

버전 1.0.0.0 (4.32 KB) 작성자: Brian Borchers
This package implements fast matrix-vector multiplication for Toeplitz matrices.
다운로드 수: 1.3K
업데이트 2005/9/26

라이선스 보기

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.

인용 양식

Brian Borchers (2026). Toeplitzmult (https://kr.mathworks.com/matlabcentral/fileexchange/8548-toeplitzmult), MATLAB Central File Exchange. 검색 날짜: .

MATLAB 릴리스 호환 정보
개발 환경: R14SP2
모든 릴리스와 호환
플랫폼 호환성
Windows macOS Linux
카테고리
Help CenterMATLAB Answers에서 Linear Algebra에 대해 자세히 알아보기
버전 게시됨 릴리스 정보
1.0.0.0