25int main(
int argc,
char **argv)
37 JParser<> zap(
"Example application to display DIS of muon.");
46 catch(
const exception &error) {
56 TH1D h0(
"sigma",
NULL, 1000, -1.0, 9.0);
58 JManager<double, TH1D>
HA(
new TH1D(
"v [% GeV]",
NULL, 1000, -5.0, 0.0));
59 JManager<double, TH1D>
H1(
new TH1D(
"ran[% GeV]",
NULL, 1000, -5.0, 0.0));
60 JManager<double, TH1D> HB(
new TH1D(
"RMS[% GeV]",
NULL, 1000, -5.0, 0.0));
69 for (
int i = 1; i <= h0.GetNbinsX(); ++i) {
71 const double x = h0.GetBinCenter(i);
72 const double E = pow(10.0, x);
73 const double y =
dis.getCrossSection(E);
75 h0.SetBinContent(i, y * 1.0e+30);
78 for (
const auto& setup :
setups) {
80 const double E = setup.first;
86 for (
int i = 1; i <=
ha->GetNbinsX(); ++i) {
88 const double x =
ha->GetBinCenter(i);
89 const double v = pow(10.0, x);
93 if (numberOfEvents == 0) {
97 ha->SetBinContent(i, y);
100 if (numberOfEvents != 0) {
102 for (
int i = 0; i != numberOfEvents; ++i) {
104 const double Es =
dis.getE(E);
105 const double v =
Es/E;
110 for (
int i = 1; i <= h1->GetNbinsX(); ++i) {
112 const double y = h1->GetBinContent(i);
113 const double z = h1->GetBinError (i);
115 const double xmin = h1->GetXaxis()->GetBinLowEdge(i);
116 const double xmax = h1->GetXaxis()->GetBinUpEdge (i);
118 const double w = (pow(10.0,xmax) - pow(10.0,xmin)) * numberOfEvents;
120 h1->SetBinContent(i, y / w);
121 h1->SetBinError (i, z / w);
125 for (
int i = 1; i <=
hb->GetNbinsX(); ++i) {
127 const double x =
hb->GetBinCenter(i);
128 const double v = pow(10.0, x);
129 const double y =
dis.getThetaRMS(E, v);
131 hb->SetBinContent(i, y);
138 out << h0 <<
HA <<
H1 << HB;
int main(int argc, char **argv)
Example application to display DIS of muon.
Deep-inelastic muon-nucleon scattering.
Dynamic ROOT object management.
General purpose messaging.
Utility class to parse command line options.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
Template definition of a multi-dimensional oscillation probability interpolation table.
double getP(const JOscChannel &channel, const double E, const double costh) const override final
Get oscillation probability for a given oscillation channel.
Utility class to parse command line options.
Deep-inelastic muon-nucleon scattering.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).