NAGASH
0.9.8
Next Generation Analysis System
Loading...
Searching...
No Matches
include
NAGASH
UnfoldTool.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
NAGASH/Tool.h
"
4
5
namespace
NAGASH
6
{
7
class
UnfoldTool
:
public
Tool
8
{
9
private
:
10
std::vector<double>
Data_Reco
;
// Data Reco
11
std::vector<double>
Data_Reco_Correct
;
// Data Reco * Fiducial
12
std::vector<double>
Theory_Truth
;
// Theory Truth
13
std::vector<double>
Theory_Truth_Correct
;
// Theory Truth * Efficiency
14
std::vector<double>
Data_Truth
;
// Data Truth
15
std::vector<double>
Data_Truth_Correct
;
// Data Truth / Efficiency
16
std::vector<double>
Data_Reco_Estimated
;
// Sigmaj Rij Theory Truthj
17
std::vector<double>
Data_Truth_Estimated
;
18
19
std::vector<bool>
IsMeasured
;
20
std::vector<bool>
IsSet
;
21
22
std::vector<std::vector<double>>
R_Matrix
;
23
std::vector<std::vector<double>>
M_Matrix
;
24
std::vector<std::vector<bool>>
MatrixIsSet
;
25
26
std::vector<double>
FiducialCorrection
;
27
std::vector<double>
EfficiencyCorrection
;
28
std::vector<bool>
FCorrectionIsSet
;
29
std::vector<bool>
ECorrectionIsSet
;
30
31
std::vector<double>
ReweightFactor
;
32
33
int
binnum
;
34
35
std::vector<std::vector<double>>
Data_Truth_Correct_EachItr
;
36
37
public
:
38
UnfoldTool
(std::shared_ptr<MSGTool>
msg
,
int
num);
39
void
SetData
(
int
index,
double
value);
40
void
SetTheory
(
int
index,
double
value);
41
void
SetMatrix
(
int
indexi,
int
indexj,
double
value);
42
void
SetFiducialCorrection
(
int
index,
double
value);
43
void
SetEfficiencyCorrection
(
int
index,
double
value);
44
45
bool
Check
();
46
void
Clear
();
47
48
void
BayesMatrix
();
49
void
EstimateDataTruth
();
50
void
EstimateDataReco
();
51
void
RenewTheory
();
52
void
PrintResult
();
53
void
BayesUnfold
(
int
iteration);
54
void
DisplayEachItr
();
55
56
void
ReweightUnfold
(
int
&iteration);
57
void
EstimateReweightFactor
();
58
void
ApplyReweightFactor
();
59
60
void
GetResult
(
int
itration, TH1D *result);
61
virtual
~UnfoldTool
() =
default
;
62
};
63
}
Tool.h
NAGASH::Tool
Provide interface for all tools in NAGASH.
Definition
Tool.h:72
NAGASH::Tool::msg
std::shared_ptr< MSGTool > msg
Definition
Tool.h:88
NAGASH::UnfoldTool
Definition
UnfoldTool.h:8
NAGASH::UnfoldTool::ECorrectionIsSet
std::vector< bool > ECorrectionIsSet
Definition
UnfoldTool.h:29
NAGASH::UnfoldTool::FCorrectionIsSet
std::vector< bool > FCorrectionIsSet
Definition
UnfoldTool.h:28
NAGASH::UnfoldTool::BayesUnfold
void BayesUnfold(int iteration)
Definition
UnfoldTool.cxx:239
NAGASH::UnfoldTool::ReweightFactor
std::vector< double > ReweightFactor
Definition
UnfoldTool.h:31
NAGASH::UnfoldTool::Clear
void Clear()
Definition
UnfoldTool.cxx:40
NAGASH::UnfoldTool::FiducialCorrection
std::vector< double > FiducialCorrection
Definition
UnfoldTool.h:26
NAGASH::UnfoldTool::EstimateReweightFactor
void EstimateReweightFactor()
Definition
UnfoldTool.cxx:283
NAGASH::UnfoldTool::BayesMatrix
void BayesMatrix()
Definition
UnfoldTool.cxx:167
NAGASH::UnfoldTool::Check
bool Check()
Definition
UnfoldTool.cxx:363
NAGASH::UnfoldTool::IsSet
std::vector< bool > IsSet
Definition
UnfoldTool.h:20
NAGASH::UnfoldTool::R_Matrix
std::vector< std::vector< double > > R_Matrix
Definition
UnfoldTool.h:22
NAGASH::UnfoldTool::EstimateDataReco
void EstimateDataReco()
Definition
UnfoldTool.cxx:181
NAGASH::UnfoldTool::Data_Reco_Correct
std::vector< double > Data_Reco_Correct
Definition
UnfoldTool.h:11
NAGASH::UnfoldTool::SetMatrix
void SetMatrix(int indexi, int indexj, double value)
Definition
UnfoldTool.cxx:94
NAGASH::UnfoldTool::SetData
void SetData(int index, double value)
Definition
UnfoldTool.cxx:54
NAGASH::UnfoldTool::Data_Truth_Correct
std::vector< double > Data_Truth_Correct
Definition
UnfoldTool.h:15
NAGASH::UnfoldTool::DisplayEachItr
void DisplayEachItr()
Definition
UnfoldTool.cxx:378
NAGASH::UnfoldTool::SetFiducialCorrection
void SetFiducialCorrection(int index, double value)
Definition
UnfoldTool.cxx:126
NAGASH::UnfoldTool::MatrixIsSet
std::vector< std::vector< bool > > MatrixIsSet
Definition
UnfoldTool.h:24
NAGASH::UnfoldTool::Data_Reco_Estimated
std::vector< double > Data_Reco_Estimated
Definition
UnfoldTool.h:16
NAGASH::UnfoldTool::EstimateDataTruth
void EstimateDataTruth()
Definition
UnfoldTool.cxx:194
NAGASH::UnfoldTool::ApplyReweightFactor
void ApplyReweightFactor()
Definition
UnfoldTool.cxx:296
NAGASH::UnfoldTool::Data_Truth_Correct_EachItr
std::vector< std::vector< double > > Data_Truth_Correct_EachItr
Definition
UnfoldTool.h:35
NAGASH::UnfoldTool::EfficiencyCorrection
std::vector< double > EfficiencyCorrection
Definition
UnfoldTool.h:27
NAGASH::UnfoldTool::PrintResult
void PrintResult()
Definition
UnfoldTool.cxx:222
NAGASH::UnfoldTool::ReweightUnfold
void ReweightUnfold(int &iteration)
Definition
UnfoldTool.cxx:306
NAGASH::UnfoldTool::binnum
int binnum
Definition
UnfoldTool.h:33
NAGASH::UnfoldTool::SetEfficiencyCorrection
void SetEfficiencyCorrection(int index, double value)
Definition
UnfoldTool.cxx:146
NAGASH::UnfoldTool::Data_Reco
std::vector< double > Data_Reco
Definition
UnfoldTool.h:10
NAGASH::UnfoldTool::Theory_Truth
std::vector< double > Theory_Truth
Definition
UnfoldTool.h:12
NAGASH::UnfoldTool::Data_Truth_Estimated
std::vector< double > Data_Truth_Estimated
Definition
UnfoldTool.h:17
NAGASH::UnfoldTool::IsMeasured
std::vector< bool > IsMeasured
Definition
UnfoldTool.h:19
NAGASH::UnfoldTool::Theory_Truth_Correct
std::vector< double > Theory_Truth_Correct
Definition
UnfoldTool.h:13
NAGASH::UnfoldTool::Data_Truth
std::vector< double > Data_Truth
Definition
UnfoldTool.h:14
NAGASH::UnfoldTool::SetTheory
void SetTheory(int index, double value)
Definition
UnfoldTool.cxx:74
NAGASH::UnfoldTool::RenewTheory
void RenewTheory()
Definition
UnfoldTool.cxx:213
NAGASH::UnfoldTool::GetResult
void GetResult(int itration, TH1D *result)
Definition
UnfoldTool.cxx:389
NAGASH::UnfoldTool::~UnfoldTool
virtual ~UnfoldTool()=default
NAGASH::UnfoldTool::M_Matrix
std::vector< std::vector< double > > M_Matrix
Definition
UnfoldTool.h:23
NAGASH
Definition
Analysis.h:232
Generated on Mon Sep 2 2024 14:24:32 for NAGASH by
1.9.8