[CMSSW] / CMSSW / SimDataFormats / GeneratorProducts / interface / LesHouches.h Repository:
ViewVC logotype

View of /CMSSW/SimDataFormats/GeneratorProducts/interface/LesHouches.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (download) (annotate)
Mon May 26 07:02:15 2008 UTC (4 years, 11 months ago) by saout
Branch: MAIN
CVS Tags: CMSSW_3_6_0_patch1, CMSSW_3_6_0_patch2, CMSSW_5_3_4_cand1, CMSSW_5_3_4_cand2, CMSSW_4_2_3_SLHC_pre1, V01-00-04, V01-00-05, V01-00-06, CMSSW_4_1_4, CMSSW_3_9_5_patch2, V01-00-01, V01-00-02, CMSSW_3_9_5_patch1, V01-00-08, V01-00-09, CMSSW_4_2_7_hltpatch3, CMSSW_4_2_7_hltpatch2, CMSSW_4_2_7_hltpatch1, CMSSW_5_3_8_patch3, CMSSW_2_2_6_HLT, CMSSW_3_0_0_pre10, CMSSW_5_3_4_cand1_patch1, CMSSW_6_1_0_pre6g496cand01, CMSSW_3_2_6, CMSSW_5_2_3_patch3, CMSSW_4_2_8_SLHCtk3, CMSSW_4_2_8_SLHCtk2, CMSSW_3_7_0_patch1, CMSSW_4_1_8_patch10, CMSSW_4_1_8_patch11, CMSSW_2_1_0_pre8, CMSSW_3_3_3_TSG, CMSSW_5_2_3_patch2, CMSSW_6_1_2_SLHC3, CMSSW_6_1_2_SLHC2, CMSSW_6_1_2_SLHC1, CMSSW_6_1_2_SLHC4, CMSSW_4_4_3_patch1, CMSSW_3_11_0_pre2, CMSSW_4_2_8_SLHChcal, CMSSW_3_5_0_patch1, CMSSW_5_3_2_patch2, CMSSW_5_3_2_patch1, CMSSW_5_3_2_patch5, CMSSW_5_3_2_patch4, CMSSW_4_1_6, CMSSW_4_1_8_patch8, CMSSW_4_1_8_patch4, CMSSW_4_1_8_patch5, CMSSW_4_1_8_patch6, CMSSW_4_1_8_patch7, CMSSW_4_1_8_patch1, CMSSW_4_1_5, CMSSW_6_0_0_patch1, V01-00-00, CMSSW_2_1_0, CMSSW_4_2_0_pre4, CMSSW_6_1_X_2012-12-19-0200, CMSSW_2_1_3, CMSSW_2_1_4, CMSSW_5_0_0_pre6g494, CMSSW_2_1_6, CMSSW_4_2_0_pre5, CMSSW_2_1_8, CMSSW_2_1_9, CMSSW_4_2_9_HLT1_patch1, V01-00-03, CMSSW_4_2_0_pre6, CMSSW_5_3_7_patch4, CMSSW_5_3_7_patch5, CMSSW_5_3_7_patch6, CMSSW_5_3_7_patch1, CMSSW_5_3_7_patch2, CMSSW_5_3_7_patch3, CMSSW_2_1_12, CMSSW_2_1_10, CMSSW_2_1_11, CMSSW_2_1_17, CMSSW_4_2_0_pre3, CMSSW_4_2_1_patch2, CMSSW_4_2_1_patch1, CMSSW_4_3_0, CMSSW_4_1_7_patch1, CMSSW_4_2_8_SLHChcal2_patch1, CMSSW_4_1_7_patch3, CMSSW_4_1_7_patch2, CMSSW_5_0_0_pre1, CMSSW_5_0_0_pre3, CMSSW_5_0_0_pre2, CMSSW_5_0_0_pre5, CMSSW_5_0_0_pre4, CMSSW_5_0_0_pre7, CMSSW_5_0_0_pre6, CMSSW_3_10_0, CMSSW_3_10_1, CMSSW_3_9_2_patch3, CMSSW_3_9_2_patch2, CMSSW_3_9_2_patch1, CMSSW_4_4_0_pre8, CMSSW_4_4_0_pre9, CMSSW_4_4_0_pre6, CMSSW_4_4_0_pre7, CMSSW_4_4_0_pre4, CMSSW_4_4_0_pre5, CMSSW_4_4_0_pre2, CMSSW_4_4_0_pre3, CMSSW_4_4_0_pre1, CMSSW_3_5_1_patch1, CMSSW_3_8_2_patch1, CMSSW_5_3_8_patch1, CMSSW_5_3_3_cand1, CMSSW_5_3_8_patch2, CMSSW_3_2_8, CMSSW_6_1_0_pre3_TS124729, CMSSW_3_2_7, CMSSW_3_2_4, CMSSW_3_2_5, CMSSW_3_2_2, CMSSW_3_2_3, CMSSW_3_2_0, CMSSW_3_2_1, CMSSW_3_1_0_pre10, CMSSW_3_1_0_pre11, CMSSW_5_3_2_metpatch1, CMSSW_3_9_1_patch1, CMSSW_3_3_0_pre3, CMSSW_3_8_0, CMSSW_3_8_1, CMSSW_3_8_2, CMSSW_3_8_3, CMSSW_3_8_4, CMSSW_3_8_5, CMSSW_3_8_6, V01-01-08, V01-01-07, V01-01-06, V01-01-05, V01-01-04, V01-01-03, V01-01-02, V01-01-01, V01-01-00, CMSSW_3_5_0_pre1, CMSSW_3_5_0_pre2, CMSSW_3_5_0_pre3, CMSSW_3_5_0_pre5, CMSSW_3_6_2, CMSSW_3_6_3, CMSSW_3_6_0, CMSSW_3_6_1, CMSSW_6_2_0_pre6, CMSSW_4_2_8_SLHCtk_patch1, CMSSW_4_2_8_SLHCtk_patch2, CMSSW_6_2_0_pre5, CMSSW_6_2_0_pre2, CMSSW_6_2_0_pre3, CMSSW_3_4_2, CMSSW_6_2_0_pre1, CMSSW_3_0_0_pre3, CMSSW_3_0_0_pre2, CMSSW_3_0_0_pre1, CMSSW_3_0_0_pre7, CMSSW_3_0_0_pre6, CMSSW_3_0_0_pre5, CMSSW_3_0_0_pre4, CMSSW_4_2_8_patch5, CMSSW_4_2_8_patch4, CMSSW_4_2_8_patch7, CMSSW_3_9_9_patch1, CMSSW_4_2_8_patch1, CMSSW_4_2_8_patch3, CMSSW_4_2_8_patch2, CMSSW_4_4_0_pre10, CMSSW_3_10_0_pre7g494c1, CMSSW_4_4_X_2011-06-09-0400, CMSSW_5_1_2, CMSSW_5_1_1, CMSSW_6_0_1_PostLS1v2_patch1, CMSSW_2_1_2, CMSSW_6_0_1_PostLS1v2_patch3, CMSSW_6_0_1_PostLS1v2_patch2, CMSSW_6_0_1_PostLS1v2_patch4, CMSSW_5_3_1, CMSSW_5_3_0, CMSSW_5_3_3, CMSSW_5_3_2, CMSSW_5_3_5, CMSSW_5_3_4, CMSSW_5_3_7, CMSSW_5_2_3_patch4, CMSSW_5_3_9, CMSSW_5_3_8, CMSSW_sm120515a, CMSSW_2_2_13_HLT, CMSSW_5_3_6_patch1, CMSSW_6_1_1_SLHCphase1tk1, CMSSW_3_7_0_pre4, CMSSW_4_2_1, CMSSW_3_7_0_pre2, CMSSW_4_2_9_HLT, CMSSW_3_7_0_pre1, CMSSW_3_8_7, CMSSW_4_4_0_patch3, CMSSW_4_4_0_patch2, CMSSW_4_4_0_patch1, CMSSW_2_2_9, CMSSW_4_2_0, CMSSW_2_2_7, CMSSW_2_2_6, CMSSW_2_2_5, CMSSW_6_1_1_SLHCphase2tk1, CMSSW_2_2_3, CMSSW_4_2_8_SLHC2_patch1, CMSSW_4_2_8_SLHC2_patch2, CMSSW_4_2_8_SLHCstd, CMSSW_5_3_8_HI_patch1, CMSSW_5_3_8_HI_patch2, CMSSW_5_2_0_pre6, CMSSW_5_2_0_pre5, CMSSW_5_2_0_pre4, V00-00-01, V00-00-03, V00-00-02, CMSSW_3_4_2_patch1, CMSSW_5_0_X_2011-12-18-0200, CMSSW_2_2_0_pre1, CMSSW_4_1_3_patch2, CMSSW_6_0_0_TS123272, CMSSW_3_11_1_hltpatch1, CMSSW_3_11_1, CMSSW_3_11_0, CMSSW_3_11_3, CMSSW_3_11_2, CMSSW_4_2_3_SLHC4_patch1, CMSSW_4_1_4_patch1, CMSSW_4_1_4_patch2, CMSSW_4_1_4_patch3, CMSSW_4_1_4_patch4, CMSSW_3_7_0_patch3, CMSSW_3_7_0_patch2, CMSSW_3_3_0_pre2, CMSSW_3_3_6, CMSSW_3_3_5, CMSSW_3_3_4, CMSSW_3_3_3, CMSSW_3_3_2, CMSSW_3_3_1, CMSSW_3_3_0, CMSSW_3_7_0_patch4, CMSSW_5_2_6_hltpatch1, CMSSW_4_2_4_patch1, CMSSW_4_2_4_patch2, CMSSW_3_4_0_pre2, CMSSW_5_3_7_alcapatch1, CMSSW_2_1_10_patch1, CMSSW_3_4_0_pre7, CMSSW_3_4_0_pre6, CMSSW_3_4_0_pre5, CMSSW_3_4_0_pre4, CMSSW_3_4_0_pre3, CMSSW_5_3_10, CMSSW_3_4_0_pre1, CMSSW_3_9_9, CMSSW_3_9_8, CMSSW_5_2_4_patch4, CMSSW_2_2_8, CMSSW_5_2_4_patch2, CMSSW_5_2_4_patch3, CMSSW_5_2_4_patch1, CMSSW_5_3_9_patch2, CMSSW_5_3_9_patch3, CMSSW_6_0_1_PostLS1v1, CMSSW_5_3_9_patch1, CMSSW_3_9_5, CMSSW_3_9_4, CMSSW_3_9_7, CMSSW_3_9_6, CMSSW_3_1_1, CMSSW_3_1_0, CMSSW_3_1_3, CMSSW_3_1_2, CMSSW_4_4_2_patch9, CMSSW_4_4_2_patch8, CMSSW_4_4_2_patch5, CMSSW_4_4_2_patch4, CMSSW_4_4_2_patch7, CMSSW_4_4_2_patch6, CMSSW_4_4_2_patch1, CMSSW_6_2_0_pre4, CMSSW_4_4_2_patch3, CMSSW_4_4_2_patch2, CMSSW_3_5_8_patch1, CMSSW_3_9_1, CMSSW_3_7_1, CMSSW_3_7_0, CMSSW_3_2_2_patch2, CMSSW_3_5_8_patch4, CMSSW_6_0_1_PostLS1v2, CMSSW_3_4_0, CMSSW_5_0_0_patch1, CMSSW_3_4_1, CMSSW_3_9_2, CMSSW_3_5_8, CMSSW_3_5_5, CMSSW_3_5_4, CMSSW_3_5_7, CMSSW_3_5_6, CMSSW_3_5_1, CMSSW_3_5_0, CMSSW_3_5_3, CMSSW_3_5_2, V00-00-04, CMSSW_3_8_4_patch4, CMSSW_3_8_4_patch2, CMSSW_3_8_4_patch3, CMSSW_3_8_4_patch1, CMSSW_5_2_8, CMSSW_5_2_9, CMSSW_5_2_0, CMSSW_5_2_1, CMSSW_5_2_2, CMSSW_5_2_3, CMSSW_5_2_4, CMSSW_4_2_4_hltpatch1, CMSSW_5_2_6, CMSSW_5_2_7, CMSSW_5_2_7_hltpatch2, CMSSW_4_1_6_patch1, CMSSW_3_8_7_patch1, CMSSW_4_2_7_patch1, CMSSW_4_2_7_patch2, CMSSW_3_1_4, CMSSW_5_2_0_pre2, CMSSW_3_10_0_pre9, CMSSW_3_10_0_pre8, CMSSW_3_10_0_pre3, CMSSW_3_10_0_pre2, CMSSW_3_10_0_pre1, CMSSW_3_10_0_pre7, CMSSW_3_10_0_pre6, CMSSW_4_2_8_p7rootfix, CMSSW_3_10_0_pre4, CMSSW_3_3_6_patch5, CMSSW_3_3_6_patch4, CMSSW_6_0_0_pre10, CMSSW_6_0_0_pre11, CMSSW_3_3_6_patch1, CMSSW_3_3_6_patch3, CMSSW_3_3_6_patch2, CMSSW_5_2_0_pre1, CMSSW_3_6_1_patch3, CMSSW_3_6_1_patch1, CMSSW_3_8_0_patch1, CMSSW_3_6_1_patch7, CMSSW_3_6_1_patch6, CMSSW_3_6_1_patch5, CMSSW_3_6_1_patch4, V01-00-07, CMSSW_3_5_8_patch3, CMSSW_3_5_7_hltpatch4, CMSSW_5_0_0, CMSSW_5_0_1, CMSSW_3_2_2_patch1, CMSSW_5_1_3, CMSSW_6_1_2_SLHC2_patch1, CMSSW_4_1_7, CMSSW_6_1_2_SLHC2_patch3, CMSSW_6_1_2_SLHC2_patch2, CMSSW_4_1_2, CMSSW_4_1_3, CMSSW_4_1_8, CMSSW_6_2_0_pre5slc6, CMSSW_5_3_10_patch1, CMSSW_5_2_0_pre3HLT, CMSSW_6_0_0_pre1, CMSSW_6_0_0_pre2, CMSSW_6_0_0_pre3, CMSSW_6_0_0_pre4, CMSSW_6_0_0_pre5, CMSSW_6_0_0_pre6, CMSSW_6_0_0_pre7, CMSSW_6_0_0_pre8, CMSSW_6_0_0_pre9, CMSSW_5_2_3_patch1, CMSSW_4_3_0_pre3, CMSSW_4_3_0_pre2, CMSSW_4_3_0_pre1, CMSSW_4_3_0_pre7, CMSSW_4_3_0_pre6, CMSSW_4_3_0_pre5, CMSSW_4_3_0_pre4, CMSSW_4_4_0_pre7_g494p02, CMSSW_5_3_0_patch1, CMSSW_5_2_5_cand1, V01-02-01-00, CMSSW_5_3_8_HI, CMSSW_2_2_13_offpatch1, CMSSW_4_4_5_patch1, CMSSW_4_4_5_patch2, CMSSW_6_1_0_pre7_TS127013, CMSSW_4_2_2_patch2, CMSSW_4_2_2_patch1, CMSSW_3_6_3_patch1, CMSSW_3_6_3_patch2, CMSSW_4_2_8_SLHCtk, CMSSW_3_8_0_pre2, CMSSW_3_8_0_pre1, CMSSW_3_8_0_pre7, CMSSW_3_8_0_pre6, CMSSW_3_8_0_pre5, CMSSW_3_8_0_pre4, CMSSW_3_8_0_pre8, CMSSW_4_2_8_SLHCtk3_patch2, CMSSW_4_2_8_SLHCtk3_patch1, CMSSW_3_6_3_SLHC1, CMSSW_6_0_0_pre6g495p01, CMSSW_4_2_8_SLHChcal4_patch2, CMSSW_4_2_8_SLHChcal4_patch3, CMSSW_4_2_8_SLHChcal4_patch1, CMSSW_4_2_8_SLHChcal4_patch4, CMSSW_4_2_8_SLHCstd2_patch2, CMSSW_4_2_8_SLHCstd2_patch1, CMSSW_3_3_3_patch1, CMSSW_6_1_0, CMSSW_6_1_1, CMSSW_6_1_2, CMSSW_2_1_1, CMSSW_4_4_3, CMSSW_4_4_2, CMSSW_4_4_1, CMSSW_4_4_0, CMSSW_3_1_0_pre1, CMSSW_4_4_5, CMSSW_4_4_4, CMSSW_3_5_8_patch2, CMSSW_2_1_5, CMSSW_2_1_0_pre7, CMSSW_2_1_0_pre6, CMSSW_2_1_0_pre5, CMSSW_2_1_0_pre9, CMSSW_2_1_7, CMSSW_5_2_6_patch1, CMSSW_5_2_6_patch2, CMSSW_3_11_0_pre1, CMSSW_6_0_0_SLHCtkpre1, CMSSW_3_11_0_pre3, CMSSW_3_11_0_pre4, CMSSW_3_11_0_pre5, CMSSW_4_2_9_HLT2, CMSSW_4_2_9_HLT3, CMSSW_4_2_9_HLT1, CMSSW_3_1_0_patch1, CMSSW_6_2_0_pre6_patch1, CMSSW_3_0_0_pre9, CMSSW_3_7_0_pre5, CMSSW_6_1_0_pre6_TS126203_TS126341_patch1, CMSSW_3_7_0_pre3, CMSSW_4_2_9_HLT1_hltpatch2, CMSSW_5_2_5, CMSSW_3_0_0_pre8, CMSSW_4_2_8, V01-02-00, V01-02-01, CMSSW_5_2_0_pre3, CMSSW_4_4_2_patch10, CMSSW_4_2_3, CMSSW_4_2_2, CMSSW_4_2_5, CMSSW_4_2_4, CMSSW_4_2_7, CMSSW_4_2_6, CMSSW_2_1_0_pre11, CMSSW_2_1_0_pre10, CMSSW_5_0_0_pre5_root532rc1, CMSSW_5_1_1_patch1, CMSSW_5_1_1_patch2, CMSSW_5_1_1_patch3, CMSSW_3_8_1_patch4, CMSSW_3_8_1_patch1, CMSSW_3_8_1_patch3, CMSSW_3_8_1_patch2, CMSSW_3_1_0_pre7, CMSSW_3_8_6_patch1, CMSSW_2_2_13, CMSSW_2_2_12, CMSSW_2_2_11, CMSSW_2_2_10, CMSSW_3_5_4_patch1, CMSSW_4_4_0_patch4, CMSSW_3_10_0_pre5, CMSSW_3_6_0_pre5, CMSSW_3_6_0_pre4, CMSSW_3_6_0_pre6, CMSSW_3_6_0_pre1, CMSSW_3_6_0_pre3, CMSSW_3_6_0_pre2, CMSSW_6_0_0_pre7py273, CMSSW_3_3_0_pre1, CMSSW_2_2_2, CMSSW_5_1_2_patch1, CMSSW_3_3_6_patch6, CMSSW_4_2_2_SLHC_pre1, CMSSW_2_2_0, CMSSW_2_1_19, CMSSW_4_2_9_HLT1_bphpatch1, CMSSW_4_2_9_HLT1_bphpatch2, CMSSW_4_2_9_HLT1_bphpatch3, CMSSW_4_2_9_HLT1_bphpatch4, CMSSW_3_9_0, CMSSW_4_3_0_dqmpatch2, CMSSW_4_3_0_dqmpatch1, CMSSW_3_5_4_patch2, CMSSW_3_9_3, CMSSW_3_9_8_patch1, CMSSW_4_2_8_SLHC1, CMSSW_4_2_8_SLHC2, CMSSW_3_9_8_patch2, CMSSW_2_1_10_patch2, CMSSW_2_2_12_HLT, CMSSW_5_2_4_hltpatch4, CMSSW_5_2_4_hltpatch2, CMSSW_3_11_1_hclpatch1, CMSSW_3_11_1_patch3, CMSSW_3_11_1_patch1, CMSSW_2_2_11_HLT, CMSSW_6_0_X, CMSSW_5_3_7_25nspatch1, CMSSW_2_2_11_offpatch1, CMSSW_3_3_0_pre6, CMSSW_2_2_4, CMSSW_4_2_8_SLHCstd2, CMSSW_6_0_1, CMSSW_6_0_0, CMSSW_4_2_8_patch6, CMSSW_4_2_8_SLHChcal4, CMSSW_4_2_8_SLHChcal5, CMSSW_4_2_8_SLHChcal6, CMSSW_4_2_0_pre7, CMSSW_4_2_0_pre1, CMSSW_4_2_0_pre2, CMSSW_4_2_8_SLHChcal3, CMSSW_4_2_0_pre8, CMSSW_4_2_8_SLHChcal2_patch2, CMSSW_4_2_8_SLHChcal2_patch3, CMSSW_3_3_0_pre4, CMSSW_4_2_5_hltpatch1, CMSSW_5_3_3_patch1, CMSSW_5_3_3_patch2, CMSSW_5_3_3_patch3, CMSSW_3_5_2_patch2, CMSSW_3_5_2_patch1, CMSSW_3_3_0_pre5, CMSSW_5_2_5_patch1, CMSSW_5_2_5_patch3, CMSSW_5_2_5_patch2, CMSSW_2_2_1, CMSSW_5_2_5_ecalpatch1, CMSSW_5_1_0_pre2, CMSSW_5_2_0_pre2_TS113282, CMSSW_5_1_0_pre1, CMSSW_5_3_4_TC125616patch1, CMSSW_3_9_0_pre4, CMSSW_3_9_0_pre5, CMSSW_3_9_0_pre6, CMSSW_3_9_0_pre7, CMSSW_3_9_0_pre1, CMSSW_3_9_0_pre2, CMSSW_3_9_0_pre3, CMSSW_6_1_0_pre6_TS126203_TS126341, CMSSW_3_8_5_patch1, CMSSW_3_8_5_patch3, CMSSW_3_8_5_patch2, CMSSW_4_2_9_HLT2_hltpatch1, CMSSW_5_3_4_patch1, CMSSW_5_3_4_patch2, CMSSW_3_1_0_pre8, CMSSW_5_2_X_2012-03-08-0200, CMSSW_3_1_0_pre9, CMSSW_3_9_2_patch5, CMSSW_4_1_2_patch1, CMSSW_3_9_2_patch4, CMSSW_3_1_0_pre4, CMSSW_3_5_6_patch1, CMSSW_3_1_0_pre5, CMSSW_4_3_0_pre6_dqmIO, CMSSW_3_1_0_pre6, CMSSW_4_2_3_patch1, CMSSW_4_2_3_patch2, CMSSW_4_2_3_patch3, CMSSW_4_2_3_patch4, CMSSW_4_2_3_patch5, CMSSW_2_2_10_HLT, CMSSW_6_1_0_pre8, CMSSW_6_1_0_pre7, CMSSW_6_1_0_pre6, CMSSW_6_1_0_pre5, CMSSW_6_1_0_pre4, CMSSW_6_1_0_pre3, CMSSW_6_1_0_pre2, CMSSW_6_1_0_pre1, CMSSW_5_2_X_2012-05-03-0200, CMSSW_3_1_0_pre2, CMSSW_3_1_0_pre3, CMSSW_5_0_1_patch3, CMSSW_5_0_1_patch2, CMSSW_5_0_1_patch1, CMSSW_6_0_X_2012-08-07-0200, CMSSW_4_2_3_SLHC4, CMSSW_4_2_3_SLHC3, CMSSW_4_2_3_SLHC2, CMSSW_5_2_0_pre5_TS117504, HEAD
Initial version of LHE products.
// -*- C++ -*-
//
// Copyright (C) 1999-2007 Leif Lonnblad
//
// Modified by C.Saout
//
#ifndef SimDataFormats_GeneratorProducts_LesHouches_h
#define SimDataFormats_GeneratorProducts_LesHouches_h

