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 Thu Sep 18 12:33:54 2008 for AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects by doxygen 1.3.9.1