Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Permutation Class Template Reference
[linbox/blackbox]

#include <permutation.h>

Inheritance diagram for Permutation:

BlackboxInterface List of all members.

Detailed Description

template<class _Field, class Storage = std::vector< long >>
class LinBox::Permutation< _Field, Storage >

size is n.

Parameters:
Storage  \Ref{LinBox} dense or sparse vector of field elements


Public Types

typedef _Field Field
typedef Field::Element Element

Public Methods

 Permutation (Storage &indices, const Field &F=Field())
 Permutation (int n, const Field &F=Field())
 Permutation (const Permutation &M)
 ~Permutation (void)
template<class OutVector, class InVector> OutVector & apply (OutVector &y, const InVector &x) const
 y \leftarrow Px#.

template<class OutVector, class InVector> OutVector & applyTranspose (OutVector &y, const InVector &x) const
 y^T \leftarrow x^T P#.

size_t rowdim (void) const
size_t coldim (void) const
void permute (size_t row1, size_t row2)
const Fieldfield ()


Member Typedef Documentation

typedef Field::Element Element
 

typedef _Field Field
 


Constructor & Destructor Documentation

Permutation Storage &    indices,
const Field   F = Field()
[inline]
 

Constructor from a vector of indices This constructor creates a permutation matrix based on a vector of indices

Parameters:
indices  Vector of indices representing the permutation

Permutation int    n,
const Field   F = Field()
[inline]
 

Constructor from a dimension This constructor creates an n x n permutation matrix, initialized to be the identity

Parameters:
n  The dimension of hte matrix to create

Permutation const Permutation< _Field, Storage > &    M [inline]
 

~Permutation void    [inline]
 


Member Function Documentation

OutVector& apply OutVector &    y,
const InVector &    x
const [inline]
 

y \leftarrow Px#.

OutVector& applyTranspose OutVector &    y,
const InVector &    x
const [inline]
 

y^T \leftarrow x^T P#.

size_t coldim void    const [inline]
 

const Field& field   [inline]
 

void permute size_t    row1,
size_t    row2
[inline]
 

Add a transposition to the matrix

size_t rowdim void    const [inline]
 


Generated on Mon Jun 20 09:16:56 2005 for linbox by doxygen1.2.18