5.18. [ Frag Data ] section

Provides a feature for loading user-defined cross-section data. Simulates nuclear reactions between specified particles using user-defined cross-section data. When nuclear data libraries are available, the corresponding nuclear reaction data take precedence even for reactions in the particle combinations and energy ranges defined by this feature. The allowed values of proj are neutrons, protons, light ions, and general nuclei. Photons, pions, muons, kaons, electrons, and positrons cannot be specified as proj. In the cross-section data file, frag specifies emitted particles. Emitted particles follow the PHITS particle-name notation. The contribution of nucleon elastic scattering is considered separately by the PHITS model.

Particle weights vary according to the cross section. In some cases, particle weights can become very small. To avoid weight cutoff, adjust the value of wc2(i) for each particle i in the [ Parameters ] section. Set the particle reaction cutoff energy cmin(i) according to the minimum incident energy to be considered.

The section format is shown below.

Listing 5.18.1 [ Frag Data ] section example
   [ Frag Data ]
     opt     proj     targ     file
       0     12C      16O      DDX_12C-16O.dat
       1     proton   63Cu     DDX_p-63Cu.dat

The parameters are as follows.

Name

Type

Meaning

opt

integer

Specifies how cross-section data are applied.

proj

particle

Specifies an incident particle as a neutron, proton, light ion, or general nucleus.

targ

particle

Specifies the target proton or target nuclide. For nuclides, use the mass-number plus element-symbol form, such as 2H or 12C; proton is also accepted for a proton target.

file

filename

Specifies the user-defined cross-section data file name.

The available opt values are as follows.

  • opt=0: Does not use the supplied cross sections.

  • opt=1: Simulates the nuclear reaction between the particles defined by proj and targ based on the cross-section data in the file given by file.

  • opt=2: Additionally generates particles based on the cross-section data given by file after calculation by the normal nuclear reaction model.

  • opt=3: This option cannot be used.

  • opt=4: Uses endpoint values to interpolate and extrapolate emitted energy and angle outside the data range.

    • This option can be used only when neo is positive and nag is not 0.

    • If the minimum emitted energy is greater than 0, a 0 MeV point is internally added.

    • If the emission-angle range does not include 0 or 180 degrees, those angles are internally added as boundary points, using the cross sections at the minimum and maximum angles, respectively.

    • For incident energies outside the tabulated range, the endpoint cross sections are used for total reaction cross sections and frag data particle production. Below the minimum incident energy, the cross section at the minimum incident energy is used; at or above the maximum incident energy, the cross section at the maximum incident energy is used.

  • opt=5: Uses differential cross-section data for emission energy or angle in pointwise format instead of groupwise format.

    • Performs linear interpolation to reproduce the dependence of emitted-particle energy and angle.

    • Particle weights are scaled during interpolation.

Emitted particles are sampled as follows. Particle species are not probabilistically selected; all specified particles are always generated. Particle weights are scaled according to each emission probability (production cross section). Emission energy and angle are determined by sampling according to each differential cross section, so the particle weight does not change. However, only for opt=5, particle weights are scaled during interpolation.

The format of the cross-section data file given by file is shown below.

