JHUGen MELA
v2.4.1
Matrix element calculations as used in JHUGen. MELA is an important tool that was used for the Higgs boson discovery and for precise measurements of its structure and interactions. Please see the website https://spin.pha.jhu.edu/ and papers cited there for more details, and kindly cite those papers when using this code.
|
Go to the documentation of this file. 1 #ifndef MELANCSPLINE_3D_FAST
2 #define MELANCSPLINE_3D_FAST
6 #include "RooRealProxy.h"
7 #include "RooRealVar.h"
8 #include "RooAbsReal.h"
30 std::vector<std::vector<std::vector<T>>>
FcnList;
35 std::vector<std::vector<
36 std::vector<std::vector<
37 std::vector<std::vector<T>>
53 const std::vector<T>& inXList,
54 const std::vector<T>& inYList,
55 const std::vector<T>& inZList,
56 const std::vector<std::vector<std::vector<T>>>& inFcnList,
63 Bool_t inUseFloor=
true,
73 virtual Int_t
getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars,
const char* rangeName=0)
const;
82 virtual Int_t
getWhichBin(
const T& val,
const Int_t whichDirection)
const;
83 virtual T getTVar(
const std::vector<T>& kappas,
const T& val,
const Int_t& bin,
const Int_t whichDirection)
const;
84 virtual void getKappas(std::vector<T>& kappas,
const Int_t whichDirection);
91 const Int_t& ybin,
const Int_t& zbin,
const BoundaryCondition bcEndY
const BoundaryCondition bcBeginZ
virtual T interpolateFcn(Int_t code, const char *rangeName=0) const
std::vector< std::vector< std::vector< T > > > FcnList
virtual void getKappas(std::vector< T > &kappas, const Int_t whichDirection)
const BoundaryCondition bcBeginY
void cropValueForRange(T &val, const Int_t whichDirection) const
Bool_t testRangeValidity(const T &val, const Int_t whichDirection) const
const BoundaryCondition bcBeginX
virtual std::vector< std::vector< T > > getCoefficientsPerYPerZ(const std::vector< T > &kappaX, const TMatrix_t &xAinv, const Int_t &ybin, const Int_t &zbin, MELANCSplineCore::BoundaryCondition const &bcBegin, MELANCSplineCore::BoundaryCondition const &bcEnd, const Int_t xbin) const
virtual Double_t evaluate() const
virtual void emptyFcnList()
unsigned int npointsZ() const
const BoundaryCondition bcEndZ
virtual Int_t getAnalyticalIntegral(RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const
virtual T getTVar(const std::vector< T > &kappas, const T &val, const Int_t &bin, const Int_t whichDirection) const
virtual ~MELANCSpline_3D_fast()
virtual Double_t analyticalIntegral(Int_t code, const char *rangeName=0) const
std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > coefficients
unsigned int npointsY() const
const BoundaryCondition bcEndX
virtual Int_t getWhichBin(const T &val, const Int_t whichDirection) const
virtual TObject * clone(const char *newname) const
void setRangeValidity(const T valmin, const T valmax, const Int_t whichDirection)