void trySimulation(){ Int_t eMin = 7; TTimeStamp time; TRandom3 rand(time.GetTime()); TH1F * h1 = new TH1F("h1", "h1", 100, 0., 1.); Int_t nEvts = 5000000; Float_t fpE = 0.307; Float_t fpEerr = 0.03; Float_t eBin = Float_t(eMin); for(Int_t j = 0; j < nEvts; j++){ Float_t E =eBin+rand.Uniform(0., 1.); Float_t Npe = 4.85*E; Int_t n = rand.Poisson(Npe); Float_t fp = rand.Gaus(fpE, fpEerr); Int_t n1 = rand.Binomial(n, fp); h1->Fill(Float_t(n1)/n); } h1->Scale(1000./h1->GetEntries()); h1->SetLineWidth(2); h1->SetLineColor(2); h1->Draw(); }