sparseqr::QR Class Reference
#include <sparseqr.hh>
Public Member Functions | |
void | BackSolve (int rank, double *x) |
Performes backsolve. More... | |
int | givens (int, int, int) |
Performs Given's rotations. More... | |
QR (Packed *qrpmatrix, int qrnr, int qrnc, double *qrb=NULL, Qmatrix *qrq=NULL, int *qrprow=NULL, int *qrpcol=NULL, double qrztol=DBL_EPSILON, double qrrtol=0.0) | |
Constructor. More... | |
void | RemoveEntry (int, int) |
Smatrix * | RemoveEntry (int, int, Smatrix *, Smatrix *) |
int | RemoveMarkedEntries (int) |
int | sparseqr () |
Performs QR factorization. More... | |
~QR () | |
Public Attributes | |
double * | b |
bool | del_pcol |
bool | del_prow |
Stores if delete [] of prow and pcol is allowed. More... | |
int | nc |
int | nr |
unsigned * | nrow |
int * | pcol |
Packed * | pmatrix |
int * | prow |
Qmatrix * | q |
double | rtol |
Smatrix ** | scol |
Smatrix ** | srow |
double | ztol |
Detailed Description
QR factorization.
- See also
- Homepage of SparseQR
Thomas H. Robey and Deborah L. Sulsky, Row Ordering for Sparse QR Decomposition, SIAM J. Matrix Anal. and Appl., Vol. 15, No. 4, pp. 1208-1225, October 1994.
Definition at line 128 of file sparseqr.hh.
Constructor & Destructor Documentation
◆ QR()
sparseqr::QR::QR | ( | Packed * | qrpmatrix, |
int | qrnr, | ||
int | qrnc, | ||
double * | qrb = NULL , |
||
Qmatrix * | qrq = NULL , |
||
int * | qrprow = NULL , |
||
int * | qrpcol = NULL , |
||
double | qrztol = DBL_EPSILON , |
||
double | qrrtol = 0.0 |
||
) |
Constructor.
- Parameters
-
qrpmatrix Matrix which should be factorized in sparse format qrnr Number of rows of the matrix qrnc Number of columns of the matrix qrb Right hand side qrq Space to store the Given's rotations. Does not need to be given, if they should not be stored (ie. solving for just 1 right hand side). qrprow Permutation vector for row indices. If not given, is allocated by the class. qrpcol Permutation vector for column indices. If not given, is allocated by the class. qrztol Tolerance for use in determining zero entries when using Given's rotations. If zero or negative, only zero entries are deleted. rtol Tolerance for use in determining rank tolerance by testing the diagonal entry in the final R matrix.
◆ ~QR()
sparseqr::QR::~QR | ( | ) |
Member Function Documentation
◆ BackSolve()
void sparseqr::QR::BackSolve | ( | int | rank, |
double * | x | ||
) |
Performes backsolve.
- Parameters
-
rank Rank of the matrix x Preallocated space to store solution
◆ givens()
int sparseqr::QR::givens | ( | int | , |
int | , | ||
int | |||
) |
Performs Given's rotations.
◆ RemoveEntry() [1/2]
void sparseqr::QR::RemoveEntry | ( | int | , |
int | |||
) |
◆ RemoveEntry() [2/2]
◆ RemoveMarkedEntries()
int sparseqr::QR::RemoveMarkedEntries | ( | int | ) |
◆ sparseqr()
int sparseqr::QR::sparseqr | ( | ) |
Performs QR factorization.
- Returns
- Rank of factorized matrix
Member Data Documentation
◆ b
double * sparseqr::QR::b |
Definition at line 137 of file sparseqr.hh.
◆ del_pcol
bool sparseqr::QR::del_pcol |
Definition at line 132 of file sparseqr.hh.
◆ del_prow
bool sparseqr::QR::del_prow |
Stores if delete
[] of prow
and pcol
is allowed.
Definition at line 132 of file sparseqr.hh.
◆ nc
int sparseqr::QR::nc |
Definition at line 130 of file sparseqr.hh.
◆ nr
int sparseqr::QR::nr |
Definition at line 130 of file sparseqr.hh.
◆ nrow
unsigned* sparseqr::QR::nrow |
Definition at line 133 of file sparseqr.hh.
◆ pcol
int * sparseqr::QR::pcol |
Definition at line 130 of file sparseqr.hh.
◆ pmatrix
Packed* sparseqr::QR::pmatrix |
Definition at line 138 of file sparseqr.hh.
◆ prow
int * sparseqr::QR::prow |
Definition at line 130 of file sparseqr.hh.
◆ q
Qmatrix* sparseqr::QR::q |
Definition at line 140 of file sparseqr.hh.
◆ rtol
double sparseqr::QR::rtol |
Definition at line 137 of file sparseqr.hh.
◆ scol
Smatrix ** sparseqr::QR::scol |
Definition at line 139 of file sparseqr.hh.
◆ srow
Smatrix** sparseqr::QR::srow |
Definition at line 139 of file sparseqr.hh.
◆ ztol
double sparseqr::QR::ztol |
Definition at line 137 of file sparseqr.hh.
The documentation for this class was generated from the following file:
- sparseqr/sparseqr.hh