25int main(
int argc, 
char **argv)
 
   37    JParser<> zap(
"Example application to display DIS of muon.");
 
   46  catch(
const exception &error) {
 
   47    FATAL(error.what() << endl);
 
   50  gRandom->SetSeed(seed);
 
   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);
 
   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);
 
   91      double y = dis.
getP(E, v);
 
   93      if (numberOfEvents == 0) {
 
   94        y *= setup.second / dis.
getP(E, dis.
getV(E));
 
   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);
 
  131      hb->SetBinContent(i, y);
 
  138  out << h0 << HA << H1 << HB;