Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

atlas::setutils Namespace Reference


Classes

struct  atlas::setutils::Permutation

Functions

void compose (Permutation &a, const Permutation &b, unsigned long n)
template<typename T>
size_t find_index (const std::vector< T > &v, const T &x)
void identity (Permutation &p, unsigned long n)
void invert (Permutation &dst, const Permutation &src)


Function Documentation

void atlas::setutils::compose Permutation &  a,
const Permutation &  b,
unsigned long  n = 0
 

Synopsis: a *= b;

Precondition : a holds a permutation of [0,N[; b holds a permutation of [0,M[; M + n <= N;

Postcondition : a holds the permutation a_new of [0,N[ where a_new[i+n] = a[ b[i] + n ] for i in [0,M[; a is not changed outside the range [n,M+n[.

NOTE : although we know that the permutation can be done in place with the aid of just a bitmap, we do the lazy approach here and make a copy of the range involved.

Definition at line 38 of file setutils.cpp.

Referenced by atlas::componentNormalize().

template<typename T>
size_t find_index const std::vector< T > &  v,
const T &  x
[inline]
 

Definition at line 25 of file setutils.h.

Referenced by atlas::cartanset::CartanClassSet::cayley(), atlas::cartanset::CartanClassSet::classNumber(), atlas::cartanset::CartanClassSet::dual_real_form_part(), atlas::cartanset::CartanClassSet::extend(), atlas::rootdata::RootDatum::isRoot(), atlas::tits::makeTwist(), atlas::cartanset::CartanClassSet::real_form_part(), and atlas::rootdata::RootDatum::rootNbr().

void identity Permutation &  p,
unsigned long  n
[inline]
 

Definition at line 63 of file setutils.h.

void invert Permutation &  dst,
const Permutation &  src
[inline]
 

Definition at line 65 of file setutils.h.


Generated on Wed Mar 26 16:53:04 2008 for atlas by  doxygen 1.3.9.1