PYTHIA
8.312
|
#include <VinciaFSR.h>
Public Member Functions | |
BrancherEmitRF (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 BrancherEmitRF. 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. More... | |
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 *rndmPtr, 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... | |
bool | genInvariants (vector< double > &invariants, Rndm *rndmPtr, int verboseIn, Logger *loggerPtr) override |
double | pAccept (const double, Logger *loggerPtr, int verboseIn) override |
Compute antPhys/antTrial, given antPhys. 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 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. | |
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... | |
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 {} |
BrancherEmitRF 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 complementary invariant(s) for saved trial scale. Return false if no physical kinematics possible.
Initialise and check we have a generated q2.
Veto if the point is outside the available phase space.
Reimplemented from Brancher.
|
overridevirtual |
Generate a new Q2 scale.
Save headroom and enhancement factors.
Sanity checks.
Set flag that this call produces a saved trial.
Implements Brancher.
|
overridevirtual |
Generic method, assumes setter methods called earlier.
Initialize.
Check everything set.
Generate new colour tag.
New tag can't be same colour as neighbour.
Now populate particle vector.
Set mass and colours (we have repurposed mPost for antenna function mass scales). This is new emission.
Skip the resonance.
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 BrancherEmitRF.
BrancherEmitRF 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.
Is colour flow from R to F, or from F to R?
Check if R and F swapped (explicit way to force reverse colour flow e.g., for second antenna in gluino -> gluon neutralino.)
Extract the momenta of the (set of) recoiler(s).
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 the masses.
Calculate q2max.
TODO: swapped should be redundant since save posRes, posFinal. R = Q.
F = Q.
F = g.
Some other final state - don't know what to do with this yet!
Some other resonance. Don't know what to do with this yet!
Set up and initialise trial generator.
|
overridevirtual |
Compute antPhys/antTrial, given antPhys.
Compute antPhys/antTrial, given antPhys. Note, antPhys should be normalised to include charge and coupling factors.
Reimplemented from Brancher.
|
overridevirtual |
Set post-branching IDs and masses. Base class is for gluon emission.
Insert gluon in second position.
Reimplemented from Brancher.
|
overridevirtual |