AbstractLinAlgPack::Permutation Class Reference

Abstract interface to permutation matrices. More...

#include <AbstractLinAlgPack_Permutation.hpp>

List of all members.

Vector space

virtual const VectorSpacespace () const =0
 Return a reference to a vector space object that this permutation is compatible with.

Information

virtual size_type dim () const =0
 Return the dimension of the permutation.
virtual bool is_identity () const =0
 Returns true if this is the identity permutation I.
virtual std::ostream & output (std::ostream &out) const =0
 Prints debug type of information.

Vector permutations

virtual void permute (BLAS_Cpp::Transp P_trans, const Vector &x, VectorMutable *y) const =0
 Permute a vector op(P)*x -> y.
virtual void permute (BLAS_Cpp::Transp P_trans, VectorMutable *y) const =0
 Permute a vector op(P)*y -> y.

Public Member Functions

virtual ~Permutation ()
 


Detailed Description

Abstract interface to permutation matrices.

A Permutation object is used to permute the elements within a vector. It is not a general linear operator since it does not map between vector spaces. It only permutes elements within the same vector space.

Definition at line 43 of file AbstractLinAlgPack_Permutation.hpp.


Constructor & Destructor Documentation

virtual AbstractLinAlgPack::Permutation::~Permutation (  )  [inline, virtual]

Definition at line 47 of file AbstractLinAlgPack_Permutation.hpp.


Member Function Documentation

virtual const VectorSpace& AbstractLinAlgPack::Permutation::space (  )  const [pure virtual]

Return a reference to a vector space object that this permutation is compatible with.

virtual size_type AbstractLinAlgPack::Permutation::dim (  )  const [pure virtual]

Return the dimension of the permutation.

virtual bool AbstractLinAlgPack::Permutation::is_identity (  )  const [pure virtual]

Returns true if this is the identity permutation I.

virtual std::ostream& AbstractLinAlgPack::Permutation::output ( std::ostream &  out  )  const [pure virtual]

Prints debug type of information.

virtual void AbstractLinAlgPack::Permutation::permute ( BLAS_Cpp::Transp  P_trans,
const Vector x,
VectorMutable y 
) const [pure virtual]

Permute a vector op(P)*x -> y.

Parameters:
P_trans [in] op(P) = P for P_trans == BLAS_Cpp::no_trans or op(P) = P' for P_trans == BLAS_Cpp::trans.
x [in] Vector.
y [out] Vector.
Preconditions:

virtual void AbstractLinAlgPack::Permutation::permute ( BLAS_Cpp::Transp  P_trans,
VectorMutable y 
) const [pure virtual]

Permute a vector op(P)*y -> y.

Parameters:
P_trans [in] op(P) = P for P_trans == BLAS_Cpp::no_trans or op(P) = P' for P_trans == BLAS_Cpp::trans.
y [in/out] Vector.
Preconditions:


The documentation for this class was generated from the following file:
Generated on Tue Oct 20 12:54:05 2009 for MOOCHO (Single Doxygen Collection) by doxygen 1.4.7