CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

lhef::Pythia8Hadronisation::LHAupLesHouches Class Reference

List of all members.

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

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

Definition at line 58 of file Pythia8Hadronisation.cc.

        { 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.

{
        if (!event)
                return false;
        const 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 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);

        hadronisation->onBeforeHadronisation().emit();

        event.reset();
        return true;
}
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.

{
        if (!runInfo)
                return false;
        const 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 71 of file Pythia8Hadronisation.cc.

Definition at line 69 of file Pythia8Hadronisation.cc.

Definition at line 70 of file Pythia8Hadronisation.cc.