In [1]:
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline

from electronfactors import (
    new_reading, calc_and_display, energy_to_reference_depth, 
    initialise)

In [2]:
data = dict()

15 & 18 MeV


In [3]:
corrrection_ion = 0.991 / 0.983

In [ ]:


In [4]:
energy_to_reference_depth(15)


Out[4]:
array([27])

In [5]:
energy_to_reference_depth(18)


Out[5]:
array([30])

In [6]:
# Standard insert 10app 15MeV 100MU
np.mean([1.065, 1.065, 1.066])


Out[6]:
1.0653333333333332

In [7]:
# Standard insert 10app 18MeV 100MU
np.mean([1.096, 1.096, 1.098, 1.098, 1.099, 1.099, 1.099])


Out[7]:
1.0978571428571429

In [8]:
# Standard insert 10app 15MeV 100MU
np.mean([1.067, 1.068, 1.069])


Out[8]:
1.0679999999999998

In [9]:
# Standard insert 10app 15MeV 1000MU
10.67 / 10


Out[9]:
1.067

In [10]:
# Standard insert 10app 18MeV 1000MU
np.mean([11.04, 11.06, 11.07]) / 10


Out[10]:
1.1056666666666666

In [11]:
# Standard insert 10app 15MeV 1000MU
np.mean([10.68, 10.69]) / 10


Out[11]:
1.0684999999999998

In [12]:
# Standard insert 10app 18MeV 1000MU
np.mean([11.09, 11.10]) / 10


Out[12]:
1.1094999999999999

In [13]:
key = '9.5cm_15MeV'

data = initialise(
    key=key, data=data,
    reference=1.069 * corrrection_ion,
    energy=15
)

data = new_reading(
    key=key, data=data,
    ionisation=np.array([1.078, 1.079, 1.080]) * corrrection_ion,
    depth=27 #corrected from 30
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.009 | 0.9%
Inverse factor = 0.991 | -0.9%

In [14]:
key = '9.5cm_18MeV'

data = initialise(
    key=key, data=data,
    reference=1.103,
    energy=18
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.110, 1.112, 1.112],
    depth=30
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.008 | 0.8%
Inverse factor = 0.993 | -0.7%

In [15]:
# Standard insert 10app 18MeV 100MU
np.mean([1.103, 1.103])


Out[15]:
1.103

In [16]:
# Standard insert 10app 15MeV 100MU
np.mean([1.069, 1.071])


Out[16]:
1.0699999999999998

In [17]:
key = '8.3cm_15MeV'

data = initialise(
    key=key, data=data,
    reference=1.070 * corrrection_ion,
    energy=15
)

data = new_reading(
    key=key, data=data,
    ionisation=np.array([1.075, 1.076]) * corrrection_ion,
    depth=27 # corrected from 30
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.005 | 0.5%
Inverse factor = 0.995 | -0.5%

In [18]:
key = '8.3cm_18MeV'

data = initialise(
    key=key, data=data,
    reference=1.1025,
    energy=18
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.105, 1.107],
    depth=30
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.003 | 0.3%
Inverse factor = 0.997 | -0.3%

In [19]:
# Standard insert 10app 18MeV 100MU
np.mean([1.102, 1.103])


Out[19]:
1.1025

In [20]:
# Standard insert 10app 15MeV 100MU
np.mean([1.069, 1.070])


Out[20]:
1.0695000000000001

In [21]:
key = '8.5x10.9cm_15MeV'

data = initialise(
    key=key, data=data,
    reference=1.0695 * corrrection_ion,
    energy=15
)

data = new_reading(
    key=key, data=data,
    ionisation=np.array([1.074, 1.075]) * corrrection_ion,
    depth=27 # Corrected from 30
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.005 | 0.5%
Inverse factor = 0.995 | -0.5%

In [22]:
key = '8.5x10.9cm_18MeV'

data = initialise(
    key=key, data=data,
    reference=1.102,
    energy=18
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.106, 1.107],
    depth=30
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.004 | 0.4%
Inverse factor = 0.996 | -0.4%

In [23]:
# Standard insert 10app 18MeV 100MU
np.mean([1.101, 1.103])


Out[23]:
1.1019999999999999

In [24]:
# Standard insert 10app 15MeV 100MU
np.mean([1.070, 1.070])


Out[24]:
1.0700000000000001

In [25]:
key = '5cm_15MeV'

data = initialise(
    key=key, data=data,
    reference=1.0675 * corrrection_ion,
    energy=15
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.027, 1.028],
    depth=30
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.036, 1.036],
    depth=29
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.041, 1.041],
    depth=28
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.045, 1.045],
    depth=27
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.048, 1.048],
    depth=26
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.050, 1.051],
    depth=25
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.047, 1.047],
    depth=26
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.053],
    depth=24
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.056],
    depth=23
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.058, 1.059],
    depth=22
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.058, 1.059],
    depth=22
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.042, 1.043],
    depth=27
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 0.975 | -2.5%
Inverse factor = 1.025 | 2.5%

In [26]:
# 1.067, 1.068

In [27]:
key = '5cm_18MeV_depth_search'

data = initialise(
    key=key, data=data,
    reference=1.102,
    energy=18
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.073, 1.075],
    depth=30
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.077, 1.079],
    depth=29
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.082, 1.083],
    depth=28
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.084, 1.085],
    depth=27
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.086],
    depth=26
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.092],
    depth=22
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.081, 1.082],
    depth=27
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 0.980 | -2.0%
Inverse factor = 1.021 | 2.1%

In [28]:
key = '5cm_18MeV'

