CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
lhef::Pythia8Hadronisation::LHAupLesHouches Class Reference
Inheritance diagram for lhef::Pythia8Hadronisation::LHAupLesHouches:

Public Member Functions

 LHAupLesHouches (Hadronisation *hadronisation)
 
void loadEvent (const boost::shared_ptr< LHEEvent > &event)
 
void loadRunInfo (const boost::shared_ptr< LHERunInfo > &runInfo)
 

Private Member Functions

bool setEvent (int idProcIn)
 
bool setInit ()
 

Private Attributes

boost::shared_ptr< LHEEventevent
 
Hadronisationhadronisation
 
boost::shared_ptr< LHERunInforunInfo
 

Detailed Description

Definition at line 53 of file Pythia8Hadronisation.cc.

Constructor & Destructor Documentation

lhef::Pythia8Hadronisation::LHAupLesHouches::LHAupLesHouches ( Hadronisation hadronisation)
inline

Definition at line 55 of file Pythia8Hadronisation.cc.

Member Function Documentation

void lhef::Pythia8Hadronisation::LHAupLesHouches::loadEvent ( const boost::shared_ptr< LHEEvent > &  event)
inline

Definition at line 61 of file Pythia8Hadronisation.cc.

References event().

62  { this->event = event; }
void lhef::Pythia8Hadronisation::LHAupLesHouches::loadRunInfo ( const boost::shared_ptr< LHERunInfo > &  runInfo)
inline

Definition at line 58 of file Pythia8Hadronisation.cc.

59  { this->runInfo = runInfo; }
bool lhef::Pythia8Hadronisation::LHAupLesHouches::setEvent ( int  idProcIn)
private

Definition at line 96 of file Pythia8Hadronisation.cc.

References lhef::HEPEUP::AQCDUP, lhef::HEPEUP::AQEDUP, event(), i, lhef::HEPEUP::ICOLUP, gen::PdfInfo::id, lhef::HEPEUP::IDPRUP, lhef::HEPEUP::IDUP, lhef::HEPEUP::ISTUP, lhef::HEPEUP::MOTHUP, lhef::HEPEUP::NUP, lhef::HEPEUP::PUP, gen::PdfInfo::scalePDF, lhef::HEPEUP::SCALUP, lhef::HEPEUP::SPINUP, lhef::HEPEUP::VTIMUP, gen::PdfInfo::x, gen::PdfInfo::xPDF, and lhef::HEPEUP::XWGTUP.

97 {
98  if (!event)
99  return false;
100  const HEPEUP &hepeup = *event->getHEPEUP();
101 
102  setProcess(hepeup.IDPRUP, hepeup.XWGTUP, hepeup.SCALUP,
103  hepeup.AQEDUP, hepeup.AQCDUP);
104 
105  for(int i = 0; i < hepeup.NUP; i++)
106  addParticle(hepeup.IDUP[i], hepeup.ISTUP[i],
107  hepeup.MOTHUP[i].first, hepeup.MOTHUP[i].second,
108  hepeup.ICOLUP[i].first, hepeup.ICOLUP[i].second,
109  hepeup.PUP[i][0], hepeup.PUP[i][1],
110  hepeup.PUP[i][2], hepeup.PUP[i][3],
111  hepeup.PUP[i][4], hepeup.VTIMUP[i],
112  hepeup.SPINUP[i]);
113 
114  const LHEEvent::PDF *pdf = event->getPDF();
115  if (pdf)
116  this->setPdf(pdf->id.first, pdf->id.second,
117  pdf->x.first, pdf->x.second,
118  pdf->scalePDF,
119  pdf->xPDF.first, pdf->xPDF.second, true);
120 
122 
123  event.reset();
124  return true;
125 }
int i
Definition: DBlmapReader.cc:9
sigc::signal< void > & onBeforeHadronisation()
Definition: Hadronisation.h:42
LHEEventProduct::PDF PDF
Definition: LHEEvent.h:39
bool lhef::Pythia8Hadronisation::LHAupLesHouches::setInit ( )
private

Definition at line 74 of file Pythia8Hadronisation.cc.

References lhef::HEPRUP::EBMUP, i, lhef::HEPRUP::IDBMUP, lhef::HEPRUP::IDWTUP, lhef::HEPRUP::LPRUP, lhef::HEPRUP::NPRUP, lhef::HEPRUP::PDFGUP, lhef::HEPRUP::PDFSUP, lhef::HEPRUP::XERRUP, lhef::HEPRUP::XMAXUP, and lhef::HEPRUP::XSECUP.

75 {
76  if (!runInfo)
77  return false;
78  const HEPRUP &heprup = *runInfo->getHEPRUP();
79 
80  setBeamA(heprup.IDBMUP.first, heprup.EBMUP.first,
81  heprup.PDFGUP.first, heprup.PDFSUP.first);
82  setBeamB(heprup.IDBMUP.second, heprup.EBMUP.second,
83  heprup.PDFGUP.second, heprup.PDFSUP.second);
84  setStrategy(heprup.IDWTUP);
85 
86  for(int i = 0; i < heprup.NPRUP; i++)
87  addProcess(heprup.LPRUP[i], heprup.XSECUP[i],
88  heprup.XERRUP[i], heprup.XMAXUP[i]);
89 
90  hadronisation->onInit().emit();
91 
92  runInfo.reset();
93  return true;
94 }
int i
Definition: DBlmapReader.cc:9
sigc::signal< void > & onInit()
Definition: Hadronisation.h:41

Member Data Documentation

boost::shared_ptr<LHEEvent> lhef::Pythia8Hadronisation::LHAupLesHouches::event
private

Definition at line 71 of file Pythia8Hadronisation.cc.

Hadronisation* lhef::Pythia8Hadronisation::LHAupLesHouches::hadronisation
private

Definition at line 69 of file Pythia8Hadronisation.cc.

boost::shared_ptr<LHERunInfo> lhef::Pythia8Hadronisation::LHAupLesHouches::runInfo
private

Definition at line 70 of file Pythia8Hadronisation.cc.