HyperPlot
v1
Bin and visualise multidimensional datasets
|
HyperPlot, Author: Sam Harnew, sam.h , Date: Dec 2015 arne w@gma il.c om
Algorithm to adaptively create a HyperVolumeBinning for a specific HyperPointSet, taking limits from a HyperCuboid.
Additionally, you can compare the significance of splitting in different dimensions using the likelihood ratio of the flat line and the step function. choose to split in the dimension that gives the biggest significance.
Definition at line 33 of file HyperBinningMakerLikelihood.h.
#include <HyperBinningMakerLikelihood.h>
Public Member Functions | |
HyperBinningMakerLikelihood (const HyperCuboid &binningRange, const HyperPointSet &data) | |
virtual void | makeBinning () |
~HyperBinningMakerLikelihood () | |
Public Member Functions inherited from HyperBinningMaker | |
HyperBinningMaker (const HyperCuboid &binningRange, const HyperPointSet &data) | |
void | setBinningDimensions (std::vector< int > dims) |
void | addShadowHyperPointSet (const HyperPointSet &data) |
void | setSeed (int seed) |
void | useSnapToGrid (bool val) |
void | setGridMultiplier (HyperPoint &multipliers) |
void | setGridMultiplier (double multiplier) |
void | useEventWeights (bool val=true) |
void | setMinimumBinContent (double val) |
void | setShadowMinimumBinContent (double val) |
void | setMinimumEdgeLength (double val) |
void | setMinimumEdgeLength (HyperPoint val) |
void | setHyperFunction (HyperFunction *fnc) |
Set the HyperFunction - only used by some binning Algs. | |
void | drawAfterEachIteration (TString path) |
void | setNames (HyperName names) |
int & | getGlobalVolumeStatus (int volumeNumber) |
int & | getDimensionSpecificVolumeStatus (int volumeNumber, int dimension) |
const int & | getGlobalVolumeStatus (int volumeNumber) const |
const int & | getDimensionSpecificVolumeStatus (int volumeNumber, int dimension) const |
int | getNumContinueBins (int dimension=-1) const |
int | getNumBins () const |
int | getNumHyperVolumes () const |
int | split (int volumeNumber, int dimension, double splitPoint) |
HyperCuboid | splitBelowPoint (int dim, double splitPoint, const HyperCuboid &original) const |
HyperCuboid | splitAbovePoint (int dim, double splitPoint, const HyperCuboid &original) const |
double | getSumOfWeights (const HyperPointSet &hyperPointSet) const |
double | getWeight (const HyperPoint &hyperPoint) const |
bool | isValidBinningDimension (int dimension) |
virtual bool | passFunctionCriteria (HyperCuboid &cuboid1, HyperCuboid &cuboid2) |
HyperPointSet | filterHyperPointSet (const HyperPointSet &hyperPointSet, const HyperCuboid &hyperCuboid, bool print=false) const |
void | addBin (const HyperCuboid &hyperCuboid, const HyperPointSet &hyperPointSet, const HyperPointSet &shadowHyperPointSet, int status) |
void | setDimSpecStatusFromMinBinWidths (int volumeNumber) |
void | updateGlobalStatusFromDimSpecific (int volumeNumber) |
bool | snapToGrid (const HyperCuboid &cuboid, int dimension, double &splitCoord) const |
virtual void | startedAlgorithm () |
virtual void | startedIteration () |
void | drawCurrentState (TString path) const |
virtual void | finishedIteration () |
virtual void | finishedAlgorithm () |
HyperBinningMemRes | getHyperVolumeBinning () const |
HyperHistogram * | getHyperBinningHistogram () const |
HyperHistogram * | getShadowHyperBinningHistogram () const |
HyperHistogram * | getRatioHyperBinningHistogram () const |
virtual | ~HyperBinningMaker () |
destructor | |
double | countEventsBelowSplitPoint (int binNumber, int dimension, double splitPoint) const |
double | countEventsInHyperCuboid (const HyperPointSet &hyperPointSet, const HyperCuboid &hyperCuboid) const |
double | countShadowEventsBelowSplitPoint (int binNumber, int dimension, double splitPoint) const |
double | findSmartSplitPoint (int binNumber, int dimension, double dataFraction) const |
int | smartSplit (int binNumber, int dimension, double dataFraction) |
int | smartSplitAll (int dimension, double dataFraction) |
int | smartSplitAllRandomise (double dataFraction=0.5) |
int | smartMultiSplit (int binNumber, int dimension, int parts) |
int | smartMultiSplit (int binNumber, int dimension) |
int | smartMultiSplitAll (int dimension) |
double | findSmartSplitPointInt (int binNumber, int dimension, double dataFraction) const |
int | smartSplitInt (int binNumber, int dimension, double dataFraction) |
int | smartSplitAllInt (int dimension, double dataFraction) |
int | splitAll (int dimension, double splitPoint) |
int | splitAllRandomise (double splitPoint=0.5) |
int | likelihoodSplit (int binNumber) |
int | likelihoodSplitAll () |
int | smartLikelihoodSplit (int binNumber) |
int | smartLikelihoodSplitAll () |
void | getSplitToMinNeg2LLH (double &split, double &sig, int binNumber, int dimension, bool useConstraints=true) |
void | getDimWithLargestSplitSignificance (int &dim, double &split, int binNumber, bool useConstraints=true) |
TH1D * | scanSig (int binNumber, int dimension, int nbins, bool useConstraints=true) |
double | neg2LLH (int binNumber, int dimension, double splitPoint, bool useConstraints=true) |
double | nullNeg2LLH (int binNumber) |
Additional Inherited Members | |
Static Public Member Functions inherited from HyperBinningMaker | |
static void | setOutputLevel (bool val) |
Protected Types inherited from HyperBinningMaker | |
enum | VolumeStatus { DONE, CONTINUE } |
Protected Attributes inherited from HyperBinningMaker | |
std::vector< HyperCuboid > | _hyperCuboids |
std::vector< std::vector< int > > | _linkedBins |
std::vector< HyperPointSet > | _hyperPointSets |
std::vector< HyperPointSet > | _shadowHyperPointSets |
std::vector< int > | _status |
std::vector< std::vector< int > > | _dimSpecificStatus |
std::vector< int > | _binningDimensions |
bool | _shadowAdded |
bool | _useEventWeights |
double | _minimumBinContent |
double | _shadowMinimumBinContent |
HyperPoint | _minimumEdgeLength |
TRandom * | _random |
bool | _drawAlgorithm |
TString | _drawAlgorithmDir |
int | _iterationNum |
HyperName | _names |
HyperFunction * | _func |
bool | _snapToGrid |
HyperPoint | _gridMultiplier |
Static Protected Attributes inherited from HyperBinningMaker | |
static bool | s_printBinning = true |
HyperBinningMakerLikelihood::HyperBinningMakerLikelihood | ( | const HyperCuboid & | binningRange, |
const HyperPointSet & | data | ||
) |
Constructor that initiates the base class HyperBinningMaker
Definition at line 6 of file HyperBinningMakerLikelihood.cpp.
HyperBinningMakerLikelihood::~HyperBinningMakerLikelihood | ( | ) |
Destructor
Definition at line 31 of file HyperBinningMakerLikelihood.cpp.
|
virtual |
run the algorithm
Implements HyperBinningMaker.
Definition at line 12 of file HyperBinningMakerLikelihood.cpp.