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
Mela.h
Go to the documentation of this file.
1 
11 /*
12 ************* HEADER: CMS MELA interface to MCFM/JHUGen-MELA *************
13 Please see the ../src/Mela.cc file for the instructions.
14 */
15 
16 #ifndef MELA_Mela_h
17 #define MELA_Mela_h
18 
19 #include <vector>
20 #include <complex>
21 #include "TLorentzVector.h"
22 #include "TRandom3.h"
23 #include "MadMela.h"
24 
25 
26 class TFile;
27 class TGraph;
28 class TH1F;
29 class TH2F;
30 class TH3F;
31 class RooRealVar;
32 class RooAbsPdf;
33 class RooArgSet;
35 class VectorPdfFactory;
36 class TensorPdfFactory;
38 class ZZMatrixElement;
39 class SuperMELA;
40 
41 #include "TVar.hh"
42 #include "TEvtProb.hh"
43 #include "MelaPConstant.h"
44 #include "SuperDijetMela.h"
45 #include "ScalarPdfFactory_HVV.h"
46 #include "VectorPdfFactory.h"
47 #include "TensorPdfFactory_ppHVV.h"
49 
54 class Mela{
55 
56 public:
65  Mela(double LHCsqrts_=13., double mh_=125., TVar::VerbosityLevel verbosity_=TVar::ERROR); // Higgs mass for supermela
66 
72  Mela(const Mela& other);
73 
77  ~Mela();
78 
84  void build(double mh_);
85 
94  void setProcess(TVar::Process myModel, TVar::MatrixElement myME, TVar::Production myProduction);
95 
102 
109 
116 
123  void setRemoveLeptonMasses(bool MasslessLeptonSwitch=true);
124 
131  void setRemoveJetMasses(bool MasslessLeptonSwitch=true);
132 
142  void setMelaPrimaryHiggsMass(double myHiggsMass);
143 
151  void setMelaHiggsMass(double myHiggsMass, int index=0);
152 
160  void setMelaHiggsWidth(double myHiggsWidth=-1, int index=0);
161 
170  void setMelaHiggsMassWidth(double myHiggsMass, double myHiggsWidth, int index);
171 
181  void setRenFacScaleMode(TVar::EventScaleScheme renormalizationSch, TVar::EventScaleScheme factorizationSch, double ren_sf, double fac_sf);
182 
190 
198  void setCurrentCandidateFromIndex(unsigned int icand); // Switches to another candidate
199 
206  void setCurrentCandidate(MELACandidate* cand); // Switches to another candidate
207 
218  void setInputEvent(
219  SimpleParticleCollection_t* pDaughters,
220  SimpleParticleCollection_t* pAssociated=0,
221  SimpleParticleCollection_t* pMothers=0,
222  bool isGen=false
223  ); // Adds another candidate
224 
231  void resetInputEvent(); // Reset the input candidates. Important to call in order to clean up TEvtProb!
232 
242  void setTempCandidate(
243  SimpleParticleCollection_t* pDaughters,
244  SimpleParticleCollection_t* pAssociated=0,
245  SimpleParticleCollection_t* pMothers=0,
246  bool isGen=false
247  ); // Adds a temp. candidate
248 
255  void appendTopCandidate(SimpleParticleCollection_t* TopDaughters); // Adds a top
256 
257  // Function to set EW parameters in MCFM/JHUGen
319  void resetMass(double inmass, int ipart);
320 
371  void resetWidth(double inwidth, int ipart);
372 
396  void resetYukawaMass(double inmass, int ipart);
397 
415  void resetQuarkMasses();
416 
421  void resetMCFM_EWKParameters(double ext_Gf, double ext_aemmz, double ext_mW, double ext_mZ, double ext_xW, int ext_ewscheme=3);
422 
423  // Function to get current primary EW/QCD parameters from MCFM/JHUGen (notice Higgs mass/width used in the ME could be different)
475  double getPrimaryMass(int ipart);
476 
519  double getPrimaryWidth(int ipart);
520 
529  double getHiggsWidthAtPoleMass(double mass);
530 
531  void SetMadgraphCKMElements(double ckmlambda=0.2265, double ckma=0.79, double ckmrho=0.141, double ckmeta=0.357, bool force_refresh=false);
532  std::complex<double> GetMadgraphCKMElement(int iquark, int jquark);
537  MelaIO* getIORecord(); // Full parton-by-parton ME record
538 
545 
551 
556  int getNCandidates();
557 
562  std::vector<MELATopCandidate_t*>* getTopCandidateCollection();
563 
584  void getConstant(float& prob); // <ME> constants
585 
586 
587  void getPAux(float& prob); // SuperProb
588 
606 
629  void computeDecayAngles(
630  float& qH,
631  float& m1,
632  float& m2,
633  float& costheta1,
634  float& costheta2,
635  float& Phi,
636  float& costhetastar,
637  float& Phi1
638  );
639 
659  void computeVBFAngles(
660  float& Q2V1,
661  float& Q2V2,
662  float& costheta1,
663  float& costheta2,
664  float& Phi,
665  float& costhetastar,
666  float& Phi1
667  );
669  float& Q2V1,
670  float& Q2V2,
671  float& costheta1_real, float& costheta1_imag,
672  float& costheta2_real, float& costheta2_imag,
673  float& Phi,
674  float& costhetastar,
675  float& Phi1
676  );
677 
694  void computeVHAngles(
695  float& mVstar,
696  float& mV,
697  float& costheta1,
698  float& costheta2,
699  float& Phi,
700  float& costhetastar,
701  float& Phi1
702  );
703 
732  void computeTTHAngles(
733  int topDecay,
734 
735  float& mT1,
736  float& mW1,
737  float& mT2,
738  float& mW2,
739 
740  // TTH system
741  float& costheta1,
742  float& costheta2,
743  float& Phi,
744  float& costhetastar,
745  float& Phi1,
746 
747  // TT system
748  float& hbb,
749  float& hWW,
750  float& Phibb,
751  float& Phi1bb,
752 
753  // Wplus system
754  float& hWplusf,
755  float& PhiWplusf,
756 
757  // Wminus system
758  float& hWminusf,
759  float& PhiWminusf
760  );
761 
771  void computeP_selfDspin0(
772  double selfDHvvcoupl_input[nSupportedHiggses][SIZE_HVV][2],
773  float& prob,
774  bool useConstant=true
775  );
776 
787  void computeP_selfDspin1(
788  double selfDZqqcoupl_input[SIZE_ZQQ][2],
789  double selfDZvvcoupl_input[SIZE_ZVV][2],
790  float& prob,
791  bool useConstant=true
792  );
793 
803  void computeP_selfDspin1(
804  double selfDZvvcoupl_input[SIZE_ZVV][2],
805  float& prob,
806  bool useConstant=true
807  );
808 
820  void computeP_selfDspin2(
821  double selfDGggcoupl_input[SIZE_GGG][2],
822  double selfDGqqcoupl_input[SIZE_GQQ][2],
823  double selfDGvvcoupl_input[SIZE_GVV][2],
824  float& prob,
825  bool useConstant=true
826  );
827 
838  void computeP_selfDspin2(
839  double selfDGggcoupl_input[SIZE_GGG][2],
840  double selfDGvvcoupl_input[SIZE_GVV][2],
841  float& prob,
842  bool useConstant=true
843  );
844 
861  void computeP(
862  float& prob,
863  bool useConstant=true
864  );
865 
873  void computeD_CP(
874  TVar::MatrixElement myME,
875  TVar::Process myType,
876  float& prob
877  );
878 
879  //****VVH Spin-0****//
893  void computeProdDecP(
894  double selfDHvvcoupl_input[nSupportedHiggses][SIZE_HVV][2],
895  double selfDHwwcoupl_input[nSupportedHiggses][SIZE_HVV][2],
896  double selfDaTQGCcoupl_input[SIZE_ATQGC][2],
897  double selfDAZffcoupl_input[SIZE_AZff][2],
898  float& prob,
899  bool useConstant=true
900  );
901 
933  void computeProdDecP(
934  float& prob,
935  bool useConstant=true
936  );
937 
938  //****HJ/HJJ/VBF Spin-0****//
950  void computeProdP(
951  double selfDHggcoupl_input[SIZE_HGG][2],
952  double selfDHvvcoupl_input[nSupportedHiggses][SIZE_HVV][2],
953  double selfDHwwcoupl_input[nSupportedHiggses][SIZE_HVV][2],
954  float& prob,
955  bool useConstant=true
956  );
957 
964  void computeProdP(
965  float& prob,
966  bool useConstant=true
967  );
968 
969  //****VH Spin-0****//
970  void computeProdP_VH(
971  double selfDHvvcoupl_input[nSupportedHiggses][SIZE_HVV][2],
972  float& prob,
973  bool includeHiggsDecay=false,
974  bool useConstant=true
975  );
976  void computeProdP_VH(
977  float& prob,
978  bool includeHiggsDecay=false,
979  bool useConstant=true
980  );
981 
982  //***ttH Spin-0****//
983  void computeProdP_ttH(
984  float& prob,
985  int topProcess=2,
986  int topDecay=0,
987  bool useConstant=true
988  );
989 
990  // Calculation weight to correct for fermion interference
991  void compute4FermionWeight(float& w);
992 
993  // Calculation of X propagator
994  void getXPropagator(TVar::ResonancePropagatorScheme scheme, float& prop);
995 
996  //*** SuperMela ***//
997  void computePM4l(
998  TVar::SuperMelaSyst syst,
999  float& prob
1000  );
1001 
1002  //*** SuperJJMela ***//
1003  void computeDijetConvBW(float& prob, bool useTrueBW=false);
1004 
1005  //*** Dgg10 ***//
1006  void computeD_gg(
1007  TVar::MatrixElement myME,
1008  TVar::Process myType,
1009  float& prob
1010  );
1011 
1012  // Access ZZMEs Calculate4Momentum
1013  std::vector<TLorentzVector> calculate4Momentum(double Mx, double M1, double M2, double theta, double theta1, double theta2, double Phi1, double Phi);
1014 
1015  /********************/
1016  /*** Data members ***/
1017  /********************/
1018  TRandom3 melaRandomNumber; // Used in SuperMELA smearing
1019  RooRealVar* mzz_rrv;
1020  RooRealVar* z1mass_rrv;
1021  RooRealVar* z2mass_rrv;
1022  RooRealVar* costhetastar_rrv;
1023  RooRealVar* costheta1_rrv;
1024  RooRealVar* costheta2_rrv;
1025  RooRealVar* phi_rrv;
1026  RooRealVar* phi1_rrv;
1027  RooRealVar* Y_rrv;
1028  RooRealVar* upFrac_rrv;
1029 
1030  RooAbsPdf* pdf;
1035 
1037 
1038  // Self-define arrays are now members of MELA.
1039  // There are a lot of them!
1040  //****Spin-0****//
1041  // The first dimension (of size [nSupportedHiggses=2]) supports a second resonance present in MCFM
1042 
1085  //****Spin-1****//
1088  //****Spin-2****//
1094  //****aTQGC****//
1096  //****Anomalous couplings between the Z and fermions**//
1098  //****SMEFTSIM terms**//
1100  double selfDSMEFTSimcoupl[SIZE_SMEFT]; //madMela
1101  // That is a lot of them!
1102 
1105  static void cleanLinkedFiles();
1106 
1107 protected:
1108  /********************/
1109  /*** Data members ***/
1110  /********************/
1111  double LHCsqrts;
1117 
1120 
1121 
1123 
1124  MELACandidate* melaCand; // Pointer to persistent TEvtProb object
1125 
1126  /***** ME CONSTANT HANDLES *****/
1127  // Constants that vary with sqrts due to application of PDFs
1128  //
1130  //
1132  //
1134  //
1136  //
1138  // Decay ME constants that do not use PDFs
1139  //
1143  //
1147  //
1151  //
1155  //
1159  //
1163  //
1167  //
1171  //
1175  //
1179  //
1183  //
1185 
1186 
1187  /*****************/
1188  /*** Functions ***/
1189  /*****************/
1190  void printLogo() const;
1191 
1192  void setSpinZeroCouplings();
1193  void setSpinOneCouplings();
1194  void setSpinTwoCouplings();
1195  void setATQGCCouplings();
1196  void setAZffCouplings();
1197 
1198  bool configureAnalyticalPDFs();
1199  void reset_SelfDCouplings();
1200  void reset_PAux(); // SuperProb reset
1201  void reset_CandRef();
1202 
1203  void constructDggr(
1204  float bkg_VAMCFM_noscale,
1205  float ggzz_VAMCFM_noscale,
1206  float ggHZZ_prob_pure_noscale,
1207  float ggHZZ_prob_int_noscale,
1208  float widthScale,
1209  float& myDggr
1210  );
1211 
1212  void getPConstantHandles();
1213  void deletePConstantHandles();
1215  TVar::MatrixElement me_,
1216  TVar::Production prod_,
1217  TVar::Process proc_,
1218  TString relpath,
1219  TString spname,
1220  const bool useSqrts=false
1221  );
1222  void deletePConstantHandle(MelaPConstant*& handle);
1223  void computeConstant(float& prob);
1224  void setConstant();
1226  float getConstant_4l();
1227  float getConstant_2l2q();
1228  float getConstant_4q();
1229  float getConstant_FourFermionDecay(const int& decid);
1230 
1231 };
1232 
1233 #endif
1234 
TVar::ERROR
@ ERROR
Definition: TVar.hh:49
Mela::getConstant
void getConstant(float &prob)
This function returns a multiplicative constant to the matrix element calculation.
Definition: Mela.cc:2207
Mela::computeP_selfDspin2
void computeP_selfDspin2(double selfDGggcoupl_input[SIZE_GGG][2], double selfDGqqcoupl_input[SIZE_GQQ][2], double selfDGvvcoupl_input[SIZE_GVV][2], float &prob, bool useConstant=true)
This is a function that calls Mela::computeP with preset quark, gluon, and vector boson couplings for...
Definition: Mela.cc:1186
Mela::pAvgSmooth_MCFM_ZZGG_bkgZZ_4e
MelaPConstant * pAvgSmooth_MCFM_ZZGG_bkgZZ_4e
Definition: Mela.h:1161
Mela::pAvgSmooth_MCFM_ZZGG_HSMHiggs_4e
MelaPConstant * pAvgSmooth_MCFM_ZZGG_HSMHiggs_4e
Definition: Mela.h:1145
Mela::ZZME
ZZMatrixElement * ZZME
Definition: Mela.h:1118
Mela::pAvgSmooth_MCFM_ZZQQB_bkgZZ_4mu
MelaPConstant * pAvgSmooth_MCFM_ZZQQB_bkgZZ_4mu
Definition: Mela.h:1164
MelaIO
Definition: MelaIO.h:8
TVar::LeptonInterference
LeptonInterference
Definition: TVar.hh:105
SIZE_GVV
@ SIZE_GVV
Definition: raw_couplings.txt:158
Mela::setInputEvent
void setInputEvent(SimpleParticleCollection_t *pDaughters, SimpleParticleCollection_t *pAssociated=0, SimpleParticleCollection_t *pMothers=0, bool isGen=false)
Sets the input event for MELA. MELA cannot run without this.
Definition: Mela.cc:349
Mela::GetMadgraphCKMElement
std::complex< double > GetMadgraphCKMElement(int iquark, int jquark)
Definition: Mela.cc:552
Mela::pAvgSmooth_JHUGen_ZZGG_HSMHiggs_2mu2e
MelaPConstant * pAvgSmooth_JHUGen_ZZGG_HSMHiggs_2mu2e
Definition: Mela.h:1142
Mela::selfDGqqcoupl
double selfDGqqcoupl[SIZE_GQQ][2]
Definition: Mela.h:1089
Mela::selfDGvpvpcoupl
double selfDGvpvpcoupl[SIZE_GVV][2]
Definition: Mela.h:1093
Mela::Y_rrv
RooRealVar * Y_rrv
Definition: Mela.h:1027
Mela::pAvgSmooth_MCFM_ZZQQB_bkgZZ_4e
MelaPConstant * pAvgSmooth_MCFM_ZZQQB_bkgZZ_4e
Definition: Mela.h:1165
TVar::VerbosityLevel
VerbosityLevel
Definition: TVar.hh:47
RooqqZZ_JHU_ZgammaZZ_fast
Definition: RooqqZZ_JHU_ZgammaZZ_fast.h:18
Mela::pAvgSmooth_MCFM_Had_ZH_bkgZZ_4e
MelaPConstant * pAvgSmooth_MCFM_Had_ZH_bkgZZ_4e
Definition: Mela.h:1173
Mela::myVerbosity_
TVar::VerbosityLevel myVerbosity_
Definition: Mela.h:1116
Mela::build
void build(double mh_)
This is the actual building of the tool that occurs in each instance of the Mela::Mela constructor.
Definition: Mela.cc:139
Mela::pAvgSmooth_MCFM_JJVBF_S_HSMHiggs_2mu2e
MelaPConstant * pAvgSmooth_MCFM_JJVBF_S_HSMHiggs_2mu2e
Definition: Mela.h:1150
Mela::resetMCFM_EWKParameters
void resetMCFM_EWKParameters(double ext_Gf, double ext_aemmz, double ext_mW, double ext_mZ, double ext_xW, int ext_ewscheme=3)
Resets the electroweak parameters back to their defaults.
Definition: Mela.cc:540
Mela::getPrimaryWidth
double getPrimaryWidth(int ipart)
A function to get the current primary EW/QCD parameters from MELA.
Definition: Mela.cc:545
Mela::getNCandidates
int getNCandidates()
Returns the size of the candidate list TEvtProb::candList.
Definition: Mela.cc:588
anonymous_namespace{TCouplingsBase.hh}::SIZE_SMEFT
@ SIZE_SMEFT
Definition: TCouplingsBase.hh:322
SIZE_HVV_CQSQ
@ SIZE_HVV_CQSQ
Definition: raw_couplings.txt:74
Mela::computeDecayAngles
void computeDecayAngles(float &qH, float &m1, float &m2, float &costheta1, float &costheta2, float &Phi, float &costhetastar, float &Phi1)
computes the decay angles for gg -> H -> ZZ as defined in Figure 1 of arXiv:1001.3396
Definition: Mela.cc:598
ScalarPdfFactory_HVV.h
Mela::pAvgSmooth_MCFM_JJQCD_bkgZZ_4e
MelaPConstant * pAvgSmooth_MCFM_JJQCD_bkgZZ_4e
Definition: Mela.h:1181
Mela::selfDM_Zprime
double selfDM_Zprime
Definition: Mela.h:1081
Mela::computeProdP_VH
void computeProdP_VH(double selfDHvvcoupl_input[nSupportedHiggses][SIZE_HVV][2], float &prob, bool includeHiggsDecay=false, bool useConstant=true)
Definition: Mela.cc:1769
Mela::pAvgSmooth_MCFM_Had_ZH_bkgZZ_4mu
MelaPConstant * pAvgSmooth_MCFM_Had_ZH_bkgZZ_4mu
Definition: Mela.h:1172
MelaPConstant.h
Mela::auxiliaryProb
float auxiliaryProb
Definition: Mela.h:1122
Mela::compute4FermionWeight
void compute4FermionWeight(float &w)
Definition: Mela.cc:1846
Mela::selfDHwwCLambda_qsq
int selfDHwwCLambda_qsq[nSupportedHiggses][SIZE_HVV_CQSQ]
Definition: Mela.h:1069
TVar::nFermionMassRemovalSchemes
@ nFermionMassRemovalSchemes
Definition: TVar.hh:114
TVar::event_scales_type
Definition: TVar.hh:259
SIZE_GGG
@ SIZE_GGG
Definition: raw_couplings.txt:131
Mela::getIORecord
MelaIO * getIORecord()
Returns the MELAIO object, and by consequence, the entire parton-by-parton matrix element record.
Definition: Mela.cc:584
SuperDijetMela
Definition: SuperDijetMela.h:8
ScalarPdfFactory_HVV
Definition: ScalarPdfFactory_HVV.h:8
Mela::setCurrentCandidateFromIndex
void setCurrentCandidateFromIndex(unsigned int icand)
Switches the candidate that you are working on to another candidate based off of an index.
Definition: Mela.cc:347
SuperMELA
Definition: SuperMELA.h:17
Mela::pAvgSmooth_JHUGen_ZZGG_HSMHiggs_4mu
MelaPConstant * pAvgSmooth_JHUGen_ZZGG_HSMHiggs_4mu
Definition: Mela.h:1140
Mela::z1mass_rrv
RooRealVar * z1mass_rrv
Definition: Mela.h:1020
Mela::selfDHttcoupl
double selfDHttcoupl[nSupportedHiggses][SIZE_HQQ][2]
Definition: Mela.h:1057
Mela::setRemoveLeptonMasses
void setRemoveLeptonMasses(bool MasslessLeptonSwitch=true)
either permits or forbids massive leptons.
Definition: Mela.cc:556
Mela::getPAux
void getPAux(float &prob)
Definition: Mela.cc:594
Mela::pAvgSmooth_MCFM_JJQCD_bkgZZ_4mu
MelaPConstant * pAvgSmooth_MCFM_JJQCD_bkgZZ_4mu
Definition: Mela.h:1180
Mela::getMeasurablesRRV
RooSpin::modelMeasurables getMeasurablesRRV()
Returns a RooSpin::modelMeasureables object containing many observable quantities.
Definition: Mela.cc:568
Mela::setVerbosity
void setVerbosity(TVar::VerbosityLevel verbosity_=TVar::ERROR)
Sets the verbosity for MELA outside of the initial constructor.
Definition: Mela.cc:330
Mela::setCurrentCandidate
void setCurrentCandidate(MELACandidate *cand)
Switches the candidate that you are working on to another candidate object specified.
Definition: Mela.cc:348
Mela::pAvgSmooth_MCFM_ZZGG_bkgZZ_2mu2e
MelaPConstant * pAvgSmooth_MCFM_ZZGG_bkgZZ_2mu2e
Definition: Mela.h:1162
TVar::CandidateDecayMode
CandidateDecayMode
Definition: TVar.hh:37
Mela::resetWidth
void resetWidth(double inwidth, int ipart)
Resets the width for a particle that is an electroweak parameter according to its id.
Definition: Mela.cc:523
Mela::mzz_rrv
RooRealVar * mzz_rrv
Definition: Mela.h:1019
Mela::setMelaHiggsWidth
void setMelaHiggsWidth(double myHiggsWidth=-1, int index=0)
Sets the width of your chosen Higgs.
Definition: Mela.cc:343
Mela::getTopCandidateCollection
std::vector< MELATopCandidate_t * > * getTopCandidateCollection()
Same as getNCandidates but specifically for Top Quark Candidates.
Definition: Mela.cc:589
Mela::computeD_CP
void computeD_CP(TVar::MatrixElement myME, TVar::Process myType, float &prob)
computes the value of D_CP
Definition: Mela.cc:1378
Mela::getPConstantHandle
MelaPConstant * getPConstantHandle(TVar::MatrixElement me_, TVar::Production prod_, TVar::Process proc_, TString relpath, TString spname, const bool useSqrts=false)
Definition: Mela.cc:2704
Mela::computeProdP
void computeProdP(double selfDHggcoupl_input[SIZE_HGG][2], double selfDHvvcoupl_input[nSupportedHiggses][SIZE_HVV][2], double selfDHwwcoupl_input[nSupportedHiggses][SIZE_HVV][2], float &prob, bool useConstant=true)
computes Production side probabilities while taking in coupling arrays
Definition: Mela.cc:1540
Mela::selfDHzpzpcoupl
double selfDHzpzpcoupl[SIZE_HVV][2]
Definition: Mela.h:1074
SIZE_ZQQ
@ SIZE_ZQQ
Definition: raw_couplings.txt:107
Mela::pAvgSmooth_MCFM_Had_WH_S_HSMHiggs_4e
MelaPConstant * pAvgSmooth_MCFM_Had_WH_S_HSMHiggs_4e
Definition: Mela.h:1157
Mela::setRenFacScaleMode
void setRenFacScaleMode(TVar::EventScaleScheme renormalizationSch, TVar::EventScaleScheme factorizationSch, double ren_sf, double fac_sf)
Sets the renormalization and the factorization schemes.
Definition: Mela.cc:558
TVar::Process
Process
Definition: TVar.hh:124
Mela::selfDGa_Zprime
double selfDGa_Zprime
Definition: Mela.h:1082
TVar::EventScaleScheme
EventScaleScheme
Definition: TVar.hh:195
Mela::selfDWpffcoupl
double selfDWpffcoupl[SIZE_Vpff][2]
Definition: Mela.h:1080
Mela::pAvgSmooth_MCFM_JJVBF_S_HSMHiggs_4mu
MelaPConstant * pAvgSmooth_MCFM_JJVBF_S_HSMHiggs_4mu
Definition: Mela.h:1148
Mela::selfDZpffcoupl
double selfDZpffcoupl[SIZE_Vpff][2]
Definition: Mela.h:1075
Mela::selfDaTQGCcoupl
double selfDaTQGCcoupl[SIZE_ATQGC][2]
Definition: Mela.h:1095
Mela::myProduction_
TVar::Production myProduction_
Definition: Mela.h:1114
Mela::pAvgSmooth_MCFM_Had_ZH_S_HSMHiggs_4mu
MelaPConstant * pAvgSmooth_MCFM_Had_ZH_S_HSMHiggs_4mu
Definition: Mela.h:1152
VectorPdfFactory
Definition: VectorPdfFactory.h:12
Mela::computeConstant
void computeConstant(float &prob)
Definition: Mela.cc:2208
Mela::pAvgSmooth_MCFM_Had_WH_S_HSMHiggs_2mu2e
MelaPConstant * pAvgSmooth_MCFM_Had_WH_S_HSMHiggs_2mu2e
Definition: Mela.h:1158
Mela::computeVBFAngles
void computeVBFAngles(float &Q2V1, float &Q2V2, float &costheta1, float &costheta2, float &Phi, float &costhetastar, float &Phi1)
computes the production angles for Vector Boson Fusion (VBF) -> H -> ZZ as defined in Figure 1 of arX...
Definition: Mela.cc:660
Mela::cleanLinkedFiles
static void cleanLinkedFiles()
Definition: Mela.cc:126
Mela::setProcess
void setProcess(TVar::Process myModel, TVar::MatrixElement myME, TVar::Production myProduction)
Sets the process, matrix element, and production that MELA is to use for this event....
Definition: Mela.cc:309
Mela::deletePConstantHandles
void deletePConstantHandles()
Definition: Mela.cc:2768
Mela::setSpinZeroCouplings
void setSpinZeroCouplings()
Definition: Mela.cc:375
Mela::pAvgSmooth_JHUGen_JJVBF_HSMHiggs
MelaPConstant * pAvgSmooth_JHUGen_JJVBF_HSMHiggs[TVar::nFermionMassRemovalSchemes-1]
Definition: Mela.h:1133
Mela::Mela
Mela(double LHCsqrts_=13., double mh_=125., TVar::VerbosityLevel verbosity_=TVar::ERROR)
the MELA constructor
Definition: Mela.cc:53
Mela::qqZZmodel
RooqqZZ_JHU_ZgammaZZ_fast * qqZZmodel
Definition: Mela.h:1034
Mela::resetQuarkMasses
void resetQuarkMasses()
Resets the masses of each quark to their original values.
Definition: Mela.cc:539
Mela::selfDHqqcoupl
double selfDHqqcoupl[nSupportedHiggses][SIZE_HQQ][2]
Definition: Mela.h:1053
Mela::setTempCandidate
void setTempCandidate(SimpleParticleCollection_t *pDaughters, SimpleParticleCollection_t *pAssociated=0, SimpleParticleCollection_t *pMothers=0, bool isGen=false)
Sets a temporary MELA candidate, by setting melaCand in Xcal2 to a temporary candidate without pushin...
Definition: Mela.cc:366
SIZE_ZVV
@ SIZE_ZVV
Definition: raw_couplings.txt:114
Mela::pAvgSmooth_MCFM_JJVBF_bkgZZ_2mu2e
MelaPConstant * pAvgSmooth_MCFM_JJVBF_bkgZZ_2mu2e
Definition: Mela.h:1170
Mela::ggSpin0Model
ScalarPdfFactory_HVV * ggSpin0Model
Definition: Mela.h:1031
Mela::costheta1_rrv
RooRealVar * costheta1_rrv
Definition: Mela.h:1023
TEvtProb.hh
Mela::pAvgSmooth_MCFM_Had_WH_bkgZZ_2mu2e
MelaPConstant * pAvgSmooth_MCFM_Had_WH_bkgZZ_2mu2e
Definition: Mela.h:1178
Mela::selfDGvvcoupl
double selfDGvvcoupl[SIZE_GVV][2]
Definition: Mela.h:1091
Mela::computeP_selfDspin0
void computeP_selfDspin0(double selfDHvvcoupl_input[nSupportedHiggses][SIZE_HVV][2], float &prob, bool useConstant=true)
This is a function that calls Mela::computeP with preset quark, gluon, and vector boson couplings for...
Definition: Mela.cc:1117
TVar::DefaultLeptonInterf
@ DefaultLeptonInterf
Definition: TVar.hh:106
Mela::melaCand
MELACandidate * melaCand
Definition: Mela.h:1124
Mela::pAvgSmooth_JHUGen_JJQCD_HSMHiggs
MelaPConstant * pAvgSmooth_JHUGen_JJQCD_HSMHiggs[TVar::nFermionMassRemovalSchemes-1]
Definition: Mela.h:1131
Mela::pAvgSmooth_MCFM_ZZGG_HSMHiggs_4mu
MelaPConstant * pAvgSmooth_MCFM_ZZGG_HSMHiggs_4mu
Definition: Mela.h:1144
TensorPdfFactory_ppHVV.h
Mela::differentiate_HWW_HZZ
bool differentiate_HWW_HZZ
Definition: Mela.h:1070
Mela::pAvgSmooth_MCFM_JJVBF_bkgZZ_4e
MelaPConstant * pAvgSmooth_MCFM_JJVBF_bkgZZ_4e
Definition: Mela.h:1169
SIZE_HQQ
@ SIZE_HQQ
Definition: raw_couplings.txt:5
Mela::getHiggsWidthAtPoleMass
double getHiggsWidthAtPoleMass(double mass)
Returns the width of the Higgs at a given pole mass as a calculation.
Definition: Mela.cc:546
Mela::computeTTHAngles
void computeTTHAngles(int topDecay, float &mT1, float &mW1, float &mT2, float &mW2, float &costheta1, float &costheta2, float &Phi, float &costhetastar, float &Phi1, float &hbb, float &hWW, float &Phibb, float &Phi1bb, float &hWplusf, float &PhiWplusf, float &hWminusf, float &PhiWminusf)
computes the angles for a ttH system
Definition: Mela.cc:935
Mela::pAvgSmooth_MCFM_JJVBF_bkgZZ_4mu
MelaPConstant * pAvgSmooth_MCFM_JJVBF_bkgZZ_4mu
Definition: Mela.h:1168
anonymous_namespace{TCouplingsBase.hh}::SIZE_HGG
@ SIZE_HGG
Definition: TCouplingsBase.hh:40
Mela::pAvgSmooth_MCFM_Had_WH_bkgZZ_4e
MelaPConstant * pAvgSmooth_MCFM_Had_WH_bkgZZ_4e
Definition: Mela.h:1177
Mela::computeVHAngles
void computeVHAngles(float &mVstar, float &mV, float &costheta1, float &costheta2, float &Phi, float &costhetastar, float &Phi1)
computes the production for Vector Boson Fusion (VBF) -> H -> ZZ as defined in Figure 1 of arXiv:1208...
Definition: Mela.cc:826
TensorPdfFactory_ppHVV
Definition: TensorPdfFactory_ppHVV.h:8
Mela::getVerbosity
TVar::VerbosityLevel getVerbosity()
Gets the current verbosity level for MELA.
Definition: Mela.cc:339
Mela::setATQGCCouplings
void setATQGCCouplings()
Definition: Mela.cc:423
MadMela.h
This is the code that interfaces with the generated Madgraph matrix elements in fortran for specified...
Mela::selfDHg4g4coupl
double selfDHg4g4coupl[nSupportedHiggses][SIZE_HGG][2]
Definition: Mela.h:1051
Mela::pAvgSmooth_JHUGen_JQCD_HSMHiggs
MelaPConstant * pAvgSmooth_JHUGen_JQCD_HSMHiggs[TVar::nFermionMassRemovalSchemes-1]
Definition: Mela.h:1129
Mela::computeP
void computeP(float &prob, bool useConstant=true)
Computes the probability for the probabilities on the decay side of things using the constituent daug...
Definition: Mela.cc:1223
SuperDijetMela.h
Mela::getConstant_JHUGenUndecayed
float getConstant_JHUGenUndecayed()
Definition: Mela.cc:2290
Mela::computePM4l
void computePM4l(TVar::SuperMelaSyst syst, float &prob)
Definition: Mela.cc:1903
Mela::printLogo
void printLogo() const
Definition: Mela.cc:246
Mela::setCandidateDecayMode
void setCandidateDecayMode(TVar::CandidateDecayMode mode)
Sets the decay mode for your event.
Definition: Mela.cc:346
VectorPdfFactory.h
Mela::setMelaHiggsMass
void setMelaHiggsMass(double myHiggsMass, int index=0)
Sets the mass of your chosen Higgs.
Definition: Mela.cc:342
Mela::spin2Model
TensorPdfFactory_ppHVV * spin2Model
Definition: Mela.h:1033
Mela::getCurrentCandidateIndex
int getCurrentCandidateIndex()
Returns the index of the current MELA candidate - returns -1 if there is no candidate to be found.
Definition: Mela.cc:587
Mela::reset_PAux
void reset_PAux()
Definition: Mela.cc:595
Mela::selfDZqqcoupl
double selfDZqqcoupl[SIZE_ZQQ][2]
Definition: Mela.h:1086
Mela::selfDHb4b4coupl
double selfDHb4b4coupl[nSupportedHiggses][SIZE_HQQ][2]
Definition: Mela.h:1059
Mela::selfDHwpwpcoupl
double selfDHwpwpcoupl[SIZE_HVV][2]
Definition: Mela.h:1079
Mela::reset_CandRef
void reset_CandRef()
Definition: Mela.cc:590
Mela::myLepInterf_
TVar::LeptonInterference myLepInterf_
Definition: Mela.h:1115
SIZE_Vpff
@ SIZE_Vpff
Definition: raw_couplings.txt:100
Mela::selfDHzzLambda_qsq
double selfDHzzLambda_qsq[nSupportedHiggses][SIZE_HVV_LAMBDAQSQ][SIZE_HVV_CQSQ]
Definition: Mela.h:1066
Mela::SetMadgraphCKMElements
void SetMadgraphCKMElements(double ckmlambda=0.2265, double ckma=0.79, double ckmrho=0.141, double ckmeta=0.357, bool force_refresh=false)
Definition: Mela.cc:548
Mela::phi_rrv
RooRealVar * phi_rrv
Definition: Mela.h:1025
Mela::getXPropagator
void getXPropagator(TVar::ResonancePropagatorScheme scheme, float &prop)
Definition: Mela.cc:1838
Mela::~Mela
~Mela()
MELA destructor.
Definition: Mela.cc:81
Mela::computeProdDecP
void computeProdDecP(double selfDHvvcoupl_input[nSupportedHiggses][SIZE_HVV][2], double selfDHwwcoupl_input[nSupportedHiggses][SIZE_HVV][2], double selfDaTQGCcoupl_input[SIZE_ATQGC][2], double selfDAZffcoupl_input[SIZE_AZff][2], float &prob, bool useConstant=true)
computes the combined production and decay probability while taking in coupling arrays
Definition: Mela.cc:1469
Mela::reset_SelfDCouplings
void reset_SelfDCouplings()
Definition: Mela.cc:436
Mela::selfDHwwcoupl
double selfDHwwcoupl[nSupportedHiggses][SIZE_HVV][2]
Definition: Mela.h:1065
Mela::myME_
TVar::MatrixElement myME_
Definition: Mela.h:1113
Mela::setRemoveJetMasses
void setRemoveJetMasses(bool MasslessLeptonSwitch=true)
either permits or forbids massive jets.
Definition: Mela.cc:557
Mela::selfDGvvpcoupl
double selfDGvvpcoupl[SIZE_GVV][2]
Definition: Mela.h:1092
Mela::constructDggr
void constructDggr(float bkg_VAMCFM_noscale, float ggzz_VAMCFM_noscale, float ggHZZ_prob_pure_noscale, float ggHZZ_prob_int_noscale, float widthScale, float &myDggr)
Definition: Mela.cc:1959
Mela::resetMass
void resetMass(double inmass, int ipart)
Resets the mass for a particle that is an electroweak parameter according to its id.
Definition: Mela.cc:522
Mela::resetInputEvent
void resetInputEvent()
Resets the event in preparation for the next iteration of the event loop.
Definition: Mela.cc:362
TVar::MatrixElement
MatrixElement
Definition: TVar.hh:55
Mela::pdf
RooAbsPdf * pdf
Definition: Mela.h:1030
nSupportedHiggses
@ nSupportedHiggses
Definition: TMCFM.hh:15
SIZE_ATQGC
@ SIZE_ATQGC
Definition: raw_couplings.txt:176
Mela::myModel_
TVar::Process myModel_
Definition: Mela.h:1112
Mela::selfDAZffcoupl
double selfDAZffcoupl[SIZE_AZff][2]
Definition: Mela.h:1097
Mela::pAvgSmooth_MCFM_JJQCD_bkgZJets_2l2q
MelaPConstant * pAvgSmooth_MCFM_JJQCD_bkgZJets_2l2q
Definition: Mela.h:1184
Mela::selfDHzzCLambda_qsq
int selfDHzzCLambda_qsq[nSupportedHiggses][SIZE_HVV_CQSQ]
Definition: Mela.h:1068
Mela::setAZffCouplings
void setAZffCouplings()
Definition: Mela.cc:428
Mela::setSpinOneCouplings
void setSpinOneCouplings()
Definition: Mela.cc:408
Mela::setMelaHiggsMassWidth
void setMelaHiggsMassWidth(double myHiggsMass, double myHiggsWidth, int index)
a combination of setMelaHiggsMass and setMelaHiggsWidth.
Definition: Mela.cc:344
SIZE_HVV_LAMBDAQSQ
@ SIZE_HVV_LAMBDAQSQ
Definition: raw_couplings.txt:66
Mela::selfDZvvcoupl
double selfDZvvcoupl[SIZE_ZVV][2]
Definition: Mela.h:1087
Mela::pAvgSmooth_MCFM_Had_WH_S_HSMHiggs_4mu
MelaPConstant * pAvgSmooth_MCFM_Had_WH_S_HSMHiggs_4mu
Definition: Mela.h:1156
Mela::pAvgSmooth_MCFM_JJQCD_bkgZZ_2mu2e
MelaPConstant * pAvgSmooth_MCFM_JJQCD_bkgZZ_2mu2e
Definition: Mela.h:1182
Mela::pAvgSmooth_MCFM_ZZGG_bkgZZ_4mu
MelaPConstant * pAvgSmooth_MCFM_ZZGG_bkgZZ_4mu
Definition: Mela.h:1160
Mela::computeVBFAngles_ComplexBoost
void computeVBFAngles_ComplexBoost(float &Q2V1, float &Q2V2, float &costheta1_real, float &costheta1_imag, float &costheta2_real, float &costheta2_imag, float &Phi, float &costhetastar, float &Phi1)
Definition: Mela.cc:742
Mela::resetYukawaMass
void resetYukawaMass(double inmass, int ipart)
Resets the Yukawa coupling (or "Yukawa mass") for a specific particle. Does not change its "intrinsic...
Definition: Mela.cc:524
Mela
This is the main Mela object!
Definition: Mela.h:54
Mela::pAvgSmooth_MCFM_Had_ZH_S_HSMHiggs_2mu2e
MelaPConstant * pAvgSmooth_MCFM_Had_ZH_S_HSMHiggs_2mu2e
Definition: Mela.h:1154
Mela::superDijet
SuperDijetMela * superDijet
Definition: Mela.h:1119
Mela::selfDM_Wprime
double selfDM_Wprime
Definition: Mela.h:1083
TVar::ResonancePropagatorScheme
ResonancePropagatorScheme
Definition: TVar.hh:116
Mela::getConstant_FourFermionDecay
float getConstant_FourFermionDecay(const int &decid)
Definition: Mela.cc:2352
Mela::melaRandomNumber
TRandom3 melaRandomNumber
Definition: Mela.h:1018
Mela::getRenFacScaleMode
const TVar::event_scales_type & getRenFacScaleMode() const
Returns the current RenFac Scale Mode for MELA.
Definition: Mela.cc:561
Mela::computeProdP_ttH
void computeProdP_ttH(float &prob, int topProcess=2, int topDecay=0, bool useConstant=true)
Definition: Mela.cc:1817
Mela::computeD_gg
void computeD_gg(TVar::MatrixElement myME, TVar::Process myType, float &prob)
Definition: Mela.cc:1973
Mela::super
SuperMELA * super
Definition: Mela.h:1036
Mela::selfDGa_Wprime
double selfDGa_Wprime
Definition: Mela.h:1084
Mela::selfDHt4t4coupl
double selfDHt4t4coupl[nSupportedHiggses][SIZE_HQQ][2]
Definition: Mela.h:1061
Mela::selfDHwwLambda_qsq
double selfDHwwLambda_qsq[nSupportedHiggses][SIZE_HVV_LAMBDAQSQ][SIZE_HVV_CQSQ]
Definition: Mela.h:1067
Mela::pAvgSmooth_MCFM_Had_ZH_bkgZZ_2mu2e
MelaPConstant * pAvgSmooth_MCFM_Had_ZH_bkgZZ_2mu2e
Definition: Mela.h:1174
Mela::setMelaPrimaryHiggsMass
void setMelaPrimaryHiggsMass(double myHiggsMass)
Sets the mass of the "primary" higgs.
Definition: Mela.cc:341
Mela::z2mass_rrv
RooRealVar * z2mass_rrv
Definition: Mela.h:1021
SIZE_AZff
@ SIZE_AZff
Definition: raw_couplings.txt:194
Mela::selfDSMEFTSimcoupl
double selfDSMEFTSimcoupl[SIZE_SMEFT]
Definition: Mela.h:1100
Mela::computeDijetConvBW
void computeDijetConvBW(float &prob, bool useTrueBW=false)
Definition: Mela.cc:2831
Mela::pAvgSmooth_JHUGen_Had_ZH_HSMHiggs
MelaPConstant * pAvgSmooth_JHUGen_Had_ZH_HSMHiggs[TVar::nFermionMassRemovalSchemes-1]
Definition: Mela.h:1135
Mela::costhetastar_rrv
RooRealVar * costhetastar_rrv
Definition: Mela.h:1022
TVar::SuperMelaSyst
SuperMelaSyst
Definition: TVar.hh:185
Mela::costheta2_rrv
RooRealVar * costheta2_rrv
Definition: Mela.h:1024
Mela::setConstant
void setConstant()
Definition: Mela.cc:2214
Mela::selfDHwwpcoupl
double selfDHwwpcoupl[SIZE_HVV][2]
Definition: Mela.h:1077
Mela::getConstant_4l
float getConstant_4l()
Definition: Mela.cc:2325
RooqqZZ_JHU_ZgammaZZ_fast.h
Mela::configureAnalyticalPDFs
bool configureAnalyticalPDFs()
Definition: Mela.cc:2008
ZZMatrixElement
Definition: ZZMatrixElement.h:9
TVar.hh
Mela::selfDHzzcoupl
double selfDHzzcoupl[nSupportedHiggses][SIZE_HVV][2]
Definition: Mela.h:1063
Mela::calculate4Momentum
std::vector< TLorentzVector > calculate4Momentum(double Mx, double M1, double M2, double theta, double theta1, double theta2, double Phi1, double Phi)
Definition: Mela.cc:564
Mela::computeP_selfDspin1
void computeP_selfDspin1(double selfDZqqcoupl_input[SIZE_ZQQ][2], double selfDZvvcoupl_input[SIZE_ZVV][2], float &prob, bool useConstant=true)
This is a function that calls Mela::computeP with preset quark, gluon, and vector boson couplings for...
Definition: Mela.cc:1152
Mela::getPConstantHandles
void getPConstantHandles()
Definition: Mela.cc:2509
Mela::setSpinTwoCouplings
void setSpinTwoCouplings()
Definition: Mela.cc:411
TensorPdfFactory
Definition: TensorPdfFactory.h:10
Mela::LHCsqrts
double LHCsqrts
Definition: Mela.h:1111
Mela::phi1_rrv
RooRealVar * phi1_rrv
Definition: Mela.h:1026
Mela::spin1Model
VectorPdfFactory * spin1Model
Definition: Mela.h:1032
Mela::pAvgSmooth_MCFM_ZZGG_HSMHiggs_2mu2e
MelaPConstant * pAvgSmooth_MCFM_ZZGG_HSMHiggs_2mu2e
Definition: Mela.h:1146
Mela::selfDHzzpcoupl
double selfDHzzpcoupl[SIZE_HVV][2]
Definition: Mela.h:1072
MELACandidate
Definition: MELACandidate.h:7
SIZE_HVV
@ SIZE_HVV
Definition: raw_couplings.txt:57
SimpleParticleCollection_t
std::vector< SimpleParticle_t > SimpleParticleCollection_t
Definition: TVar.hh:25
Mela::pAvgSmooth_MCFM_ZZQQB_bkgZZ_2mu2e
MelaPConstant * pAvgSmooth_MCFM_ZZQQB_bkgZZ_2mu2e
Definition: Mela.h:1166
MelaPConstant
Definition: MelaPConstant.h:9
Mela::selfDHggcoupl
double selfDHggcoupl[nSupportedHiggses][SIZE_HGG][2]
Definition: Mela.h:1049
Mela::pAvgSmooth_JHUGen_Had_WH_HSMHiggs
MelaPConstant * pAvgSmooth_JHUGen_Had_WH_HSMHiggs[TVar::nFermionMassRemovalSchemes-1]
Definition: Mela.h:1137
Mela::deletePConstantHandle
void deletePConstantHandle(MelaPConstant *&handle)
Definition: Mela.cc:2824
Mela::setMelaLeptonInterference
void setMelaLeptonInterference(TVar::LeptonInterference myLepInterf=TVar::DefaultLeptonInterf)
Sets the MELA Lepton Interference.
Definition: Mela.cc:345
Mela::pAvgSmooth_MCFM_JJVBF_S_HSMHiggs_4e
MelaPConstant * pAvgSmooth_MCFM_JJVBF_S_HSMHiggs_4e
Definition: Mela.h:1149
Mela::appendTopCandidate
void appendTopCandidate(SimpleParticleCollection_t *TopDaughters)
Adds a top quark as a MELA candidate.
Definition: Mela.cc:372
RooSpin::modelMeasurables
Definition: RooSpin.h:50
Mela::upFrac_rrv
RooRealVar * upFrac_rrv
Definition: Mela.h:1028
Mela::getConstant_2l2q
float getConstant_2l2q()
Definition: Mela.cc:2336
Mela::selfDHbbcoupl
double selfDHbbcoupl[nSupportedHiggses][SIZE_HQQ][2]
Definition: Mela.h:1055
TVar::Production
Production
Definition: TVar.hh:61
Mela::pAvgSmooth_MCFM_Had_WH_bkgZZ_4mu
MelaPConstant * pAvgSmooth_MCFM_Had_WH_bkgZZ_4mu
Definition: Mela.h:1176
Mela::getConstant_4q
float getConstant_4q()
Definition: Mela.cc:2345
Mela::selfDGggcoupl
double selfDGggcoupl[SIZE_GGG][2]
Definition: Mela.h:1090
Mela::pAvgSmooth_JHUGen_ZZGG_HSMHiggs_4e
MelaPConstant * pAvgSmooth_JHUGen_ZZGG_HSMHiggs_4e
Definition: Mela.h:1141
Mela::getCurrentCandidate
MELACandidate * getCurrentCandidate()
Gets the current MELA top-level (input) candList object.
Definition: Mela.cc:586
SIZE_GQQ
@ SIZE_GQQ
Definition: raw_couplings.txt:121
Mela::getPrimaryMass
double getPrimaryMass(int ipart)
A function to get the current primary EW/QCD parameters from MELA.
Definition: Mela.cc:544
Mela::pAvgSmooth_MCFM_Had_ZH_S_HSMHiggs_4e
MelaPConstant * pAvgSmooth_MCFM_Had_ZH_S_HSMHiggs_4e
Definition: Mela.h:1153