JHUGen MELA  JHUGen v7.5.6, MELA v2.4.2
Matrix element calculations as used in JHUGen.
TUtil.hh File Reference
#include <string>
#include <vector>
#include <complex>
#include "MelaIO.h"
#include "TCouplings.hh"
#include "TMCFMUtils.hh"
#include "TModParameters.hh"
#include "TNNPDFDriver.hh"
#include "TModKinematics.hh"
#include "TModJHUGen.hh"
#include "TModJHUGenMELA.hh"
#include "TModHiggsMatEl.hh"
#include "TModGravitonMatEl.hh"
#include "TModZprimeMatEl.hh"
#include "TModHiggsJJMatEl.hh"
#include "TModHiggsJMatEl.hh"
#include "TModVHiggsMatEl.hh"
#include "TModTTBHMatEl.hh"
#include "TLorentzVector.h"
#include "TTree.h"
#include "TH1F.h"
#include "TH2F.h"
#include "TH1D.h"
#include "TH2D.h"
#include "TFile.h"
#include "TF1.h"
Include dependency graph for TUtil.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 TUtil
 

Functions

void TUtil::applyLeptonMassCorrection (bool flag=true)
 
void TUtil::applyJetMassCorrection (bool flag=true)
 
void TUtil::setLeptonMassScheme (TVar::FermionMassRemoval scheme=TVar::ConserveDifermionMass)
 
void TUtil::setJetMassScheme (TVar::FermionMassRemoval scheme=TVar::ConserveDifermionMass)
 
void TUtil::constrainedRemovePairMass (TLorentzVector &p1, TLorentzVector &p2, double m1=0, double m2=0)
 
void TUtil::scaleMomentumToEnergy (const TLorentzVector &massiveJet, TLorentzVector &masslessJet, double mass=0)
 
std::pair< TLorentzVector, TLorentzVector > TUtil::removeMassFromPair (TLorentzVector const &jet1, int const &jet1Id, TLorentzVector const &jet2, int const &jet2Id, double m1=0, double m2=0)
 
void TUtil::adjustTopDaughters (SimpleParticleCollection_t &daughters)
 
void TUtil::computeFakeJet (TLorentzVector const &realJet, TLorentzVector const &others, TLorentzVector &fakeJet)
 
std::pair< TLorentzVector, TLorentzVector > TUtil::ComplexBoost (TVector3 const &beta, TLorentzVector const &p4)
 
void TUtil::computeAngles (float &costhetastar, float &costheta1, float &costheta2, float &Phi, float &Phi1, TLorentzVector Z1_lept1, int Z1_lept1Id, TLorentzVector Z1_lept2, int Z1_lept2Id, TLorentzVector Z2_lept1, int Z2_lept1Id, TLorentzVector Z2_lept2, int Z2_lept2Id)
 
void TUtil::computeAnglesCS (float const &pbeam, float &costhetastar, float &costheta1, float &costheta2, float &Phi, float &Phi1, TLorentzVector Z1_lept1, int Z1_lept1Id, TLorentzVector Z1_lept2, int Z1_lept2Id, TLorentzVector Z2_lept1, int Z2_lept1Id, TLorentzVector Z2_lept2, int Z2_lept2Id)
 
void TUtil::computeVBFAngles (float &costhetastar, float &costheta1, float &costheta2, float &Phi, float &Phi1, float &Q2V1, float &Q2V2, TLorentzVector p4M11, int Z1_lept1Id, TLorentzVector p4M12, int Z1_lept2Id, TLorentzVector p4M21, int Z2_lept1Id, TLorentzVector p4M22, int Z2_lept2Id, TLorentzVector jet1, int jet1Id, TLorentzVector jet2, int jet2Id, TLorentzVector *injet1=0, int injet1Id=0, TLorentzVector *injet2=0, int injet2Id=0)
 
void TUtil::computeVBFAngles_ComplexBoost (float &costhetastar, float &costheta1_real, float &costheta1_imag, float &costheta2_real, float &costheta2_imag, float &Phi, float &Phi1, float &Q2V1, float &Q2V2, TLorentzVector p4M11, int Z1_lept1Id, TLorentzVector p4M12, int Z1_lept2Id, TLorentzVector p4M21, int Z2_lept1Id, TLorentzVector p4M22, int Z2_lept2Id, TLorentzVector jet1, int jet1Id, TLorentzVector jet2, int jet2Id, TLorentzVector *injet1=0, int injet1Id=0, TLorentzVector *injet2=0, int injet2Id=0)
 
