Re: Project a Chain into a Histogram

From: Rene Brun <Rene.Brun_at_cern.ch>
Date: Thu, 16 Nov 2006 16:33:54 +0100


Melinda,

Could you check that the chain definition is still valid when reading it back from the file?
and if yes, try the second suggestion (see below in your code)

Melinda siciliano wrote:
>
>
> On 11/15/06, *Melinda siciliano* <mellybinda_at_gmail.com
> <mailto:mellybinda_at_gmail.com>> wrote:
>
> Hi!
>
> I'm using the latest version of root (5.13.04) on linux. I tried
> to fill an histogram with
>
> TFile *f= new
> TFile("/aliraid2/alice/melinda/melinda/prove/005/ntupleincatenate_nuove.root");
> TChain *cate = (TChain*)f->Get("nt");
>

          cate->ls(); //<===to check if the chain is valid
          cate->SetCacheSize(0); //just in case you had created the 
chain with a buggy version of the cache

Rene
>
> TH1F *tracmax = new TH1F("trac","piu15t",200,14.,1000.);
> cate->Project("trac","ntrksSPD","ntrksSPD>=16");
>
> and when i tried to run the macro, i obtained this message:
>
> *** glibc detected *** free(): invalid pointer: 0x08cd45e8 ***
>
> Program exited with code 06.
>
> or
>
> *** Break *** segmentation violation
> Generating stack trace...
> 0xb6c85d4b in TTreeCache::SetEntryRange(long long, long long) +
> 0xaf from /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libTree.so
> 0xb53c1c47 in TTreePlayer::Process(TSelector*, char const*, long
> long, long long) + 0x49f from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libTreePlayer.so
> 0xb53bb486 in TTreePlayer::DrawSelect(char const*, char const*,
> char const*, long long, long long) + 0x4b8 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libTreePlayer.so
> 0xb6c8e1a0 in TTree::Draw(char const*, char const*, char const*,
> long long, long long) + 0x5c from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libTree.so
> 0xb6c6499b in TChain::Draw(char const*, char const*, char const*,
> long long, long long) + 0xbb from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libTree.so
> 0xb6c92d22 in TTree::Project(char const*, char const*, char
> const*, char const*, long long, long long) + 0xca from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libTree.so
> 0xb6cbc0e4 in <unknown> from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libTree.so
> 0xb741bb8e in G__ExceptionWrapper + 0x42 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74d72f9 in G__call_cppfunc + 0x2a5 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74c544e in G__interpret_func + 0x816 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74b1461 in G__getfunction + 0x15fb from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb7543fb1 in G__getstructmem + 0xb53 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb753b88d in G__getvariable + 0x5d5 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74a72f1 in G__getitem + 0x571 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74a5bf6 in G__getexpr + 0x9392 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74f0ece in G__exec_function + 0xca from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74f92a4 in G__exec_statement + 0x3546 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74c6ea1 in G__interpret_func + 0x2269 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74b1c74 in G__getfunction + 0x1e0e from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74a7395 in G__getitem + 0x615 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74a5bf6 in G__getexpr + 0x9392 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb749c4f1 in G__calc_internal + 0x2c7 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb74ff845 in G__process_cmd + 0x2377 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCint.so
> 0xb7993ad2 in TCint::ProcessLine(char const*,
> TInterpreter::EErrorCode*) + 0x13e from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCore.so
> 0xb7993c3a in TCint::ProcessLineSynch(char const*,
> TInterpreter::EErrorCode*) + 0x46 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCore.so
> 0xb78ba9ae in TApplication::ProcessFile(char const*, int*) +
> 0x6fa from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCore.so
> 0xb78ba239 in TApplication::ProcessLine(char const*, bool, int*)
> + 0x5d9 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCore.so
> 0xb69d5f30 in TRint::HandleTermInput() + 0x234 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libRint.so
> 0xb69d473a in TTermInputHandler::Notify() + 0x24 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libRint.so
> 0xb69d63ae in TTermInputHandler::ReadNotify() + 0x12 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libRint.so
> 0xb7a37dcc in TUnixSystem::CheckDescriptors() + 0x148 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCore.so
> 0xb7a36c9c in TUnixSystem::DispatchOneEvent(bool) + 0x188 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCore.so
> 0xb79415b6 in TSystem::InnerLoop() + 0x18 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCore.so
> 0xb7941556 in TSystem::Run() + 0x7a from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCore.so
> 0xb78baae0 in TApplication::Run(bool) + 0x32 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libCore.so
> 0xb69d58e4 in TRint::Run(bool) + 0x40c from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/lib/libRint.so
> 0x08048d4b in main + 0x67 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/bin/root.exe
> 0xb6795e23 in __libc_start_main + 0xd3 from /lib/tls/libc.so.6
> 0x08048c5d in TApplicationImp::ShowMembers(TMemberInspector&,
> char*) + 0x31 from
> /aliraid2/alice/melinda/alisoft/root/v5-13-04/bin/root.exe
> Root > Function efficienza15() busy flag cleared
>
> What have I to do? This macro run without problems with the
> version 5.11.06. Have I ti change something?
>
> Thanks,
>
> Melinda
>
>
Received on Thu Nov 16 2006 - 16:34:01 MET

This archive was generated by hypermail 2.2.0 : Mon Jan 01 2007 - 16:32:02 MET