#include <utility>
#include <vector>

namespace lhef {

/**
 * The HEPRUP 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.
 */
class HEPRUP {
    public:
	/** @name Standard constructors and destructors. */
	//@{
	/**
	 * Default constructor.
	 */
	HEPRUP() : IDWTUP(0), NPRUP(0) {}
	//@}

    public:
	bool operator == (const HEPRUP &other) const
	{
		return IDBMUP == other.IDBMUP &&
		       EBMUP == other.EBMUP &&
		       PDFGUP == other.PDFGUP &&
		       PDFSUP == other.PDFSUP &&
		       IDWTUP == other.IDWTUP &&
		       NPRUP == other.NPRUP &&
		       XSECUP == other.XSECUP &&
		       XERRUP == other.XERRUP &&
		       XMAXUP == other.XMAXUP &&
		       LPRUP == other.LPRUP;
	}

	/**
	 * Set the NPRUP variable, corresponding to the number of
	 * sub-processes, to \a nrup, and resize all relevant vectors
	 * accordingly.
	 */
	void resize(int nrup)
	{
		NPRUP = nrup;
		resize();
	}

	/**
	 * Assuming the NPRUP variable, corresponding to the number of
	 * sub-processes, is correctly set, resize the relevant vectors
	 * accordingly.
	 */
	void resize() {
		XSECUP.resize(NPRUP);
		XERRUP.resize(NPRUP);
		XMAXUP.resize(NPRUP);
		LPRUP.resize(NPRUP);
	}

