# sc_SymmetryOperation (3) - Linux Man Pages

## NAME

sc::SymmetryOperation -

The SymmetryOperation class provides a 3 by 3 matrix representation of a symmetry operation, such as a rotation or reflection.

## SYNOPSIS

#include <pointgrp.h>

### Public Member Functions

SymmetryOperation (const SymmetryOperation &)

double trace () const
returns the trace of the transformation matrix
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 the above
void zero ()
zero out the symop
SymmetryOperation operate (const SymmetryOperation &r) const
This operates on this with r (i.e. return r * this).
SymmetryOperation transform (const SymmetryOperation &r) const
This performs the transform r * this * r~.
void unit ()
Set equal to a unit matrix.
void E ()
Set equal to E.
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 transpose ()

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

## Detailed Description

The SymmetryOperation class provides a 3 by 3 matrix representation of a symmetry operation, such as a rotation or reflection.

## Author

Generated automatically by Doxygen for MPQC from the source code.