ThePEG
2.2.1
|
The RhoDMatrix class is designed to implement the storage of the rho and D matrices which are required for the spin correlation algorithm. More...
#include <RhoDMatrix.h>
Public Member Functions | |
void | reset (bool average=true) |
Reset. | |
Standard constructors and destructors. | |
RhoDMatrix ()=default | |
Default constructor with undefined spin. | |
RhoDMatrix (PDT::Spin inspin, bool average=true) | |
Standard constructor giving the spin as 2s+1. More... | |
Access matrix elements. | |
Complex | operator() (size_t ix, size_t iy) const |
Return an element of the matrix. | |
Complex & | operator() (size_t ix, size_t iy) |
Set an element of the matrix. | |
void | normalize () |
renormalise the matrix so it has unit trace | |
Access the spin. | |
PDT::Spin | iSpin () const |
Get the spin. More... | |
Private Types | |
enum | { MAXSPIN = 5 } |
Spin matrix size. | |
Private Attributes | |
PDT::Spin | _spin |
2s+1 for the particle. | |
size_t | _ispin |
Storage of 2s+1 for speed. | |
std::array< std::array< Complex, MAXSPIN >, MAXSPIN > | _matrix |
Storage for the matrix allowing up to spin 2 particles. | |
Friends | |
ostream & | operator<< (ostream &os, const RhoDMatrix &rd) |
Output the spin density matrix for debugging purposes. | |
The RhoDMatrix class is designed to implement the storage of the rho and D matrices which are required for the spin correlation algorithm.
The matrix stores the spin as 2s+1.
Definition at line 28 of file RhoDMatrix.h.
|
inline |
Standard constructor giving the spin as 2s+1.
The matrix starts out averaged, unless the second argument is false, when it is zeroed.
Definition at line 43 of file RhoDMatrix.h.
|
inline |
Get the spin.
The spin is returned as 2J+1 in units of hbar/2.
Definition at line 112 of file RhoDMatrix.h.
References _spin, and operator<<.