msg = '\n' msg += "Usage 1: %s $INPUT_ROOT_FILE(s)\n" % sys.argv[0] msg += '\n' sys.stderr.write(msg) sys.exit(1) from larlite import larlite as fmwk # prepare viewer for GeoAlgo objects from ROOT import geoalgo from basictool.geoviewer import GeoViewer import matplotlib.pyplot as plt # load viewer plt.ion() viewer = GeoViewer(width=4,height=8) viewer._use_box = False # Create ana_processor instance my_proc = fmwk.ana_processor() # Set input root file for x in xrange(len(sys.argv)-1): my_proc.add_input_file(sys.argv[x+1]) # Specify IO mode my_proc.set_io_mode(fmwk.storage_manager.kREAD) # Specify output root file name my_proc.set_ana_output_file("PaddleTrackFilter_output.root");
import ROOT from ROOT import ertool from ROOT import geoalgo from basictool.geoviewer import GeoViewer import matplotlib.pyplot as plt import random as rnd import time import datetime plt.ion() tottime = 0 # track: viewer = GeoViewer() viewer._use_box = False geoAlgo = geoalgo.GeoAlgo() line1 = geoalgo.LineSegment(105.727, -66.7871, 814.841, 105.438, -67.4666, 815.464) line2 = geoalgo.LineSegment(105.229, -67.5519, 815.806, 108.149, -62.1392, 810.246) pt1 = geoalgo.Vector() pt2 = geoalgo.Vector() d = geoAlgo.SqDist(line1,line2,pt1,pt2) line3 = geoalgo.LineSegment(pt1,pt2) viewer.add(line1,'ln1','b') viewer.add(line2,'ln2','r') viewer.add(line3,'ln3','k') print 'distance is %.02f'%d viewer.show() try: counter = input('Hit ENTER when you are ready to close the viewer') except:
import ROOT from ROOT import ertool from ROOT import geoalgo from basictool.geoviewer import GeoViewer import matplotlib.pyplot as plt import random as rnd import time import datetime plt.ion() tottime = 0 # track: viewer2 = GeoViewer() viewer2._use_box = False geoAlgo = geoalgo.GeoAlgo() ntries = 1000 npoints = 800 #for x in xrange(ntries): track = ertool.Track() #viewer2._fig.clear() #for n in xrange(npoints): #time.sleep(0.01) point = geoalgo.Vector(rnd.random(),rnd.random(),rnd.random()) n = 0 viewer2.add(point,'pt %i'%n,'k') track.push_back(point) viewer2.add(point,'pt %i'%n,'k') track.push_back(point) viewer2.add(point,'pt %i'%n,'k')
# Make a fake track and shower # shower: shrDir = geoalgo.Vector(0.3, 1.0, 0.5) # direction shrStart = geoalgo.Vector(10, -10, 30) # start point shower = ertool.Shower(shrStart, shrDir, 20, 5) shower._energy = 100 shower._dedx = 2.2 # track: track = ertool.Track() for n in xrange(11): track.push_back( geoalgo.Vector(-45.1 + (10 + 45) * (n / 10.), 15.1 - (10 + 15) * (n / 10.), 4.1 + (30 - 4) * (n / 10.))) track._energy = 435 plt.ion() viewer = GeoViewer() viewer.add(shower, 'shower', 'b') viewer.add(track, 'track', 'r') viewer.show() try: counter = input('Hit ENTER when you are ready to close the viewer') except: print "Continuing to analys..." # are these shower and track correlated? is the shower a michel? dist = shower.Start().Dist(track.back()) print "distance between shower start and track end is: %f" % dist
msg = '\n' msg += "Usage 1: %s $INPUT_ROOT_FILE(s)\n" % sys.argv[0] msg += '\n' sys.stderr.write(msg) sys.exit(1) from larlite import larlite as fmwk # prepare viewer for GeoAlgo objects from ROOT import geoalgo from basictool.geoviewer import GeoViewer import matplotlib.pyplot as plt # load viewer plt.ion() viewer = GeoViewer(width=4, height=8) viewer._use_box = False # Create ana_processor instance my_proc = fmwk.ana_processor() # Set input root file for x in xrange(len(sys.argv) - 1): my_proc.add_input_file(sys.argv[x + 1]) # Specify IO mode my_proc.set_io_mode(fmwk.storage_manager.kREAD) # Specify output root file name my_proc.set_ana_output_file("PaddleTrackFilter_output.root")
import ROOT from ROOT import ertool from ROOT import geoalgo from basictool.geoviewer import GeoViewer import matplotlib.pyplot as plt import random as rnd import time import datetime plt.ion() tottime = 0 # track: viewer = GeoViewer() viewer._use_box = False geoAlgo = geoalgo.GeoAlgo() line1 = geoalgo.LineSegment(0, 0, 0, 0, 0, 1) line2 = geoalgo.LineSegment(1, 0, 0, 1, 0, 1) pt1 = geoalgo.Vector() pt2 = geoalgo.Vector() d = geoAlgo.SqDist(line1, line2, pt1, pt2) line3 = geoalgo.LineSegment(pt1, pt2) viewer.add(line1, 'ln1', 'b') viewer.add(line2, 'ln2', 'r') viewer.add(line3, 'ln3', 'k') print 'distance is %.04f' % d viewer.show() try: counter = input('Hit ENTER when you are ready to close the viewer') except:
sys.stderr.write(msg) sys.exit(1) from larlite import larlite as fmwk # prepare viewer for GeoAlgo objects from ROOT import geoalgo from basictool.geoviewer import GeoViewer import matplotlib.pyplot as plt import matplotlib.cm as cmx import matplotlib.gridspec as gridspec import matplotlib # load viewer plt.ion() viewer = GeoViewer(width=4,height=8) viewer._use_box = False gs = gridspec.GridSpec(1,4) axL = plt.subplot(gs[0:-2]) axR = plt.subplot(gs[-1]) #fig, (axL,axR) = plt.subplots(1,2,figsize=(10,6)) cm = plt.get_cmap('jet') # Create ana_processor instance my_proc = fmwk.ana_processor() # Set input root file for x in xrange(len(sys.argv)-1): my_proc.add_input_file(sys.argv[x+1])
shrStart = geoalgo.Vector(14,-10,30) # start point shower1 = ertool.Shower(shrStart,shrDir,20,5) shower1._energy = 100 shower1._dedx = 2.2 # shower2: shrDir = geoalgo.Vector(-0.33,1.0,0.5)# direction shrStart = geoalgo.Vector(10,-11,30) # start point shower2 = ertool.Shower(shrStart,shrDir,20,5) shower2._energy = 100 shower2._dedx = 2.2 # load viewer plt.ion() viewer = GeoViewer() viewer._use_box = False; viewer.add(shower1,'shower1','b') viewer.add(shower2,'shower2','b') #viewer.add(track,'track','r') viewer.show() try: counter = input('Hit ENTER when you are ready to close the viewer') except: print "Continuing to analys..." # figure out the impact parameter between the two: # use AlgoFindRelationship algo = ertool.AlgoFindRelationship() vertex = geoalgo.Vector(3) IP = algo.FindClosestApproach(shower1,shower2,vertex)
# Make a fake track and shower # shower: shrDir = geoalgo.Vector(0.3,1.0,0.5)# direction shrStart = geoalgo.Vector(10,-10,30) # start point shower = ertool.Shower(shrStart,shrDir,20,5) shower._energy = 100 shower._dedx = 2.2 # track: track = ertool.Track() for n in xrange(11): track.push_back(geoalgo.Vector(-45.1+(10+45)*(n/10.),15.1-(10+15)*(n/10.),4.1+(30-4)*(n/10.))) track._energy = 435; plt.ion() viewer = GeoViewer() viewer.add(shower,'shower','b') viewer.add(track,'track','r') viewer.show() try: counter = input('Hit ENTER when you are ready to close the viewer') except: print "Continuing to analys..." # are these shower and track correlated? is the shower a michel? dist = shower.Start().Dist(track.back()) print "distance between shower start and track end is: %f"%dist
import ROOT from ROOT import ertool from ROOT import geoalgo from basictool.geoviewer import GeoViewer import matplotlib.pyplot as plt import random as rnd import time import datetime plt.ion() tottime = 0 # track: viewer2 = GeoViewer() viewer2._use_box = False geoAlgo = geoalgo.GeoAlgo() ntries = 1000 npoints = 800 #for x in xrange(ntries): track = ertool.Track() #viewer2._fig.clear() #for n in xrange(npoints): #time.sleep(0.01) point = geoalgo.Vector(rnd.random(), rnd.random(), rnd.random()) n = 0 viewer2.add(point, 'pt %i' % n, 'k') track.push_back(point) viewer2.add(point, 'pt %i' % n, 'k') track.push_back(point) viewer2.add(point, 'pt %i' % n, 'k')
msg = '\n' msg += "Usage 1: %s $INPUT_ROOT_FILE(s)\n" % sys.argv[0] msg += '\n' sys.stderr.write(msg) sys.exit(1) from larlite import larlite as fmwk # prepare viewer for GeoAlgo objects from ROOT import geoalgo from basictool.geoviewer import GeoViewer import matplotlib.pyplot as plt # load viewer plt.ion() viewer = GeoViewer(width=7, height=7) #viewer = GeoViewer() viewer._use_box = False geoAlgo = geoalgo.GeoAlgo() # Create ana_processor instance my_proc = fmwk.ana_processor() # Set input root file for x in xrange(len(sys.argv) - 1): my_proc.add_input_file(sys.argv[x + 1]) # Specify IO mode my_proc.set_io_mode(fmwk.storage_manager.kREAD) # Specify output root file name