MVD covariance matrix = 0. [message #12189] |
Mon, 04 July 2011 16:50 |
Lia Lavezzi
Messages: 291 Registered: May 2007 Location: Torino
|
first-grade participant |
From: *pv.infn.it
|
|
Hi MVD experts,
I am running some tests and I see several crashes in genfit, but after looking at the problem I think that this is caused by the sds covariance matrix, when it happens to have all the elements equal to 0:
-I- PndSdsRecoHit::PndSdsRecoHit: Wrote a hit with
(x,y) = (0.2535,-0.2925).
Covariance Matrix is
2x2 matrix is as follows
| 0 | 1 |
-------------------------------
0 | 0 0
1 | 0 0
this turns out in the crash
#10 0xb2454dd5 in GFTools::invertMatrix (mat=..., inv=...)
at /home/lavezzi/test_dev/trunk/genfit/GFTools.cxx:288
#11 0xb244b438 in GFKalman::chi2Increment (this=0x8ab4208, r=..., H=...,
cov=..., V=...) at /home/lavezzi/test_dev/trunk/genfit/GFKalman.cxx:200
#12 0xb244c4b5 in GFKalman::processHit (this=0x8ab4208, tr=0x12bc0090, ihit=3,
irep=0, direction=1)
at /home/lavezzi/test_dev/trunk/genfit/GFKalman.cxx:313
#13 0xb244b27d in GFKalman::fittingPass (this=0x8ab4208, trk=0x12bc0090,
direction=1) at /home/lavezzi/test_dev/trunk/genfit/GFKalman.cxx:169
#14 0xb244aacb in GFKalman::processTrack (this=0x8ab4208, trk=0x12bc0090)
at /home/lavezzi/test_dev/trunk/genfit/GFKalman.cxx:77
#15 0xafb6c461 in PndRecoKalmanFit::Fit (this=0x8ab41d8, tBefore=0xfd188a0,
PDG=13)
at /home/lavezzi/test_dev/trunk/GenfitTools/recotasks/PndRecoKalmanFit.cxx:282
since at that point, in the invertMatrix function, there is 1./mat[0][0] and mat[0][0] is equal to 0.
I am using rev 12447.
Could you please fix this? Or is it fixed in the latest revision?
Thank you in advance,
Lia.
|
|
|
|
|
|
Re: MVD covariance matrix = 0. [message #12195 is a reply to message #12193] |
Tue, 05 July 2011 11:50 |
Lia Lavezzi
Messages: 291 Registered: May 2007 Location: Torino
|
first-grade participant |
From: *pv.infn.it
|
|
Hi Tobias,
I checked the Dx, Dy, Dz and I have some of them equal to 0, exactly in the event where the crash happens, for example in one test I have from the cbmsim->Scan, looking for small dx, dy, dz (below 1e-8):
***********************************************************
* Row * Instance * MVDHitsSt * MVDHitsSt * MVDHitsSt *
***********************************************************
* 110 * 0 * 0.0086602 * 0 * 0 *
* 220 * 0 * 0.0086602 * 7.178e-17 * 3.347e-17 *
* 361 * 6 * 0.0086602 * 0 * 0 *
* 876 * 0 * 1.952e-17 * 1.512e-17 * 0.0086602 *
***********************************************************
and the crash is exacly in event 110.
It happens quite often: I made some tests with 2000 muons each, at low momenta (around 0.2 GeV/c) and higer momenta (around 1 GeV/c) and on 7 tests, 3 crashed this way (2 crashed in the mvd riemann track finder, I will post the crash on the forum too).
I scanned the cbmsim also for the files where the riemann track finder crashed and also there I found errors equal to 0. I post here and example:
***********************************************************
* Row * Instance * MVDHitsSt * MVDHitsSt * MVDHitsSt *
***********************************************************
* 423 * 0 * 0.0086602 * 1.575e-16 * 3.061e-17 *
* 511 * 0 * 0.0086602 * 0 * 0 *
* 1243 * 0 * 0.0086602 * 0 * 0 *
* 1481 * 0 * 0.0086602 * 4.763e-17 * 4.442e-17 *
***********************************************************
I guess this means that if the mvdriemann didn' t crash it could crash in genfit as in the other cases...
Moreover I looked also in the files where reconstruction went fine to the end and I have errors equal to 0 also there:
***********************************************************
* Row * Instance * MVDHitsSt * MVDHitsSt * MVDHitsSt *
***********************************************************
* 1317 * 7 * 0.0086602 * 1.335e-19 * 9.140e-20 *
* 1535 * 1 * 0.0086602 * 0 * 0 *
***********************************************************
My idea is that it did not crash here because this hit is not assigned to any track and so it does not enter in kalman calculation... I can check this if you think it is useful.
One more information: I get the same results on openSuse and Scientific Linux Cern.
Cheers,
Lia.
|
|
|
|
|
|
|
|
|
|
|
Re: MVD covariance matrix = 0. [message #12224 is a reply to message #12219] |
Wed, 06 July 2011 13:16 |
Ralf Kliemt
Messages: 507 Registered: May 2007 Location: GSI, Darmstadt
|
first-grade participant |
From: *pool.mediaWays.net
|
|
Lia Lavezzi wrote on Wed, 06 July 2011 12:07 |
Ralf, can you please have a look into this, as Tobias suggested?
|
Hi,
I was already (silently) looking at the code. However I found no sign where that could happen, yet. Tomorrow I'll run some tests.
Ralf
PS: Could you pleas post that scan command you used?
[Updated on: Wed, 06 July 2011 13:18] Report message to a moderator
|
|
|
|
|
|
|
|
|