Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-09 07:48:50

0001 #!/usr/bin/env python
0002 #
0003 # Copyright (c) 2019 Opticks Team. All Rights Reserved.
0004 #
0005 # This file is part of Opticks
0006 # (see https://bitbucket.org/simoncblyth/opticks).
0007 #
0008 # Licensed under the Apache License, Version 2.0 (the "License"); 
0009 # you may not use this file except in compliance with the License.  
0010 # You may obtain a copy of the License at
0011 #
0012 #   http://www.apache.org/licenses/LICENSE-2.0
0013 #
0014 # Unless required by applicable law or agreed to in writing, software 
0015 # distributed under the License is distributed on an "AS IS" BASIS, 
0016 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
0017 # See the License for the specific language governing permissions and 
0018 # limitations under the License.
0019 #
0020 
0021 """
0022 tboxlaser.py 
0023 =============================================
0024 
0025 Loads test events from Opticks and Geant4 and 
0026 created by OKG4Test and 
0027 compares their bounce histories.
0028 
0029 """
0030 import os, sys, logging, argparse, numpy as np
0031 log = logging.getLogger(__name__)
0032 
0033 from opticks.ana.base import opticks_main
0034 from opticks.ana.nbase import vnorm
0035 from opticks.ana.evt  import Evt
0036 
0037 
0038 
0039 if __name__ == '__main__':
0040     np.set_printoptions(precision=4, linewidth=200)
0041 
0042     args = opticks_main(doc=__doc__, tag="1", src="torch", det="boxlaser", c2max=2.0, tagoffset=0)
0043 
0044     log.info("tag %s src %s det %s c2max %s  " % (args.utag,args.src,args.det, args.c2max))
0045 
0046     a_seqs = []
0047     b_seqs = []
0048 
0049     try:
0050         a = Evt(tag="%s" % args.utag, src=args.src, det=args.det, seqs=a_seqs, args=args)
0051         b = Evt(tag="-%s" % args.utag , src=args.src, det=args.det, seqs=b_seqs, args=args)
0052     except IOError as err:
0053         log.fatal(err)
0054         sys.exit(args.mrc)
0055 
0056     print "A",a
0057     print "B",b
0058 
0059     log.info( " a : %s " % a.brief)
0060     log.info( " b : %s " % b.brief )
0061 
0062     tables = ["seqhis_ana"] + ["seqhis_ana_%d" % imsk for imsk in range(1,8)] + ["seqmat_ana"] 
0063     Evt.compare_table(a,b, tables, lmx=20, c2max=None, cf=True)
0064 
0065     Evt.compare_table(a,b, "pflags_ana hflags_ana".split(), lmx=20, c2max=None, cf=True)
0066 
0067 
0068