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

atlas::involutions::InvolutionSet Class Reference

#include <involutions.h>

Inheritance diagram for atlas::involutions::InvolutionSet:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 InvolutionSet ()
 InvolutionSet (complexredgp::ComplexReductiveGroup &)
 Constructor; computes the set of twisted involutions for G.
virtual ~InvolutionSet ()
void swap (InvolutionSet &)
size_t action (size_t s, size_t w) const
const weyl::TwistedInvolutiondualInvolution (size_t j) const
const weyl::TwistedInvolutioninvolution (size_t j) const
size_t involutionNbr (const weyl::TwistedInvolution &, const weyl::WeylGroup &) const
 Index of w in d_involution.
const size_t rank () const
const size_t size () const

Protected Attributes

size_t d_size
size_t d_rank
std::vector< std::vector<
size_t > > 
d_action
std::vector< size_t > d_cartan
std::vector< weyl::TwistedInvolutiond_involution
std::vector< weyl::TwistedInvolutiond_dualInvolution

Constructor & Destructor Documentation

atlas::involutions::InvolutionSet::InvolutionSet  ) 
 

Definition at line 84 of file involutions.cpp.

atlas::involutions::InvolutionSet::InvolutionSet complexredgp::ComplexReductiveGroup G  )  [explicit]
 

Constructor; computes the set of twisted involutions for G.

NOTE: the set of involutions is actually constructed twice: once by fillCartan(), and then here. This is unfortunate, but negligible in the grand scheme of things, and having G remember its involution set runs against the principle of keeping the ComplexReductiveGroup class fairly small. Also this should be easy enough to change in the future if desired.

Definition at line 98 of file involutions.cpp.

References swap().

virtual atlas::involutions::InvolutionSet::~InvolutionSet  )  [inline, virtual]
 

Definition at line 55 of file involutions.h.


Member Function Documentation

size_t atlas::involutions::InvolutionSet::action size_t  s,
size_t  w
const [inline]
 

Definition at line 61 of file involutions.h.

Referenced by atlas::involutions::helper::Helper::fillCartan(), atlas::involutions::helper::Helper::fillInvolutions(), and involutionNbr().

const weyl::TwistedInvolution& atlas::involutions::InvolutionSet::dualInvolution size_t  j  )  const [inline]
 

Definition at line 65 of file involutions.h.

References atlas::weyl::TwistedInvolution.

const weyl::TwistedInvolution& atlas::involutions::InvolutionSet::involution size_t  j  )  const [inline]
 

Definition at line 69 of file involutions.h.

References atlas::weyl::TwistedInvolution.

Referenced by atlas::involutions::helper::Helper::fillCartan(), atlas::involutions::helper::Helper::fillDualInvolutions(), and atlas::involutions::helper::Helper::fillInvolutions().

size_t atlas::involutions::InvolutionSet::involutionNbr const weyl::TwistedInvolution w,
const weyl::WeylGroup W
const
 

Index of w in d_involution.

Precondition: w is a twisted involution for W;

Algorithm: find a reduced expression of w as an involution, and follow the action pointers.

Definition at line 128 of file involutions.cpp.

References action(), atlas::weyl::WeylGroup::involutionOut(), atlas::weyl::TwistedInvolution, and atlas::weyl::WeylWord.

Referenced by atlas::involutions::helper::Helper::fillCartan().

const size_t atlas::involutions::InvolutionSet::rank  )  const [inline]
 

Definition at line 76 of file involutions.h.

const size_t atlas::involutions::InvolutionSet::size  )  const [inline]
 

Definition at line 80 of file involutions.h.

void atlas::involutions::InvolutionSet::swap InvolutionSet  ) 
 

Definition at line 105 of file involutions.cpp.

References d_action, d_cartan, d_dualInvolution, d_involution, d_rank, and d_size.

Referenced by InvolutionSet().


Member Data Documentation

std::vector<std::vector<size_t> > atlas::involutions::InvolutionSet::d_action [protected]
 

Definition at line 44 of file involutions.h.

Referenced by swap().

std::vector<size_t> atlas::involutions::InvolutionSet::d_cartan [protected]
 

Definition at line 45 of file involutions.h.

Referenced by swap().

std::vector<weyl::TwistedInvolution> atlas::involutions::InvolutionSet::d_dualInvolution [protected]
 

Definition at line 47 of file involutions.h.

Referenced by swap().

std::vector<weyl::TwistedInvolution> atlas::involutions::InvolutionSet::d_involution [protected]
 

Definition at line 46 of file involutions.h.

Referenced by swap().

size_t atlas::involutions::InvolutionSet::d_rank [protected]
 

Definition at line 43 of file involutions.h.

Referenced by swap().

size_t atlas::involutions::InvolutionSet::d_size [protected]
 

Definition at line 42 of file involutions.h.

Referenced by swap().


The documentation for this class was generated from the following files:
Generated on Wed Mar 26 16:52:50 2008 for atlas by  doxygen 1.3.9.1