ThePEG
2.2.1
|
The FermionSpinInfo class inherits from the SpinInfo class and implements the storage of the basis vectors for a spin-1/2 particle. More...
#include <FermionSpinInfo.h>
Public Member Functions | |
virtual void | transform (const LorentzMomentum &, const LorentzRotation &) |
Perform a lorentz rotation of the spin information. | |
virtual void | undecay () const |
Undecay. | |
virtual void | reset () |
Reset. | |
virtual EIPtr | clone () const |
Standard clone method. | |
Standard constructors and destructors. | |
FermionSpinInfo () | |
Default constructor. | |
FermionSpinInfo (const Lorentz5Momentum &p, bool time) | |
Standard Constructor. More... | |
Set and get methods for the basis state. | |
void | setBasisState (unsigned int hel, const LorentzSpinor< SqrtEnergy > &in) const |
Set the basis state, this is production state. More... | |
void | setDecayState (unsigned int hel, const LorentzSpinor< SqrtEnergy > &in) const |
Set the basis state for the decay. More... | |
const LorentzSpinor< SqrtEnergy > & | getProductionBasisState (unsigned int hel) const |
Get the basis state for the production for the given helicity, hel (which is 0 or 1 as described above.) | |
const LorentzSpinor< SqrtEnergy > & | getCurrentBasisState (unsigned int hel) const |
Get the current basis state for the given helicity, hel (which is 0 or 1 as described above.) | |
const LorentzSpinor< SqrtEnergy > & | getDecayBasisState (unsigned int hel) const |
Get the basis state for the decay for the given helicity, hel (which is 0 or 1 as described above.) | |
Public Member Functions inherited from ThePEG::SpinInfo | |
virtual bool | hasPolarization () const |
Returns true if the polarization() has been implemented in a subclass. More... | |
virtual DPair | polarization () const |
Return the angles of the polarization vector as a pair of doubles. More... | |
virtual void | rebind (const EventTranslationMap &trans) |
Rebind to cloned objects. More... | |
void | update () const |
Method to handle the delelation. | |
bool | isNear (const Lorentz5Momentum &p) |
Check if momentum is near to the current momentum. | |
SpinInfo () | |
Default constructor. | |
SpinInfo (PDT::Spin s, const Lorentz5Momentum &p=Lorentz5Momentum(), bool time=false) | |
Standard Constructor. More... | |
SpinInfo (const SpinInfo &) | |
Copy-constructor. | |
void | productionVertex (VertexPtr in) const |
Set the vertex at which the particle was produced. | |
tcVertexPtr | productionVertex () const |
Get the vertex at which the particle was produced. | |
void | decayVertex (VertexPtr in) const |
Set the vertex at which the particle decayed or branched. | |
tcVertexPtr | decayVertex () const |
Get the vertex at which the particle decayed or branched. | |
bool | decayed () const |
Has the particle decayed? | |
void | decayed (bool b) const |
Set if the particle has decayed. | |
DevelopedStatus | developed () const |
Return true if the decay matrix required to perform the decays of the siblings of a particle has been calculated. | |
void | decay (bool recursive=false) const |
Calculate the rho matrix for the decay if not already done. | |
void | develop () const |
Set the developed flag and calculate the D matrix for the decay. | |
void | needsUpdate () const |
Needs update. | |
void | stopUpdate () const |
Used for an unstable particle to temporarily stop redevelop and redecay at that particle. | |
PDT::Spin | iSpin () const |
Return 2s+1 for the particle. | |
const Lorentz5Momentum & | productionMomentum () const |
Return the momentum of the particle when it was produced. | |
const Lorentz5Momentum & | currentMomentum () const |
The current momentum of the particle. | |
bool | timelike () const |
Return true if particle is timelike (rather than spacelike). | |
int | productionLocation () const |
Access to the locations. More... | |
int | decayLocation () const |
Decay Location. | |
RhoDMatrix | rhoMatrix () const |
Access the rho matrix. | |
RhoDMatrix & | rhoMatrix () |
Access the rho matrix. | |
RhoDMatrix | DMatrix () const |
Access the D matrix. | |
RhoDMatrix & | DMatrix () |
Access the D matrix. | |
Public Member Functions inherited from ThePEG::Base | |
virtual | ~Base () |
The virtual destructor. | |
void | debug () const |
Print out debugging information for this object on std::cerr. More... | |
virtual void | debugme () const |
Print out debugging information for this object on std::cerr. More... | |
Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
CounterType | referenceCount () const |
Return the reference count. | |
Static Public Member Functions | |
static void | Init () |
Standard Init function. | |
Static Public Member Functions inherited from ThePEG::SpinInfo | |
static void | Init () |
Standard Init function. | |
Static Public Member Functions inherited from ThePEG::EventInfoBase | |
static void | Init () |
Standard Init function. More... | |
Static Public Member Functions inherited from ThePEG::Base | |
static void | Init () |
The standard Init function used to initialize the interfaces. More... | |
Private Member Functions | |
FermionSpinInfo & | operator= (const FermionSpinInfo &)=delete |
Private and non-existent assignment operator. | |
Private Attributes | |
std::array< LorentzSpinor< SqrtEnergy >, 2 > | _productionstates |
basis states in the frame in which the particle was produced | |
std::array< LorentzSpinor< SqrtEnergy >, 2 > | _currentstates |
basis states in the current frame of the particle | |
std::array< LorentzSpinor< SqrtEnergy >, 2 > | _decaystates |
basis states in the frame in which the particle decays | |
bool | _decaycalc |
True if the decay state has been set. | |
Additional Inherited Members | |
Public Types inherited from ThePEG::SpinInfo | |
enum | DevelopedStatus { Undeveloped =0, Developed =1, NeedsUpdate =2, StopUpdate =3 } |
Status for the implementation of spin correlations. More... | |
Public Types inherited from ThePEG::Pointer::ReferenceCounted | |
typedef unsigned int | CounterType |
The integer type used for counting. | |
Public Attributes inherited from ThePEG::Pointer::ReferenceCounted | |
const unsigned long | uniqueId |
The unique ID. More... | |
Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
ReferenceCounted () | |
Default constructor. | |
ReferenceCounted (const ReferenceCounted &) | |
Copy-constructor. | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
Assignment. | |
The FermionSpinInfo class inherits from the SpinInfo class and implements the storage of the basis vectors for a spin-1/2 particle.
The basis states are the u-spinors for a particle and the v-spinors for an antiparticle. The barred spinors can be obtained from these.
These basis states should be set by either matrixelements or decayers which are capable of generating spin correlation information.
The basis states in the rest frame of the particles can then be accessed by decayers to produce the correct correlations.
N.B. in our convention 0 is the helicity state and 1 is the helicity state.
Definition at line 40 of file FermionSpinInfo.h.
|
inline |
Standard Constructor.
p | the production momentum. |
time | true if the particle is time-like. |
Definition at line 57 of file FermionSpinInfo.h.
|
inline |
Set the basis state, this is production state.
hel | the helicity (0 or 1 as described above.) |
in | the LorentzSpinor for the given helicity. |
Definition at line 70 of file FermionSpinInfo.h.
References _currentstates, and _productionstates.
|
inline |
Set the basis state for the decay.
hel | the helicity (0 or 1 as described above.) |
in | the LorentzSpinor for the given helicity. |
Definition at line 82 of file FermionSpinInfo.h.
References _decaycalc, and _decaystates.