	/**
	 * PDG id's of beam particles. (first/second is in +/-z direction).
	 */
	std::pair<int, int> IDBMUP;

	/**
	 * Energy of beam particles given in GeV.
	 */
	std::pair<double, double> EBMUP;

	/**
	 * The author group for the PDF used for the beams according to the
	 * PDFLib specification.
	 */
	std::pair<int, int> PDFGUP;

	/**
	 * The id number the PDF used for the beams according to the
	 * PDFLib specification.
	 */
	std::pair<int, int> PDFSUP;

	/**
	 * Master switch indicating how the ME generator envisages the
	 * events weights should be interpreted according to the Les Houches
	 * accord.
	 */
	int IDWTUP;

	/**
	 * The number of different subprocesses in this file (should
	 * typically be just one)
	 */
	int NPRUP;

	/**
	 * The cross sections for the different subprocesses in pb.
	 */
	std::vector<double> XSECUP;

	/**
	 * The statistical error in the cross sections for the different
	 * subprocesses in pb.
	 */
	std::vector<double> XERRUP;

	/**
	 * The maximum event weights (in XWGTUP) for different subprocesses.
	 */
	std::vector<double> XMAXUP;

	/**
	 * The subprocess code for the different subprocesses.
	 */
	std::vector<int> LPRUP;
};


/**
 * 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.
 */
class HEPEUP {
    public:
	/** @name Standard constructors and destructors. */
	//@{
	/**
	 * Default constructor.
	 */
	HEPEUP() :
		NUP(0), IDPRUP(0), XWGTUP(0.0), XPDWUP(0.0, 0.0),
		SCALUP(0.0), AQEDUP(0.0), AQCDUP(0.0)
	{}
	//@}

