From: Giuseppe Battistoni (Giuseppe.Battistoni@mi.infn.it)
Date: Tue Feb 06 2007 - 17:30:49 CET
Dear Vadim
I try to give an answer which might be useful for many other users.
in order to record the properties of the parent particles
you should make use of the stuprf.f user routine.
This routine is called soon after interaction, decays etc.
There you can select the case of decaying particles by asking for the
TRUE value of the logical variable LDECAY (LINEVT for inelastic
interactions, see common (EVTFLG))
After that you can use some of the variables of the TRACKR common
that are left for the user to flag particles. For instance you can fill
the integer variable ISPUSR (a vector with 11 possible values)
Inside stuprf.f this is done filling the ISPARK (n, NPLFKA) where n
goes from 1 to 11. Then the content of this will be propagated to
all further secondaries and generations.
Here is an example useful for you, where I store the ID of the decaying
particle:
....
DO 200 ISPR = 1, MKBMX2
ISPARK (ISPR,NPFLKA) = ISPUSR (ISPR)
200 CONTINUE
* Stores inside Ispark(1) the ID of the decaying parent particle
IF (LDECAY) THEN
ISPARK (1,NPLFKA) = IJ
ENDIF
....
Now this is only the first half of the work.
In order to select your photons at a boundary crossing, you have to
recall that flag.
Let us suppost that you are using USRBDX.
By means of the USERWEIG command you can invoke the call the fluscw.f
routine. There you intercept variable before filling your estimator.
You have to include (TRACKR) in your fluscw.f, then you can implement
a logic such that, whenever you have photons or, better, when you are
selecting the proper binning with ISCRNG = 1 and sequential number
JSCRNG (a USRBDX in which you will ask just for photons), then you will
check also for the photon parent to be a pi0:
...
IF ( ISPUSR(1) .EQ. 23 ) THEN
then only in that case you will leave
FLUSCW = ONEONE
LSCZER = .FALSE.
Otherwise (photons not coming from pi0) you set
ELSE
LSCZER = .TRUE.
ENDIF
In the ELSE case, the photons will not be recorded in your USRBDX
Please study carefully the manual about fluscw.f, USERWEIG etc
to understand completely its use.
Giuseppe Battistoni
On Tue, 6 Feb 2007, Vadim Talanov wrote:
> Dear FLUKA experts,
>
> I would like to record at some boundary crossing the photons which come from the
> pizero decays. In order to distinguish these photons from all others, which
> variables from the FLUKA common blocks can be used for parent particle ID and
> energy during particle transport stage (I presume that there might be several ways
> to do the selection but I'd like to get parent particle ID and energy anyway)?
>
> Kind regards, Vadim
>
This archive was generated by hypermail 2.1.6 : Tue Feb 06 2007 - 17:39:40 CET