Error in root file

**terminate called after throwing an instance of 'std::out_of_range'**
**  what():  vector::_M_range_check: __n (which is 9) >= this->size() (which is 9)**

am running a file in root .C file but it give the above error. anyone tell me whats its mean exactly?

We need more details. can you post the macro root.C ?

its a large macro but you can acces it in my public work/i/isohail/public in lxplus accountwith name of file lorentz_analysis.C

can you make a smaller one easier to debug and post it here ?

#include "TList.h"
#include "TIterator.h"

#include <vector>
#include <utility>

typedef std::vector<TString> MyObjectInfo;

TString sub_detector(MyObjectInfo& info) { return info[0]; }

TString side(MyObjectInfo& info) {
   if( info[2].Contains("noSide") ) return "side unknown";
   else if (info[2].Contains("negative") ) return "negative side";
   else if (info[2].Contains("positive") ) return "positive side";
   return "";
}

TString structure(MyObjectInfo& info) {
   TString out = TString( info[1](5,info[2].Length()-5) );
   if( info[1].Contains("layer") ) {
     out.Prepend("Layer ");
   }
   if( info[1].Contains("wheel") ) {
     out.Prepend("Wheel ");
   }
   return out;
}

TString axisOrientation(MyObjectInfo& info) {
   if( info[3].Contains("positive") ) return "parallel";
   else if ( info[3].Contains("negative") ) return "anti-parallel";
   return "";
}

