LiE::LiE_t Class Reference

A frontend to use LiE algorithms from within C++. More...

#include <lie.hh>

List of all members.

Public Types

typedef std::vector< rep_treps_t
enum  algebra_t {
  alg_A = 'A', alg_B = 'B', alg_C = 'C', alg_D = 'D',
  alg_E = 'E', alg_F = 'F', alg_G = 'G'
}

Public Member Functions

 LiE_t (algebra_t alg=alg_D, unsigned int d=5)
 ~LiE_t ()
void start ()
void stop ()
bool tensor (const std::vector< rep_t > &, const std::vector< rep_t > &, std::vector< rep_t > &)
 Routines which map 1-1 to a LiE command.
bool sym_tensor (unsigned int, const std::vector< rep_t > &, std::vector< rep_t > &)
bool alt_tensor (unsigned int, const std::vector< rep_t > &, std::vector< rep_t > &)
bool alt_sym_tensor (unsigned int, const std::vector< rep_t > &, std::vector< rep_t > &, bool issym)
unsigned int dim (const rep_t &)
unsigned int dim (const std::vector< rep_t > &)
bool plethysm (const std::vector< unsigned int > &tab, std::vector< rep_t > &res, bool traceless, int selfdual=0)
bool plethysm (const std::vector< unsigned int > &, const std::vector< rep_t > &, std::vector< rep_t > &, bool traceless=false, int selfdual=0)
void keep_largest_dim (std::vector< rep_t > &, int selfdual=0)
 Keep the representation with the largest dimension.
unsigned int multiplicity_of_singlet (const std::vector< rep_t > &) const
 Find the number of singlets in a list of representations.

Public Attributes

algebra_t algebra_type
unsigned int algebra_dim

Private Types

enum  parsemode_t { START, MULT, REP }

Private Member Functions

int kgetc ()
void kungetc (int)
void wait_prompt ()
void wait_newline ()
void eat_white ()
void putreps (std::ostream &str, const std::vector< rep_t > &reps)
void putrep (std::ostream &str, const rep_t &rep)
void putalgtype (std::ostream &str)
int read_int ()
void read_replist (std::vector< rep_t > &)

Private Attributes

modglue::child_process lie_proc
char curchar
int pid

Classes

class  rep_t


Detailed Description

A frontend to use LiE algorithms from within C++.


Member Typedef Documentation

typedef std::vector<rep_t> LiE::LiE_t::reps_t
 


Member Enumeration Documentation

enum LiE::LiE_t::algebra_t
 

Enumerator:
alg_A 
alg_B 
alg_C 
alg_D 
alg_E 
alg_F 
alg_G 

enum LiE::LiE_t::parsemode_t [private]
 

Enumerator:
START 
MULT 
REP 


Constructor & Destructor Documentation

LiE::LiE_t::LiE_t algebra_t  alg = alg_D,
unsigned int  d = 5
 

LiE::LiE_t::~LiE_t  ) 
 


Member Function Documentation

bool LiE::LiE_t::alt_sym_tensor unsigned  int,
const std::vector< rep_t > &  ,
std::vector< rep_t > &  ,
bool  issym
 

bool LiE::LiE_t::alt_tensor unsigned  int,
const std::vector< rep_t > &  ,
std::vector< rep_t > & 
 

unsigned int LiE::LiE_t::dim const std::vector< rep_t > &   ) 
 

unsigned int LiE::LiE_t::dim const rep_t  ) 
 

void LiE::LiE_t::eat_white  )  [private]
 

void LiE::LiE_t::keep_largest_dim std::vector< rep_t > &  ,
int  selfdual = 0
 

Keep the representation with the largest dimension.

int LiE::LiE_t::kgetc  )  [private]
 

void LiE::LiE_t::kungetc int   )  [private]
 

unsigned int LiE::LiE_t::multiplicity_of_singlet const std::vector< rep_t > &   )  const
 

Find the number of singlets in a list of representations.

bool LiE::LiE_t::plethysm const std::vector< unsigned int > &  ,
const std::vector< rep_t > &  ,
std::vector< rep_t > &  ,
bool  traceless = false,
int  selfdual = 0
 

bool LiE::LiE_t::plethysm const std::vector< unsigned int > &  tab,
std::vector< rep_t > &  res,
bool  traceless,
int  selfdual = 0
 

void LiE::LiE_t::putalgtype std::ostream &  str  )  [private]
 

void LiE::LiE_t::putrep std::ostream &  str,
const rep_t rep
[private]
 

void LiE::LiE_t::putreps std::ostream &  str,
const std::vector< rep_t > &  reps
[private]
 

int LiE::LiE_t::read_int  )  [private]
 

void LiE::LiE_t::read_replist std::vector< rep_t > &   )  [private]
 

void LiE::LiE_t::start  ) 
 

void LiE::LiE_t::stop  ) 
 

bool LiE::LiE_t::sym_tensor unsigned  int,
const std::vector< rep_t > &  ,
std::vector< rep_t > & 
 

bool LiE::LiE_t::tensor const std::vector< rep_t > &  ,
const std::vector< rep_t > &  ,
std::vector< rep_t > & 
 

Routines which map 1-1 to a LiE command.

void LiE::LiE_t::wait_newline  )  [private]
 

void LiE::LiE_t::wait_prompt  )  [private]
 


Member Data Documentation

unsigned int LiE::LiE_t::algebra_dim
 

algebra_t LiE::LiE_t::algebra_type
 

Global setting for algebra dimension and type (not much point in making these changeable on the fly).

char LiE::LiE_t::curchar [private]
 

modglue::child_process LiE::LiE_t::lie_proc [private]
 

int LiE::LiE_t::pid [private]
 


The documentation for this class was generated from the following files:
Generated on Sat Jul 18 23:03:19 2009 for cadabra by  doxygen 1.4.6