1 #ifndef SimDataFormats_GeneratorProducts_HiggsTemplateCrossSections_h
2 #define SimDataFormats_GeneratorProducts_HiggsTemplateCrossSections_h
179 namespace Stage1_1_Fine {
367 namespace Stage1_2_Fine {
498 template <
class vec4>
500 return TLV(p.px(), p.py(), p.pz(), p.E());
503 template <
class Vvec4>
506 for (
const auto &
jet : rivet_jets)
547 template <
class category>
550 cat.
prodMode = htxs_cat_rivet.prodMode;
551 cat.
errorCode = htxs_cat_rivet.errorCode;
576 int P = (int)(stage1 / 100);
577 int F = (int)(stage1 % 100);
585 int fwdH = F == 0 ? 0 : 1;
586 return (49 + 2 * (tH - 1) + fwdH);
591 std::vector<int> pMode_offset = {0, 0, 13, 19, 25};
593 return (F + pMode_offset[prodMode]);
597 std::vector<int> catP_offset = {0, 1, 0, 31, 36, 41, 45, 47};
598 return (F + catP_offset[P]);
603 bool jets_pT25 =
false) {
610 int P = (int)(stage1 / 100);
611 int F = (int)(stage1 % 100);
612 std::vector<int>
offset{0, 1, 13, 19, 24, 29, 33, 35, 37, 39};
622 int P = (int)(stage1_2 / 100);
623 int F = (int)(stage1_2 % 100);
631 int fwdH = F == 0 ? 0 : 1;
632 return (94 + 2 * (tH - 1) + fwdH);
637 std::vector<int> pMode_offset = {0, 0, 35, 46, 57};
639 return (F + pMode_offset[prodMode]);
646 std::vector<int> catP_offset = {0, 1, 0, 68, 74, 80, 86, 92};
647 return (F + catP_offset[P]);
652 bool jets_pT25 =
false) {
660 int P = (int)(stage1_2 / 100);
661 int F = (int)(stage1_2 % 100);
663 std::vector<int>
offset{0, 1, 18, 29, 35, 41, 47, 53, 55, 57};
674 int P = (int)(Stage1_2_Fine / 100);
675 int F = (int)(Stage1_2_Fine % 100);
683 int fwdH = F == 0 ? 0 : 1;
684 return (189 + 2 * (tH - 1) + fwdH);
689 std::vector<int> pMode_offset = {0, 0, 57, 82, 107};
691 return (F + pMode_offset[prodMode]);
698 std::vector<int> catP_offset = {0, 1, 0, 132, 148, 164, 180, 187};
699 return (F + catP_offset[P]);
704 bool jets_pT25 =
false) {
712 int P = (int)(Stage1_2_Fine / 100);
713 int F = (int)(Stage1_2_Fine % 100);
714 std::vector<int>
offset{0, 1, 29, 54, 70, 86, 102, 109, 111, 113};
723 #ifdef RIVET_Particle_HH
732 struct HiggsClassification {
736 Rivet::Particle higgs;
740 Rivet::FourMomentum p4decay_higgs;
742 Rivet::FourMomentum p4decay_V;
768 bool isZ2vvDecay =
false;
failed to identify associated vector boson
ErrorCode
Error code: whether the classification was successful or failed.
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< double > > XYZTLorentzVectorD
Lorentz vector with cylindrical internal representation using pseudorapidity.
successful classification
static const char category[]
HTXS::Stage1_2_Fine::Category stage1_2_fine_cat_pTjet25GeV
int HTXSstage1_2_Fine_to_HTXSstage1_2_Fine_FineIndex(HTXS::Stage1_2_Fine::Category Stage1_2_Fine, HiggsProdMode prodMode, tH_type tH)
failed to identify Higgs boson decay products
HTXS::Stage1::Category stage1_cat_pTjet25GeV
HiggsProdMode
Higgs production modes, corresponding to input sample.
HTXS::Stage1_2::Category stage1_2_cat_pTjet30GeV
HTXS::Stage1_1_Fine::Category stage1_1_fine_cat_pTjet30GeV
HTXS::Stage0::Category stage0_cat
HTXS::Stage1_1_Fine::Category stage1_1_fine_cat_pTjet25GeV
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t V
failed momentum conservation
int HTXSstage1_to_HTXSstage1FineIndex(HTXS::Stage1::Category stage1, HiggsProdMode prodMode, tH_type tH)
tH_type
Additional identifier flag for TH production modes.
int HTXSstage1_to_index(HTXS::Stage1::Category stage1)
failed to identify associated vector boson decay products
TLV MakeTLV(vec4 const p)
math::XYZTLorentzVectorD TLV
HTXS::Stage1::Category stage1_cat_pTjet30GeV
HTXS::Stage1_1::Category stage1_1_cat_pTjet25GeV
failed to identify Higgs boson
int HTXSstage1_2_to_HTXSstage1_2_FineIndex(HTXS::Stage1_2::Category stage1_2, HiggsProdMode prodMode, tH_type tH)
HTXS::Stage1_2::Category stage1_2_cat_pTjet25GeV
HTXS::HiggsProdMode prodMode
failed to identify hard scatter vertex
std::pair< OmniClusterRef, TrackingParticleRef > P
int HTXSstage1_2_Fine_to_index(HTXS::Stage1_2_Fine::Category Stage1_2_Fine)
HTXS::Stage1_1::Category stage1_1_cat_pTjet30GeV
HTXS::Stage1_2_Fine::Category stage1_2_fine_cat_pTjet30GeV
HTXS::HiggsClassification Rivet2Root(category const &htxs_cat_rivet)
int HTXSstage1_2_to_index(HTXS::Stage1_2::Category stage1_2)
HTXS::ErrorCode errorCode
static uInt32 F(BLOWFISH_CTX *ctx, uInt32 x)
TLVs MakeTLVs(Vvec4 const &rivet_jets)
production mode not defined
failed to identify top decay