GSI Helmholtzzentrum für Schwerionenforschung
Hello, running un_reco_stt_evt.C in macro/run/tdrct I have the following error. I have it in may11 package but also in feb11 package. Could you please halp me? Thanks, Elisa Found Tracks: 0 in event no. 33 ---------------- *** Break *** floating point exception Generating stack trace... 0xb0eea6c7 in ertrch_ + 0xd93 from /home/fioravanti/fairsoft/transport/geant3/lib/tgt_linux/libgeant321.so 0xb0eec4a5 in ertrgo_ + 0xf29 from /home/fioravanti/fairsoft/transport/geant3/lib/tgt_linux/libgeant321.so 0xb0ee98b9 in ertrak_ + 0xc15 from /home/fioravanti/fairsoft/transport/geant3/lib/tgt_linux/libgeant321.so 0xb0fcb450 in TGeant3::Ertrak(float const*, float const*, float const*, float const*, int, char const*) + 0x62 from /home/fioravanti/fairsoft/transport/geant3/lib/tgt_linux/libgeant321.so 0x08f1008a in FairGeanePro::Propagate(int) at /home/fioravanti/fairsoft/pandaroot/geane/FairGeanePro.cxx:327 from /home/fioravanti/fairsoft/buildPanda/lib/libGeane.so 0x08f10c71 in FairGeanePro::Propagate(FairTrackParP*, FairTrackParP*, int) at /home/fioravanti/fairsoft/pandaroot/geane/FairGeanePro.cxx:275 from /home/fioravanti/fairsoft/buildPanda/lib/libGeane.so 0x050db6be in PndSttMvdGemTracking::PropagateToGemPlane(FairTrackParP*, FairTrackParP*, int) at /home/fioravanti/fairsoft/pandaroot/sttmvdtracking/PndSttMvdGemTracking. cxx:949 from /home/fioravanti/fairsoft/buildPanda/lib/libSttMvdTracking.so 0x050de15a in PndSttMvdGemTracking::Retrack() at /home/fioravanti/fairsoft/pandaroot/sttmvdtracking/PndSttMvdGemTracking. cxx:1435 from /home/fioravanti/fairsoft/buildPanda/lib/libSttMvdTracking.so 0x050e2441 in PndSttMvdGemTracking::Exec(char const*) at /home/fioravanti/fairsoft/pandaroot/sttmvdtracking/PndSttMvdGemTracking. cxx:648 from /home/fioravanti/fairsoft/buildPanda/lib/libSttMvdTracking.so 0x0027e9e8 in TTask::ExecuteTasks(char const*) + 0x108 from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x0027e3d9 in TTask::ExecuteTask(char const*) + 0x159 from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x05824386 in FairRunAna::Run(int, int) at /home/fioravanti/fairsoft/pandaroot/base/FairRunAna.cxx:273 from /home/fioravanti/fairsoft/buildPanda/lib/libBase.so 0x05882f34 in <unknown> from /home/fioravanti/fairsoft/buildPanda/lib/libBase.so 0x00bd3d7a in Cint::G__ExceptionWrapper(int (*)(G__value*, char const*, G__param*, int), G__value*, char*, G__param*, int) + 0x6a from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c8e786 in G__execute_call + 0x56 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c92d3d in G__call_cppfunc + 0x26d from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c65628 in G__interpret_func + 0x1458 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c52cf8 in G__getfunction at func.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00d5391c in G__getstructmem(int, G__FastAllocString&, char*, int, char*, int*, G__var_array*, int) + 0x5fc from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00d49708 in G__getvariable at var.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c26f41 in G__getitem at expr.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c309a9 in G__getexpr at expr.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00cc438f in G__exec_statement at parse.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c1178b in <unknown> from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c11ac6 in G__exec_tempfile + 0x16 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00cd5c26 in G__process_cmd at pause.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x002bb6d3 in TCint::ProcessLine(char const*, TInterpreter::EErrorCode*) + 0x3c3 from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x002bb2ef in TCint::ProcessLineSynch(char const*, TInterpreter::EErrorCode*) + 0x9f from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x002046c2 in TApplication::ExecuteFile(char const*, int*, bool) + 0x752 from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x00204c5c in TApplication::ProcessFile(char const*, int*, bool) + 0x2c from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x002015eb in TApplication::ProcessLine(char const*, bool, int*) + 0x86b from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x0084a8c4 in TRint::Run(bool) + 0x2e4 from /home/fioravanti/fairsoft/tools/root/lib/libRint.so.5.29 0x08048d93 in main + 0x83 from /home/fioravanti/fairsoft/tools/root/bin/root.exe 0x00990e9c in __libc_start_main + 0xdc from /lib/libc.so.6 0x08048bf1 in __gxx_personality_v0 + 0x65 from /home/fioravanti/fairsoft/tools/root/bin/root.exe
Ciao Elisa, does it happen on a specific event or does it happen always? Lia.
Ciao Lia, it is completely random, yesterday I got it on 670 event, then about 300 event, today 33 event... thanks Elisa
Ok, I will try to reproduce it... just give me the time to install the last external packages... I will let you know, ciao, Lia.
Ciao Lia, I have the same problem also in the feb11 package, if I simulate 500 or 1000 events, Elisa
Hi Elisa, I simulated and reconstructed 1000 events without the crash... now I am doing the same with others 1000 events (different seed) to see whether it was just luck! In the meanwhile, can you please try the reco with PndSttMvdGemTracking * SttMvdGemTracking = new PndSttMvdGemTracking(1); with the 1 instead of 0, i.e. in verbosity mode, and send me the log file of the crashing event? Maybe I can find out the problem in the log messages... Thanks, Lia.
Hello Lia, I simulated again 1000 events, and I have the same crash at the same event number. The following is the error. Thanks Elisa Found Tracks: 0 in event no. 2 ---------------- PROBLEM HAS NO FEASIBLE SOLUTION ==================== EVENT 2 stt + mvd track array 5 gem hits 8 ******* PndSttMvdGemTracking::Reset ******* not assig 8 8 npositions/nhits 6 8 hit 0 @ 13.61 -26.95 116.4 1 1 11 0 0 hit 1 @ -4.861 21.76 116.4 1 1 11 1 0 hit 2 @ 12.97 -27.11 117.6 1 2 12 0 1 hit 3 @ -5.010 22.05 117.6 1 2 12 1 1 hit 4 @ -6.395 30.94 152.4 2 1 21 0 2 hit 5 @ -6.510 31.25 153.6 2 2 22 0 3 hit 6 @ -7.312 40.21 188.4 3 1 31 0 4 hit 7 @ -7.490 40.51 189.6 3 2 32 0 5 pos 0 1 pos 1 1 pos 2 1 pos 3 1 pos 4 1 pos 5 1 PRIMA iHit 7 detId 16(36) PRIMA iHit 8 detId 16(36) PRIMA iHit 9 detId 16(36) PRIMA iHit 10 detId 16(36) PRIMA iHit 11 detId 16(36) PRIMA iHit 12 detId 16(36) PRIMA iHit 13 detId 16(36) PRIMA iHit 14 detId 16(36) PRIMA iHit 15 detId 16(36) PRIMA iHit 16 detId 16(36) PRIMA iHit 17 detId 16(36) PRIMA iHit 18 detId 16(36) PRIMA iHit 19 detId 16(36) PRIMA iHit 20 detId 16(36) PRIMA iHit 21 detId 16(36) PRIMA iHit 22 detId 16(36) PRIMA iHit 23 detId 16(36) PRIMA iHit 24 detId 16(36) PRIMA iHit 25 detId 16(36) PRIMA iHit 26 detId 16(36) PRIMA iHit 27 detId 16(36) PRIMA iHit 28 detId 16(36) PRIMA iHit 29 detId 16(36) PRIMA iHit 30 detId 16(36) PRIMA iHit 31 detId 16(36) PRIMA iHit 32 detId 16(36) start from TVector3 A 3D physics vector (x,y,z)=(39.336944,-5.623349,30.272836) (rho,theta,phi)=(49.954598,52.698661,-8.135506) lastpar error 0.02000 0.02000 1.000 OUT OF SENSOR 107.4 -89.38 45.00 CANNOT PROPAGATE PRIMA iHit 34 detId 16(36) PRIMA iHit 35 detId 16(36) PRIMA iHit 36 detId 16(36) PRIMA iHit 37 detId 16(36) PRIMA iHit 38 detId 16(36) PRIMA iHit 39 detId 16(36) PRIMA iHit 40 detId 16(36) PRIMA iHit 41 detId 16(36) PRIMA iHit 42 detId 16(36) PRIMA iHit 43 detId 16(36) PRIMA iHit 44 detId 16(36) start from TVector3 A 3D physics vector (x,y,z)=(7.658246,39.033931,42.024698) (rho,theta,phi)=(57.865117,43.426841,78.899868) lastpar error 0.02000 0.02000 1.000 OUT OF SENSOR 71.88 54.15 45.00 CANNOT PROPAGATE PRIMA iHit 78 detId 16(36) PRIMA iHit 79 detId 16(36) PRIMA iHit 80 detId 16(36) PRIMA iHit 81 detId 16(36) PRIMA iHit 82 detId 16(36) PRIMA iHit 83 detId 16(36) PRIMA iHit 84 detId 16(36) PRIMA iHit 85 detId 16(36) PRIMA iHit 86 detId 16(36) PRIMA iHit 87 detId 16(36) PRIMA iHit 88 detId 16(36) PRIMA iHit 89 detId 16(36) PRIMA iHit 90 detId 16(36) PRIMA iHit 91 detId 16(36) start from TVector3 A 3D physics vector (x,y,z)=(-3.239047,32.930172,25.146751) (rho,theta,phi)=(41.560158,52.766214,95.617604) lastpar error 0.02000 0.02000 1.000 OUT OF SENSOR 36.03 144.1 45.00 CANNOT PROPAGATE PRIMA iHit 45 detId 16(36) PRIMA iHit 49 detId 16(36) PRIMA iHit 50 detId 16(36) PRIMA iHit 51 detId 16(36) PRIMA iHit 52 detId 16(36) PRIMA iHit 53 detId 16(36) PRIMA iHit 54 detId 16(36) PRIMA iHit 55 detId 16(36) PRIMA iHit 56 detId 16(36) PRIMA iHit 57 detId 16(36) PRIMA iHit 58 detId 16(36) PRIMA iHit 59 detId 16(36) PRIMA iHit 60 detId 16(36) PRIMA iHit 60 detId 16(36) PRIMA iHit 61 detId 16(36) PRIMA iHit 61 detId 16(36) PRIMA iHit 63 detId 16(36) PRIMA iHit 62 detId 16(36) PRIMA iHit 64 detId 16(36) PRIMA iHit 73 detId 16(36) PRIMA iHit 73 detId 16(36) PRIMA iHit 71 detId 16(36) PRIMA iHit 71 detId 16(36) PRIMA iHit 70 detId 16(36) PRIMA iHit 70 detId 16(36) PRIMA iHit 69 detId 16(36) PRIMA iHit 69 detId 16(36) PRIMA iHit 68 detId 16(36) PRIMA iHit 68 detId 16(36) TOO LOW MOMENTUM 3 TVector3 A 3D physics vector (x,y,z)=(14.075058,-26.674008,-4.163533) (rho,theta,phi)=(30.445771,97.859966,-62.180759) TVector3 A 3D physics vector (x,y,z)=(-0.085107,-0.032588,0.000000) (rho,theta,phi)=(0.091133,90.000000,-159.047625) start from TVector3 A 3D physics vector (x,y,z)=(14.075058,-26.674008,-4.163533) (rho,theta,phi)=(30.445771,97.859966,-62.180759) lastpar error 0.02000 0.02000 1.000 propagation from TVector3 A 3D physics vector (x,y,z)=(14.075058,-26.674008,-4.163533) (rho,theta,phi)=(30.445771,97.859966,-62.180759) *** Break *** floating point exception Generating stack trace... 0xb11746c7 in ertrch_ + 0xd93 from /home/fioravanti/fairsoft/transport/geant3/lib/tgt_linux/libgeant321.so 0xb11764a5 in ertrgo_ + 0xf29 from /home/fioravanti/fairsoft/transport/geant3/lib/tgt_linux/libgeant321.so 0xb11738b9 in ertrak_ + 0xc15 from /home/fioravanti/fairsoft/transport/geant3/lib/tgt_linux/libgeant321.so 0xb1255450 in TGeant3::Ertrak(float const*, float const*, float const*, float const*, int, char const*) + 0x62 from /home/fioravanti/fairsoft/transport/geant3/lib/tgt_linux/libgeant321.so 0x061e808a in FairGeanePro::Propagate(int) at /home/fioravanti/fairsoft/pandaroot/geane/FairGeanePro.cxx:327 from /home/fioravanti/fairsoft/buildPanda/lib/libGeane.so 0x061e8c71 in FairGeanePro::Propagate(FairTrackParP*, FairTrackParP*, int) at /home/fioravanti/fairsoft/pandaroot/geane/FairGeanePro.cxx:275 from /home/fioravanti/fairsoft/buildPanda/lib/libGeane.so 0x04d9681e in PndSttMvdGemTracking::PropagateToGemPlane(FairTrackParP*, FairTrackParP*, int) at /home/fioravanti/fairsoft/pandaroot/sttmvdtracking/PndSttMvdGemTracking. cxx:949 from /home/fioravanti/fairsoft/buildPanda/lib/libSttMvdTracking.so 0x04d9ce91 in PndSttMvdGemTracking::Exec(char const*) at /home/fioravanti/fairsoft/pandaroot/sttmvdtracking/PndSttMvdGemTracking. cxx:601 from /home/fioravanti/fairsoft/buildPanda/lib/libSttMvdTracking.so 0x0031e9e8 in TTask::ExecuteTasks(char const*) + 0x108 from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x0031e3d9 in TTask::ExecuteTask(char const*) + 0x159 from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x01ef3386 in FairRunAna::Run(int, int) at /home/fioravanti/fairsoft/pandaroot/base/FairRunAna.cxx:273 from /home/fioravanti/fairsoft/buildPanda/lib/libBase.so 0x01f51f88 in <unknown> from /home/fioravanti/fairsoft/buildPanda/lib/libBase.so 0x00bd3d7a in Cint::G__ExceptionWrapper(int (*)(G__value*, char const*, G__param*, int), G__value*, char*, G__param*, int) + 0x6a from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c8e786 in G__execute_call + 0x56 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c92d3d in G__call_cppfunc + 0x26d from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c65628 in G__interpret_func + 0x1458 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c52cf8 in G__getfunction at func.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00d5391c in G__getstructmem(int, G__FastAllocString&, char*, int, char*, int*, G__var_array*, int) + 0x5fc from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00d49708 in G__getvariable at var.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c26f41 in G__getitem at expr.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c309a9 in G__getexpr at expr.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00cc438f in G__exec_statement at parse.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c1178b in <unknown> from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00c11ac6 in G__exec_tempfile + 0x16 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x00cd5c26 in G__process_cmd at pause.cxx:0 from /home/fioravanti/fairsoft/tools/root/lib/libCint.so.5.29 0x0035b6d3 in TCint::ProcessLine(char const*, TInterpreter::EErrorCode*) + 0x3c3 from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x0035b2ef in TCint::ProcessLineSynch(char const*, TInterpreter::EErrorCode*) + 0x9f from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x002a46c2 in TApplication::ExecuteFile(char const*, int*, bool) + 0x752 from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x002a4c5c in TApplication::ProcessFile(char const*, int*, bool) + 0x2c from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x002a15eb in TApplication::ProcessLine(char const*, bool, int*) + 0x86b from /home/fioravanti/fairsoft/tools/root/lib/libCore.so.5.29 0x0011d8c4 in TRint::Run(bool) + 0x2e4 from /home/fioravanti/fairsoft/tools/root/lib/libRint.so.5.29 0x08048d93 in main + 0x83 from /home/fioravanti/fairsoft/tools/root/bin/root.exe 0x05c34e9c in __libc_start_main + 0xdc from /lib/libc.so.6 0x08048bf1 in __gxx_personality_v0 + 0x65 from /home/fioravanti/fairsoft/tools/root/bin/root.exe Root >
Hello, I look into: pandaroot/sttmvdtracking/PndSttMvdGemTracking.cxx and I try to print out the value of fpdgCode,tmppar and gempar. I run again the reconstruction macro and before the crash (that I have at the same event as before) I find this following value. I read e-248. Is it not strange? The other value are e-17. Hope it helps, thanks Elisa propagation from TVector3 A 3D physics vector (x,y,z)=(14.075058,-26.674008,-4.163533) (rho,theta,phi)=(30.445771,97.859966,-62.180759) pdg: -13 Position : (14., -27., -4.2) Slopes : dx/dz = -1.5e-17, dy/dz = 1.5e-248 q/p = 11. Position : (0.0, 0.0, 0.0) Slopes : dx/dz = 0.0, dy/dz = 0.0 q/p = 0.0 *** Break *** floating point exception
Hi Elisa, Quote: I read e-248. Is it not strange? The other value are e-17. yes, that' s should not happen... I still do not see the crash in my events, but I was able to force it just putting as starting values the ones from your log (thank you for posting it). Now I should be able to see directly what is the problem and (hopefully) fix it. Stay tuned, Lia.
Hi again, I really think the problem is that the z component of the start momentum is 0, but I need to make one further check to be sure. Can you please update your sttmvdtracking directory, rerun the reco in verbose mode and post the new log file? I added to the PndSttMvdGemTracking a few more print outs to understand what happens... Thank you, sorry if I ask you to run all this stuff but the change I put by hand in my code is not enough to test this part. Lia.
Hi Elisa, thank you for the post. It really seems the problem is the starting momentum z component, so I just uploaded to svn a modified PndSttMvdGemTracking.cxx that should fix the problem. If the crash is still there, please let me know! Ciao, Lia.
Hi Elisa, I added a couple more print outs to check the starting momentum after my prefit, can you please update, rerun and post the messages again? (sorry! ) Thanks, Lia.
Hi, I don't know how the stt+mvd+gem code works, but I an wondering if all the tracks are extrapolated to gem planes or only the "forward ones". IO mean, I think that if a track has theta > 30° it will have no chance to hit the gem planes. f such a cut is not present n the code, maybe it could be good to put it, pz will be much bigger than 0, thus no problems. Could it help? Or maybe this is already included in the code?
Hi Stefano, actually there is a test to decide whether the track can reach the GEM plane or not with a simple and quick helix extrapolation to the first plane (no GEANE, just math). In my thoughts that should have been enough to throw away also these pz = 0 tracks, but clearly there is something which goes wrong. ...I was wondering (looking in the log) how is it possible that a track with: first mom = (0.077671,-0.047670,0.000000) first pos = (16.552964,0.397360,0.000000) last mom = (-0.085107,-0.032588,0.000000) has last pos = (14.075058,-26.674008,-4.163533)... Gianluigi, this comes from your PR, do you have any idea? Ciao, Lia.
Thanks Elisa, I changed the code again, please try now (and tell me it works ! ) Lia.
I added some more print outs, since it does not seem to see a continue I put there and I cannot get why... Can you please update and post the new log (or send it directly to me if you prefer since we are just doing debugging)? Thanks, Lia.
Lia Lavezzi wrote on Mon, 23 May 2011 13:36 Hi Stefano, actually there is a test to decide whether the track can reach the GEM plane or not with a simple and quick helix extrapolation to the first plane (no GEANE, just math). In my thoughts that should have been enough to throw away also these pz = 0 tracks, but clearly there is something which goes wrong. ...I was wondering (looking in the log) how is it possible that a track with: first mom = (0.077671,-0.047670,0.000000) first pos = (16.552964,0.397360,0.000000) last mom = (-0.085107,-0.032588,0.000000) has last pos = (14.075058,-26.674008,-4.163533)... Gianluigi, this comes from your PR, do you have any idea? Ciao, Lia. In principle no physics prevents from having a track with Pz=0, and the Pattern Recognition in fact can find a track with Pz =0. Pz =0 when one of the parameter I use to parametrize the Helix is very large. Also, Pz=0 for a track is not in contraddiction, from the Pattern Recognition algorithm point of view, with having the Z position of the last point NOT EXACTLY 0; certainly it must be CLOSE to zero [as in the this example, where last pos = (14.075058,-26.674008,-4.163533) ]. Anyway, I am investigating possible bugs in the code right now Gianluigi
Lia Lavezzi wrote on Mon, 23 May 2011 13:36 Hi first mom = (0.077671,-0.047670,0.000000) first pos = (16.552964,0.397360,0.000000) last mom = (-0.085107,-0.032588,0.000000) has last pos = (14.075058,-26.674008,-4.163533)... Gianluigi, this comes from your PR, do you have any idea? Ciao, Lia. I put in Svn a fix to a particular situation arising in the Pattern Recognition when a track doesn't have any Stt Skew Hits nor Mvd hits associated. I am not sure, but that may be the cause of the crash observed by Elisa. So please update PndSttMvdTracking.cxx and .h and try again Gianluigi
Moreover, the PndSttMvdGemTracking is now protected from tracks with initial pz = 0 since it is quite clear that they will not be extrapolated to the GEM planes... Lia.
Hello, the problem is now fixed and the reconstruction macro for stt doesn't crash anymore. thanks a lot to everyone who helps me Elisa