Home » PANDA » PandaRoot » Bugs, Fixes, Releases » Genfit problems with new code - STT (r5323)
Genfit problems with new code - STT (r5323) [message #8277] |
Tue, 21 April 2009 18:09 |
StefanoSpataro
Messages: 2736 Registered: June 2005 Location: Torino
|
first-grade participant |
From: *to.infn.it
|
|
Dear all,
Susanna has found a strange error using genfit with lhetrack.
I have run all the standard macros of tutorials/lhetrack, and I was able to reproduce the same error. Cosidering that the lhetrack code was substantially not touched, and considering that before the last collaboration meeting everything was properly working, I think the error comes from the new changes in genfit package.
In order to reproduce the error, you have to use the last svn release (r5327), and then try to run, from tutorials/lhetrack:
root -l run_sim_sttcombi_pgun.C"(10,13,1)"
root -l run_digi_sttcombi.C
root -l run_reco_sttcombi.C
root -l run_kalman_stt.C
You will not see any crashes at all. But when you open the output file fit_sttcombi.root, if you try to plot the momentum:
cbmsim.Draw("LheGenTrack.getMom().Mag()")
you will have the following error:
root [0]
Attaching file fit_sttcombi.root as _file0...
root [1] cbmsim.Draw("LheGenTrack.getMom().Mag()")
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
<TCanvas::MakeDefCanvas>: created default TCanvas with name c1
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error: Symbol G__exception is not defined in current scope (tmpfile):1:
Error: type G__exception not defined FILE:(tmpfile) LINE:1
(void)0
*** Interpreter error recovered ***
root [2] .q
Considering how the error looks like, I think it could be related to some error trying to read the Track object, or something similar.
Maybe it is related to a hidden genfit bug, or maybe the last changes require a modification of the recohit/kalman part inside the lhetrack stt chain. For TPC the error does not occur, and one month ago everything was working properly.
A help from experts is requested, considering that we both are not able to read the data structure of a Track coming from genfit kalman, therefore we cannot use serious track fitting.
Waiting for news, thanks in advance...
|
|
|
|
Re: Genfit problems with new code - STT (r5323) [message #8284 is a reply to message #8277] |
Thu, 23 April 2009 12:47 |
Felix Boehmer
Messages: 149 Registered: May 2007 Location: Munich
|
first-grade participant |
From: *pools.arcor-ip.net
|
|
Hello again Stefano,
sorry for the late answer.
i just tried to reproduce the problem, and indeed I get the same error as you did.
root [1] cbmsim->StartViewer()
File name : fit_sttcombi.root
root [2] <TCanvas::MakeDefCanvas>: created default TCanvas with name c1
Warning in <TSelectorDraw::ProcessFillObject>: Not implemented for TObjArray
<TCanvas::MakeDefCanvas>: created default TCanvas with name c1
<TCanvas::MakeDefCanvas>: created default TCanvas with name c1
tv__tree->Draw("LheGenTrack.getMom().Mag()","","", 10, 0);
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
<TCanvas::MakeDefCanvas>: created default TCanvas with name c1
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
Error in <TBufferFile::CheckByteCount>: object of class vector<map<int,int>*> read too few bytes: 6 instead of 31
root [3]
However, plotting works for me:
Why there is this error I don't know yet, but in principle everything seems to work. There must be something else wrong in your setup.
I will keep you updated.
Cheers
Felix
|
|
|
|
|
|
|
|
|
Goto Forum:
Current Time: Sat Nov 30 16:47:58 CET 2024
Total time taken to generate the page: 0.00682 seconds
|