Example 2 An example of dose calculation using FLUKA - the Gas Bremsstrahlung case -------------------------------------------------------- UPDATED===07.05.2008 TITLE===An example of dose calculation using FLUKA - the Gas Bremsstrahlung case -------------------------------------------------------- --------------------------------------------------------
Giuseppe Battistoni; INFN, Milano
Alberto Fassò; SLAC, California
A. Ferrari, M. Pelliccioni
7 May 2003
This note describes an example of the use of FLUKA to calculate doses. The example refers to an experiment performed at the INFN Laboratori Nazionali di Frascati (LNF) to calculate the dose produced by gas bremsstrahlung at the ADONE electron-positron storage ring.
The experiment to measure gas bremsstrahlung at the ADONE storage ring at LNF, and compare results to Monte Carlo predictions, was performed by exposing matrices of LiF thermoluminescent dosimeters (TLDs) to the generated radiation[1]. The TLD matrices were exposed inside PVC pouches (1 mm thick) placing them downstream of a straight section of the storage ring. The straight section, 613.5 cm long, ended in a vacuum guide 190.7 long, closed by a 1.87 cm thick stainless steel flange. In the simulation it can be represented by an air target hit by an 1.5 GeV electron beam, with has a rectangular spot 0.4×0.02 cm2 wide.
The absorbed doses are determined by 9-by-9 matrices of TLDs placed at various distances from the end of the straight section, from 211.7 cm to 941.7 cm. The TLDs consist of 7LiF of dimensions 3.175×3.175×0.889 mm3. The area covered by the TLD matrix is therefore 28.57×28.57 mm2 with enough granularity to reveal the expected narrow angular distribution of the bremsstrahlung intensity.
The input ::::::::::::In order to compare the FLUKA simulation results to the measured doses, the following input file, gasbrem.inp has been prepared.
Geometry description ::::::::::::The air target and the vacuum guide are obtained using Rectangular Parallelepiped bodies with an edge Parallel to the propagation axis Z (RPP). The stainless steel flange is represented by an Infinite Circular Cylinder parallel to the axis Z (ZCC) cut by two planes perpendicular to this axis (XYP).
The matrices of TLDs are obtained using Rectangular Parallelepiped bodies with an edge Parallel to the axis Z (RPP). Such type of RPP is also used in order to define an air region around the geometry and the black hole.
Description of the materials ::::::::::::There is nothing of really complicated in this problem from the point of view of material description, and few different materials are necessary. The cards MATERIAL and COMPOUND as well as the cards ASSIGNMAT are self-explanatory. Of course the reliability of results is strongly dependent on the accurate knowledge of the chemical compositions. Here some attention has to be put on the description of the specific PVC used in the experiment, since the additives and densities are variable from one PVC to another. The composition of the residual gas has been assumed to be the same as for air.
In order to overcome the difficulties due to the low interaction probability at the operating pressure of the machine (13.3÷133.0 nPa = 10–10÷10–9 torr), calculations are performed with gas density corresponding to atmospheric pressure.
Therefore, the obtained results will have to be linearly scaled to the actual operating pressure.
Beam properties ::::::::::::The BEAM card just reproduces the ADONE beam which was made of electrons at 1.5 GeV, with a transverse cross section reproduced by the 4th and 5th parameter of this card.
Adapting the parameters of the physical processes ::::::::::::The DEFAULTS card parameter EM-CASCAde is the obvious one needed for this problem, since no particles other than electrons and photons are concerned. This default implies that the most important effects from the point of view of dosimetry are taken into account: Rayleigh scattering and inelastic form factor corrections to Compton scattering, detailed photoelectric edge treatment, production of fluorescence photons, restricted ionisation fluctuations for electrons. Of course it can be convenient to overwrite some of the choices, for instance reducing the maximum energy loss per electron step from 20% to 10% by means of the EMFFIX directive. Also, difficulties in considering the low operating pressure of the machine, mentioned in the previous section, cannot be solved completely by the trick to work at atmospheric pressure and to scale the final results. This because the multiple scattering is practically negligible in the vacuum chamber of a storage ring, while it is responsible of large broadening of the beam at atmospheric pressure.
Therefore it must be suppressed in the FLUKA simulations and this is driven by means of the MULSOPT card. In a similar way, Moller scattering, which at amospheric pressure would cause electron angular deflections due to the production of δ rays, has been suppressed by means of an EMFCUT card with the ELPO-THR parameter.
The code energy cuts are set at 50 keV for charged particles and 1 keV for photons (see again the EMFCUT cards).
Scoring ::::::::::::The absorbed doses in the TLDs are estimated scoring the energy deposited in virtually superimposed cartesian grids. This is accomplished by means of the USRBIN cards. The position of these grids as well as the dimensions of the elementary cells are chosen in such a way as to reproduce faithfully the TLD matrices used in the experiment. As can be learned from the FLUKA manual, the accurate binning algorithm for energy deposition is invoked. This means that a charged particle deposits in every bin traversed by the step a fraction of energy proportional to the respective chord (track-length apportioning). In this way statistical convergence is much faster.
The results of our scoring are expressed in GeV/cm3 per electron at atmospheric pressure. We remind you once again that in order to obtain doses in Gy per electron at the operating pressure of the machine, they must be multiplied by 1.60·10–7/ρ, where ρ is the TLD density (2.64 g/cm3), and rescaled with the pressure. The multiplication may be done off-line by an analysis program. Alternatively, in a more elegant way, the multiplication can be performed on line, at the time of scoring, by adapting and linking one of the user routines: comscw.f.
* DOUBLE PRECISION FUNCTION COMSCW(IJ,XA,YA,ZA,MREG,RULL,LLO,ICALL) INCLUDE '(DBLPRC)' INCLUDE '(DIMPAR)' INCLUDE '(IOUNIT)' * *----------------------------------------------------------------------* * * * Input variables: * * * * Ij = (generalized) particle code * * Xa,Ya,Za = position * * Mreg = region number * * Rull = amount to be deposited * * Llo = particle generation * * Icall = call id * * * * Output variables: * * * * Comscw = factor the scored amount will be multiplied by * * Lsczer = logical flag, if true no amount will be scored * * regardless of Comscw * * * * Useful variables (common SCOHLP): * * * * Energy/Star binnings/scorings (Comscw): * * ISCRNG = 1 --> Energy density binning * * ISCRNG = 2 --> Star density binning * * ISCRNG = 3 --> Residual nuclei scoring * * JSCRNG = # of the binning * * * * Useful variables (common SOUEVT): * * * * X,Y,Zsoevt(i) = position of the i_th source particle * * TX,Y,Zsoev(i) = direction of the i_th source particle * * Wtsoev(i) = weight of the i_th source particle * * Pmsoev(i) = momentum of the i_th source particle * * Tksoev(i) = kin. energy of the i_th source particle * * Agsoev(i) = age of the i_th source particle * * Aksoev(i) = Kaon ampl. of the i_th source particle * * Ussoev(i) = user var. of the i_th source particle * * Ijsoev(i) = identity of the i_th source particle * * Nrsoev(i) = region of the i_th source particle * * Nlsoev(i) = lattice of the i_th source particle * * Npsoev = number of the source particles * * * * * *----------------------------------------------------------------------* * INCLUDE '(MAPA)' INCLUDE '(SCOHLP)' INCLUDE '(SOUEVT)' * LSCZER=.FALSE. COMSCW=ONEONE * ======== In order to compute doses ========= * * (Medium(n) is the material number of region n * Rho(m) is the density of material m) IF ( ISCRNG .EQ. 1 ) COMSCW = 1.6 D-07 / RHO (MEDIUM(MREG)) RETURN END
We remind you here that, in order to activate the call to comscw, an USERWEIG directive must be issued with WHAT(6) > 3.0 (this is not done in the example file presented here). Binning informations are accessible through the SCOHLP common. More detailed informations are reported in the FLUKA manual ("How to write, compile and link a user routine").
Running the example ::::::::::::This job can be run using the standard FLUKA executable flukahp, unless the user decides to make use of the comscw.f file. In that case we remind you that the linking procedure to obtain a specific executable file (flukagasb) is:
$FLUPRO/flutil/lfluka comscw.f -o flukagasb
In order to determine the statistical errors of the estimated doses, several runs have been performed with independent random seeds (RANDOMIZE card).
$FLUPRO/flutil/rfluka -e flukagasb -N0 -M10 gasbremAnalysing the results ::::::::::::
The independent outputs of the USRBIN scoring (unfortmatted output on unit 23, in the present example) from the different FLUKA runs must be summed together using the program usbsuw.f:
#!/bin/sh $FLUTIL/usbsuw <<EOF gasbrem001_fort.23 gasbrem002_fort.23 gasbrem003_fort.23 gasbrem004_fort.23 gasbrem005_fort.23 gasbrem006_fort.23 gasbrem9007_fort.23 gasbrem0008_fort.23 gasbrem0009_fort.23 gasbrem0010_fort.23 gasbr EOF
This program (usbsuw) may be modified by the user to insert possible calls to invoke (or prepare input for) graphic routines. In any case a formatted output is by default available (gasbr_sum.lis), where the user can find a table like the one of Fig. 1.
![]() |
Figure 1: Part of the formatted output from the use of usbsuw.f |
As a conclusion, we report in Fig. 2 a plot obtained in ref.[1] using the described input.
![]() |
Figure 2: Maximum absorbed dose per mA of beam lost as a function of the distance from the end of the straight section |