PYTHIA
8.312
|
BrancherRF base class for resonance-final antennae. More...
#include <VinciaFSR.h>
Public Member Functions | |
BrancherRF (int iSysIn, Event &event, bool sectorShowerIn, vector< int > allIn) | |
Base class constructor = inherited from Brancher. | |
virtual void | initRF (Event &event, vector< int > allIn, unsigned int posResIn, unsigned int posFIn, double q2cut, ZetaGeneratorSet *zetaGenSet)=0 |
RF branchers have a different initBrancher structure. | |
void | resetRF (int iSysIn, Event &event, vector< int > allIn, unsigned int posResIn, unsigned int posFIn, double q2cut, ZetaGeneratorSet *zetaGenSet) |
Reset the brancher. | |
int | iNew () |
Setter methods that are common for all derived RF classes. More... | |
void | setMaps (int sizeOld) |
Method to make mothers2daughters and daughters2mothers pairs. More... | |
int | posR () const |
Return position of resonance and colour-connected final-state parton. | |
int | posF () const |
double | getQ2Max (int evType) |
Return maximum Q2. | |
Public Member Functions inherited from Brancher | |
Brancher (int iSysIn, Event &event, bool sectorShowerIn, vector< int > iIn) | |
Main base class constructor. | |
Brancher (int iSysIn, Event &event, bool sectorShowerIn, int iIn0, int iIn1, int iIn2=0) | |
Wrapper for 2- and 3-parton parents. | |
virtual | ~Brancher () |
Base class must have a virtual destructor. | |
void | reset (int iSysIn, Event &event, vector< int > iIn) |
Reset (common functionality implemented in base class). More... | |
void | reset (int iSysIn, Event &event, int i0In, int i1In, int i2In=0) |
Wrapper for simple 2- (or 3-) parton antennae. | |
int | i0 () const |
Methods to get (explicit for up to 3 parents, otherwise just use iVec). | |
int | i1 () const |
int | i2 () const |
int | iVec (unsigned int i) const |
vector< int > | iVec () |
int | id0 () const |
int | id1 () const |
int | id2 () const |
vector< int > | idVec () const |
int | colType0 () const |
int | colType1 () const |
int | colType2 () const |
vector< int > | colTypeVec () const |
int | col0 () const |
int | col1 () const |
int | col2 () const |
vector< int > | colVec () const |
int | acol0 () const |
int | acol1 () const |
int | acol2 () const |
vector< int > | acolVec () const |
int | h0 () const |
int | h1 () const |
int | h2 () const |
vector< int > | hVec () const |
double | m0 () const |
double | m1 () const |
double | m2 () const |
vector< double > | mVec () const |
vector< double > | getmPostVec () |
int | colTag () |
int | system () const |
Methods to return saved/derived quantities. | |
double | mAnt () const |
double | m2Ant () const |
double | sAnt () const |
double | kallenFac () const |
double | enhanceFac () const |
double | q2Trial () const |
enum AntFunType | antFunTypePhys () const |
virtual double | genQ2 (int evTypeIn, double q2MaxNow, Rndm *rndmPtr, Logger *loggerPtr, const EvolutionWindow *evWindowPtrIn, double colFac, vector< double > headroomIn, vector< double > enhanceFacIn, int verboseIn)=0 |
Generate a new Q2 scale. | |
virtual bool | genInvariants (vector< double > &invariants, Rndm *, int, Logger *) |
virtual double | pAccept (const double, Logger *, int=0) |
virtual double | getpTscale () |
Compute pT scale of trial branching. | |
virtual double | getXj () |
Return Xj. | |
virtual int | idNew () const |
virtual double | mNew () const |
virtual bool | getNewParticles (Event &event, vector< Vec4 > momIn, vector< int > hIn, vector< Particle > &pNew, Rndm *rndmPtr, VinciaColour *colourPtr)=0 |
Return new particles, must be implemented by derived class. | |
virtual void | list (string header="none", bool withLegend=true) const |
Simple print utility, showing the contents of the Brancher. More... | |
virtual void | setidPost () |
Set post-branching IDs and masses. Base class is for gluon emission. | |
virtual vector< double > | setmPostVec () |
virtual void | setStatPost () |
virtual int | getSector () |
Return sector label. | |
enum BranchType | getBranchType () |
Return branch type. | |
bool | isSwapped () |
Check if swapped. | |
vector< double > | getInvariants () |
Return the saved invariants. | |
void | resetEnhanceFac (const double enhanceIn) |
This method allows to reset enhanceFac if we do an accept/reject. | |
bool | hasTrial () const |
void | needsNewTrial () |
Method to mark new trial needed without erasing current one. | |
void | eraseTrial () |
Method to mark new trial needed and erase current one. | |
Protected Member Functions | |
double | getsAK (double mA, double mK, double mAK) |
Protected helper methods for internal class use. | |
double | calcQ2Max (double mA, double mAK, double mK) |
bool | vetoPhSpPoint (const vector< double > &invariants, int verboseIn) |
Veto point if outside available phase space. More... | |
Protected Attributes | |
unsigned int | posRes {} |
unsigned int | posFinal {} |
double | mRes {} |
Mass of resonance. | |
double | mFinal {} |
Mass of final state parton in antennae. | |
double | mRecoilers {} |
double | sAK {} |
double | q2MaxSav {} |
Max Q2 for this brancher, still an overestimate. | |
double | colFacSav {} |
bool | colFlowRtoF {} |
map< unsigned int, unsigned int > | posNewtoOld {} |
Protected Attributes inherited from Brancher | |
int | systemSav {} |
Data members for storing information about parent partons. | |
vector< int > | iSav |
vector< int > | idSav |
vector< int > | colTypeSav |
vector< int > | hSav |
vector< int > | colSav |
vector< int > | acolSav |
vector< int > | idPostSav |
vector< int > | statPostSav |
vector< double > | mSav |
vector< double > | mPostSav |
int | colTagSav {} |
int | evTypeSav {} |
const EvolutionWindow * | evWindowSav {} |
All alphaS information. | |
double | mAntSav {} |
Saved antenna mass parameters. | |
double | m2AntSav {} |
double | kallenFacSav {} |
double | sAntSav {} |
bool | hasTrialSav {false} |
Data members for storing information about generated trial branching. | |
double | headroomSav {1.} |
double | enhanceSav {1.} |
double | q2BegSav {} |
double | q2NewSav {} |
vector< double > | invariantsSav |
bool | swapped {false} |
If true, flip identities of A and B. | |
bool | sectorShower {} |
Parameters for the sector shower. | |
int | iSectorWinner {} |
Additional Inherited Members | |
Public Attributes inherited from Brancher | |
shared_ptr< TrialGenerator > | trialGenPtr = {} |
Object to perform trial generation. | |
map< int, pair< int, int > > | mothers2daughters |
Publicly accessible members for storing mother/daughter connections. | |
map< int, pair< int, int > > | daughters2mothers |
BrancherRF base class for resonance-final antennae.
|
virtual |
Setter methods that are common for all derived RF classes.
Return index of new particle (slightly arbitrary choice for splittings).
BrancherRF base class for storing information on antennae between a coloured resonance and final state parton.
Reimplemented from Brancher.
|
inlinevirtual |
Method returns pos of colour-connected daughter to resonance if there is one participating in decay, -1 otherwise.
Reimplemented from Brancher.
|
virtual |
Method to make mothers2daughters and daughters2mothers pairs.
For updating the children of existing parents. Save children of F (treat like 1->2 splitting).
Save recoilers and insert the new emission at position 1.
Reimplemented from Brancher.
|
protected |
Veto point if outside available phase space.
Make copies of masses (just for compactness of notation).
Common sense: saj, sjk > 0. Not an error for splitters - mass effects can make negative and push outside generated phase space.
On-shell X condition.
On-shell j,k conditions.
When |cosTheta| < 1.
This condition may be sufficient to remove above conditions. TODO use gramdet here
|
protected |
Store whether the colour flow is from R to F (e.g. t -> bW+) or F to R (e.g. tbar -> bbarW-).
|
protected |
Collective mass of rest of downstream decay products of resonance these will just take recoil.
|
protected |
Save reference to position in vectors of resonance and colour connected parton.