octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: improved QR & Cholesky updating


From: John W. Eaton
Subject: Re: improved QR & Cholesky updating
Date: Wed, 21 Jan 2009 10:21:12 -0500

On 21-Jan-2009, Jaroslav Hajek wrote:

| Sorry, this should have been part of the patch, but somehow I forgot
| to do the last refresh (also sorry for the message).
| It's now uploaded. fsolve will simply check for qrupdate at first
| start, and if not found, it will update the qr factorization by
| recalculation. For large systems, of course, that's going to be much
| slower, but will work.
| 
| I intend to do the same thing anywhere the updating routines will be
| used (due to their nature, they can be always replaced). That's why I
| disabled their compiling entirely when qrupdate is not present - so
| that their presence can be checked with the "exist" function.

Instead of

  persistent have_qrupdate = exist ('qrupdate') == 5;

  [...]

  ## Update the QR factorization.
  if (have_qrupdate)
    [q, r] = qrupdate (q, r, u, v);
  else
    [q, r] = qr (q*r + u*v');
  endif

in fsolve.m and every other function that might use qrupdate, why not
check HAVE_QRUPDATE in the QR::update functions and do this operation
there?  Then the check would only have to occur in one place rather
than in every part of Octave that uses qrupdate.

jwe


reply via email to

[Prev in Thread] Current Thread [Next in Thread]