Mercurial > matrix-functions
diff toolbox/prolate.m @ 0:8f23314345f4 draft
Create local repository for matrix toolboxes. Step #0 done.
author | Antonio Pino Robles <data.script93@gmail.com> |
---|---|
date | Wed, 06 May 2015 14:56:53 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/toolbox/prolate.m Wed May 06 14:56:53 2015 +0200 @@ -0,0 +1,21 @@ +function A = prolate(n, w) +%PROLATE Prolate matrix - symmetric, ill-conditioned Toeplitz matrix. +% A = PROLATE(N, W) is the N-by-N prolate matrix with parameter W. +% It is a symmetric Toeplitz matrix. +% If 0 < W < 0.5 then +% - A is positive definite +% - the eigenvalues of A are distinct, lie in (0, 1), and +% tend to cluster around 0 and 1. +% W defaults to 0.25. + +% Reference: +% J.M. Varah. The Prolate matrix. Linear Algebra and Appl., +% 187:269--278, 1993. + +if nargin == 1, w = 0.25; end + +a = zeros(n,1); +a(1) = 2*w; +a(2:n) = sin( 2*pi*w*(1:n-1) ) ./ ( pi*(1:n-1) ); + +A = toeplitz(a);