CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

LHAupLesHouches Class Reference

#include <LHAupLesHouches.h>

List of all members.

Public Member Functions

 LHAupLesHouches ()
void loadEvent (lhef::LHEEvent *event)
void loadRunInfo (lhef::LHERunInfo *runInfo)

Private Member Functions

bool setEvent (int idProcIn)
bool setInit ()

Private Attributes

lhef::LHEEventevent
lhef::LHERunInforunInfo

Detailed Description

Definition at line 22 of file LHAupLesHouches.h.


Constructor & Destructor Documentation

LHAupLesHouches::LHAupLesHouches ( ) [inline]

Definition at line 24 of file LHAupLesHouches.h.

{;}

Member Function Documentation

void LHAupLesHouches::loadEvent ( lhef::LHEEvent event) [inline]

Definition at line 31 of file LHAupLesHouches.h.

References event.

        { this->event = event; }
void LHAupLesHouches::loadRunInfo ( lhef::LHERunInfo runInfo) [inline]

Definition at line 27 of file LHAupLesHouches.h.

References runInfo.

        { this->runInfo = runInfo; }
bool LHAupLesHouches::setEvent ( int  idProcIn) [private]

Definition at line 36 of file LHAupLesHouches.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.

{
        if (!event)
                return false;
        const lhef::HEPEUP &hepeup = *event->getHEPEUP();

        setProcess(hepeup.IDPRUP, hepeup.XWGTUP, hepeup.SCALUP,
                   hepeup.AQEDUP, hepeup.AQCDUP);

        for(int i = 0; i < hepeup.NUP; i++)
                addParticle(hepeup.IDUP[i], hepeup.ISTUP[i],
                            hepeup.MOTHUP[i].first, hepeup.MOTHUP[i].second,
                            hepeup.ICOLUP[i].first, hepeup.ICOLUP[i].second,
                            hepeup.PUP[i][0], hepeup.PUP[i][1],
                            hepeup.PUP[i][2], hepeup.PUP[i][3],
                            hepeup.PUP[i][4], hepeup.VTIMUP[i],
                            hepeup.SPINUP[i]);

        const lhef::LHEEvent::PDF *pdf = event->getPDF();
        if (pdf) {
          this->setPdf(pdf->id.first, pdf->id.second,
                       pdf->x.first, pdf->x.second,
                       pdf->scalePDF,
                       pdf->xPDF.first, pdf->xPDF.second, true);
        }
        else {
          this->setPdf(hepeup.IDUP[0], hepeup.IDUP[1],
                       hepeup.PUP[0][3] / runInfo->getHEPRUP()->EBMUP.first,
                       hepeup.PUP[1][3] / runInfo->getHEPRUP()->EBMUP.second,
                       0., 0., 0., false);
        }

//      hadronisation->onBeforeHadronisation().emit();

//      event.reset();
        return true;
}
bool LHAupLesHouches::setInit ( ) [private]

Definition at line 14 of file LHAupLesHouches.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.

{
        if (!runInfo)
                return false;
        const lhef::HEPRUP &heprup = *runInfo->getHEPRUP();

        setBeamA(heprup.IDBMUP.first, heprup.EBMUP.first,
                 heprup.PDFGUP.first, heprup.PDFSUP.first);
        setBeamB(heprup.IDBMUP.second, heprup.EBMUP.second,
                 heprup.PDFGUP.second, heprup.PDFSUP.second);
        setStrategy(heprup.IDWTUP);

        for(int i = 0; i < heprup.NPRUP; i++)
                addProcess(heprup.LPRUP[i], heprup.XSECUP[i],
                           heprup.XERRUP[i], heprup.XMAXUP[i]);

//      hadronisation->onInit().emit();

//      runInfo.reset();
        return true;
}

Member Data Documentation

Definition at line 43 of file LHAupLesHouches.h.

Referenced by loadEvent().

Definition at line 41 of file LHAupLesHouches.h.

Referenced by loadRunInfo().