Psi4
Public Member Functions | Private Member Functions | Private Attributes | List of all members
psi::CharacterTable Class Reference

#include <pointgrp.h>

Public Member Functions

 CharacterTable ()
 
 CharacterTable (const std::string &)
 
 CharacterTable (unsigned char)
 
 CharacterTable (const CharacterTable &)
 
 ~CharacterTable ()
 
CharacterTableoperator= (const CharacterTable &)
 
int nirrep () const
 Returns the number of irreps. More...
 
int order () const
 Returns the order of the point group. More...
 
const std::string & symbol () const
 Returns the Schoenflies symbol for the point group. More...
 
IrreducibleRepresentationgamma (int i) const
 Returns the i'th irrep. More...
 
SymmetryOperationsymm_operation (int i) const
 Returns the i'th symmetry operation. More...
 
int complex () const
 
int inverse (int i) const
 Returns the index of the symop which is the inverse of symop[i]. More...
 
int ncomp () const
 
int which_irrep (int i)
 Returns the irrep component i belongs to. More...
 
int which_comp (int i)
 Returns which component i is. More...
 
unsigned char bits ()
 
void print (std::string="outfile") const
 This prints the irrep to the given file, or stdout if none is given. More...
 

Private Member Functions

int make_table ()
 this fills in the irrep and symop arrays. More...
 
void common_init ()
 

Private Attributes

int nt
 order of the princ rot axis More...
 
PointGroups::Groups pg
 the class of the point group More...
 
int nirrep_
 the number of irreps in this pg More...
 
IrreducibleRepresentationgamma_
 an array of irreps More...
 
SymmetryOperationsymop
 the matrices describing sym ops More...
 
int * _inv
 index of the inverse symop More...
 
std::string symb
 the Schoenflies symbol for the pg More...
 
unsigned char bits_
 Bitwise representation of the symmetry operations. More...
 

Detailed Description

The CharacterTable class provides a workable character table for all of the non-cubic point groups. While I have tried to match the ordering in Cotton's book, I don't guarantee that it is always followed. It shouldn't matter anyway. Also note that I don't lump symmetry operations of the same class together. For example, in C3v there are two distinct C3 rotations and 3 distinct reflections, each with a separate character. Thus symop has 6 elements rather than the 3 you'll find in most published character tables.

Constructor & Destructor Documentation

CharacterTable::CharacterTable ( )
CharacterTable::CharacterTable ( const std::string &  cpg)

This constructor takes the Schoenflies symbol of a point group as input.

CharacterTable::CharacterTable ( unsigned char  bits)

This constructor takes the bitswise representation of a point group as input.

CharacterTable::CharacterTable ( const CharacterTable ct)
CharacterTable::~CharacterTable ( )

Member Function Documentation

unsigned char CharacterTable::bits ( )
void CharacterTable::common_init ( )
private
int psi::CharacterTable::complex ( ) const
inline

Cn, Cnh, Sn, T, and Th point groups have complex representations. This function returns 1 if the point group has a complex representation, 0 otherwise.

IrreducibleRepresentation& psi::CharacterTable::gamma ( int  i) const
inline

Returns the i'th irrep.

int psi::CharacterTable::inverse ( int  i) const
inline

Returns the index of the symop which is the inverse of symop[i].

int CharacterTable::make_table ( )
private

this fills in the irrep and symop arrays.

int psi::CharacterTable::ncomp ( ) const
inline
int psi::CharacterTable::nirrep ( ) const
inline

Returns the number of irreps.

CharacterTable & CharacterTable::operator= ( const CharacterTable ct)
int psi::CharacterTable::order ( ) const
inline

Returns the order of the point group.

void CharacterTable::print ( std::string  out = "outfile") const

This prints the irrep to the given file, or stdout if none is given.

const std::string& psi::CharacterTable::symbol ( ) const
inline

Returns the Schoenflies symbol for the point group.

SymmetryOperation& psi::CharacterTable::symm_operation ( int  i) const
inline

Returns the i'th symmetry operation.

int psi::CharacterTable::which_comp ( int  i)
inline

Returns which component i is.

int psi::CharacterTable::which_irrep ( int  i)
inline

Returns the irrep component i belongs to.

Member Data Documentation

int* psi::CharacterTable::_inv
private

index of the inverse symop

unsigned char psi::CharacterTable::bits_
private

Bitwise representation of the symmetry operations.

IrreducibleRepresentation* psi::CharacterTable::gamma_
private

an array of irreps

int psi::CharacterTable::nirrep_
private

the number of irreps in this pg

int psi::CharacterTable::nt
private

order of the princ rot axis

PointGroups::Groups psi::CharacterTable::pg
private

the class of the point group

std::string psi::CharacterTable::symb
private

the Schoenflies symbol for the pg

SymmetryOperation* psi::CharacterTable::symop
private

the matrices describing sym ops


The documentation for this class was generated from the following files: