PYTHIA  8.312
Public Member Functions | Public Attributes | List of all members
HelicityParticle Class Reference

#include <HelicityBasics.h>

Inheritance diagram for HelicityParticle:
Particle

Public Member Functions

 HelicityParticle ()
 Constructors.
 
 HelicityParticle (int idIn, int statusIn=0, int mother1In=0, int mother2In=0, int daughter1In=0, int daughter2In=0, int colIn=0, int acolIn=0, double pxIn=0., double pyIn=0., double pzIn=0., double eIn=0., double mIn=0., double scaleIn=0., ParticleData *ptr=0)
 
 HelicityParticle (int idIn, int statusIn, int mother1In, int mother2In, int daughter1In, int daughter2In, int colIn, int acolIn, Vec4 pIn, double mIn=0., double scaleIn=0., ParticleData *ptr=0)
 
 HelicityParticle (const Particle &ptIn, ParticleData *ptr=0)
 
Wave4 wave (int h)
 Methods. More...
 
Wave4 waveBar (int h)
 Bar of a wave function.
 
void normalize (vector< vector< complex > > &m)
 Normalize the rho or D matrices.
 
int spinStates ()
 Return the number of spin states.
 
double m ()
 Return and set mass (redefine from Particle).
 
void m (double mIn)
 
double pol ()
 Set the helicity state (redefine from Particle).
 
void pol (double hIn)
 Set the helicity state. More...
 
int index () const
 Event record position (redefine from Particle).
 
void index (int indexIn)
 
- Public Member Functions inherited from Particle
 Particle ()
 Constructors.
 
 Particle (int idIn, int statusIn=0, int mother1In=0, int mother2In=0, int daughter1In=0, int daughter2In=0, int colIn=0, int acolIn=0, double pxIn=0., double pyIn=0., double pzIn=0., double eIn=0., double mIn=0., double scaleIn=0., double polIn=9.)
 
 Particle (int idIn, int statusIn, int mother1In, int mother2In, int daughter1In, int daughter2In, int colIn, int acolIn, Vec4 pIn, double mIn=0., double scaleIn=0., double polIn=9.)
 
 Particle (const Particle &pt)
 
Particleoperator= (const Particle &pt)
 
virtual ~Particle ()
 Destructor.
 
void setEvtPtr (Event *evtPtrIn)
 Member functions to set the Event and ParticleDataEntry pointers.
 
void setPDEPtr (ParticleDataEntryPtr pdePtrIn=nullptr)
 Set pointer to the particle data species of the particle.
 
void id (int idIn)
 Member functions for input.
 
void status (int statusIn)
 
void statusPos ()
 
void statusNeg ()
 
void statusCode (int statusIn)
 
void mother1 (int mother1In)
 
void mother2 (int mother2In)
 
void mothers (int mother1In=0, int mother2In=0)
 
void daughter1 (int daughter1In)
 
void daughter2 (int daughter2In)
 
void daughters (int daughter1In=0, int daughter2In=0)
 
void col (int colIn)
 
void acol (int acolIn)
 
void cols (int colIn=0, int acolIn=0)
 
void p (Vec4 pIn)
 
void p (double pxIn, double pyIn, double pzIn, double eIn)
 
void px (double pxIn)
 
void py (double pyIn)
 
void pz (double pzIn)
 
void e (double eIn)
 
void m (double mIn)
 
void scale (double scaleIn)
 
void pol (double polIn)
 
void vProd (Vec4 vProdIn)
 
void vProd (double xProdIn, double yProdIn, double zProdIn, double tProdIn)
 
void xProd (double xProdIn)
 
void yProd (double yProdIn)
 
void zProd (double zProdIn)
 
void tProd (double tProdIn)
 
void vProdAdd (Vec4 vProdIn)
 
void tau (double tauIn)
 
int id () const
 Member functions for output.
 
int status () const
 
int mother1 () const
 
int mother2 () const
 
int daughter1 () const
 
int daughter2 () const
 
int col () const
 
int acol () const
 
Vec4 p () const
 
double px () const
 
double py () const
 
double pz () const
 
double e () const
 
double m () const
 
double scale () const
 
double pol () const
 
bool hasVertex () const
 
Vec4 vProd () const
 
double xProd () const
 
double yProd () const
 
double zProd () const
 
double tProd () const
 
double tau () const
 
int idAbs () const
 Member functions for output; derived int and bool quantities.
 
int statusAbs () const
 
bool isFinal () const
 
int intPol () const
 Find out if polarization is (close to) an integer.
 
bool isRescatteredIncoming () const
 
double m2 () const
 Member functions for output; derived double quantities.
 
double mCalc () const
 
double m2Calc () const
 
double eCalc () const
 
double pT () const
 
double pT2 () const
 
double mT () const
 
double mT2 () const
 
double pAbs () const
 
double pAbs2 () const
 
double eT () const
 
double eT2 () const
 
double theta () const
 
double phi () const
 
double thetaXZ () const
 
double pPos () const
 
double pNeg () const
 
double y () const
 Functions for rapidity and pseudorapidity.
 
