Source code for irfpy.ica.flatfield

# -*- coding: utf-8 -*-
"""
Created on Sat Feb 21 12:13:37 2015

Generates flat images of ICA data to be used for data compression exercises
Default is to use data from 2015-03-06, PACC 3, with all decoder errors skipped.

@author: Martin Wieser
"""

# Make flat images for compression tests

import numpy as np

# %%


[docs]def flatten(orig, mode): """ Flatfield correct a orig_ionspectra based on instrument mode. Currently implemented only or a maximum binning mode in the order: 1) massbins, 2) sectors 3) high count rate cross talk """ return floor_subtract_fix( equilibrate_channels_sector_fix( equilibrate_channels_mass_fix(orig)) )
""" The good and the bad and the ugly sectors """ badM = [0, 24, 25, 28, 29, 30, 31] badS = [0, 13] uglyM = [4, 16] uglyS = [1, 2, 3] goodM = [i for i in range(32) if not (i in badM or i in uglyM)] goodS = [i for i in range(16) if not (i in badS or i in uglyS)]
[docs]def equilibrate_channels_mass_fix(orig): # throw away some elevation angles (we only want 8) # orig_ionspectra[:,:,:,0:8]=0.0 fourD = orig.copy() # # fourD[0,:,:,:] *= 0.0 fourD[1, :, :, :] *= 5.0 fourD[2, :, :, :] *= 0.5 fourD[15, :, :, :] *= 2.0 # do not use the mass bins below ignoreM = [0, 8, 24, 25, 28, 29, 30, 31] # the complement # low mass sensitiviy, correct scale = 1.0 fourD[:, :, ignoreM, :] *= scale cm = np.zeros((16, 32, 32)) cm[1, 2, 5] = 0.005063 cm[1, 2, 12] = 0.002074 cm[1, 4, 3] = 0.238288 cm[1, 4, 9] = 0.553288 cm[1, 4, 10] = 0.075397 cm[1, 4, 12] = 0.561876 cm[1, 4, 13] = 0.182571 cm[1, 4, 14] = 0.433376 cm[1, 4, 15] = 2.704632 cm[1, 4, 16] = 0.005091 cm[1, 4, 22] = 0.001871 cm[1, 5, 2] = 0.070675 cm[1, 5, 12] = 0.001759 cm[1, 5, 23] = 0.005268 cm[1, 6, 4] = 0.010665 cm[1, 6, 9] = 0.008101 cm[1, 6, 14] = 0.004162 cm[1, 6, 15] = 0.626914 cm[1, 7, 2] = 0.070762 cm[1, 7, 4] = 0.004664 cm[1, 7, 13] = 0.011035 cm[1, 7, 14] = 0.009301 cm[1, 7, 15] = 0.398082 cm[1, 9, 2] = 0.024278 cm[1, 9, 4] = 0.018179 cm[1, 9, 11] = 0.103957 cm[1, 9, 13] = 0.033353 cm[1, 9, 15] = 3.674628 cm[1, 9, 22] = 0.001622 cm[1, 10, 12] = 0.029386 cm[1, 10, 13] = 0.007697 cm[1, 10, 15] = 0.080682 cm[1, 10, 21] = 0.125147 cm[1, 11, 2] = 0.171331 cm[1, 11, 6] = 0.780075 cm[1, 11, 7] = 0.005223 cm[1, 11, 9] = 0.295461 cm[1, 11, 15] = 1.400348 cm[1, 11, 19] = 0.397628 cm[1, 12, 2] = 0.196105 cm[1, 12, 4] = 0.127265 cm[1, 12, 13] = 0.166861 cm[1, 12, 14] = 0.138725 cm[1, 12, 23] = 0.002537 cm[1, 13, 4] = 0.001892 cm[1, 13, 12] = 0.005820 cm[1, 13, 18] = 0.461107 cm[1, 14, 4] = 0.053494 cm[1, 14, 12] = 0.034358 cm[1, 14, 13] = 0.093491 cm[1, 14, 15] = 0.364376 cm[1, 14, 17] = 0.310024 cm[1, 16, 4] = 0.011516 cm[1, 16, 12] = 0.017573 cm[1, 16, 13] = 0.015824 cm[1, 16, 14] = 0.011029 cm[1, 16, 15] = 0.106281 cm[1, 16, 17] = 2.346942 cm[1, 16, 19] = 3.242183 cm[1, 16, 20] = 0.249739 cm[1, 16, 26] = 0.002139 cm[1, 18, 10] = 0.029679 cm[1, 18, 13] = 0.008710 cm[1, 18, 19] = 0.147506 cm[1, 19, 21] = 0.027232 cm[1, 19, 22] = 0.008335 cm[1, 20, 9] = 0.005110 cm[1, 20, 13] = 0.002364 cm[1, 20, 15] = 0.355221 cm[1, 20, 16] = 0.051453 cm[1, 20, 19] = 0.996460 cm[1, 20, 26] = 0.002135 cm[1, 21, 3] = 0.069369 cm[1, 21, 5] = 0.025851 cm[1, 21, 12] = 0.005601 cm[1, 21, 13] = 0.007304 cm[1, 21, 14] = 0.007361 cm[1, 21, 17] = 0.003099 cm[1, 22, 9] = 0.016048 cm[1, 22, 19] = 0.325623 cm[1, 22, 21] = 0.005337 cm[1, 22, 23] = 0.011592 cm[1, 23, 5] = 0.104911 cm[1, 23, 21] = 0.227336 cm[1, 23, 22] = 0.607640 cm[1, 23, 26] = 0.010100 cm[1, 26, 12] = 0.042294 cm[1, 26, 13] = 0.074018 cm[1, 26, 16] = 0.088748 cm[1, 26, 23] = 0.065834 cm[1, 26, 27] = 0.026079 cm[1, 27, 6] = 0.066856 cm[1, 27, 26] = 1.262815 cm[2, 1, 2] = 0.088940 cm[2, 1, 3] = 0.008810 cm[2, 1, 6] = 0.025542 cm[2, 1, 15] = 0.021285 cm[2, 2, 18] = 0.007435 cm[2, 2, 23] = 0.002441 cm[2, 4, 1] = 0.116368 cm[2, 4, 2] = 9.681919 cm[2, 4, 3] = 0.426937 cm[2, 4, 12] = 2.147638 cm[2, 4, 13] = 1.066578 cm[2, 4, 14] = 0.639978 cm[2, 4, 16] = 0.013420 cm[2, 5, 21] = 0.003886 cm[2, 6, 12] = 0.004682 cm[2, 6, 20] = 0.006010 cm[2, 7, 2] = 0.611920 cm[2, 7, 3] = 0.016894 cm[2, 7, 11] = 0.001175 cm[2, 9, 6] = 0.367640 cm[2, 9, 10] = 0.082089 cm[2, 10, 9] = 0.369619 cm[2, 11, 3] = 0.323081 cm[2, 11, 7] = 0.048939 cm[2, 11, 12] = 0.010029 cm[2, 11, 18] = 0.096126 cm[2, 12, 4] = 0.061808 cm[2, 12, 13] = 0.807556 cm[2, 13, 1] = 0.015634 cm[2, 14, 13] = 0.615546 cm[2, 14, 16] = 0.026647 cm[2, 14, 17] = 0.498059 cm[2, 14, 18] = 0.662792 cm[2, 15, 2] = 0.003472 cm[2, 15, 3] = 0.001183 cm[2, 16, 14] = 0.016202 cm[2, 16, 17] = 1.958951 cm[2, 16, 18] = 1.276153 cm[2, 16, 19] = 1.013562 cm[2, 16, 20] = 0.475113 cm[2, 16, 22] = 0.040393 cm[2, 16, 23] = 0.020079 cm[2, 16, 27] = 0.009674 cm[2, 18, 2] = 0.032099 cm[2, 18, 21] = 0.010202 cm[2, 19, 7] = 0.001771 cm[2, 19, 12] = 0.010558 cm[2, 19, 13] = 0.009788 cm[2, 19, 16] = 0.004261 cm[2, 20, 11] = 0.011898 cm[2, 20, 16] = 0.042048 cm[2, 20, 21] = 0.281037 cm[2, 20, 22] = 0.011330 cm[2, 20, 23] = 0.051690 cm[2, 20, 26] = 0.003660 cm[2, 21, 12] = 0.006379 cm[2, 22, 21] = 1.655525 cm[2, 23, 21] = 1.672916 cm[2, 23, 22] = 0.269070 cm[2, 26, 1] = 0.927100 cm[2, 26, 15] = 0.039431 cm[2, 26, 27] = 0.214946 cm[2, 27, 2] = 2.489060 cm[2, 27, 3] = 0.113454 cm[2, 27, 4] = 0.008388 cm[2, 27, 26] = 0.660794 cm[3, 1, 2] = 0.098712 cm[3, 1, 3] = 0.585882 cm[3, 1, 13] = 0.004250 cm[3, 1, 19] = 0.208524 cm[3, 1, 27] = 0.001018 cm[3, 2, 7] = 0.003937 cm[3, 2, 9] = 0.001996 cm[3, 2, 14] = 0.002121 cm[3, 3, 1] = 0.010604 cm[3, 4, 3] = 1.571718 cm[3, 4, 5] = 0.938978 cm[3, 4, 9] = 0.028719 cm[3, 4, 12] = 0.033579 cm[3, 4, 13] = 2.840332 cm[3, 4, 14] = 0.374463 cm[3, 4, 20] = 0.060050 cm[3, 5, 2] = 0.008790 cm[3, 5, 3] = 0.001238 cm[3, 5, 21] = 0.003970 cm[3, 6, 2] = 0.062282 cm[3, 6, 3] = 0.058136 cm[3, 7, 1] = 0.015639 cm[3, 7, 13] = 0.012037 cm[3, 7, 14] = 0.009638 cm[3, 9, 7] = 0.306142 cm[3, 10, 4] = 0.019259 cm[3, 10, 9] = 0.010327 cm[3, 11, 2] = 0.071775 cm[3, 11, 9] = 0.446245 cm[3, 11, 10] = 0.098158 cm[3, 11, 19] = 1.643287 cm[3, 12, 13] = 0.611306 cm[3, 12, 17] = 0.773228 cm[3, 12, 20] = 0.053932 cm[3, 13, 4] = 0.001632 cm[3, 14, 4] = 0.020607 cm[3, 14, 13] = 0.719719 cm[3, 14, 21] = 0.434981 cm[3, 16, 1] = 0.169819 cm[3, 16, 2] = 0.018720 cm[3, 16, 13] = 0.131924 cm[3, 16, 17] = 0.627159 cm[3, 16, 19] = 0.505295 cm[3, 16, 23] = 0.033527 cm[3, 16, 26] = 0.009020 cm[3, 17, 18] = 0.189902 cm[3, 17, 20] = 0.010245 cm[3, 18, 3] = 0.046032 cm[3, 18, 13] = 0.002937 cm[3, 18, 20] = 0.002644 cm[3, 19, 14] = 0.003631 cm[3, 19, 15] = 0.274782 cm[3, 19, 18] = 0.078634 cm[3, 19, 21] = 0.256249 cm[3, 20, 17] = 0.063898 cm[3, 20, 18] = 0.181823 cm[3, 20, 23] = 0.038573 cm[3, 20, 26] = 0.004711 cm[3, 21, 1] = 0.005898 cm[3, 21, 3] = 0.006774 cm[3, 21, 14] = 0.004437 cm[3, 21, 19] = 0.169485 cm[3, 22, 2] = 0.009172 cm[3, 22, 13] = 0.014949 cm[3, 22, 17] = 0.072333 cm[3, 22, 23] = 0.001259 cm[3, 23, 22] = 0.160926 cm[3, 26, 20] = 7.775727 cm[3, 26, 21] = 3.354678 cm[3, 26, 27] = 0.270921 cm[3, 27, 1] = 1.889403 cm[3, 27, 3] = 14.925642 cm[3, 27, 26] = 0.486981 cm[4, 1, 3] = 0.252774 cm[4, 1, 4] = 0.001367 cm[4, 1, 13] = 0.002008 cm[4, 1, 14] = 0.026237 cm[4, 1, 15] = 0.128587 cm[4, 1, 18] = 0.008251 cm[4, 1, 27] = 0.012367 cm[4, 2, 6] = 0.003286 cm[4, 2, 13] = 0.011081 cm[4, 2, 18] = 0.009086 cm[4, 2, 21] = 0.032111 cm[4, 2, 23] = 0.003571 cm[4, 3, 1] = 0.002736 cm[4, 4, 1] = 0.315079 cm[4, 4, 6] = 0.109125 cm[4, 4, 7] = 0.233569 cm[4, 4, 9] = 0.144354 cm[4, 4, 11] = 0.003581 cm[4, 4, 12] = 0.113965 cm[4, 4, 13] = 0.858900 cm[4, 4, 15] = 0.098392 cm[4, 4, 20] = 0.171465 cm[4, 4, 22] = 0.180749 cm[4, 5, 3] = 0.004239 cm[4, 6, 2] = 0.195518 cm[4, 7, 12] = 0.004507 cm[4, 7, 17] = 0.120015 cm[4, 7, 23] = 0.003589 cm[4, 9, 7] = 0.083908 cm[4, 9, 10] = 0.095044 cm[4, 9, 23] = 0.007613 cm[4, 10, 9] = 0.279539 cm[4, 11, 14] = 0.872435 cm[4, 11, 18] = 0.696378 cm[4, 12, 13] = 1.143370 cm[4, 13, 2] = 0.001128 cm[4, 14, 11] = 0.072963 cm[4, 14, 23] = 0.008225 cm[4, 14, 26] = 0.002687 cm[4, 15, 3] = 0.001156 cm[4, 16, 1] = 0.013923 cm[4, 16, 2] = 0.039387 cm[4, 16, 7] = 0.062638 cm[4, 16, 10] = 0.010105 cm[4, 16, 11] = 0.005979 cm[4, 16, 17] = 0.142116 cm[4, 16, 19] = 0.370746 cm[4, 16, 23] = 0.011657 cm[4, 16, 26] = 0.015808 cm[4, 17, 13] = 0.005671 cm[4, 18, 2] = 0.056717 cm[4, 18, 13] = 0.107563 cm[4, 19, 13] = 0.004068 cm[4, 19, 17] = 0.012046 cm[4, 20, 3] = 0.021613 cm[4, 20, 12] = 0.030153 cm[4, 20, 23] = 0.026612 cm[4, 21, 2] = 0.027527 cm[4, 21, 17] = 0.015372 cm[4, 22, 11] = 0.003643 cm[4, 22, 12] = 0.001157 cm[4, 22, 17] = 0.031554 cm[4, 22, 20] = 0.013654 cm[4, 23, 22] = 0.153619 cm[4, 26, 21] = 0.734434 cm[4, 26, 23] = 0.331197 cm[4, 26, 27] = 0.569574 cm[4, 27, 1] = 1.015817 cm[4, 27, 26] = 0.342586 cm[5, 1, 2] = 0.009944 cm[5, 1, 3] = 0.007453 cm[5, 1, 7] = 0.018626 cm[5, 1, 13] = 0.006005 cm[5, 1, 14] = 0.006733 cm[5, 1, 23] = 0.047809 cm[5, 1, 26] = 0.002413 cm[5, 1, 27] = 0.008429 cm[5, 2, 22] = 0.002385 cm[5, 4, 10] = 0.245261 cm[5, 4, 12] = 0.270363 cm[5, 4, 13] = 0.279497 cm[5, 4, 14] = 0.179340 cm[5, 4, 18] = 0.081723 cm[5, 4, 23] = 0.032074 cm[5, 4, 26] = 0.009235 cm[5, 6, 22] = 0.001048 cm[5, 9, 3] = 0.007766 cm[5, 9, 10] = 0.114088 cm[5, 9, 12] = 0.009539 cm[5, 9, 13] = 0.004729 cm[5, 9, 21] = 0.019882 cm[5, 10, 9] = 0.024052 cm[5, 10, 23] = 0.003565 cm[5, 11, 3] = 2.069833 cm[5, 11, 7] = 0.121124 cm[5, 11, 10] = 0.177461 cm[5, 12, 4] = 0.085272 cm[5, 12, 13] = 0.426989 cm[5, 13, 14] = 0.123333 cm[5, 14, 1] = 0.066359 cm[5, 14, 15] = 0.079249 cm[5, 14, 19] = 0.151522 cm[5, 14, 20] = 0.024124 cm[5, 14, 22] = 0.046961 cm[5, 16, 1] = 0.112405 cm[5, 16, 12] = 0.001349 cm[5, 16, 13] = 0.001113 cm[5, 16, 17] = 0.626995 cm[5, 16, 18] = 0.131794 cm[5, 16, 19] = 0.055962 cm[5, 16, 26] = 0.033710 cm[5, 17, 13] = 0.002049 cm[5, 18, 22] = 0.042393 cm[5, 20, 3] = 0.026953 cm[5, 20, 10] = 0.003151 cm[5, 20, 14] = 0.006848 cm[5, 20, 19] = 0.121534 cm[5, 20, 23] = 0.089692 cm[5, 21, 19] = 0.003721 cm[5, 22, 10] = 0.003672 cm[5, 22, 14] = 0.041843 cm[5, 23, 12] = 0.002639 cm[5, 26, 23] = 0.355693 cm[5, 26, 27] = 0.474612 cm[5, 27, 11] = 0.001841 cm[5, 27, 26] = 0.408945 cm[6, 1, 5] = 0.053775 cm[6, 1, 11] = 0.010563 cm[6, 1, 26] = 0.013493 cm[6, 2, 22] = 0.006901 cm[6, 4, 6] = 0.640594 cm[6, 4, 7] = 0.116141 cm[6, 4, 9] = 0.169969 cm[6, 4, 12] = 0.340401 cm[6, 4, 13] = 0.148753 cm[6, 4, 22] = 0.013011 cm[6, 4, 27] = 0.010248 cm[6, 7, 27] = 0.001099 cm[6, 9, 7] = 0.263361 cm[6, 10, 9] = 0.147942 cm[6, 11, 3] = 0.781023 cm[6, 11, 10] = 0.049301 cm[6, 12, 11] = 0.056515 cm[6, 12, 13] = 0.426679 cm[6, 13, 12] = 0.047134 cm[6, 14, 5] = 0.077748 cm[6, 14, 21] = 0.019271 cm[6, 14, 23] = 0.002451 cm[6, 14, 26] = 0.004022 cm[6, 16, 1] = 0.175332 cm[6, 16, 9] = 0.005758 cm[6, 16, 19] = 0.542100 cm[6, 16, 20] = 0.348188 cm[6, 16, 22] = 0.011406 cm[6, 16, 23] = 0.026908 cm[6, 16, 27] = 0.021080 cm[6, 18, 13] = 0.003031 cm[6, 18, 22] = 0.016395 cm[6, 19, 9] = 0.001311 cm[6, 20, 12] = 0.005533 cm[6, 20, 18] = 0.053496 cm[6, 20, 23] = 0.050915 cm[6, 21, 5] = 0.008118 cm[6, 22, 12] = 0.001552 cm[6, 22, 21] = 0.063181 cm[6, 23, 22] = 0.076254 cm[6, 26, 27] = 0.561947 cm[6, 27, 12] = 0.039607 cm[6, 27, 13] = 0.044283 cm[6, 27, 22] = 0.028208 cm[6, 27, 26] = 0.282767 cm[7, 1, 11] = 0.003941 cm[7, 1, 12] = 0.006781 cm[7, 1, 13] = 0.001920 cm[7, 1, 14] = 0.009895 cm[7, 1, 26] = 0.013144 cm[7, 4, 3] = 0.043933 cm[7, 4, 5] = 0.345771 cm[7, 4, 7] = 0.279156 cm[7, 4, 12] = 0.262939 cm[7, 4, 13] = 0.159012 cm[7, 4, 14] = 0.092426 cm[7, 4, 15] = 0.037780 cm[7, 4, 16] = 0.029632 cm[7, 4, 19] = 0.001733 cm[7, 6, 2] = 0.031304 cm[7, 6, 23] = 0.001400 cm[7, 9, 7] = 0.180501 cm[7, 9, 10] = 0.002413 cm[7, 9, 13] = 0.012131 cm[7, 10, 7] = 0.005891 cm[7, 10, 9] = 0.006894 cm[7, 11, 10] = 0.153738 cm[7, 12, 4] = 0.242095 cm[7, 12, 13] = 0.045997 cm[7, 13, 12] = 0.047267 cm[7, 14, 13] = 0.115994 cm[7, 14, 15] = 0.932918 cm[7, 16, 17] = 0.070850 cm[7, 16, 18] = 0.159247 cm[7, 16, 19] = 0.237005 cm[7, 16, 23] = 0.028207 cm[7, 16, 26] = 0.017635 cm[7, 17, 3] = 0.016868 cm[7, 18, 23] = 0.006484 cm[7, 19, 17] = 0.014212 cm[7, 20, 10] = 0.001383 cm[7, 20, 17] = 0.008236 cm[7, 20, 19] = 0.128759 cm[7, 20, 23] = 0.027628 cm[7, 22, 5] = 0.002323 cm[7, 22, 12] = 0.001336 cm[7, 22, 23] = 0.002171 cm[7, 23, 22] = 0.070233 cm[7, 26, 27] = 0.834440 cm[7, 27, 3] = 0.144445 cm[7, 27, 5] = 0.011496 cm[7, 27, 26] = 0.174734 cm[8, 1, 11] = 0.001326 cm[8, 1, 12] = 0.009361 cm[8, 1, 13] = 0.002208 cm[8, 1, 23] = 0.002471 cm[8, 1, 26] = 0.012097 cm[8, 1, 27] = 0.001094 cm[8, 2, 27] = 0.001681 cm[8, 4, 5] = 0.655985 cm[8, 4, 6] = 0.042618 cm[8, 4, 7] = 0.112965 cm[8, 4, 11] = 0.021127 cm[8, 4, 12] = 0.200519 cm[8, 4, 13] = 0.103574 cm[8, 4, 14] = 0.160843 cm[8, 7, 2] = 0.154419 cm[8, 9, 2] = 0.318931 cm[8, 9, 6] = 0.132853 cm[8, 9, 7] = 0.002731 cm[8, 10, 9] = 0.113597 cm[8, 11, 10] = 0.114073 cm[8, 12, 11] = 0.149874 cm[8, 12, 13] = 0.233691 cm[8, 13, 12] = 0.053285 cm[8, 14, 17] = 0.775607 cm[8, 16, 17] = 0.257219 cm[8, 16, 19] = 0.294214 cm[8, 16, 22] = 0.026052 cm[8, 16, 23] = 0.028711 cm[8, 16, 26] = 0.008945 cm[8, 18, 2] = 0.001910 cm[8, 18, 19] = 0.003921 cm[8, 18, 23] = 0.001107 cm[8, 19, 5] = 0.001952 cm[8, 20, 11] = 0.001209 cm[8, 20, 18] = 0.083470 cm[8, 20, 27] = 0.018338 cm[8, 21, 18] = 0.015126 cm[8, 22, 21] = 0.214845 cm[8, 22, 23] = 0.008986 cm[8, 23, 22] = 0.350997 cm[8, 26, 27] = 0.438223 cm[8, 27, 1] = 0.261403 cm[8, 27, 2] = 0.271815 cm[8, 27, 13] = 0.013258 cm[8, 27, 26] = 0.206657 cm[9, 1, 11] = 0.002644 cm[9, 1, 13] = 0.006952 cm[9, 1, 23] = 0.001681 cm[9, 1, 26] = 0.011808 cm[9, 2, 17] = 0.001401 cm[9, 2, 23] = 0.003512 cm[9, 4, 5] = 0.643376 cm[9, 4, 6] = 0.359055 cm[9, 4, 9] = 0.024539 cm[9, 4, 12] = 0.279882 cm[9, 4, 13] = 0.178026 cm[9, 4, 14] = 0.080080 cm[9, 4, 15] = 0.027287 cm[9, 4, 16] = 0.055598 cm[9, 5, 27] = 0.001498 cm[9, 6, 17] = 0.001218 cm[9, 7, 2] = 0.377818 cm[9, 9, 7] = 0.132086 cm[9, 9, 10] = 0.007817 cm[9, 10, 2] = 0.469296 cm[9, 10, 6] = 0.031108 cm[9, 11, 2] = 0.304094 cm[9, 11, 10] = 0.066726 cm[9, 12, 11] = 0.212191 cm[9, 12, 13] = 0.102270 cm[9, 12, 17] = 0.024531 cm[9, 13, 12] = 0.037840 cm[9, 14, 13] = 0.184844 cm[9, 14, 15] = 1.187580 cm[9, 16, 2] = 0.010718 cm[9, 16, 17] = 0.292683 cm[9, 16, 18] = 0.243971 cm[9, 16, 19] = 0.319733 cm[9, 16, 23] = 0.044634 cm[9, 16, 26] = 0.008784 cm[9, 18, 3] = 0.004432 cm[9, 18, 17] = 0.004087 cm[9, 19, 17] = 0.014639 cm[9, 20, 1] = 0.103854 cm[9, 20, 12] = 0.001099 cm[9, 20, 18] = 0.042537 cm[9, 20, 23] = 0.004311 cm[9, 20, 26] = 0.013378 cm[9, 21, 7] = 0.001404 cm[9, 22, 21] = 0.230084 cm[9, 22, 23] = 0.006451 cm[9, 23, 21] = 0.274376 cm[9, 23, 22] = 0.102181 cm[9, 26, 27] = 0.575109 cm[9, 27, 2] = 0.628319 cm[9, 27, 3] = 0.007516 cm[9, 27, 22] = 0.040589 cm[9, 27, 26] = 0.249858 cm[10, 1, 3] = 0.031960 cm[10, 1, 6] = 0.007992 cm[10, 1, 26] = 0.017119 cm[10, 1, 27] = 0.001458 cm[10, 2, 1] = 0.107677 cm[10, 2, 22] = 0.003824 cm[10, 4, 3] = 0.519109 cm[10, 4, 5] = 0.301216 cm[10, 4, 6] = 0.314628 cm[10, 4, 7] = 0.031018 cm[10, 4, 9] = 0.082838 cm[10, 4, 10] = 0.023921 cm[10, 4, 11] = 0.050158 cm[10, 4, 12] = 0.229547 cm[10, 4, 13] = 0.141817 cm[10, 4, 14] = 0.118875 cm[10, 4, 15] = 0.067198 cm[10, 4, 27] = 0.005788 cm[10, 6, 23] = 0.001145 cm[10, 7, 1] = 0.034154 cm[10, 7, 2] = 0.283686 cm[10, 9, 7] = 0.318559 cm[10, 9, 10] = 0.029517 cm[10, 10, 9] = 0.029960 cm[10, 10, 23] = 0.001426 cm[10, 11, 10] = 0.225865 cm[10, 12, 11] = 0.087827 cm[10, 12, 13] = 0.489280 cm[10, 12, 23] = 0.004303 cm[10, 12, 27] = 0.005558 cm[10, 13, 12] = 0.020995 cm[10, 14, 17] = 0.113361 cm[10, 14, 18] = 0.124969 cm[10, 14, 19] = 1.084662 cm[10, 16, 1] = 0.023920 cm[10, 16, 17] = 0.070271 cm[10, 16, 18] = 0.333445 cm[10, 16, 19] = 0.181863 cm[10, 16, 21] = 0.075222 cm[10, 16, 23] = 0.029433 cm[10, 16, 27] = 0.010966 cm[10, 18, 7] = 0.001149 cm[10, 18, 20] = 0.003283 cm[10, 18, 23] = 0.002992 cm[10, 18, 26] = 0.006748 cm[10, 19, 1] = 0.002487 cm[10, 19, 15] = 0.002996 cm[10, 20, 19] = 0.195719 cm[10, 20, 21] = 0.070364 cm[10, 20, 27] = 0.015980 cm[10, 21, 20] = 0.014356 cm[10, 22, 21] = 0.275708 cm[10, 22, 23] = 0.101441 cm[10, 23, 22] = 0.066857 cm[10, 26, 27] = 0.341554 cm[10, 27, 1] = 0.153647 cm[10, 27, 7] = 0.008601 cm[10, 27, 9] = 0.004553 cm[10, 27, 12] = 0.004465 cm[10, 27, 26] = 0.348109 cm[11, 1, 12] = 0.003602 cm[11, 1, 23] = 0.002444 cm[11, 1, 26] = 0.012541 cm[11, 2, 21] = 0.007743 cm[11, 2, 22] = 0.006088 cm[11, 4, 2] = 0.042058 cm[11, 4, 3] = 0.120295 cm[11, 4, 5] = 0.658995 cm[11, 4, 6] = 0.185463 cm[11, 4, 7] = 0.131649 cm[11, 4, 10] = 0.017580 cm[11, 4, 12] = 0.290820 cm[11, 4, 13] = 0.135154 cm[11, 4, 14] = 0.102510 cm[11, 4, 16] = 0.038055 cm[11, 5, 21] = 0.002164 cm[11, 6, 14] = 0.003257 cm[11, 7, 3] = 0.211310 cm[11, 9, 7] = 0.110945 cm[11, 9, 10] = 0.154775 cm[11, 9, 13] = 0.008980 cm[11, 10, 2] = 0.067307 cm[11, 10, 7] = 0.010175 cm[11, 11, 10] = 0.161493 cm[11, 12, 4] = 0.003356 cm[11, 12, 11] = 0.257434 cm[11, 12, 13] = 0.105319 cm[11, 12, 20] = 0.086696 cm[11, 13, 1] = 0.007148 cm[11, 13, 3] = 0.004728 cm[11, 13, 12] = 0.027653 cm[11, 14, 13] = 0.202633 cm[11, 14, 15] = 0.516969 cm[11, 16, 2] = 0.007892 cm[11, 16, 6] = 0.001183 cm[11, 16, 18] = 0.286397 cm[11, 16, 20] = 0.404302 cm[11, 16, 21] = 0.208268 cm[11, 16, 26] = 0.007178 cm[11, 16, 27] = 0.002633 cm[11, 17, 3] = 0.003267 cm[11, 18, 1] = 0.001551 cm[11, 18, 14] = 0.001752 cm[11, 18, 23] = 0.001698 cm[11, 18, 26] = 0.001713 cm[11, 19, 15] = 0.010921 cm[11, 19, 17] = 0.018682 cm[11, 20, 1] = 0.026734 cm[11, 20, 12] = 0.001438 cm[11, 20, 13] = 0.001131 cm[11, 20, 18] = 0.030100 cm[11, 20, 23] = 0.014498 cm[11, 20, 26] = 0.006928 cm[11, 22, 21] = 0.800740 cm[11, 23, 22] = 0.333796 cm[11, 26, 27] = 0.608835 cm[11, 27, 2] = 0.223010 cm[11, 27, 3] = 0.026377 cm[11, 27, 26] = 0.219949 cm[12, 1, 6] = 0.006755 cm[12, 1, 15] = 0.015966 cm[12, 1, 16] = 0.112777 cm[12, 1, 17] = 0.188619 cm[12, 1, 19] = 0.011367 cm[12, 1, 22] = 0.041260 cm[12, 1, 26] = 0.001713 cm[12, 1, 27] = 0.028212 cm[12, 2, 3] = 0.013660 cm[12, 3, 2] = 0.002509 cm[12, 4, 5] = 0.525210 cm[12, 4, 6] = 0.653881 cm[12, 4, 11] = 0.034262 cm[12, 4, 12] = 0.256997 cm[12, 4, 13] = 0.225108 cm[12, 4, 14] = 0.009333 cm[12, 6, 3] = 0.008629 cm[12, 7, 3] = 0.033870 cm[12, 7, 5] = 0.048982 cm[12, 7, 23] = 0.003778 cm[12, 9, 7] = 0.200896 cm[12, 9, 10] = 0.101093 cm[12, 9, 11] = 0.009888 cm[12, 10, 9] = 0.039093 cm[12, 11, 10] = 0.300330 cm[12, 12, 4] = 0.030544 cm[12, 12, 11] = 0.075345 cm[12, 12, 13] = 0.277440 cm[12, 12, 15] = 0.107349 cm[12, 13, 12] = 0.029594 cm[12, 13, 14] = 0.290054 cm[12, 14, 1] = 0.125331 cm[12, 14, 6] = 0.006447 cm[12, 14, 10] = 0.006120 cm[12, 14, 16] = 0.017301 cm[12, 14, 20] = 0.009301 cm[12, 14, 27] = 0.005011 cm[12, 16, 1] = 0.034817 cm[12, 16, 9] = 0.003858 cm[12, 16, 20] = 0.586045 cm[12, 16, 21] = 0.171525 cm[12, 16, 22] = 0.007014 cm[12, 16, 26] = 0.010344 cm[12, 17, 5] = 0.002888 cm[12, 18, 2] = 0.003071 cm[12, 18, 14] = 0.019578 cm[12, 19, 10] = 0.001536 cm[12, 20, 16] = 0.062030 cm[12, 20, 17] = 0.043641 cm[12, 20, 23] = 0.025971 cm[12, 20, 27] = 0.005737 cm[12, 21, 2] = 0.001083 cm[12, 22, 3] = 0.012644 cm[12, 22, 21] = 0.012191 cm[12, 23, 22] = 0.967597 cm[12, 26, 27] = 0.642668 cm[12, 27, 3] = 0.300013 cm[12, 27, 26] = 0.243444 cm[14, 1, 3] = 0.237782 cm[14, 1, 17] = 0.014184 cm[14, 1, 19] = 0.623685 cm[14, 1, 21] = 0.121488 cm[14, 1, 22] = 0.524491 cm[14, 1, 27] = 0.001593 cm[14, 2, 13] = 0.003539 cm[14, 2, 18] = 0.303729 cm[14, 2, 20] = 0.323826 cm[14, 3, 11] = 0.005293 cm[14, 4, 7] = 0.410192 cm[14, 4, 9] = 0.189833 cm[14, 4, 12] = 0.359577 cm[14, 4, 13] = 0.014629 cm[14, 4, 19] = 0.584444 cm[14, 4, 22] = 0.286941 cm[14, 4, 27] = 0.005057 cm[14, 5, 13] = 0.004077 cm[14, 6, 22] = 0.076208 cm[14, 7, 3] = 0.025437 cm[14, 7, 15] = 0.219091 cm[14, 7, 19] = 0.255779 cm[14, 7, 23] = 0.014748 cm[14, 9, 10] = 0.266194 cm[14, 10, 9] = 0.310990 cm[14, 10, 11] = 0.097388 cm[14, 11, 12] = 0.008521 cm[14, 11, 13] = 0.029543 cm[14, 12, 11] = 0.012496 cm[14, 12, 13] = 0.025959 cm[14, 12, 22] = 0.049498 cm[14, 12, 26] = 0.003114 cm[14, 13, 12] = 0.006623 cm[14, 13, 15] = 0.042051 cm[14, 14, 1] = 0.009954 cm[14, 14, 11] = 0.030074 cm[14, 14, 17] = 0.029072 cm[14, 14, 18] = 0.023749 cm[14, 14, 19] = 0.007663 cm[14, 14, 21] = 0.232364 cm[14, 14, 22] = 0.177464 cm[14, 15, 13] = 0.015727 cm[14, 16, 6] = 0.023293 cm[14, 16, 13] = 0.016776 cm[14, 16, 18] = 0.409409 cm[14, 16, 19] = 0.008303 cm[14, 16, 20] = 0.828675 cm[14, 16, 26] = 0.005417 cm[14, 17, 11] = 0.008461 cm[14, 17, 15] = 0.044518 cm[14, 18, 11] = 0.002507 cm[14, 18, 12] = 0.009211 cm[14, 18, 26] = 0.001023 cm[14, 19, 1] = 0.010897 cm[14, 19, 7] = 0.005562 cm[14, 19, 15] = 0.136652 cm[14, 19, 23] = 0.001121 cm[14, 20, 12] = 0.018371 cm[14, 20, 18] = 0.005428 cm[14, 20, 26] = 0.002494 cm[14, 21, 18] = 0.066642 cm[14, 22, 10] = 0.004425 cm[14, 23, 12] = 0.004796 cm[14, 26, 12] = 0.018374 cm[14, 26, 18] = 0.739695 cm[14, 26, 21] = 1.162752 cm[14, 26, 27] = 0.171000 cm[14, 27, 22] = 1.324751 cm[14, 27, 23] = 2.581449 cm[14, 27, 26] = 0.723556 cm[15, 1, 17] = 0.057904 cm[15, 1, 19] = 0.160842 cm[15, 1, 22] = 0.445809 cm[15, 1, 26] = 0.028683 cm[15, 2, 23] = 0.806548 cm[15, 3, 19] = 0.004986 cm[15, 3, 21] = 0.003374 cm[15, 3, 22] = 0.001644 cm[15, 4, 2] = 0.248859 cm[15, 4, 6] = 0.353307 cm[15, 4, 10] = 0.134618 cm[15, 4, 11] = 0.087050 cm[15, 4, 14] = 0.172968 cm[15, 4, 19] = 0.701431 cm[15, 4, 20] = 0.057055 cm[15, 5, 21] = 0.003228 cm[15, 5, 22] = 0.024075 cm[15, 5, 23] = 0.079888 cm[15, 6, 3] = 0.134659 cm[15, 6, 13] = 0.010310 cm[15, 6, 21] = 0.050294 cm[15, 7, 1] = 0.012064 cm[15, 7, 2] = 0.034244 cm[15, 7, 17] = 0.072636 cm[15, 7, 22] = 0.015029 cm[15, 7, 26] = 0.003918 cm[15, 9, 12] = 0.077171 cm[15, 9, 13] = 0.471056 cm[15, 9, 15] = 0.201743 cm[15, 9, 19] = 0.370111 cm[15, 9, 20] = 0.053999 cm[15, 10, 9] = 0.061457 cm[15, 11, 6] = 0.018471 cm[15, 11, 9] = 0.275961 cm[15, 11, 10] = 0.052987 cm[15, 11, 13] = 0.282151 cm[15, 11, 15] = 0.261504 cm[15, 12, 13] = 0.550811 cm[15, 12, 14] = 0.246324 cm[15, 12, 21] = 0.324175 cm[15, 13, 20] = 0.066948 cm[15, 14, 2] = 0.055558 cm[15, 14, 17] = 0.148994 cm[15, 14, 21] = 0.289685 cm[15, 14, 23] = 0.043541 cm[15, 15, 12] = 0.002864 cm[15, 15, 13] = 0.164910 cm[15, 15, 19] = 0.025136 cm[15, 16, 10] = 0.012749 cm[15, 16, 18] = 0.081054 cm[15, 16, 22] = 0.049910 cm[15, 16, 23] = 0.230970 cm[15, 16, 27] = 0.019093 cm[15, 17, 3] = 0.032512 cm[15, 17, 21] = 0.007600 cm[15, 17, 22] = 0.076131 cm[15, 18, 7] = 0.014786 cm[15, 18, 16] = 0.021651 cm[15, 18, 21] = 0.003055 cm[15, 19, 3] = 0.035347 cm[15, 19, 4] = 0.016224 cm[15, 19, 20] = 0.055923 cm[15, 19, 21] = 0.031085 cm[15, 20, 2] = 0.053021 cm[15, 20, 13] = 0.004732 cm[15, 20, 22] = 0.013015 cm[15, 20, 23] = 0.002848 cm[15, 20, 27] = 0.001643 cm[15, 21, 3] = 0.002921 cm[15, 21, 19] = 0.003019 cm[15, 21, 23] = 0.187706 cm[15, 22, 1] = 0.082053 cm[15, 22, 13] = 0.068393 cm[15, 22, 14] = 0.008388 cm[15, 22, 15] = 0.011650 cm[15, 22, 19] = 0.027996 cm[15, 22, 20] = 0.062646 cm[15, 22, 21] = 0.001242 cm[15, 23, 16] = 0.004335 cm[15, 23, 21] = 0.001800 cm[15, 26, 1] = 0.745231 cm[15, 26, 2] = 1.376496 cm[15, 26, 3] = 0.723570 cm[15, 26, 27] = 0.013155 cm[15, 27, 20] = 0.984194 cm[15, 27, 22] = 1.285412 cm[15, 27, 26] = 0.981969 for s in range(16): for m in range(32): for k in range(32): if cm[s, m, k] > 0: fourD[s, :, m, :] -= cm[s, m, k] * orig[s, :, k, :] # fix gaps in mass channels fourD[:, :, 8, :] = 0.5 * (fourD[:, :, 7, :] + fourD[:, :, 9, :]) return fourD
[docs]def equilibrate_channels_sector_fix(orig): fourD = orig.copy() # *********************** cross tals sectors ************************* cs = np.zeros((16, 32, 16)) # cs[0,1,11] = 0.002849 # cs[0,1,5] = 0.024951 # cs[0,1,6] = 0.065842 # cs[0,1,7] = 0.040755 # cs[0,1,8] = 0.044102 # cs[0,1,9] = 0.087580 # cs[0,10,10] = 0.016277 # cs[0,10,7] = 0.003480 # cs[0,10,8] = 0.069541 # cs[0,10,9] = 0.038121 # cs[0,11,15] = 0.148996 # cs[0,11,7] = 0.009633 # cs[0,11,8] = 0.087498 # cs[0,11,9] = 0.022429 # cs[0,12,10] = 0.185319 # cs[0,12,15] = 0.217696 # cs[0,12,6] = 0.005901 # cs[0,12,7] = 0.033857 # cs[0,12,8] = 0.060200 # cs[0,13,12] = 0.142595 # cs[0,13,14] = 0.739171 # cs[0,13,6] = 0.043568 # cs[0,13,7] = 0.023282 # cs[0,13,8] = 0.056872 # cs[0,13,9] = 0.004940 # cs[0,14,10] = 0.083718 # cs[0,14,11] = 0.029030 # cs[0,14,15] = 0.450537 # cs[0,14,7] = 0.064363 # cs[0,14,8] = 0.112151 # cs[0,14,9] = 0.011792 # cs[0,15,15] = 0.134048 # cs[0,15,8] = 0.056327 # cs[0,16,11] = 0.015661 # cs[0,16,12] = 1.955543 # cs[0,16,15] = 0.529250 # cs[0,16,7] = 0.161448 # cs[0,16,8] = 0.167080 # cs[0,17,10] = 0.005552 # cs[0,17,15] = 0.049521 # cs[0,17,5] = 0.028747 # cs[0,17,7] = 0.023575 # cs[0,17,8] = 0.080650 # cs[0,18,10] = 0.005068 # cs[0,18,15] = 1.379437 # cs[0,18,5] = 0.039897 # cs[0,18,7] = 0.031963 # cs[0,18,8] = 0.068900 # cs[0,19,15] = 0.620548 # cs[0,19,4] = 0.046491 # cs[0,19,7] = 0.016972 # cs[0,19,8] = 0.069160 # cs[0,19,9] = 0.042293 # cs[0,2,10] = 0.008772 # cs[0,2,8] = 0.042487 # cs[0,2,9] = 0.080040 # cs[0,20,11] = 0.037525 # cs[0,20,12] = 1.759986 # cs[0,20,15] = 1.076985 # cs[0,20,6] = 0.019682 # cs[0,20,7] = 0.061156 # cs[0,20,8] = 0.051960 # cs[0,20,9] = 0.521607 # cs[0,21,15] = 0.610235 # cs[0,21,4] = 0.257662 # cs[0,21,6] = 0.002929 # cs[0,21,7] = 0.020467 # cs[0,21,8] = 0.066675 # cs[0,21,9] = 0.070323 # cs[0,22,10] = 0.065463 # cs[0,22,11] = 0.398951 # cs[0,22,15] = 0.713379 # cs[0,22,5] = 0.122972 # cs[0,22,6] = 0.048136 # cs[0,22,7] = 0.220082 # cs[0,22,8] = 0.248865 # cs[0,22,9] = 0.009782 # cs[0,23,10] = 0.130732 # cs[0,23,11] = 0.411743 # cs[0,23,7] = 0.355552 # cs[0,23,9] = 0.335666 # cs[0,26,10] = 0.502033 # cs[0,26,11] = 0.927154 # cs[0,26,12] = 0.215654 # cs[0,26,15] = 0.135532 # cs[0,26,5] = 0.141885 # cs[0,26,6] = 0.045160 # cs[0,26,7] = 0.024580 # cs[0,26,8] = 0.153280 # cs[0,27,10] = 3.229356 # cs[0,27,15] = 0.794393 # cs[0,27,5] = 0.548738 # cs[0,27,6] = 0.192424 # cs[0,27,8] = 0.194143 # cs[0,27,9] = 0.424123 # cs[0,3,6] = 0.027967 # cs[0,3,7] = 0.063035 # cs[0,3,9] = 0.156536 # cs[0,4,7] = 1.000947 # cs[0,4,9] = 0.274050 # cs[0,5,7] = 0.060451 # cs[0,5,8] = 0.018437 # cs[0,5,9] = 0.111420 # cs[0,6,7] = 0.045372 # cs[0,6,8] = 0.041654 # cs[0,6,9] = 0.085741 # cs[0,7,7] = 0.047369 # cs[0,7,8] = 0.035270 # cs[0,7,9] = 0.079452 # cs[0,8,7] = 0.038782 # cs[0,8,8] = 0.044705 # cs[0,8,9] = 0.075799 # cs[0,9,7] = 0.032665 # cs[0,9,8] = 0.050548 # cs[0,9,9] = 0.074655 cs[1, 1, 12] = 0.003020 cs[1, 10, 10] = 0.002491 cs[1, 11, 10] = 0.002289 cs[1, 11, 14] = 0.051432 cs[1, 12, 10] = 0.012306 cs[1, 13, 11] = 0.010020 cs[1, 13, 14] = 0.350033 cs[1, 14, 5] = 0.003190 cs[1, 14, 7] = 0.007211 cs[1, 14, 9] = 0.001793 cs[1, 15, 12] = 0.001858 cs[1, 16, 11] = 0.010217 cs[1, 16, 12] = 0.015346 cs[1, 16, 14] = 0.013423 cs[1, 17, 11] = 0.006022 cs[1, 17, 5] = 0.001065 cs[1, 18, 11] = 0.006581 cs[1, 18, 5] = 0.009104 cs[1, 19, 11] = 0.016870 cs[1, 19, 5] = 0.004153 cs[1, 2, 8] = 0.002750 cs[1, 20, 11] = 0.012101 cs[1, 20, 5] = 0.004410 cs[1, 21, 11] = 0.011867 cs[1, 22, 14] = 0.093689 cs[1, 22, 9] = 0.076356 cs[1, 23, 11] = 0.044111 cs[1, 23, 12] = 0.094415 cs[1, 23, 9] = 0.033538 cs[1, 26, 10] = 0.160414 cs[1, 26, 6] = 0.013756 cs[1, 26, 7] = 0.045092 cs[1, 27, 5] = 0.104133 cs[1, 4, 12] = 0.021734 cs[1, 4, 6] = 0.008950 cs[1, 4, 9] = 0.002226 cs[1, 9, 9] = 0.001003 cs[15, 1, 11] = 0.023746 cs[15, 1, 14] = 0.002228 cs[15, 10, 14] = 0.581763 cs[15, 10, 5] = 0.010603 cs[15, 11, 14] = 2.071757 cs[15, 11, 5] = 0.014026 cs[15, 12, 14] = 4.024324 cs[15, 12, 5] = 0.022120 cs[15, 13, 14] = 0.091198 cs[15, 13, 4] = 0.084227 cs[15, 14, 14] = 0.095702 cs[15, 14, 4] = 0.050111 cs[15, 14, 5] = 0.010749 cs[15, 14, 6] = 0.001042 cs[15, 15, 14] = 0.023550 cs[15, 15, 4] = 0.109002 cs[15, 15, 5] = 0.019503 cs[15, 16, 14] = 0.089654 cs[15, 16, 4] = 0.090289 cs[15, 16, 9] = 0.001954 cs[15, 17, 14] = 0.082256 cs[15, 17, 4] = 0.004936 cs[15, 18, 4] = 0.003689 cs[15, 18, 5] = 0.005450 cs[15, 19, 4] = 0.004296 cs[15, 19, 9] = 0.001314 cs[15, 2, 11] = 0.009446 cs[15, 2, 5] = 0.002610 cs[15, 20, 14] = 0.013482 cs[15, 20, 4] = 0.004624 cs[15, 20, 9] = 0.004371 cs[15, 21, 4] = 0.004744 cs[15, 21, 9] = 0.002208 cs[15, 22, 4] = 0.002590 cs[15, 26, 4] = 0.001759 cs[15, 3, 11] = 0.004168 cs[15, 3, 14] = 0.022799 cs[15, 4, 12] = 0.002214 cs[15, 4, 14] = 0.050492 cs[15, 5, 11] = 0.002662 cs[15, 5, 14] = 0.030241 cs[15, 6, 11] = 0.001449 cs[15, 6, 14] = 0.033488 cs[15, 7, 14] = 0.034017 cs[15, 7, 5] = 0.005982 cs[15, 8, 14] = 0.049224 cs[15, 8, 5] = 0.010048 cs[15, 9, 14] = 0.074621 cs[15, 9, 5] = 0.012321 cs[2, 1, 11] = 0.013774 cs[2, 10, 9] = 0.006013 cs[2, 11, 8] = 0.001923 cs[2, 11, 9] = 0.004387 cs[2, 12, 10] = 0.022742 cs[2, 12, 12] = 0.002736 cs[2, 13, 10] = 0.016343 cs[2, 13, 12] = 0.014043 cs[2, 13, 14] = 0.173465 cs[2, 13, 6] = 0.006556 cs[2, 14, 10] = 0.009264 cs[2, 14, 11] = 0.004777 cs[2, 14, 9] = 0.004494 cs[2, 15, 10] = 0.009060 cs[2, 15, 11] = 0.001866 cs[2, 15, 14] = 0.006074 cs[2, 16, 10] = 0.004538 cs[2, 16, 11] = 0.033710 cs[2, 16, 14] = 0.012665 cs[2, 16, 8] = 0.003079 cs[2, 17, 10] = 0.025276 cs[2, 17, 11] = 0.027400 cs[2, 18, 10] = 0.026229 cs[2, 18, 11] = 0.016717 cs[2, 19, 10] = 0.022570 cs[2, 19, 11] = 0.033890 cs[2, 19, 12] = 0.008680 cs[2, 2, 6] = 0.001682 cs[2, 2, 8] = 0.001676 cs[2, 20, 11] = 0.074691 cs[2, 21, 10] = 0.016558 cs[2, 21, 11] = 0.059417 cs[2, 22, 11] = 0.152041 cs[2, 22, 12] = 0.203176 cs[2, 22, 15] = 0.050658 cs[2, 22, 6] = 0.015788 cs[2, 23, 11] = 0.206246 cs[2, 23, 12] = 0.120783 cs[2, 26, 7] = 0.084963 cs[2, 26, 9] = 0.022534 cs[2, 27, 10] = 0.297184 cs[2, 27, 7] = 0.021209 cs[2, 27, 8] = 0.007451 cs[2, 3, 10] = 0.005375 cs[2, 3, 6] = 0.012328 cs[2, 4, 10] = 0.003277 cs[2, 4, 8] = 0.011893 cs[2, 4, 9] = 0.027520 cs[2, 5, 10] = 0.006435 cs[2, 5, 14] = 0.006429 cs[2, 5, 4] = 0.006902 cs[2, 5, 9] = 0.004081 cs[2, 6, 10] = 0.003301 cs[2, 6, 9] = 0.006395 cs[2, 7, 9] = 0.008460 cs[2, 8, 9] = 0.007706 cs[2, 9, 9] = 0.007328 cs[3, 1, 10] = 0.005503 cs[3, 1, 11] = 0.004476 cs[3, 1, 5] = 0.004507 cs[3, 1, 8] = 0.001556 cs[3, 10, 4] = 0.207073 cs[3, 11, 14] = 0.894130 cs[3, 11, 15] = 0.092669 cs[3, 11, 4] = 0.023423 cs[3, 11, 7] = 0.003002 cs[3, 12, 10] = 0.012366 cs[3, 12, 15] = 0.350801 cs[3, 12, 7] = 0.001999 cs[3, 13, 12] = 0.048007 cs[3, 13, 14] = 0.013178 cs[3, 13, 6] = 0.006505 cs[3, 14, 15] = 0.048397 cs[3, 14, 7] = 0.009478 cs[3, 14, 9] = 0.002355 cs[3, 15, 4] = 0.015728 cs[3, 16, 10] = 0.003268 cs[3, 16, 14] = 0.051838 cs[3, 16, 7] = 0.001721 cs[3, 16, 8] = 0.002248 cs[3, 17, 10] = 0.017497 cs[3, 18, 10] = 0.008063 cs[3, 19, 10] = 0.005089 cs[3, 19, 7] = 0.001030 cs[3, 2, 8] = 0.002242 cs[3, 20, 12] = 0.039262 cs[3, 20, 5] = 0.004482 cs[3, 20, 7] = 0.001287 cs[3, 21, 12] = 0.004415 cs[3, 21, 7] = 0.002230 cs[3, 22, 11] = 0.036573 cs[3, 22, 12] = 0.117028 cs[3, 22, 15] = 0.300226 cs[3, 22, 8] = 0.007892 cs[3, 23, 11] = 0.178017 cs[3, 23, 12] = 0.001670 cs[3, 26, 7] = 0.080745 cs[3, 27, 10] = 0.121003 cs[3, 27, 7] = 0.037502 cs[3, 3, 7] = 0.001585 cs[3, 4, 7] = 0.019487 cs[3, 4, 8] = 0.002981 cs[3, 5, 7] = 0.002269 cs[3, 5, 9] = 0.001011 cs[3, 6, 14] = 0.013598 cs[3, 6, 4] = 0.014058 cs[3, 6, 7] = 0.001729 cs[3, 7, 14] = 0.049183 cs[3, 7, 4] = 0.021792 cs[3, 7, 7] = 0.001135 cs[3, 7, 9] = 0.001427 cs[3, 8, 14] = 0.123786 cs[3, 8, 4] = 0.032505 cs[3, 8, 9] = 0.002062 cs[3, 9, 14] = 0.194401 cs[3, 9, 4] = 0.033752 cs[3, 9, 9] = 0.001915 for m in range(32): for s in range(16): for k in range(16): if cs[s, m, k] > 0: fourD[s, :, m, :] -= cs[s, m, k] * orig[k, :, m, :] # fix gaps in sector channels # fourD[13,:,:,:] = 0.5*(fourD[12,:,:,:]+fourD[14,:,:,:]) return fourD
[docs]def floor_subtract_fix(orig): NN = orig.copy() bg = np. bg = np.array([0.00000000e+00, 1.08337701e-03, 2.22826975e-03, 1.91819689e-03, 2.00189037e-03, 2.06441121e-03, 1.45833114e-03, 1.36407004e-03, 1.17178304e-03, 9.80532940e-04, 1.06777570e-03, 2.81210665e-04, 6.54757326e-04, 1.09199635e-03, 7.78041783e-04, 1.26617759e-03, 1.63233904e-03, 1.84926640e-03, 1.71206241e-03, 1.95815492e-03, 1.62574416e-03, 1.33419692e-03, 8.20405339e-04, 4.18034494e-04, 0.00000000e+00, 0.00000000e+00, 1.15474609e-05, 5.67753294e-04, 0.00000000e+00, 0.00000000e+00, 0.00000000e+00, 0.00000000e+00]) # bg *= 0.95 # why is scaling needed here? for e in range(96): for s in range(16): NN[s, e, :, :] -= np.multiply( np.outer(bg, np.nanmax(orig[s, e, :, :], axis=0)), orig[s, e, :, :] ) return NN