PYTHIA  8.312
Public Member Functions | List of all members
LHAupAlpgen Class Reference

#include <GeneratorInput.h>

Inheritance diagram for LHAupAlpgen:
LHAup

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
InfoinfoPtr
 Pointer to various information on the generation.
 
LoggerloggerPtr
 
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< LHAParticleparticlesSave
 
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...
 

Detailed Description

LHAupAlpgen: LHAup derived class for reading in ALPGEN format event files.

Constructor & Destructor Documentation

LHAupAlpgen ( const char *  baseFNin)

Constructor and destructor.


Constructor. Opens event file.

Open '.unw' events file (with possible gzip support)

Member Function Documentation

void printParticles ( )
inline

Print list of particles; mainly intended for debugging.


Print list of particles; mainly intended for debugging

bool setEvent ( int  )
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.

bool setInit ( )
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.


The documentation for this class was generated from the following file: