25 int 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);
 
   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);
 
   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);
 
  129       const double y = dis.getThetaRMS(E, v);
 
  131       hb->SetBinContent(i, y);
 
  138   out << h0 << HA << H1 << HB;
 
Utility class to parse command line options. 
 
int main(int argc, char *argv[])
 
then usage $script< input file >[option[primary[working directory]]] nWhere option can be E
 
Dynamic ROOT object management. 
 
Deep-inelastic muon-nucleon scattering. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
set_variable E_E log10(E_{fit}/E_{#mu})"
 
T pow(const T &x, const double y)
Power . 
 
General purpose messaging. 
 
Utility class to parse command line options.