---
name: "sc_CharacterTable"
section: "3"
platform: "linux"
package: "libsc-doc"
version: "2.3.1-22"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/sc_CharacterTable"
---

# sc\_CharacterTable(3)

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

## NAME

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 \*, 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.
