ROOT logo
///////////////////////////////////////////////////////////////////////////////////////////
// CheckNSigmaStability.C (called by AODQAChecks.C)                                      //
//                                                                                       //
// Written by John Groh                                                                  //
///////////////////////////////////////////////////////////////////////////////////////////

void CheckNSigmaStability(AliSpectraAODHistoManager * hman,
			  TH1F*& TPCnsigMeanTrendPion,
			  TH1F*& TPCnsigMeanTrendKaon,
			  TH1F*& TPCnsigMeanTrendProton,
			  TH1F*& TPCnsigSigmaTrendPion,
			  TH1F*& TPCnsigSigmaTrendKaon,
			  TH1F*& TPCnsigSigmaTrendProton,
			  TH1F*& TOFnsigMeanTrendPion,
			  TH1F*& TOFnsigMeanTrendKaon,
			  TH1F*& TOFnsigMeanTrendProton,
			  TH1F*& TOFnsigSigmaTrendPion,
			  TH1F*& TOFnsigSigmaTrendKaon,
			  TH1F*& TOFnsigSigmaTrendProton,
			  Int_t runs[],
			  Int_t nRuns,
			  Int_t irun,
			  Bool_t useMC)
{
  // ranges for the projections
  const Double_t ProjTPC[2] = {0.4, 0.5};
  const Double_t ProjTOF[2] = {0.9, 1.0};

  // ranges for the gaussian fits
  const Double_t fitRangeTPC[nPart][2] = {{-3.5, 3.5},
					  {-1.4, 1.4},
					  {-2.5, 2.5}};
  const Double_t fitRangeTOF[nPart][2] = {{-2.3, 2.3},
					  {-2.0, 2.0},
					  {-2.0, 2.0}};

  //------------------------------------------------------
  //                        TPC                          -
  //------------------------------------------------------

  // canvas for printing the projections and fits to a pdf file (once per run)
  TCanvas * cNSigProjFits = new TCanvas("cNSigProjFits","cNSigProjFits");
  cNSigProjFits->Divide(3,2);

  // define the 2D nsigma histograms, the projections, and the fitting functions
  // (one each for pions, kaons, and protons)
  TH2F * nsig_TPC[nPart];
  TH1F * nsig_TPC_proj[nPart];
  TF1 * fitFuncTPC[nPart];
  for (Int_t ipart; ipart<nPart; ipart++)
    {
      nsig_TPC[ipart] = new TH2F;
      nsig_TPC_proj[ipart] = new TH1F;
    }

  // for plotting data/fit
  TGraph gDataOverFitTPC[nPart];
  TGraph gDataOverFitTOF[nPart];
  TCanvas * cDataOverFit = new TCanvas("cDataOverFit","cDataOverFit");
  cDataOverFit->Divide(2,1);
   
  for (Int_t ipart=0; ipart<nPart; ipart++)
    {
      // create projection
      nsig_TPC[ipart] = (TH2F*)((TH2F*)hman->GetNSigHistogram(Form("hHistNSig%sTPC",Particle[ipart].Data())))->Clone();
      if (useMC)
	nsig_TPC_proj[ipart] = (TH1F*)nsig_TPC[ipart]->ProjectionY(Form("TPC NsigProjection %s, mc [%.1f,%.1f]",Particle[ipart].Data(),ProjTPC[0],ProjTPC[1]), nsig_TPC[ipart]->GetXaxis()->FindBin(ProjTPC[0]), nsig_TPC[ipart]->GetXaxis()->FindBin(ProjTPC[1]));
      else
	nsig_TPC_proj[ipart] = (TH1F*)nsig_TPC[ipart]->ProjectionY(Form("TPC NsigProjection %s, data [%.1f,%.1f]",Particle[ipart].Data(),ProjTPC[0],ProjTPC[1]), nsig_TPC[ipart]->GetXaxis()->FindBin(ProjTPC[0]), nsig_TPC[ipart]->GetXaxis()->FindBin(ProjTPC[1]));

      // fit the peak of interest with a gaussian
      fitFuncTPC[ipart] = new TF1("fitFuncTPC","gaus",fitRangeTPC[ipart][0],fitRangeTPC[ipart][1]);
      nsig_TPC_proj[ipart]->Fit(fitFuncTPC[ipart],"NRLQ");
    
      // draw the projections and fits
      cNSigProjFits->cd(ipart+1);
      gPad->SetLogy();
      nsig_TPC_proj[ipart]->GetXaxis()->SetTitle(Form("TPC nsigma for %.1f GeV/c < p < %.1f GeV/c",ProjTPC[0],ProjTPC[1]));
      nsig_TPC_proj[ipart]->GetXaxis()->SetRangeUser(-10,10);
      nsig_TPC_proj[ipart]->SetStats(kFALSE);
      nsig_TPC_proj[ipart]->DrawCopy();
      //fitFuncTPC[ipart]->SetLineWidth(1);
      fitFuncTPC[ipart]->DrawCopy("same");
      TLegend * lNSigTPC = new TLegend(0.59,0.59,0.99,0.99);
      lNSigTPC->SetFillColor(0);
      lNSigTPC->AddEntry(nsig_TPC_proj[ipart],Form("%ss, TPC",Particle[ipart].Data()),"");
      lNSigTPC->AddEntry(nsig_TPC_proj[ipart],Form("Run %i",runs[irun]),"");
      if (useMC) lNSigTPC->AddEntry(nsig_TPC_proj[ipart],"MC","");
      else lNSigTPC->AddEntry(nsig_TPC_proj[ipart],"DATA","");
      //      lNSigTPC->AddEntry(nsig_TPC_proj[ipart],Form("#chi^{2}/nDOF = %.2f",(Float_t)resultTPC->Chi2() / (Float_t)resultTPC->Ndf()),"");
      lNSigTPC->DrawClone();

      // fill gDataOverFitTPC[] graphs
      Int_t nGraphPoints = 0;
      for (Float_t iPt = fitRangeTPC[ipart][0]; iPt <= fitRangeTPC[ipart][1]; iPt += (fitRangeTPC[ipart][1] - fitRangeTPC[ipart][0])/15)
	{
	  gDataOverFitTPC[ipart].SetPoint(nGraphPoints,iPt, nsig_TPC_proj[ipart]->GetBinContent(nsig_TPC_proj[ipart]->FindBin(iPt)) / fitFuncTPC[ipart]->Eval(iPt));
	  nGraphPoints++;
	}

      // fill the histograms with the fit parameters and run numbers
      switch (ipart)
	{
	case 0: // pion
	  TPCnsigMeanTrendPion->SetBinContent(irun+1, fitFuncTPC[ipart]->GetParameter(1));
	  TPCnsigSigmaTrendPion->SetBinContent(irun+1, fitFuncTPC[ipart]->GetParameter(2));	 
	  TPCnsigMeanTrendPion->SetBinError(irun+1, fitFuncTPC[ipart]->GetParError(1));
	  TPCnsigSigmaTrendPion->SetBinError(irun+1, fitFuncTPC[ipart]->GetParError(2));
	  break;
	case 1: // kaon
	  TPCnsigMeanTrendKaon->SetBinContent(irun+1, fitFuncTPC[ipart]->GetParameter(1));
	  TPCnsigSigmaTrendKaon->SetBinContent(irun+1, fitFuncTPC[ipart]->GetParameter(2));
	  TPCnsigMeanTrendKaon->SetBinError(irun+1, fitFuncTPC[ipart]->GetParError(1));
	  TPCnsigSigmaTrendKaon->SetBinError(irun+1, fitFuncTPC[ipart]->GetParError(2));
	  break;
	case 2: // proton
	  TPCnsigMeanTrendProton->SetBinContent(irun+1, fitFuncTPC[ipart]->GetParameter(1));
	  TPCnsigSigmaTrendProton->SetBinContent(irun+1, fitFuncTPC[ipart]->GetParameter(2));
	  TPCnsigMeanTrendProton->SetBinError(irun+1, fitFuncTPC[ipart]->GetParError(1));
	  TPCnsigSigmaTrendProton->SetBinError(irun+1, fitFuncTPC[ipart]->GetParError(2));
	  break;
	default:
	  Printf("\n!!! ERROR in TPC switch control structure in CheckNSigmaStability.C !!!\n");
	  break;
	  }
    } // end loop over ipart

  // draw the data/fit
  cDataOverFit->cd(1);
  TH2F * hAxesDataOverFitTPC = new TH2F("hAxesDataOverFitTPC","",100,-5,5,100,-3,5);
  hAxesDataOverFitTPC->SetStats(kFALSE);
  hAxesDataOverFitTPC->SetTitle(";nsigma for 0.4 GeV/c < p < 0.5 GeV/c;Data/Fit (TPC)");
  hAxesDataOverFitTPC->DrawCopy();
  TLegend * lDataOverFitTPC = new TLegend(.59,.69,.99,.99);
  lDataOverFitTPC->SetFillColor(0);
  lDataOverFitTPC->AddEntry(&gDataOverFitTPC[0],Form("Run %i",runs[irun]),"");
  if (useMC) lDataOverFitTPC->AddEntry(&gDataOverFitTPC[0],"MC","");
  else lDataOverFitTPC->AddEntry(&gDataOverFitTPC[0],"DATA","");
  for (Int_t ipart=0; ipart<nPart; ipart++)
    {
      gDataOverFitTPC[ipart].SetMarkerStyle(Marker[ipart]);
      gDataOverFitTPC[ipart].SetMarkerColor(Color[ipart]);
      gDataOverFitTPC[ipart].DrawClone("Psame");
      lDataOverFitTPC->AddEntry(&gDataOverFitTPC[ipart],Particle[ipart].Data(),"p");
    }
  lDataOverFitTPC->DrawClone();

  //------------------------------------------------------
  //                        TOF                          -
  //------------------------------------------------------

  // define the 2D nsigma histograms, the projections, and the fitting functions
  // (one each for pions, kaons, and protons)
  TH2F * nsig_TOF[nPart];
  TH1F * nsig_TOF_proj[nPart];
  TF1 * fitFuncTOF[nPart];
  for (Int_t ipart; ipart<nPart; ipart++)
    {
      nsig_TOF[ipart] = new TH2F;
      nsig_TOF_proj[ipart] = new TH1F;
    }
  
  for (Int_t ipart=0; ipart<nPart; ipart++)
    {
      // create projection
      nsig_TOF[ipart] = (TH2F*)((TH2F*)hman->GetNSigHistogram(Form("hHistNSig%sTOF",Particle[ipart].Data())))->Clone();
      if (useMC)
	nsig_TOF_proj[ipart] = (TH1F*)nsig_TOF[ipart]->ProjectionY(Form("TOF NsigProjection %s, mc [%.1f,%.1f]",Particle[ipart].Data(),ProjTOF[0],ProjTOF[1]), nsig_TOF[ipart]->GetXaxis()->FindBin(ProjTOF[0]), nsig_TOF[ipart]->GetXaxis()->FindBin(ProjTOF[1]));
      else
	nsig_TOF_proj[ipart] = (TH1F*)nsig_TOF[ipart]->ProjectionY(Form("TOF NsigProjection %s, data [%.1f,%.1f]",Particle[ipart].Data(),ProjTOF[0],ProjTOF[1]), nsig_TOF[ipart]->GetXaxis()->FindBin(ProjTOF[0]), nsig_TOF[ipart]->GetXaxis()->FindBin(ProjTOF[1]));
	
      // fit the peak of interest with a gaussian
      fitFuncTOF[ipart] = new TF1("fitFuncTOF","gaus",fitRangeTOF[ipart][0],fitRangeTOF[ipart][1]);
      TFitResultPtr resultTOF = nsig_TOF_proj[ipart]->Fit(fitFuncTOF[ipart],"NRSLQ");

      // draw the projections and fits
      cNSigProjFits->cd(ipart+1+nPart);
      gPad->SetLogy();

      nsig_TOF_proj[ipart]->GetXaxis()->SetTitle(Form("TOF nsigma for %.1f GeV/c < p < %.1f GeV/c",ProjTOF[0],ProjTOF[1]));
      nsig_TOF_proj[ipart]->SetStats(kFALSE);
      nsig_TOF_proj[ipart]->DrawCopy();
      fitFuncTOF[ipart]->DrawCopy("same");
      TLegend * lNSigTOF = new TLegend(0.59,0.59,0.99,0.99);
      lNSigTOF->SetFillColor(0);
      lNSigTOF->AddEntry(nsig_TOF_proj[ipart],Form("%ss, TOF",Particle[ipart].Data()),"");
      lNSigTOF->AddEntry(nsig_TOF_proj[ipart],Form("Run %i",runs[irun]),"");
      if (useMC) lNSigTOF->AddEntry(nsig_TOF_proj[ipart],"MC","");
      else lNSigTOF->AddEntry(nsig_TOF_proj[ipart],"DATA","");
      //lNSigTOF->AddEntry(nsig_TOF_proj[ipart],Form("#chi^{2}/nDOF = %.2f",fitFuncTOF[ipart]->GetChisquare()/fitFuncTOF[ipart]->GetNDF()),"");
      lNSigTOF->DrawClone();

      // fill gDataOverFitTOF[] graphs
      Int_t nGraphPoints = 0;
      for (Float_t iPt = fitRangeTOF[ipart][0]; iPt <= fitRangeTOF[ipart][1]; iPt += (fitRangeTOF[ipart][1] - fitRangeTOF[ipart][0])/15)
	{
	  gDataOverFitTOF[ipart].SetPoint(nGraphPoints,iPt, nsig_TOF_proj[ipart]->GetBinContent(nsig_TOF_proj[ipart]->FindBin(iPt)) / fitFuncTOF[ipart]->Eval(iPt));
	  nGraphPoints++;
	}

    
      // fill the histograms with the fit parameters and run numbers
      switch (ipart)
	{
	case 0: // pion
	  TOFnsigMeanTrendPion->SetBinContent(irun+1, resultTOF->Parameter(1));
	  TOFnsigMeanTrendPion->SetBinError(irun+1, resultTOF->ParError(1));
	  TOFnsigSigmaTrendPion->SetBinContent(irun+1, resultTOF->Parameter(2));
	  TOFnsigSigmaTrendPion->SetBinError(irun+1, resultTOF->ParError(2));
	  break;
	case 1: // kaon
	  TOFnsigMeanTrendKaon->SetBinContent(irun+1, resultTOF->Parameter(1));
	  TOFnsigMeanTrendKaon->SetBinError(irun+1, resultTOF->ParError(1));
	  TOFnsigSigmaTrendKaon->SetBinContent(irun+1, resultTOF->Parameter(2));
	  TOFnsigSigmaTrendKaon->SetBinError(irun+1, resultTOF->ParError(2));
	  break;
	case 2: // proton
	  TOFnsigMeanTrendProton->SetBinContent(irun+1, resultTOF->Parameter(1));
	  TOFnsigMeanTrendProton->SetBinError(irun+1, resultTOF->ParError(1));
	  TOFnsigSigmaTrendProton->SetBinContent(irun+1, resultTOF->Parameter(2));
	  TOFnsigSigmaTrendProton->SetBinError(irun+1, resultTOF->ParError(2));
	  break;
	default:
	  Printf("\n!!! ERROR in TOF switch control structure in CheckNSigmaStability.C !!!\n");
	  break;
	}
    } // end loop over ipart

  // draw the data/fit
  cDataOverFit->cd(2);
  TH2F * hAxesDataOverFitTOF = new TH2F("hAxesDataOverFitTOF","",100,-5,5,100,-3,5);
  hAxesDataOverFitTOF->SetStats(kFALSE);
  hAxesDataOverFitTOF->SetTitle(";nsigma for 0.9 GeV/c < p < 1.0 GeV/c;Data/Fit (TOF)");
  hAxesDataOverFitTOF->DrawCopy();
  TLegend * lDataOverFitTOF = new TLegend(.59,.69,.99,.99);
  lDataOverFitTOF->SetFillColor(0);
  lDataOverFitTOF->AddEntry(&gDataOverFitTOF[0],Form("Run %i",runs[irun]),"");
  if (useMC) lDataOverFitTOF->AddEntry(&gDataOverFitTOF[0],"MC","");
  else lDataOverFitTOF->AddEntry(&gDataOverFitTOF[0],"DATA","");
  for (Int_t ipart=0; ipart<nPart; ipart++)
    {
      gDataOverFitTOF[ipart].SetMarkerStyle(Marker[ipart]);
      gDataOverFitTOF[ipart].SetMarkerColor(Color[ipart]);
      gDataOverFitTOF[ipart].DrawClone("Psame");
      lDataOverFitTOF->AddEntry(&gDataOverFitTOF[ipart],Particle[ipart].Data(),"p");
    }
  lDataOverFitTOF->DrawClone();




  // save the projections and fits to a pdf file once per run
  if (useMC)
    {
      if (irun == 0) cNSigProjFits->Print("Plots/MC/AODnSigmaProjFits.pdf(","pdf");
      else if (irun < nRuns-1) cNSigProjFits->Print("Plots/MC/AODnSigmaProjFits.pdf","pdf");
      else if (irun == nRuns-1) cNSigProjFits->Print("Plots/MC/AODnSigmaProjFits.pdf)","pdf");
    } 
  else
    {
      if (irun == 0) cNSigProjFits->Print("Plots/DATA/AODnSigmaProjFits.pdf(","pdf");
      else if (irun < nRuns-1) cNSigProjFits->Print("Plots/DATA/AODnSigmaProjFits.pdf","pdf");
      else if (irun == nRuns-1) cNSigProjFits->Print("Plots/DATA/AODnSigmaProjFits.pdf)","pdf");
    }
  cNSigProjFits->Close();



  // also save the data/fit plots to a pdf file once per run
  if (useMC)
    {
      if (irun == 0) cDataOverFit->Print("Plots/MC/NSigDataOverFit.pdf(","pdf");
      else if (irun < nRuns-1) cDataOverFit->Print("Plots/MC/NSigDataOverFit.pdf","pdf");
      else if (irun == nRuns-1) cDataOverFit->Print("Plots/MC/NSigDataOverFit.pdf)","pdf");
    }
  else
    {
      if (irun == 0) cDataOverFit->Print("Plots/DATA/NSigDataOverFit.pdf(","pdf");
      else if (irun < nRuns-1) cDataOverFit->Print("Plots/DATA/NSigDataOverFit.pdf","pdf");
      else if (irun == nRuns-1) cDataOverFit->Print("Plots/DATA/NSigDataOverFit.pdf)","pdf");
    }
  cDataOverFit->Close();
}




 CheckNSigmaStability.C:1
 CheckNSigmaStability.C:2
 CheckNSigmaStability.C:3
 CheckNSigmaStability.C:4
 CheckNSigmaStability.C:5
 CheckNSigmaStability.C:6
 CheckNSigmaStability.C:7
 CheckNSigmaStability.C:8
 CheckNSigmaStability.C:9
 CheckNSigmaStability.C:10
 CheckNSigmaStability.C:11
 CheckNSigmaStability.C:12
 CheckNSigmaStability.C:13
 CheckNSigmaStability.C:14
 CheckNSigmaStability.C:15
 CheckNSigmaStability.C:16
 CheckNSigmaStability.C:17
 CheckNSigmaStability.C:18
 CheckNSigmaStability.C:19
 CheckNSigmaStability.C:20
 CheckNSigmaStability.C:21
 CheckNSigmaStability.C:22
 CheckNSigmaStability.C:23
 CheckNSigmaStability.C:24
 CheckNSigmaStability.C:25
 CheckNSigmaStability.C:26
 CheckNSigmaStability.C:27
 CheckNSigmaStability.C:28
 CheckNSigmaStability.C:29
 CheckNSigmaStability.C:30
 CheckNSigmaStability.C:31
 CheckNSigmaStability.C:32
 CheckNSigmaStability.C:33
 CheckNSigmaStability.C:34
 CheckNSigmaStability.C:35
 CheckNSigmaStability.C:36
 CheckNSigmaStability.C:37
 CheckNSigmaStability.C:38
 CheckNSigmaStability.C:39
 CheckNSigmaStability.C:40
 CheckNSigmaStability.C:41
 CheckNSigmaStability.C:42
 CheckNSigmaStability.C:43
 CheckNSigmaStability.C:44
 CheckNSigmaStability.C:45
 CheckNSigmaStability.C:46
 CheckNSigmaStability.C:47
 CheckNSigmaStability.C:48
 CheckNSigmaStability.C:49
 CheckNSigmaStability.C:50
 CheckNSigmaStability.C:51
 CheckNSigmaStability.C:52
 CheckNSigmaStability.C:53
 CheckNSigmaStability.C:54
 CheckNSigmaStability.C:55
 CheckNSigmaStability.C:56
 CheckNSigmaStability.C:57
 CheckNSigmaStability.C:58
 CheckNSigmaStability.C:59
 CheckNSigmaStability.C:60
 CheckNSigmaStability.C:61
 CheckNSigmaStability.C:62
 CheckNSigmaStability.C:63
 CheckNSigmaStability.C:64
 CheckNSigmaStability.C:65
 CheckNSigmaStability.C:66
 CheckNSigmaStability.C:67
 CheckNSigmaStability.C:68
 CheckNSigmaStability.C:69
 CheckNSigmaStability.C:70
 CheckNSigmaStability.C:71
 CheckNSigmaStability.C:72
 CheckNSigmaStability.C:73
 CheckNSigmaStability.C:74
 CheckNSigmaStability.C:75
 CheckNSigmaStability.C:76
 CheckNSigmaStability.C:77
 CheckNSigmaStability.C:78
 CheckNSigmaStability.C:79
 CheckNSigmaStability.C:80
 CheckNSigmaStability.C:81
 CheckNSigmaStability.C:82
 CheckNSigmaStability.C:83
 CheckNSigmaStability.C:84
 CheckNSigmaStability.C:85
 CheckNSigmaStability.C:86
 CheckNSigmaStability.C:87
 CheckNSigmaStability.C:88
 CheckNSigmaStability.C:89
 CheckNSigmaStability.C:90
 CheckNSigmaStability.C:91
 CheckNSigmaStability.C:92
 CheckNSigmaStability.C:93
 CheckNSigmaStability.C:94
 CheckNSigmaStability.C:95
 CheckNSigmaStability.C:96
 CheckNSigmaStability.C:97
 CheckNSigmaStability.C:98
 CheckNSigmaStability.C:99
 CheckNSigmaStability.C:100
 CheckNSigmaStability.C:101
 CheckNSigmaStability.C:102
 CheckNSigmaStability.C:103
 CheckNSigmaStability.C:104
 CheckNSigmaStability.C:105
 CheckNSigmaStability.C:106
 CheckNSigmaStability.C:107
 CheckNSigmaStability.C:108
 CheckNSigmaStability.C:109
 CheckNSigmaStability.C:110
 CheckNSigmaStability.C:111
 CheckNSigmaStability.C:112
 CheckNSigmaStability.C:113
 CheckNSigmaStability.C:114
 CheckNSigmaStability.C:115
 CheckNSigmaStability.C:116
 CheckNSigmaStability.C:117
 CheckNSigmaStability.C:118
 CheckNSigmaStability.C:119
 CheckNSigmaStability.C:120
 CheckNSigmaStability.C:121
 CheckNSigmaStability.C:122
 CheckNSigmaStability.C:123
 CheckNSigmaStability.C:124
 CheckNSigmaStability.C:125
 CheckNSigmaStability.C:126
 CheckNSigmaStability.C:127
 CheckNSigmaStability.C:128
 CheckNSigmaStability.C:129
 CheckNSigmaStability.C:130
 CheckNSigmaStability.C:131
 CheckNSigmaStability.C:132
 CheckNSigmaStability.C:133
 CheckNSigmaStability.C:134
 CheckNSigmaStability.C:135
 CheckNSigmaStability.C:136
 CheckNSigmaStability.C:137
 CheckNSigmaStability.C:138
 CheckNSigmaStability.C:139
 CheckNSigmaStability.C:140
 CheckNSigmaStability.C:141
 CheckNSigmaStability.C:142
 CheckNSigmaStability.C:143
 CheckNSigmaStability.C:144
 CheckNSigmaStability.C:145
 CheckNSigmaStability.C:146
 CheckNSigmaStability.C:147
 CheckNSigmaStability.C:148
 CheckNSigmaStability.C:149
 CheckNSigmaStability.C:150
 CheckNSigmaStability.C:151
 CheckNSigmaStability.C:152
 CheckNSigmaStability.C:153
 CheckNSigmaStability.C:154
 CheckNSigmaStability.C:155
 CheckNSigmaStability.C:156
 CheckNSigmaStability.C:157
 CheckNSigmaStability.C:158
 CheckNSigmaStability.C:159
 CheckNSigmaStability.C:160
 CheckNSigmaStability.C:161
 CheckNSigmaStability.C:162
 CheckNSigmaStability.C:163
 CheckNSigmaStability.C:164
 CheckNSigmaStability.C:165
 CheckNSigmaStability.C:166
 CheckNSigmaStability.C:167
 CheckNSigmaStability.C:168
 CheckNSigmaStability.C:169
 CheckNSigmaStability.C:170
 CheckNSigmaStability.C:171
 CheckNSigmaStability.C:172
 CheckNSigmaStability.C:173
 CheckNSigmaStability.C:174
 CheckNSigmaStability.C:175
 CheckNSigmaStability.C:176
 CheckNSigmaStability.C:177
 CheckNSigmaStability.C:178
 CheckNSigmaStability.C:179
 CheckNSigmaStability.C:180
 CheckNSigmaStability.C:181
 CheckNSigmaStability.C:182
 CheckNSigmaStability.C:183
 CheckNSigmaStability.C:184
 CheckNSigmaStability.C:185
 CheckNSigmaStability.C:186
 CheckNSigmaStability.C:187
 CheckNSigmaStability.C:188
 CheckNSigmaStability.C:189
 CheckNSigmaStability.C:190
 CheckNSigmaStability.C:191
 CheckNSigmaStability.C:192
 CheckNSigmaStability.C:193
 CheckNSigmaStability.C:194
 CheckNSigmaStability.C:195
 CheckNSigmaStability.C:196
 CheckNSigmaStability.C:197
 CheckNSigmaStability.C:198
 CheckNSigmaStability.C:199
 CheckNSigmaStability.C:200
 CheckNSigmaStability.C:201
 CheckNSigmaStability.C:202
 CheckNSigmaStability.C:203
 CheckNSigmaStability.C:204
 CheckNSigmaStability.C:205
 CheckNSigmaStability.C:206
 CheckNSigmaStability.C:207
 CheckNSigmaStability.C:208
 CheckNSigmaStability.C:209
 CheckNSigmaStability.C:210
 CheckNSigmaStability.C:211
 CheckNSigmaStability.C:212
 CheckNSigmaStability.C:213
 CheckNSigmaStability.C:214
 CheckNSigmaStability.C:215
 CheckNSigmaStability.C:216
 CheckNSigmaStability.C:217
 CheckNSigmaStability.C:218
 CheckNSigmaStability.C:219
 CheckNSigmaStability.C:220
 CheckNSigmaStability.C:221
 CheckNSigmaStability.C:222
 CheckNSigmaStability.C:223
 CheckNSigmaStability.C:224
 CheckNSigmaStability.C:225
 CheckNSigmaStability.C:226
 CheckNSigmaStability.C:227
 CheckNSigmaStability.C:228
 CheckNSigmaStability.C:229
 CheckNSigmaStability.C:230
 CheckNSigmaStability.C:231
 CheckNSigmaStability.C:232
 CheckNSigmaStability.C:233
 CheckNSigmaStability.C:234
 CheckNSigmaStability.C:235
 CheckNSigmaStability.C:236
 CheckNSigmaStability.C:237
 CheckNSigmaStability.C:238
 CheckNSigmaStability.C:239
 CheckNSigmaStability.C:240
 CheckNSigmaStability.C:241
 CheckNSigmaStability.C:242
 CheckNSigmaStability.C:243
 CheckNSigmaStability.C:244
 CheckNSigmaStability.C:245
 CheckNSigmaStability.C:246
 CheckNSigmaStability.C:247
 CheckNSigmaStability.C:248
 CheckNSigmaStability.C:249
 CheckNSigmaStability.C:250
 CheckNSigmaStability.C:251
 CheckNSigmaStability.C:252
 CheckNSigmaStability.C:253
 CheckNSigmaStability.C:254
 CheckNSigmaStability.C:255
 CheckNSigmaStability.C:256
 CheckNSigmaStability.C:257
 CheckNSigmaStability.C:258
 CheckNSigmaStability.C:259
 CheckNSigmaStability.C:260
 CheckNSigmaStability.C:261
 CheckNSigmaStability.C:262
 CheckNSigmaStability.C:263
 CheckNSigmaStability.C:264
 CheckNSigmaStability.C:265
 CheckNSigmaStability.C:266
 CheckNSigmaStability.C:267
 CheckNSigmaStability.C:268
 CheckNSigmaStability.C:269
 CheckNSigmaStability.C:270
 CheckNSigmaStability.C:271
 CheckNSigmaStability.C:272
 CheckNSigmaStability.C:273
 CheckNSigmaStability.C:274
 CheckNSigmaStability.C:275
 CheckNSigmaStability.C:276
 CheckNSigmaStability.C:277
 CheckNSigmaStability.C:278
 CheckNSigmaStability.C:279
 CheckNSigmaStability.C:280
 CheckNSigmaStability.C:281
 CheckNSigmaStability.C:282
 CheckNSigmaStability.C:283
 CheckNSigmaStability.C:284
 CheckNSigmaStability.C:285
 CheckNSigmaStability.C:286
 CheckNSigmaStability.C:287
 CheckNSigmaStability.C:288