Loading [MathJax]/extensions/tex2jax.js
JHUGen MELA  JHUGen v7.5.6, MELA v2.4.2
Matrix element calculations as used in JHUGen.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
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