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.
|
#include <MELANCSpline_3D_fast.h>
Public Member Functions | |
MELANCSpline_3D_fast () | |
MELANCSpline_3D_fast (const char *name, const char *title) | |
MELANCSpline_3D_fast (const char *name, const char *title, RooAbsReal &inXVar, RooAbsReal &inYVar, RooAbsReal &inZVar, const std::vector< T > &inXList, const std::vector< T > &inYList, const std::vector< T > &inZList, const std::vector< std::vector< std::vector< T >>> &inFcnList, MELANCSplineCore::BoundaryCondition const bcBeginX_=MELANCSplineCore::bcNaturalSpline, MELANCSplineCore::BoundaryCondition const bcEndX_=MELANCSplineCore::bcNaturalSpline, MELANCSplineCore::BoundaryCondition const bcBeginY_=MELANCSplineCore::bcNaturalSpline, MELANCSplineCore::BoundaryCondition const bcEndY_=MELANCSplineCore::bcNaturalSpline, MELANCSplineCore::BoundaryCondition const bcBeginZ_=MELANCSplineCore::bcNaturalSpline, MELANCSplineCore::BoundaryCondition const bcEndZ_=MELANCSplineCore::bcNaturalSpline, Bool_t inUseFloor=true, T inFloorEval=0, T inFloorInt=0) | |
MELANCSpline_3D_fast (const MELANCSpline_3D_fast &other, const char *name=0) | |
virtual TObject * | clone (const char *newname) const |
virtual | ~MELANCSpline_3D_fast () |
void | setRangeValidity (const T valmin, const T valmax, const Int_t whichDirection) |
virtual Int_t | getAnalyticalIntegral (RooArgSet &allVars, RooArgSet &analVars, const char *rangeName=0) const |
virtual Double_t | analyticalIntegral (Int_t code, const char *rangeName=0) const |
Public Member Functions inherited from MELANCSplineCore | |
MELANCSplineCore () | |
MELANCSplineCore (const char *name, const char *title) | |
MELANCSplineCore (const char *name, const char *title, RooAbsReal &inXVar, const std::vector< T > &inXList, Bool_t inUseFloor=true, T inFloorEval=1e-15, T inFloorInt=1e-10) | |
MELANCSplineCore (const MELANCSplineCore &other, const char *name=0) | |
virtual | ~MELANCSplineCore () |
virtual void | setVerbosity (VerbosityLevel flag) |
void | setEvalFloor (T val) |
void | setIntFloor (T val) |
void | doFloor (Bool_t flag) |
Protected Member Functions | |
virtual void | emptyFcnList () |
unsigned int | npointsY () const |
unsigned int | npointsZ () const |
virtual Int_t | getWhichBin (const T &val, const Int_t whichDirection) const |
virtual T | getTVar (const std::vector< T > &kappas, const T &val, const Int_t &bin, const Int_t whichDirection) const |
virtual void | getKappas (std::vector< T > &kappas, const Int_t whichDirection) |
Bool_t | testRangeValidity (const T &val, const Int_t whichDirection) const |
void | cropValueForRange (T &val, const Int_t whichDirection) const |
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 T | interpolateFcn (Int_t code, const char *rangeName=0) const |
virtual Double_t | evaluate () const |
Protected Member Functions inherited from MELANCSplineCore | |
void | getLeafDependents (RooRealProxy &proxy, RooArgSet &set) |
void | addLeafDependents (RooArgSet &set) |
unsigned int | npointsX () const |
virtual void | getBArray (const std::vector< T > &kappas, const std::vector< T > &fcnList, std::vector< T > &BArray, BoundaryCondition const &bcBegin, BoundaryCondition const &bcEnd) const |
virtual void | getAArray (const std::vector< T > &kappas, std::vector< std::vector< T >> &AArray, BoundaryCondition const &bcBegin, BoundaryCondition const &bcEnd) const |
virtual std::vector< std::vector< T > > | getCoefficientsAlongDirection (const std::vector< T > &kappas, const TMatrix_t &Ainv, const std::vector< T > &fcnList, BoundaryCondition const &bcBegin, BoundaryCondition const &bcEnd, const Int_t pickBin) const |
virtual std::vector< T > | getCoefficients (const TVector_t &S, const std::vector< T > &kappas, const std::vector< T > &fcnList, const Int_t &bin) const |
virtual T | evalSplineSegment (const std::vector< T > &coefs, const T &kappa, const T &tup, const T &tdn, Bool_t doIntegrate=false) const |
Protected Attributes | |
T | rangeYmin |
T | rangeYmax |
T | rangeZmin |
T | rangeZmax |
const BoundaryCondition | bcBeginX |
const BoundaryCondition | bcEndX |
const BoundaryCondition | bcBeginY |
const BoundaryCondition | bcEndY |
const BoundaryCondition | bcBeginZ |
const BoundaryCondition | bcEndZ |
RooRealProxy | theYVar |
RooRealProxy | theZVar |
std::vector< T > | YList |
std::vector< T > | ZList |
std::vector< std::vector< std::vector< T > > > | FcnList |
std::vector< T > | kappaX |
std::vector< T > | kappaY |
std::vector< T > | kappaZ |
std::vector< std::vector< std::vector< std::vector< std::vector< std::vector< T > > > > > > | coefficients |
Protected Attributes inherited from MELANCSplineCore | |
VerbosityLevel | verbosity |
Bool_t | useFloor |
T | floorEval |
T | floorInt |
T | rangeXmin |
T | rangeXmax |
RooRealProxy | theXVar |
RooListProxy | leafDepsList |
std::vector< T > | XList |
Additional Inherited Members | |
Public Types inherited from MELANCSplineCore | |
enum | VerbosityLevel { kSilent, kError, kVerbose } |
enum | BoundaryCondition { bcApproximatedSlope, bcClamped, bcApproximatedSecondDerivative, bcNaturalSpline, bcQuadratic, bcQuadraticWithNullSlope, NBoundaryConditions } |
typedef Float_t | T |
typedef TMatrixT< T > | TMatrix_t |
typedef TVectorT< T > | TVector_t |
Definition at line 11 of file MELANCSpline_3D_fast.h.
MELANCSpline_3D_fast::MELANCSpline_3D_fast | ( | ) |
MELANCSpline_3D_fast::MELANCSpline_3D_fast | ( | const char * | name, |
const char * | title | ||
) |
Definition at line 26 of file MELANCSpline_3D_fast.cc.
MELANCSpline_3D_fast::MELANCSpline_3D_fast | ( | const char * | name, |
const char * | title, | ||
RooAbsReal & | inXVar, | ||
RooAbsReal & | inYVar, | ||
RooAbsReal & | inZVar, | ||
const std::vector< T > & | inXList, | ||
const std::vector< T > & | inYList, | ||
const std::vector< T > & | inZList, | ||
const std::vector< std::vector< std::vector< T >>> & | inFcnList, | ||
MELANCSplineCore::BoundaryCondition const | bcBeginX_ = MELANCSplineCore::bcNaturalSpline , |
||
MELANCSplineCore::BoundaryCondition const | bcEndX_ = MELANCSplineCore::bcNaturalSpline , |
||
MELANCSplineCore::BoundaryCondition const | bcBeginY_ = MELANCSplineCore::bcNaturalSpline , |
||
MELANCSplineCore::BoundaryCondition const | bcEndY_ = MELANCSplineCore::bcNaturalSpline , |
||
MELANCSplineCore::BoundaryCondition const | bcBeginZ_ = MELANCSplineCore::bcNaturalSpline , |
||
MELANCSplineCore::BoundaryCondition const | bcEndZ_ = MELANCSplineCore::bcNaturalSpline , |
||
Bool_t | inUseFloor = true , |
||
T | inFloorEval = 0 , |
||
T | inFloorInt = 0 |
||
) |
Definition at line 40 of file MELANCSpline_3D_fast.cc.
MELANCSpline_3D_fast::MELANCSpline_3D_fast | ( | const MELANCSpline_3D_fast & | other, |
const char * | name = 0 |
||
) |
Definition at line 229 of file MELANCSpline_3D_fast.cc.
|
inlinevirtual |
Definition at line 69 of file MELANCSpline_3D_fast.h.
|
virtual |
Implements MELANCSplineCore.
Definition at line 491 of file MELANCSpline_3D_fast.cc.
|
inlinevirtual |
|
protectedvirtual |
|
inlineprotectedvirtual |
|
protectedvirtual |
Implements MELANCSplineCore.
Definition at line 438 of file MELANCSpline_3D_fast.cc.
|
virtual |
|
protectedvirtual |
Definition at line 426 of file MELANCSpline_3D_fast.cc.
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Implements MELANCSplineCore.
Definition at line 250 of file MELANCSpline_3D_fast.cc.
|
inlineprotected |
Definition at line 79 of file MELANCSpline_3D_fast.h.
|
inlineprotected |
Definition at line 80 of file MELANCSpline_3D_fast.h.
|
virtual |
|
protectedvirtual |
|
protected |
Definition at line 18 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 20 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 22 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 19 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 21 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 23 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 39 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 30 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 32 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 33 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 34 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 14 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 13 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 16 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 15 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 25 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 26 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 27 of file MELANCSpline_3D_fast.h.
|
protected |
Definition at line 28 of file MELANCSpline_3D_fast.h.