Simulation of Compton scattering

+-------------+                                               +----------##
| Geant 3.16  |               GEANT User's Guide              | PHYS221  ##
+-------------+                                               +----------##
                                   

Author(s) : M. Maire, G. N. Patrick Submitted: 26.09.83 Origin : GEANT3 Revised: 17.12.92

Subroutines

                     +------------------------------+
                     |CALL GCOMP  |
                     +------------------------------+
                                  

GCOMP generates the Compton scattering of a photon from an atomic electron. It uses the random number techniques of Butcher and Messell [bib-BUTC] to sample the scattered photon energy from the Klein-Nishina formula [bib-KLEI]. All input/output information is routed through GEANT common blocks.

      Input:
                                     VECT(1)    x
                                     VECT(2)    y
                                     VECT(3)    z
                                     VECT(4)    p /p
      via COMMON/GCTRAK/....      {              x        }incident photon
                                     VECT(5)    p /p
                                                 y
                                     VECT(6)    p /p
                                                 z
                                     VECT(7)    p
      Output:
                                     GKIN(1,1)    p
                                                   x
                                     GKIN(2,1)    p
                                                   y
      via COMMON/GCKING/....      {  GKIN(3,1)    p       }recoil electron
                                                   z
                                     GKIN(4,1)    E
                                     GKIN(5,1)    3
                                     VECT(4)    p /p
                                                 x
                                     VECT(5)    p /p
      via COMMON/GCTRAK/....      {              y        }scattered photon
                                     VECT(6)    p /p
                                                 z
                                     VECT(7)    p

Compton scattering is selected in GEANT by means of the data record COMP. When selected, GCOMP is called automatically from the GEANT gamma tracking routine GTGAMA.

Method

A complete account of the Monte Carlo methods used would be outside the scope of this write- up, and only the basic formalism is outlined. The interested user is recommended to refer to the publications of Butcher and Messel [bib-BUTC], Messel and Crawford [bib-MESS], and Ford and Nelson [bib-EGS3] for more details.

The quantum mechanical Klein-Nishina differential cross-section is given by Ford and Nelson [4] as

                        2      2                                            2                   2
    Phi(E, E')= ((X npir m )/(E ))[((1)/ (epsilon))+ epsilon][1-((epsilonsin  theta)/(1 +epsilon ))]
                   0      e
                        0

where,

  E       =  energy of the incident photon
  E'      =  energy of the scattered photon
  epsilon =  E'/E
   e
  m       =  electron mass
  n       =  electron density
  r       =  electron radius
   0
  X       =  radiation length
   0

Assuming an elastic collision, the scattering angle theta is defined by the Compton formula

    E' =((Em )/ (m + E(1-costheta)))
            e     e

Using the combined ``composition" and ``rejection" Monte Carlo methods described in chapter PHYS 211, we may set:

                                                      2
     f(epsilon)    =    [((1)/ (epsilon))+ epsilon]= sum alpha f (E)   for    epsilon >epsilon>1
                                                     i=1      i i                    0
                                        2                   2
     g(epsilon)    =    [1- ((epsilonsin theta)/ (1+ epsilon ))]    rejection function
         alpha     =    ((1)/ (ln(1/epsilon )))
              1                            0
                                   2
         alpha     =    (1- epsilon )/2
              2
                                   0
    f (epsilon)    =    ((1)/ (epsilonln(1/epsilon )))
     1                                            0
                                               2
    f (epsilon)    =    ((2epsilon)/ (1-epsilon ))
     2

The value of epsilon corresponding to the minimum possible scattered photon energy (backward scattering) is given by:

    epsilon     =    ((1)/ (1+ 2E/m ))
           0                       e

In practice, therefore, given a set of random numbers r , i GCOMP samples the variate epsilon by:

  1. Deciding which element of the f(epsilon) distribution to sample from alpha = (alpha + alpha )r T 1 2 0 if alpha >=alpha select f (epsilon) 1 T 1 if alpha Sampling epsilon from the distributions corresponding to f and f . 1 2 For f this is simply achieved by: 1 alpha epsilon = epsilon e r 0 1 1 For f , we change variables and use: 2 epsilon' = max(r ,r ) for E/m> =(E/m +1)r 2 3 4 epsilon' = r for all other cases 5 Then, epsilon= epsilon + (1-epsilon )epsilon' 0 0 2
  2. Calculating sin theta and testing the rejection function: 2 t = m (1-epsilon)/E' sin theta = max(0,t(2-t)) e If r >g(epsilon), then reject epsilon. 6 If r <=g(epsilon), then accept epsilon. 6

After the successful sampling of epsilon, GCOMP then generates the polar angles of the scattered photon with respect to an axis defined along the parent photon. The azimuthal angle, Phi, is generated isotropically and theta is as defined above.

This information is then used to calculate the momentum vector of the scattered photon and recoil electron, and to transform them into the GEANT coordinate system.

Restriction

The differential cross-section is strictly only valid for those collisions in which the energy of the recoil electron is large compared with its binding energy (which is ignored). However, as pointed out by Rossi [bib-ROSS], this has a negligible effect because of the small number of recoil electrons produced at very low energies.