void TUtil::computeVHAngles (float &costhetastar, float &costheta1, float &costheta2, float &Phi, float &Phi1, float &m1, float &m2, TLorentzVector p4M11, int Z1_lept1Id, TLorentzVector p4M12, int Z1_lept2Id, TLorentzVector p4M21, int Z2_lept1Id, TLorentzVector p4M22, int Z2_lept2Id, TLorentzVector jet1, int jet1Id, TLorentzVector jet2, int jet2Id, TLorentzVector *injet1=0, int injet1Id=0, TLorentzVector *injet2=0, int injet2Id=0)
 
void TUtil::computeTTHAngles (float &hs, float &hincoming, float &hTT, float &PhiTT, float &Phi1, float &hbb, float &hWW, float &Phibb, float &Phi1bb, float &hWplusf, float &PhiWplusf, float &hWminusf, float &PhiWminusf, TLorentzVector p4M11, int Z1_lept1Id, TLorentzVector p4M12, int Z1_lept2Id, TLorentzVector p4M21, int Z2_lept1Id, TLorentzVector p4M22, int Z2_lept2Id, TLorentzVector b, int bId, TLorentzVector Wplusf, int WplusfId, TLorentzVector Wplusfb, int WplusfbId, TLorentzVector bbar, int bbarId, TLorentzVector Wminusf, int WminusfId, TLorentzVector Wminusfb, int WminusfbId, TLorentzVector *injet1=0, int injet1Id=0, TLorentzVector *injet2=0, int injet2Id=0)
 
void TUtil::SetEwkCouplingParameters (double ext_Gf, double ext_aemmz, double ext_mW, double ext_mZ, double ext_xW, int ext_ewscheme)
 
void TUtil::SetMass (double inmass, int ipart)
 
void TUtil::SetDecayWidth (double inwidth, int ipart)
 
double TUtil::GetMass (int ipart)
 
double TUtil::GetDecayWidth (int ipart)
 
double TUtil::GetMass (const MELAParticle *part)
 
double TUtil::GetDecayWidth (const MELAParticle *part)
 
void TUtil::GetMassWidth (int ipart, double &m, double &ga)
 
void TUtil::GetMassWidth (const MELAParticle *part, double &m, double &ga)
 
void TUtil::SetCKMElements (double *invckm_ud, double *invckm_us, double *invckm_cd, double *invckm_cs, double *invckm_ts, double *invckm_tb, double *invckm_ub=0, double *invckm_cb=0, double *invckm_td=0)
 
void TUtil::SetMadgraphCKMElements (double ckmlambda=0.2265, double ckma=0.79, double ckmrho=0.141, double ckmeta=0)
 
double TUtil::GetCKMElement (int iquark, int jquark)
 
std::complex< double > TUtil::GetMadgraphCKMElement (int iquark, int jquark)
 
double TUtil::InterpretScaleScheme (const TVar::Production &production, const TVar::MatrixElement &matrixElement, const TVar::EventScaleScheme &scheme, TLorentzVector p[mxpart])
 
void TUtil::SetAlphaS (double &Q_ren, double &Q_fac, double multiplier_ren, double multiplier_fac, int mynloop, int mynflav, std::string mypartons)
 
void TUtil::GetAlphaS (double *alphas_, double *alphasmz_)
 
bool TUtil::MCFM_chooser (const TVar::Process &process, const TVar::Production &production, const TVar::LeptonInterference &leptonInterf, const TVar::VerbosityLevel &verbosity, const TVar::simple_event_record &mela_event)
 
bool TUtil::MCFM_SetupParticleCouplings (const TVar::Process &process, const TVar::Production &production, const TVar::VerbosityLevel &verbosity, const TVar::simple_event_record &mela_event, std::vector< int > *partOrder, std::vector< int > *apartOrder)
 
TString TUtil::GetMCFMParticleLabel (const int &pid, bool useQJ, bool useExtendedConventions)
 
void TUtil::InitJHUGenMELA (const char *pathtoPDFSet, int PDFMember, double collider_sqrts)
 
void TUtil::SetJHUGenHiggsMassWidth (double MReso, double GaReso)
 
void TUtil::SetJHUGenDistinguishWWCouplings (bool doAllow)
 
void TUtil::ResetAmplitudeIncludes ()
 
void TUtil::SetMadgraphSpinZeroCouplings (SpinZeroCouplings const *Hcouplings)
 
void TUtil::SetMCFMSpinZeroCouplings (bool useBSM, SpinZeroCouplings const *Hcouplings, bool forceZZ)
 
void TUtil::SetMCFMaTQGCCouplings (bool useBSM, aTQGCCouplings const *couplings)
 
void TUtil::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)
 
void TUtil::SetJHUGenSpinZeroGGCouplings (double Hggcoupl[SIZE_HGG][2])
 
void TUtil::SetJHUGenSpinZeroQQCouplings (double Hqqcoupl[SIZE_HQQ][2])
 
void TUtil::SetJHUGenSpinOneCouplings (double Zqqcoupl[SIZE_ZQQ][2], double Zvvcoupl[SIZE_ZVV][2])
 
void TUtil::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])
 
void TUtil::SetJHUGenVprimeContactCouplings (double Zpffcoupl[SIZE_Vpff][2], double Wpffcoupl[SIZE_Vpff][2])
 
void TUtil::SetMCFMAZffCouplings (bool useBSM, AZffCouplings const *Zcouplings)
 
void TUtil::SetJHUGenAZffCouplings (bool needAZff, double AZffcoupl[SIZE_AZff][2])
 
bool TUtil::MCFM_masscuts (double s[][mxpart], const TVar::Process &process)
 
bool TUtil::MCFM_smalls (double s[][mxpart], int npart)
 
double TUtil::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)
 
double TUtil::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)
 
double TUtil::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)
 
double TUtil::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)
 
double TUtil::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)
 
double TUtil::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)
 
double TUtil::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)
 
int TUtil::WipeMEArray (const TVar::Process &process, const TVar::Production &production, const int id[mxpart], double msq[nmsq][nmsq], const TVar::VerbosityLevel &verbosity)
 
bool TUtil::CheckPartonMomFraction (const TLorentzVector &p0, const TLorentzVector &p1, double xx[2], const double &EBEAM, const TVar::VerbosityLevel &verbosity)
 
void TUtil::ComputePDF (const TLorentzVector &p0, const TLorentzVector &p1, double fx1[nmsq], double fx2[nmsq], const double &EBEAM, const TVar::VerbosityLevel &verbosity)
 
double TUtil::SumMEPDF (const TLorentzVector &p0, const TLorentzVector &p1, double msq[nmsq][nmsq], MelaIO *RcdME, const double &EBEAM, const TVar::VerbosityLevel &verbosity)
 
double TUtil::ResonancePropagator (double const &sqrts, TVar::ResonancePropagatorScheme scheme)
 
void TUtil::GetBoostedParticleVectors (MELACandidate *melaCand, TVar::simple_event_record &mela_event, TVar::VerbosityLevel verbosity=TVar::DEBUG)
 
MELACandidateTUtil::ConvertVectorFormat (SimpleParticleCollection_t *pDaughters, SimpleParticleCollection_t *pAssociated, SimpleParticleCollection_t *pMothers, bool isGen, std::vector< MELAParticle * > *particleList, std::vector< MELACandidate * > *candList)
 
MELAThreeBodyDecayCandidateTUtil::ConvertThreeBodyDecayCandidate (SimpleParticleCollection_t *tbdDaughters, std::vector< MELAParticle * > *particleList, std::vector< MELAThreeBodyDecayCandidate * > *tbdCandList)
 
void TUtil::PrintCandidateSummary (MELACandidate *cand)
 
void TUtil::PrintCandidateSummary (TVar::simple_event_record *cand)
 

Variables

bool TUtil::forbidMassiveLeptons = true
 Remove fermion mass if the flag is set to true. More...
 
bool TUtil::forbidMassiveJets = true
 
TVar::FermionMassRemoval TUtil::LeptonMassScheme = TVar::ConserveDifermionMass
 
TVar::FermionMassRemoval TUtil::JetMassScheme = TVar::ConserveDifermionMass