Simulations of Particle Interactions with Matter

From New IAC Wiki
Jump to navigation Jump to search

Class Admin

Forest_SimPart_Syllabus

The ability to simulate nature using a computer has become a useful skill for physicists who work in disciplines ranging from basic research to video games. This class will teach you these fundamentals using a practical approach, based on a specific UNIX based programming environment, to simulate fundamental physics processes ranging from ionization and the photoelectric effect to producing anti-matter.

Homework

Homework is due at the beginning of class on the assigned day. If you have a documented excuse for your absence, then you will have 24 hours to hand in the homework after released by your doctor.

Class Policies

http://wiki.iac.isu.edu/index.php/Forest_Class_Policies

Instructional Objectives

Course Catalog Description
Simulations of Particle Interactions with Matter 3 credits. Lecture course with monte-carlo computation requirements. Topics include: Stopping power, interactions of electrons and photons with matter, hadronic interactions, and radiation detection devices.

Prequisites:Math 3360. Phys 3301 or 5561.

Course Description
A practical course applying theoretical descriptions of fundamental particle interactions such as the photoelectric effect, compton scattering and pair production to describe multiple interactions of particles with matter using the montecarlo method. A software package known as GEANT from CERN will be used that is freely available under the UNIX environment. The course assumes that the student has very limited experience with the UNIX environment and no experience with GEANT. Homework problems involve modifying and compiling example programs written in C++. A final project is required in which the student chooses a process to compare the predictions of GEANT with experimental data. A report is written in a format that would be publishable in a scientific journal. Publishing the report is not required but left as an option for the student.

Objectives and Outcomes

SPIM_ObjectiveNoutcomes


Homework Problems

HomeWork_Simulations_of_Particle_Interactions_with_Matter

Introduction

TF_SPIM_Intro

Energy Loss

TF_SPIM_StoppingPower

Ann. Phys. vol. 5, 325, (1930)

Interactions of Electrons and Photons with Matter

TF_SPIM_e-gamma

Hadronic Interactions

Proton Bremsstrahlung

[math]\sigma_{class}|_{90^o} = 2.1\times 10^{-31} cm^2/sterad[/math] = cross section for dipole radiation emitted at 90 degrees with respect to incident beam of particles scattered in a Coulomb field.

File:ProtonBrem Drell Huang PhysRev v99 n3 1955 pg686.pdf


Pluto event generator

A ROOT based Hadronic Simulation package based on Pluto

I installed Pluto V 5.14.1 on inca

I needed to set the environmental variables under tcsh

setenv ROOTSYS ~/src/ROOT/root
setenv PATH ${PATH}:${ROOTSYS}/bin
setenv LD_LIBRARY_PATH $ROOTSYS/lib


There is a subdirectory called "macros"

cd macros

Go to that subdirectory and type root, this will run the contents of the file "rootlogin.C"

cd macros
inca:~/src/Pluto/pluto_v5.14.1/macros> root
 *******************************************
 *                                         *
 *        W E L C O M E  to  R O O T       *
 *                                         *
 *   Version   5.17/03    30 August 2007   *
 *                                         *
 *  You are welcome to visit our Web site  *
 *          http://root.cern.ch            *
 *                                         *
 *******************************************
Compiled on 5 September 2007 for linux with thread support.
CINT/ROOT C/C++ Interpreter version 5.16.24, July 26, 2007
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
 *********************************************************
 * The Pluto event generator                              
 * (C) HADES collaboration and all contributing AUTHORS   
 * www-hades.gsi.de/computing/pluto/html/PlutoIndex.html  
 * Version: 5.14.1
 * Compiled on 10 December 2008
 *********************************************************
Shared library Pluto.so loaded

to run a pp elastic model type

root [0] .x pp_elastic.C 

a root ntuple is generate called "pp_elastic.root"

you can then analyze the data in the root file with

data->MakeClass();

the above command within root generates an analysis skeleton program.

using t.Show you can see the structure of the events within the ntuple. A few functions are also stored in the root tree which you can use. You can use the root file event to create an input file which GEANT4 can then use as its event generator. GEANT4 then reads the events in and propagates them through your geometry.

Neutron Interactions

Name Energy
Cold Neutron micro eV
Thermal [math]\sim \frac{1}{40}[/math] eV
epithermal [math] \frac{1}{40} eV \rightarrow 100 keV[/math]
fast [math]100 keV \rightarrow 100 MeV[/math]
high energy [math] \gt 100 MeV[/math]


Note: Interaction length for neutrons is ~[math]10^{-13}[/math] .
Neutrons are even better than photons for penetrating matter.

Elastic scattering

File:Elastic scattering from Nuclei.jpg

