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

# sc\_SymRep(3)

The SymRep class provides an n dimensional matrix representation of a symmetry operation, such as a rotation or reflection.

## NAME

sc::SymRep - The **SymRep** class provides an n dimensional matrix representation of a symmetry operation, such as a rotation or reflection.

## SYNOPSIS

`#include <pointgrp.h>`

### Public Member Functions

**SymRep** (int=0)\
 **SymRep** (const **SymmetryOperation** &)\
 **operator SymmetryOperation** () const\
 Cast to a **SymmetryOperation**.  double **trace** () const\
 returns the trace of the transformation matrix  void **set\_dim** (int **i**)\
 set the dimension of d  double \* **operator\[\]** (int **i**)\
 returns the i'th row of the transformation matrix  const double \* **operator\[\]** (int **i**) const\
 const version of the above  double & **operator()** (int **i**, int j)\
 returns a reference to the (i,j)th element of the transformation matrix  double **operator()** (int **i**, int j) const\
 const version of double& **operator()(int i, int j)**  void **zero** ()\
 zero out the symop  **SymRep** **operate** (const **SymRep** &r) const\
 This operates on this with r (i.e. return r \* this).  **SymRep** **transform** (const **SymRep** &r) const\
 This performs the transform r \* this \* r~.  void **unit** ()\
 Set equal to a unit matrix.  void **E** ()\
 Set equal to the identity.  void **i** ()\
 Set equal to an inversion.  void **sigma\_h** ()\
 Set equal to reflection in xy plane.  void **sigma\_xz** ()\
 Set equal to reflection in xz plane.  void **sigma\_yz** ()\
 Set equal to reflection in yz plane.  void **rotation** (int n)\
 Set equal to a clockwise rotation by 2pi/n.  void **rotation** (double theta)\
 void **c2\_x** ()\
 Set equal to C2 about the x axis.  void **c2\_y** ()\
 Set equal to C2 about the x axis.  void **print** (std::ostream &=**ExEnv::out0**()) const\
 print the matrix

## Detailed Description

The **SymRep** class provides an n dimensional matrix representation of a symmetry operation, such as a rotation or reflection.

The trace of a **SymRep** can be used as the character for that symmetry operation. d is hardwired to 5x5 since the H irrep in Ih is 5 dimensional.

## Author

Generated automatically by Doxygen for MPQC from the source code.