Listing 5.18.2 Format of the user-defined cross-section data file
    projectile
    target
    nei
    ein(1)     ein(2)     ein(3)    ...... ein(nei+1)
    totxs(1)   totxs(2)   totxs(3)  ...... totxs(nei+1)
    neo
    eout(1)    eout(2)    eout(3)   ...... eout(neo+1)
    nag
    angle(1)   angle(2)   angle(3)  ...... angle(nag+1)
    nfrg
    frag(1)    frag(2)    frag(3)   ...... frag(nfrg)

    proxs(1,1)   proxs(1,2)   proxs(1,3)   ...... proxs(1,nfrg)
    ddx(1,1,1,1)   ddx(1,1,1,2)   ddx(1,1,1,3)   ...... ddx(1,1,1,nag)
    ddx(1,1,2,1)   ddx(1,1,2,2)   ddx(1,1,2,3)   ...... ddx(1,1,2,nag)
         .........
    ddx(1,1,neo,1)   ddx(1,1,neo,2)   ddx(1,1,neo,3)   ...... ddx(1,1,neo,nag)

    ddx(1,2,1,1)   ddx(1,2,1,2)   ddx(1,2,1,3)   ...... ddx(1,2,1,nag)
    ddx(1,2,2,1)   ddx(1,2,2,2)   ddx(1,2,2,3)   ...... ddx(1,2,2,nag)
         .........
    ddx(1,2,neo,1)   ddx(1,2,neo,2)   ddx(1,2,neo,3)   ...... ddx(1,2,neo,nag)

         .........
         .........

    ddx(1,nfrg,1,1)   ddx(1,nfrg,1,2)   ddx(1,nfrg,1,3)   ...... ddx(1,nfrg,1,nag)
    ddx(1,nfrg,2,1)   ddx(1,nfrg,2,2)   ddx(1,nfrg,2,3)   ...... ddx(1,nfrg,2,nag)
         .........
    ddx(1,nfrg,neo,1)   ddx(1,nfrg,neo,2)   ddx(1,nfrg,neo,3)   ...... ddx(1,nfrg,neo,nag)

    proxs(2,1)   proxs(2,2)   proxs(2,3)   ...... proxs(2,nfrg)
    ddx(2,1,1,1)   ddx(2,1,1,2)   ddx(2,1,1,3)   ...... ddx(2,1,1,nag)
    ddx(2,1,2,1)   ddx(2,1,2,2)   ddx(2,1,2,3)   ...... ddx(2,1,2,nag)
         .........
    ddx(2,1,neo,1)   ddx(2,1,neo,2)   ddx(2,1,neo,3)   ...... ddx(2,1,neo,nag)

         .........
         .........
         .........
         .........

    proxs(nei+1,1)   proxs(nei+1,2)   proxs(nei+1,3)   ...... proxs(nei+1,nfrg)
    ddx(nei+1,1,1,1)   ddx(nei+1,1,1,2)   ddx(nei+1,1,1,3)   ...... ddx(nei+1,1,1,nag)
    ddx(nei+1,1,2,1)   ddx(nei+1,1,2,2)   ddx(nei+1,1,2,3)   ...... ddx(nei+1,1,2,nag)
         .........
    ddx(nei+1,1,neo,1)   ddx(nei+1,1,neo,2)   ddx(nei+1,1,neo,3)   ...... ddx(nei+1,1,neo,nag)

         .........
         .........

    ddx(nei+1,nfrg,1,1)   ddx(nei+1,nfrg,1,2)   ddx(nei+1,nfrg,1,3)   ...... ddx(nei+1,nfrg,1,nag)
    ddx(nei+1,nfrg,2,1)   ddx(nei+1,nfrg,2,2)   ddx(nei+1,nfrg,2,3)   ...... ddx(nei+1,nfrg,2,nag)
         .........
    ddx(nei+1,nfrg,neo,1)   ddx(nei+1,nfrg,neo,2)   ddx(nei+1,nfrg,neo,3)   ...... ddx(nei+1,nfrg,neo,nag)
  • projectile: Specifies the projectile entry. Use the same notation and allowed values as proj in the [ Frag Data ] section.

    • The projectile entry in a cross-section data file must be consistent with proj in the [ Frag Data ] section.

  • target: Specifies the target entry. Use the same notation as targ in the [ Frag Data ] section.

    • The target entry in a cross-section data file must be consistent with targ in the [ Frag Data ] section.

  • nei: Number of incident-energy grid points. On the next line, specify nei+1 incident-energy points (ein: unit is MeV/n), and on the following line specify the same number of total reaction cross sections (totxs: unit is mb).

  • ein: Incident-energy grid values. Specify nei+1 points in MeV/n.

  • totxs: Total reaction cross sections corresponding to the incident-energy grid values.

    • If totxs is 0 or less, the value obtained by the total reaction cross-section model defined by icxsni or icrhi is used.

  • neo: Number of emitted-particle energy grid points.

    • If neo is positive, the emitted-particle energy is treated as a continuous distribution. Specify neo+1 points of eout, except that opt=5 uses neo points.

    • If neo is negative, the emitted-particle energy is given discretely. In this case, specify the absolute value of neo points of eout.

    • If neo is 0, the emitted-particle energy spectrum is given by a Gaussian distribution. In this case, give the mean value and standard deviation of the Gaussian distribution in MeV/n at the ddx location.

    • If model is written on the line where neo should be written, the nuclear reaction model built into PHITS is used, and differential cross-section data do not need to be given. The model keyword can be used only when opt is 1 or 2.

  • eout: Emitted-energy grid values. Specify neo+1 points in MeV/n, except that opt=5 uses neo points.

  • nag: Number of emission-angle grid points.

    • If nag is positive, specify angles (angle) in radians (rad) on the next line. Specify nag+1 points except for opt=5; for opt=5, specify nag points.

    • If nag is negative, specify angles (angle) in degrees (degree) on the next line. Specify nag+1 points except for opt=5; for opt=5, specify nag points.

    • If nag is 0, an isotropic distribution is assumed.

  • angle: Emission-angle grid values.

    • If nag is positive or negative, specify nag+1 points except for opt=5; for opt=5, specify nag points.

  • nfrg: Number of emitted particles. On the next line, provide nfrg emitted particles.

  • frag: Generated particle identifier.

    • Supported generated particles are nucleons, pions, muons, kaons, electrons, positrons, photons, light ions, and general nuclei.

    • Any other particle, including neutrino KF codes, is treated as an input error.

  • proxs: Production cross section (mb) for each emitted particle at a given incident energy.

    • If proxs is nearly 0, the value obtained by integrating the differential cross sections may be used as the production cross section.

    • When neo=0 and nag=0, proxs must not be 0.

  • ddx: Differential cross sections. The units depend on the values of neo and nag.

    • For one proxs, the number of cross-section data points shown in the table below is required; this unit of data is repeated for nei+1 incident energies.

    • When multiple emitted particles are given (nfrg > 1), the data groups starting from proxs must be provided for each emitted particle specified by nfrg.

