help-octave
[Top][All Lists]

## Re: fishy rank

 From: Paul Kienzle Subject: Re: fishy rank Date: Thu, 17 May 2001 11:34:55 +0100 User-agent: Mutt/1.2.5i

```octave2.1:168> help rank
rank is the user-defined function from the file
/usr/share/octave/2.1.31/m/linear-algebra/rank.m

- Function File:  rank (A, TOL)
Compute the rank of A, using the singular value decomposition.
The rank is taken to be the number  of singular values of A that
are greater than the specified tolerance TOL.  If the second
argument is omitted, it is taken to be

tol = max (size (A)) * sigma(1) * eps;

where `eps' is machine precision and `sigma(1)' is the largest
singular value of A.

A=diag([1/sqrt(eps), 1]); n=2;
[ rank(A) rank(A^n) rank([A,A^n]) ]

A=diag([2, 1]); n=-log2(eps*max(size(A)));
[ rank(A) rank(A^n) rank([A,A^n]) rank(A^(n-1)) rank([A,A^(n-1)]) ]

Paul Kienzle

On Thu, May 17, 2001 at 09:23:57AM +0200, Daniel Heiserer wrote:
> Hi,
>
> something is fishy here:
>
> I have situations where
>
> :rank(A)>rank([A,B]);
>
> also
> :rank(A)>=rank(A^n)
> if n is large enough.
>
> for the above problem imagine that B=A^n
>
> Can this be seen as a numerical problem in
> terms of conditioning?
>
>
> Can anyone reproduce that?
>
>
> thanks
>
> daniel
>
>
>
> -------------------------------------------------------------
> 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
> -------------------------------------------------------------
>
>

-------------------------------------------------------------
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
-------------------------------------------------------------

```

reply via email to