Dose rate calculation

Hi all
This is the geometry of my detector.
det_rect_prism = openmc.model.rectangular_prism(1.3, 1.3, origin=(0.0, 0.0))
det_zmin = openmc.ZPlane(z0=-1.0, boundary_type=‘transmission’)
det_zmax = openmc.ZPlane(z0=+1.0, boundary_type=‘transmission’)

detector = det_rect_prism & +det_zmin & -det_zmax
detector_cell = openmc.Cell(fill= cesium_iodide, region=detector)

I used cesium as a source and put it 5 cm away from the detector.
I want to know the dose rate. Should I write this part of the code like this?

tallies = openmc.Tallies()

dose_tally = openmc.Tally(name=“dose_tally_on_surface”)
dose_tally.scores = [“current”]
dose_tally.filters = [
cell_filter,
photon_particle_filter,
energy_function_filter_p,
]
tallies.append(dose_tally)
model = openmc.model.Model(geometry, materials, settings, tallies)
!rm *.h5
sp_filename = model.run()
import math

on

sp = openmc.StatePoint(sp_filename)

tally = sp.get_tally(name=‘dose_tally_on_surface’)
df = tally.get_pandas_dataframe()

tally_result = df[‘mean’].sum()
tally_std_dev = df[‘std. dev.’].sum()

dose_in_pSv = tally_result / (2*(1.3+1.3+2))

source_activity = 124300 # in decays per second (Bq)
emission_rate = 1
gamma_per_second = source_activity * emission_rate
dose_rate_in_pSv = dose_in_pSv * gamma_per_second
dose_rate_in_μSv=dose_rate_in_pSv*0.0036

I would be very grateful if you could help me.Thank you

openmc has some inbuilt dose coefficients than can be used to construct an EnergyFunctionFilter that is then used in the tally.

Here are a few examples of dose tallies on a surface, cell or mesh

I wrote a code looking at this example and I compare the dose rates with my experimental results. First, I used cesium and when I adapted the code accordingly, I get almost the same result as the experiment, but when I do it for sodium and barium, there are differences between the results. What could be the reason for this?
Thank you