LUPDT Call

CALL LUPDT( lup, bup, sup, L, z <*>, b <*>, y <*>, ssq ) ;

The LUPDT subroutine provides updating and downdating for rank deficient linear least squares solutions, complete orthogonal factorization, and Moore-Penrose inverses.

The LUPDT subroutine returns the following values:

lup

is an lower triangular matrix that is updated or downdated by using the rows in .

bup

is an matrix of right-hand sides that is updated or downdated by using the rows in . If b is not specified, bup is not accessible.

sup

is a vector of square roots of residual sum of squares that is updated or downdated by using the rows in . If ssq is not specified, sup is not accessible.

The input arguments to the LUPDT subroutine are as follows:

L

specifies an lower triangular matrix to be updated or downdated by row vectors stored in the matrix . Only the lower triangle of L is used; the upper triangle can contain any information.

z

is a matrix used rowwise to update or downdate the matrix .

b

specifies an optional matrix of right-hand sides that have to be updated or downdated simultaneously with L. If b is specified, the argument y must be specified.

y

specifies an optional matrix used rowwise to update or downdate the right-hand-side matrix b.

ssq

specifies an optional vector that, if b is specified, specifies the square root of the error sum of squares that should be updated or downdated simultaneously with L and b.

The relevant formula for the LUPDT call is . See the example in the documentation for the RZLIND call.