[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
FYI: qrupdate 1.1.0 released - luupdate in Octave
From: |
Jaroslav Hajek |
Subject: |
FYI: qrupdate 1.1.0 released - luupdate in Octave |
Date: |
Mon, 11 Jan 2010 10:07:25 +0100 |
hi all,
qrupdate 1.1.0 has been released. This includes routines for rank-1
updating of LU factorizations, which can then be used in Octave via
the "luupdate" function. Octave will continue to work with qrupdate
1.0, only the luupdate function will be disabled in that case.
-- Loadable Function: [L, U] = luupdate (L, U, X, Y)
-- Loadable Function: [L, U, P] = luupdate (L, U, P, X, Y)
Given an LU factorization of a real or complex matrix A = L*U,
L lower unit trapezoidal and U upper trapezoidal, return the
LU factorization of A + X*Y.', where X and Y are column vectors
(rank-1 update) or matrices with equal number of columns (rank-k
update). Optionally, row-pivoted updating can be used by supplying
a row permutation (pivoting) matrix P; in that case, an updated
permutation matrix is returned. Note that if L, U, P is a pivoted
LU factorization as obtained by `lu':
[L, U, P] = lu (A);
then a factorization of `A+X*Y.'' can be obtained either as
[L1, U1] = lu (L, U, P*X, Y)
or
[L1, U1, P1] = lu (L, U, P, X, Y)
The first form uses the unpivoted algorithm, which is faster, but
less stable. The second form uses a slower pivoted algorithm,
which is more stable.
Note that the matrix case is done as a sequence of rank-1 updates;
thus, for k large enough, it will be both faster and more accurate
to recompute the factorization from scratch.
See also: lu, qrupdate, cholupdate
enjoy! (and comments/suggestions welcome)
--
RNDr. Jaroslav Hajek, PhD
computing expert & GNU Octave developer
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic
url: www.highegg.matfyz.cz
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- FYI: qrupdate 1.1.0 released - luupdate in Octave,
Jaroslav Hajek <=