GLAC  1.0
Public Member Functions | Data Fields
SU3 Class Reference

class for holding \(\mathrm{SU}(3)\) matrices. More...

#include <su3.h>

Public Member Functions

 SU3 ()
 
SU3operator= (const SU3 &other)
 
 ~SU3 ()
 
double & operator[] (int i)
 
SU3operator= (const double &other)
 
SU3operator+= (SU3 B)
 
SU3operator-= (SU3 B)
 
SU3operator *= (SU3 B)
 
SU3operator+= (complex z)
 
SU3operator-= (complex z)
 
SU3operator *= (complex z)
 
SU3operator+= (double a)
 
SU3operator-= (double a)
 
SU3operator/= (double a)
 
SU3operator *= (double a)
 
void print ()
 
complex get (int i, int j)
 
complex trace ()
 
SU3 makeHermitian ()
 
SU3 makeAntiHermitian ()
 
SU3 inv ()
 SU3::inv performs a matrix inversion. More...
 
void zeros ()
 
void identity ()
 
SU3 transpose ()
 
SU3 conjugate ()
 
void setComplex (complex w, int i)
 
double norm (int i)
 
double normSquared (int i)
 

Data Fields

double mat [18]
 

Detailed Description

class for holding \(\mathrm{SU}(3)\) matrices.

Operations have been overloaded for ease of use.

Author
Mathias M. Vege
Version
1.0
Date
2017-2019

Constructor & Destructor Documentation

◆ SU3()

SU3::SU3 ( )
inline

◆ ~SU3()

SU3::~SU3 ( )
inline

Member Function Documentation

◆ conjugate()

SU3 SU3::conjugate ( )

◆ get()

complex SU3::get ( int  i,
int  j 
)
inline
Here is the caller graph for this function:

◆ identity()

void SU3::identity ( )
Here is the caller graph for this function:

◆ inv()

SU3 SU3::inv ( )
inline

SU3::inv performs a matrix inversion.

Returns
a copy of the inverse of itself.
Here is the caller graph for this function:

◆ makeAntiHermitian()

SU3 SU3::makeAntiHermitian ( )
inline

◆ makeHermitian()

SU3 SU3::makeHermitian ( )
inline
Here is the caller graph for this function:

◆ norm()

double SU3::norm ( int  i)

◆ normSquared()

double SU3::normSquared ( int  i)

◆ operator *=() [1/3]

SU3 & SU3::operator *= ( SU3  B)
inline

◆ operator *=() [2/3]

SU3 & SU3::operator *= ( complex  z)
inline

◆ operator *=() [3/3]

SU3 & SU3::operator *= ( double  a)
inline

◆ operator+=() [1/3]

SU3 & SU3::operator+= ( SU3  B)
inline

◆ operator+=() [2/3]

SU3 & SU3::operator+= ( complex  z)
inline

◆ operator+=() [3/3]

SU3 & SU3::operator+= ( double  a)
inline

◆ operator-=() [1/3]

SU3 & SU3::operator-= ( SU3  B)
inline

◆ operator-=() [2/3]

SU3 & SU3::operator-= ( complex  z)
inline

◆ operator-=() [3/3]

SU3 & SU3::operator-= ( double  a)
inline

◆ operator/=()

SU3 & SU3::operator/= ( double  a)
inline

◆ operator=() [1/2]

SU3& SU3::operator= ( const SU3 other)
inline

◆ operator=() [2/2]

SU3 & SU3::operator= ( const double &  other)
inline

◆ operator[]()

double& SU3::operator[] ( int  i)
inline

◆ print()

void SU3::print ( )

◆ setComplex()

void SU3::setComplex ( complex  w,
int  i 
)
Here is the caller graph for this function:

◆ trace()

complex SU3::trace ( )

◆ transpose()

SU3 SU3::transpose ( )

◆ zeros()

void SU3::zeros ( )
Here is the caller graph for this function:

Field Documentation

◆ mat

double SU3::mat[18]

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