data = initialise(
    key=key, data=data,
    reference=1.096,
    energy=18
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.081, 1.082, 1.080],
    depth=27
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 0.982 | -1.8%
Inverse factor = 1.019 | 1.9%

In [29]:
# 18MeV 1.095 1.097

In [30]:
# Standard insert 10app 18MeV 100MU
np.mean([1.093, 1.095])


Out[30]:
1.0939999999999999

In [31]:
# Standard insert 10app 15MeV 100MU
np.mean([1.068, 1.068])


Out[31]:
1.0680000000000001

In [32]:
key = '6.1cm_15MeV'

data = initialise(
    key=key, data=data,
    reference=1.066 * corrrection_ion,
    energy=18
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.056, 1.058],
    depth=27
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.058, 1.058],
    depth=26
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 0.979 | -2.1%
Inverse factor = 1.022 | 2.2%

In [33]:
key = '6.1cm_18MeV'

data = initialise(
    key=key, data=data,
    reference=1.095,
    energy=18
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.086, 1.087],
    depth=27
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.087, 1.089],
    depth=26
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 0.988 | -1.2%
Inverse factor = 1.013 | 1.3%

In [34]:
# Standard insert 10app 15MeV 100MU
np.mean([1.066, 1.066])


Out[34]:
1.0660000000000001

In [35]:
# Standard insert 10app 18MeV 100MU
np.mean([1.094, 1.096])


Out[35]:
1.0950000000000002

In [36]:
key = '5.3x12.5cm_18MeV'

data = initialise(
    key=key, data=data,
    reference=1.0935,
    energy=18
)

# data = new_reading(
#     key=key, data=data,
#     ionisation=[1.091, 1.094, 1.095],
#     depth=27
# )

data = new_reading(
    key=key, data=data,
    ionisation=[1.090],
    depth=26
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.084],
    depth=30
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.089, 1.091],
    depth=28
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.092, 1.094],
    depth=27
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 0.995 | -0.5%
Inverse factor = 1.005 | 0.5%

In [ ]:


In [37]:
key = '5.3x12.5cm_15MeV'

data = initialise(
    key=key, data=data,
    reference=1.065 * corrrection_ion,
    energy=15
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.065, 1.065],
    depth=27
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.067, 1.068],
    depth=26
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 0.992 | -0.8%
Inverse factor = 1.008 | 0.8%

In [38]:
# Standard insert 10app 15MeV 100MU
np.mean([1.064, 1.066])


Out[38]:
1.0649999999999999

In [39]:
# Standard insert 10app 18MeV 100MU
np.mean([1.092, 1.095])


Out[39]:
1.0935000000000001

In [40]:
# Standard insert 10app 15MeV 100MU
np.mean([1.065, 1.064])


Out[40]:
1.0645

In [41]:
key = '6.7x12cm_15MeV'

data = initialise(
    key=key, data=data,
    reference=1.064 * corrrection_ion,
    energy=15
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.074, 1.074],
    depth=30
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.079, 1.080],
    depth=29
)

data = new_reading(
    key=key, data=data,
    ionisation=np.array([1.082, 1.082]) * 99.1/98.8,
    depth=27 # Corrected from 28
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.012 | 1.2%
Inverse factor = 0.988 | -1.2%

In [42]:
key = '6.7x12cm_18MeV'

data = initialise(
    key=key, data=data,
    reference=1.0935,
    energy=18
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.105, 1.106],
    depth=30
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.108, 1.109],
    depth=29
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.012 | 1.2%
Inverse factor = 0.988 | -1.2%

In [43]:
# Standard insert 10app 15MeV 100MU
np.mean([1.063, 1.065])


Out[43]:
1.0640000000000001

In [44]:
# Standard insert 10app 18MeV 100MU
np.mean([1.094, 1.095])


Out[44]:
1.0945

In [45]:
key = '7.25cm_18MeV'

data = initialise(
    key=key, data=data,
    reference=1.0945,
    energy=18
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.095, 1.096],
    depth=30
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.001 | 0.1%
Inverse factor = 0.999 | -0.1%

In [46]:
key = '7.25cm_15MeV'

data = initialise(
    key=key, data=data,
    reference=1.065 * corrrection_ion,
    energy=15
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.064, 1.065],
    depth=30
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.068, 1.070],
    depth=29
)

data = new_reading(
    key=key, data=data,
    ionisation=np.array([1.073, 1.074])* 99.1/98.8,
    depth=27 # Corrected from 28
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.003 | 0.3%
Inverse factor = 0.997 | -0.3%

In [47]:
# Standard insert 10app 15MeV 100MU
np.mean([1.065, 1.065])


Out[47]:
1.0649999999999999

In [48]:
# Standard insert 10app 18MeV 100MU
np.mean([1.094, 1.095])


Out[48]:
1.0945

In [49]:
key = 'standard_insert_15MeV'

data = initialise(
    key=key, data=data,
    reference=1.065 * corrrection_ion,
    energy=15
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.065, 1.065],
    depth=30
)

data = new_reading(
    key=key, data=data,
    ionisation=[1.068, 1.068],
    depth=29
)

data = new_reading(
    key=key, data=data,
    ionisation=np.array([1.072, 1.073]) * 99.1/98.8,
    depth=27 # Corrected from 28
)

data[key]['factor'] = calc_and_display(**data[key])


Cutout factor = 1.002 | 0.2%
Inverse factor = 0.998 | -0.2%

In [50]:
np.array([1.072, 1.073]) * 99.1/98.8


Out[50]:
array([ 1.07525506,  1.0762581 ])

In [51]:
1.065 * corrrection_ion


Out[51]:
1.0736673448626652