mne029 I have worked on the same project as a fellow student, where I have done the simulation part and he has made a GUI. His project report can be found here.

Attenuation of electromagnetic radiation


When electromagnetic radiation passes through a material, its intensity (number of photons per unit time) will be reduced. This is due to scattering and absorption of photons in the material, through processes such as photoelectric effect, compton scattering and pair production. The total intensity of the radiation will be reduced exponentially when passing through an absorber, given by the formula:


Where I(0) is the initial intensity, I is the intensity after passing through the absorber, x is the thickness of the absorber and my is the linear attenuation coefficient.

The linear attenuation coefficient represents the probability of the photons to interact with the material, and is thus dependent on the type of material. It is proportional to the charge number of the element, since the primary causes of attenuation are due to interactions with electrons. It is also proportional to the mass density of the element. This means that heavier elements tend to attenuate electromagnetic radiation more effectively than lighter elements, as they are usually more dense and have larger charge numbers.

Additionally, the attenuation coefficient is highly dependent on the energy of the incoming photons. Usually, the more energetic the photons are, the more of them will pass through the absorber unaffected.

The exponential law is often written in the form:


Where rho is the mass density of the absorber. This is convenient because, while my for a specific element will vary for the different states of matter, my/rho is independent of the state of matter. my/rho is called the mass attenuation coefficient, and is used in this project for calculations in place of the linear attenuation coefficient.

Source code

Download the files here

The project

In this project I will be studying how electromagnetic radiation of various energies are attenuated when going through various materials. I am using the following datasets:

Dataset 1 Dataset 2

The first dataset contains various constants for all elements up to Z=92. The important one for this project is the densities, which is used in formula [2]. The second dataset contains values of the mass attenuation coefficient, for photons in the energy range 1keV-20MeV, for all elements up to Z=92.

The program consists of three .C scripts, as well as txt-files containing the data from the datasets mentioned above. Note that the txt-files are necessary for the program to work properly.

The script attenuation_graph.C asks the user to input an element and plots values of the linear attenuation coefficient for that element, as a function of the photon energy. Note that the script plots the linear attenuation coefficient, my, and not the mass attenuation coefficient, my/rho. The reason for this is that my is directly proportional to how many photons the material will absorb, while for my/rho that depends on both the value of my and rho. Thus it is more convenient to plot the linear attenuation coefficient, as you can tell directly from that graph how well an element will attenuate radiation.

As explained in the theory section, graphs of the linear attenuation coefficient will not be the same for different states of matter of the same element, while graphs of the mass attenuation coefficient will. Since the dataset only contains one value of the density for each element, the linear attenuation coefficient will only be plotted for one specific state of matter, which I assume is the state for the element at standard temperature and pressure (I could not find information about this on the website I got the datasets from.) If you want to see plots of the mass attenuation coefficient, they are plotted for all elements in dataset 2.

You can plot as many graphs as you like. Below is an example of what the graphs look like, plotted for nitrogen, aluminum and lead:

Unfortunately, I could for an unknown reason not get the titles of the x- and y-axes to appear when using TMultiGraph. I included a picture of the old version of the script, which only plotted a single graph, to show what the axes were supposed to look like. As you can see from this picture, the x-axis is photon energy [MeV] and the y-axis is my [cm^-1].

Nitrogen is obviously a bad absorber, as it is a gas with low charge number, and we see that its linear attenuation coefficient is much smaller than for aluminum and lead. Lead again has a higher linear attenuation coefficient than aluminum, which is expected since it is both more dense and has a higher charge number.

Note the sudden increases in the linear attenuation coefficient for aluminum and lead. Such sharp increases are called K,L,M-edges and so forth, and happen when the energy of the photons exceeds the binding energy of the K,L,M,...-shells of the atoms. This results in an increased frequency of the photoelectric effect.

The script intensity_calculator.C uses formula [2] to calculate the fraction of photons transmitted through an absorber (I/I(0)) for a given photon energy, absorber material and absorber thickness, all of which are given as user input.

I have chosen to include in the report some calculations using 5cm thickness and 0.662MeV photon energy. The reason I chose 0.662MeV is because that is the energy of gamma particles emitted by Caesium-137. Below are the results for some interesting elements:

Nitrogen: I/I(0) = 0.999548

Aluminum: I/I(0) = 0.363245

Iron: I/I(0) = 0.0544535

Lead: I/I(0) = 0.00158478

Gold: I/I(0) = 2.65962e-05

Finally, the script intensity_graph.C plots the fraction of photons transmitted as a function of absorber thickness, again using formula [2]. The user is asked once again to input photon energy, absorber material and the maximum thickness to plot. This graph will tell you how quickly the intensity will be reduced when going through a specific material. Below are graphs plotted for the same elements I used in intensity_calculator, for 0.662MeV photons once again and 10cm thickness:

Again I have the problem with the name of the x- and y-axes not appearing, so I have included yet another graph from the old version of this script showing the axes. The x-axis is absorber thickness [cm] and the y-axis is fraction of photons transmitted (I/I(0)).

The scripts intensity_calculator and intensity_graph.C confirm what the attenuation graph showed, namely that nitrogen is a terrible absorber (almost all photons are transmitted), aluminum is better but still not a great absorber, while lead is a very effective absorber. Additionally, iron is a worse absorber than lead but better than aluminum and gold is slightly better than lead. This can again be understood because of the charge number and density of the elements. (Note: Gold has a slightly lower charge number than lead but is more dense, so it is still the better absorber).

This is very useful information in relation to radiation protection. Gamma radiation is ionizing and can therefore be harmful to humans, and so we should use something as shielding when exposed to gamma radiation. The results from intensity_calculator.C and intensity_graph.C show that we should definitely not rely on the air around us to shield us from gamma radiation. Nitrogen, which makes up most of the earths atmosphere, barely absorbs anything at all. Aluminum absorbs some of the radiation, but probably less than desirable. If we want really effective radiation shielding, we need some really heavy elements like lead or gold. Lead is one of the most widely used materials for shielding because of its high absorption combined with relatively low cost.

On a final note, I thought it would be interesting to see how quickly the intensity is reduced for the same element with different photon energies. Below are graphs plotting the fraction transmitted for lead with various energies:

All photons with 0.1MeV energies will get absorbed almost immediately. For more energetic photon the intensity will decrease more slowly, but interestingly the intensity for 10MeV photons will decrease faster than for 2MeV photons. This is in correspondence with the attenuation graph for lead, which shows that the attenuation coefficient is slightly higher for 10MeV than for 2MeV. I do not know why, but it probably has something to do with the microscopic details behind the attenuation coefficient, that 10MeV photons are somehow more likely to interact with the electrons than 2MeV photons.


PHYS231 Compendium

This file about an experiment we did in PHYS114