Definition at line 18 of file VetoedShower.cxx.
◆ VetoedShower()
Pythia8::VetoedShower::VetoedShower |
( |
| ) |
|
|
inline |
Definition at line 22 of file VetoedShower.cxx.
24 std::cout<<
"************************************************************************************************"<<std::endl;
25 std::cout<<
"Pythia8::VetoedShower: *** WARNING: THIS USER HOOK IS NOT VALIDATED FOR QCD JET PRODUCTION!! ***"<<std::endl;
26 std::cout<<
"************************************************************************************************"<<std::endl;
◆ ~VetoedShower()
Pythia8::VetoedShower::~VetoedShower |
( |
| ) |
|
|
inline |
◆ canVetoFSREmission()
bool Pythia8::VetoedShower::canVetoFSREmission |
( |
| ) |
|
|
inline |
◆ canVetoISREmission()
bool Pythia8::VetoedShower::canVetoISREmission |
( |
| ) |
|
|
inline |
◆ canVetoMPIStep()
bool Pythia8::VetoedShower::canVetoMPIStep |
( |
| ) |
|
|
inline |
◆ doVetoFSREmission()
bool Pythia8::VetoedShower::doVetoFSREmission |
( |
int |
, |
|
|
const Event & |
e, |
|
|
int |
, |
|
|
bool |
|
|
) |
| |
|
inline |
This is similar to the ISR veto, with the exception that since the ordering is in a slightly different pT definition to Powheg the veto must always be checked, rather than stopping once an emission is allowed.
Definition at line 99 of file VetoedShower.cxx.
102 int i =
e.size() - 1;
105 if (
e[
i].isFinal() &&
e[
i].
status() == 51)
break;
111 throw std::runtime_error(
"Pythia8::VetoedShower::doVetoFSREmission: Could not find FSR emission");
116 int iMother =
e[
i].mother1();
117 int sysSize = partonSystemsPtr->sizeOut(0);
118 bool hardSys =
false;
120 for (
int j = 0; j < sysSize; ++j){
121 int iOut = partonSystemsPtr->getOut(0, j);
122 if (iOut == iMother) {
128 if (!hardSys)
return false;
◆ doVetoISREmission()
bool Pythia8::VetoedShower::doVetoISREmission |
( |
int |
, |
|
|
const Event & |
e, |
|
|
int |
|
|
) |
| |
|
inline |
This is called after the generation of each new ISR emission Can use it to test if the last generated emission is above the veto scale.
Since the ISR is ordered in pT (with the same definition relative to the beam as Powheg), once we find an emission below the veto scale we know that all subsequent emissions will also be below the scale. Therefore m_doneISR gets set to true at that point and nothing more needs doing
Definition at line 59 of file VetoedShower.cxx.
68 if(
e[
i].isFinal() &&
e[
i].
status() == 43)
break;
74 throw std::runtime_error(
"Pythia8::VetoedShower::doVetoISREmission: Could not find ISR emission");
79 int iMother =
e[
i].mother1();
81 throw std::runtime_error(
"Pythia8::VetoedShower::doVetoISREmission: Unexpected status code in ISR");
83 iMother =
e[iMother].daughter2();
84 if(iMother != partonSystemsPtr->getInA(0) &&
85 iMother != partonSystemsPtr->getInB(0))
return false;
◆ doVetoMPIStep()
bool Pythia8::VetoedShower::doVetoMPIStep |
( |
int |
, |
|
|
const Event & |
|
|
) |
| |
|
inline |
doVetoMPIStep is called immediately after the MPI generation In this case it nver actually vetoes the MPI, but since it is called before the ISR veto check this is a convenient place to find the veto scale from the LHEF event
Definition at line 38 of file VetoedShower.cxx.
◆ numberVetoMPIStep()
int Pythia8::VetoedShower::numberVetoMPIStep |
( |
| ) |
|
|
inline |
◆ m_doneISR
bool Pythia8::VetoedShower::m_doneISR |
|
private |
◆ m_pTVeto
double Pythia8::VetoedShower::m_pTVeto |
|
private |
The documentation for this class was generated from the following file: