Home » PANDA » PandaRoot » Tracking » Problem with low momentum Pion
Problem with low momentum Pion [message #6217] |
Thu, 03 April 2008 17:53 |
Vanniarajan Suyam Jothi
Messages: 35 Registered: October 2007 Location: Groningen
|
continuous participant |
From: *KVI.nl
|
|
Hello Andrea,
I was Implementing a tracking mu- of 1 Gev Momenta by taking the momenta and position from the Tpc track to the volume in Emc using the PropagatetoVolume call of Geane. The tracking has failed for the small momenta below 0.5 Mev of q/p < -2.0. As you see here it fails at TRPROP call. Can you tell me where is the problem in this case?
Is it possible to pass a flag for propagation failure instead of such a failure?
fEnd =
0xb107c60
Position : (-57., -3.2, -22.)
Angles : Lambda = -0.37, Phi = -2.9
q/p = -1.0
fCovMatrix[0] = 0xb107c60 7.6e-05
fCovMatrix[1] = 0xb107c60 2.4e-05
fCovMatrix[2] = 0xb107c60 -3.3e-06
fCovMatrix[3] = 0xb107c60 -0.00013
fCovMatrix[4] = 0xb107c60 0.00042
fCovMatrix[5] = 0xb107c60 2.2e-05
fCovMatrix[6] = 0xb107c60 -1.8e-06
fCovMatrix[7] = 0xb107c60 -5.8e-05
fCovMatrix[8] = 0xb107c60 0.00038
fCovMatrix[9] = 0xb107c60 2.2e-06
fCovMatrix[10] = 0xb107c60 3.9e-05
fCovMatrix[11] = 0xb107c60 -3.1e-05
fCovMatrix[12] = 0xb107c60 0.00076
fCovMatrix[13] = 0xb107c60 -0.00099
fCovMatrix[14] = 0xb107c60 0.0067
exec CbmGeaneTrLheTpcEmc : 1/29
exec1/29
exec1/29
exec1/29
fStart =
0xb107af0
Position : (5.2, -17., -6.6)
Angles : Lambda = -0.36, Phi = -1.2
q/p = -2.2
fCovMatrix[0] = 0xb107af0 0.00027
fCovMatrix[1] = 0xb107af0 3.7e-05
fCovMatrix[2] = 0xb107af0 -4.7e-05
fCovMatrix[3] = 0xb107af0 0.0
fCovMatrix[4] = 0xb107af0 0.0
fCovMatrix[5] = 0xb107af0 1.8e-05
fCovMatrix[6] = 0xb107af0 -8.1e-06
fCovMatrix[7] = 0xb107af0 3.5e-13
fCovMatrix[8] = 0xb107af0 5.4e-14
fCovMatrix[9] = 0xb107af0 2.7e-05
fCovMatrix[10] = 0xb107af0 4.6e-09
fCovMatrix[11] = 0xb107af0 7.0e-10
fCovMatrix[12] = 0xb107af0 1.6e-07
fCovMatrix[13] = 0xb107af0 -1.3e-07
fCovMatrix[14] = 0xb107af0 9.8e-07
Propagate Helix to Volume
*** Error in subr. TRPROP 3 called bysubr. ERPROP
*** Break *** floating point exception
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
Attaching to program: /proc/22782/exe, process 22782
[Thread debugging using libthread_db enabled]
[New Thread -1223530816 (LWP 22782)]
0xffffe410 in __kernel_vsyscall ()
error detected on stdin
The program is running. Quit anyway (and detach it)? (y or n) [answered Y; input not from terminal]
Detaching from program: /proc/22782/exe, process 22782
Root >
root [1] .q
Cheers,
Vanni
|
|
|
Re: Problem with low momentum Pion [message #6224 is a reply to message #6217] |
Fri, 04 April 2008 09:51 |
Andrea Fontana
Messages: 32 Registered: May 2007
|
continuous participant |
From: *pv.infn.it
|
|
Hello Vanni,
this problem is generated in one of the internal routines of GEANE
called TRPROP. I include the comment of this routine:
SUBROUTINE TRPROP(X1,P1,H1,X2,P2,H2,CH,XL,R,MVAR,IFLAG,ITRAN,IERR)
C
C *** ERROR PROPAGATION ALONG A PARTICLE TRAJECTORY IN A MAGNETIC FIELD
C ROUTINE ASSUMES THAT IN THE INTERVAL (X1,X2) THE QUANTITIES 1/P
C AND (HX,HY,HZ) ARE RATHER CONSTANT. DELTA(PHI) MUST NOT BE TOO LARGE
C
C Authors: A. Haas and W. Wittek
C
C *** IFLAG = -1 INITIALIZATION, TRANSFORMATION OF ERROR MATRIX FROM
C EXTERNAL TO SC VARIABLES
C = 0 ERROR PROPAGATION FROM X1 TO X2
C = 1 TRANSFORMATION OF ERROR MATRIX FROM SC TO
C EXTERNAL VARIABLES
C
C ITRAN USED FOR IFLAG = 0 OR 1 ONLY
C = 0 TRANSFORMATION MATRIX IS UPDATED ,BUT ERROR MATRIX IS NOT
C TRANSFORMED
C = 1 TRANSF. MATRIX IS UPDATED AND ERROR MATRIX IS TRANSFORMED
C
C MVAR SPECIFIES TYPE OF EXTERNAL VARIABLES
C = 0 ( 1/P,LAMBDA,PHI,YT, ZT ; SC )
C = 1 ( 1/P, Y', Z', Y, Z ; SPLINE )
C
C *** X1, P1, H1 X,Y,Z COMPONENTS OF POSITION, MOMENTUM AND MAGNETIC INPUT
C FIELD VECTOR/GRADIENT AT STARTING POINT OF INTERVAL
C X2, P2, H2 ...... AT END POINT OF INTERVAL INPUT
C CH CHARGE OF PARTICLE INPUT
C XL PATHLENGTH FROM X1 TO X2 ( NEGATIVE IF OPPOSITE
C TO ACTUAL MOVEMENT OF PARTICLE ) INPUT
C R ERROR MATRIX (TRIANGLE) INPUT/OUTPUT
C B 5 * 5 TRANSFORMATION MATRIX FOR ERRORS IN
C SC VARIABLES OUTPUT
C
C *** IERR = 1 ILLEGAL VALUE OF MVAR OUTPUT
C 2 MOMENTUM IS ZERO
C 3 H*ALFA/P AT X1 AND X2 DIFFER TOO MUCH
C OR DELTA PHI IS TOO LARGE
C 4 PARTICLE MOVES IN Z - DIRECTION
C
This routine as an exit flag called IERR that can have 4 states: in this case
the error TRPROP 3 means that the IERR = 3. In my experience this condition
is due to a stepping problem when you have a too high curvature in the track.
My first suggestion is to try to reduce the steps size: I was usually able
to overcome this error by reducing the steps. This means that you have to
rerun the MC, since the stepping definition is in the medium parameters. As we
discussed with Mohammad this is the only option now. So you can try to define
an AUTONULL medium with small steps and put AUTO=0 in the g3Config.C file
and do the tracking in this way. Some tests and tuning is required, I think, to
find the optimal conditions.
Second idea which we are thinking about is to extract this IERR flag from the
inner fortran routines and to bring it to the C++ interface, so that we can deal
properly with these situations. We are thinking about this just now.
I hope this helps you for the moment. Let me know if you succeed with the manual
stepping.
Ciao,
Andrea
|
|
|
|
Goto Forum:
Current Time: Thu Oct 03 18:58:48 CEST 2024
Total time taken to generate the page: 0.00667 seconds
|