Jpp
master_rocky-44-g75b7c4f75
the software that should make you happy
Loading...
Searching...
No Matches
examples
JReconstruction
examples/JReconstruction/JEnergyCorrection.cc
Go to the documentation of this file.
1
#include <string>
2
#include <iostream>
3
#include <iomanip>
4
5
#include "TROOT.h"
6
#include "TFile.h"
7
#include "TH1D.h"
8
9
#include "
JReconstruction/JEvtToolkit.hh
"
10
#include "
JReconstruction/JEnergyCorrection.hh
"
11
#include "
JROOT/JManager.hh
"
12
13
#include "
Jeep/JeepToolkit.hh
"
14
#include "
Jeep/JParser.hh
"
15
#include "
Jeep/JMessage.hh
"
16
17
18
/**
19
* \file
20
*
21
* Example program to histogram energy corrections.
22
* \author mdejong
23
*/
24
int
main
(
int
argc,
char
**argv)
25
{
26
using namespace
std
;
27
using namespace
JPP
;
28
29
string
outputFile
;
30
vector<string>
energy_correction;
31
int
debug
;
32
33
try
{
34
35
JParser<>
zap(
"Example program to histogram energy corrections."
);
36
37
zap[
'o'
] =
make_field
(
outputFile
);
38
zap[
'E'
] =
make_field
(energy_correction);
39
zap[
'd'
] =
make_field
(
debug
) = 2;
40
41
zap(argc, argv);
42
}
43
catch
(
const
exception& error) {
44
FATAL
(error.what() << endl);
45
}
46
47
48
JManager<string, TH1D> zmap(
new
TH1D(
"h[%]"
, NULL, 1000, +2.0, +7.0));
// [log(E)]
49
50
for
(vector<string>::const_iterator f1 = energy_correction.begin(); f1 != energy_correction.end(); ++f1) {
51
52
const
JEnergyCorrection
fcn(*f1);
53
54
DEBUG
(getFilename(*f1) << endl << fcn << endl);
55
56
for
(
int
i = 1; i <= zmap->GetNbinsX(); ++i) {
57
58
const
double
x = zmap->GetBinCenter (i);
59
const
double
E = pow(10.0, x);
60
const
double
y = fcn(E) / E;
61
62
zmap[getFilename(*f1)]->SetBinContent(i, y);
63
}
64
}
65
66
zmap.Write(
outputFile
.c_str());
67
}
outputFile
string outputFile
Definition
JDAQTimesliceSelector.cc:37
JEnergyCorrection.hh
JManager.hh
Dynamic ROOT object management.
JMessage.hh
General purpose messaging.
DEBUG
#define DEBUG(A)
Message macros.
Definition
JMessage.hh:62
FATAL
#define FATAL(A)
Definition
JMessage.hh:67
debug
int debug
debug level
Definition
JSirene.cc:69
JParser.hh
Utility class to parse command line options.
make_field
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Definition
JParser.hh:2142
JEvtToolkit.hh
JeepToolkit.hh
Auxiliary methods for handling file names, type names and environment.
JFIT::JEnergyCorrection
Auxiliary class for correction of energy determined by JEnergy.cc.
Definition
JEnergyCorrection.hh:41
JPARSER::JParser
Utility class to parse command line options.
Definition
JParser.hh:1698
std::vector
Definition
JSTDTypes.hh:15
main
int main(int argc, char **argv)
Definition
examples/JReconstruction/JEnergyCorrection.cc:24
JPP
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Definition
JAAnetToolkit.hh:43
std
Definition
JSTDTypes.hh:14
Generated by
1.12.0