33#ifndef ROOT_TMVA_MethodCuts
34#define ROOT_TMVA_MethodCuts
68 const TString& theOption =
"MC:150:10000:");
#define ClassDef(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
TH1 is the base class of all histogram classes in ROOT.
A simple Binary search tree including a volume search method.
Class that contains all the data information.
Interface for a fitter 'target'.
Interface for all concrete MVA method implementations.
Virtual base Class for all MVA method.
virtual void ReadWeightsFromStream(std::istream &)=0
Multivariate optimisation of signal efficiency for given background efficiency, applying rectangular ...
TRandom * fRandom
random generator for MC optimisation method
Double_t fEffRef
reference efficiency
TString fFitMethodS
chosen fit method (string)
Double_t ComputeEstimator(std::vector< Double_t > &)
returns estimator for "cut fitness" used by GA.
void MakeClassSpecific(std::ostream &, const TString &) const
write specific classifier response
void ReadWeightsFromStream(std::istream &i)
read the cuts from stream
Double_t GetEfficiency(const TString &, Types::ETreeType, Double_t &)
Overloaded function to create background efficiency (rejection) versus signal efficiency plot (first ...
BinarySearchTree * fBinaryTreeS
Double_t EstimatorFunction(std::vector< Double_t > &)
returns estimator for "cut fitness" used by GA
void SetTestSignalEfficiency(Double_t effS)
std::vector< Int_t > * fRangeSign
used to match cuts to fit parameters (and vice versa)
Int_t fNpar
number of parameters in fit (default: 2*Nvar)
void DeclareOptions()
define the options (their key words) that can be set in the option string.
TString fEffMethodS
chosen efficiency calculation method (string)
EFitMethodType fFitMethod
chosen fit method
const Ranking * CreateRanking()
Bool_t fNegEffWarning
flag risen in case of negative efficiency warning
Double_t fEffSMin
used to test optimized signal efficiency
Double_t * fCutRangeMax
maximum of allowed cut range
Double_t GetSignificance(void) const
compute significance of mean difference
void MatchCutsToPars(std::vector< Double_t > &, Double_t *, Double_t *)
translates cuts into parameters
static MethodCuts * DynamicCast(IMethod *method)
void GetHelpMessage() const
get help message text
void Train(void)
training method: here the cuts are optimised for the training sample
Double_t GetRarity(Double_t, Types::ESBType) const
compute rarity:
static const Double_t fgMaxAbsCutVal
std::vector< TH1 * > * fVarHistB
reference histograms (background)
void CreateVariablePDFs(void)
for PDF method: create efficiency reference histograms and PDFs
std::vector< PDF * > * fVarPdfB
reference PDFs (background)
EEffMethod fEffMethod
chosen efficiency calculation method
Double_t * fTmpCutMin
temporary minimum requirement
Double_t GetMvaValue(Double_t *err=nullptr, Double_t *errUpper=nullptr)
cut evaluation: returns 1.0 if event passed, 0.0 otherwise
Double_t GetSeparation(PDF *=nullptr, PDF *=nullptr) const
compute "separation" defined as
Double_t ** fCutMin
minimum requirement
std::vector< TH1 * > * fVarHistS
reference histograms (signal)
std::vector< Double_t > * fRmsB
RMSs of variables (background)
Double_t fEffSMax
used to test optimized signal efficiency
std::vector< TH1 * > * fVarHistB_smooth
smoothed reference histograms (background)
Double_t GetmuTransform(TTree *)
std::vector< PDF * > * fVarPdfS
reference PDFs (signal)
void GetEffsfromSelection(Double_t *cutMin, Double_t *cutMax, Double_t &effS, Double_t &effB)
compute signal and background efficiencies from event counting for given cut sample
void AddWeightsXMLTo(void *parent) const
create XML description for LD classification and regression (for arbitrary number of output classes/t...
void Init(void)
default initialisation called by all constructors
Double_t GetTrainingEfficiency(const TString &)
Overloaded function to create background efficiency (rejection) versus signal efficiency plot (first ...
virtual Bool_t HasAnalysisType(Types::EAnalysisType type, UInt_t numberClasses, UInt_t numberTargets)
Cuts can only handle classification with 2 classes.
void ProcessOptions()
process user options.
void WriteMonitoringHistosToFile(void) const
write histograms and PDFs to file for monitoring purposes
void CheckSetup()
check may be overridden by derived class (sometimes, eg, fitters are used which can only be implement...
void MatchParsToCuts(const std::vector< Double_t > &, Double_t *, Double_t *)
translates parameters into cuts
virtual ~MethodCuts(void)
destructor
void TestClassification()
nothing to test
Double_t * fCutRangeMin
minimum of allowed cut range
BinarySearchTree * fBinaryTreeB
std::vector< Double_t > * fRmsS
RMSs of variables (signal)
std::vector< Double_t > * fMeanS
means of variables (signal)
std::vector< Double_t > * fMeanB
means of variables (background)
TString * fAllVarsI
what to do with variables
std::vector< EFitParameters > * fFitParams
vector for series of fit methods
Double_t GetSeparation(TH1 *, TH1 *) const
compute "separation" defined as
Double_t fTestSignalEff
used to test optimized signal efficiency
std::vector< Interval * > fCutRange
allowed ranges for cut optimisation
Double_t * fTmpCutMax
temporary maximum requirement
std::vector< TH1 * > * fVarHistS_smooth
smoothed reference histograms (signal)
void MatchParsToCuts(Double_t *, Double_t *, Double_t *)
Double_t ** fCutMax
maximum requirement
void ReadWeightsFromXML(void *wghtnode)
read coefficients from xml weight file
TH1 * fEffBvsSLocal
intermediate eff. background versus eff signal histo
void GetEffsfromPDFs(Double_t *cutMin, Double_t *cutMax, Double_t &effS, Double_t &effB)
compute signal and background efficiencies from PDFs for given cut sample
Double_t GetCuts(Double_t effS, std::vector< Double_t > &cutMin, std::vector< Double_t > &cutMax) const
retrieve cut values for given signal efficiency
void PrintCuts(Double_t effS) const
print cuts
PDF wrapper for histograms; uses user-defined spline interpolation.
Ranking for variables in method (implementation)
This is the base class for the ROOT Random number generators.
A TTree represents a columnar dataset.
create variable transformations