class to solve linear system in double precision with UmfPack More...
#include <UmfPack.hxx>
Public Member Functions | |
MatrixUmfPack () | |
constructor | |
~MatrixUmfPack () | |
destructor | |
void | Clear () |
we clear present factorization if any | |
template<class T0 , class Prop , class Storage , class Allocator > | |
void | FactorizeMatrix (Matrix< T0, Prop, Storage, Allocator > &mat, bool keep_matrix=false) |
factorization of a real matrix in double precision | |
void | FactorizeCSC (Vector< umfpack_int_t > &Ptr, Vector< umfpack_int_t > &IndRow, Vector< double > &Val, bool sym) |
template<class Prop , class Allocator > | |
void | PerformAnalysis (Matrix< double, Prop, RowSparse, Allocator > &mat) |
Symbolic factorization. | |
template<class Prop , class Allocator > | |
void | PerformFactorization (Matrix< double, Prop, RowSparse, Allocator > &mat) |
Numerical factorization. | |
template<class Allocator2 > | |
void | Solve (Vector< double, VectFull, Allocator2 > &x) |
resolution of A y = x (result is overwritten in x) | |
template<class Allocator2 > | |
void | Solve (const SeldonTranspose &, Vector< double, VectFull, Allocator2 > &x) |
template<class Allocator2 > | |
void | Solve (const SeldonTranspose &TransA, Matrix< double, General, ColMajor, Allocator2 > &x) |
void | Solve (const SeldonTranspose &TransA, double *x_ptr, int nrhs) |
void | HideMessages () |
no message will be displayed by UmfPack | |
void | ShowMessages () |
normal amount of message displayed by UmfPack | |
void | ShowFullHistory () |
bool | UseInteger8 () const |
int | GetInfoFactorization () const |
size_t | GetMemorySize () const |
void | SelectOrdering (int type) |
selects ordering to use in the interfaced solver | |
void | SetPermutation (const IVect &) |
virtual void | SetPermutation (const Vector< int > &) |
gives the ordering array to the interface solver | |
virtual void | SetPivotThreshold (double) |
Sets the threshold for pivot. | |
virtual void | RefineSolution () |
Tells to the direct solver that refinement is required. | |
virtual void | DoNotRefineSolution () |
Tells to the direct solver that no refinement is required. | |
virtual void | SetCoefficientEstimationNeededMemory (double coef) |
Method overloaded in Mumps solver. | |
virtual void | SetMaximumCoefficientEstimationNeededMemory (double coef) |
Method overloaded in Mumps solver. | |
virtual void | SetIncreaseCoefficientEstimationNeededMemory (double coef) |
Method overloaded in Mumps solver. | |
virtual void | SelectParallelOrdering (int) |
selects ordering to use in parallel for the interfaced solver | |
virtual void | SetNumberOfThreadPerNode (int n) |
Sets the number of threads per mpi process. | |
Public Attributes | |
Vector< double > | Control |
Vector< double > | Info |
parameters for UmfPack | |
void * | Symbolic |
void * | Numeric |
pointers of UmfPack objects | |
int | n |
number of rows in the matrix | |
int | print_level |
bool | transpose |
int | status_facto |
transpose system to solve ? | |
Protected Attributes | |
umfpack_int_t * | ind_ |
arrays containing matrix pattern in csc format | |
umfpack_int_t * | ptr_ |
double * | data_ |
non-zero values | |
class to solve linear system in double precision with UmfPack
Definition at line 73 of file UmfPack.hxx.