Calculating Microdosimetry in MCNP

  • #1
Mingzhu
8
0
TL;DR Summary
hello,everyone!I simulated a neutron source to irradiate a tepc to obtain a microdosimetry spectrum. After confirming the geometric correctness, I changed the energy and other information of the source and found that the line energy of photons remained around 1e3kev/um, which should be around 10 in theory. I hope someone can help me to look the input files to check whether it is right?Need I to add any physical processes or cut off energy?
the code file is attached
 

Attachments

  • tepc_lnl_after.txt
    12.8 KB · Views: 35
Engineering news on Phys.org
  • #2
Ok, so this is a lineal energy calculation for a Tissue Equivalent Proportional Counter. I do not know how to do that but two things jump out at me

Density of propane is 1.85g/cc in the problem. At STP propane is 0.00188g/cc according to a quick search. Even liquid propane would be under 0.5g/cc. Your air also seems to be the mg/cc value not the g/cc value.

The neutron source has an energy of 58 MeV. That is unusual, but it may not be important.

Oh and welcome to PF @Mingzhu
 
Last edited:
  • #3
Hi,
For a TEPC irradiated with neutrons you must calculated the energy deposition of all secondary charged particules: protons, alpha, heavy ions and possibly deuterons, tritons. Electrons and photons can be neglected. For neutrons of 14 MeV a lineal energy of 10 keV/µm gives the maximum of the microdosimetric spectrum in y(dy) but for protons not photons!
In MCNP The lineal energy distribution for each secondary heavy charged particle is estimated using a F6 tally type for energy deposit coupled to a pulse height tally F8 for each heavy charged particle specie.
it is explain in this publication :
https://www.sciencedirect.com/science/article/abs/pii/S1350448719304755?via=ihub
You have a full example in § 1.VII of this referrence:
https://www.researchgate.net/public...lems_from_analytical_to_monte-carlo_solutions
for example a calculation with MCNP for 14 MeV neutrons gives (from Antoni et Bourgois radiation measurements vol. 128, spet 2019, 106189):

Présentation1.jpg

good luck
 
Last edited:
  • Informative
Likes Alex A
  • #4
PSRB191921 said:
Hi,
For a TEPC irradiated with neutrons you must calculated the energy deposition of all secondary charged particules: protons, alpha, heavy ions and possibly deuterons, tritons. Electrons and photons can be neglected. For neutrons of 14 MeV a lineal energy of 10 keV/µm gives the maximum of the microdosimetric spectrum in y(dy) but for protons not photons!
In MCNP The lineal energy distribution for each secondary heavy charged particle is estimated using a F6 tally type for energy deposit coupled to a pulse height tally F8 for each heavy charged particle specie.
it is explain in this publication :
https://www.sciencedirect.com/science/article/abs/pii/S1350448719304755?via=ihub
You have a full example in § 1.VII of this referrence:
https://www.researchgate.net/public...lems_from_analytical_to_monte-carlo_solutions
for example a calculation with MCNP for 14 MeV neutrons gives (from Antoni et Bourgois radiation measurements vol. 128, spet 2019, 106189):

View attachment 336484
good luck
Thank you very much!
I am a bit confused about how to apply the F6 and F8 tally types in MCNP to calculate lineal energy. I understand that the F6 Tally can be used to obtain the total deposited energy for each track during the simulation, while the F8 Tally outputs pulse height information for different energy bins through E8.

In my simulations, I have been using the F6 Tally to retrieve the total deposited energy for each track. However, I am uncertain about how to use the information from the F8 Tally to derive the lineal energy. At one point, I considered using the energy bin information from the F8 Tally as the deposited energy, but I am now beginning to suspect that the correct measure for deposited energy should come from the F6 Tally. Could you please clarify the correct methodology for calculating lineal energy, and how I should integrate the results from both F6 and F8 Tally types?

Additionally, I have some questions regarding the probability distribution generated from the pulse height information obtained through the F8 Tally. I am unsure whether the pulse height values output by F8 reliably represent the probability distribution or if there are additional steps to accurately acquire this information.

I appreciate your time and guidance; your assistance will have a significant impact on my research.

Thank you very much again.
 
  • #5
The lineal energy distribution for each secondary heavy charged particle is estimated using a F6 tally type for energy deposit coupled to a pulse height tally F8 for each heavy charged particle specie. An anticoincidence pulse height card, i.e., “ft8 phl”, is added to the F8 tally for counting single-event of energy imparted in gas arising from specific nuclear reaction in the cavity wall. For example, the following instructions are set to determine the occurrence number of reaction in the gas. For setting up this card, 185 logarithmic lineal energy bins are defined to ensure about 50 equal subdivisions per decade between 0.6 and 3030 keV/μm−1. In the command lines hereafter, this card provides the lineal energy spectrum for
all charged particles:
F6:h,a,# 10 $ 10 is cell of the internal cavity
F8:N 10
E8 0 1.39E-11 0.0004 183LOG 2.02
FT8 PHL 1 66 1 0 $ for He-3 and gas is material 1

