///////////// SAMPLING //// media e varianza campionaria, loro errori per diverse pdf della popolazione //////////// #include "TRandom.h" #include void sampling(std::string pdfpop="Gauss") { std::cout<<"pdf della popolazione = "<Fill(x); xarray[j]=x; varCampT += (x - gausMed)*(x - gausMed); } mediaCamp = mediaCamp / Nins; mediaCamp2 = mediaCamp2 / Nins; double varCamp1 = 0.; for (int j=0; jFill(mediaCamp); hvarC->Fill(varCamp); hvarCN->Fill(varCampN); hvarCT->Fill(varCampT); hsqrtvarC->Fill(sqrt(varCamp)); hsqrtvarCN->Fill(sqrt(varCampN)); hsqrtvarCT->Fill(sqrt(varCampT)); } TCanvas * c = new TCanvas("c","c",900,800); c->Divide(3,3); c->cd(1); hpop->Draw(); c->cd(2); hmediaC->Draw(); c->cd(4); hvarCN->Draw(); c->cd(5); hvarC->Draw(); c->cd(6); hvarCT->Draw(); c->cd(7); hsqrtvarC->Draw(); c->cd(7); hsqrtvarCN->Draw(); c->cd(8); hsqrtvarC->Draw(); c->cd(9); hsqrtvarCT->Draw(); std::cout<<"========"<GetMean() <<" +/- "<GetRMS()<< std::endl; std::cout<<"Varianza campionaria [N-1] da MC: "<< hvarC->GetMean() <<" +/- "<GetRMS()<< std::endl; std::cout<<"Varianza del camp. media-pop nota [N] da MC: "<< hvarCT->GetMean() <<" +/- "<GetRMS()<< std::endl; std::cout<<"========"<GetMean() <<" +/- "<GetRMS()<< std::endl; std::cout<<"sqrt-Varianza campionaria [N-1] da MC: "<< hsqrtvarC->GetMean() <<" +/- "<GetRMS()<< std::endl; std::cout<<"sqrt-Varianza del camp. media-pop nota [N] da MC: "<< hsqrtvarCT->GetMean() <<" +/- "<GetRMS()<< std::endl; std::cout<<"========"<GetMean()<< std::endl; std::cout<<"Errore sulla sqrt-varianza campionaria da pdf della varianza campionaria : "<< hsqrtvarC->GetMean()/sqrt(2.*(Nins-1))<< std::endl; std::cout<<"========"<Divide(2,2); c2->cd(1); hpo->Draw(); c2->cd(2); hps->Draw(); c2->cd(3); hpl->Draw(); */ }