void ist(){ gStyle->SetOptFit(1); float Bd1[] = {0.364, 0.346, 0.322, 0.295,0.266, 0.234, 0.204, 0.171, 0.139, 0.106, 0.074, 0.04, 0.008, -0.024, -0.057,-0.09, -0.121, -0.154, -0.185, -0.218, -0.249, -0.28, -0.31, -0.339, -0.363}; float sBd1[] = {0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001}; float id1[] = {1.80, 1.65, 1.50, 1.35, 1.20, 1.05, 0.90, 0.75, 0.60, 0.45, 0.30, 0.15, 0.00, -0.15, -0.30, -0.45, -0.60, -0.75, -0.90, -1.05, -1.20,-1.35,-1.50,-1.65,-1.80}; float sid1[] = {0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01}; float Bs1[] = {-0.363, -0.345, -0.321, -0.294, -0.264, -0.233, -0.201, -0.17, -0.138, -0.105, -0.071, -0.035, -0.006, 0.025, 0.057, 0.09, 0.124, 0.155, 0.187, 0.22, 0.252, 0.281, 0.311, 0.339, 0.364}; float sBs1[] = {0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001}; float is1[] = {-1.80, -1.65, -1.50, -1.35, -1.20, -1.05, -0.90, -0.75, -0.60, -0.45, -0.30, -0.15, 0.00, 0.15, 0.30, 0.45, 0.60, 0.75, 0.90, 1.05, 1.20, 1.35, 1.50, 1.65, 1.80}; float sis1[] = {0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01,0.01, 0.01}; float Bd2[] = {0.364, 0.337, 0.304, 0.264, 0.225, 0.182, 0.138, 0.089, 0.05, 0.007, -0.034, -0.078, -0.123, -0.167, -0.207, -0.252, -0.29, -0.328, -0.364}; float sBd2[] = {0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001}; float id2[] = {1.80, 1.60, 1.40, 1.20, 1.00, 0.80, 0.60, 0.40, 0.20, 0.00, -0.20, -0.40, -0.60, -0.80, -1.00, -1.20, -1.40, -1.60, -1.80}; float sid2[] = {0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01}; float Bs2[] = {-0.364, -0.337, -0.303, -0.263, -0.223, -0.181, -0.138, -0.095, -0.049, -0.007, 0.035, 0.08, 0.123, 0.167, 0.208, 0.251, 0.291, 0.329, 0.364}; float sBs2[] = {0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001}; float is2[] = {-1.80, -1.60, -1.40, -1.20, -1.00, -0.80, -0.60, -0.40, -0.20, 0.00, 0.20, 0.40, 0.60, 0.80, 1.00, 1.20, 1.40,1.60, 1.80}; float sis2[] = {0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01}; const int n1misure = 25; const int n2misure = 25; const int n3misure = 19; const int n4misure = 19; TCanvas *cBid1 = new TCanvas("cBid1","prima discesa",10,10,600,400); cBid1->SetFillColor(0); cBid1->cd(); TGraphErrors *gBid1 =new TGraphErrors(n1misure,id1,Bd1,sid1,sBd1); gBid1->SetMarkerSize(0.6); gBid1->SetMarkerStyle(21); gBid1->SetTitle("prima discesa"); gBid1->GetXaxis()->SetTitle("Intensità di corrente [A]"); gBid1->GetYaxis()->SetTitle("Campo magnetico [T] "); gBid1->Draw("AP"); TCanvas *cBis1 = new TCanvas("cBis1","prima salita",610,10,600,400); cBis1->SetFillColor(0); cBis1->cd(); TGraphErrors *gBis1 =new TGraphErrors(n2misure,is1,Bs1,sis1,sBs1); gBis1->SetMarkerSize(0.6); gBis1->SetMarkerStyle(21); gBis1->SetTitle("prima salita"); gBis1->GetXaxis()->SetTitle("Intensità di corrente [A]"); gBis1->GetYaxis()->SetTitle("Campo magnetico [T] "); gBis1->Draw("AP"); TCanvas *cBid2 = new TCanvas("cBid2","seconda discesa",10,610,600,400); cBid2->SetFillColor(0); cBid2->cd(); TGraphErrors *gBid2 =new TGraphErrors(n3misure,id2,Bd2,sid2,sBd2); gBid2->SetMarkerSize(0.6); gBid2->SetMarkerStyle(21); gBid2->SetTitle("seconda discesa"); gBid2->GetXaxis()->SetTitle("Intensità di corrente [A]"); gBid2->GetYaxis()->SetTitle("Campo magnetico [T] "); gBid2->Draw("AP"); TCanvas *cBis2 = new TCanvas("cBi2","seconda salita",610,610,600,400); cBis2->SetFillColor(0); cBis2->cd(); TGraphErrors *gBis2 =new TGraphErrors(n4misure,is2,Bs2,sis2,sBs2); gBis2->SetMarkerSize(0.6); gBis2->SetMarkerStyle(21); gBis2->SetTitle("seconda salita"); gBis2->GetXaxis()->SetTitle("Intensità di corrente [A]"); gBis2->GetYaxis()->SetTitle("Campo magnetico [T] "); gBis2->Draw("AP"); TF1 *fit1 = new TF1("fit1","[0]*x+[1]",-1.4,1.4); fit1->SetParameter(0,0.2); fit1->SetParameter(1,1); fit1->SetParName(0,"Coefficiente angolare"); fit1->SetParName(1,"Intercetta"); fit1->SetLineColor(3); TF1 *fit2 = new TF1("fit2","[0]*x+[1]",-1.4,1.4); fit2->SetParameter(0,0.2); fit2->SetParameter(1,1); fit2->SetParName(0,"Coefficiente angolare"); fit2->SetParName(1,"Intercetta"); fit2->SetLineColor(4); TF1 *fit3 = new TF1("fit3","[0]*x+[1]",-1.3,1.3); fit3->SetParameter(0,0.2); fit3->SetParameter(1,1); fit3->SetParName(0,"Coefficiente angolare"); fit3->SetParName(1,"Intercetta"); fit3->SetLineColor(5); TF1 *fit4 = new TF1("fit4","[0]*x+[1]",-1.3,1.3); fit4->SetParameter(0,0.2); fit4->SetParameter(1,1); fit4->SetParName(0,"Coefficiente angolare"); fit4->SetParName(1,"Intercetta"); fit4->SetLineColor(6); gBis1->Fit(fit1,"RQ"); double chi2,prob,df; chi2=fit1->GetChisquare(); df=fit1->GetNDF() ; prob=fit1->GetProb(); gBid1->Fit(fit2,"RQ"); chi2=fit2->GetChisquare(); df=fit2->GetNDF() ; prob=fit2->GetProb(); gBis2->Fit(fit3,"RQ"); chi2=fit3->GetChisquare(); df=fit3->GetNDF() ; prob=fit3->GetProb(); gBid2->Fit(fit4,"RQ"); }