Quick reference for input format by neo and nag

The input data format is selected by the combination of neo and nag. The required data counts are given for each incident energy.

neo

nag

Specified data

Unit

Required data count per incident energy

> 0

not 0

Double-differential cross sections for emitted energy and angle.

mb/MeV/sr

\(nfrg \times neo \times \lvert nag \rvert\)

= 0

not 0

Gaussian mean and standard deviation, and angular differential cross sections.

Mean and standard deviation are MeV/n; angular differential cross sections are mb/sr.

\(nfrg \times (2 + \lvert nag \rvert)\)

= 0

= 0

Gaussian mean and standard deviation. The angular distribution is isotropic.

MeV/n

\(nfrg \times 2\)

> 0

= 0

Energy differential cross sections. The angular distribution is isotropic.

mb/MeV

\(nfrg \times neo\)

< 0

not 0

Angular differential cross sections for discrete emitted energies.

mb/sr

\(nfrg \times \lvert neo \rvert \times \lvert nag \rvert\)

< 0

= 0

Discrete cross sections. The angular distribution is isotropic.

mb

\(nfrg \times \lvert neo \rvert\)

Listing 5.18.3 Example of a cross-section data file
   1:   proton
   2:   63Cu
   3:   1
   4:   10.0    100.0
   5:   1000.0  500.0
   6:   3
   7:   1.0  10.0  50.0  100.0
   8:   -6
   9:   0.0  30.0  60.0  90.0  120.0  150.0  180.0
   10:   1
   11:   neutron
   12:   300.0
   13:   10.0  10.0  10.0  10.0  10.0  10.0
   14:   15.0  13.0  12.0  11.0  10.0  10.0
   15:   10.0  11.0  10.0  11.0  10.0  10.0
   16:   0.0
   17:    5.0   5.0   5.0   5.0   5.0   5.0
   18:   10.0   8.0   7.0   6.0   5.0   5.0
   19:    5.0   6.0   5.0   6.0   5.0   5.0

Listing 5.18.3 shows an example of a cross-section data file. Lines 1 and 2 specify proton as the projectile and \({}^{63}\mathrm{Cu}\) as the target particle, respectively. Line 3 is the number of energy grid points; in this example, nei=1. Lines 4 and 5 give nei+1 points each for incident energy and total reaction cross section. Line 6 is the number of emitted-particle energy grid points; in this example, neo=3. Line 7 specifies 1.0, 10.0, 50.0, and 100.0 MeV as emitted energies. Line 8 is the number of angle grid points; it is negative, so the angle information given on line 9 is in degrees. Line 10 determines the number of emitted particles to be handled, and line 11 specifies that particle (=neutron). Line 12 gives the neutron production cross section for an incident energy of 10.0 MeV, and lines 13, 14, and 15 give the double-differential cross sections at this incident energy. Each row corresponds to the energy bins determined on line 7, and each column corresponds to the angle bins determined on line 9. Basically, give the integral of the differential cross sections on lines 13, 14, and 15 as the production cross section on line 12. If they do not match, the values are normalized using the production cross section. Lines 16, 17, 18, and 19 are the production cross section and double-differential cross sections for an incident energy of 100.0 MeV. The production cross section on line 16 is set to 0; in this case, the value obtained by interpolating and integrating the differential cross sections on lines 17, 18, and 19 is used as the production cross section.

When zero values are repeated at a ddx location, the following abbreviated form can be used.

Listing 5.18.4 ddx zero abbreviation
0 -9

In this example, the notation means that 10 zeros are repeated in total.

In cross-section data, a negative value for the second or later value may be used only after a zero value; in that case, zero is repeated by the absolute value of the negative number. If the preceding value is nonzero, the negative value is treated as an input error. The first cross-section data value must not be negative.