Jpp
|
Implementation of the Chi2 test for 2D histograms. More...
#include <JTestChi2R_2D.hh>
Public Member Functions | |
JTestChi2R_2D () | |
Default constructor. More... | |
std::istream & | read (std::istream &in) override |
Read test parameters from input. More... | |
std::ostream & | write (std::ostream &out, std::string delimiter=" ", bool onlyFailures=false) const override |
Write test result to output. More... | |
void | test (TObject *o1, TObject *o2) override |
Applies Chi2 test for two ROOT TH2 histograms. More... | |
virtual void | save (TFile *f, std::string path, bool onlyFailures=false) override |
Writes the test result to root file. More... | |
void | clear () override |
Clear results. More... | |
std::string | getName () override |
Get test name. More... | |
std::string | getParameter () override |
Get parameter name. More... | |
JTestResult | JChi2Test (TH1 *h1, TH1 *h2, double threshold, std::string testName, std::string parameterName, std::string options) |
Chi2 test for 1D histograms. More... | |
JTestResult | JChi2TestSlice (TH2 *h1, TH2 *h2, double threshold, double failuresThreshold, std::string testName, std::string parameterName, std::string options, char slice) |
Chi2 test for sliced 2D histograms. More... | |
JTestResult | JChi2TestBin_2D (TH2 *h1, TH2 *h2, double outliersThreshold, double chi2Threshold, std::string testName, std::string parameterName) |
Bin-by-Bin Chi2 comparison of 2D histograms. More... | |
Public Attributes | |
std::vector< JTestResult > | results |
Private Attributes | |
char | slice |
axis to slice. More... | |
double | threshold |
threshold p-value to decide if test is passed. More... | |
double | failuresThreshold |
threshold p-value to decide if test is passed. More... | |
const std::string | name = "Chi2R_2D" |
test name. More... | |
const std::string | options = "CHI2/NDF" |
options for the ROOT chi2 test. More... | |
const std::string | parameter = "chi2/NDF" |
parameter name. More... | |
Implementation of the Chi2 test for 2D histograms.
Definition at line 21 of file JTestChi2R_2D.hh.
|
inline |
|
inlineoverridevirtual |
Read test parameters from input.
in | input stream |
Implements JTest_t.
Definition at line 38 of file JTestChi2R_2D.hh.
|
inlineoverridevirtual |
Write test result to output.
out | output stream |
delimiter | field delimiter |
onlyFailures | If true, write only failures. |
Implements JTest_t.
Definition at line 50 of file JTestChi2R_2D.hh.
Applies Chi2 test for two ROOT TH2 histograms.
o1 | First histogram |
o2 | Second histogram |
Implements JTest_t.
Definition at line 68 of file JTestChi2R_2D.hh.
|
inlineoverridevirtual |
Writes the test result to root file.
f | A ROOT file |
path | Path in root file. |
onlyFailures | If true, write only failures. |
Implements JTest_t.
Definition at line 99 of file JTestChi2R_2D.hh.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineinherited |
Chi2 test for 1D histograms.
The input parameter threshold, is used to evaluate whether the test is passed or failed.
The evaluation is done by comparing the threshold value with the result of the Chi2 test. The output of a Chi2 test is a p-value.
The parameter threshold should therefore be a real value between 0 and 1.
h1 | First histogram |
h2 | Second histogram |
threshold | Threshold value for the test result |
parameterName | Name of the parameter used to test the histograms |
testName | Name of the test used to compare the histograms |
options | ROOT options for the test. |
Definition at line 39 of file JTestChi2_t.hh.
|
inlineinherited |
Chi2 test for sliced 2D histograms.
The histograms are sliced along the axis specified by the slice parameter. A slice per bin is made.
For each of the slices, the input parameter threshold, is used to evaluate whether the test is passed or failed.
The evaluation is done by comparing the threshold value with the result of the Chi2 test. The output of a Chi2 test is a p-value.
The parameter threshold should therefore be a real value between 0 and 1.
The fraction of failed tests is compared to the input parameter failuresThreshold. If this fraction is larger than failuresThreshold, the test fails.
h1 | First histogram |
h2 | Second histogram |
threshold | Threshold value for the test result |
failuresThreshold | Threshold value for the fraction of failed tests. |
parameterName | Name of the parameter used to test the histograms |
testName | Name of the test used to compare the histograms |
options | ROOT options for the test. |
slice | The axis along which the histogram is sliced. |
Definition at line 111 of file JTestChi2_t.hh.
|
inlineinherited |
Bin-by-Bin Chi2 comparison of 2D histograms.
The Chi distance between h1 and h2 is calculated for each bin, and compared to the chi2Threshold() parameter.
If the calculated Chi distance is above this threshold, the test is passed for that bin.
If the fraction of failures is above the input parameter outliersThreshold(), the test is failed.
h1 | First object |
h2 | Second object |
outliersThreshold | fraction of bins allowed to fail the test |
chi2Threshold | p-value |
parameterName | Name of the parameter used to test the histograms |
testName | Name of the test used to compare the histograms |
Definition at line 240 of file JTestChi2_t.hh.
|
private |
axis to slice.
Definition at line 141 of file JTestChi2R_2D.hh.
|
private |
threshold p-value to decide if test is passed.
Definition at line 142 of file JTestChi2R_2D.hh.
|
private |
threshold p-value to decide if test is passed.
Definition at line 143 of file JTestChi2R_2D.hh.
|
private |
test name.
Definition at line 144 of file JTestChi2R_2D.hh.
|
private |
options for the ROOT chi2 test.
Definition at line 145 of file JTestChi2R_2D.hh.
|
private |
parameter name.
Definition at line 146 of file JTestChi2R_2D.hh.
|
inherited |
Buffer to store results of multiple tests.
Definition at line 251 of file JTest_t.hh.