[math]v_{CM} = \frac{m_n v_L + M(0)}{m_n + M} = \frac{v_0}{1 + \frac{M}{m_n}} = \frac{v_0}{1+A} =[/math] velocity of CM frame

[math]{v_L}^' = [/math] Magnitude of Neutron velocity in CM frame before and after collision
[math]= v_c - v_{CM} = v_0 -\frac{v_0}{1+A} = \frac{(1+A)-1}{1+A} v_0 = \frac{A}{1+A} v_0[/math]

[math] v = [/math] Magnitude of Nucleus velocity in CM frame before and after collision
[math]= v_{CM} = \frac{v_0}{1+A}[/math]


Note: In elastic collision only the particles direction changes.

[math]\vec{v}_L = {\vec{v}_L}^' + \vec{v}_{CM}[/math]

File:Rule of cosines.jpg

[math]c^2 = a^2 + b^2 - 2abcos \theta[/math]

[math](v_L)^2 = ({v_L}^')^2 + (v_{CM})^2 - 2 v_{CM} {v_L}^' cos(\pi - {\theta}_{CM})=[/math]

[math]= ({v_L}^')^2 + (V)^2 - 2 V {v_L}^' cos(\pi - {\theta}_{CM})=[/math]

where

[math]({v_L}^')^2 = (\frac{A}{1+A})^2 {v_0}^2[/math]
[math](V)^2 = (\frac{1}{1+A})^2 {v_0}^2[/math]

After substitution we get following:

[math](\frac{v_L}{v_0})^2 = \frac{A^2 +1 - 2 A cos(\pi - {\theta}_{CM})}{(1+A)^2} = \frac{A^2 +1 + 2 A cos({\theta}_{CM})}{(1+A)^2}[/math]

[math] cos(A+/-B) = cosAcosB -/+ sinAsinB[/math]

[math]\frac{E}{E_0} = \frac{A^2 + 1 + 2Acos({\theta}_{CM})}{(1+A)^2}[/math]

when [math]{\theta}_{CM}=0[/math], [math]E_{max} = E_0[/math].


[math]E_{min} = \frac{(A-1)^2}{(A+1)^2} E_0 = (\frac{A-1}{A+1}) E_0 =[/math] Minimum energy of scattered Neutron in LAB frame.

File:Rule of cosines 1.jpg

[math]({v_L}^')^2 = (v_L)^2 + (v_{CM})^2 - 2 v_{CM} v_L cos(\pi - {\theta}_{CM})=[/math]

[math]= (v_L)^2 + (V)^2 - 2 V v_L cos({\theta}_{L})=[/math]

[math](\frac{Av_0}{1+A})^2 = {v_L}^2 + (\frac{v_0}{1+A})^2 - 2 v_L (\frac{v_0}{1+A}) cos({\theta}_L)[/math]

After substituting [math]v_L[/math]

[math]cos{\theta}_L = [\frac{A^2 + 1 + 2 A cos{\theta}_{CM}}{(1+A)^2} + (\frac{1}{1+A})^2 - (\frac{A}{1+A})^2] \times \frac{(1+A)^2}{2\sqrt{A^2 +1 + 2Acos{\theta}_{CM}}} = [/math]

[math]= \frac{[A^2 +1 + 2Acos{\theta}_{CM} + 1 - A^2]}{2\sqrt{A^2 +1 + 2Acos{\theta}_{CM}}} = \frac{1 + Acos{\theta}_{CM}}{\sqrt{A^2 +1 + 2Acos{\theta}_{CM}}} [/math]

Note: [math] {E_A}^{CM} = \frac{1}{2} M_A V^2 = \frac{1}{2} A m_n (\frac{v_0}{1+A})^2 = \frac{A}{(1+A)^2} \frac{m_n {v_0}^2}{2}= [/math]

[math] = \frac{A}{(1+A)^2}E_0 = [/math] Energy of recoil Nuclei in CM frame.

Conservation of Energy: [math]E_0 = E + E_A[/math]

[math] E_A = E_0 - E = E_0 - \frac{A^2 + 1 + 2Acos{\theta}_{CM}}{(1+A)^2} E_0 = [/math]
[math]\frac{(1+A)^2 - (A^2 +1 + 2Acos{\theta}_{CM})}{(1+A)^2}E_0 =[/math]

Inelastic Scattering

Resources

GEANT4 Home Page

ROOT Home page

Fermi Lab Example


NIST Range Tables

X-ray specturm

Installing_GEANT4.9.3_Fsim

Building GEANT4.9.5

TF_GEANT4.9.5

An old version of Installation notes for versions prior to 9.5

Old Install Notes


Visualization Libraries:

OpenGL

DAWN


Coin3D


TF_SPIM_OLD