help-octave
[Top][All Lists]

## Re: fishy rank

 From: Etienne Grossmann Subject: Re: fishy rank Date: Thu, 17 May 2001 09:31:06 +0100 User-agent: WEMI/1.13.7 (Shimada) FLIM/1.13.2 (Kasanui) Emacs/20.7 (i386-debian-linux-gnu) (with unibyte mode)

```  Hello,

#  I have situations where

#  :rank(A)>rank([A,B]);

#  also
#  :rank(A)>=rank(A^n)
#  if n is large enough.
[snip]
# Can this be seen as a numerical problem in
# terms of conditioning?

Could be because

(singular values of A^n) == (sing. vals. of A).^2

so that the ratio of small/big sing. val. will tend to zero. If A
has all sing. vals. equal to zero or one, there is no problem (see
below).

Cheers,

Etienne

======================================================================
octave:23> A = randn (5,3); [U,D,V] = svd (A,"cheap"); A = U*U';
octave:24> rA = rank (A)
rA = 3
octave:25> for i = 1:100:1000, if rank (A^i) != rA, [i, rank (A^i)], end; end
octave:26> A = randn (5,3); A = A*A';
octave:27> rA = rank (A)
rA = 3
octave:28> for i = 1:10:100, if rank (A^i) != rA, [i, rank (A^i)], end; end
ans =

21  2

ans =

31  1

ans =

41  1

ans =

51  1

ans =

61  1

ans =

71  1

ans =

81  1

ans =

91  1

-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.

Octave's home on the web:  http://www.octave.org
How to fund new projects:  http://www.octave.org/funding.html
Subscription information:  http://www.octave.org/archive.html
-------------------------------------------------------------

```