Advertisement
avskyRB

HiggsBoson.cxx

Sep 15th, 2014
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.74 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <stdlib.h>
  4.  
  5. // Include per ROOT
  6. #include <TApplication.h>
  7. #include <TCanvas.h>
  8. #include <TH1I.h>
  9. #include <TH1F.h>
  10. #include <fstream>  
  11.  
  12. // Programma che riempie un istogramma
  13. int main(int argc, char **argv)
  14. {
  15.   // Inizializzo l'interfaccia con root (e' necessario)
  16.   TApplication myApp("App", &argc, argv);
  17.  
  18.   // Creazione dello screen
  19.   TCanvas *screen = new TCanvas("screen", "Funzione", 0, 0, 800, 600);
  20.  
  21.   // Creazione, per allocazione dinamica, di un oggetto della classe TH1I:
  22.   // istogramma monodimensionale con canali a contenuto intero
  23.   TH1I *h = new TH1I("h", "Dati", 37, 80., 170.);
  24.  
  25.   // Creazione oggetto ifstream e apertura file
  26.   std::ifstream in("Higgs4l.dat");
  27.  
  28.   // Legge i dati fintanto che il file e' valido
  29.   while(1)
  30.   {
  31.     float x;
  32.     in >> x;            // Lettura dato
  33.     std::cout <<  x << std::endl;  // Scrittura tanto per ...
  34.     if (!in.good())     // Se il file e' finito esce dal loop
  35.       break;
  36.     h->Fill( x );       // Aggiunta dato all'istogramma
  37.   }
  38.  
  39. // ----> Aggiungere qui altre operazioni
  40.  
  41.   h->GetEntries();  //numero entrate
  42.   h->GetMean();     //media
  43.   h->GetMaximum();  //massimo
  44.  
  45.  
  46. // <---- Aggiungere qui altre operazioni
  47.  
  48.   for(int i=0; int <37; i++)
  49.    std::cout << h->GetBinContent(i) << std::endl;  //contenuto ogni canale
  50.  
  51.   h->SetTytle("Higgs Boson");          //nome grafico
  52.   h->SetXTytle("massa (GeV)");         //nome asse X
  53.  
  54.   h->Fit("gaus", "", "", 110, 140);
  55.                                          
  56.   // Rappresentazione grafica
  57.   h->SetFillColor(42);  // Colore dell'istogramma
  58.   h->Draw();            // Disegno
  59.   myApp.Run();          // Passaggio del controllo a root  
  60.  
  61.   return 0;  
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement