Solving a linear system with a block Toeplitz matrix

30 views (last 30 days)
Hi. I have a line of code that looks like x=b\A; where A is an NxN block Toeplitz matrix and b is Nxm.
I don't know whether Matlab automatically recognizes A as block Toeplitz and optimizes the solver accordingly. Is there any way to tell? Is there an easy way to tell Matlab to use a routine for block Toeplitz matrices?

Accepted Answer

Robert
Robert on 1 Jul 2011

More Answers (1)

Feruza Amirkulova
Feruza Amirkulova on 18 Feb 2018
Hi!
For a complex valued non-Hermitian matrix Block-Toeplitz matrix of level one you may use TOEPLITZ FORTRAN solver available at: http://people.sc.fsu.edu/~jburkardt/f_src/toeplitz/toeplitz.html
Algorithms are given in book by V.V. Voevodin, E.E. Tyrtyshnikov, Numerical Processes with Toeplitz Matrices, Nauka, Moscow, 1987 (in Russian). I first used algorithms in MATLAB, and wrote codes for examples from the book. There is no translation of the book, but you my get an idea on algorithms looking at our JCP paper published in 2015, "Acoustic multiple scattering using recursive algorithms" (you may google it to find it online). You may find additional info from User's Guide: Oleg Arushanian, MK Samarin, Valentin Voevodin, Evgeny Tyrtyshnikov, Burton Garbow, James Boyle, Wayne Cowell, Kenneth Dritz, The TOEPLITZ Package User's Guide, Argonne National Laboratory, ANL-83-16, 1983. I used these algorithms for solving a linear system of equations of level one Block Toeplitz structure for acoustic multiple scattering problem. I used this algorithms first in my laptop using MATLAB, then on HPC clusters in parallel using TOEPLITZ solver; TOEPLITZ solver is fast and works even when LAPACK solver stops working due memory limitations. The method is exact, it is not an approximation. It was not that hard to transfer my Matlab codes to Fortran 90. If you need I may still find (I need to dig in hard-drive) simple Matlab codes for examples from Voevodin's and E.E. Tyrtyshnikov's books.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!