# sc::SymRep Class Reference

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

`#include <pointgrp.h>`

List of all members.

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

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

- pointgrp.h