PYTHIA
8.312
|
#include <GeneratorInput.h>
Public Member Functions | |
LHAupAlpgen (const char *baseFNin) | |
Constructor and destructor. More... | |
bool | fileFound () |
Override fileFound routine from LHAup. | |
bool | setInit () |
Override setInit/setEvent routines from LHAup. More... | |
bool | setEvent (int) |
More... | |
void | printParticles () |
Print list of particles; mainly intended for debugging. More... | |
Public Member Functions inherited from LHAup | |
virtual | ~LHAup () |
Destructor. | |
void | setPtr (Info *infoPtrIn) |
Set pointers. | |
virtual void | newEventFile (const char *) |
Method to be used for LHAupLHEF derived class. | |
virtual bool | useExternal () |
int | idBeamA () const |
Give back info on beams. | |
int | idBeamB () const |
double | eBeamA () const |
double | eBeamB () const |
int | pdfGroupBeamA () const |
int | pdfGroupBeamB () const |
int | pdfSetBeamA () const |
int | pdfSetBeamB () const |
int | strategy () const |
Give back weight strategy. | |
int | sizeProc () const |
Give back info on processes. | |
int | idProcess (int proc) const |
double | xSec (int proc) const |
double | xErr (int proc) const |
double | xMax (int proc) const |
double | xSecSum () const |
double | xErrSum () const |
void | listInit () |
Print the initialization info; useful to check that setting it worked. More... | |
int | idProcess () const |
Give back process number, weight, scale, alpha_em, alpha_s. | |
double | weight () const |
double | scale () const |
double | alphaQED () const |
double | alphaQCD () const |
int | sizePart () const |
Give back info on separate particle. | |
int | id (int part) const |
int | status (int part) const |
int | mother1 (int part) const |
int | mother2 (int part) const |
int | col1 (int part) const |
int | col2 (int part) const |
double | px (int part) const |
double | py (int part) const |
double | pz (int part) const |
double | e (int part) const |
double | m (int part) const |
double | tau (int part) const |
double | spin (int part) const |
double | scale (int part) const |
int | id1 () const |
Give back info on flavour and x values of hard-process initiators. | |
int | id2 () const |
double | x1 () const |
double | x2 () const |
bool | pdfIsSet () const |
Optional: give back info on parton density values of event. | |
int | id1pdf () const |
int | id2pdf () const |
double | x1pdf () const |
double | x2pdf () const |
double | scalePDF () const |
double | pdf1 () const |
double | pdf2 () const |
bool | scaleShowersIsSet () const |
Optional: give back info on parton shower scales. | |
double | scaleShowers (int i) const |
void | listEvent () |
Print the info; useful to check that reading an event worked. More... | |
virtual bool | skipEvent (int nSkip) |
virtual bool | openLHEF (string fileNameIn) |
Four routines to write a Les Houches Event file in steps. More... | |
virtual bool | closeLHEF (bool updateInit=false) |
Write end of a Les Houches Event File and close it. More... | |
bool | initLHEF () |
Write initialization information to a Les Houches Event File. More... | |
bool | eventLHEF (bool verbose=true) |
string | getFileName () const |
Get access to the Les Houches Event file name. | |
Additional Inherited Members | |
Protected Member Functions inherited from LHAup | |
LHAup (int strategyIn=3) | |
Constructor. Sets default to be that events come with unit weight. | |
void | setBeamA (int idIn, double eIn, int pdfGroupIn=0, int pdfSetIn=0) |
Input beam info. | |
void | setBeamB (int idIn, double eIn, int pdfGroupIn=0, int pdfSetIn=0) |
void | setStrategy (int strategyIn) |
Input process weight strategy. | |
void | addProcess (int idProcIn, double xSecIn=1., double xErrIn=0., double xMaxIn=1.) |
Input process info. | |
void | setXSec (int iP, double xSecIn) |
Possibility to update some cross section info at end of run. | |
void | setXErr (int iP, double xErrIn) |
void | setXMax (int iP, double xMaxIn) |
void | setProcess (int idProcIn=0, double weightIn=1., double scaleIn=0., double alphaQEDIn=0.0073, double alphaQCDIn=0.12) |
Input info on the selected process. More... | |
void | addParticle (LHAParticle particleIn) |
Input particle info, one particle at the time. | |
void | addParticle (int idIn, int statusIn=0, int mother1In=0, int mother2In=0, int col1In=0, int col2In=0, double pxIn=0., double pyIn=0., double pzIn=0., double eIn=0., double mIn=0., double tauIn=0., double spinIn=9., double scaleIn=-1.) |
void | setIdX (int id1In, int id2In, double x1In, double x2In) |
Input info on flavour and x values of hard-process initiators. | |
void | setPdf (int id1pdfIn, int id2pdfIn, double x1pdfIn, double x2pdfIn, double scalePDFIn, double pdf1In, double pdf2In, bool pdfIsSetIn) |
Optionally input info on parton density values of event. | |
void | setScaleShowers (double scaleIn1, double scaleIn2=0.) |
Optionally input info on parton shower starting scale; two for DPS. | |
bool | setInitLHEF (istream &is, bool readHeaders=false) |
Three routines for LHEF files, but put here for flexibility. More... | |
bool | setNewEventLHEF (istream &is) |
bool | setOldEventLHEF () |
Make current event information read in by setNewEventLHEF. More... | |
istream * | openFile (const char *fn, ifstream &ifs) |
void | closeFile (istream *&is, ifstream &ifs) |
void | setInfoHeader (const string &key, const string &val) |
Protected Attributes inherited from LHAup | |
Info * | infoPtr |
Pointer to various information on the generation. | |
Logger * | loggerPtr |
int | nupSave |
Event properties from LHEF files, for repeated use. | |
int | idprupSave |
double | xwgtupSave |
double | scalupSave |
double | aqedupSave |
double | aqcdupSave |
double | xSecSumSave |
double | xErrSumSave |
vector< LHAParticle > | particlesSave |
bool | getPDFSave |
bool | getScale |
bool | getScaleShowers |
int | id1InSave |
int | id2InSave |
int | id1pdfInSave |
int | id2pdfInSave |
double | x1InSave |
double | x2InSave |
double | x1pdfInSave |
double | x2pdfInSave |
double | scalePDFInSave |
double | pdf1InSave |
double | pdf2InSave |
double | scaleShowersInSave [2] |
string | fileName |
File to which to write Les Houches Event File information. | |
fstream | osLHEF |
char | dateNow [12] |
char | timeNow [9] |
Static Protected Attributes inherited from LHAup | |
static const double | CONVERTMB2PB = 1e9 |
Allow conversion from mb to pb. More... | |
LHAupAlpgen: LHAup derived class for reading in ALPGEN format event files.
LHAupAlpgen | ( | const char * | baseFNin | ) |
Constructor and destructor.
Constructor. Opens event file.
Open '.unw' events file (with possible gzip support)
|
inline |
Print list of particles; mainly intended for debugging.
Print list of particles; mainly intended for debugging
|
inlinevirtual |
setEvent is a virtual method that must be finalised here. Read in an event from the 'unw' file and setup.
Read in the first line of the event
Read was bad
End of file reached
Set the process details (ignore alphaQED and alphaQCD parameters)
Incoming flavour and x information for later
Temporary storage for read in parton information
Leave tau and spin as default values
Store particles locally at first so that resonances can be added
Now read in partons
Get the next line
Incoming (flavour, colour, anticolour, pz)
Note that mothers will be set automatically by Pythia, and LHA status -1 is for an incoming parton
Adjust when zero pz/e
Outgoing (flavour, colour, anticolour, px, py, pz, mass)
Note that mothers 1 and 2 corresport to the incoming partons, as set above, and LHA status +1 is for outgoing final state
Add particle
Add resonances if required
Rescale momenta if required (must be done after full event reconstruction in addResonances)
Pass particles on to Pythia
Set incoming flavour/x information and done
Implements LHAup.
|
inlinevirtual |
Override setInit/setEvent routines from LHAup.
setInit is a virtual method that must be finalised here. Opens parameter file and parses it, sets up beams, strategy and processes.
Read in '_unw.par' file to get parameters
Try gzip file first then normal file afterwards
Read entire contents into string and close file
Make sure we reached EOF and not other error
Parse file and set LHEF header
Check that all required parameters are present
Beam IDs
Beam energies
PDF group and set (at the moment not set)
Strategy is for unweighted events and xmaxup not important
Get hard process code
Check for unsupported processes
Depending on the process code, get heavy flavour information: 6 = QQbar + jets 7 = QQbar + Q'Qbar' + jets 8 = QQbar + Higgs + jets 16 = QQbar + gamma + jets
For single top (process 13), get b mass to set incoming
Set the beams
Add the process
All okay
Implements LHAup.