Re: a cross-check (He 5MeV into gas chamber)

From: Alberto Fasso' (fasso@SLAC.Stanford.EDU)
Date: Tue Jan 16 2007 - 19:21:52 CET

  • Next message: Lindley Winslow: "Issue with USRYIELD results for e+/e-"

    Dear Ercan,

    I see that Sebastien Wurth has already given you some useful answer.
    I tried to check your input too, but as I said yesterday to another user
    it is very difficult to do this kind of check when user routines are
    involved. And you are using 5 of them, plus other routines of your own!

    Anyway I let you know what I have found out.

    First, you have chosen no DEFAULTS, which means you are using the
    NEW-DEFA set of defaults. You have not put any DELTARAY or EMFCUT command
    in your input, which means that the NEW-DEFA defaults are unchanged.
    Now, the NEW-DEFA default for delta ray production is 1 MeV, while your beam of
    alpha particles has 5 MeV momentum = 3.35 keV kinetic energy! Of
    course you will get nothing with such a low energy. But even if you meant
    5 MeV kinetic energy (input it with a minus sign, as suggested by Sebastien),
    you will not get many delta rays with more than 1 MeV.
    I guess these delta rays are the tracks that SRIM sees.
    Also, be careful in setting a proper energy cutoff for electrons,
    both for transport (EMFCUT) and for production (EMFCUT with SDUM = PROD-CUT).

    Second, I had a quick look at some of your user routines.
    You are using systematically real*4 variables, which carries some risk
    because you are easily going to lose precision in some cases. I understand
    that it is probably necessary in order to use HBOOK, but why are you not
    doing all your stuff in double precision, consistently with FLUKA, and
    convert it to single precision at the last minute just before calling HBOOK?
    In a similar way, in mgdraw variables are converted to single precision,
    but only just BEFORE WRITING, in order to reduce the size of the collision file.
    There are other questionable things:
    eisci=sngl(etrack)-am(jtrack)
    why not
    eisci=sngl(etrack)-sngl(am(jtrack))?
    And why later on you have dropped the sngl:
    ytup(3) = etrack-am(jtrack)?

    Worse:
    if(sngl(ztrack(1)).eq.real(0.0001))
    Never use .eq. with a real number! What will happen if sngl(ztrack(1))
    is = 0.00009999999 or 0.00010000001?
    In your routine all tests are done with real numbers. Either convert them
    to integer tests (using NINT for instance), or use .le. or .ge.

    Kind regards,

    Alberto

    On Tue, 16 Jan 2007, Ercan Pilicer wrote:

    > dear users,
    > i simply want to cross check my previous calculation done with fluka.
    > for this case i wanted to control srim demo sample results with fluka.
    > the cross check sample is He 5MeV into gas chamber which comes with
    > srim.
    > what i have noticed is srim finds some particle tracks in the gas
    > volume whereas fluka does not. i have controlled this with flukagui.
    > perhaps i have been doing something wrong in somewhere. i attached all
    > the works performed.
    > any comment would be appreciable.
    > thanks in advance
    > ercan
    >
    >
    > =======================
    > Ercan Pilicer
    > High Energy Physics Department
    > Uludag University, Turkey
    > =======================
    >

    -- 
    Alberto Fasso`
    SLAC-RP, MS 48, 2575 Sand Hill Road, Menlo Park CA 94025
    Phone: (1 650) 926 4762   Fax: (1 650) 926 3569
    fasso@slac.stanford.edu
    

  • Next message: Lindley Winslow: "Issue with USRYIELD results for e+/e-"

    This archive was generated by hypermail 2.1.6 : Wed Jan 17 2007 - 09:07:08 CET