Openmc.data.dose_coefficients

Hi everyone,

I am working to find absorbed dose (Sv) in several cells from photon flux (p/cm2.s) in Linear Accelerator 10 MV room using openmc.data.dose_coefficients. What is the unit of the value from the simulation that uses openmc.data.dose_coefficients ?

Here are the input and output:

tally = openmc.Tallies()
filter_cell = openmc.CellFilter((c15, c16,c23, c22,c24,c25, c18,c21, c27))
tally1 = openmc.Tally()
particle1 = openmc.ParticleFilter(‘photon’)
tally1.scores = [‘flux’]
energy, dose = openmc.data.dose_coefficients(‘photon’, ‘AP’)
dose_filter = openmc.EnergyFunctionFilter(energy, dose)
tally1.filters = [filter_cell, particle1, dose_filter]
tally.append(tally1)

============================> TALLY 1 <============================
Cell 12
Particle: photon
Energy Function f([1.0e+04, …, 1.0e+10]) = [6.9e-02, …, 9.0e+01]
Total Material
Flux 61.6460 +/- 0.00761474

Regards,
Andika

Welcome to the forum @andika686! In OpenMC, flux tallies have units of [particle-cm/source]. The dose_coefficients function gives you a value in [pSv cm²]. Thus, if you want [pSv], you would need to multiply by the source rate in [source/sec] and the irradiation time in [sec] and then divide by the volume:

dose * flux * src_rate * t / V = [pSv cm²] [p-cm/src] [src/sec] [sec] / [cm³] = [pSv]

2 Likes

Thank you @paulromano for the explanation, it’s really helpful