HepMC3 event record library
|
The HEPEUP class is a simple container corresponding to the Les Houches accord (hep-ph/0109068) common block with the same name. The members are named in the same way as in the common block. However, fortran arrays are represented by vectors, except for the arrays of length two which are represented by pair objects.
#include <LHEF.h>
Public Types | |
typedef XMLTag::AttributeMap | AttributeMap |
Public Member Functions | |
HEPEUP (const XMLTag &tagin, HEPRUP &heprupin) | |
void | print (std::ostream &file) const |
void | reset () |
void | clear () |
void | resize (int nup) |
double | totalWeight (int i=0) const |
double | totalWeight (std::string name) const |
double | weight (int i=0) const |
double | weight (std::string name) const |
void | setWeight (int i, double w) |
bool | setWeight (std::string name, double w) |
void | resize () |
bool | setWeightInfo (unsigned int i) |
bool | setSubEvent (unsigned int i) |
bool | getattr (std::string n, double &v, bool erase=true) |
bool | getattr (std::string n, bool &v, bool erase=true) |
bool | getattr (std::string n, long &v, bool erase=true) |
bool | getattr (std::string n, int &v, bool erase=true) |
bool | getattr (std::string n, std::string &v, bool erase=true) |
void | printattrs (std::ostream &file) const |
void | closetag (std::ostream &file, std::string tag) const |
Standard constructors and destructors. | |
HEPEUP () | |
HEPEUP (const HEPEUP &x) | |
HEPEUP & | setEvent (const HEPEUP &x) |
HEPEUP & | operator= (const HEPEUP &x) |
~HEPEUP () | |
Static Public Member Functions | |
static std::string | yes () |
Data Fields | |
int | NUP |
int | IDPRUP |
double | XWGTUP |
std::pair< double, double > | XPDWUP |
double | SCALUP |
double | AQEDUP |
double | AQCDUP |
std::vector< long > | IDUP |
std::vector< int > | ISTUP |
std::vector< std::pair< int, int > > | MOTHUP |
std::vector< std::pair< int, int > > | ICOLUP |
std::vector< std::vector< double > > | PUP |
std::vector< double > | VTIMUP |
std::vector< double > | SPINUP |
HEPRUP * | heprup |
const WeightInfo * | currentWeight |
std::vector< Weight > | namedweights |
std::vector< std::pair< double, const WeightInfo * > > | weights |
std::vector< Clus > | clustering |
PDFInfo | pdfinfo |
std::pair< int, int > | PDFGUPsave |
std::pair< int, int > | PDFSUPsave |
Scales | scales |
int | ntries |
bool | isGroup |
EventGroup | subevents |
std::string | junk |
XMLTag::AttributeMap | attributes |
std::string | contents |
|
inherited |
|
inline |
Constructor from an event or eventgroup tag.
Definition at line 2199 of file LHEF.h.
References HEPEUP::AQCDUP, HEPEUP::AQEDUP, HEPEUP::clustering, XMLTag::contents, TagBase::contents, TagBase::getattr(), HEPEUP::HEPEUP(), HEPEUP::heprup, HEPEUP::ICOLUP, HEPEUP::IDPRUP, HEPEUP::IDUP, HEPEUP::isGroup, HEPEUP::ISTUP, HEPEUP::junk, HEPEUP::MOTHUP, XMLTag::name, HEPEUP::namedweights, EventGroup::ncounter, HEPRUP::NPRUP, EventGroup::nreal, HEPEUP::ntries, HEPEUP::NUP, HEPRUP::nWeights(), HEPEUP::pdfinfo, HEPEUP::PUP, HEPEUP::resize(), HEPEUP::scales, HEPEUP::SCALUP, HEPEUP::SPINUP, HEPEUP::subevents, XMLTag::tags, HEPEUP::VTIMUP, HEPRUP::weightIndex(), HEPRUP::weightinfo, HEPEUP::weights, and HEPEUP::XWGTUP.
|
inline |
Clear the HEPEUP object.
Definition at line 2414 of file LHEF.h.
References EventGroup::clear(), HEPEUP::reset(), and HEPEUP::subevents.
|
inlineinherited |
Print out end of tag marker. Print contents if not empty else print simple close tag.
Definition at line 445 of file LHEF.h.
References TagBase::contents.
|
inlineinherited |
Find an attribute named n and set the bool variable v to true if the corresponding value is "yes". Remove the correspondig attribute from the list if found and erase is true.
Definition at line 382 of file LHEF.h.
References TagBase::attributes.
|
inlineinherited |
Find an attribute named n and set the double variable v to the corresponding value. Remove the correspondig attribute from the list if found and erase is true.
Definition at line 368 of file LHEF.h.
References TagBase::attributes.
|
inlineinherited |
Find an attribute named n and set the long variable v to the corresponding value. Remove the correspondig attribute from the list if found and erase is true.
Definition at line 410 of file LHEF.h.
References TagBase::attributes.
|
inlineinherited |
Find an attribute named n and set the long variable v to the corresponding value. Remove the correspondig attribute from the list if found and erase is true.
Definition at line 396 of file LHEF.h.
References TagBase::attributes.
|
inlineinherited |
Find an attribute named n and set the string variable v to the corresponding value. Remove the correspondig attribute from the list if found and erase is true.
Definition at line 424 of file LHEF.h.
References TagBase::attributes.
Assignment operator.
Definition at line 2175 of file LHEF.h.
References HEPEUP::clear(), HEPEUP::isGroup, HEPEUP::setEvent(), and HEPEUP::subevents.
|
inline |
Print out the event (group) as an XML tag.
Definition at line 2320 of file LHEF.h.
References HEPEUP::AQCDUP, HEPEUP::AQEDUP, HEPEUP::clustering, HEPRUP::dprec, LHEF::hashline(), HEPEUP::heprup, HEPEUP::ICOLUP, HEPEUP::IDPRUP, HEPEUP::IDUP, HEPEUP::isGroup, HEPEUP::ISTUP, HEPEUP::junk, HEPEUP::MOTHUP, HEPEUP::namedweights, EventGroup::ncounter, EventGroup::nreal, HEPEUP::ntries, HEPEUP::NUP, LHEF::oattr(), HEPEUP::pdfinfo, Scales::print(), PDFInfo::print(), TagBase::printattrs(), HEPEUP::PUP, HEPEUP::scales, HEPEUP::SCALUP, HEPEUP::SPINUP, HEPEUP::subevents, HEPEUP::VTIMUP, HEPEUP::weight(), HEPEUP::weights, and HEPEUP::XWGTUP.
|
inlineinherited |
print out ' name="value"' for all unparsed attributes.
Definition at line 435 of file LHEF.h.
References TagBase::attributes, and LHEF::oattr().
|
inline |
Reset the HEPEUP object (does not touch the sub events).
Definition at line 2404 of file LHEF.h.
References HEPEUP::clustering, HEPEUP::NUP, HEPEUP::setWeightInfo(), and HEPEUP::weights.
|
inline |
Assuming the NUP variable, corresponding to the number of particles in the current event, is correctly set, resize the relevant vectors accordingly.
Definition at line 2485 of file LHEF.h.
References HEPEUP::ICOLUP, HEPEUP::IDUP, HEPEUP::ISTUP, HEPEUP::MOTHUP, HEPEUP::NUP, HEPEUP::PUP, HEPEUP::SPINUP, and HEPEUP::VTIMUP.
|
inline |
Set the NUP variable, corresponding to the number of particles in the current event, to nup, and resize all relevant vectors accordingly.
Definition at line 2424 of file LHEF.h.
References HEPEUP::NUP, and HEPEUP::resize().
Copy information from the given HEPEUP. Sub event information is left untouched.
Definition at line 2143 of file LHEF.h.
References HEPEUP::AQCDUP, HEPEUP::AQEDUP, HEPEUP::clustering, HEPEUP::currentWeight, HEPEUP::heprup, HEPEUP::ICOLUP, HEPEUP::IDPRUP, HEPEUP::IDUP, HEPEUP::ISTUP, HEPEUP::junk, HEPEUP::MOTHUP, HEPEUP::namedweights, HEPEUP::ntries, HEPEUP::NUP, HEPEUP::PDFGUPsave, HEPEUP::pdfinfo, HEPEUP::PDFSUPsave, HEPEUP::PUP, HEPEUP::scales, HEPEUP::SCALUP, HEPEUP::SPINUP, HEPEUP::VTIMUP, HEPEUP::weights, HEPEUP::XPDWUP, and HEPEUP::XWGTUP.
|
inline |
Setup the current event to use sub event i. If zero, no sub event will be chsen.
Definition at line 2530 of file LHEF.h.
References HEPEUP::currentWeight, HEPEUP::reset(), HEPEUP::setEvent(), HEPEUP::subevents, and HEPEUP::weights.
|
inline |
Set the weight with the given index.
Definition at line 2466 of file LHEF.h.
References HEPEUP::weights.
|
inline |
Set the weight with the given name.
Definition at line 2472 of file LHEF.h.
References HEPEUP::heprup, HEPEUP::setWeight(), HEPRUP::weightIndex(), and HEPEUP::weights.
|
inline |
Setup the current event to use weight i. If zero, the default weight will be used.
Definition at line 2499 of file LHEF.h.
References HEPEUP::currentWeight, HEPEUP::heprup, WeightInfo::muf, Scales::muf, WeightInfo::mur, Scales::mur, WeightInfo::pdf, WeightInfo::pdf2, HEPRUP::PDFGUP, HEPEUP::PDFGUPsave, HEPRUP::PDFSUP, HEPEUP::PDFSUPsave, HEPEUP::scales, HEPEUP::weights, and HEPEUP::XWGTUP.
|
inline |
Return the total weight for this event (including all sub evenets) for the given index.
Definition at line 2433 of file LHEF.h.
References HEPEUP::subevents, and HEPEUP::weight().
|
inline |
Return the total weight for this event (including all sub evenets) for the given weight name.
Definition at line 2445 of file LHEF.h.
References HEPEUP::heprup, HEPEUP::totalWeight(), and HEPRUP::weightIndex().
|
inline |
Return the weight for the given index.
Definition at line 2452 of file LHEF.h.
References HEPEUP::weights.
|
inline |
Return the weight for the given weight name.
Definition at line 2459 of file LHEF.h.
References HEPEUP::heprup, HEPEUP::weight(), and HEPRUP::weightIndex().
|
inlinestaticinherited |
double AQCDUP |
double AQEDUP |
|
inherited |
std::vector<Clus> clustering |
|
mutableinherited |
const WeightInfo* currentWeight |
HEPRUP* heprup |
A pointer to the current HEPRUP object.
std::vector< std::pair<int,int> > ICOLUP |
int IDPRUP |
std::vector<long> IDUP |
std::vector<int> ISTUP |
std::string junk |
std::vector< std::pair<int,int> > MOTHUP |
std::vector<Weight> namedweights |
int ntries |
int NUP |
std::pair<int,int> PDFGUPsave |
std::pair<int,int> PDFSUPsave |
std::vector< std::vector<double> > PUP |
double SCALUP |
std::vector<double> SPINUP |
EventGroup subevents |
std::vector<double> VTIMUP |
std::vector< std::pair<double, const WeightInfo *> > weights |
The weights for this event and their corresponding WeightInfo object.
std::pair<double,double> XPDWUP |
The PDF weights for the two incoming partons. Note that this variable is not present in the current LesHouches accord (hep-ph/0109068), hopefully it will be present in a future accord.