JHUGen MELA  JHUGen v7.5.6, MELA v2.4.2
Matrix element calculations as used in JHUGen.
TEvtProb.cc
Go to the documentation of this file.
1 //-----------------------------------------------------------------------------
2 //
3 // Class EventProb Module
4 //
5 // EventProb Module
6 //
7 // March 21 2011
8 // S. Jindariani ([email protected])
9 // Y. Gao ([email protected])
10 // K. Burkett ([email protected])
11 //-----------------------------------------------------------------------------
12 
13 #include "TEvtProb.hh"
14 #include "MELAStreamHelpers.hh"
15 #include "MadMela.h"
16 
17 
18 using namespace std;
19 using namespace TUtil;
22 
23 
24 //-----------------------------------------------------------------------------
25 // Constructors and Destructor
26 //-----------------------------------------------------------------------------
28  const char* pathtoXSW, double ebeam, const char* pathtoPDFSet, int PDFMember, TVar::VerbosityLevel verbosity_
29  ) :
30  pathtoPDFSet_(pathtoPDFSet),
31  PDFMember_(PDFMember),
32  verbosity(verbosity_),
33  EBEAM(ebeam),
34  myCSW_(pathtoXSW)
35 {
36  if (verbosity>=TVar::DEBUG) MELAout << "Begin TEvtProb constructor" << endl;
37 
38  /***** Build everything except MELAHXSWidth *****/
39  Build();
40 
41  if (verbosity>=TVar::DEBUG) MELAout << "End TEvtProb constructor" << endl;
42 }
44 pathtoPDFSet_(other.pathtoPDFSet_),
45 PDFMember_(other.PDFMember_),
46 verbosity(other.verbosity),
47 EBEAM(other.EBEAM),
48 myCSW_(other.myCSW_)
49 {
50 
51 }
53  if (verbosity>=TVar::DEBUG) MELAout << "Begin TEvtProb::Build" << endl;
54 
55  /***** Initialize lepton interference scheme *****/
57 
58  /***** Initialize MCFM *****/
60 
61  /***** Initialize JHUGen *****/
63 
64  /***** Cross-initializations *****/
66 
67  /***** Initialize input event properties *****/
70 
71  if (verbosity>=TVar::DEBUG) MELAout << "End TEvtProb::Build" << endl;
72 }
73 
74 
76  if (verbosity>=TVar::DEBUG) MELAout << "Begin TEvtProb destructor" << endl;
77 
79 
80  if (verbosity>=TVar::DEBUG) MELAout << "End TEvtProb destructor" << endl;
81 }
82 
84  if (verbosity>=TVar::DEBUG) MELAout << "Begin TEvtProb::InitializeMCFM" << endl;
85 
86  mcfm_init_((char *)"input.DAT", (char *)"./");
87  if (verbosity>=TVar::DEBUG) MELAout << "TEvtProb::TEvtProb: mcfm_init successful" << endl;
88  energy_.sqrts = 2.*EBEAM;
91  1.16639E-05, // Gf
92  1./128., // alpha_EW
93  80.399, // mW
94  91.1876, // mZ
95  0.23119, // xw=sin**2(thetaW)
96  3 // MCFM EW scheme
97  );
98  qlinit_();
99  // First resonance constant parameters
100  spinzerohiggs_anomcoupl_.LambdaBSM=1000;
101  spinzerohiggs_anomcoupl_.Lambda_Q=10000;
102  spinzerohiggs_anomcoupl_.Lambda_z1=10000;
103  spinzerohiggs_anomcoupl_.Lambda_z2=10000;
104  spinzerohiggs_anomcoupl_.Lambda_z3=10000;
105  spinzerohiggs_anomcoupl_.Lambda_z4=10000;
106  spinzerohiggs_anomcoupl_.Lambda_z11=100; spinzerohiggs_anomcoupl_.Lambda_z21=100; spinzerohiggs_anomcoupl_.Lambda_z31=100; spinzerohiggs_anomcoupl_.Lambda_z41=100;
107  spinzerohiggs_anomcoupl_.Lambda_z12=100; spinzerohiggs_anomcoupl_.Lambda_z22=100; spinzerohiggs_anomcoupl_.Lambda_z32=100; spinzerohiggs_anomcoupl_.Lambda_z42=100;
108  spinzerohiggs_anomcoupl_.Lambda_z10=100; spinzerohiggs_anomcoupl_.Lambda_z20=100; spinzerohiggs_anomcoupl_.Lambda_z30=100; spinzerohiggs_anomcoupl_.Lambda_z40=100;
109  spinzerohiggs_anomcoupl_.Lambda_zgs1=10000;
110  spinzerohiggs_anomcoupl_.Lambda_w1=10000;
111  spinzerohiggs_anomcoupl_.Lambda_w2=10000;
112  spinzerohiggs_anomcoupl_.Lambda_w3=10000;
113  spinzerohiggs_anomcoupl_.Lambda_w4=10000;
114  spinzerohiggs_anomcoupl_.Lambda_w11=100; spinzerohiggs_anomcoupl_.Lambda_w21=100; spinzerohiggs_anomcoupl_.Lambda_w31=100; spinzerohiggs_anomcoupl_.Lambda_w41=100;
115  spinzerohiggs_anomcoupl_.Lambda_w12=100; spinzerohiggs_anomcoupl_.Lambda_w22=100; spinzerohiggs_anomcoupl_.Lambda_w32=100; spinzerohiggs_anomcoupl_.Lambda_w42=100;
116  spinzerohiggs_anomcoupl_.Lambda_w10=100; spinzerohiggs_anomcoupl_.Lambda_w20=100; spinzerohiggs_anomcoupl_.Lambda_w30=100; spinzerohiggs_anomcoupl_.Lambda_w40=100;
117  // Second resonance constant parameters
118  spinzerohiggs_anomcoupl_.Lambda2BSM=1000;
119  spinzerohiggs_anomcoupl_.Lambda2_Q=10000;
120  spinzerohiggs_anomcoupl_.Lambda2_z1=10000;
121  spinzerohiggs_anomcoupl_.Lambda2_z2=10000;
122  spinzerohiggs_anomcoupl_.Lambda2_z3=10000;
123  spinzerohiggs_anomcoupl_.Lambda2_z4=10000;
124  spinzerohiggs_anomcoupl_.Lambda2_z11=100; spinzerohiggs_anomcoupl_.Lambda2_z21=100; spinzerohiggs_anomcoupl_.Lambda2_z31=100; spinzerohiggs_anomcoupl_.Lambda2_z41=100;
125  spinzerohiggs_anomcoupl_.Lambda2_z12=100; spinzerohiggs_anomcoupl_.Lambda2_z22=100; spinzerohiggs_anomcoupl_.Lambda2_z32=100; spinzerohiggs_anomcoupl_.Lambda2_z42=100;
126  spinzerohiggs_anomcoupl_.Lambda2_z10=100; spinzerohiggs_anomcoupl_.Lambda2_z20=100; spinzerohiggs_anomcoupl_.Lambda2_z30=100; spinzerohiggs_anomcoupl_.Lambda2_z40=100;
127  spinzerohiggs_anomcoupl_.Lambda2_zgs1=10000;
128  spinzerohiggs_anomcoupl_.Lambda2_w1=10000;
129  spinzerohiggs_anomcoupl_.Lambda2_w2=10000;
130  spinzerohiggs_anomcoupl_.Lambda2_w3=10000;
131  spinzerohiggs_anomcoupl_.Lambda2_w4=10000;
132  spinzerohiggs_anomcoupl_.Lambda2_w11=100; spinzerohiggs_anomcoupl_.Lambda2_w21=100; spinzerohiggs_anomcoupl_.Lambda2_w31=100; spinzerohiggs_anomcoupl_.Lambda2_w41=100;
133  spinzerohiggs_anomcoupl_.Lambda2_w12=100; spinzerohiggs_anomcoupl_.Lambda2_w22=100; spinzerohiggs_anomcoupl_.Lambda2_w32=100; spinzerohiggs_anomcoupl_.Lambda2_w42=100;
134  spinzerohiggs_anomcoupl_.Lambda2_w10=100; spinzerohiggs_anomcoupl_.Lambda2_w20=100; spinzerohiggs_anomcoupl_.Lambda2_w30=100; spinzerohiggs_anomcoupl_.Lambda2_w40=100;
135  // Switches for spin-0 Higgs couplings
136  spinzerohiggs_anomcoupl_.channeltoggle_stu=2; spinzerohiggs_anomcoupl_.vvhvvtoggle_vbfvh=2;
137  spinzerohiggs_anomcoupl_.AnomalCouplPR=1; spinzerohiggs_anomcoupl_.AnomalCouplDK=1;
138  // Constant parameters for all processes
139  qlfirst_.qlfirst=false;
140 
141  if (verbosity>=TVar::DEBUG) MELAout << "End TEvtProb::InitializeMCFM" << endl;
142 }
143 void TEvtProb::InitializeJHUGen(const char* pathtoPDFSet, int PDFMember){
144  if (verbosity>=TVar::DEBUG) MELAout << "Begin TEvtProb::InitializeJHUGen" << endl;
145 
146  InitJHUGenMELA(pathtoPDFSet, PDFMember, 2.*EBEAM);
147 
148  if (verbosity>=TVar::DEBUG) MELAout << "End TEvtProb::InitializeJHUGen" << endl;
149 }
151  if (verbosity>=TVar::DEBUG) MELAout << "Begin TEvtProb::CrossInitialize" << endl;
152 
153  /**** Initialize alphaS *****/
154  const double GeV=1./100.;
155  double init_Q;
156  int init_nl, init_nf;
157  __modjhugenmela_MOD_getpdfconstants(&init_Q, &init_nl, &init_nf);
158  init_Q /= GeV;
159  if (verbosity>=TVar::DEBUG) MELAout << "TEvtProb::TEvtProb: Initializing the PDF with initial Q=" << init_Q << ", nloops=" << init_nl << ", nf=" << init_nf << endl;
160  SetAlphaS(init_Q, init_Q, 1, 1, init_nl, init_nf, "cteq6_l"); // "cteq6_l" is just some dummy variable
161 
162  /**** Initialize MCFM CKM initializers in cabib.f using JHUGen defaults *****/
163  int i, j;
164  i=2; j=1;
165  cabib_.Vud = __modparameters_MOD_ckmbare(&i, &j);
166  i=2; j=3;
167  cabib_.Vus = __modparameters_MOD_ckmbare(&i, &j);
168  i=2; j=5;
169  cabib_.Vub = __modparameters_MOD_ckmbare(&i, &j);
170  i=4; j=1;
171  cabib_.Vcd = __modparameters_MOD_ckmbare(&i, &j);
172  i=4; j=3;
173  cabib_.Vcs = __modparameters_MOD_ckmbare(&i, &j);
174  i=4; j=5;
175  cabib_.Vcb = __modparameters_MOD_ckmbare(&i, &j);
176 
177  /***** Initialize schemes *****/
178  ResetCouplings();
180  SetPrimaryHiggsMass(125.); // Should come after InitializeMCFM and InitializeJHUGen
181 
182  if (verbosity>=TVar::DEBUG) MELAout << "End TEvtProb::CrossInitialize" << endl;
183 }
184 
185 // Set NNPDF driver path
186 void TEvtProb::Set_LHAgrid(const char* path, int pdfmember){
187  char path_nnpdf_c[200];
188  sprintf(path_nnpdf_c, "%s", path);
189  int pathLength = strlen(path_nnpdf_c);
190  nnpdfdriver_(path_nnpdf_c, &pathLength);
191  nninitpdf_(&pdfmember);
192 }
194  matrixElement = me;
195  production = prod;
196  // In case s-channel processes are passed for JHUGen ME, flip them back to JHUGen-specific productions.
197  if (matrixElement == TVar::JHUGen){
204  }
205  process = proc;
206 }
210 void TEvtProb::SetRenFacScaleMode(TVar::EventScaleScheme renormalizationSch, TVar::EventScaleScheme factorizationSch, double ren_sf, double fac_sf){
211  event_scales.renomalizationScheme = renormalizationSch;
212  event_scales.factorizationScheme = factorizationSch;
215 }
217  return this->event_scales;
218 }
221 void TEvtProb::SetHiggsMass(double mass, double wHiggs, int whichResonance){
222  // Regular, first resonance
223  if (whichResonance==1 || whichResonance==-1){
224  if (mass<0.){
225  _hmass = -1;
226  _hwidth = 0;
227  }
228  else if (wHiggs<0.){
229  _hmass = mass;
231  }
232  else{
233  _hmass = mass;
234  _hwidth = wHiggs;
235  }
236  masses_mcfm_.hmass = _hmass;
237  masses_mcfm_.hwidth = _hwidth;
238 
239  madMela::mad_masses_.mdl_mh = _hmass;
240  madMela::widths_.mdl_wh = _hwidth;
241 
244  }
245 
246  // Second resonance
247  if (whichResonance==2){
248  if (mass<0.){
249  _h2mass = -1;
250  _h2width = 0;
251  }
252  else if (wHiggs<0.){
253  _h2mass = mass;
255  }
256  else{
257  _h2mass = mass;
258  _h2width = wHiggs;
259  }
262  //SetJHUGenHiggsMassWidth(_h2mass, _h2width); // Second resonance is not implemented in JHUGen yet.
263  }
264  else if (whichResonance==-1){
265  _h2mass = -1;
266  _h2width = 0;
269  //SetJHUGenHiggsMassWidth(_h2mass, _h2width); // Second resonance is not implemented in JHUGen yet.
270  }
271 
273  << "TEvtProb::SetHiggsMass(" << mass << ", " << wHiggs << ", " << whichResonance << "):\n"
274  << '\t' << "hmass: " << _hmass << ", " << _hwidth << '\n'
275  << '\t' << "h2mass: " << _h2mass << ", " << _h2width << '\n'
276  << '\t' << "MCFM hmass: " << masses_mcfm_.hmass << ", " << masses_mcfm_.hwidth << '\n'
277  << '\t' << "MCFM h2mass: " << spinzerohiggs_anomcoupl_.h2mass << ", " << spinzerohiggs_anomcoupl_.h2width << endl;
278 }
280  SimpleParticleCollection_t* pDaughters,
281  SimpleParticleCollection_t* pAssociated,
282  SimpleParticleCollection_t* pMothers,
283  bool isGen
284  ){
286  pDaughters,
287  pAssociated,
288  pMothers,
289  isGen,
290  &particleList, &candList // push_back is done automatically
291  );
292  if (cand) melaCand=cand;
293 }
295  if (!CheckInputPresent()){
296  if (verbosity>=TVar::INFO) MELAout << "TEvtProb::AppendTopCandidate: No MELACandidates are present to append this top!" << endl;
297  return;
298  }
300  TopDaughters,
301  &particleList, &topCandList // push_back is done automatically
302  );
303  if (cand) melaCand->addAssociatedTop(cand);
304 }
306 void TEvtProb::SetCurrentCandidateFromIndex(unsigned int icand){
307  if (candList.size()>icand) melaCand = candList.at(icand);
308  else if (verbosity>=TVar::ERROR) MELAerr << "TEvtProb::SetCurrentCandidateFromIndex: icand=" << icand << ">=candList.size()=" << candList.size() << endl;
309 }
311  melaCand = cand;
312  if (verbosity>=TVar::INFO && !melaCand) MELAout << "TEvtProb::SetCurrentCandidate: BE CAREFUL! !melaCand!" << endl;
313  if (verbosity>=TVar::INFO && GetCurrentCandidateIndex()<0) MELAout << "TEvtProb::SetCurrentCandidate: The current candidate is not in the list of candidates. It is the users' responsibility to delete this candidate and all of its associated particles." << endl;
314 }
315 
316 // Reset functions
319 void TEvtProb::ResetMass(double inmass, int ipart){ TUtil::SetMass(inmass, ipart); }
320 void TEvtProb::SetZprimeMassWidth(double inmass, double inwidth){ this->ResetMass(inmass, 32); this->ResetWidth(inwidth, 32); }
321 void TEvtProb::SetWprimeMassWidth(double inmass, double inwidth){ this->ResetMass(inmass, 34); this->ResetWidth(inwidth, 34); }
322 void TEvtProb::ResetWidth(double inwidth, int ipart){ TUtil::SetDecayWidth(inwidth, ipart); }
324  ResetMass(1e-3, 1); // d
325  ResetMass(5e-3, 2); // u
326  ResetMass(1e-1, 3); // s
327  ResetMass(1.275, 4); // c
328  ResetMass(4.75, 5); // b
329  ResetMass(173.2, 6); // t
330  ResetMass(1e5, 7); // bprime
331  ResetMass(1e5, 8); // tprime
332  //coupling_(); // Already called at b and t twice!
333 }
334 void TEvtProb::ResetMCFM_EWKParameters(double ext_Gf, double ext_aemmz, double ext_mW, double ext_mZ, double ext_xW, int ext_ewscheme){ SetEwkCouplingParameters(ext_Gf, ext_aemmz, ext_mW, ext_mZ, ext_xW, ext_ewscheme); }
344 }
346  RcdME.melaCand = 0;
347  melaCand = 0;
348 
349  // Clear bookkeeping objects
350  // Clean MELACandidates first since they contain all other objects
351  for (MELACandidate* tmpPart:candList) delete tmpPart;
352  candList.clear();
353  // Clean MELATopCandidates next since they contain MELAParticles
354  for (MELATopCandidate_t* tmpPart:topCandList) delete tmpPart;
355  topCandList.clear();
356  // Clean all remaining MELAParticles
357  for (MELAParticle* tmpPart:particleList) delete tmpPart;
358  particleList.clear();
359 }
360 
361 // Get-functions
370 double TEvtProb::GetPrimaryMass(int ipart){
371  if (PDGHelpers::isAHiggs(ipart)) return GetPrimaryHiggsMass();
372  else return TUtil::GetMass(ipart);
373 }
374 double TEvtProb::GetPrimaryWidth(int ipart){
376  else return TUtil::GetDecayWidth(ipart);
377 }
379  if (mass>0.) return myCSW_.HiggsWidth(mass);
380  else return -1.;
381 }
385  if (!melaCand) return -1;
386  for (unsigned int icand=0; icand<candList.size(); icand++){
387  if (candList.at(icand)==melaCand) return (int)icand;
388  }
389  return -1;
390 }
391 int TEvtProb::GetNCandidates(){ return (static_cast<int>(candList.size())); }
392 std::vector<MELATopCandidate_t*>* TEvtProb::GetTopCandidates(){ return &topCandList; }
393 
394 
395 // Check/test functions
397  if (!melaCand){
399  << "TEvtProb::CheckInputPresent: melaCand==" << melaCand << " is nullPtr!"
400  << endl;
401  if (candList.empty()) return false;
402  else{
404  if (verbosity>=TVar::INFO) MELAout << "TEvtProb::CheckInputPresent: melaCand now points to the latest candidate (cand[" << (candList.size()-1) << "])" << endl;
405  }
406  }
407  SetRcdCandPtr(); // If input event is present, set the RcdME pointer to melaCand
408  return true;
409 }
410 
411 
412 // ME functions
413 // Cross-section calculations for H + 0 jet
415  if (verbosity>=TVar::DEBUG) MELAout << "Begin XsecCalc_XVV" << endl;
416  double dXsec=0;
417  ResetIORecord();
418  if (!CheckInputPresent()) return dXsec;
419  bool useMCFM = matrixElement == TVar::MCFM;
420  bool calculateME=false;
421  bool needBSMHiggs=false;
422  bool needAZff=CheckSelfDCouplings_AZff();
423  if (useMCFM){
424  if (verbosity>=TVar::DEBUG) MELAout << "TEvtProb::XsecCalc_XVV: Try MCFM" << endl;
426  if (needBSMHiggs || needAZff) SetLeptonInterf(TVar::InterfOn); // All anomalous coupling computations have to use lepton interference
427 
428  calculateME = (
429  production == TVar::ZZGG ||
430  production == TVar::ZZQQB ||
435  (production == TVar::JJQCD && process == TVar::bkgZJets) // Allow Z+jets to be computed here.
436  );
437  if (calculateME){
438  SetMCFMSpinZeroCouplings(needBSMHiggs, &selfDSpinZeroCoupl, false);
441  }
442  else if (verbosity>=TVar::INFO) MELAout << "TEvtProb::XsecCalc_XVV: MCFM_chooser failed to determine the process configuration." << endl;
443  }
444  else if (matrixElement == TVar::JHUGen){
445  if (verbosity>=TVar::DEBUG) MELAout << "TEvtProb::XsecCalc_XVV::Try JHUGen" << endl;
446  AllowSeparateWWCouplings(false); // HZZ couplings are used for both in spin-0
447  // all the possible couplings
448  double Hggcoupl[SIZE_HGG][2] ={ { 0 } };
449  double Hvvcoupl[SIZE_HVV][2] ={ { 0 } };
450  double HvvLambda_qsq[SIZE_HVV_LAMBDAQSQ][SIZE_HVV_CQSQ] ={ { 0 } };
451  int HvvCLambda_qsq[SIZE_HVV_CQSQ] ={ 0 };
452 
453  double Hvvpcoupl[SIZE_HVV][2] = { { 0 } };
454  double Hvpvpcoupl[SIZE_HVV][2] = { { 0 } };
455 
456  double Zqqcoupl[SIZE_ZQQ][2] ={ { 0 } };
457  double Zvvcoupl[SIZE_ZVV][2] ={ { 0 } };
458 
459  double Gqqcoupl[SIZE_GQQ][2] ={ { 0 } };
460  double Gggcoupl[SIZE_GGG][2] ={ { 0 } };
461  double Gvvcoupl[SIZE_GVV][2] ={ { 0 } };
462  double Gvvpcoupl[SIZE_GVV][2] ={ { 0 } };
463  double Gvpvpcoupl[SIZE_GVV][2] ={ { 0 } };
464 
465  double Zpffcoupl[SIZE_Vpff][2] ={ { 0 } };
466  double Wpffcoupl[SIZE_Vpff][2] ={ { 0 } };
467  double M_Zprime = -1;
468  double Ga_Zprime = 0;
469  double M_Wprime = -1;
470  double Ga_Wprime = 0;
471 
472  double AZffcoupl[SIZE_AZff][2] ={ { 0 } };
473  for (int j=0; j<2; j++){
474  for (int i=0; i<SIZE_AZff; i++){
475  AZffcoupl[i][j] = (selfDAZffCoupl.AZffcoupl)[i][j];
476  }
477  }
478  SetJHUGenAZffCouplings(needAZff, AZffcoupl);
479 
480  //
481  // set spin 0 default numbers
482  //
483  // By default set the Spin 0 couplings for SM case (0+m)
484  Hggcoupl[gHIGGS_GG_2][0]=1.0;
485  for (int ic=0; ic<SIZE_HVV_LAMBDAQSQ; ic++){ for (int ik=0; ik<SIZE_HVV_CQSQ; ik++) HvvLambda_qsq[ic][ik]=100.; }
486  //
487  // set spin 1 default numbers
488  //
489  Zqqcoupl[gZPRIME_QQ_LEFT][0]=1.0;
490  Zqqcoupl[gZPRIME_QQ_RIGHT][0]=1.0;
491  //
492  // set spin 2 default numbers
493  //
494  Gqqcoupl[gGRAVITON_QQ_LEFT][0]=1.0;
495  Gqqcoupl[gGRAVITON_QQ_RIGHT][0]=1.0;
496 
497  bool isSpinZero = false;
498  bool isSpinOne = false;
499  bool isSpinTwo = false;
500 
501  // 0m+
502  if (process == TVar::HSMHiggs){
503  Hvvcoupl[gHIGGS_VV_1][0]=1.;
504  isSpinZero = true;
505  }
506  // 0+L1
507  else if (process == TVar::H0_g1prime2){
508  Hvvcoupl[gHIGGS_VV_1_PRIME2][0] = 1.;
509  isSpinZero = true;
510  }
511  // 0h+
512  else if (process == TVar::H0hplus){
513  Hvvcoupl[gHIGGS_VV_2][0] = 1.;
514  isSpinZero = true;
515  }
516  // 0-
517  else if (process == TVar::H0minus){
518  Hvvcoupl[gHIGGS_VV_4][0] = 1.;
519  isSpinZero = true;
520  }
521  else if (process == TVar::H0_Zgsg1prime2){
522  Hvvcoupl[gHIGGS_ZA_1_PRIME2][0] = 1.;
523  isSpinZero = true;
524  }
525  else if (process == TVar::H0_Zgs){
526  Hvvcoupl[gHIGGS_ZA_2][0] = 1.;
527  isSpinZero = true;
528  }
529  else if (process == TVar::H0_Zgs_PS){
530  Hvvcoupl[gHIGGS_ZA_4][0] = 1.;
531  isSpinZero = true;
532  }
533  else if (process == TVar::H0_gsgs){
534  Hvvcoupl[gHIGGS_AA_2][0] = 1.;
535  isSpinZero = true;
536  }
537  else if (process == TVar::H0_gsgs_PS){
538  Hvvcoupl[gHIGGS_AA_4][0] = 1.;
539  isSpinZero = true;
540  }
541  else if (process == TVar::SelfDefine_spin0){
542  for (int j=0; j<2; j++){
543  for (int i=0; i<SIZE_HGG; i++) Hggcoupl[i][j] = (selfDSpinZeroCoupl.Hggcoupl)[i][j];
544  for (int i=0; i<SIZE_HVV; i++){
545  Hvvcoupl[i][j] = (selfDSpinZeroCoupl.Hzzcoupl)[i][j];
546 
547  Hvvpcoupl[i][j] = (selfDSpinZeroCoupl.Hzzpcoupl)[i][j];
548  Hvpvpcoupl[i][j] = (selfDSpinZeroCoupl.Hzpzpcoupl)[i][j];
549  }
550  }
551  for (int j=0; j<SIZE_HVV_CQSQ; j++){
552  for (int i=0; i<SIZE_HVV_LAMBDAQSQ; i++) HvvLambda_qsq[i][j] = (selfDSpinZeroCoupl.HzzLambda_qsq)[i][j];
553  HvvCLambda_qsq[j] = (selfDSpinZeroCoupl.HzzCLambda_qsq)[j];
554  }
555 
557  for (int j=0; j<2; j++){
558  for (int i=0; i<SIZE_HGG; i++){ if ((selfDSpinZeroCoupl.Hggcoupl)[i][j]!=0.) MELAout << "Hggcoupl[" << i << "][" << j << "] = " << (selfDSpinZeroCoupl.Hggcoupl)[i][j] << endl; }
559  for (int i=0; i<SIZE_HVV; i++){
560  if ((selfDSpinZeroCoupl.Hzzcoupl)[i][j]!=0.) MELAout << "Hvvcoupl[" << i << "][" << j << "] = " << (selfDSpinZeroCoupl.Hzzcoupl)[i][j] << endl;
561 
562  if ((selfDSpinZeroCoupl.Hzzpcoupl)[i][j]!=0.) MELAout << "Hzzpcoupl[" << i << "][" << j << "] = " << (selfDSpinZeroCoupl.Hzzpcoupl)[i][j] << endl;
563  if ((selfDSpinZeroCoupl.Hzpzpcoupl)[i][j]!=0.) MELAout << "Hzpzpcoupl[" << i << "][" << j << "] = " << (selfDSpinZeroCoupl.Hzpzpcoupl)[i][j] << endl;
564  }
565  }
566  for (int j=0; j<SIZE_HVV_CQSQ; j++){
567  for (int i=0; i<SIZE_HVV_LAMBDAQSQ; i++){ if ((selfDSpinZeroCoupl.HzzLambda_qsq)[i][j]!=0.) MELAout << "HvvLambda_qsq[" << i << "][" << j << "] = " << (selfDSpinZeroCoupl.HzzLambda_qsq)[i][j] << endl; }
568  if ((selfDSpinZeroCoupl.HzzCLambda_qsq)[j]!=0.) MELAout << "HvvCLambda_qsq[" << j << "] = " << (selfDSpinZeroCoupl.HzzCLambda_qsq)[j] << endl;
569  }
570  }
571 
572  isSpinZero = true;
573  }
574 
575  // 1-
576  else if (process == TVar::H1minus){
577  Zvvcoupl[gZPRIME_VV_1][0]=1.;
578  isSpinOne = true;
579  }
580  // 1+
581  else if (process == TVar::H1plus){
582  Zvvcoupl[gZPRIME_VV_2][0]=1.;
583  isSpinOne = true;
584  }
585  else if (process == TVar::SelfDefine_spin1){
586  for (int j=0; j<2; j++){
587  for (int i=0; i<SIZE_ZQQ; i++) Zqqcoupl[i][j] = (selfDSpinOneCoupl.Zqqcoupl)[i][j];
588  for (int i=0; i<SIZE_ZVV; i++) Zvvcoupl[i][j] = (selfDSpinOneCoupl.Zvvcoupl)[i][j];
589  }
590  isSpinOne = true;
591  }
592 
593  // 2m+
594  else if (process == TVar::H2_g1g5){
595  Gggcoupl[gGRAVITON_GG_1][0]=1.;
596  Gvvcoupl[gGRAVITON_VV_1][0]=1.;
597  Gvvcoupl[gGRAVITON_VV_5][0]=1.;
598  isSpinTwo = true;
599  }
600  // 2b+
601  else if (process == TVar::H2_g1){
602  Gggcoupl[gGRAVITON_GG_1][0]=1.;
603  Gvvcoupl[gGRAVITON_VV_1][0]=1.;
604  isSpinTwo = true;
605  }
606  else if (process == TVar::H2_g2){
607  Gggcoupl[gGRAVITON_GG_2][0]=1.;
608  Gvvcoupl[gGRAVITON_VV_2][0]=1.;
609  isSpinTwo = true;
610  }
611  // 2h3plus
612  else if (process == TVar::H2_g3){
613  Gggcoupl[gGRAVITON_GG_3][0]=1.;
614  Gvvcoupl[gGRAVITON_VV_3][0]=1.;
615  isSpinTwo = true;
616  }
617  // 2h+
618  else if (process == TVar::H2_g4){
619  Gggcoupl[gGRAVITON_GG_4][0]=1.;
620  Gvvcoupl[gGRAVITON_VV_4][0]=1.;
621  isSpinTwo = true;
622  }
623  // 2b+
624  else if (process == TVar::H2_g5){
625  Gggcoupl[gGRAVITON_GG_1][0]=1.;
626  Gvvcoupl[gGRAVITON_VV_5][0]=1.;
627  isSpinTwo = true;
628  }
629  // 2h6+
630  else if (process == TVar::H2_g6){
631  Gggcoupl[gGRAVITON_GG_1][0]=1.;
632  Gvvcoupl[gGRAVITON_VV_6][0]=1.;
633  isSpinTwo = true;
634  }
635  // 2h7plus
636  else if (process == TVar::H2_g7){
637  Gggcoupl[gGRAVITON_GG_1][0]=1.;
638  Gvvcoupl[gGRAVITON_VV_7][0]=1.;
639  isSpinTwo = true;
640  }
641  // 2h-
642  else if (process == TVar::H2_g8){
643  Gggcoupl[gGRAVITON_GG_5][0]=1.;
644  Gvvcoupl[gGRAVITON_VV_8][0]=1.;
645  isSpinTwo = true;
646  }
647  // 2h9minus
648  else if (process == TVar::H2_g9){
649  Gggcoupl[gGRAVITON_GG_5][0]=1.;
650  Gvvcoupl[gGRAVITON_VV_9][0]=1.;
651  isSpinTwo = true;
652  }
653  // 2h10minus
654  else if (process == TVar::H2_g10){
655  Gggcoupl[gGRAVITON_GG_5][0]=1.;
656  Gvvcoupl[gGRAVITON_VV_10][0]=1.;
657  isSpinTwo = true;
658  }
659  else if (process == TVar::SelfDefine_spin2){
660  for (int j=0; j<2; j++){
661  for (int i=0; i<SIZE_GGG; i++) Gggcoupl[i][j] = (selfDSpinTwoCoupl.Gggcoupl)[i][j];
662  for (int i=0; i<SIZE_GQQ; i++) Gqqcoupl[i][j] = (selfDSpinTwoCoupl.Gqqcoupl)[i][j];
663  for (int i=0; i<SIZE_GVV; i++){
664  Gvvcoupl[i][j] = (selfDSpinTwoCoupl.Gvvcoupl)[i][j];
665  Gvvpcoupl[i][j] = (selfDSpinTwoCoupl.Gvvpcoupl)[i][j];
666  Gvpvpcoupl[i][j] = (selfDSpinTwoCoupl.Gvpvpcoupl)[i][j];
667  }
668  }
669  isSpinTwo = true;
670  }
671 
672  // Vprime / contact couplings
674  for (int j=0; j<2; j++){
675  for (int i=0; i<SIZE_Vpff; i++){
676  Zpffcoupl[i][j] = (selfDVprimeCoupl.Zpffcoupl)[i][j];
677  Wpffcoupl[i][j] = (selfDVprimeCoupl.Wpffcoupl)[i][j];
678  }
679  }
680  M_Zprime = selfDVprimeCoupl.M_Zprime;
681  Ga_Zprime = selfDVprimeCoupl.Ga_Zprime;
682  M_Wprime = selfDVprimeCoupl.M_Wprime;
683  Ga_Wprime = selfDVprimeCoupl.Ga_Wprime;
684 
686  for (int j=0; j<2; j++){
687  for (int i=0; i<SIZE_Vpff; i++){
688  if ((selfDVprimeCoupl.Zpffcoupl)[i][j]!=0.) MELAout << "Zpffcoupl[" << i << "][" << j << "] = " << (selfDVprimeCoupl.Zpffcoupl)[i][j] << endl;
689  if ((selfDVprimeCoupl.Wpffcoupl)[i][j]!=0.) MELAout << "Wpffcoupl[" << i << "][" << j << "] = " << (selfDVprimeCoupl.Wpffcoupl)[i][j] << endl;
690  }
691  }
692  MELAout << "M_Zprime = " << selfDVprimeCoupl.M_Zprime << endl;
693  MELAout << "Ga_Zprime = " << selfDVprimeCoupl.Ga_Zprime << endl;
694  MELAout << "M_Wprime = " << selfDVprimeCoupl.M_Wprime << endl;
695  MELAout << "Ga_Wprime = " << selfDVprimeCoupl.Ga_Wprime << endl;
696  }
697  }
698 
699  if (isSpinZero){
701  SetJHUGenSpinZeroVVCouplings(Hvvcoupl, Hvvpcoupl, Hvpvpcoupl, HvvCLambda_qsq, HvvLambda_qsq, false);
702  SetJHUGenVprimeContactCouplings(Zpffcoupl, Wpffcoupl);
703  SetZprimeMassWidth(M_Zprime, Ga_Zprime);
704  SetWprimeMassWidth(M_Wprime, Ga_Wprime);
705  }
706  else if (isSpinOne) SetJHUGenSpinOneCouplings(Zqqcoupl, Zvvcoupl);
707  else if (isSpinTwo){
708  SetJHUGenSpinTwoCouplings(Gggcoupl, Gvvcoupl, Gvvpcoupl, Gvpvpcoupl, Gqqcoupl);
709  SetJHUGenVprimeContactCouplings(Zpffcoupl, Wpffcoupl);
710  SetZprimeMassWidth(M_Zprime, Ga_Zprime);
711  SetWprimeMassWidth(M_Wprime, Ga_Wprime);
712  }
713 
714  if (isSpinZero || isSpinOne || isSpinTwo) dXsec = JHUGenMatEl(process, production, matrixElement, &event_scales, &RcdME, EBEAM, verbosity);
715  else if (verbosity>=TVar::ERROR) MELAerr
716  << "TEvtProb::XsecCalc_XVV: JHUGen ME is not spin zero, one or two! The process is described by "
717  << "Process: " << TVar::ProcessName(process) << ", Production: " << TVar::ProductionName(production) << ", and ME: " << TVar::MatrixElementName(matrixElement)
718  << endl;
719  } // end of JHUGen matrix element calculations
720  else if (matrixElement == TVar::MADGRAPH){
721  calculateME = (
722  production == TVar::ZZGG ||
724  );
725  if (calculateME){
727  // madMela::ggFSIG_update_all_coup_(); //calculates all couplings
729  }
730  else if (verbosity>=TVar::INFO) MELAout << "TEvtProb::XsecCalc_XVV: Madgraph_chooser failed to determine the process configuration." << endl;
731  }
732  if (verbosity >= TVar::DEBUG) MELAout << "TEvtProb::XsecCalc_XVV: Process " << TVar::ProcessName(process) << " dXsec=" << dXsec << endl;
733 
734  if (verbosity>=TVar::DEBUG) MELAout << "TEvtProb::XsecCalc_XVV::Reset couplings" << endl;
735  ResetCouplings(); // Should come first
736  if (useMCFM){ // Set defaults. Should come next...
737  if (needBSMHiggs) SetLeptonInterf(TVar::DefaultLeptonInterf);
738  if (calculateME) SetMCFMSpinZeroCouplings(false, &selfDSpinZeroCoupl, true); // ... because of this!
739  }
741  if (verbosity>=TVar::DEBUG) MELAout << "End XsecCalc_XVV" << endl;
742  return dXsec;
743 }
744 
745 // Cross-section calculations for H(->VV) + 2 jets
747  if (verbosity>=TVar::DEBUG) MELAout << "Begin XsecCalc_VVXVV" << endl;
748  double dXsec=0;
749  ResetIORecord();
750  if (!CheckInputPresent()) return dXsec;
751 
752  bool useMCFM = matrixElement == TVar::MCFM;
753  bool needBSMHiggs=false;
754  bool needATQGC=false;
755  bool calculateME=false;
756  if (useMCFM){
757  if (verbosity>=TVar::DEBUG) MELAout << "TEvtProb::XsecCalc_VVXVV: Try MCFM" << endl;
758  needBSMHiggs = CheckSelfDCouplings_HVV();
759  needATQGC = CheckSelfDCouplings_aTQGC();
760  if (needBSMHiggs || needATQGC) SetLeptonInterf(TVar::InterfOn); // All anomalous coupling computations have to use lepton interference
761 
762  calculateME = (
766  );
767  if (calculateME){
768  SetMCFMSpinZeroCouplings(needBSMHiggs, &selfDSpinZeroCoupl, false);
771  }
772  else if (verbosity>=TVar::INFO) MELAout << "TEvtProb::XsecCalc_VVXVV: MCFM_chooser failed to determine the process configuration." << endl;
773  }
774  else if (verbosity>=TVar::ERROR) MELAerr << "TEvtProb::XsecCalc_VVXVV: Non-MCFM Mes are not supported." << endl;
775 
777  << "Process " << TVar::ProcessName(process)
778  << " TEvtProb::XsecCalc_VVXVV: dXsec=" << dXsec
779  << endl;
780 
781  ResetCouplings(); // Should come first
782  if (useMCFM){ // Set defaults. Should come next...
783  if (needBSMHiggs || needATQGC) SetLeptonInterf(TVar::DefaultLeptonInterf);
784  if (calculateME){
785  // ... because of these!
788  }
789  }
791  if (verbosity>=TVar::DEBUG) MELAout << "End XsecCalc_VVXVV" << endl;
792  return dXsec;
793 }
794 
795 // Cross-section calculations for H + 2 jets
797  if (verbosity>=TVar::DEBUG) MELAout << "Begin XsecCalc_XJJ" << endl;
798  if (matrixElement == TVar::MCFM) return XsecCalc_VVXVV();
799  double dXsec = 0;
800  ResetIORecord();
801  if (!CheckInputPresent()) return dXsec;
802 
803  if (matrixElement == TVar::JHUGen){
804  if (production == TVar::JJQCD){
805  double Hggcoupl[SIZE_HGG][2] ={ { 0 } };
806  if (process == TVar::HSMHiggs) Hggcoupl[gHIGGS_GG_2][0] = 1.;
807  else if (process == TVar::H0minus) Hggcoupl[gHIGGS_GG_4][0] = 1.;
808  else if (process == TVar::SelfDefine_spin0){
809  for (int j=0; j<2; j++){
810  for (int i=0; i<SIZE_HGG; i++) Hggcoupl[i][j] = (selfDSpinZeroCoupl.Hggcoupl)[i][j];
811  }
812  }
814  }
815  else if (production == TVar::JJVBF){
816  double Hzzcoupl[SIZE_HVV][2] ={ { 0 } };
817  double Hwwcoupl[SIZE_HVV][2] ={ { 0 } };
818  double HzzLambda_qsq[SIZE_HVV_LAMBDAQSQ][SIZE_HVV_CQSQ] ={ { 0 } };
819  double HwwLambda_qsq[SIZE_HVV_LAMBDAQSQ][SIZE_HVV_CQSQ] ={ { 0 } };
820  int HzzCLambda_qsq[SIZE_HVV_CQSQ] ={ 0 };
821  int HwwCLambda_qsq[SIZE_HVV_CQSQ] ={ 0 };
822  double Hzzpcoupl[SIZE_HVV][2] = { { 0 } };
823  double Hzpzpcoupl[SIZE_HVV][2] = { { 0 } };
824  double Zpffcoupl[SIZE_Vpff][2] = { { 0 } };
825  double Hwwpcoupl[SIZE_HVV][2] = { { 0 } };
826  double Hwpwpcoupl[SIZE_HVV][2] = { { 0 } };
827  double Wpffcoupl[SIZE_Vpff][2] = { { 0 } };
828  double M_Zprime = -1;
829  double Ga_Zprime = 0;
830  double M_Wprime = -1;
831  double Ga_Wprime = 0;
832 
833  for (int ic=0; ic<SIZE_HVV_LAMBDAQSQ; ic++){ for (int ik=0; ik<SIZE_HVV_CQSQ; ik++){ HzzLambda_qsq[ic][ik]=100.; HwwLambda_qsq[ic][ik]=100.; } }
835 
836  if (process == TVar::HSMHiggs){ Hzzcoupl[gHIGGS_VV_1][0] = 1.; Hwwcoupl[gHIGGS_VV_1][0] = 1.; }
837  else if (process == TVar::H0_g1prime2){ Hzzcoupl[gHIGGS_VV_1_PRIME2][0] = 1.; Hwwcoupl[gHIGGS_VV_1_PRIME2][0] = 1.; }
838  else if (process == TVar::H0hplus){ Hzzcoupl[gHIGGS_VV_2][0] = 1.; Hwwcoupl[gHIGGS_VV_2][0] = 1.; }
839  else if (process == TVar::H0minus){ Hzzcoupl[gHIGGS_VV_4][0] = 1.; Hwwcoupl[gHIGGS_VV_4][0] = 1.; }
840  else if (process == TVar::H0_Zgsg1prime2){ Hzzcoupl[gHIGGS_ZA_1_PRIME2][0] = 1.; }
841  else if (process == TVar::H0_Zgs){ Hzzcoupl[gHIGGS_ZA_2][0] = 1.; }
842  else if (process == TVar::H0_Zgs_PS){ Hzzcoupl[gHIGGS_ZA_4][0] = 1.; }
843  else if (process == TVar::H0_gsgs){ Hzzcoupl[gHIGGS_AA_2][0] = 1.; }
844  else if (process == TVar::H0_gsgs_PS){ Hzzcoupl[gHIGGS_AA_4][0] = 1.; }
845  else if (process == TVar::SelfDefine_spin0){
846  for (int j=0; j<2; j++){
847  for (int i=0; i<SIZE_HVV; i++){
848  Hzzcoupl[i][j] = (selfDSpinZeroCoupl.Hzzcoupl)[i][j]; Hwwcoupl[i][j] = (selfDSpinZeroCoupl.Hwwcoupl)[i][j];
849  Hzzpcoupl[i][j] = (selfDSpinZeroCoupl.Hzzpcoupl)[i][j]; Hwwpcoupl[i][j] = (selfDSpinZeroCoupl.Hwwpcoupl)[i][j];
850  Hzpzpcoupl[i][j] = (selfDSpinZeroCoupl.Hzpzpcoupl)[i][j]; Hwpwpcoupl[i][j] = (selfDSpinZeroCoupl.Hwpwpcoupl)[i][j];
851  }
852  for (int i=0; i<SIZE_Vpff; i++){
853  Zpffcoupl[i][j] = (selfDVprimeCoupl.Zpffcoupl)[i][j]; Wpffcoupl[i][j] = (selfDVprimeCoupl.Wpffcoupl)[i][j];
854  }
855  }
856  M_Zprime = selfDVprimeCoupl.M_Zprime;
857  Ga_Zprime = selfDVprimeCoupl.Ga_Zprime;
858  M_Wprime = selfDVprimeCoupl.M_Wprime;
859  Ga_Wprime = selfDVprimeCoupl.Ga_Wprime;
860  for (int j=0; j<SIZE_HVV_CQSQ; j++){
861  for (int i=0; i<SIZE_HVV_LAMBDAQSQ; i++){ HzzLambda_qsq[i][j] = (selfDSpinZeroCoupl.HzzLambda_qsq)[i][j]; HwwLambda_qsq[i][j] = (selfDSpinZeroCoupl.HwwLambda_qsq)[i][j]; }
862  HzzCLambda_qsq[j] = (selfDSpinZeroCoupl.HzzCLambda_qsq)[j]; HwwCLambda_qsq[j] = (selfDSpinZeroCoupl.HwwCLambda_qsq)[j];
863  }
865  }
866  SetJHUGenSpinZeroVVCouplings(Hzzcoupl, Hzzpcoupl, Hzpzpcoupl, HzzCLambda_qsq, HzzLambda_qsq, false);
867  SetJHUGenSpinZeroVVCouplings(Hwwcoupl, Hwwpcoupl, Hwpwpcoupl, HwwCLambda_qsq, HwwLambda_qsq, true); // Set the WW couplings regardless of SetJHUGenDistinguishWWCouplings(false/true) because of how JHUGen handles this true flag.
868  SetJHUGenVprimeContactCouplings(Zpffcoupl, Wpffcoupl);
869  SetZprimeMassWidth(M_Zprime, Ga_Zprime);
870  SetWprimeMassWidth(M_Wprime, Ga_Wprime);
871  }
872 
874  if (verbosity >= TVar::DEBUG) MELAout << "TEvtProb::XsecCalc_XJJ: Process " << TVar::ProcessName(process) << " dXsec=" << dXsec << endl;
875  }
876  else if (verbosity>=TVar::ERROR) MELAerr << "TEvtProb::XsecCalc_XJJ: Non-JHUGen vbfMELA MEs are not supported!" << endl;
877 
878  ResetCouplings();
880  if (verbosity>=TVar::DEBUG) MELAout << "End XsecCalc_XJJ" << endl;
881  return dXsec;
882 }
883 
884 // Cross-section calculations for H + 1 jet (only SM for the moment)
886  if (verbosity>=TVar::DEBUG) MELAout << "Begin XsecCalc_XJ" << endl;
887  double dXsec = 0;
888  ResetIORecord();
889  if (!CheckInputPresent()) return dXsec;
890 
891  // Calculate the ME
892  if (matrixElement == TVar::JHUGen){
893  // Not currently supported, but implement anyway
894  double Hggcoupl[SIZE_HGG][2] ={ { 0 } };
895  if (process == TVar::HSMHiggs) Hggcoupl[gHIGGS_GG_2][0] = 1.;
896  else if (process == TVar::H0minus) Hggcoupl[gHIGGS_GG_4][0] = 1.;
897  else if (process == TVar::SelfDefine_spin0){
898  for (int j=0; j<2; j++){
899  for (int i=0; i<SIZE_HGG; i++) Hggcoupl[i][j] = (selfDSpinZeroCoupl.Hggcoupl)[i][j];
900  }
901  }
903 
905  if (verbosity >= TVar::DEBUG) MELAout << "TEvtProb::XsecCalc_XJ: Process " << TVar::ProcessName(process) << " dXsec=" << dXsec << endl;
906  }
907  else if (verbosity>=TVar::ERROR) MELAerr << "TEvtProb::XsecCalc_XJ: Non-JHUGen HJ MEs are not supported!" << endl;
908 
909  ResetCouplings();
911  if (verbosity>=TVar::DEBUG) MELAout << "End XsecCalc_XJ" << endl;
912  return dXsec;
913 }
914 
915 // Cross-section calculations for VH
917  bool includeHiggsDecay
918  ){
919  if (verbosity>=TVar::DEBUG) MELAout << "Begin XsecCalc_VX" << endl;
920  if (matrixElement == TVar::MCFM) return XsecCalc_VVXVV();
921  double dXsec = 0;
922  ResetIORecord();
923  if (!CheckInputPresent()) return dXsec;
924 
925  AllowSeparateWWCouplings(false); // HZZ couplings are used for both in spin-0
926 
927  if (matrixElement == TVar::JHUGen){
928  double Hvvcoupl[SIZE_HVV][2] ={ { 0 } };
929  double HvvLambda_qsq[SIZE_HVV_LAMBDAQSQ][SIZE_HVV_CQSQ] ={ { 0 } };
930  int HvvCLambda_qsq[SIZE_HVV_CQSQ] ={ 0 };
931  double Hvvpcoupl[SIZE_HVV][2] = { { 0 } };
932  double Hvpvpcoupl[SIZE_HVV][2] = { { 0 } };
933  double Zpffcoupl[SIZE_Vpff][2] = { { 0 } };
934  double Wpffcoupl[SIZE_Vpff][2] = { { 0 } };
935  double M_Zprime = -1;
936  double Ga_Zprime = 0;
937  double M_Wprime = -1;
938  double Ga_Wprime = 0;
939 
940  for (int ic=0; ic<SIZE_HVV_LAMBDAQSQ; ic++){ for (int ik=0; ik<SIZE_HVV_CQSQ; ik++) HvvLambda_qsq[ic][ik]=100.; }
941 
942  if (process == TVar::HSMHiggs) Hvvcoupl[gHIGGS_VV_1][0] = 1.;
943  else if (process == TVar::H0_g1prime2) Hvvcoupl[gHIGGS_VV_1_PRIME2][0] = 1.;
944  else if (process == TVar::H0hplus) Hvvcoupl[gHIGGS_VV_2][0] = 1.;
945  else if (process == TVar::H0minus) Hvvcoupl[gHIGGS_VV_4][0] = 1.;
946  else if (process == TVar::H0_Zgsg1prime2) Hvvcoupl[gHIGGS_ZA_1_PRIME2][0] = 1.;
947  else if (process == TVar::H0_Zgs) Hvvcoupl[gHIGGS_ZA_2][0] = 1.;
948  else if (process == TVar::H0_Zgs_PS) Hvvcoupl[gHIGGS_ZA_4][0] = 1.;
949  else if (process == TVar::H0_gsgs) Hvvcoupl[gHIGGS_AA_2][0] = 1.;
950  else if (process == TVar::H0_gsgs_PS) Hvvcoupl[gHIGGS_AA_4][0] = 1.;
951  else if (process == TVar::SelfDefine_spin0){
952  for (int i=0; i<SIZE_HVV; i++){
953  for (int j=0; j<2; j++){
954  Hvvcoupl[i][j] = (selfDSpinZeroCoupl.Hzzcoupl)[i][j];
955 
956  Hvvpcoupl[i][j] = (selfDSpinZeroCoupl.Hzzpcoupl)[i][j];
957  Hvpvpcoupl[i][j] = (selfDSpinZeroCoupl.Hzpzpcoupl)[i][j];
958  }
959  }
960  for (int i=0; i<SIZE_Vpff; i++){
961  for (int j=0; j<2; j++){
962  Zpffcoupl[i][j] = (selfDVprimeCoupl.Zpffcoupl)[i][j];
963  Wpffcoupl[i][j] = (selfDVprimeCoupl.Wpffcoupl)[i][j];
964  }
965  }
966  M_Zprime = selfDVprimeCoupl.M_Zprime;
967  Ga_Zprime = selfDVprimeCoupl.Ga_Zprime;
968  M_Wprime = selfDVprimeCoupl.M_Wprime;
969  Ga_Wprime = selfDVprimeCoupl.Ga_Wprime;
970  for (int j=0; j<SIZE_HVV_CQSQ; j++){
971  for (int i=0; i<SIZE_HVV_LAMBDAQSQ; i++) HvvLambda_qsq[i][j] = (selfDSpinZeroCoupl.HzzLambda_qsq)[i][j];
972  HvvCLambda_qsq[j] = (selfDSpinZeroCoupl.HzzCLambda_qsq)[j];
973  }
974  }
975  SetJHUGenSpinZeroVVCouplings(Hvvcoupl, Hvvpcoupl, Hvpvpcoupl, HvvCLambda_qsq, HvvLambda_qsq, false);
976  SetJHUGenVprimeContactCouplings(Zpffcoupl, Wpffcoupl);
977  SetZprimeMassWidth(M_Zprime, Ga_Zprime);
978  SetWprimeMassWidth(M_Wprime, Ga_Wprime);
979 
980  dXsec = VHiggsMatEl(process, production, matrixElement, &event_scales, &RcdME, EBEAM, includeHiggsDecay, verbosity);
981  if (verbosity >= TVar::DEBUG) MELAout << "TEVtProb::XsecCalc_VX: Process " << TVar::ProcessName(process) << " dXsec=" << dXsec << endl;
982  } // end of JHUGen matrix element calculations
983  else if (verbosity>=TVar::ERROR) MELAerr << "TEVtProb::XsecCalc_VX: Non-JHUGen VH MEs are not supported!" << endl;
984 
985  ResetCouplings();
987  if (verbosity>=TVar::DEBUG) MELAout << "End XsecCalc_VX" << endl;
988  return dXsec;
989 }
990 
991 // Cross-section calculations for ttH or bbH
993  int topProcess, int topDecay
994  ){
995  if (verbosity>=TVar::DEBUG) MELAout << "Begin XsecCalc_TTX" << endl;
996  double dXsec = 0;
997  ResetIORecord();
998  if (!CheckInputPresent()) return dXsec;
999 
1000  if (matrixElement == TVar::JHUGen){
1001  double Hqqcoupl[SIZE_HQQ][2]={ { 0 } };
1002  if (process == TVar::HSMHiggs) Hqqcoupl[gHIGGS_KAPPA][0] = 1.;
1003  else if (process == TVar::H0minus) Hqqcoupl[gHIGGS_KAPPA_TILDE][0] = 1.;
1004  else if (process == TVar::SelfDefine_spin0){
1005  for (int i=0; i<SIZE_HQQ; i++){
1006  for (int j=0; j<2; j++){
1007  if ((selfDSpinZeroCoupl.Httcoupl)[i][j]!=0. && production == TVar::ttH) Hqqcoupl[i][j] = (selfDSpinZeroCoupl.Httcoupl)[i][j];
1008  else if ((selfDSpinZeroCoupl.Hbbcoupl)[i][j]!=0. && production == TVar::bbH) Hqqcoupl[i][j] = (selfDSpinZeroCoupl.Hbbcoupl)[i][j];
1009  else Hqqcoupl[i][j] = (selfDSpinZeroCoupl.Hqqcoupl)[i][j];
1010  }
1011  }
1012  }
1013  SetJHUGenSpinZeroQQCouplings(Hqqcoupl);
1014 
1015  if (production == TVar::ttH) dXsec = TTHiggsMatEl(process, production, matrixElement, &event_scales, &RcdME, EBEAM, topDecay, topProcess, verbosity);
1017  else if (verbosity >= TVar::ERROR) MELAout << "TEvtProb::XsecCalc_TTX only supports ttH and bbH productions for the moment." << endl;
1018  if (verbosity >= TVar::DEBUG) MELAout << "TEvtProb::XsecCalc_TTX: Process " << TVar::ProcessName(process) << " dXsec=" << dXsec << endl;
1019  }
1020  else if (verbosity>=TVar::ERROR) MELAerr << "TEvtProb::XsecCalc_TTX: Non-JHUGen ttH MEs are not supported!" << endl;
1021 
1022  ResetCouplings();
1024  if (verbosity>=TVar::DEBUG) MELAout << "End XsecCalc_TTX" << endl;
1025  return dXsec;
1026 }
1027 
1030  ){
1031  if (!CheckInputPresent()) return 0.;
1032  return TUtil::ResonancePropagator(melaCand->m(), scheme);
1033 }
1034 
1035 
1037  if (_hmass>=0. && _hwidth>0.){
1038  for (int vv = 0; vv < SIZE_HGG; vv++){
1039  if (
1040  (selfDSpinZeroCoupl.Hggcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.Hggcoupl)[vv][0] != 0
1041  ||
1042  (selfDSpinZeroCoupl.Hg4g4coupl)[vv][1] != 0 || (selfDSpinZeroCoupl.Hg4g4coupl)[vv][0] != 0
1043  ){
1044  return true;
1045  }
1046  }
1047  }
1048  if (_h2mass>=0. && _h2width>0.){
1049  for (int vv = 0; vv < SIZE_HGG; vv++){
1050  if (
1051  (selfDSpinZeroCoupl.H2ggcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.H2ggcoupl)[vv][0] != 0
1052  ||
1053  (selfDSpinZeroCoupl.H2g4g4coupl)[vv][1] != 0 || (selfDSpinZeroCoupl.H2g4g4coupl)[vv][0] != 0
1054  ){
1055  return true;
1056  }
1057  }
1058  }
1059  return false;
1060 }
1062  if (_hmass>=0. && _hwidth>0.){
1063  for (int vv = 0; vv < SIZE_HQQ; vv++){
1064  if (
1065  (selfDSpinZeroCoupl.Hqqcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.Hqqcoupl)[vv][0] != 0
1066  ){
1067  return true;
1068  }
1069  }
1070  }
1071  if (_h2mass>=0. && _h2width>0.){
1072  for (int vv = 0; vv < SIZE_HQQ; vv++){
1073  if (
1074  (selfDSpinZeroCoupl.H2qqcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.H2qqcoupl)[vv][0] != 0
1075  ){
1076  return true;
1077  }
1078  }
1079  }
1080  return false;
1081 }
1083  if (_hmass>=0. && _hwidth>0.){
1084  for (int vv = 0; vv < SIZE_HQQ; vv++){
1085  if (
1086  (selfDSpinZeroCoupl.Httcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.Httcoupl)[vv][0] != 0
1087  ||
1088  (selfDSpinZeroCoupl.Ht4t4coupl)[vv][1] != 0 || (selfDSpinZeroCoupl.Ht4t4coupl)[vv][0] != 0
1089  ){
1090  return true;
1091  }
1092  }
1093  }
1094  if (_h2mass>=0. && _h2width>0.){
1095  for (int vv = 0; vv < SIZE_HQQ; vv++){
1096  if (
1097  (selfDSpinZeroCoupl.H2ttcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.H2ttcoupl)[vv][0] != 0
1098  ||
1099  (selfDSpinZeroCoupl.H2t4t4coupl)[vv][1] != 0 || (selfDSpinZeroCoupl.H2t4t4coupl)[vv][0] != 0
1100  ){
1101  return true;
1102  }
1103  }
1104  }
1105  return false;
1106 }
1108  if (_hmass>=0. && _hwidth>0.){
1109  for (int vv = 0; vv < SIZE_HQQ; vv++){
1110  if (
1111  (selfDSpinZeroCoupl.Hbbcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.Hbbcoupl)[vv][0] != 0
1112  ||
1113  (selfDSpinZeroCoupl.Hb4b4coupl)[vv][1] != 0 || (selfDSpinZeroCoupl.Hb4b4coupl)[vv][0] != 0
1114  ){
1115  return true;
1116  }
1117  }
1118  }
1119  if (_h2mass>=0. && _h2width>0.){
1120  for (int vv = 0; vv < SIZE_HQQ; vv++){
1121  if (
1122  (selfDSpinZeroCoupl.H2bbcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.H2bbcoupl)[vv][0] != 0
1123  ||
1124  (selfDSpinZeroCoupl.H2b4b4coupl)[vv][1] != 0 || (selfDSpinZeroCoupl.H2b4b4coupl)[vv][0] != 0
1125  ){
1126  return true;
1127  }
1128  }
1129  }
1130  return false;
1131 }
1133  if (_hmass>=0. && _hwidth>0.){
1134  for (int vv = 0; vv < SIZE_HVV; vv++){
1135  if (
1136  (selfDSpinZeroCoupl.Hzzcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.Hzzcoupl)[vv][0] != 0
1137  ||
1138  (selfDSpinZeroCoupl.Hwwcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.Hwwcoupl)[vv][0] != 0
1139  ){
1140  return true;
1141  }
1142  } // No need to check c_q**2. If these are 0, z_q**2 do not have any effect.
1143  }
1144  if (_h2mass>=0. && _h2width>0.){
1145  for (int vv = 0; vv < SIZE_HVV; vv++){
1146  if (
1147  (selfDSpinZeroCoupl.H2zzcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.H2zzcoupl)[vv][0] != 0
1148  ||
1149  (selfDSpinZeroCoupl.H2wwcoupl)[vv][1] != 0 || (selfDSpinZeroCoupl.H2wwcoupl)[vv][0] != 0
1150  ){
1151  return true;
1152  }
1153  } // No need to check c_q**2. If these are 0, z_q**2 do not have any effect.
1154  }
1155  return false;
1156 }
1158  for (int vv = 0; vv < SIZE_ATQGC; vv++){
1159  if (
1160  (selfDaTQGCCoupl.aTQGCcoupl)[vv][1] != 0 || (selfDaTQGCCoupl.aTQGCcoupl)[vv][0] != 0
1161  ){
1162  return true;
1163  }
1164  }
1165  return false;
1166 }
1168  for (int vv = 0; vv < SIZE_AZff; vv++){
1169  if (
1170  (selfDAZffCoupl.AZffcoupl)[vv][1] != 0 || (selfDAZffCoupl.AZffcoupl)[vv][0] != 0
1171  ){
1172  return true;
1173  }
1174  }
1175  return false;
1176 }
TVar::H1plus
@ H1plus
Definition: TVar.hh:148
SpinZeroCouplings::HzzCLambda_qsq
int HzzCLambda_qsq[SIZE_HVV_CQSQ]
Definition: TCouplings.hh:40
TVar::ERROR
@ ERROR
Definition: TVar.hh:49
MelaIO::getRef
MelaIO * getRef()
Definition: MelaIO.h:51
TEvtProb::XsecCalc_TTX
double XsecCalc_TTX(int topProcess, int topDecay)
Definition: TEvtProb.cc:992
TEvtProb::particleList
std::vector< MELAParticle * > particleList
Definition: TEvtProb.hh:165
SpinZeroCouplings::Hwpwpcoupl
double Hwpwpcoupl[SIZE_HVV][2]
Definition: TCouplings.hh:61
TEvtProb::leptonInterf
TVar::LeptonInterference leptonInterf
Definition: TEvtProb.hh:146
TVar::JJVBF
@ JJVBF
Definition: TVar.hh:72
TUtil::ResonancePropagator
double ResonancePropagator(double const &sqrts, TVar::ResonancePropagatorScheme scheme)
Definition: TUtil.cc:8194
TEvtProb::CheckInputPresent
bool CheckInputPresent()
Definition: TEvtProb.cc:396
TEvtProb::RcdME
MelaIO RcdME
Definition: TEvtProb.hh:162
aTQGCCouplings
Definition: TCouplings.hh:131
TUtil::SetJHUGenSpinZeroGGCouplings
void SetJHUGenSpinZeroGGCouplings(double Hggcoupl[SIZE_HGG][2])
Definition: TUtil.cc:4225
TVar::Had_ZH_S
@ Had_ZH_S
Definition: TVar.hh:86
TEvtProb::SetCandidateDecayMode
void SetCandidateDecayMode(TVar::CandidateDecayMode mode)
Definition: TEvtProb.cc:209
TEvtProb::GetHiggsWidthAtPoleMass
double GetHiggsWidthAtPoleMass(double mass)
Definition: TEvtProb.cc:378
MelaIO
Definition: MelaIO.h:8
TVar::LeptonInterference
LeptonInterference
Definition: TVar.hh:105
SIZE_GVV
@ SIZE_GVV
Definition: raw_couplings.txt:158
TEvtProb::ResetRenFacScaleMode
void ResetRenFacScaleMode()
Definition: TEvtProb.cc:318
TVar::H0_Zgs_PS
@ H0_Zgs_PS
Definition: TVar.hh:131
TEvtProb::GetNCandidates
int GetNCandidates()
Definition: TEvtProb.cc:391
energy_
struct @42 energy_
TVar::VerbosityLevel
VerbosityLevel
Definition: TVar.hh:47
TEvtProb::GetSelfDaTQGCCouplings
aTQGCCouplings * GetSelfDaTQGCCouplings()
Definition: TEvtProb.cc:367
TEvtProb::GetSelfDVprimeCouplings
VprimeCouplings * GetSelfDVprimeCouplings()
Definition: TEvtProb.cc:366
AZffCouplings::getRef
AZffCouplings * getRef()
Definition: TCouplings.cc:486
SpinZeroCouplings::H2zzcoupl
double H2zzcoupl[SIZE_HVV][2]
Definition: TCouplings.hh:51
masses_mcfm_
#define masses_mcfm_
Definition: TMCFM.hh:130
gHIGGS_KAPPA_TILDE
@ gHIGGS_KAPPA_TILDE
Definition: raw_couplings.txt:3
gGRAVITON_VV_10
@ gGRAVITON_VV_10
Definition: raw_couplings.txt:144
TEvtProb::verbosity
TVar::VerbosityLevel verbosity
Definition: TEvtProb.hh:145
TUtil::BBHiggsMatEl
double BBHiggsMatEl(const TVar::Process &process, const TVar::Production &production, const TVar::MatrixElement &matrixElement, TVar::event_scales_type *event_scales, MelaIO *RcdME, const double &EBEAM, int botProcess, TVar::VerbosityLevel verbosity)
Definition: TUtil.cc:7827
TEvtProb::candList
std::vector< MELACandidate * > candList
Definition: TEvtProb.hh:166
TEvtProb::XsecCalcXJ
double XsecCalcXJ()
Definition: TEvtProb.cc:885
SIZE_HVV_CQSQ
@ SIZE_HVV_CQSQ
Definition: raw_couplings.txt:74
TVar::JJEWQCD
@ JJEWQCD
Definition: TVar.hh:74
gGRAVITON_GG_3
@ gGRAVITON_GG_3
Definition: raw_couplings.txt:127
TVar::H0minus
@ H0minus
Definition: TVar.hh:128
TEvtProb::CheckSelfDCouplings_Hgg
bool CheckSelfDCouplings_Hgg()
Definition: TEvtProb.cc:1036
TVar::CandidateDecay_ZZ
@ CandidateDecay_ZZ
Definition: TVar.hh:41
MelaIO::reset
void reset()
Definition: MelaIO.h:31
TEvtProb::SetHiggsMass
void SetHiggsMass(double mass, double wHiggs=-1., int whichResonance=-1)
Definition: TEvtProb.cc:221
TUtil::SetJHUGenHiggsMassWidth
void SetJHUGenHiggsMassWidth(double MReso, double GaReso)
Definition: TUtil.cc:3402
VprimeCouplings::M_Wprime
double M_Wprime
Definition: TCouplings.hh:127
TUtil::HJJMatEl
double HJJMatEl(const TVar::Process &process, const TVar::Production &production, const TVar::MatrixElement &matrixElement, TVar::event_scales_type *event_scales, MelaIO *RcdME, const double &EBEAM, TVar::VerbosityLevel verbosity)
Definition: TUtil.cc:5383
TUtil::SetMCFMAZffCouplings
void SetMCFMAZffCouplings(bool useBSM, AZffCouplings const *Zcouplings)
Definition: TUtil.cc:4185
SpinOneCouplings::Zqqcoupl
double Zqqcoupl[SIZE_ZQQ][2]
Definition: TCouplings.hh:82
TVar::event_scales_type
Definition: TVar.hh:259
TVar::INFO
@ INFO
Definition: TVar.hh:50
TVar::Lep_WH_S
@ Lep_WH_S
Definition: TVar.hh:89
SIZE_GGG
@ SIZE_GGG
Definition: raw_couplings.txt:131
TEvtProb::SetRcdCandPtr
void SetRcdCandPtr()
Definition: TEvtProb.cc:305
aTQGCCouplings::aTQGCcoupl
double aTQGCcoupl[SIZE_ATQGC][2]
Definition: TCouplings.hh:143
VprimeCouplings::Ga_Wprime
double Ga_Wprime
Definition: TCouplings.hh:128
anonymous_namespace{TCouplingsBase.hh}::gHIGGS_GG_2
@ gHIGGS_GG_2
Definition: TCouplingsBase.hh:36
VprimeCouplings::M_Zprime
double M_Zprime
Definition: TCouplings.hh:125
aTQGCCouplings::reset
void reset()
Definition: TCouplings.cc:451
AZffCouplings
Definition: TCouplings.hh:146
SpinZeroCouplings::Ht4t4coupl
double Ht4t4coupl[SIZE_HQQ][2]
Definition: TCouplings.hh:33
TEvtProb::GetTopCandidates
std::vector< MELATopCandidate_t * > * GetTopCandidates()
Definition: TEvtProb.cc:392
TVar::ProductionName
TString ProductionName(TVar::Production temp)
Definition: TVar.cc:64
TEvtProb::ResetCouplings
void ResetCouplings()
Definition: TEvtProb.cc:335
MELAHXSWidth
Definition: MELAHXSWidth.h:10
TEvtProb::GetSelfDSpinOneCouplings
SpinOneCouplings * GetSelfDSpinOneCouplings()
Definition: TEvtProb.cc:364
TEvtProb::GetPrimaryWidth
double GetPrimaryWidth(int ipart)
Definition: TEvtProb.cc:374
VprimeCouplings::Ga_Zprime
double Ga_Zprime
Definition: TCouplings.hh:126
TUtil::SetAlphaS
void SetAlphaS(double &Q_ren, double &Q_fac, double multiplier_ren, double multiplier_fac, int mynloop, int mynflav, std::string mypartons)
TEvtProb::EBEAM
double EBEAM
Definition: TEvtProb.hh:152
TEvtProb::XsecCalc_XVV
double XsecCalc_XVV()
Definition: TEvtProb.cc:414
TVar::CandidateDecayMode
CandidateDecayMode
Definition: TVar.hh:37
TVar::H2_g10
@ H2_g10
Definition: TVar.hh:160
TEvtProb::_h2width
double _h2width
Definition: TEvtProb.hh:151
TEvtProb::CheckSelfDCouplings_Htt
bool CheckSelfDCouplings_Htt()
Definition: TEvtProb.cc:1082
TVar::SelfDefine_spin2
@ SelfDefine_spin2
Definition: TVar.hh:181
TEvtProb::GetPrimaryHiggsMass
double GetPrimaryHiggsMass()
Definition: TEvtProb.cc:369
SIZE_ZQQ
@ SIZE_ZQQ
Definition: raw_couplings.txt:107
TVar::bkgZJets
@ bkgZJets
Definition: TVar.hh:164
TEvtProb::ResetMCFM_EWKParameters
void ResetMCFM_EWKParameters(double ext_Gf, double ext_aemmz, double ext_mW, double ext_mZ, double ext_xW, int ext_ewscheme=3)
Definition: TEvtProb.cc:334
TEvtProb::ResetInputEvent
void ResetInputEvent()
Definition: TEvtProb.cc:345
TEvtProb::SetWprimeMassWidth
void SetWprimeMassWidth(double inmass, double inwidth)
Definition: TEvtProb.cc:321
TVar::ZZINDEPENDENT
@ ZZINDEPENDENT
Definition: TVar.hh:65
TUtil::SetMass
void SetMass(double inmass, int ipart)
Definition: TUtil.cc:1447
PDGHelpers::isAHiggs
bool isAHiggs(const int id)
Definition: PDGHelpers.cc:84
TVar::Process
Process
Definition: TVar.hh:124
TVar::EventScaleScheme
EventScaleScheme
Definition: TVar.hh:195
TVar::JJQCD
@ JJQCD
Definition: TVar.hh:71
TUtil::SetJHUGenVprimeContactCouplings
void SetJHUGenVprimeContactCouplings(double Zpffcoupl[SIZE_Vpff][2], double Wpffcoupl[SIZE_Vpff][2])
Definition: TUtil.cc:4231
TEvtProb::_h2mass
double _h2mass
Definition: TEvtProb.hh:150
SpinZeroCouplings::H2b4b4coupl
double H2b4b4coupl[SIZE_HQQ][2]
Definition: TCouplings.hh:49
TEvtProb::PDFMember_
int PDFMember_
Definition: TEvtProb.hh:141
TEvtProb::TEvtProb
TEvtProb()
Definition: TEvtProb.hh:53
TVar::ZZQQB
@ ZZQQB
Definition: TVar.hh:63
SpinZeroCouplings::HwwLambda_qsq
double HwwLambda_qsq[SIZE_HVV_LAMBDAQSQ][SIZE_HVV_CQSQ]
Definition: TCouplings.hh:39
TVar::H1minus
@ H1minus
Definition: TVar.hh:147
VprimeCouplings::Zpffcoupl
double Zpffcoupl[SIZE_Vpff][2]
Definition: TCouplings.hh:122
gHIGGS_AA_2
@ gHIGGS_AA_2
Definition: raw_couplings.txt:18
TEvtProb::InitializeMCFM
void InitializeMCFM()
Definition: TEvtProb.cc:83
SpinTwoCouplings::Gvpvpcoupl
double Gvpvpcoupl[SIZE_GVV][2]
Definition: TCouplings.hh:103
TUtil::SetMCFMSpinZeroCouplings
void SetMCFMSpinZeroCouplings(bool useBSM, SpinZeroCouplings const *Hcouplings, bool forceZZ)
Definition: TUtil.cc:3501
spinzerohiggs_anomcoupl_
struct @34 spinzerohiggs_anomcoupl_
gGRAVITON_VV_1
@ gGRAVITON_VV_1
Definition: raw_couplings.txt:135
TVar::DEBUG_VERBOSE
@ DEBUG_VERBOSE
Definition: TVar.hh:52
nnpdfdriver_
void nnpdfdriver_(char *gridfilename, int *lenfilename)
TUtil::SetJHUGenSpinOneCouplings
void SetJHUGenSpinOneCouplings(double Zqqcoupl[SIZE_ZQQ][2], double Zvvcoupl[SIZE_ZVV][2])
Definition: TUtil.cc:4227
TEvtProb::InitializeJHUGen
void InitializeJHUGen(const char *pathtoPDFSet, int PDFMember)
Definition: TEvtProb.cc:143
TVar::MADGRAPH
@ MADGRAPH
Definition: TVar.hh:59
TEvtProb::AppendTopCandidate
void AppendTopCandidate(SimpleParticleCollection_t *TopDaughters)
Definition: TEvtProb.cc:294
SpinOneCouplings::Zvvcoupl
double Zvvcoupl[SIZE_ZVV][2]
Definition: TCouplings.hh:81
TVar::H2_g7
@ H2_g7
Definition: TVar.hh:157
TEvtProb::CheckSelfDCouplings_Hbb
bool CheckSelfDCouplings_Hbb()
Definition: TEvtProb.cc:1107
SIZE_ZVV
@ SIZE_ZVV
Definition: raw_couplings.txt:114
TVar::ZZQQB_TU
@ ZZQQB_TU
Definition: TVar.hh:92
SpinZeroCouplings::separateWWZZcouplings
bool separateWWZZcouplings
Definition: TCouplings.hh:65
SpinZeroCouplings::Httcoupl
double Httcoupl[SIZE_HQQ][2]
Definition: TCouplings.hh:30
TEvtProb.hh
gHIGGS_ZA_2
@ gHIGGS_ZA_2
Definition: raw_couplings.txt:14
TUtil::SetDecayWidth
void SetDecayWidth(double inwidth, int ipart)
Definition: TUtil.cc:1497
TEvtProb::selfDSpinZeroCoupl
SpinZeroCouplings selfDSpinZeroCoupl
Definition: TEvtProb.hh:156
SpinZeroCouplings::Hzzpcoupl
double Hzzpcoupl[SIZE_HVV][2]
Definition: TCouplings.hh:58
TEvtProb::selfDVprimeCoupl
VprimeCouplings selfDVprimeCoupl
Definition: TEvtProb.hh:159
TVar::ZZGG
@ ZZGG
Definition: TVar.hh:62
TVar::ProcessName
TString ProcessName(TVar::Process temp)
Definition: TVar.cc:6
gGRAVITON_VV_9
@ gGRAVITON_VV_9
Definition: raw_couplings.txt:143
TVar::H0_Zgsg1prime2
@ H0_Zgsg1prime2
Definition: TVar.hh:129
TEvtProb::GetRenFacScaleMode
const TVar::event_scales_type & GetRenFacScaleMode() const
Definition: TEvtProb.cc:216
gGRAVITON_QQ_LEFT
@ gGRAVITON_QQ_LEFT
Definition: raw_couplings.txt:118
TEvtProb::event_scales
TVar::event_scales_type event_scales
Definition: TEvtProb.hh:154
TEvtProb::SetRenFacScaleMode
void SetRenFacScaleMode(TVar::EventScaleScheme renormalizationSch, TVar::EventScaleScheme factorizationSch, double ren_sf, double fac_sf)
Definition: TEvtProb.cc:210
madMela::widths_
struct madMela::@1 widths_
MELAStreamHelpers::MELAout
MELAOutputStreamer MELAout
SpinZeroCouplings::Hg4g4coupl
double Hg4g4coupl[SIZE_HGG][2]
Definition: TCouplings.hh:32
qlinit_
void qlinit_()
TEvtProb::myCSW_
MELAHXSWidth myCSW_
Definition: TEvtProb.hh:153
TVar::DefaultLeptonInterf
@ DefaultLeptonInterf
Definition: TVar.hh:106
TEvtProb::SetLeptonInterf
void SetLeptonInterf(TVar::LeptonInterference tmp)
Definition: TEvtProb.cc:208
MELAParticle::m
double m() const
Definition: MELAParticle.h:66
TVar::H2_g5
@ H2_g5
Definition: TVar.hh:154
TEvtProb::GetHXSWidthEstimator
MELAHXSWidth const * GetHXSWidthEstimator() const
Definition: TEvtProb.cc:362
gGRAVITON_GG_5
@ gGRAVITON_GG_5
Definition: raw_couplings.txt:129
TUtil::SetJHUGenSpinTwoCouplings
void SetJHUGenSpinTwoCouplings(double Gacoupl[SIZE_GGG][2], double Gvvcoupl[SIZE_GVV][2], double Gvvpcoupl[SIZE_GVV][2], double Gvpvpcoupl[SIZE_GVV][2], double qLeftRightcoupl[SIZE_GQQ][2])
Definition: TUtil.cc:4228
SIZE_HQQ
@ SIZE_HQQ
Definition: raw_couplings.txt:5
TEvtProb::production
TVar::Production production
Definition: TEvtProb.hh:144
TVar::H0_g1prime2
@ H0_g1prime2
Definition: TVar.hh:126
TUtil::ConvertVectorFormat
MELACandidate * ConvertVectorFormat(SimpleParticleCollection_t *pDaughters, SimpleParticleCollection_t *pAssociated, SimpleParticleCollection_t *pMothers, bool isGen, std::vector< MELAParticle * > *particleList, std::vector< MELACandidate * > *candList)
Definition: TUtil.cc:8675
TEvtProb::SetCurrentCandidateFromIndex
void SetCurrentCandidateFromIndex(unsigned int icand)
Definition: TEvtProb.cc:306
TEvtProb::melaCand
MELACandidate * melaCand
Definition: TEvtProb.hh:164
TVar::H2_g3
@ H2_g3
Definition: TVar.hh:152
gGRAVITON_VV_2
@ gGRAVITON_VV_2
Definition: raw_couplings.txt:136
qlfirst_
struct @11 qlfirst_
SpinZeroCouplings::Hzpzpcoupl
double Hzpzpcoupl[SIZE_HVV][2]
Definition: TCouplings.hh:59
anonymous_namespace{TCouplingsBase.hh}::SIZE_HGG
@ SIZE_HGG
Definition: TCouplingsBase.hh:40
SpinTwoCouplings::getRef
SpinTwoCouplings * getRef()
Definition: TCouplings.cc:349
TUtil::SetJHUGenSpinZeroVVCouplings
void SetJHUGenSpinZeroVVCouplings(double Hvvcoupl[SIZE_HVV][2], double Hvvpcoupl[SIZE_HVV][2], double Hvpvpcoupl[SIZE_HVV][2], int Hvvcoupl_cqsq[SIZE_HVV_CQSQ], double HvvLambda_qsq[SIZE_HVV_LAMBDAQSQ][SIZE_HVV_CQSQ], bool useWWcoupl)
Definition: TUtil.cc:4219
MELAHXSWidth::HiggsWidth
double HiggsWidth(double mH) const
Definition: MELAHXSWidth.cc:72
TVar::H0_gsgs_PS
@ H0_gsgs_PS
Definition: TVar.hh:133
TEvtProb
Definition: TEvtProb.hh:48
TUtil::SetJHUGenDistinguishWWCouplings
void SetJHUGenDistinguishWWCouplings(bool doAllow)
Definition: TUtil.cc:3408
MadMela.h
This is the code that interfaces with the generated Madgraph matrix elements in fortran for specified...
TEvtProb::_hwidth
double _hwidth
Definition: TEvtProb.hh:149
SpinOneCouplings
Definition: TCouplings.hh:68
TEvtProb::_hmass
double _hmass
Definition: TEvtProb.hh:148
TVar::HSMHiggs
@ HSMHiggs
Definition: TVar.hh:125
VprimeCouplings::getRef
VprimeCouplings * getRef()
Definition: TCouplings.cc:417
TEvtProb::SetInputEvent
void SetInputEvent(SimpleParticleCollection_t *pDaughters, SimpleParticleCollection_t *pAssociated=0, SimpleParticleCollection_t *pMothers=0, bool isGen=false)
Definition: TEvtProb.cc:279
TVar::H2_g2
@ H2_g2
Definition: TVar.hh:151
TUtil::SetJHUGenAZffCouplings
void SetJHUGenAZffCouplings(bool needAZff, double AZffcoupl[SIZE_AZff][2])
Definition: TUtil.cc:4234
TEvtProb::matrixElement
TVar::MatrixElement matrixElement
Definition: TEvtProb.hh:143
TEvtProb::selfDAZffCoupl
AZffCouplings selfDAZffCoupl
Definition: TEvtProb.hh:161
TVar::Lep_WH_TU
@ Lep_WH_TU
Definition: TVar.hh:100
mcfm_init_
void mcfm_init_(char *inputfile, char *workdir)
SpinZeroCouplings::Hbbcoupl
double Hbbcoupl[SIZE_HQQ][2]
Definition: TCouplings.hh:31
AZffCouplings::AZffcoupl
double AZffcoupl[SIZE_AZff][2]
Definition: TCouplings.hh:158
TVar::H2_g9
@ H2_g9
Definition: TVar.hh:159
SpinZeroCouplings::reset
void reset()
Definition: TCouplings.cc:17
TEvtProb::XsecCalc_VVXVV
double XsecCalc_VVXVV()
Definition: TEvtProb.cc:746
TEvtProb::CheckSelfDCouplings_AZff
bool CheckSelfDCouplings_AZff()
Definition: TEvtProb.cc:1167
TEvtProb::GetSelfDSpinTwoCouplings
SpinTwoCouplings * GetSelfDSpinTwoCouplings()
Definition: TEvtProb.cc:365
SpinZeroCouplings::Hqqcoupl
double Hqqcoupl[SIZE_HQQ][2]
Definition: TCouplings.hh:29
TEvtProb::Build
void Build()
Definition: TEvtProb.cc:52
TEvtProb::CheckSelfDCouplings_HVV
bool CheckSelfDCouplings_HVV()
Definition: TEvtProb.cc:1132
TVar::H0_gsgs
@ H0_gsgs
Definition: TVar.hh:132
gHIGGS_VV_1_PRIME2
@ gHIGGS_VV_1_PRIME2
Definition: raw_couplings.txt:23
gHIGGS_VV_4
@ gHIGGS_VV_4
Definition: raw_couplings.txt:12
TUtil::GetDecayWidth
double GetDecayWidth(int ipart)
Definition: TUtil.cc:1619
SpinTwoCouplings::reset
void reset()
Definition: TCouplings.cc:325
aTQGCCouplings::getRef
aTQGCCouplings * getRef()
Definition: TCouplings.cc:461
TEvtProb::selfDSpinOneCoupl
SpinOneCouplings selfDSpinOneCoupl
Definition: TEvtProb.hh:157
gGRAVITON_GG_4
@ gGRAVITON_GG_4
Definition: raw_couplings.txt:128
TEvtProb::CrossInitialize
void CrossInitialize()
Definition: TEvtProb.cc:150
TEvtProb::XsecCalcXJJ
double XsecCalcXJJ()
Definition: TEvtProb.cc:796
gGRAVITON_VV_4
@ gGRAVITON_VV_4
Definition: raw_couplings.txt:138
TVar::Had_ZH_TU
@ Had_ZH_TU
Definition: TVar.hh:97
gGRAVITON_VV_5
@ gGRAVITON_VV_5
Definition: raw_couplings.txt:139
TVar::MCFM
@ MCFM
Definition: TVar.hh:56
TVar::Lep_ZH_S
@ Lep_ZH_S
Definition: TVar.hh:88
SIZE_Vpff
@ SIZE_Vpff
Definition: raw_couplings.txt:100
MELAParticle
Definition: MELAParticle.h:13
SpinZeroCouplings::Hzzcoupl
double Hzzcoupl[SIZE_HVV][2]
Definition: TCouplings.hh:36
TEvtProb::GetIORecord
MelaIO * GetIORecord()
Definition: TEvtProb.cc:382
TVar::JJEW_S
@ JJEW_S
Definition: TVar.hh:84
SpinZeroCouplings::H2wwcoupl
double H2wwcoupl[SIZE_HVV][2]
Definition: TCouplings.hh:52
TUtil::SetEwkCouplingParameters
void SetEwkCouplingParameters(double ext_Gf, double ext_aemmz, double ext_mW, double ext_mZ, double ext_xW, int ext_ewscheme)
Definition: TUtil.cc:1388
VprimeCouplings::Wpffcoupl
double Wpffcoupl[SIZE_Vpff][2]
Definition: TCouplings.hh:123
TEvtProb::ResetMass
void ResetMass(double inmass, int ipart)
Definition: TEvtProb.cc:319
TEvtProb::SetProcess
void SetProcess(TVar::Process proc, TVar::MatrixElement me, TVar::Production prod)
Definition: TEvtProb.cc:193
SpinZeroCouplings::Hwwpcoupl
double Hwwpcoupl[SIZE_HVV][2]
Definition: TCouplings.hh:60
TEvtProb::selfDSpinTwoCoupl
SpinTwoCouplings selfDSpinTwoCoupl
Definition: TEvtProb.hh:158
PDGHelpers::setCandidateDecayMode
void setCandidateDecayMode(TVar::CandidateDecayMode mode)
Definition: PDGHelpers.cc:232
MELACandidate::addAssociatedTop
void addAssociatedTop(MELATopCandidate_t *myParticle)
Definition: MELACandidate.cc:619
TVar::MatrixElement
MatrixElement
Definition: TVar.hh:55
TVar::event_scales_type::factorizationScheme
TVar::EventScaleScheme factorizationScheme
Definition: TVar.hh:261
SIZE_ATQGC
@ SIZE_ATQGC
Definition: raw_couplings.txt:176
TUtil::SetMadgraphSpinZeroCouplings
void SetMadgraphSpinZeroCouplings(SpinZeroCouplings const *Hcouplings)
Definition: TUtil.cc:3415
SpinZeroCouplings::allow_WWZZSeparation
void allow_WWZZSeparation(bool doAllow=true)
Definition: TCouplings.cc:16
SpinZeroCouplings::HzzLambda_qsq
double HzzLambda_qsq[SIZE_HVV_LAMBDAQSQ][SIZE_HVV_CQSQ]
Definition: TCouplings.hh:38
SpinZeroCouplings::getRef
SpinZeroCouplings * getRef()
Definition: TCouplings.cc:106
TVar::ZZQQB_STU
@ ZZQQB_STU
Definition: TVar.hh:64
TEvtProb::pathtoPDFSet_
const char * pathtoPDFSet_
Definition: TEvtProb.hh:140
TEvtProb::GetPrimaryMass
double GetPrimaryMass(int ipart)
Definition: TEvtProb.cc:370
TVar::JJVBF_TU
@ JJVBF_TU
Definition: TVar.hh:94
TVar::event_scales_type::fac_scale_factor
double fac_scale_factor
Definition: TVar.hh:263
TVar::H2_g1
@ H2_g1
Definition: TVar.hh:150
TEvtProb::GetCurrentCandidateIndex
int GetCurrentCandidateIndex()
Definition: TEvtProb.cc:384
SpinZeroCouplings::Hwwcoupl
double Hwwcoupl[SIZE_HVV][2]
Definition: TCouplings.hh:37
TEvtProb::SetVerbosity
void SetVerbosity(TVar::VerbosityLevel tmp)
Definition: TEvtProb.cc:207
gZPRIME_QQ_RIGHT
@ gZPRIME_QQ_RIGHT
Definition: raw_couplings.txt:105
TVar::JHUGen
@ JHUGen
Definition: TVar.hh:57
gHIGGS_AA_4
@ gHIGGS_AA_4
Definition: raw_couplings.txt:20
gGRAVITON_VV_3
@ gGRAVITON_VV_3
Definition: raw_couplings.txt:137
TEvtProb::Set_LHAgrid
void Set_LHAgrid(const char *path, int pdfmember=0)
Definition: TEvtProb.cc:186
SIZE_HVV_LAMBDAQSQ
@ SIZE_HVV_LAMBDAQSQ
Definition: raw_couplings.txt:66
TVar::Had_ZH
@ Had_ZH
Definition: TVar.hh:75
TVar::H2_g1g5
@ H2_g1g5
Definition: TVar.hh:155
TVar::H2_g8
@ H2_g8
Definition: TVar.hh:158
TUtil::ConvertThreeBodyDecayCandidate
MELAThreeBodyDecayCandidate * ConvertThreeBodyDecayCandidate(SimpleParticleCollection_t *tbdDaughters, std::vector< MELAParticle * > *particleList, std::vector< MELAThreeBodyDecayCandidate * > *tbdCandList)
Definition: TUtil.cc:8819
SpinZeroCouplings::H2g4g4coupl
double H2g4g4coupl[SIZE_HGG][2]
Definition: TCouplings.hh:47
TUtil::GetMass
double GetMass(int ipart)
Definition: TUtil.cc:1582
TEvtProb::selfDaTQGCCoupl
aTQGCCouplings selfDaTQGCCoupl
Definition: TEvtProb.hh:160
MELAStreamHelpers::MELAerr
MELAOutputStreamer MELAerr
gZPRIME_QQ_LEFT
@ gZPRIME_QQ_LEFT
Definition: raw_couplings.txt:104
TUtil::MadgraphMatEl
double MadgraphMatEl(const TVar::Process &process, const TVar::Production &production, const TVar::MatrixElement &matrixElement, TVar::event_scales_type *event_scales, MelaIO *RcdME, const double &EBEAM, TVar::VerbosityLevel verbosity)
Definition: TUtil.cc:5258
gZPRIME_VV_2
@ gZPRIME_VV_2
Definition: raw_couplings.txt:112
SpinZeroCouplings::H2bbcoupl
double H2bbcoupl[SIZE_HQQ][2]
Definition: TCouplings.hh:46
TEvtProb::SetZprimeMassWidth
void SetZprimeMassWidth(double inmass, double inwidth)
Definition: TEvtProb.cc:320
gGRAVITON_GG_2
@ gGRAVITON_GG_2
Definition: raw_couplings.txt:126
madMela::mad_masses_
struct madMela::@0 mad_masses_
TVar::ResonancePropagatorScheme
ResonancePropagatorScheme
Definition: TVar.hh:116
TVar::Had_WH_S
@ Had_WH_S
Definition: TVar.hh:87
SpinTwoCouplings::Gvvcoupl
double Gvvcoupl[SIZE_GVV][2]
Definition: TCouplings.hh:101
TVar::JJEW
@ JJEW
Definition: TVar.hh:73
TUtil::SetMCFMaTQGCCouplings
void SetMCFMaTQGCCouplings(bool useBSM, aTQGCCouplings const *couplings)
Definition: TUtil.cc:4134
VprimeCouplings
Definition: TCouplings.hh:108
TEvtProb::GetSelfDSpinZeroCouplings
SpinZeroCouplings * GetSelfDSpinZeroCouplings()
Definition: TEvtProb.cc:363
TEvtProb::GetCurrentCandidate
MELACandidate * GetCurrentCandidate()
Definition: TEvtProb.cc:383
SpinTwoCouplings::Gqqcoupl
double Gqqcoupl[SIZE_GQQ][2]
Definition: TCouplings.hh:104
SIZE_AZff
@ SIZE_AZff
Definition: raw_couplings.txt:194
gGRAVITON_VV_8
@ gGRAVITON_VV_8
Definition: raw_couplings.txt:142
TUtil::TTHiggsMatEl
double TTHiggsMatEl(const TVar::Process &process, const TVar::Production &production, const TVar::MatrixElement &matrixElement, TVar::event_scales_type *event_scales, MelaIO *RcdME, const double &EBEAM, int topDecay, int topProcess, TVar::VerbosityLevel verbosity)
Definition: TUtil.cc:7452
TEvtProb::ResetWidth
void ResetWidth(double inwidth, int ipart)
Definition: TEvtProb.cc:322
TVar::InterfOn
@ InterfOn
Definition: TVar.hh:107
gGRAVITON_VV_6
@ gGRAVITON_VV_6
Definition: raw_couplings.txt:140
__modparameters_MOD_ckmbare
double __modparameters_MOD_ckmbare(int *id1in, int *id2in)
VprimeCouplings::reset
void reset()
Definition: TCouplings.cc:393
TEvtProb::AllowSeparateWWCouplings
void AllowSeparateWWCouplings(bool doAllow=false)
Definition: TEvtProb.cc:219
gGRAVITON_GG_1
@ gGRAVITON_GG_1
Definition: raw_couplings.txt:125
TVar::Had_WH_TU
@ Had_WH_TU
Definition: TVar.hh:98
SpinTwoCouplings::Gvvpcoupl
double Gvvpcoupl[SIZE_GVV][2]
Definition: TCouplings.hh:102
TVar::event_scales_type::ren_scale_factor
double ren_scale_factor
Definition: TVar.hh:262
TVar::H0_Zgs
@ H0_Zgs
Definition: TVar.hh:130
TVar::ttH
@ ttH
Definition: TVar.hh:67
SpinZeroCouplings
Definition: TCouplings.hh:7
TVar::SelfDefine_spin0
@ SelfDefine_spin0
Definition: TVar.hh:179
TUtil::InitJHUGenMELA
void InitJHUGenMELA(const char *pathtoPDFSet, int PDFMember, double collider_sqrts)
Definition: TUtil.cc:3392
SpinOneCouplings::getRef
SpinOneCouplings * getRef()
Definition: TCouplings.cc:302
TUtil::SumMatrixElementPDF
double SumMatrixElementPDF(const TVar::Process &process, const TVar::Production &production, const TVar::MatrixElement &matrixElement, const TVar::LeptonInterference &leptonInterf, TVar::event_scales_type *event_scales, MelaIO *RcdME, const double &EBEAM, TVar::VerbosityLevel verbosity)
Definition: TUtil.cc:4244
gHIGGS_ZA_4
@ gHIGGS_ZA_4
Definition: raw_couplings.txt:16
TEvtProb::SetPrimaryHiggsMass
void SetPrimaryHiggsMass(double mass)
Definition: TEvtProb.cc:220
TEvtProb::XsecCalc_VX
double XsecCalc_VX(bool includeHiggsDecay)
Definition: TEvtProb.cc:916
TEvtProb::GetSelfDAZffCouplings
AZffCouplings * GetSelfDAZffCouplings()
Definition: TEvtProb.cc:368
anonymous_namespace{TCouplingsBase.hh}::gHIGGS_GG_4
@ gHIGGS_GG_4
Definition: TCouplingsBase.hh:38
SpinZeroCouplings::HwwCLambda_qsq
int HwwCLambda_qsq[SIZE_HVV_CQSQ]
Definition: TCouplings.hh:41
TEvtProb::CheckSelfDCouplings_Hqq
bool CheckSelfDCouplings_Hqq()
Definition: TEvtProb.cc:1061
TVar::H2_g6
@ H2_g6
Definition: TVar.hh:156
TVar::Lep_ZH
@ Lep_ZH
Definition: TVar.hh:77
TEvtProb::CheckSelfDCouplings_aTQGC
bool CheckSelfDCouplings_aTQGC()
Definition: TEvtProb.cc:1157
TVar::event_scales_type::renomalizationScheme
TVar::EventScaleScheme renomalizationScheme
Definition: TVar.hh:260
TEvtProb::~TEvtProb
~TEvtProb()
Definition: TEvtProb.cc:75
gHIGGS_VV_1
@ gHIGGS_VV_1
Definition: raw_couplings.txt:9
TVar::ZZQQB_S
@ ZZQQB_S
Definition: TVar.hh:81
nninitpdf_
void nninitpdf_(int *irep)
cabib_
struct @40 cabib_
MELACandidate
Definition: MELACandidate.h:7
TUtil::SetJHUGenSpinZeroQQCouplings
void SetJHUGenSpinZeroQQCouplings(double Hqqcoupl[SIZE_HQQ][2])
Definition: TUtil.cc:4226
AZffCouplings::reset
void reset()
Definition: TCouplings.cc:476
SIZE_HVV
@ SIZE_HVV
Definition: raw_couplings.txt:57
TVar::DEBUG
@ DEBUG
Definition: TVar.hh:51
TVar::JJEWQCD_S
@ JJEWQCD_S
Definition: TVar.hh:85
MELAStreamHelpers.hh
MELAThreeBodyDecayCandidate
Definition: MELAThreeBodyDecayCandidate.h:7
TVar::H2_g4
@ H2_g4
Definition: TVar.hh:153
TVar::JJEWQCD_TU
@ JJEWQCD_TU
Definition: TVar.hh:96
SimpleParticleCollection_t
std::vector< SimpleParticle_t > SimpleParticleCollection_t
Definition: TVar.hh:25
TUtil
Definition: TUtil.hh:49
TEvtProb::PrimaryHMass
double PrimaryHMass
Definition: TEvtProb.hh:147
gGRAVITON_QQ_RIGHT
@ gGRAVITON_QQ_RIGHT
Definition: raw_couplings.txt:119
SpinTwoCouplings
Definition: TCouplings.hh:85
SpinZeroCouplings::H2ttcoupl
double H2ttcoupl[SIZE_HQQ][2]
Definition: TCouplings.hh:45
TVar::DefaultScaleScheme
@ DefaultScaleScheme
Definition: TVar.hh:196
TEvtProb::topCandList
std::vector< MELATopCandidate_t * > topCandList
Definition: TEvtProb.hh:167
TEvtProb::SetCurrentCandidate
void SetCurrentCandidate(MELACandidate *cand)
Definition: TEvtProb.cc:310
TVar::Had_WH
@ Had_WH
Definition: TVar.hh:76
TVar::JJEW_TU
@ JJEW_TU
Definition: TVar.hh:95
TEvtProb::GetXPropagator
double GetXPropagator(TVar::ResonancePropagatorScheme scheme)
Definition: TEvtProb.cc:1028
MelaIO::melaCand
MELACandidate * melaCand
Definition: MelaIO.h:29
TVar::Production
Production
Definition: TVar.hh:61
hto_masses::me
real *8, parameter me
Definition: CALLING_cpHTO.f:77
SpinZeroCouplings::H2t4t4coupl
double H2t4t4coupl[SIZE_HQQ][2]
Definition: TCouplings.hh:48
TVar::JJVBF_S
@ JJVBF_S
Definition: TVar.hh:83
TVar::Lep_WH
@ Lep_WH
Definition: TVar.hh:78
SpinOneCouplings::reset
void reset()
Definition: TCouplings.cc:285
gHIGGS_VV_2
@ gHIGGS_VV_2
Definition: raw_couplings.txt:10
TVar::SelfDefine_spin1
@ SelfDefine_spin1
Definition: TVar.hh:180
SpinZeroCouplings::Hb4b4coupl
double Hb4b4coupl[SIZE_HQQ][2]
Definition: TCouplings.hh:34
__modjhugenmela_MOD_getpdfconstants
void __modjhugenmela_MOD_getpdfconstants(double *pdfzmass, int *pdfnloops, int *pdfnf)
SpinTwoCouplings::Gggcoupl
double Gggcoupl[SIZE_GGG][2]
Definition: TCouplings.hh:105
SpinZeroCouplings::Hggcoupl
double Hggcoupl[SIZE_HGG][2]
Definition: TCouplings.hh:28
TVar::MatrixElementName
TString MatrixElementName(TVar::MatrixElement temp)
Definition: TVar.cc:109
TVar::H0hplus
@ H0hplus
Definition: TVar.hh:127
gGRAVITON_VV_7
@ gGRAVITON_VV_7
Definition: raw_couplings.txt:141
TUtil::JHUGenMatEl
double JHUGenMatEl(const TVar::Process &process, const TVar::Production &production, const TVar::MatrixElement &matrixElement, TVar::event_scales_type *event_scales, MelaIO *RcdME, const double &EBEAM, TVar::VerbosityLevel verbosity)
Definition: TUtil.cc:4887
gHIGGS_KAPPA
@ gHIGGS_KAPPA
Definition: raw_couplings.txt:2
TVar::bbH
@ bbH
Definition: TVar.hh:68
TUtil::VHiggsMatEl
double VHiggsMatEl(const TVar::Process &process, const TVar::Production &production, const TVar::MatrixElement &matrixElement, TVar::event_scales_type *event_scales, MelaIO *RcdME, const double &EBEAM, bool includeHiggsDecay, TVar::VerbosityLevel verbosity)
Definition: TUtil.cc:6843
SpinZeroCouplings::H2qqcoupl
double H2qqcoupl[SIZE_HQQ][2]
Definition: TCouplings.hh:44
TVar::JJQCD_S
@ JJQCD_S
Definition: TVar.hh:82
SIZE_GQQ
@ SIZE_GQQ
Definition: raw_couplings.txt:121
TEvtProb::ResetIORecord
void ResetIORecord()
Definition: TEvtProb.cc:317
TEvtProb::ResetQuarkMasses
void ResetQuarkMasses()
Definition: TEvtProb.cc:323
gZPRIME_VV_1
@ gZPRIME_VV_1
Definition: raw_couplings.txt:111
TVar::Lep_ZH_TU
@ Lep_ZH_TU
Definition: TVar.hh:99
SpinZeroCouplings::H2ggcoupl
double H2ggcoupl[SIZE_HGG][2]
Definition: TCouplings.hh:43
gHIGGS_ZA_1_PRIME2
@ gHIGGS_ZA_1_PRIME2
Definition: raw_couplings.txt:46
TEvtProb::process
TVar::Process process
Definition: TEvtProb.hh:142
TUtil::ResetAmplitudeIncludes
void ResetAmplitudeIncludes()
Definition: TUtil.cc:3412