PYTHIA
8.312
|
#include <HelicityBasics.h>
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) | |
Particle & | operator= (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 |
ParticleDataEntry & | particleDataEntry () 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 |
Event * | evtPtr |
! More... | |
Static Protected Attributes inherited from Particle | |
static const double | TINY = 1e-20 |
Constants: could only be changed in the code itself. More... | |
Helicity particle class containing helicity information, derived from particle base class.
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.