#include "TPauliSpinor.h"

TPauliSpinor


class description - header file - source file

class TPauliSpinor

Inheritance Inherited Members Includes Libraries
Class Charts

Function Members (Methods)

Display options:
Show inherited
Show non-public
public:
TPauliSpinor()
TPauliSpinor(const Complex_t* array)
TPauliSpinor(const TUnitVector& pol)
TPauliSpinor(const TPauliSpinor& another)
TPauliSpinor(const Complex_t& a1, const Complex_t& a2)
TPauliSpinor(const Double_t theta, const Double_t phi)
virtual~TPauliSpinor()
static TClass*Class()
TPauliSpinor&Conj()
Double_tDistanceTo(const TPauliSpinor& another) const
Double_tDistanceTo(const Complex_t* array) const
voidGetPolar(Double_t& theta, Double_t& phi) const
virtual TClass*IsA() const
Double_tNorm() const
TPauliSpinor&Normalize()
TPauliSpinor&Normalize(const Double_t& norm)
Double_tNormSqr() const
TPauliSpinor&Operate(const TPauliMatrix& xOp)
Bool_toperator!=(const TPauliSpinor& other) const
Bool_toperator!=(const Complex_t* array) const
TPauliSpinor&operator*=(const Complex_t& factor)
TPauliSpinor&operator+=(const TPauliSpinor& source)
TPauliSpinor&operator+=(const Complex_t* array)
TPauliSpinoroperator-() const
TPauliSpinor&operator-=(const TPauliSpinor& source)
TPauliSpinor&operator-=(const Complex_t* array)
TPauliSpinor&operator/=(const Complex_t& factor)
TPauliSpinor&operator=(const TPauliSpinor& source)
TPauliSpinor&operator=(const Complex_t* array)
Bool_toperator==(const TPauliSpinor& other) const
Bool_toperator==(const Complex_t* array) const
Complex_t&operator[](Int_t index) const
TUnitVectorPolar() const
voidPrint(Option_t* option = "")
Double_tResolution() const
TPauliSpinor&Rotate(const TThreeRotation& rotOp)
TPauliSpinor&Rotate(const TThreeVectorReal& axis)
TPauliSpinor&Rotate(const TUnitVector& axis, const Double_t angle)
TPauliSpinor&Rotate(const Double_t& phi, const Double_t& theta, const Double_t& psi)
Complex_tScalarProd(const TPauliSpinor& other)
TPauliSpinor&SetPolar(const TUnitVector& pol)
TPauliSpinor&SetPolar(const Double_t& theta, const Double_t& phi)
static voidSetResolution(const Double_t resolution)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
TPauliSpinor&Zero()

Data Members

protected:
Complex_tfSpinor[2]complex state vector allocated on stack
static Double_tfResolutionvector resolving "distance"

Class Description

                                                                      
 Pauli Spinor Algebra Package                                         
                                                                      
 The present package implements all the basic algorithms dealing      
 with Pauli spinors, which form a fundamental representation of the   
 SU(2) group.  The basic classes are PauliSpinor and PauliMatrix,     
 which are 2-vectors and 2x2 matrices, respectively, of complex       
 numbers.  The generators of the group are in the standard Pauli      
 sigma matrix representation.  This package has particular members    
 to facilitate a quantum mechanical calculation in which the Pauli    
 spinor describes the spin-state of a fermion and the QM operators    
 are described by Pauli matrices.  Pauli matrices are also used to    
 describe mixed states, ensembles that contain mixtures of particles  
 described by more than one Pauli spinor.                             
									
 The standard Pauli matrices are generated by invoking the construc-	
 to with an argument of enum type TPauliIndex.  A TPauliIndex can be	
	kPauliOne,	kPauliSigma1,	kPauliSimga2,	kPauliSigma3.	
 Any 2x2 matrix can be expressed as a sum over this basis.		
                                                                      
 Spinors and matrices can be transformed under rotations according    
 to the commutation rules for the SU(2) group.  Rotations may be      
 specified either by Euler angles or by a rotation axis, or by        
 supplying a member of the TThreeRotation class defined in            
 TFourVector.h.  All angles are assumed to be in radians.             
                                                                      
 This package was developed at the University of Connecticut by       
 Richard T. Jones                                                     
                                                                      

TPauliSpinor & Operate(const TPauliMatrix &xOp)
TPauliSpinor & Rotate(const TThreeRotation &rotOp)
TPauliSpinor & Rotate(const Double_t &phi, const Double_t &theta, const Double_t &psi)
TPauliSpinor & Rotate(const TThreeVectorReal &axis)
TPauliSpinor & Rotate(const TUnitVector &axis, const Double_t angle)
void Streamer(TBuffer &buf)
 Put/get a Pauli spinor to/from stream buffer buf.
 This method assmes that Complex_t is stored as double[2].
void Print(Option_t *option)
 Output an ascii representation for a Pauli spinor.
TPauliSpinor(const Complex_t &a1, const Complex_t &a2)
TPauliSpinor(const Complex_t *array)
TPauliSpinor(const Double_t theta, const Double_t phi)
TPauliSpinor(const TUnitVector &pol)
TPauliSpinor(const TPauliSpinor &another)
Complex_t & operator[](Int_t index)
void SetResolution(const Double_t resolution)
Double_t Resolution()
Double_t Norm()
Double_t NormSqr()
void GetPolar(Double_t &theta, Double_t &phi)
TUnitVector Polar()
Double_t DistanceTo(const TPauliSpinor &another)
Double_t DistanceTo(const Complex_t *array)
TPauliSpinor & operator=(const TPauliSpinor &source)
TPauliSpinor & operator=(const Complex_t *array)
TPauliSpinor & operator+=(const TPauliSpinor &source)
TPauliSpinor & operator+=(const Complex_t *array)
TPauliSpinor & operator-=(const TPauliSpinor &source)
TPauliSpinor & operator-=(const Complex_t *array)
TPauliSpinor & operator*=(const Complex_t &factor)
TPauliSpinor & operator/=(const Complex_t &factor)
Bool_t operator==(const TPauliSpinor &other)
Bool_t operator==(const Complex_t *array)
Bool_t operator!=(const TPauliSpinor &other)
Bool_t operator!=(const Complex_t *array)
TPauliSpinor & Zero()
TPauliSpinor & Conj()
TPauliSpinor & Normalize()
TPauliSpinor & Normalize(const Double_t &norm)
TPauliSpinor & SetPolar(const TUnitVector &pol)
Complex_t ScalarProd(const TPauliSpinor &other)
TPauliSpinor operator-()
TPauliSpinor()
{ }
virtual ~TPauliSpinor()
{ }
TPauliSpinor & SetPolar(const Double_t &theta, const Double_t &phi)

Author: Richard T. Jones 11/16/98
Last update: Dec. 12, 1998 v1.00
Copyright (c) 1998, University of Connecticut, All rights reserved. *


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.