PYTHIA
8.312
|
#include <VinciaFSR.h>
Public Member Functions | |
BrancherSplitRF (int iSysIn, Event &event, bool sectorShowerIn, vector< int > allIn, unsigned int posResIn, unsigned int posFIn, double q2cut, ZetaGeneratorSet *zetaGenSet) | |
Constructor. More... | |
void | initBrancher (Event &event, vector< int > allIn, unsigned int posResIn, unsigned int posFIn, double q2cut, ZetaGeneratorSet *zetaGenSet) |
Method to initialise data members specific to BrancherSplitRF. More... | |
void | initRF (Event &event, vector< int > allIn, unsigned int posResIn, unsigned int posFIn, double q2cut, ZetaGeneratorSet *zetaGenSet) override |
RF branchers have a different initBrancher structure. | |
vector< double > | setmPostVec () override |
Setter methods. | |
void | setidPost () override |
Set post-branching IDs and masses. Base class is for gluon emission. More... | |
void | setStatPost () override |
bool | getNewParticles (Event &event, vector< Vec4 > momIn, vector< int > hIn, vector< Particle > &pNew, Rndm *, VinciaColour *) override |
Generic method, assumes setter methods called earlier. More... | |
double | genQ2 (int evTypeIn, double q2MaxNow, Rndm *rndmPtr, Logger *loggerPtr, const EvolutionWindow *evWindowPtrIn, double colFac, vector< double > headroomIn, vector< double > enhanceFacIn, int verboseIn) override |
Generate a new Q2 scale. More... | |
Public Member Functions inherited from BrancherRF | |
BrancherRF (int iSysIn, Event &event, bool sectorShowerIn, vector< int > allIn) | |
Base class constructor = inherited from Brancher. | |
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 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 void | list (string header="none", bool withLegend=true) const |
Simple print utility, showing the contents of the Brancher. More... | |
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 Attributes | |
int | idFlavSav {} |
Members. | |
double | mFlavSav {} |
Protected Attributes inherited from BrancherRF | |
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 |
Protected Member Functions inherited from BrancherRF | |
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... | |
BrancherSplitRF class for storing information on antennae between a coloured resonance and final state parton, and generating a new emission.
|
inline |
Constructor.
Initialise derived-class members and set up trial generator.
|
overridevirtual |
Generate a new Q2 scale.
Total splitting weight summed over flavours
Sanity check.
Select flavour.
Debugging.
Implements Brancher.
|
overridevirtual |
Generic method, assumes setter methods called earlier.
Initialize.
Now populate particle vector.
Set mass and colours, (we have repurposed mPost for antenna function mass scales). This is new emission.
Set other pre-determined particle properties.
Implements Brancher.
void initBrancher | ( | Event & | event, |
vector< int > | allIn, | ||
unsigned int | posResIn, | ||
unsigned int | posFIn, | ||
double | q2cut, | ||
ZetaGeneratorSet * | zetaGenSet | ||
) |
Method to initialise data members specific to BrancherSplitRF.
BrancherSplitRF class for storing information on antennae between a coloured resonance and final state parton, and generating a new emission.
Get Pythia indices of res and final.
Extract the momenta of the rest.
This is not necesssarily p(res). In the case where one particle always recieves the recoil, e.g. W in t->bWX it is p_t - p_X,
Calculate Q2max.
Set up and initialise trial generator.
|
overridevirtual |
Set post-branching IDs and masses. Base class is for gluon emission.
Modify the splitting gluon to antiquark, insert quark in second position.
Reimplemented from Brancher.