9 #ifndef ThePEG_FermionSpinInfo_H
10 #define ThePEG_FermionSpinInfo_H
13 #include "ThePEG/EventRecord/SpinInfo.h"
14 #include "ThePEG/Helicity/LorentzSpinor.h"
15 #include "FermionSpinInfo.fh"
188 struct BaseClassTrait<ThePEG::Helicity::FermionSpinInfo,1>
189 :
public ClassTraitsType {
199 struct ClassTraits<ThePEG::Helicity::FermionSpinInfo>
200 :
public ClassTraitsBase<ThePEG::Helicity::FermionSpinInfo> {
204 static string className() {
return "ThePEG::Helicity::FermionSpinInfo"; }
vector< LorentzSpinor< SqrtEnergy > > _productionstates
basis states in the frame in which the particle was produced
virtual void transform(const LorentzMomentum &, const LorentzRotation &)
Perform a lorentz rotation of the spin information.
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 abov...
PDT is a helper class implementing enumerations for charge, colour and spin to be used by the Particl...
The LorentzRotation class combine a SpinOneLorentzRotation and a spin SpinHalfLorentzRotation to prov...
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...
FermionSpinInfo(const Lorentz5Momentum &p, bool time)
Standard Constructor.
virtual EIPtr clone() const
Standard clone method.
This is the main namespace within which all identifiers in ThePEG are declared.
The LorentzSpinor class is designed to store a spinor.
A concreate implementation of ClassDescriptionBase describing a concrete class without persistent dat...
FermionSpinInfo()
Default constructor.
static NoPIOClassDescription< FermionSpinInfo > initFermionSpinInfo
Describe a concrete class without persistent data.
The SpinInfo is the base class for the spin information for the spin correlation algorithm.
bool _decaycalc
True if the decay state has been set.
static void Init()
Standard Init function.
RCPtr is a reference counted (smart) pointer.
FermionSpinInfo & operator=(const FermionSpinInfo &)
Private and non-existent assignment operator.
void setBasisState(unsigned int hel, const LorentzSpinor< SqrtEnergy > &in) const
Set the basis state, this is production state.
void setDecayState(unsigned int hel, const LorentzSpinor< SqrtEnergy > &in) const
Set the basis state for the decay.
vector< LorentzSpinor< SqrtEnergy > > _currentstates
basis states in the current frame of the particle
static string className()
Return the name of class T.
int NthBase
The type of the BaseN'th base class (int means there are no further base classes).
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...
vector< LorentzSpinor< SqrtEnergy > > _decaystates
basis states in the frame in which the particle decays
The FermionSpinInfo class inherits from the SpinInfo class and implements the storage of the basis ve...