Epetra_LinearProblem: The Epetra Linear Problem Class. More...
#include <Epetra_LinearProblem.h>
Public Member Functions | |
Constructors/Destructor  | |
| Epetra_LinearProblem (void) | |
| Epetra_LinearProblem Default Constructor.  More... | |
| Epetra_LinearProblem (Epetra_RowMatrix *A, Epetra_MultiVector *X, Epetra_MultiVector *B) | |
| Epetra_LinearProblem Constructor to pass in an operator as a matrix.  More... | |
| Epetra_LinearProblem (Epetra_Operator *A, Epetra_MultiVector *X, Epetra_MultiVector *B) | |
| Epetra_LinearProblem Constructor to pass in a basic Epetra_Operator.  More... | |
| Epetra_LinearProblem (const Epetra_LinearProblem &Problem) | |
| Epetra_LinearProblem Copy Constructor.  More... | |
| virtual | ~Epetra_LinearProblem (void) | 
| Epetra_LinearProblem Destructor.  More... | |
Integrity check method  | |
| int | CheckInput () const | 
| Check input parameters for existence and size consistency.  More... | |
Computational methods  | |
| int | LeftScale (const Epetra_Vector &D) | 
| Perform left scaling of a linear problem.  More... | |
| int | RightScale (const Epetra_Vector &D) | 
| Perform right scaling of a linear problem.  More... | |
Accessor methods  | |
| Epetra_Operator * | GetOperator () const | 
| Get a pointer to the operator A.  | |
| Epetra_RowMatrix * | GetMatrix () const | 
| Get a pointer to the matrix A.  | |
| Epetra_MultiVector * | GetLHS () const | 
| Get a pointer to the left-hand-side X.  | |
| Epetra_MultiVector * | GetRHS () const | 
| Get a pointer to the right-hand-side B.  | |
| ProblemDifficultyLevel | GetPDL () const | 
| Get problem difficulty level.  | |
| bool | IsOperatorSymmetric () const | 
| Get operator symmetry bool.  | |
Set methods | |
| enum | ProblemDifficultyLevel { easy, moderate, hard, unsure } | 
| void | AssertSymmetric () | 
| void | SetPDL (ProblemDifficultyLevel PDL) | 
| Set problem difficulty level.  More... | |
| void | SetOperator (Epetra_RowMatrix *A) | 
| Set Operator A of linear problem AX = B using an Epetra_RowMatrix.  More... | |
| void | SetOperator (Epetra_Operator *A) | 
| Set Operator A of linear problem AX = B using an Epetra_Operator.  More... | |
| void | SetLHS (Epetra_MultiVector *X) | 
| Set left-hand-side X of linear problem AX = B.  More... | |
| void | SetRHS (Epetra_MultiVector *B) | 
| Set right-hand-side B of linear problem AX = B.  More... | |
Epetra_LinearProblem: The Epetra Linear Problem Class.
The Epetra_LinearProblem class is a wrapper that encapsulates the general information needed for solving a linear system of equations. Currently it accepts a Epetra matrix, initial guess and RHS and returns the solution. the elapsed time for each calling processor.
| Epetra_LinearProblem::Epetra_LinearProblem | ( | void | ) | 
Epetra_LinearProblem Default Constructor.
Creates an empty Epetra_LinearProblem instance. The operator A, left-hand-side X and right-hand-side B must be set use the SetOperator(), SetLHS() and SetRHS() methods respectively.
| Epetra_LinearProblem::Epetra_LinearProblem | ( | Epetra_RowMatrix * | A, | 
| Epetra_MultiVector * | X, | ||
| Epetra_MultiVector * | B | ||
| ) | 
Epetra_LinearProblem Constructor to pass in an operator as a matrix.
Creates a Epetra_LinearProblem instance where the operator is passed in as a matrix.
| Epetra_LinearProblem::Epetra_LinearProblem | ( | Epetra_Operator * | A, | 
| Epetra_MultiVector * | X, | ||
| Epetra_MultiVector * | B | ||
| ) | 
Epetra_LinearProblem Constructor to pass in a basic Epetra_Operator.
Creates a Epetra_LinearProblem instance for the case where an operator is not necessarily a matrix.
| Epetra_LinearProblem::Epetra_LinearProblem | ( | const Epetra_LinearProblem & | Problem | ) | 
Epetra_LinearProblem Copy Constructor.
Makes copy of an existing Epetra_LinearProblem instance.
      
  | 
  virtual | 
Epetra_LinearProblem Destructor.
Completely deletes a Epetra_LinearProblem object.
| int Epetra_LinearProblem::CheckInput | ( | ) | const | 
Check input parameters for existence and size consistency.
Returns 0 if all input parameters are valid. Returns +1 if operator is not a matrix. This is not necessarily an error, but no scaling can be done if the user passes in an Epetra_Operator that is not an Epetra_Matrix
| int Epetra_LinearProblem::LeftScale | ( | const Epetra_Vector & | D | ) | 
Perform left scaling of a linear problem.
Applies the scaling vector D to the left side of the matrix A() and to the right hand side B(). Note that the operator must be an Epetra_RowMatrix, not just an Epetra_Operator (the base class of Epetra_RowMatrix).
| In | D - Vector containing scaling values. D[i] will be applied to the ith row of A() and B(). | 
| int Epetra_LinearProblem::RightScale | ( | const Epetra_Vector & | D | ) | 
Perform right scaling of a linear problem.
Applies the scaling vector D to the right side of the matrix A(). Apply the inverse of D to the initial guess. Note that the operator must be an Epetra_RowMatrix, not just an Epetra_Operator (the base class of Epetra_RowMatrix).
| In | D - Vector containing scaling values. D[i] will be applied to the ith row of A(). 1/D[i] will be applied to the ith row of B(). | 
      
  | 
  inline | 
Set left-hand-side X of linear problem AX = B.
Sets a pointer to a Epetra_MultiVector. No copy of the object is made.
      
  | 
  inline | 
Set Operator A of linear problem AX = B using an Epetra_RowMatrix.
Sets a pointer to a Epetra_RowMatrix. No copy of the operator is made.
      
  | 
  inline | 
Set Operator A of linear problem AX = B using an Epetra_Operator.
Sets a pointer to a Epetra_Operator. No copy of the operator is made.
      
  | 
  inline | 
Set problem difficulty level.
Sets Aztec options and parameters based on a definition of easy moderate or hard problem. Relieves the user from explicitly setting a large number of individual parameter values. This function can be used in conjunction with the SetOptions() and SetParams() functions.
      
  | 
  inline | 
Set right-hand-side B of linear problem AX = B.
Sets a pointer to a Epetra_MultiVector. No copy of the object is made.
 1.8.5