UMFPACKSolver Class Reference

#include <umfpacksolver.h>

Inheritance diagram for UMFPACKSolver:
Inheritance graph
[legend]
Collaboration diagram for UMFPACKSolver:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 UMFPACKSolver ()
virtual ~UMFPACKSolver ()
virtual void solve (const SparseMatrix< double > &M, VecDouble &sol, const VecDouble &rhs)
void solveAgain (const SparseMatrix< double > &M, VecDouble &sol, const VecDouble &rhs)

Private Attributes

SparseDirectUMFPACK solveA

Detailed Description

Definition at line 10 of file umfpacksolver.h.


Constructor & Destructor Documentation

UMFPACKSolver::UMFPACKSolver (  )  [inline]

Definition at line 18 of file umfpacksolver.h.

00018 {}

virtual UMFPACKSolver::~UMFPACKSolver (  )  [inline, virtual]

Definition at line 19 of file umfpacksolver.h.

00019 {}


Member Function Documentation

void UMFPACKSolver::solve ( const SparseMatrix< double > &  M,
VecDouble sol,
const VecDouble rhs 
) [virtual]

Implements LinearSolver.

Definition at line 4 of file umfpacksolver.cpp.

00005 {
00006   assert(M.m() == M.n());
00007   assert(rhs.size() == M.n());
00008   solveA.factorize(M);
00009   sol=rhs;
00010   solveA.solve(sol);
00011 }

void UMFPACKSolver::solveAgain ( const SparseMatrix< double > &  M,
VecDouble sol,
const VecDouble rhs 
) [virtual]

Implements LinearSolver.

Definition at line 14 of file umfpacksolver.cpp.

00015 {
00016   assert(M.m() == M.n());
00017   assert(rhs.size() == M.n());
00018   sol=rhs;
00019   solveA.solve(sol);
00020 }


Member Data Documentation

SparseDirectUMFPACK UMFPACKSolver::solveA [private]

Definition at line 13 of file umfpacksolver.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Sun Apr 8 23:13:29 2012 for CO2INJECTION by  doxygen 1.6.3