after that you must calculate y (y=e/l with l the the mean chord of your detector)
and yd(y)

there are some adjustments to take into account for the MCNP parameters, for that please read the publications I cited.
 
  • #6
PSRB191921 said:
The lineal energy distribution for each secondary heavy charged particle is estimated using a F6 tally type for energy deposit coupled to a pulse height tally F8 for each heavy charged particle specie. An anticoincidence pulse height card, i.e., “ft8 phl”, is added to the F8 tally for counting single-event of energy imparted in gas arising from specific nuclear reaction in the cavity wall. For example, the following instructions are set to determine the occurrence number of reaction in the gas. For setting up this card, 185 logarithmic lineal energy bins are defined to ensure about 50 equal subdivisions per decade between 0.6 and 3030 keV/μm−1. In the command lines hereafter, this card provides the lineal energy spectrum for
all charged particles:
F6:h,a,# 10 $ 10 is cell of the internal cavity
F8:N 10
E8 0 1.39E-11 0.0004 183LOG 2.02
FT8 PHL 1 66 1 0 $ for He-3 and gas is material 1

after that you must calculate y (y=e/l with l the the mean chord of your detector)
and yd(y)

there are some adjustments to take into account for the MCNP parameters, for that please read the publications I cited.
Thank you very much for your patient explanation. I believe I have a clearer understanding of microdosimetry in MCNP now. However, when it comes to calculating alpha particles, I excluded heavy ions from the simulation. I obtained a record of alpha counts, and I wonder if this approach is appropriate?
Regarding the F8 output, I processed it using the code below. However, the results differ from the reference literature, which is the one you attached in your initial response.
1702048811717.png

I'm not sure if there is an issue with my post-processing. Specifically, I considered the first column as deposited energy and the second column as pulse, f(y), for subsequent calculations. I have attached the detailed code and would appreciate it if you could take a look. Your assistance would be immensely helpful. thank you again!
code:
import matplotlib.pyplot as plt
import numpy as np
data = np.loadtxt('E:/alpha_germay_1208.txt')
x = data[:, 0]
y = data[:, 1]
x=np.array(x)
y_=1500*x
y=np.array(y)
fy=y/sum(y)
# fy=y
yfy=y_*fy
yF = 0
for i in range(len(y)-1):
yF += (y_[i+1]-y_)*(y_*fy)
print(yF)
dy=yfy/yF
ydy=y_*dy
plt.plot(np.log10(y_),yfy)
plt.title("linear energy distribution")
plt.xlabel("y")
plt.ylabel("yfy")
plt.show()
plt.plot(np.log10(y_),ydy)
plt.title("linear energy distribution")
plt.xlabel("y")
plt.ylabel("ydy")
plt.show()
 
  • #7
can you give your mcnp input file ?
 
  • #8
yes,I have placed the input file in the attachment.
 

Attachments

  • tepc_germay.txt
    1.4 KB · Views: 27
  • #9
you must change your importance (you have imp:n,e=1) put in block 3 :
imp:n 1 1 1 0
imp:h,a 1 1 0 0

The 7th parameter of the “phys:n” card and “phys:p” is set to 1 to ensure the generation and transport of recoil and (n,p) protons as well as recoil heavy ions :
PHYS:N 20 20 0 J J J 1 -1 J J J 0 0 $ 7th entry set to 1
PHYS;h 20 20 -1 J 0 J 1 J J J 0 0 0 0.917

you can calculated H and A once:
C PROTON Energy Deposition
F6:h 1
F8:N 1
E8 0 1.39E-11 0.0004 183LOG 2.02
FT8 PHL 1 6 1 0
C ALPHA Energy Deposition
F26:A 1
F28:N 1
E28 0 1.39E-11 0.0004 183LOG 2.02
FT28 PHL 1 26 1 0

and the density of gas is too high it must be 7.77e-5 instead of 1.85

and it must be ok
 
  • Informative
Likes Alex A
  • #10
Thank you very much for your guidance. it has been immensely helpful to me.The gas density is 0.000185,I writen wrong. now I change it to 7.77e-5.However, I noticed a small difference. When plotting the yfy/ydy graphs for alpha particles based on my previous code, I observed that the y-ydy plot has a maximum y-axis value of 2(below figure). According to the reference to the 13.9 MeV article you mentioned earlier, it should be around 0.1. I am unsure if there is an issue here. Upon normalizing, I found that the y-axis for alpha particles becomes 0.1, but after normalization for protons, it becomes 0.035. I am not sure if there is something wrong or if there are specific considerations to be taken into account. I have attached the modified MCNP input file and processing code. I express my gratitude again.
processing code:
import matplotlib.pyplot as plt
import numpy as np
data = np.loadtxt('E:/h_1210_density.txt')
x = data[:, 0]
y = data[:, 1]
x=np.array(x)
y_=1500*x
y=np.array(y)
fy=y/sum(y)
# fy=y
yfy=y_*fy
# yfy=yfy/sum(yfy)
yF = 0
for i in range(len(y)-1):
yF += (y_[i+1]-y_)*(y_*fy)
print(yF)
dy=yfy/yF
ydy=y_*dy
ydy=ydy/sum(ydy)
plt.plot(np.log10(y_),yfy)
plt.title("linear energy distribution")
plt.xlabel("y")
plt.ylabel("yfy")
plt.show()
plt.plot(np.log10(y_),ydy)
plt.title("linear energy distribution")
plt.xlabel("y")
plt.ylabel("ydy")
plt.show()
1702144008247.png
 