double eta () const
 
double y (double mCut) const
 Rapidity with minimal transverse mass, and after rotation/boost.
 
double y (double mCut, RotBstMatrix &M) const
 
Vec4 vDec () const
 
double xDec () const
 
double yDec () const
 
double zDec () const
 
double tDec () const
 
int iTopCopy () const
 Trace the first and last copy of one and the same particle.
 
int iBotCopy () const
 
int iTopCopyId (bool simplify=false) const
 
int iBotCopyId (bool simplify=false) const
 
vector< int > motherList () const
 Find complete list of mothers. More...
 
vector< int > daughterList () const
 Find complete list of daughters. More...
 
vector< int > daughterListRecursive () const
 
vector< int > sisterList (bool traceTopBot=false) const
 
bool isAncestor (int iAncestor) const
 
int statusHepMC () const
 Convert internal Pythia status codes to the HepMC status conventions. More...
 
bool isFinalPartonLevel () const
 Check if particle belonged to the final state at the Parton Level.
 
bool undoDecay ()
 
int colHV () const
 Get and set Hidden Valley colours, referring back to the event.
 
int acolHV () const
 
void colHV (int colHVin)
 
void acolHV (int acolHVin)
 
void colsHV (int colHVin, int acolHVin)
 
string name () const
 Further output, based on a pointer to a ParticleDataEntry object.
 
string nameWithStatus (int maxLen=20) const
 Particle name, with status but imposed maximum length -> may truncate. More...
 
int spinType () const
 
int chargeType () const
 
double charge () const
 
bool isCharged () const
 
bool isNeutral () const
 
int colType () const
 
double m0 () const
 
double mWidth () const
 
double mMin () const
 
double mMax () const
 
double mSel () const
 
double constituentMass () const
 
double tau0 () const
 
bool mayDecay () const
 
bool canDecay () const
 
bool doExternalDecay () const
 
bool isResonance () const
 
bool isVisible () const
 
bool isLepton () const
 
bool isQuark () const
 
bool isGluon () const
 
bool isDiquark () const
 
bool isParton () const
 
bool isHadron () const
 
bool isExotic () const
 
ParticleDataEntryparticleDataEntry () const
 
void rescale3 (double fac)
 Member functions that perform operations.
 
void rescale4 (double fac)
 
void rescale5 (double fac)
 
void rot (double thetaIn, double phiIn)
 
void bst (double betaX, double betaY, double betaZ)
 
void bst (double betaX, double betaY, double betaZ, double gamma)
 
void bst (const Vec4 &pBst)
 
void bst (const Vec4 &pBst, double mBst)
 
void bstback (const Vec4 &pBst)
 
void bstback (const Vec4 &pBst, double mBst)
 
void rotbst (const RotBstMatrix &M, bool boostVertex=true)
 
void offsetHistory (int minMother, int addMother, int minDaughter, int addDaughter)
 Add offsets to mother and daughter pointers (must be non-negative).
 
void offsetCol (int addCol)
 Add offsets to colour and anticolour (must be positive).
 

Public Attributes

int direction
 Flag for whether particle is incoming (-1) or outgoing (1).
 
vector< vector< complex > > rho
 Helicity density matrix.
 
vector< vector< complex > > D
 Decay matrix.
 

Additional Inherited Members

- Protected Attributes inherited from Particle
int idSave
 Properties of the current particle.
 
int statusSave
 
int mother1Save
 
int mother2Save
 
int daughter1Save
 
int daughter2Save
 
int colSave
 
int acolSave
 
Vec4 pSave
 
double mSave
 
double scaleSave
 
double polSave
 
bool hasVertexSave
 
Vec4 vProdSave
 
double tauSave
 
ParticleDataEntryPtr pdePtr
 
EventevtPtr
 ! More...
 
- Static Protected Attributes inherited from Particle
static const double TINY = 1e-20
 Constants: could only be changed in the code itself. More...
 

Detailed Description

Helicity particle class containing helicity information, derived from particle base class.

Member Function Documentation

void pol ( double  hIn)

Set the helicity state.

Helicity states are indexed as -1, 1, 0.

Wave4 wave ( int  h)

Methods.

Weyl helicity wave functions for spin 1/2 fermions and spin 1 boson.

This is the basis as given by the HELAS collaboration on page 122 of "HELas: HELicity Amplitude Subroutines for Feynman Diagram Evaluations" by H. Murayama, I. Watanabe, K. Hagiwara. The spinors become ill-defined for p -> -pz and the polarization vectors become ill-defined when pT -> 0. For these special cases limits are used. Return wave vector for given helicity.

Create wave vector to return.

Fermion (spin 1/2) spinor.

Calculate helicity independent normalization.

Calculate eigenspinor basis.

Helicity -1

Helicity +1

Calculate helicity dependent normalization.

Create particle spinor.

Create anti-particle spinor.

Boson (spin 1) polarization vector.

Create helicity +1 or -1 polarization vector.

Create helicity 0 polarization vector (ensure boson massive).

Unknown wave function.

Done.


The documentation for this class was generated from the following files: