HomeWork Simulations of Particle Interactions with Matter

From New IAC Wiki
Jump to navigation Jump to search

Homework 1

1.) Maxwell Boltzmann

Given the Maxwell -Boltzmann Distribution

[math]N(v) = 4 \pi \left ( \frac{m}{2\pi kT}\right)^{3/2} v^2 e^{-\frac{mv^2}{2kT}}[/math]

a.) Show <v>

Show that

[math]\lt v\gt = 4\pi \left ( \frac{m}{2 \pi kT}\right )^{3/2} \left( \frac{2kT}{m}\right)^2 \frac{\Gamma(2)}{2}[/math]

b.) Energy Fluctuation (Grad)

Show that the energy fluctuation is

[math]\frac{1}{4} m^2 \lt \left ( v^2 - \lt v^2\gt \right)^2\gt = \frac{3}{2} (kT)^2[/math]


Note
[math]\lt \left ( v - \lt v\gt \right)^2\gt = \lt v^2 - 2v\lt v\gt + \lt v\gt ^2\gt = \lt v^2\gt - (\lt v\gt )^2[/math]
[math]= \frac{3kT}{m} - \frac{8kT}{m}[/math] = velocity fluctuation
[math]\frac{m^2}{4} \lt \left ( v^2 - \lt v^2\gt \right)^2\gt = \frac{m^2}{4}\left ( \lt v^4\gt - (\lt v^2\gt )^2 \right )[/math]
[math]=\frac{1}{4} \left ( 15(kT)^2 - (3kT)^2\right)[/math]

2.) MC calculation of Pi

Calculate [math]\pi[/math] using the Monte Carlo method described in the Notes


You may use the program I gave you in the lab for this but you must change the program to indicate that you were able to understand its structure and you were able to recompile it.

3.) Histograms using ROOT

Create histograms of the random numbers stored in the ROOT ntuple created in in Problem 2 above.

try


rns->Draw("rnd1*4");
rns->Draw("rnd1:rnd1","rnd1>0.5");
rns->Draw("asin(rnd1)");
rns->Draw("asin(rnd1-rnd2)");   Does this look like a Normal/Gaussian Distributi
on?

Homework 2

1.) Derive Rutherford Formula

Derive the Rutherford Scattering formula.

2.) EXN02 in GEANT

a.) Compile and run the default version of ExN02 in GEANT4

You can use a computer screen shot to prove you did this.

b.) Now make your own copy of it and change the target material

Homework 3

Write a "How TO" document describing how to download and install the latest version of

GEANT4

Use a screen shot to prove you did it.

Suggested answers to a few questions asked when running "./Configure -build"

Hints:
First step, install the version of CLHEP recommended on the GEANT4 website.

CLHEP

Second step, build without graphics and static libraries


Do you want to build 'shared' (.so) libraries? [n] n

G4UI_NONE

Do you want to set this variable ? [n] y

 G4VIS_NONE

If this variable is set, no visualization drivers will be built or used. Do you want to set this variable ? [n] y

Third step,  now turn on the visualization


Do you want to build 'shared' (.so) libraries? [n] n

 G4UI_NONE

If this variable is set, no UI sessions nor any UI libraries are built. This can be useful when running a pure batch job or in a user framework having its own UI system. Do you want to set this variable ? [n]


 G4UI_BUILD_XAW_SESSION
 G4UI_USE_XAW
 Specifies to include and use the XAW interfaces in the
 application to be built.
 The XAW (X11 Athena Widget set) extensions are required to activate 
 and build this driver.

[y]


 G4UI_BUILD_XM_SESSION
 G4UI_USE_XM
 Specifies to include and use the XM Motif based user interfaces.
 The XM Motif extensions are required to activate and build this
 driver.

[y]

 G4VIS_BUILD_OPENGLX_DRIVER
 G4VIS_USE_OPENGLX

It is an interface to the de facto standard 3D graphics library, OpenGL. It is well suited for real-time fast visualization and prototyping. The X11 version of the OpenGL libraries is required. [y]

 G4VIS_BUILD_OPENGLXM_DRIVER
 G4VIS_USE_OPENGLXM

It is an interface to the de facto standard 3D graphics library, OpenGL. It is well suited for real-time fast visualization and prototyping. The X11 version of the OpenGL libraries and the Motif Xm extension is required. [y]

 OGLHOME/include
 OGLHOME/lib

You have selected to use OpenGL driver. Specify the correct path (OGLHOME) where OpenGL is installed in your system. It was found in: [/usr]

Old Install Notes


Visualization Libraries:

OpenGL

DAWN


Coin3D

Homework 4

1.) Use GEANT4 to simulate the calculation the energy loss of a ion through LH2. In class I showed an example for an incident 10 MeV proton. You need to pick another particle (pion, kaon, muon ...) and a different energy. Compare your answer with the Triumf curve.

2.) Compute[math] \frac{dE}{dx}[/math] for the heavy charged particle you chose to simulate in problem 1. Use the particle's energy at one of the tracking steps and compare to what GEANT4 found.

Homework 5

1.) Show that the maximum energy transfered to thin absorbers for a relativistic head on collision is

[math]W_{max} = \frac{(pc)^2}{\frac{1}{2} \left [ m_e c^2 + \left ( \frac{M^2 c^2}{m_e} \right ) \right ] + \sqrt{(pc)^2 + (Mc^2)^2}}[/math]
[math]p[/math] = momentum of incident heavy charged ion of mass [math]M[/math]
[math]m_e[/math] = mass of target electron initially at rest

2.) Use GEANT4 to determine the Range of the particle chosen in Homework 4 through liquid hydrogen as a function of Energy.

File:RangeInLH2.pdf

Homework 6

1.) You need to lower the beam energy of 600 MeV protons to 400 MeV using a slab of copper. The density of the copper is 8.962 [math]\frac{g}{cm^3}[/math]. Determine how thick the copper should be by integrating the stopping power curve:

[math]x = -\int_{600 MeV}^{400 MeV}\left [\frac{dE}{dx} \right ]^{-1} dE[/math]

Stopping Power of several particles through Copper as a function of energy is shown in this curve. File:StoppingPowerInCopper.pdf

Data Thief


2.) Alter GEANT4 example N02 to check your answer for problem 1 above. I expect you to hand in a screen shot showing GEANT4 tracking the proton from 600 MeV to 400 MeV.

3.) Find [math]\frac{\sigma_R}{R}[/math] using GEANT4 for a 600 MeV proton traveling through a slab of copper. You will need to make the copper thick enough to stop the proton. Then output the stopping distance to a file which you can read into ROOT using some of the software we used for Homework 1's RNG problem.

Homework 7

SPIM_Brem_Lab_Instructions


Media:SPIM_BremE-Spectrum-Tantalum.pdf

Media:SPIM_LaTex_TemplateFile.txt

Homework 8

SPIM_PhotElectricEffect_Lab

Homework 9

1.) Write a Paragraph (4 - 5 sentences) desribing the Simulation you would like to perform as your Project for this class. You will need to write a title. You will need to specify the reaction you will be simulating.


Use the Latex skeleton file below to format your document

Media:SPIM_LaTex1_TemplateFile.txt


some commands:

latex filename
dvips filename -o temp.ps 
pdflatex filename

Homework 10

SPIM_ComptonScattering_Lab

Homework 11

There are 2 parts to this homework. First you will compare relative rates for the PhotoElectric, Compton, and pair production physics processes using the same target you used in Homework 10. Second you will write another section of your project which describes the experimental results you are going to compare to using GEANT4.

1.) Compare Photoelectric, Compton and pair production rates relative to eachother using the same target used in the last Homework assignment (#10).

a.) first turn on all three physics processes for a gamma particle in the physics list.

b.) add variables to the output which can be used to identify which physics process is responsible for the event being written to the output file.

c.) Run the simulation so the incident photon energy spans energies from 100 eV to 10 GeV.

d.) Use ROOT to plot a 3-D representation of the Process type on one axis, the incident photon energy on the other axis and the number of counts along the z-axis.

A bad example of such a plot for a 30 cm long Argon gas target is given in the file

SPIM PhotoAbsorb Argon.gif

Yours will have better labels

Hint:

->Draw("ProcesID:Egamma","","lego");


2.) Add another section to your project report which describes the experimental measurements you will be using to compare to GEANT4. I am expecting to see a plot and references.

Homework 12

The objective of this homework is to compare the number of collisions needed to thermalize a neutron in GEANT to the expected number of collisions using the Neutron Slowing Down Theory described in class.

1.) Add neutron physics process to your physics list

#include "G4LElastic.hh"
#include "G4NeutronHPElastic.hh"
#include "G4NeutronHPorLElastic.hh"


   } else if (particleName == "neutron") {
     //neutron
    // available neutron elastic scattering models
    //     G4LElastic* elasticModel = new G4LElastic();
     //G4NeutronHPElastic* elasticModel = new G4NeutronHPElastic();
     G4NeutronHPorLElastic* elasticModel = new G4NeutronHPorLElastic();
     // define process to handle elastic scattering
     G4HadronElasticProcess* hadElastProc = new G4HadronElasticProcess();
     // register the model you are using for eleastic scattering
    hadElastProc->RegisterMe(elasticModel);
    // add the elastic scattering process to the process manager
    pmanager->AddDiscreteProcess(hadElastProc); // label LElastic in tracker

}


Use a Liquid Hydrogen target

 G4Material* LH2 = 
   new G4Material("Hydrogen", z=1., a= 1.01*g/mole, density= 0.07*g/cm3, kStateGas,3*kelvin,1.7e5*pascal);

change the target to be a 60 cm square and 60 cm thick in Z (a 60 cm cube)

 fTargetLength  = 60 * cm;                        // Full length of Target
 solidTarget = new G4Box("target",fTargetLength,fTargetLength,targetSize);



Simulations_of_Particle_Interactions_with_Matter Back to Notes