| Optimization Toolbox | ![]() |
Multiplication with fundamental nullspace basis
Syntax
W = fzmult(A,V) W = fzmult(A,V,'transpose') [W,L,U,pcol,P] = fzmult(A,V) W = fzmult(A,V,TRANSPOSE,L,U,pcol,P)
Description
W = fzmult(A,V)
computes the product W of matrix Z with matrix V, that is, W = Z*V, where Z is a fundamental basis for the nullspace of matrix A. A must be a sparse m-by-n matrix where m < n, rank(A) = m, and rank(A(1:m,1:m)) = m. V must be p-by-q, where p = n-m. If V is sparse W is sparse, else W is full.
W = fzmult(A,V,'transpose')
computes the product of the transpose of the fundamental basis times V, that is, W = Z'*V. V must be p-by-q, where q = n-m. fzmult(A,V) is the same as fzmult(A,V,[]).
[W,L,U,pcol,P] = fzmult(A,V)
returns the sparse LU-factorization of matrix A(1:m,1:m), that is, A1 = A(1:m,1:m) and P*A1(:,pcol) = L*U.
W = fzmult(A,V,transpose,L,U,pcol,P)
uses the precomputed sparse LU factorization of matrix A(1:m,1:m), that is, A1 = A(1:m,1:m) and P*A1(:,pcol) = L*U. transpose is either 'transpose' or [].
The nullspace basis matrix Z is not formed explicitly. An implicit representation is used based on the sparse LU factorization of A(1:m,1:m).
| fzero | gangstr | ![]() |