Inheritance diagram for ML_FiniteElements::AbstractProblem:
Public Member Functions
|virtual Epetra_RowMatrix &||A ()=0|
|Returns a reference to the linear system matrix. |
|virtual Epetra_MultiVector &||RHS ()=0|
|Returns a reference to the multi-vector of right-hand side. |
|virtual Epetra_MultiVector &||LHS ()=0|
|Returns a reference to the multi-vector of starting solution. |
|virtual const AbstractGrid &||Grid () const =0|
|Returns a reference to the grid object. |
|virtual const AbstractVariational &||Variational () const =0|
|Returns a reference to the variational object. |
|virtual void||Compute ()=0|
|Computes the linear system matrix, LHS and RHS. |
|virtual void||ComputeNorms (Epetra_MultiVector &RowMatrixField, int(*ExactSolution)(double, double, double, double *), const bool verbose=true, double *SolutionNorm=0, double *ExactNorm=0, double *DiffNorm=0)=0|
|Computes the norm of computed solution, exact solution, and error. |
AbstractProblem defines a set of abstract interfaces, used to construct the linear system corresponding to the finite element discretization of a scalar PDE problem. Concrete implementation will require an AbstractGrid and an AbstractVariational object; the former is used to query for the grid elements, the latter to integrate the variational form over such elements. The role of AbstractProblem is to take the elemental matrices, given by AbstractVariational, and insert them into the global, distributed matrix (whose RowMatrixRowMap() is given by Grid().RowMap()).
Computes the norm of computed solution, exact solution, and error.
Implemented in ML_FiniteElements::LinearProblem.