# sc_CharacterTable man page

sc::CharacterTable — The **CharacterTable** class provides a workable character table for all of the non-cubic point groups.

## Synopsis

`#include <pointgrp.h>`

### Public Types

enum **pgroups** { **C1**, **CS**, **CI**, **CN**, **CNV**, **CNH**, **DN**, **DND**, **DNH**, **SN**, **T**, **TH**, **TD**, **O**, **OH**, **I**, **IH** }

### Public Member Functions

**CharacterTable** (const char *)

This constructor takes the Schoenflies symbol of a point group as input. **CharacterTable** (const char *, const **SymmetryOperation** &)

This is like the above, but it also takes a reference to a **SymmetryOperation** which is the frame of reference. **CharacterTable** (const **CharacterTable** &)**CharacterTable** & **operator=** (const **CharacterTable** &)

int **nirrep** () const

Returns the number of irreps.

int **order** () const

Returns the order of the point group.

const char * **symbol** () const

Returns the Schoenflies symbol for the point group. **IrreducibleRepresentation** & **gamma** (int i)

Returns the i'th irrep. **SymmetryOperation** & **symm_operation** (int i)

Returns the i'th symmetry operation.

int **complex** () const

Cn, Cnh, Sn, T, and Th point groups have complex representations.

int **inverse** (int i) const

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

int **ncomp** () const

int **which_irrep** (int i)

Returns the irrep component i belongs to.

int **which_comp** (int i)

Returns which component i is.

void **print** (std::ostream &=**ExEnv::out0**()) const

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

## 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

### sc::CharacterTable::CharacterTable (const char *)

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

### sc::CharacterTable::CharacterTable (const char *, const SymmetryOperation &)

This is like the above, but it also takes a reference to a **SymmetryOperation** which is the frame of reference. All symmetry operations are transformed to this frame of reference.

## Member Function Documentation

### int sc::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.

## Author

Generated automatically by Doxygen for MPQC from the source code.