CUDA Lab Course Reference Manual 2011

Solver< VECTOR > Class Template Reference

Inheritance diagram for Solver< VECTOR >:

Subscriptor SolverCG< VECTOR >

List of all members.


Public Member Functions

 Solver (::SolverControl &solver_control,::VectorMemory< VECTOR > &vector_memory)
 Solver (::SolverControl &solver_control)
::SolverControl & control () const

Protected Attributes

mutable::PrimitiveVectorMemory
< VECTOR > 
static_vector_memory
::SolverControl & cntrl
::VectorMemory< VECTOR > & memory

template<class VECTOR = ::Vector<double>>
class Solver< VECTOR >


Constructor & Destructor Documentation

template<class VECTOR >
Solver< VECTOR >::Solver ( ::SolverControl &  solver_control,
::VectorMemory< VECTOR > &  vector_memory 
) [inline]

Constructor. Takes a control object which evaluates the conditions for convergence, and an object to provide memory.

Of both objects, a reference is stored, so it is the user's responsibility to guarantee that the lifetime of the two arguments is at least as long as that of the solver object.

template<class VECTOR >
Solver< VECTOR >::Solver ( ::SolverControl &  solver_control  )  [inline]

Constructor. Takes a control object which evaluates the conditions for convergence. In contrast to the other constructor, this constructor denotes an internal object of type GrowingVectorMemory to allocate memory.

A reference to the control object is stored, so it is the user's responsibility to guarantee that the lifetime of the two arguments is at least as long as that of the solver object.


Member Function Documentation

template<class VECTOR >
SolverControl & Solver< VECTOR >::control (  )  const [inline]

Access to object that controls convergence.

References Solver< VECTOR >::cntrl.

Referenced by SolverCG< VECTOR >::solve().


Member Data Documentation

template<class VECTOR = ::Vector<double>>
mutable ::PrimitiveVectorMemory<VECTOR> Solver< VECTOR >::static_vector_memory [protected]

A static vector memory object to be used whenever no such object has been given to the constructor.

template<class VECTOR = ::Vector<double>>
::SolverControl& Solver< VECTOR >::cntrl [protected]

Control structure.

Referenced by Solver< VECTOR >::control().

template<class VECTOR = ::Vector<double>>
::VectorMemory<VECTOR>& Solver< VECTOR >::memory [protected]

Memory for auxilliary vectors.

Referenced by SolverCG< VECTOR >::cleanup(), and SolverCG< VECTOR >::solve().


The documentation for this class was generated from the following file:

blanc++ documentation generated on Mon Jul 18 12:05:12 2011 by doxygen 1.5.7