ThePEG 2.3.0
|
The VectorSpinInfo class is the implementation of the spin information for vector particles. More...
#include <VectorSpinInfo.h>
Public Member Functions | |
Standard constructors and destructors. | |
VectorSpinInfo () | |
Default constructor. | |
VectorSpinInfo (const Lorentz5Momentum &p, bool time) | |
Standard Constructor. | |
Public Member Functions inherited from ThePEG::SpinInfo | |
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. | |
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. | |
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. | |
SpinInfo (const SpinInfo &) | |
Copy-constructor. | |
virtual bool | hasPolarization () const |
Returns true if the polarization() has been implemented in a subclass. | |
virtual DPair | polarization () const |
Return the angles of the polarization vector as a pair of doubles. | |
virtual void | rebind (const EventTranslationMap &trans) |
Rebind to cloned objects. | |
void | update () const |
Method to handle the delelation. | |
virtual void | rebind (const EventTranslationMap &) |
Rebind to cloned objects. | |
virtual EIPtr | clone () const |
Standard clone method. | |
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. | |
virtual void | debugme () const |
Print out debugging information for this object on std::cerr. | |
Public Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
CounterType | referenceCount () const |
Return the reference count. | |
Set and get methods for the basis state. | |
std::array< LorentzPolarizationVector, 3 > | _productionstates |
Basis states in the frame in which the particle was produced. | |
std::array< LorentzPolarizationVector, 3 > | _decaystates |
Basis states in the frame in which the particle decays. | |
std::array< LorentzPolarizationVector, 3 > | _currentstates |
Basis states in the current frame of the particle. | |
bool | _decaycalc |
True if the decay state has been set. | |
void | setBasisState (unsigned int hel, const LorentzPolarizationVector &in) const |
Set the basis state, this is production state. | |
void | setDecayState (unsigned int hel, const LorentzPolarizationVector &in) const |
Set the basis state for the decay. | |
const LorentzPolarizationVector & | getProductionBasisState (unsigned int hel) const |
Get the basis state for the production for the given helicity, hel (0,1,2 as described above.) | |
const LorentzPolarizationVector & | getCurrentBasisState (unsigned int hel) const |
Get the basis state for the current for the given helicity, hel (0,1,2 as described above.) | |
const LorentzPolarizationVector & | getDecayBasisState (unsigned int hel) const |
Get the basis state for the decay for the given helicity, hel (0,1,2 as described above.) | |
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. | |
static void | Init () |
Standard Init function used to initialize the interfaces. | |
VectorSpinInfo & | operator= (const VectorSpinInfo &)=delete |
Private and non-existent assignment operator. | |
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. | |
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. | |
Static Public Member Functions inherited from ThePEG::Base | |
static void | Init () |
The standard Init function used to initialize the interfaces. | |
Public Attributes inherited from ThePEG::Pointer::ReferenceCounted | |
const unsigned long | uniqueId |
The unique ID. | |
Protected Member Functions inherited from ThePEG::Pointer::ReferenceCounted | |
ReferenceCounted () | |
Default constructor. | |
ReferenceCounted (const ReferenceCounted &) | |
Copy-constructor. | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
Assignment. | |
The VectorSpinInfo class is the implementation of the spin information for vector particles.
It inherits from the SpinInfo class and implements the storage of the basis vectors.
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 correlation.
N.B. in our convention 0 is the \(-1\) helicity state, 1 is the \(0\) helicity state and 2 is the \(+1\) helicity state.
Definition at line 39 of file VectorSpinInfo.h.
|
inline |
Default constructor.
Definition at line 48 of file VectorSpinInfo.h.
|
inline |
Standard Constructor.
p | the production momentum. |
time | true if the particle is time-like. |
Definition at line 55 of file VectorSpinInfo.h.
|
virtual |
Standard clone method.
Reimplemented from ThePEG::SpinInfo.
|
inline |
Get the basis state for the current for the given helicity, hel (0,1,2 as described above.)
Definition at line 100 of file VectorSpinInfo.h.
References _currentstates.
|
inline |
Get the basis state for the decay for the given helicity, hel (0,1,2 as described above.)
Definition at line 109 of file VectorSpinInfo.h.
References _currentstates, _decaycalc, and _decaystates.
|
inline |
Get the basis state for the production for the given helicity, hel (0,1,2 as described above.)
Definition at line 91 of file VectorSpinInfo.h.
References _productionstates.
|
inlinevirtual |
Reset.
Reimplemented from ThePEG::SpinInfo.
Definition at line 137 of file VectorSpinInfo.h.
References _currentstates, _productionstates, ThePEG::SpinInfo::reset(), and undecay().
|
inline |
Set the basis state, this is production state.
hel | the helicity (0,1,2 as described above.) |
in | the LorentzPolarizationVector for the given helicity. |
Definition at line 68 of file VectorSpinInfo.h.
References _currentstates, and _productionstates.
|
inline |
Set the basis state for the decay.
hel | the helicity (0,1,2 as described above.) |
in | the LorentzPolarizationVector for the given helicity. |
Definition at line 80 of file VectorSpinInfo.h.
References _decaycalc, and _decaystates.
|
virtual |
Perform a Lorentz rotation of the spin information.
Reimplemented from ThePEG::SpinInfo.
|
inlinevirtual |
Undecay.
Reimplemented from ThePEG::SpinInfo.
Definition at line 129 of file VectorSpinInfo.h.
References _decaycalc, and ThePEG::SpinInfo::undecay().
Referenced by reset().
|
mutableprivate |
Basis states in the current frame of the particle.
Definition at line 177 of file VectorSpinInfo.h.
Referenced by getCurrentBasisState(), getDecayBasisState(), reset(), and setBasisState().
|
mutableprivate |
True if the decay state has been set.
Definition at line 182 of file VectorSpinInfo.h.
Referenced by getDecayBasisState(), setDecayState(), and undecay().
|
mutableprivate |
Basis states in the frame in which the particle decays.
Definition at line 172 of file VectorSpinInfo.h.
Referenced by getDecayBasisState(), and setDecayState().
|
mutableprivate |
Basis states in the frame in which the particle was produced.
Definition at line 167 of file VectorSpinInfo.h.
Referenced by getProductionBasisState(), reset(), and setBasisState().