JHUGen MELA  JHUGen v7.5.6, MELA v2.4.2
Matrix element calculations as used in JHUGen.
TJHUGenUtils.cc
Go to the documentation of this file.
1 #include "TModHashCollection.hh"
2 #include "TJHUGenUtils.hh"
3 #include "TMath.h"
4 
5 using namespace std;
6 using namespace TNumericUtil;
7 
8 namespace TJHUGenUtils{
9  const std::vector<TNumericUtil::intTriplet_t> JHUGenHash_OnshellHJJHash = Hash_OnshellHJJHash();
10  const std::vector<TNumericUtil::intTriplet_t> JHUGenHash_OnshellVBFHash = Hash_OnshellVBFHash();
11  const std::vector<TNumericUtil::intTriplet_t> JHUGenHash_OnshellTQHHash = Hash_OnshellTQHHash();
12 }
13 
14 std::vector<intTriplet_t> TJHUGenUtils::Hash_OnshellHJJHash(){
15  int ijsel[3][121];
16  int nijchannels=77;
18  std::vector<intTriplet_t> pcfg; pcfg.reserve(nijchannels);
19  for (int ic=0; ic<nijchannels; ic++) pcfg.emplace_back(ijsel[0][ic], ijsel[1][ic], ijsel[2][ic]);
20  return pcfg;
21 }
22 std::vector<intTriplet_t> TJHUGenUtils::Hash_OnshellVBFHash(){
23  int ijsel[3][121];
24  int nijchannels=68;
26  std::vector<intTriplet_t> pcfg; pcfg.reserve(nijchannels);
27  for (int ic=0; ic<nijchannels; ic++) pcfg.emplace_back(ijsel[0][ic], ijsel[1][ic], ijsel[2][ic]);
28  return pcfg;
29 }
30 std::vector<intTriplet_t> TJHUGenUtils::Hash_OnshellTQHHash(){
31  int ijsel[3][121];
33  std::vector<intTriplet_t> pcfg; pcfg.reserve(121);
34  for (int ic=0; ic<121; ic++){
35  if (ijsel[2][ic]>=0) pcfg.emplace_back(ijsel[0][ic], ijsel[1][ic], ijsel[2][ic]);
36  else break;
37  }
38  return pcfg;
39 }
40 
41 const std::vector<TNumericUtil::intTriplet_t>& TJHUGenUtils::Get_JHUGenHash_OnshellHJJHash(){ return JHUGenHash_OnshellHJJHash; }
42 const std::vector<TNumericUtil::intTriplet_t>& TJHUGenUtils::Get_JHUGenHash_OnshellVBFHash(){ return JHUGenHash_OnshellVBFHash; }
43 const std::vector<TNumericUtil::intTriplet_t>& TJHUGenUtils::Get_JHUGenHash_OnshellTQHHash(){ return JHUGenHash_OnshellTQHHash; }
TJHUGenUtils::Hash_OnshellTQHHash
std::vector< TNumericUtil::intTriplet_t > Hash_OnshellTQHHash()
Definition: TJHUGenUtils.cc:30
TJHUGenUtils::Hash_OnshellVBFHash
std::vector< TNumericUtil::intTriplet_t > Hash_OnshellVBFHash()
Definition: TJHUGenUtils.cc:22
TJHUGenUtils.hh
TJHUGenUtils::Get_JHUGenHash_OnshellVBFHash
const std::vector< TNumericUtil::intTriplet_t > & Get_JHUGenHash_OnshellVBFHash()
Definition: TJHUGenUtils.cc:42
TJHUGenUtils::Get_JHUGenHash_OnshellTQHHash
const std::vector< TNumericUtil::intTriplet_t > & Get_JHUGenHash_OnshellTQHHash()
Definition: TJHUGenUtils.cc:43
TJHUGenUtils::JHUGenHash_OnshellVBFHash
const std::vector< TNumericUtil::intTriplet_t > JHUGenHash_OnshellVBFHash
Definition: TJHUGenUtils.cc:10
__modhashcollection_MOD_get_thchannelhash
void __modhashcollection_MOD_get_thchannelhash(int ijSel[3][121])
TJHUGenUtils
Definition: TJHUGenUtils.hh:13
TJHUGenUtils::JHUGenHash_OnshellTQHHash
const std::vector< TNumericUtil::intTriplet_t > JHUGenHash_OnshellTQHHash
Definition: TJHUGenUtils.cc:11
TJHUGenUtils::Get_JHUGenHash_OnshellHJJHash
const std::vector< TNumericUtil::intTriplet_t > & Get_JHUGenHash_OnshellHJJHash()
Definition: TJHUGenUtils.cc:41
TNumericUtil
Definition: MELAAccumulators.h:6
__modhashcollection_MOD_get_hjjchannelhash_nosplit
void __modhashcollection_MOD_get_hjjchannelhash_nosplit(int ijSel[3][121], int *nijchannels)
TJHUGenUtils::Hash_OnshellHJJHash
std::vector< TNumericUtil::intTriplet_t > Hash_OnshellHJJHash()
Definition: TJHUGenUtils.cc:14
TModHashCollection.hh
__modhashcollection_MOD_get_vbfchannelhash_nosplit
void __modhashcollection_MOD_get_vbfchannelhash_nosplit(int ijSel[3][121], int *nijchannels)
TJHUGenUtils::JHUGenHash_OnshellHJJHash
const std::vector< TNumericUtil::intTriplet_t > JHUGenHash_OnshellHJJHash
Definition: TJHUGenUtils.cc:9