    public:
	struct FiveVector {
		double operator [] (unsigned int i) const { return x[i]; }
		double &operator [] (unsigned int i) { return x[i]; }

		double	x[5];
	};

	/**
	 * Set the NUP variable, corresponding to the number of particles in
	 * the current event, to \a nup, and resize all relevant vectors
	 * accordingly.
	 */
	void resize(int nup)
	{
		NUP = nup;
		resize();
	}

	/**
	 * Assuming the NUP variable, corresponding to the number of
	 * particles in the current event, is correctly set, resize the
	 * relevant vectors accordingly.
	 */
	void resize()
	{
		IDUP.resize(NUP);
		ISTUP.resize(NUP);
		MOTHUP.resize(NUP);
		ICOLUP.resize(NUP);
		PUP.resize(NUP);
		VTIMUP.resize(NUP);
		SPINUP.resize(NUP);
	}

	/**
	 * The number of particle entries in the current event.
	 */
	int NUP;

	/**
	 * The subprocess code for this event (as given in LPRUP).
	 */
	int IDPRUP;

	/**
	 * The weight for this event.
	 */
	double XWGTUP;

	/**
	 * 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.
	 */
	std::pair<double, double> XPDWUP;

	/**
	 * The scale in GeV used in the calculation of the PDF's in this
	 * event.
	 */
	double SCALUP;

