EVENTDAT

Summary

For calorimetry only.
Prints event by event the scored star production and/or energy deposition in each region, and the total energy balance. ​ ​​

See also EVENTBIN, SCORE

EVENTDAT requests separate scoring by region of energy and/or star density for each event (primary history).
The quantities to be scored are defined via a SCORE command (see SCORE for details).​
As for SCORE, a maximum per run of 4 different energy or star densities is allowed.
The EVENTDAT output includes also a detailed energy balance event by event.
WHAT(1) =

output unit. If WHAT(1)< 0.0, the output is unformatted. Values of |WHAT(1)| < 21 should be avoided (with the exception of +11).

Default

= 11  (standard output​)

WHAT(2)

– WHAT(6): not used

SDUM

= output file name (no default!). Max. 10 characters.

Default

(option EVENTDAT not requested): no event by event scoring

Notes

  1. Unformatted data are written as follows.
    Once, at the beginning of the run:
    RUNTIT, RUNTIM, NREGS, NSCO, (ISCORE(IS), IS = 1, NSCO)
    Then, for each primary particle:
    • NCASE, WEIPRU, ENETOT

    • (ENDIST(IE), IE = 1, 12)

    • Then, NSCO times:

      • (ISC, ISCORE(ISC)

      • (REGSCO(IR,ISC), IR = 1, NREGS)

    • one dummy record (for historical reasons):
      NDUM, DUM1, DUM2
    • ISEED1, ISEED2, SEED1, SEED2, SOPP1, SOPP2

    where:
    RUNTIT =

    title of the run (CHARACTER*80 variable), which appears also at the beginning of the standard output​

    RUNTIM =

    time of the run (CHARACTER*32 variable), which appears also at the beginning of the standard output

    NREGS =

    number of regions

    NSCO =

    number of scoring distributions requested by SCORE

    ISCORE(I) =

    Ith requested (generalised) particle distribution (see Particles transported by FLUKA)

    NCASE =

    number of primaries handled so far (current one included)

    WEIPRU =

    primary weight

    ENETOT =

    primary particle total energy (GeV)

    ENDIST(I) =

    12 energy contributions to the total energy balance, some of which appear also at the end of the standard output​. Here they are given separately for each primary history​ (in GeV) and not normalised​ to the weight of the primary. Note that some of the contributions are meaningful only in specific contexts (e.g. if low-energy neutron transport has been requested).

    ENDIST(1) =

    energy deposited by ionisation​

    ENDIST(2) =

    energy deposited by \(\pi^0\), electrons, positrons and photons

    ENDIST(3) =

    energy deposited by nuclear recoils​ and heavy fragments​

    ENDIST(4) =

    energy deposited by particles below threshold​

    ENDIST(5) =

    energy leaving the system​

    ENDIST(6) =

    energy carried by discarded particles​

    ENDIST(7) =

    residual excitation energy​ after evaporation‘​

    ENDIST(8) =

    energy deposited by low-energy neutrons​ (kerma,​ proton recoil​ energy not included)

    ENDIST(9) =

    energy of particles out of the time limit​

    ENDIST(10) =

    energy lost in endothermic nuclear reactions (gained in exothermic reactions​ if < 0.0) above 20 MeV (not implemented yet)

    ENDIST(11) =

    energy lost in endothermic low-energy neutron reactions (gained in exothermic reactions​ if < 0.0) (not implemented yet)

    ENDIST(12) =

    missing energy​

    REGSCO(IR,ISC)

    = energy or stars (corresponding to the ISCth generalised particle​ distribution) deposited or produced in the IRth region during the current primary history Not normalised, neither to the primary weight nor to the region volume.​

    NDUM, DUM1, DUM2 = three dummy variables, with no meaning
    ​
    ISEED1, ISEED2, SEED1, SEED2, SOPP1, SOPP2

    = random number generator information to be read in order to reproduce the current sequence (skipping calls​, see option RANDOMIZe).

  2. All the above quantities are written in single precision​ (REAL*4), except RUNTIT and RUNTIM (which are of type CHARACTER) and those with a name beginning with I,J,K,L,M,N (which are integer).

  3. The different items appearing in the EVENTDAT energy balance may sometimes give overlapping information and are not all meaningful in every circumstance (for instance residual excitation energy is meaningful only if gamma deexcitation has not been requested). Unlike the balance which is printed at the end of standard output​, these terms are not additive.

  4. An example on how to read EVENTDAT unformatted output is given below.

          PROGRAM RDEVDT
          CHARACTER*80 RUNTIT, FILNAM
          CHARACTER*32 RUNTIM
          DIMENSION ISCORE(4), ENDIST(12), REGSCO(5000,4)
    
          WRITE(*,*) 'Name of the EVENTDAT binary file?'
          READ(*,'(A)') FILNAM
          IB = INDEX(FILNAM,' ')
          OPEN(UNIT = 7, FORM = 'UNFORMATTED', FILE = FILNAM(1:IB-1),
         &     STATUS = 'OLD')
          OPEN(UNIT = 8, FORM = 'FORMATTED', FILE = FILNAM(1:IB-1)//'.txt',
         &     STATUS = 'NEW')
    
    *     Once, at the beginning of the run:
          READ(7)  RUNTIT, RUNTIM, NREGS, NSCO, (ISCORE(IS), IS = 1, NSCO)
          WRITE(8,'(A80)') RUNTIT
          WRITE(8,'(A32)') RUNTIM
          WRITE(8,'(A,I6,5X,A,I4)') 'Number of regions: ', NREGS,
         &           ' Number of scored quantities: ', NSCO
          WRITE(8,'(A,4I6)') 'The scored quantities are: ',
         &           (ISCORE(IS), IS = 1, NSCO)
    
    *     Loop on each primary particle:
     100  CONTINUE
          WRITE(8,*)
          READ(7,END=300) NCASE, WEIPRU, ENETOT
          WRITE(8,'(A,I10,1P,2G12.4)') 'NCASE, WEIPRU, ENETOT: ',
         &               NCASE, WEIPRU, ENETOT
          READ(7) (ENDIST(IE), IE = 1, 12)
          WRITE(8,'(A)') 'ENDIST: '
          DO 400 IE = 1, 12, 2
             WRITE(8,'(2(I5,5X,1P,G12.4))') IE,ENDIST(IE),IE+1,ENDIST(IE+1)
     400  CONTINUE
          DO 200 ISC = 1, NSCO
             READ(7) IISC, ISCORE(ISC)
    *        IISC is redundant, must be equal to ISC
             IF(IISC .NE. ISC) STOP 'Wrong sequence'
             WRITE(8,'(A,I2,A,I3,A)')
         &        'Quantity n. ',ISC, ' (',ISCORE(ISC),'):'
    
             READ(7) (REGSCO(IR,ISC), IR = 1, NREGS)
             WRITE(8,*) 'Scoring per region:'
             DO 500 IR = 1, NREGS
                WRITE(8,'(I7,3X,1P,G12.4)') IR, REGSCO(IR,ISC)
     500     CONTINUE
     200  CONTINUE
    
          READ(7) NDUM, DUM1, DUM2
          IF (DUM1 .LT. 0.) THEN
    *        DUM1 < 0 is used to signal that seeds follow
             READ(7) ISEED1, ISEED2, SEED1, SEED2, SOPP1, SOPP2
             WRITE(8,*) ISEED1, ISEED2, SEED1, SEED2, SOPP1, SOPP2
          ELSE
             BACKSPACE 7
          END IF
    *     This event is finished, start again with the next one
          GO TO 100
    
     300  CONTINUE
          WRITE(8,*) "End of a run of ", NCASE, " particles"
          CLOSE (UNIT = 7)
          CLOSE (UNIT = 8)
          END
    

Example (number-based):

*...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+...
SCORE           208.      211.      201.        8.        0.       0.
EVENTDAT        -23.        0.        0.        0.        0.       0. EVT.SCOR
*  In this example, the user requests (with option SCORE) scoring of
*  total and electromagnetic energy deposition, total stars and
*  neutron-produced stars. The average scores for each region will be
*  printed on standard output (as an effect of SCORE command), and
*  corresponding scores, as well as the energy balance, will be written
*  separately for each primary particle on an unformatted file EVT.SCOR

The same example, name-based:

SCORE         ENERGY  EM-ENRGY  ALL-PART   NEUTRON        0.       0.
EVENTDAT        -23.        0.        0.        0.        0.       0. EVT.SCOR