Attachments

  • tepc_germay.txt
    1.4 KB · Views: 37
  • #11
I don't know your processing code, can you give your output file I will try with my processing code (Excel :-))
I think your curve is for alpha, can your try with protons and alpha+ protons ?
 
  • #12
yes,this is alpha and I have also processed protons, but they do not match.I have placed the output file in the attachment.
Thank you very much!
 

Attachments

  • tepc_germay_h_alpha_1209_density_out.txt
    95.2 KB · Views: 48
  • #13
with your file and my processing it gives:
Présentation1.jpg

not so bad! Some convergence problem (with more nps it will be ok)
 
  • #14
Thank you very much.
This indicates that there is no issue with the simulation code, but there might be an error in the processing code. I exported tally8/tally28 to a txt file and used the above code for processing. I'm unsure where the problem lies.
Could you please share your code or any subsequent code with me? I would greatly appreciate it. Additionally, I'm curious about how to handle proton and alpha particles together. Your guidance on this matter would be immensely helpful to me.
Thank you in advance for your assistance.
 
Last edited:
  • #15
this is my Excel file
 

Attachments

  • TEPC_phys_forum.xlsx
    171.2 KB · Views: 33
  • #16
Thank you very much for sharing!I have a rough idea of where the issue in my code might be, and I'll thoroughly check it.
At the same time, I have another question.
I want to calculate the energy spectrum for photons and neutrons using an MCNP input file. Could you help me to check the following MCNP input file is correct? Currently, I'm getting only a single value in the output, and I'm not sure if it's due to an issue with the energy range set by e8.
I would appreciate any advice you could provide.
 

Attachments

  • tepc_germay_p.txt
    1.3 KB · Views: 30

What is MCNP and how is it used in microdosimetry?

MCNP (Monte Carlo N-Particle) is a general-purpose Monte Carlo radiation transport code designed to track all types of particles over a wide range of energies, and is widely used in physics, engineering, and medical applications. In microdosimetry, MCNP is utilized to simulate the interaction of radiation with matter at a microscopic scale. This helps in understanding the distribution of energy depositions by ionizing radiation within human tissue at cellular or sub-cellular levels, which is crucial for assessing radiation doses in both therapeutic and harmful scenarios.

How do you set up a microdosimetry simulation in MCNP?

To set up a microdosimetry simulation in MCNP, you must first define the geometric model of the biological entity, such as a cell or a DNA molecule, using MCNP's extensive geometry capabilities. Next, specify the material compositions, which should mimic biological tissues or cellular components. Following this, define the source of radiation, including its energy spectrum, type, and spatial distribution. Finally, configure the tally options to measure the energy deposited in the regions of interest, ensuring that the statistical uncertainties are minimized for accurate dose calculations.

What are the common challenges in calculating microdosimetry with MCNP?

One common challenge in calculating microdosimetry with MCNP is the handling of low-energy transport and associated physical processes, which are critical at the microscale. Accurate modeling of the interaction of radiation with biological materials also poses a significant challenge due to the complex nature of these materials. Additionally, achieving a statistically significant result can require extensive computational resources because high-resolution simulations in small volumes tend to increase the variance in Monte Carlo calculations.

How can you improve the accuracy of microdosimetric calculations in MCNP?

Improving the accuracy of microdosimetric calculations in MCNP can be achieved by refining the geometric and material definitions to better represent the biological structures of interest. Using updated and comprehensive cross-sectional data for the interactions of particles with biological materials also enhances accuracy. Additionally, increasing the number of histories (simulated particle tracks) in the simulation can reduce statistical errors, though at the cost of increased computational time. Implementing variance reduction techniques can also be beneficial to achieve more accurate results efficiently.

What are the latest advancements in MCNP for microdosimetry?

Recent advancements in MCNP for microdosimetry include the development of specialized variance reduction techniques to improve the efficiency of simulations at microscopic levels. Enhancements in the physical models for low-energy interactions, crucial for accurate microdosimetry, are also being continuously integrated into the code. Furthermore, there is ongoing work to incorporate more detailed biological structures and compositions directly into MCNP libraries, facilitating more realistic simulations. The integration of parallel computing capabilities is another significant advancement, allowing for faster processing and analysis of complex microdosimetric scenarios.

Similar threads

Replies
1
Views
1K
Replies
6
Views
1K
  • Nuclear Engineering
Replies
3
Views
510
Replies
4
Views
941
  • Nuclear Engineering
Replies
1
Views
1K
Replies
2
Views
2K
  • Nuclear Engineering
Replies
0
Views
99
Replies
5
Views
2K
  • Nuclear Engineering
Replies
4
Views
1K
Back
Top