Home » PANDA » PandaRoot » Tracking » Problem with low momentum Pion
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: Fri Nov 22 03:09:28 CET 2024
Total time taken to generate the page: 0.00719 seconds
|