| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

DrawFigs.py

Go to the documentation of this file.
00001 #!/usr/bin/env python
00002 #
00003 # Example module to draw figures from the energy stats file
00004 #
00005 #  Usage:
00006 #   nuwa.py UnderstandingEnergy.DrawFigs
00007 
00008 # Load DybPython
00009 from DybPython.DybPythonAlg import DybPythonAlg
00010 from GaudiPython import SUCCESS, FAILURE
00011 from GaudiPython import gbl
00012 
00013 # Make shortcuts to any ROOT classes you want to use
00014 TCanvas = gbl.TCanvas
00015 gbl.gStyle.SetPalette(1)
00016 gbl.gStyle.SetOptFit(1)
00017 
00018 # Make your algorithm
00019 class DrawEnergyFigsAlg(DybPythonAlg):
00020     "Algorithm to draw figures from the energy statistics file"
00021     def __init__(self,name):
00022         DybPythonAlg.__init__(self,name)
00023         return
00024 
00025     def initialize(self):
00026         status = DybPythonAlg.initialize(self)
00027         if status.isFailure(): return status
00028         self.info("initializing")
00029 
00030         return SUCCESS
00031 
00032     def execute(self):
00033         self.info("executing")
00034         
00035         return SUCCESS
00036         
00037     def finalize(self):
00038         self.info("finalizing")
00039 
00040         # Make energy histograms
00041         canvas = TCanvas()
00042         self.stats["/file0/energy/genEnergy"].Draw()
00043         canvas.SaveAs("genEnergy.png")
00044         
00045         self.stats["/file0/energy/genKineticEnergy"].Draw()
00046         canvas.SaveAs("genKineticEnergy.png")
00047 
00048         self.stats["/file0/energy/simScintEnergy"].Draw()
00049         canvas.SaveAs("simScintEnergy.png")
00050 
00051         self.stats["/file0/energy/simQuenchedEnergy"].Draw()
00052         canvas.SaveAs("simQuenchedEnergy.png")
00053 
00054         self.stats["/file0/energy/simQuenching"].Draw("colz")
00055         canvas.SaveAs("simQuenching.png")
00056 
00057         self.stats["/file0/energy/simHits"].Draw()
00058         canvas.SaveAs("simHits.png")
00059 
00060         self.stats["/file0/energy/simHitsVsQE"].Draw("colz")
00061         canvas.SaveAs("simHitsVsQE.png")
00062 
00063         self.stats["/file0/energy/adcSumVsSimHits"].Draw("colz")
00064         canvas.SaveAs("adcSumVsSimHits.png")
00065 
00066         self.stats["/file0/energy/calibAdcSum"].Draw()
00067         canvas.SaveAs("calibAdcSum.png")
00068 
00069         self.stats["/file0/energy/calibAdcSumVsSimHits"].Draw("colz")
00070         canvas.SaveAs("calibAdcSumVsSimHits.png")
00071 
00072         self.stats["/file0/energy/reconEnergy"].Draw()
00073         self.stats["/file0/energy/reconEnergy"].Fit("gaus","","",7.0,10.0)
00074         canvas.SaveAs("reconEnergy.png")
00075 
00076         self.stats["/file0/energy/calibAdcSumVsReconEnergy"].Draw("colz")
00077         canvas.SaveAs("calibAdcSumVsReconEnergy.png")
00078 
00079         self.stats["/file0/energy/reconEnergyVsQE"].Draw("colz")
00080         canvas.SaveAs("reconEnergyVsQE.png")
00081 
00082         status = DybPythonAlg.finalize(self)
00083         return status
00084 
00085 
00086 #####  Job Configuration for nuwa.py ########################################
00087 
00088 def configure():
00089     from StatisticsSvc.StatisticsSvcConf import StatisticsSvc
00090     statsSvc = StatisticsSvc()
00091     statsSvc.Input ={"file0":"energyStats.root"}
00092     return
00093 
00094 def run(app):
00095     '''
00096     Configure and add an algorithm to job
00097     '''
00098     app.ExtSvc += ["StatisticsSvc"]
00099     energyFigsAlg = DrawEnergyFigsAlg("MyEnergyFigs")
00100     app.addAlgorithm(energyFigsAlg)
00101     pass
00102 
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:05:55 2011 for UnderstandingEnergy by doxygen 1.4.7