[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: geant issue



Beni,

Take that advice with a grain of salt -- the write is not very familiar with Geant tracking it seems.  Let's talk about the meaning of ISVOL (not all of this is documented, but it is true).

ISVOL > 0 (=1 is standard) : medium is sensitive, make smaller steps
ISVOL = 0 : medium is insensitive, make bigger steps
ISVOL < 0 (=-1 is standard) : medium is insensitive, but make smaller steps anyway.

The entire difference between ISVOL=0 and ISVOL=-1 is contained in the following very small snippet from gphysi.F:
            IF(ISVOL.EQ.0)THEN
               DEEMAX=0.25
               IF(RADL.GT.2.)DEEMAX=0.25-0.2/SQRT(RADL)
            ELSE
               DEEMAX = 0.2/SQRT(RADL)
            ENDIF
DEEMAX is the maximum fraction of energy loss in one step due to continuous processes.  So you see that the step sizes due to continuous energy loss and multiple scattering can be substantially larger in volumes with ISVOL=0.  That is a good thing, no reason to shy away from it. 

Richard Jones

Beni Zihlmann wrote:
Hi Richard,
while understanding some behavior in geant I found in http://nucleus.usask.ca/Geant/Exercises/idiosyncracies.html
the following statement:

The value of ISVOL can adversely affect the behavior of GEANT. In particular, a value of 0 is inadvisable, as it causes seemingly arbitrary segments of boundaries to act as forced scattering points. Use ISVOL=-1 if you don't want the tracking medium to be sensitive, and ISVOL=+1 if you want it to be sensitive.


currently in hddsGeant.F isvol is set to zero for non sensitive volumes. (done when translating xml to c code I guess)

should we change this? what is your opinion?

cheers,
Beni