HepMC3 event record library
Scales Struct Reference

Detailed Description

Collect different scales relevant for an event.

Definition at line 1434 of file LHEF.h.

#include <LHEF.h>

+ Inheritance diagram for Scales:
+ Collaboration diagram for Scales:

Public Types

typedef XMLTag::AttributeMap AttributeMap
 

Public Member Functions

 Scales (double defscale=-1.0, int npart=0)
 
 Scales (const XMLTag &tag, double defscale=-1.0, int npart=0)
 
bool hasInfo () const
 
void print (std::ostream &file) const
 
double getScale (std::string st, int pdgem, int emr, int rec) const
 
bool getattr (const std::string &n, double &v, bool erase=true)
 
bool getattr (const std::string &n, bool &v, bool erase=true)
 
bool getattr (const std::string &n, long &v, bool erase=true)
 
bool getattr (const std::string &n, int &v, bool erase=true)
 
bool getattr (const std::string &n, std::string &v, bool erase=true)
 
void printattrs (std::ostream &file) const
 
void closetag (std::ostream &file, const std::string &tag) const
 

Static Public Member Functions

static std::string yes ()
 

Data Fields

double muf
 
double mur
 
double mups
 
double SCALUP
 
std::vector< Scalescales
 
XMLTag::AttributeMap attributes
 
std::string contents
 

Member Typedef Documentation

◆ AttributeMap

Convenient typedef.

Definition at line 367 of file LHEF.h.

Constructor & Destructor Documentation

◆ Scales() [1/2]

Scales ( double defscale = -1.0,
int npart = 0 )
inline

Empty constructor.

Definition at line 1439 of file LHEF.h.

References muf, mups, mur, and SCALUP.

◆ Scales() [2/2]

Scales ( const XMLTag & tag,
double defscale = -1.0,
int npart = 0 )
inline

Construct from an XML-tag

Definition at line 1447 of file LHEF.h.

References TagBase::contents, TagBase::getattr(), muf, mups, mur, scales, SCALUP, TagBase::TagBase(), and XMLTag::tags.

Member Function Documentation

◆ closetag()

void closetag ( std::ostream & file,
const std::string & tag ) const
inlineinherited

Print out end of tag marker. Print contents if not empty else print simple close tag.

Definition at line 463 of file LHEF.h.

References contents.

◆ getattr() [1/5]

bool getattr ( const std::string & n,
bool & v,
bool erase = true )
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.

Returns
false if no attribute was found.

Definition at line 400 of file LHEF.h.

References attributes.

◆ getattr() [2/5]

bool getattr ( const std::string & n,
double & v,
bool erase = true )
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.

Returns
false if no attribute was found.

Definition at line 386 of file LHEF.h.

References attributes.

◆ getattr() [3/5]

bool getattr ( const std::string & n,
int & v,
bool erase = true )
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.

Returns
false if no attribute was found.

Definition at line 428 of file LHEF.h.

References attributes.

◆ getattr() [4/5]

bool getattr ( const std::string & n,
long & v,
bool erase = true )
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.

Returns
false if no attribute was found.

Definition at line 414 of file LHEF.h.

References attributes.

◆ getattr() [5/5]

bool getattr ( const std::string & n,
std::string & v,
bool erase = true )
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.

Returns
false if no attribute was found.

Definition at line 442 of file LHEF.h.

References attributes.

◆ getScale()

double getScale ( std::string st,
int pdgem,
int emr,
int rec ) const
inline

Return the scale of type st for a given emission of particle type pdgem from the emitter with number emr and a recoiler rec. (Note that the indices for emr and rec starts at 1 and 0 is interpreted as any particle.) First it will check for Scale object with an exact match. If not found, it will search for an exact match for the emitter and recoiler with an undefined emitted particle. If not found, it will look for a match for only emitter and emitted, of if not found, a match for only the emitter. Finally a general Scale object will be used, or if nothing matches, the mups will be returned.

Definition at line 1507 of file LHEF.h.

References getScale(), mups, and scales.

◆ hasInfo()

bool hasInfo ( ) const
inline

Check if this object contains useful information besides SCALUP.

Definition at line 1470 of file LHEF.h.

References muf, mups, mur, scales, and SCALUP.

◆ print()

void print ( std::ostream & file) const
inline

Print out the corresponding XML-tag.

Definition at line 1478 of file LHEF.h.

References TagBase::closetag(), TagBase::contents, hasInfo(), muf, mups, mur, LHEF::oattr(), TagBase::printattrs(), scales, and SCALUP.

◆ printattrs()

void printattrs ( std::ostream & file) const
inlineinherited

print out ' name="value"' for all unparsed attributes.

Definition at line 453 of file LHEF.h.

References attributes, and LHEF::oattr().

◆ yes()

static std::string yes ( )
inlinestaticinherited

Static string token for truth values.

Definition at line 485 of file LHEF.h.

Field Documentation

◆ attributes

XMLTag::AttributeMap attributes
inherited

The attributes of this tag;

Definition at line 475 of file LHEF.h.

◆ contents

std::string contents
mutableinherited

The contents of this tag.

Definition at line 480 of file LHEF.h.

◆ muf

double muf

The factorization scale used for this event.

Definition at line 1530 of file LHEF.h.

◆ mups

double mups

The starting scale for the parton shower as suggested by the matrix element generator.

Definition at line 1541 of file LHEF.h.

◆ mur

double mur

The renormalization scale used for this event.

Definition at line 1535 of file LHEF.h.

◆ scales

std::vector<Scale> scales

The list of special scales.

Definition at line 1551 of file LHEF.h.

◆ SCALUP

double SCALUP

The default scale in this event.

Definition at line 1546 of file LHEF.h.


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