AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
List of all members
AbstractLinAlgPack::VectorSpaceSerial Class Reference

Subclass for serial vector space objects that create VectorMutableDense vector and MultiVectorMutableDense multi-vector objects. More...

#include <AbstractLinAlgPack_VectorSpaceSerial.hpp>

Inheritance diagram for AbstractLinAlgPack::VectorSpaceSerial:
Inheritance graph
[legend]

Constructors / initializers

 VectorSpaceSerial (size_type dim=0)
 Calls this->initialize(). More...
 
void initialize (size_type dim)
 Initialize given the dimension of the vector space. More...
 

Overridden from VectorSpece

bool is_compatible (const VectorSpace &vec_space) const
 Returns true if vec_space.dim() == this->dim(). More...
 
bool is_in_core () const
 Returns true. More...
 
index_type dim () const
 Returns 0 if uninitialized. More...
 
space_fcty_ptr_t small_vec_spc_fcty () const
 Returns a VectorSpaceFactorySerial object. More...
 
space_ptr_t clone () const
 
vec_mut_ptr_t create_member () const
 Returns a VectorMutableDense object. More...
 
multi_vec_mut_ptr_t create_members (size_type num_vecs) const
 Returns a MultiVectorMutableDense object. More...
 
space_ptr_t sub_space (const Range1D &rng) const
 
space_ptr_t space (const GenPermMatrixSlice &P, BLAS_Cpp::Transp P_trans) const
 

Additional Inherited Members

- Public Types inherited from AbstractLinAlgPack::VectorSpace
typedef Teuchos::RCP< const
InnerProduct
inner_prod_ptr_t
 
typedef Teuchos::RCP< const
VectorSpace
space_ptr_t
 
typedef Teuchos::RCP< const
VectorSpaceFactory
space_fcty_ptr_t
 
typedef Teuchos::RCP
< VectorMutable
vec_mut_ptr_t
 
typedef Teuchos::RCP
< MultiVectorMutable
multi_vec_mut_ptr_t
 
- Public Member Functions inherited from AbstractLinAlgPack::VectorSpace
space_ptr_t sub_space (const index_type il, const index_type iu) const
 Inlined to call this->sub_space(Range1D(il,iu)). More...
 
 VectorSpace (const inner_prod_ptr_t &inner_prod=Teuchos::null)
 Calls inner_prod() More...
 
virtual void inner_prod (const inner_prod_ptr_t &inner_prod)
 Initialize with an inner product object. More...
 
virtual const inner_prod_ptr_t inner_prod () const
 Return the smart pointer to the inner product strategy object. More...
 
virtual vec_mut_ptr_t create_member (const value_type &alpha) const
 Create a vector member from the vector space initialized to a scalar. More...
 
obj_ptr_t create () const
 Just calls this->create_member() by default! More...
 

Detailed Description

Subclass for serial vector space objects that create VectorMutableDense vector and MultiVectorMutableDense multi-vector objects.

The default constructor, copy constructor and assignment operators are allowed since they have the correct semantics.

Definition at line 56 of file AbstractLinAlgPack_VectorSpaceSerial.hpp.

Constructor & Destructor Documentation

AbstractLinAlgPack::VectorSpaceSerial::VectorSpaceSerial ( size_type  dim = 0)

Calls this->initialize().

Definition at line 63 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.

Member Function Documentation

void AbstractLinAlgPack::VectorSpaceSerial::initialize ( size_type  dim)

Initialize given the dimension of the vector space.

Parameters
dim[in] The dimension of the vector space.

Definition at line 69 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.

bool AbstractLinAlgPack::VectorSpaceSerial::is_compatible ( const VectorSpace vec_space) const
virtual

Returns true if vec_space.dim() == this->dim().

The assumption here is that Vector::get_sub_vector() and VectorMutable::get_sub_vector() can be used to implement all of the methods on an SMP machine in an efficient manner.

Implements AbstractLinAlgPack::VectorSpace.

Definition at line 77 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.

bool AbstractLinAlgPack::VectorSpaceSerial::is_in_core ( ) const
virtual

Returns true.

Reimplemented from AbstractLinAlgPack::VectorSpace.

Definition at line 83 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.

index_type AbstractLinAlgPack::VectorSpaceSerial::dim ( ) const
virtual

Returns 0 if uninitialized.

Implements AbstractLinAlgPack::VectorSpace.

Definition at line 88 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.

VectorSpace::space_fcty_ptr_t AbstractLinAlgPack::VectorSpaceSerial::small_vec_spc_fcty ( ) const
virtual

Returns a VectorSpaceFactorySerial object.

Reimplemented from AbstractLinAlgPack::VectorSpace.

Definition at line 95 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.

VectorSpace::space_ptr_t AbstractLinAlgPack::VectorSpaceSerial::clone ( ) const
virtual
VectorSpace::vec_mut_ptr_t AbstractLinAlgPack::VectorSpaceSerial::create_member ( ) const
virtual

Returns a VectorMutableDense object.

Implements AbstractLinAlgPack::VectorSpace.

Definition at line 110 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.

VectorSpace::multi_vec_mut_ptr_t AbstractLinAlgPack::VectorSpaceSerial::create_members ( size_type  num_vecs) const
virtual

Returns a MultiVectorMutableDense object.

Reimplemented from AbstractLinAlgPack::VectorSpace.

Definition at line 118 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.

VectorSpace::space_ptr_t AbstractLinAlgPack::VectorSpaceSerial::sub_space ( const Range1D rng) const
virtual

Reimplemented from AbstractLinAlgPack::VectorSpace.

Definition at line 126 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.

VectorSpace::space_ptr_t AbstractLinAlgPack::VectorSpaceSerial::space ( const GenPermMatrixSlice P,
BLAS_Cpp::Transp  P_trans 
) const
virtual

Reimplemented from AbstractLinAlgPack::VectorSpace.

Definition at line 145 of file AbstractLinAlgPack_VectorSpaceSerial.cpp.


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