	/**
	 * The value of the QED coupling used in this event.
	 */
	double AQEDUP;

	/**
	 * The value of the QCD coupling used in this event.
	 */
	double AQCDUP;

	/**
	 * The PDG id's for the particle entries in this event.
	 */
	std::vector<int> IDUP;

	/**
	 * The status codes for the particle entries in this event.
	 */
	std::vector<int> ISTUP;

	/**
	 * Indices for the first and last mother for the particle entries in
	 * this event.
	 */
	std::vector< std::pair<int, int> > MOTHUP;

	/**
	 * The colour-line indices (first(second) is (anti)colour) for the
	 * particle entries in this event.
	 */
	std::vector< std::pair<int, int> > ICOLUP;

	/**
	 * Lab frame momentum (Px, Py, Pz, E and M in GeV) for the particle
	 * entries in this event.
	 */
	std::vector<FiveVector> PUP;

	/**
	 * Invariant lifetime (c*tau, distance from production to decay im
	 * mm) for the particle entries in this event.
	 */
	std::vector<double> VTIMUP;

	/**
	 * Spin info for the particle entries in this event given as the
	 * cosine of the angle between the spin vector of a particle and the
	 * 3-momentum of the decaying particle, specified in the lab frame.
	 */
	std::vector<double> SPINUP;

};

} // namespace lhef

#endif // SimDataFormats_GeneratorProducts_LesHouches_h

CERN LCG CVS service
ViewVC Help
Powered by ViewVC 1.0.9