template <typename T> void set_style(std::vector<T*>& histos, int line_color,
                                                              int fill_color,
 
                                                                                                                                
{
   for(unsigned int i=0 ;i<histos.size(); ++i) {
     histos[i]->SetLineColor(line_color);
     histos[i]->SetFillColor(fill_color);
     //histos[i]->SetMarkerStyle(marker_style);
     histos[i]->SetMarkerColor(marker_color);
   }
}

template <typename T> void fill_histogram_vector(std::vector<T*>& v, const char* name)
{
   TIter it( gDirectory->GetListOfKeys() );
   TKey *key;
   while ((key=(TKey*)it())) {

      // Check we gather only TH2
      TClass *cl = gROOT->GetClass(key->GetClassName());
      if (!cl->InheritsFrom(name)) continue;

      v.push_back( (T*)gDirectory->Get( key->GetName() )  );
   }
}

template <typename T> void gather_info(T* object, MyObjectInfo& infos)
{
   TString name( object->GetName() );
   TObjArray *info = name.Tokenize("_");
   info->Print();
   for (int i = 0; i < info->GetEntries(); i++) {
      infos.push_back( ((TObjString *)(info->At(i)))->String() );
   }
}

void create_profile_x(std::vector<TH2F*> v, std::vector<TProfile*>& profiles)
{
   for(unsigned int i=0; i<v.size(); ++i) {
     profiles.push_back( (v.at(i))->ProfileX() );
   }
}

template< typename T> std::vector< std::pair<T*,T*> > arrange(std::vector<T*>&v)
{
   std::vector< bool > taken(v.size(), false);
   std::vector< std::pair<T*,T*> > out;

   for(unsigned int i=0; i<v.size(); ++i) {
      if( taken[i] ) continue;
      T* obj1 = v.at(i);
      MyObjectInfo info1;  gather_info<T>(obj1,info1);
      TString obj1_str = structure(info1);
      TString obj1_sde = side(info1);
      TString obj1_wax = axisOrientation(info1);
      for(unsigned int j=i+1; j<v.size(); ++j) {
         if( taken[j] ) continue;
         T* obj2 = v.at(j);
         MyObjectInfo info2;  gather_info<T>(obj2,info2);
         TString obj2_str = structure(info2);
         TString obj2_sde = side(info2);
         TString obj2_wax = axisOrientation(info2);
         std::cout << obj1_str << "  ,  " << obj2_str << std::endl;
         if ( obj1_str.CompareTo(obj2_str)==0 && obj1_sde.CompareTo(obj2_sde)==0 ) {
            std::cout << "Found!" << std::endl;
            taken[j] = true;
            if( obj1_wax.Contains("anti") ) out.push_back( std::pair<T*,T*>(obj2,obj1) );
            else                            out.push_back( std::pair<T*,T*>(obj1,obj2) );
         }
      }
   }
   return out;
}

void lorentzAngle()
{
   const char* dir = "TID";

   // Histograms for 2015 data taking
   std::vector<TH2F*> listOf2015;
   std::vector<TProfile*> profile2015;

   // Histograms for 2012 data taking
   std::vector<TH2F*> listOf2012;
   std::vector<TProfile*> profile2012;


   // open 2015 / 2012 data taking analysis and arranging histogram to be displayed
   TFile *file_2015 = new TFile("decos_OT_2017.root");
   file_2015->cd( TString::Format("prod/%s",dir).Data() );
   fill_histogram_vector<TH2F>(listOf2015,"TH2");
   create_profile_x(listOf2015,profile2015);  set_style<TProfile>(profile2012,1,1,20,1);

   TFile *file_2012 = new TFile("peaks_OT_2017.root");
   file_2012->cd( TString::Format("prod/%s",dir).Data() );
   fill_histogram_vector<TH2F>(listOf2012,"TH2");
   create_profile_x(listOf2012,profile2012);  set_style<TProfile>(profile2012,4,4,20,4);


   std::vector< std::pair<TProfile*,TProfile*> > histo_set_2015 = arrange<TProfile>(profile2015);
   std::vector< std::pair<TProfile*,TProfile*> > histo_set_2012 = arrange<TProfile>(profile2012);

   // removing histogram title
   gStyle->SetOptTitle(0);
   gStyle->SetOptStat(10);

   TLatex text;

   for(unsigned int i=0; i<histo_set_2015.size(); ++i) {
     TCanvas* c = new TCanvas();
     TProfile* p1 = histo_set_2015.at(i).first;
TProfile* p1Old = histo_set_2012.at(i).first;
     TProfile* p2Old = histo_set_2012.at(i).second;


     c->Divide(1,2);

     c->cd(1);
     p1->Draw();
     p1->GetXaxis()->SetTitle("tan(#theta)");
     p1->GetYaxis()->SetTitle("shift");
     MyObjectInfo info1;  gather_info<TProfile>(p1,info1);
     TString p1_sdt = sub_detector(info1);
     TString p1_str = structure(info1);
     TString p1_wax = axisOrientation(info1);


     text.DrawLatexNDC(.1,.91, TString::Format("#scale[1.2]{%s, w axis %s, %s}",p1_sdt.Data(),p1_wax.Data(),p1_str.Data()).Data());

     gPad->Update();

     TPaveStats* p1_stat = (TPaveStats*) p1->FindObject("stats");
     p1_stat->SetX1NDC(.55);
     p1_stat->SetX2NDC(.75);
     p1_stat->SetY1NDC(.91);
     p1_stat->SetY2NDC(.98);


     if( strcmp(p1->GetName(),p1Old->GetName())==0 ) {
        p1Old->Draw("sames");
        gPad->Update();
        TPaveStats* p1Old_stat = (TPaveStats*) p1Old->FindObject("stats");
        p1Old_stat->SetLineColor( p1Old->GetLineColor() );
        p1Old_stat->SetTextColor( p1Old->GetLineColor() );
        p1Old_stat->SetY1NDC( .91 );
        p1Old_stat->SetY2NDC( .98 );
     } TLegend* legend_1 = new TLegend(0.33,0.60,0.53,0.76);
     legend_1->SetTextFont(72);
     legend_1->SetTextSize(0.06);
     legend_1->AddEntry(p1,"peak runs","l");
    legend_1->AddEntry(p1Old,"deco runs ","l");
     legend_1->SetBorderSize(0);
     legend_1->Draw();

     c->cd(2);
     p2->Draw();
     p2->GetXaxis()->SetTitle("tan(#theta)");
     p2->GetYaxis()->SetTitle("shift");
     MyObjectInfo info2;  gather_info<TProfile>(p2,info2);
     TString p2_sdt = sub_detector(info2);
     TString p2_str = structure(info2);
     TString p2_wax = axisOrientation(info2);

     text.DrawLatexNDC(.1,.91, TString::Format("#scale[1.2]{%s, w axis %s, %s}",p2_sdt.Data(),p2_wax.Data(),p2_str.Data()).Data());

     gPad->Update();

     TPaveStats* p2_stat = (TPaveStats*) p2->FindObject("stats");
     p2_stat->SetX1NDC(.55);
     p2_stat->SetX2NDC(.75);
     p2_stat->SetY1NDC(.91);
     p2_stat->SetY2NDC(.98);


     if( strcmp(p2->GetName(),p2Old->GetName())==0 ) {
        p2Old->Draw("sames");
        gPad->Update();
        TPaveStats* p2Old_stat = (TPaveStats*) p2Old->FindObject("stats");
        p2Old_stat->SetLineColor( p2Old->GetLineColor() );
        p2Old_stat->SetTextColor( p2Old->GetLineColor() );
        p2Old_stat->SetY1NDC( .91 );
        p2Old_stat->SetY2NDC( .98 );

   }

     TLegend* legend_2 = new TLegend(0.33,0.60,0.53,0.76);
     legend_2->SetTextFont(72);
     legend_2->SetTextSize(0.06);
     legend_2->AddEntry(p1,"deco runs ","l");
     legend_2->AddEntry(p1Old,"peak runs ","l");
     legend_2->SetBorderSize(0);
     legend_2->Draw();



     std::cout << p1->GetName() << "   ,   " << p2->GetName() << std::endl;

     if(i==0) c->Print("TID_lorentzAngle.pdf(","pdf");
     else if (i==histo_set_2015.size()-1) c->Print("TID_lorentzAngle.pdf)","pdf");
     else c->Print("TID_lorentzAngle.pdf","pdf");
   }
}

this is short form of code thanks for help in advance

Can you make sure it is correct ?
I get:

Processing lorentzAngle.C...
In file included from input_line_14:1:
/Users/couet/roottest/lorentzAngle.C:39:1: error: expected parameter declarator
{
^
/Users/couet/roottest/lorentzAngle.C:39:1: error: expected ')'
/Users/couet/roottest/lorentzAngle.C:35:37: note: to match this '('
template <typename T> void set_style(std::vector<T*>& histos, int line_color,
                                    ^
/Users/couet/roottest/lorentzAngle.C:237:2: error: expected ';' at end of declaration
}
 ^
 ;

attach the file instead of copy/paste it like you did.

can you check that file which i put in my public
that is actual file am trying but am fail to produce pdf after wheel 8 program terminate and give me range problem. thanks

The file you mentioned is not present in your public directory:

$ ls /afs/cern.ch/user/i/isohail/public
ATree.cc           Invarientmass2.cc  M_en.cc      TLorentz.cc  mybranches.root
Invarientmass1.cc  MASS.cc            ReadTree.cc  iqra.cc

/afs/cern.ch/uwork/i/isohail/public
open it please
then file name is lorentz_analysis.C

/afs/cern.ch/work/i/isohail/public

this file is work for TOB,TIB but when it declear here TEC and want to get output for it after wheel 8 it dont give me output and give me
terminate called after throwing an instance of 'std::out_of_range’
what(): vector::_M_range_check: __n (which is 1) >= this->size() (which is 1)

are you send me reply ?becuse am waiting for your reply

I get this:

$ root lorentz_analysis.C
   -----------------------------------------------------------------
  | Welcome to ROOT 6.13/01                     http://root.cern.ch |
  |                                    (c) 1995-2017, The ROOT Team |
  | Built for macosx64                                              |
  | From heads/master@v6-11-02-1148-g4192bcf, Dec 13 2017, 15:03:37 |
  | Try '.help', '.demo', '.license', '.credits', '.quit'/'.q'      |
   -----------------------------------------------------------------

root [0] 
Processing lorentz_analysis.C...
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel9
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel8
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel7
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel6
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel5
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel4
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel3
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel2
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel1
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel1
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel2
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel3
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel4
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel5
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel6
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel7
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel8
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel9
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel1
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel2
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel3
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel4
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel5
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel6
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel7
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel8
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel9
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel9
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel8
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel7
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel6
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel5
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel4
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel3
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel2
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel1
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel1
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel2
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel3
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel4
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel5
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel6
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel7
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel8
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel9
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel1
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel2
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel3
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel4
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel5
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel6
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel7
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel8
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel9
 TObjString = negativeSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel1
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel2
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Info in <TCanvas::Print>: pdf file TEC_deco_clusterSize.pdf has been created using the current canvas
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel3
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel4
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Info in <TCanvas::Print>: Current canvas added to pdf file TEC_deco_clusterSize.pdf
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel5
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel6
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Info in <TCanvas::Print>: Current canvas added to pdf file TEC_deco_clusterSize.pdf
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel7
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Collection name='TObjArray', class='TObjArray', size=16
 TObjString = TEC
 TObjString = wheel8
 TObjString = positiveSide
 TObjString = frame0
 TObjString = ava
 TObjString = pfx
Info in <TCanvas::Print>: Current canvas added to pdf file TEC_deco_clusterSize.pdf
libc++abi.dylib: terminating with uncaught exception of type std::out_of_range: vector

yes after running it give me this that is why it didn’t produce pdf of this file am unable to understand why it give me range problem. thank you so much for help.

It seems your macro access a vector outside its limits. May be a loop index goes to far ?

then how can i check it ? am working on it from last 2 days but am unable to find…what you think what should i do?

result_frames.size() = 8

In your loop you have:

         TProfile* p1 = result_frames.at(j);
         TProfile* p2 = result_frames.at(j+1);

when j=8 then j+1=9 and you are out of the bound of the array.

i put a check on it it give me no error now but it can,t produce pdf infact file became when i open it it give me corrupted file

thank you for your help. and pointing out my error