Skip to content

Instantly share code, notes, and snippets.

@ialexpovad
Created December 24, 2021 07:42
Show Gist options
  • Save ialexpovad/cfc55a8e88605143be475768891e71ea to your computer and use it in GitHub Desktop.
Save ialexpovad/cfc55a8e88605143be475768891e71ea to your computer and use it in GitHub Desktop.
Определение чувствительности спектрометра к нейтронному излучению Плутоний-Бериллиевого источника.
f'''
Определение чувствительности спектрометра к нейтронному излучению Плутоний-Бериллиевого источника.
'''
import random
import statistics
from tkinter import ROUND
NMEAN = float(245) # среднее арифметическое значение скорости счета импульсов фотонного излучения, cps
r0 = 100 # расстояние от центра источника до центра детектора
NBACK = float(0.36) # скорость счета импульсов фонового нейтронного излучения
phir0 = float(235) # плотность потока нейтроновв Pu-Be источника на расстоянии r0
# на дату поверки (из свидетельства), нейтр.* с^(-1) * cm^(-2)
br0K = float(0.366) # коэффициент, учитывающий вклад рассеянного нейтронного излучения
# K - коэффициент, используемый при поверке на установках типа УПН и обусловленный зависимостью
# чувствительности нейтронного детектора от энергии нейтронного излучения
# Коэффициент К равен отношению чувствительности нейтронного детектора при измерениях в
# открытой геометрии к чувствительности при измерениях на установках типа УПН
# и определяется на конкретной установке типа УПН для данного типа нейтронного детектора.
# При проведении измерений в открытой геометрии K = 1
# b(r0) = (N - Nc) / (N - N0)
# N - скорость счета импульсов от нейтронного источника в точке поверки
# N0 - корость счета импульсов фонового нейтронного источника
# Nc - скорость счета импульсов от нейтронного излучения, измеренная с устанновленным между источником и спектрометром теневым конусом
# b(ro) * K = (S0 * phi(r0)) / (N - N0)
# S0 - чувствительность спектрометра, определенная в условиях открытой геометрии, имп * с^(-1) / (нейтр. * c^(-1) * cm^(-2))
# phi(r0) - лотность потока нейтронов на расстоянии r0, для установки типа УПН, (нейтр. * c^(-1) * cm^(-2))
# N - скорость счета импульсов от нейтронного источника в точке поверки
# N0 - корость счета импульсов фонового нейтронного источника
ring = int(3)
error = 1.5 # (%) погрешность измерений скорости счета импульсов нейтронного излучения (1-3%)
def N(N, error, ring):
NLIST = []
for i in range(3):
var = round(random.uniform((N - error * N),(N + error * N)),ring)
NLIST.append(var)
return NLIST, round(statistics.mean(NLIST),ring)
SENSITIVITY = (NMEAN - NBACK) / phir0 * br0K
ROUNDSENSITIVITY = round(SENSITIVITY, ring)
if __name__ == '__main__':
print('Чувствительность к нейтронам =', ROUNDSENSITIVITY, 'имп * с^(-1) / (нейтр. * c^(-1) * cm^(-2))')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment