SpinBase
is the base class for adding spin information to a Particle.
More...
#include <SpinBase.h>
Public Member Functions | |
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 | transform (const LorentzMomentum &, const LorentzRotation &) |
Perform a lorentz rotation of the spin information assuming the particle has the given momentum before the boost. | |
virtual EIPtr | clone () const |
Standard clone method. | |
Static Public Member Functions | |
static void | Init () |
Standard Init function used to initialize the interface. | |
Private Member Functions | |
SpinBase & | operator= (const SpinBase &) |
Private and non-existent assignment operator. | |
Static Private Attributes | |
static NoPIOClassDescription < SpinBase > | initSpinBase |
Describe concrete class without persistent data. |
SpinBase
is the base class for adding spin information to a Particle.
Models may implement subclasses with a specific representation of the spin. The information can then be obtained through virtual functions in this base class or by dynamically casting to a specific, model dependent, subclass. Currently the only virtual function available in the base class is polarization()
which returns the polar and azimuth angle of the polarization vector. This is for compatibility with the HepMC::GenEvent
event record in CLHEP. In the future more functions may be added if they can be agreed upon.
Definition at line 31 of file SpinBase.h.
virtual bool ThePEG::SpinBase::hasPolarization | ( | ) | const [inline, virtual] |
Returns true if the polarization() has been implemented in a subclass.
This default version returns false.
Definition at line 39 of file SpinBase.h.
virtual DPair ThePEG::SpinBase::polarization | ( | ) | const [inline, virtual] |
Return the angles of the polarization vector as a pair of doubles.
first is the polar angle and second is the azimuth wrt. the particles direction. This default version of the function returns 0,0, and if a subclass implements a proper function it should also implement 'hasPolarization()' to return true.
Definition at line 49 of file SpinBase.h.
virtual void ThePEG::SpinBase::transform | ( | const LorentzMomentum & | , | |
const LorentzRotation & | ||||
) | [inline, virtual] |
Perform a lorentz rotation of the spin information assuming the particle has the given momentum before the boost.
This default method does nothing.
Reimplemented in ThePEG::Helicity::FermionSpinInfo, ThePEG::Helicity::RSFermionSpinInfo, ThePEG::Helicity::ScalarSpinInfo, ThePEG::Helicity::SpinInfo, ThePEG::Helicity::TensorSpinInfo, and ThePEG::Helicity::VectorSpinInfo.
Definition at line 56 of file SpinBase.h.