Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-09 07:49:15

0001 #!/usr/bin/env python
0002 """
0003 # s_pmt_test.py  CAUTION : THIS DOCSTRING IS EVALUATED
0004 ######################################################
0005 
0006 f
0007 
0008 f.lpmtidx.shape
0009 f.lpmtidx.shape[0] == 17612 + 2400 + 348 + 5         # without MPMT
0010 f.lpmtidx.shape[0] == 17612 + 2400 + 348 + 600 + 5   # with MPMT
0011 
0012 np.all( f.lpmtidx[:,0] == np.arange(len(f.lpmtidx)) )  # lpmtidx is contiguous from zero
0013 
0014 f.lpmtidx_labels    #    ['lpmtidx', 'lpmtid', 'contiguousidx']
0015 f.lpmtidx[:17612]   # CD LPMT
0016 np.all( f.lpmtidx[:17612,0] == f.lpmtidx[:17612,1] )  # for CD LPMT  lpmtidx and lpmtid are same
0017 np.all( f.lpmtidx[:17612,0] == f.lpmtidx[:17612,2] )  # for CD LPMT  lpmtidx and contiguousidx are same
0018 
0019 
0020 f.lpmtidx[17612:17612+2400]
0021 
0022 np.all( f.lpmtidx[17612:17612+2400,1] == np.arange(2400)+50000 )              ## WP_PMT with id from 50000
0023 
0024 np.all( f.lpmtidx[17612+2400:17612+2400+348,1] == np.arange(348)+52400 )      ## WP_ATM_LPMT id from 52400
0025 
0026 np.all( f.lpmtidx[17612+2400+348+600:17612+2400+348+600+5,1] == np.arange(5)+54000 )  ## WP_ARM_WAL id from 54000
0027 
0028 
0029 ####################################################################
0030 
0031 f.oldcontiguousidx.shape
0032 f.oldcontiguousidx.shape[0] == 17612 + 25600 + 2400 + 348 + 5
0033 f.oldcontiguousidx.shape[0] == 17612 + 25600 + 2400 + 348 + 600 + 5
0034 f.oldcontiguousidx_labels   # ['oldcontiguousidx', 'pmtid', 'lpmtidx']
0035 
0036 f.oldcontiguousidx[:17612]     # CD LPMT
0037 
0038 np.all( f.oldcontiguousidx[:17612,0] == np.arange(17612) + 0 )
0039 np.all( f.oldcontiguousidx[:17612,1] == np.arange(17612) + 0 )
0040 np.all( f.oldcontiguousidx[:17612,2] == np.arange(17612) + 0 )
0041 
0042 np.cumsum([17612,25600,2400,348,5])
0043 
0044 np.all( np.cumsum([17612,25600,2400,348,5]) == np.array([17612, 43212, 45612, 45960, 45965]))
0045 
0046 f.oldcontiguousidx_labels    # ['oldcontiguousidx', 'pmtid', 'lpmtidx']
0047 
0048 f.oldcontiguousidx[17612:17612+25600]   # SPMT
0049 
0050 np.all( f.oldcontiguousidx[17612:17612+25600,0] == np.arange(25600) + 17612 )
0051 np.all( f.oldcontiguousidx[17612:17612+25600,1] == np.arange(25600) + 20000 )
0052 np.all( f.oldcontiguousidx[17612:17612+25600,2] == -1 )
0053 
0054 f.oldcontiguousidx[17612+25600:17612+25600+2400]   # WP_PMT
0055 
0056 np.all( f.oldcontiguousidx[17612+25600:17612+25600+2400,0] == np.arange(2400) + 43212 )
0057 np.all( f.oldcontiguousidx[17612+25600:17612+25600+2400,1] == np.arange(2400) + 50000 )
0058 np.all( f.oldcontiguousidx[17612+25600:17612+25600+2400,2] == np.arange(2400) + 17612 )
0059 
0060 f.oldcontiguousidx[17612+25600+2400:17612+25600+2400+248]   # WP_ATM_LPMT
0061 
0062 np.all( f.oldcontiguousidx[17612+25600+2400:17612+25600+2400+348,0] == np.arange(348) + 17612+25600+2400 )
0063 np.all( f.oldcontiguousidx[17612+25600+2400:17612+25600+2400+348,1] == np.arange(348) + 52400 )
0064 np.all( f.oldcontiguousidx[17612+25600+2400:17612+25600+2400+348,2] == np.arange(348) + 17612+0+2400 )    ## lpmtidx excludes SPMT
0065 
0066 
0067 f.oldcontiguousidx[17612+25600+2400+348:17612+25600+2400+348+5]   # WP_WAL_PMT
0068 
0069 np.all( f.oldcontiguousidx[17612+25600+2400+348:17612+25600+2400+348+5,0] == np.arange(5) + 17612+25600+2400+348 )
0070 np.all( f.oldcontiguousidx[17612+25600+2400+348:17612+25600+2400+348+5,1] == np.arange(5) + 54000 )
0071 np.all( f.oldcontiguousidx[17612+25600+2400+348:17612+25600+2400+348+5,2] == np.arange(5) + 17612+0+2400+348 )   ## lpmtidx excludes SPMT
0072 
0073 
0074 #########################################
0075 
0076 f.contiguousidx.shape
0077 f.contiguousidx.shape[0] == 17612 + 2400 + 25600 + 348 + 5
0078 
0079 f.contiguousidx_labels    # ['contiguousidx', 'pmtid', 'lpmtidx']
0080 f.contiguousidx[:17612]   # CD_LPMT
0081 
0082 f.contiguousidx_labels
0083 f.contiguousidx[17612:17612+2400]   # WP_PMT
0084 
0085 np.all( f.contiguousidx[17612:17612+2400,1] == np.arange(2400) + 50000 )
0086 
0087 np.all( f.contiguousidx[17612+2400:17612+2400+348,1] == np.arange(348) + 52400 )
0088 
0089 np.all( f.contiguousidx[17612+2400+348:17612+2400+348+5,1] == np.arange(5) + 54000 )
0090 
0091 
0092 f.contiguousidx_labels
0093 f.contiguousidx[17612+2400:17612+2400+25600]   # S_PMT
0094 
0095 np.all( f.contiguousidx[17612+2400+348+5:17612+2400+348+5+25600,0] == np.arange(25600) + 17612+2400+348+5 )
0096 np.all( f.contiguousidx[17612+2400+348+5:17612+2400+348+5+25600,1] == np.arange(25600) + 20000 )
0097 np.all( f.contiguousidx[17612+2400+348+5:17612+2400+348+5+25600,2] == -1  )
0098 
0099 """
0100 
0101 import textwrap, numpy as np
0102 from np.fold import Fold
0103 
0104 
0105 if __name__ == '__main__':
0106     f = Fold.Load(symbol="f")
0107 
0108     EXPR = list(map(str.strip,textwrap.dedent(__doc__).split("\n")))
0109 
0110     lines = []
0111     for expr in EXPR:
0112         lines.append(expr)
0113         if expr == "" or expr.startswith("#"): continue
0114         lines.append(repr(eval(expr)))
0115     pass
0116     print("\n".join(lines))
0117 pass
0118 
0119