40 #ifndef AMESOS_UMFPACK_H 
   41 #define AMESOS_UMFPACK_H 
  229   std::vector <int> 
Ap;
 
  230   std::vector <int> 
Ai;
 
std::vector< int > Ap
Ap, Ai, Aval form the compressed row storage used by Umfpack. 
 
int numentries_
Number of non-zero entries in Problem_->GetOperator() 
 
int NumSymbolicFact_
Number of symbolic factorization phases. 
 
Amesos_Control: Container for some control variables. 
 
void GetTiming(Teuchos::ParameterList &TimingParameterList) const 
Extracts timing information from the current solver and places it in the parameter list...
 
int PerformSymbolicFactorization()
 
int MtxConvTime_
Quick access pointers to internal timer data. 
 
int SetUseTranspose(bool UseTranspose_in)
If set true, X will be set to the solution of AT X = B (not A X = B) 
 
const Epetra_LinearProblem * Problem_
Pointer to the linear problem to solve. 
 
void * Numeric
Umfpack internal opaque object. 
 
const Epetra_CrsMatrix & SerialCrsMatrix() const 
 
int NumSolve() const 
Returns the number of solves performed by this object. 
 
Teuchos::RCP< Epetra_CrsMatrix > SerialCrsMatrixA_
 
int NumNumericFact_
Number of numeric factorization phases. 
 
~Amesos_Umfpack(void)
Amesos_Umfpack Destructor. 
 
int ConvertToSerial(const bool FirstTime)
Converts matrix to a serial Epetra_CrsMatrix. 
 
void PrintStatus() const 
Prints information about the factorization and solution phases. 
 
const Epetra_Comm & Comm() const 
Returns a pointer to the Epetra_Comm communicator associated with this operator. 
 
const Epetra_LinearProblem * GetProblem() const 
Returns the Epetra_LinearProblem. 
 
int NumSolve_
Number of solves. 
 
int NumGlobalElements_
Number of rows and columns in the Problem_->GetOperator() 
 
int SymbolicFactorization()
Performs SymbolicFactorization on the matrix A. 
 
void GetTiming(Teuchos::ParameterList &list) const 
Load up the current timing information into the parameter list. 
 
Epetra_RowMatrix * Matrix()
Returns a pointer to the linear system matrix. 
 
Amesos_Status: Container for some status variables. 
 
Teuchos::RCP< Epetra_Import > ImportToSerial_
Importer from distributed to serial (all rows on process 0). 
 
Amesos_Time: Container for timing information. 
 
Epetra_RowMatrix * SerialMatrix_
Points to a Serial Copy of A. 
 
const Epetra_Map & SerialMap() const 
 
std::vector< double > Aval
 
Amesos_Umfpack(const Epetra_LinearProblem &LinearProblem)
Amesos_Umfpack Constructor. 
 
int ConvertToUmfpackCRS()
 
bool MatrixShapeOK() const 
Returns true if UMFPACK can handle this matrix shape. 
 
double Rcond_
Reciprocal condition number estimate. 
 
int NumSymbolicFact() const 
Returns the number of symbolic factorizations performed by this object. 
 
int Solve()
Solves A X = B (or AT x = B) 
 
int PerformNumericFactorization()
 
int NumericFactorization()
Performs NumericFactorization on the matrix A. 
 
bool UseTranspose_
If true, solve the problem with the transpose. 
 
double GetRcond() const 
Returns an estimate of the reciprocal of the condition number. 
 
const Epetra_Import & Importer() const 
 
Epetra_Operator * GetOperator() const 
 
int NumNumericFact() const 
Returns the number of numeric factorizations performed by this object. 
 
int IsLocal_
1 if Problem_->GetOperator() is stored entirely on process 0 
 
void PrintTiming() const 
Prints timing information. 
 
Amesos_BaseSolver: A pure virtual class for direct solution of real-valued double-precision operators...
 
bool RcondValidOnAllProcs_
 
int SetParameters(Teuchos::ParameterList &ParameterList)
Updates internal variables. 
 
Class Amesos_Umfpack: An object-oriented wrapper for UMFPACK. 
 
Amesos_NoCopiable: Simple class to prevent the usage of copy constructor and operator =...
 
Epetra_CrsMatrix & SerialCrsMatrix()
 
bool UseTranspose() const 
Returns the current UseTranspose setting. 
 
Teuchos::RCP< Epetra_Map > SerialMap_
Points to a Serial Map (unused if IsLocal == 1 ) 
 
Amesos_Utils: Collections of basic utilities. 
 
void * Symbolic
Umfpack internal opaque object.