CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Functions | Variables
alignmentValidation Namespace Reference

Functions

def createCanvasesList
 
def createCanvasToIDList
 
def createDirectoryStructure
 
def dirToID
 
def doCurvaturePlotsDT
 
def doFitFunctionsPlotsCSC
 
def doFitFunctionsPlotsDT
 
def doIterationPlots
 
def doMapPlotsCSC
 
def doMapPlotsDT
 
def doSegDiffPlotsCSC
 
def doSegDiffPlotsDT
 
def idsForFile
 
def isFileUnderDir
 functions definitions More...
 
def saveAs
 

Variables

string action = "store_true"
 
string allOptions = "-l "
 
tuple c1 = ROOT.TCanvas("c1","c1",800,600)
 do drawing More...
 
list CANVASES_LIST_TEMPLATE
 
string comdir = "common/"
 setup output: More...
 
string default = ''
 
string dest = "runLabel"
 
 DO_CSC = False
 
 DO_CURVATURE = False
 
 DO_DIAGNOSTIC = options.diagnostic
 
 DO_DT = False
 
 DO_FIT = False
 
 DO_MAP = False
 
 DO_MEDIAN = False
 
 DO_SEGDIFF = False
 
string fname = options.inputDir+'/'
 main script More...
 
string help = "[REQUIRED] label to use for a run"
 
 i1prefix = options.i1prefix
 
 iNprefix = options.iNprefix
 
list iter1_reports = []
 
 iter1_tfile = None
 
string iteration1 = "iter1"
 
string iterationN = "iterN"
 
list iterN_reports = []
 
 iterN_tfile = None
 
 outdir = options.outputDir
 
tuple parser = optparse.OptionParser(usage)
 
tuple pic_ids = createCanvasToIDList("canvas2id_list.js")
 
int QUICKTESTN = 10000
 
 SINGLE_ITERATION = False
 
list tfiles1_plotting = []
 
list tfilesN_plotting = []
 
string type = "string"
 
string usage = '%prog [options]\n'
 To parse commandline args. More...
 

Function Documentation

def alignmentValidation.createCanvasesList (   fname = "canvases_list.js")
Use CANVASES_LIST_TEMPLATE as a template to create a canvases list include for the browser.
   Write out only those canvases which have existing filename.png plots.

Definition at line 862 of file alignmentValidation.py.

References isFileUnderDir(), and print().

863 def createCanvasesList(fname="canvases_list.js"):
864  '''Use CANVASES_LIST_TEMPLATE as a template to create a canvases list include for the browser.
865  Write out only those canvases which have existing filename.png plots.
866  '''
867  CANVASES_LIST = []
868  for scope in CANVASES_LIST_TEMPLATE:
869  scope_entry = []
870  if len(scope)>2:
871  scope_entry = [scope[0],scope[1]]
872  for canvas_entry in scope[2:]:
873  if isFileUnderDir("./",canvas_entry[1]):
874  scope_entry.append(canvas_entry)
875  CANVASES_LIST.append(scope_entry)
876 
877  ff = open(fname,mode="w")
878  print("var CANVASES_LIST = ", file=ff)
879  json.dump(CANVASES_LIST,ff)
880  ff.close()
881 
def isFileUnderDir
functions definitions
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
def alignmentValidation.createCanvasToIDList (   fname = "canvas2id_list.js")
Writes out a canvas-2-ids list include for the browser.
   Write out only those canvases which have existing filename.png plots.
   Returns: list of unique IDs that have existing filename.png plots.

Definition at line 882 of file alignmentValidation.py.

References idsForFile(), and print().

883 def createCanvasToIDList(fname="canvas2id_list.js"):
884  '''Writes out a canvas-2-ids list include for the browser.
885  Write out only those canvases which have existing filename.png plots.
886  Returns: list of unique IDs that have existing filename.png plots.
887  '''
888  CANVAS2ID_LIST = []
889  ID_LIST = []
890  for scope in CANVASES_LIST_TEMPLATE:
891  if len(scope)>2:
892  for canvas_entry in scope[2:]:
893  ids = idsForFile("./",canvas_entry[1])
894  # scope_entry.append(canvas_entry)
895  # uniquify:
896  set_ids = set(ids)
897  uids = list(set_ids)
898  ID_LIST.extend(uids)
899  print(canvas_entry, ":", len(uids), "ids")
900  if (len(uids)>0):
901  CANVAS2ID_LIST.append( (canvas_entry[1],uids) )
902  #print CANVAS2ID_LIST
903  CANVAS2ID_LIST_DICT = dict(CANVAS2ID_LIST)
904  #print CANVAS2ID_LIST_DICT
905  ff = open(fname,mode="w")
906  print("var CANVAS2ID_LIST = ", file=ff)
907  json.dump(CANVAS2ID_LIST_DICT,ff)
908  ff.close()
909  set_ids = set(ID_LIST)
910  return list(set_ids)
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
def alignmentValidation.createDirectoryStructure (   iteration_name)

Definition at line 309 of file alignmentValidation.py.

References print(), and sistrip::SpyUtilities.range().

310 def createDirectoryStructure(iteration_name):
311 
312  if not os.access(iteration_name,os.F_OK):
313  os.mkdir(iteration_name)
314 
315  csc_basedir = iteration_name+'/'
316  for endcap in CSC_TYPES:
317  #print csc_basedir+endcap[0]
318  shutil.rmtree(csc_basedir+endcap[0],True)
319  os.mkdir(csc_basedir+endcap[0])
320  for station in endcap[2]:
321  #print csc_basedir+endcap[0]+'/'+station[1]
322  os.mkdir(csc_basedir+endcap[0]+'/'+station[1])
323  for ring in station[2]:
324  #print csc_basedir+endcap[0]+'/'+station[1]+'/'+ring[1]
325  os.mkdir(csc_basedir+endcap[0]+'/'+station[1]+'/'+ring[1])
326  for chamber in range(1,ring[2]+1):
327  schamber = "%02d" % chamber
328  #print csc_basedir+endcap[0]+'/'+station[1]+'/'+ring[1]+'/'+schamber
329  os.mkdir(csc_basedir+endcap[0]+'/'+station[1]+'/'+ring[1]+'/'+schamber)
330 
331  dt_basedir = iteration_name+'/MB/'
332  #print dt_basedir
333  shutil.rmtree(dt_basedir,True)
334  os.mkdir(dt_basedir)
335  for wheel in DT_TYPES:
336  #print dt_basedir+wheel[0]
337  os.mkdir(dt_basedir+wheel[0])
338  for station in wheel[2]:
339  #print dt_basedir+wheel[0]+'/'+station[1]
340  os.mkdir(dt_basedir+wheel[0]+'/'+station[1])
341  for sector in range(1,station[2]+1):
342  ssector = "%02d" % sector
343  #print dt_basedir+wheel[0]+'/'+station[1]+'/'+ssector
344  os.mkdir(dt_basedir+wheel[0]+'/'+station[1]+'/'+ssector)
345 
346  print(os.getcwd())
const uint16_t range(const Frame &aFrame)
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
def alignmentValidation.dirToID (   d)

Definition at line 930 of file alignmentValidation.py.

Referenced by idsForFile().

931 def dirToID(d):
932  if d[-1]!='/': d += '/'
933  dtn = d.find("/MB/")
934  if dtn!=-1:
935  return d[dtn+4:-1]
936  cscn = d.find("/ME-/")
937  if cscn!=-1:
938  return 'ME-'+d[cscn+5:-1]
939  cscn = d.find("/ME+/")
940  if cscn!=-1:
941  return 'ME+'+d[cscn+5:-1]
942  return ''
943 
def alignmentValidation.doCurvaturePlotsDT (   dt_basedir,
  tfiles_plotting 
)
write DT curvature plots

"wheel%s_sector%s" % (wheel, sector)

wheel in "m2", "m1", "z", "p1", "p2"
station 1 only!
sector in "01", ..., "12"

"param" may be one of 
  "deltax" (Delta x position residuals),
  "deltadxdz" (Delta (dx/dz) angular residuals),
  "curverr" (Delta x * d(Delta q/pT)/d(Delta x) = Delta q/pT in the absence of misalignment) - not necessary

made for all (wheel,station=1,sector) combinations

Interface: could be accesses through a general DT chambers map for station=1 chambers.

Definition at line 541 of file alignmentValidation.py.

References plotscripts.curvatureplot(), print(), sistrip::SpyUtilities.range(), and saveAs().

Referenced by doIterationPlots().

542 def doCurvaturePlotsDT(dt_basedir, tfiles_plotting):
543  """write DT curvature plots
544 
545  "wheel%s_sector%s" % (wheel, sector)
546 
547  wheel in "m2", "m1", "z", "p1", "p2"
548  station 1 only!
549  sector in "01", ..., "12"
550 
551  "param" may be one of
552  "deltax" (Delta x position residuals),
553  "deltadxdz" (Delta (dx/dz) angular residuals),
554  "curverr" (Delta x * d(Delta q/pT)/d(Delta x) = Delta q/pT in the absence of misalignment) - not necessary
555 
556  made for all (wheel,station=1,sector) combinations
557 
558  Interface: could be accesses through a general DT chambers map for station=1 chambers."""
559 
560  w_dict = {'-2':'m2', '-1':'m1', '0':'z', '1':'p1', '2':'p2'}
561  qcount = 0
562  for wheel in DT_TYPES:
563  if wheel[1]=="ALL": continue
564  #station = 1
565  #station = wheel[2][0]
566  for station in wheel[2]:
567  print("curv in ", wheel[0]+'/'+station[1])
568  for sector in range(1,station[2]+1):
569  #if sector>12: break
570  if qcount>QUICKTESTN: break
571  qcount += 1
572  ssector = "%02d" % sector
573  pdir = dt_basedir+'/'+wheel[0]+'/'+station[1]+'/'+ssector+'/'
574  label = "wheel%s_st%s_sector%s" % (w_dict[wheel[1]], station[1], ssector)
575  thetitle ="Wheel %s, station %s, sector %s" % (wheel[1], station[1], ssector)
576  curvatureplot(tfiles_plotting, label, "deltax", title=thetitle, window=10., fitline=True)
577  saveAs(pdir+'dt_curvature_deltax.png')
578  curvatureplot(tfiles_plotting, label, "deltadxdz", title=thetitle, window=10., fitline=True)
579  saveAs(pdir+'dt_curvature_deltadxdz.png')
580 
581 
const uint16_t range(const Frame &aFrame)
def curvatureplot
"param" may be one of "deltax" (Delta x position residuals), "deltadxdz" (Delta (dx/dz) angular resid...
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
def alignmentValidation.doFitFunctionsPlotsCSC (   csc_basedir,
  iter_tfile,
  iter_reports 
)
write fit functions plots for CSC

   CSC bellcurves and polynomials

set of plots of bellcurves
  rphi, drphidz, rphi vs. drphidz

set of plots of polynomials
  rphi vs. rphi pos,    rphi vs drphidz angle
  drphidz vs. rphi pos, drphidz vs drphidz angle

made for all (endcap,station,ring,chamber) combinations

Interface: could be accesses through a general CSC chambers map.

Definition at line 798 of file alignmentValidation.py.

References plotscripts.bellcurves(), plotscripts.clearDDT(), plotscripts.polynomials(), print(), sistrip::SpyUtilities.range(), and saveAs().

Referenced by doIterationPlots().

799 def doFitFunctionsPlotsCSC(csc_basedir, iter_tfile, iter_reports):
800  """write fit functions plots for CSC
801 
802  CSC bellcurves and polynomials
803 
804  set of plots of bellcurves
805  rphi, drphidz, rphi vs. drphidz
806 
807  set of plots of polynomials
808  rphi vs. rphi pos, rphi vs drphidz angle
809  drphidz vs. rphi pos, drphidz vs drphidz angle
810 
811  made for all (endcap,station,ring,chamber) combinations
812 
813  Interface: could be accesses through a general CSC chambers map."""
814 
815  qcount = 0
816  clearDDT()
817  for endcap in CSC_TYPES:
818  for station in endcap[2]:
819  for ring in station[2]:
820  if ring[1]=="ALL": continue
821  print(endcap[0]+'/'+station[1]+'/'+ring[1])
822  for chamber in range(1,ring[2]+1):
823  if qcount>QUICKTESTN: break
824  qcount += 1
825  schamber = "%02d" % chamber
826  pdir = csc_basedir+'/'+endcap[0]+'/'+station[1]+'/'+ring[1]+'/'+schamber+'/'
827  label = "ME%s%s%s_%s" % (endcap[1], station[1], ring[1], schamber)
828  bellcurves(iter_tfile, iter_reports, label, False)
829  #c1.SaveAs(pdir+'csc_bellcurves.png')
830  saveAs(pdir+'csc_bellcurves.png')
831  polynomials(iter_tfile, iter_reports, label, False)
832  #c1.SaveAs(pdir+'csc_polynomials.png')
833  saveAs(pdir+'csc_polynomials.png')
834  #printDeltaTs()
835 
836 
const uint16_t range(const Frame &aFrame)
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
def alignmentValidation.doFitFunctionsPlotsDT (   dt_basedir,
  iter_tfile,
  iter_reports 
)
write fit functions plots for DT

   DT bellcurves and polynomials

set of plots of bellcurves
  x, dxdz, x vs. dxdz (for all 4 stations)
  y, dydz, x vs. dxdz (only for stations 1-3?)

set of plots of polynomials -- for stations 1-3 only??
  x vs. xpos,    x vs ypos,    x vs dxdz angle,    x vs dydz angle
  y vs. xpos,    y vs ypos,    y vs dxdz angle,    y vs dydz angle
  dxdz vs. xpos, dxdz vs ypos, dxdz vs dxdz angle, dxdz vs dydz angle
  dydz vs. xpos, dydz vs ypos, dydz vs dxdz angle, dydz vs dydz angle

set of plots of polynomials -- for station 4 only??
  x vs. xpos,    x vs dxdz angle
  dxdz vs. xpos, dxdz vs dxdz angle

made for all (wheel,station,sector) combinations

Interface: could be accesses through a general DT chambers map.

Definition at line 754 of file alignmentValidation.py.

References plotscripts.bellcurves(), plotscripts.clearDDT(), plotscripts.polynomials(), print(), sistrip::SpyUtilities.range(), saveAs(), and plotscripts.wheelLetter().

Referenced by doIterationPlots().

755 def doFitFunctionsPlotsDT(dt_basedir, iter_tfile, iter_reports):
756  """write fit functions plots for DT
757 
758  DT bellcurves and polynomials
759 
760  set of plots of bellcurves
761  x, dxdz, x vs. dxdz (for all 4 stations)
762  y, dydz, x vs. dxdz (only for stations 1-3?)
763 
764  set of plots of polynomials -- for stations 1-3 only??
765  x vs. xpos, x vs ypos, x vs dxdz angle, x vs dydz angle
766  y vs. xpos, y vs ypos, y vs dxdz angle, y vs dydz angle
767  dxdz vs. xpos, dxdz vs ypos, dxdz vs dxdz angle, dxdz vs dydz angle
768  dydz vs. xpos, dydz vs ypos, dydz vs dxdz angle, dydz vs dydz angle
769 
770  set of plots of polynomials -- for station 4 only??
771  x vs. xpos, x vs dxdz angle
772  dxdz vs. xpos, dxdz vs dxdz angle
773 
774  made for all (wheel,station,sector) combinations
775 
776  Interface: could be accesses through a general DT chambers map."""
777 
778  qcount = 0
779  clearDDT()
780  for wheel in DT_TYPES:
781  if wheel[1]=="ALL": continue
782  for station in wheel[2]:
783  print(wheel[0]+'/'+station[1])
784  for sector in range(1,station[2]+1):
785  if qcount>QUICKTESTN: break
786  qcount += 1
787  ssector = "%02d" % sector
788  pdir = dt_basedir+'/'+wheel[0]+'/'+station[1]+'/'+ssector+'/'
789  label = "MBwh%sst%ssec%s" % (wheelLetter(int(wheel[1])),station[1],ssector)
790  bellcurves(iter_tfile, iter_reports, label, False)
791  #c1.SaveAs(pdir+'dt_bellcurves.png')
792  saveAs(pdir+'dt_bellcurves.png')
793  polynomials(iter_tfile, iter_reports, label, False)
794  #c1.SaveAs(pdir+'dt_polynomials.png')
795  saveAs(pdir+'dt_polynomials.png')
796  #printDeltaTs()
797 
def wheelLetter
Definition: plotscripts.py:39
const uint16_t range(const Frame &aFrame)
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
def alignmentValidation.doIterationPlots (   iteration_directory,
  tfiles_plotting,
  iter_tfile,
  iter_reports 
)

Definition at line 837 of file alignmentValidation.py.

References doCurvaturePlotsDT(), doFitFunctionsPlotsCSC(), doFitFunctionsPlotsDT(), doMapPlotsCSC(), doMapPlotsDT(), doSegDiffPlotsCSC(), and doSegDiffPlotsDT().

838 def doIterationPlots(iteration_directory, tfiles_plotting, iter_tfile, iter_reports):
839  dt_basedir = iteration_directory+'/'+'MB'
840  csc_basedir = iteration_directory+'/'
841 
842  if DO_DT and DO_MAP:
843  doMapPlotsDT(dt_basedir, tfiles_plotting)
844  if DO_CSC and DO_MAP:
845  doMapPlotsCSC(csc_basedir, tfiles_plotting)
846 
847  if DO_DT and DO_CURVATURE:
848  doCurvaturePlotsDT(dt_basedir, tfiles_plotting)
849  #if DO_CSC and DO_CURVATURE:
850  # doCurvaturePlotsCSC(csc_basedir, tfiles_plotting)
851 
852  if DO_DT and DO_SEGDIFF:
853  doSegDiffPlotsDT(dt_basedir, tfiles_plotting, iter_reports)
854  if DO_CSC and DO_SEGDIFF:
855  doSegDiffPlotsCSC(csc_basedir, tfiles_plotting, iter_reports)
856 
857  if DO_DT and DO_FIT:
858  doFitFunctionsPlotsDT(dt_basedir, iter_tfile, iter_reports)
859  if DO_CSC and DO_FIT:
860  doFitFunctionsPlotsCSC(csc_basedir, iter_tfile, iter_reports)
861 
def alignmentValidation.doMapPlotsCSC (   csc_basedir,
  tfiles_plotting 
)
write CSC map plots

   "CSCvsphi_me%s%d%d" % (endcap, station, ring)

plots "integrated" over ALL SECTORS:
of rphi, drphi/dz vs. phi
made for all (endcap,station,ring) combinations

Interface: may be arranged into two station(1 .. 4) vs. R(1 .. 4) maps for both endcaps
with R range (1 .. 4) for stations 2-4
   It could be incorporated into a general CSC chambers map (column1: endcap, column2: station,
column3: ring, columns4-40 correspond to chamber #) by making ring numbers in column 3
clickable.


   "CSCvsr_me%s%dch%02d" % (endcap, station, chamberNumber)

plots "integrated" over ALL RINGS:
of rphi, drphi/dz vs. z
made for all (endcap,station,chamber) combinations

Interface: may be arranged into two station(1 .. 4) vs. chamber(1 .. 36) maps for both endcaps
It could be incorporated into an EXTENDED general CSC chambers map (extended by adding an
identifier "ALL" in column3 for ring number).

   "CSCvsr_me%s%dchALL" % (endcap, station)

plots spanning over ALL RINGS along r and integrated over all SECTORS:
of rphi, drphi/dz vs. z
made for all (endcap,station) combinations

Interface: may be arranged into two station(1 .. 4) maps for both endcaps
It could be incorporated into an EXTENDED general CSC chambers map (extended by adding an
identifier "ALL" in column3 for ring number).

Definition at line 455 of file alignmentValidation.py.

References plotscripts.mapplot(), sistrip::SpyUtilities.range(), and plotscripts.saveTestResultsMap().

Referenced by doIterationPlots().

456 def doMapPlotsCSC(csc_basedir, tfiles_plotting):
457  """write CSC map plots
458 
459  "CSCvsphi_me%s%d%d" % (endcap, station, ring)
460 
461  plots "integrated" over ALL SECTORS:
462  of rphi, drphi/dz vs. phi
463  made for all (endcap,station,ring) combinations
464 
465  Interface: may be arranged into two station(1 .. 4) vs. R(1 .. 4) maps for both endcaps
466  with R range (1 .. 4) for stations 2-4
467  It could be incorporated into a general CSC chambers map (column1: endcap, column2: station,
468  column3: ring, columns4-40 correspond to chamber #) by making ring numbers in column 3
469  clickable.
470 
471 
472  "CSCvsr_me%s%dch%02d" % (endcap, station, chamberNumber)
473 
474  plots "integrated" over ALL RINGS:
475  of rphi, drphi/dz vs. z
476  made for all (endcap,station,chamber) combinations
477 
478  Interface: may be arranged into two station(1 .. 4) vs. chamber(1 .. 36) maps for both endcaps
479  It could be incorporated into an EXTENDED general CSC chambers map (extended by adding an
480  identifier "ALL" in column3 for ring number).
481 
482  "CSCvsr_me%s%dchALL" % (endcap, station)
483 
484  plots spanning over ALL RINGS along r and integrated over all SECTORS:
485  of rphi, drphi/dz vs. z
486  made for all (endcap,station) combinations
487 
488  Interface: may be arranged into two station(1 .. 4) maps for both endcaps
489  It could be incorporated into an EXTENDED general CSC chambers map (extended by adding an
490  identifier "ALL" in column3 for ring number)."""
491 
492  for endcap in CSC_TYPES:
493  for station in endcap[2]:
494  for ring in station[2]:
495  if ring[1]=="ALL": continue
496  pdir = csc_basedir+'/'+endcap[0]+'/'+station[1]+'/'+ring[1]+'/'
497  label = "CSCvsphi_me%s%s%s" % (endcap[1], station[1], ring[1])
498  htitle = "%s%s/%s" % (endcap[0], station[1],ring[1])
499  mapplot(tfiles_plotting, label, "x", window=15., title=htitle, fitsine=True,fitpeaks=True, peaksbins=2)
500  #mapplot(tfiles_plotting, label, "x", window=15., title=htitle, fitsine=True)
501  c1.SaveAs(pdir+'map_CSCvsphi_x.png')
502  mapplot(tfiles_plotting, label, "dxdz", window=15., title=htitle, peaksbins=2)
503  c1.SaveAs(pdir+'map_CSCvsphi_dxdz.png')
504 
505  saveTestResultsMap(options.runLabel)
506 
507  qcount = 0
508  for endcap in CSC_TYPES:
509  for station in endcap[2]:
510  for ring in station[2]:
511  if ring[1]!="ALL": continue
512  for chamber in range(1,ring[2]+1):
513  if qcount>QUICKTESTN: break
514  qcount += 1
515  schamber = "%02d" % chamber
516  pdir = csc_basedir+'/'+endcap[0]+'/'+station[1]+'/'+ring[1]+'/'+schamber+'/'
517  label = "CSCvsr_me%s%sch%s" % (endcap[1], station[1], schamber)
518  htitle = "%s%s/ALL/%d" % (endcap[0], station[1],chamber)
519  mapplot(tfiles_plotting, label, "x", window=15., title=htitle, peaksbins=2)
520  c1.SaveAs(pdir+'map_CSCvsr_x.png')
521  mapplot(tfiles_plotting, label, "dxdz", window=15., title=htitle, peaksbins=2)
522  c1.SaveAs(pdir+'map_CSCvsr_dxdz.png')
523 
524  qcount = 0
525  for endcap in CSC_TYPES:
526  for station in endcap[2]:
527  for ring in station[2]:
528  if ring[1]!="ALL": continue
529  if qcount>QUICKTESTN: break
530  qcount += 1
531  schamber = "%02d" % chamber
532  pdir = csc_basedir+'/'+endcap[0]+'/'+station[1]+'/'+ring[1]+'/'
533  label = "CSCvsr_me%s%schALL" % (endcap[1], station[1])
534  htitle = "%s%s" % (endcap[0], station[1])
535  mapplot(tfiles_plotting, label, "x", window=10., title=htitle, peaksbins=2)
536  c1.SaveAs(pdir+'map_CSCvsr_all_x.png')
537  mapplot(tfiles_plotting, label, "dxdz", window=10., title=htitle, peaksbins=2)
538  c1.SaveAs(pdir+'map_CSCvsr_all_dxdz.png')
539 
540 
const uint16_t range(const Frame &aFrame)
def saveTestResultsMap
def alignmentValidation.doMapPlotsDT (   dt_basedir,
  tfiles_plotting 
)
write DT map plots

   "DTvsphi_st%dwh%s" % (station, wheelletter):

plots "integrated" over ALL SECTORS:
of x, y, dxdz, dydz vs. phi (y and dydz only for stations 1-3)
made for all (station,wheel) combinations

Access interface may be arranged into station(1 .. 4) vs. wheel(-2 .. +2) map.
It could be incorporated into a general DT chambers map (column1: wheel, column2: station,
columns3-16 correspond to sector #) by making station numbers in column 2 clickable.


   "DTvsz_st%dsec%02d" % (station, sector)

plots "integrated" over ALL WHEELS:
of x, y, dxdz, dydz vs. z (y and dydz only for stations 1-3)
made for all (station,sector) combinations

Interface: may be arranged into station(1 .. 4) vs. sector(1 .. 14) map with sector range
(1 .. 12) for stations 1-3.
It could be incorporated into an EXTENDED general DT chambers map (extended by adding an
identifier "ALL" in column1 for wheel number).


   "DTvsz_st%dsecALL" % (station)

plots spanning in z over ALL WHEELS and "integrated" over all sectors:
of x, y, dxdz, dydz vs. z (y and dydz only for stations 1-3)
made for all stations

Interface: may be arranged into station(1 .. 4) map 
It could be incorporated into an EXTENDED general DT chambers map (extended by adding an
identifier "ALL" in column1 for wheel number).

Definition at line 349 of file alignmentValidation.py.

References plotscripts.mapplot(), print(), sistrip::SpyUtilities.range(), plotscripts.saveTestResultsMap(), and plotscripts.wheelLetter().

Referenced by doIterationPlots().

350 def doMapPlotsDT(dt_basedir, tfiles_plotting):
351  """write DT map plots
352 
353  "DTvsphi_st%dwh%s" % (station, wheelletter):
354 
355  plots "integrated" over ALL SECTORS:
356  of x, y, dxdz, dydz vs. phi (y and dydz only for stations 1-3)
357  made for all (station,wheel) combinations
358 
359  Access interface may be arranged into station(1 .. 4) vs. wheel(-2 .. +2) map.
360  It could be incorporated into a general DT chambers map (column1: wheel, column2: station,
361  columns3-16 correspond to sector #) by making station numbers in column 2 clickable.
362 
363 
364  "DTvsz_st%dsec%02d" % (station, sector)
365 
366  plots "integrated" over ALL WHEELS:
367  of x, y, dxdz, dydz vs. z (y and dydz only for stations 1-3)
368  made for all (station,sector) combinations
369 
370  Interface: may be arranged into station(1 .. 4) vs. sector(1 .. 14) map with sector range
371  (1 .. 12) for stations 1-3.
372  It could be incorporated into an EXTENDED general DT chambers map (extended by adding an
373  identifier "ALL" in column1 for wheel number).
374 
375 
376  "DTvsz_st%dsecALL" % (station)
377 
378  plots spanning in z over ALL WHEELS and "integrated" over all sectors:
379  of x, y, dxdz, dydz vs. z (y and dydz only for stations 1-3)
380  made for all stations
381 
382  Interface: may be arranged into station(1 .. 4) map
383  It could be incorporated into an EXTENDED general DT chambers map (extended by adding an
384  identifier "ALL" in column1 for wheel number)."""
385 
386 
387  for wheel in DT_TYPES:
388  if wheel[1]=="ALL": continue
389  for station in wheel[2]:
390  pdir = dt_basedir+'/'+wheel[0]+'/'+station[1]+'/'
391  label = "DTvsphi_st%dwh%s" % (int(station[1]), wheelLetter(int(wheel[1])))
392  htitle = "wheel %+d, station %s" % (int(wheel[1]), station[1])
393  #mapplot(tfiles_plotting, label, "x", window=25., title=htitle, fitsawteeth=True,fitsine=True)
394  mapplot(tfiles_plotting, label, "x", window=10., title=htitle, fitsine=True,fitpeaks=True,peaksbins=2)
395  c1.SaveAs(pdir+'map_DTvsphi_x.png')
396  #mapplot(tfiles_plotting, label, "dxdz", window=25., title=htitle, fitsawteeth=True,fitsine=True)
397  mapplot(tfiles_plotting, label, "dxdz", window=10., title=htitle,peaksbins=2)
398  c1.SaveAs(pdir+'map_DTvsphi_dxdz.png')
399 
400  if station[1]=='4': continue
401  #mapplot(tfiles_plotting, label, "y", window=25., title=htitle, fitsawteeth=True,fitsine=True)
402  mapplot(tfiles_plotting, label, "y", window=10., title=htitle,peaksbins=2)
403  c1.SaveAs(pdir+'map_DTvsphi_y.png')
404  #mapplot(tfiles_plotting, label, "dydz", window=25., title=htitle, fitsawteeth=True,fitsine=True)
405  mapplot(tfiles_plotting, label, "dydz", window=10., title=htitle,peaksbins=2)
406  c1.SaveAs(pdir+'map_DTvsphi_dydz.png')
407 
408 
409  qcount=0
410  for wheel in DT_TYPES:
411  if wheel[1]!="ALL": continue
412  for station in wheel[2]:
413  for sector in range(1,station[2]+1):
414  if qcount>QUICKTESTN: break
415  qcount += 1
416  ssector = "%02d" % sector
417  pdir = dt_basedir+'/'+wheel[0]+'/'+station[1]+'/'+ssector+'/'
418  label = "DTvsz_st%ssec%s" % (station[1], ssector)
419  htitle = "station %s, sector %d" % (station[1], sector)
420  mapplot(tfiles_plotting, label, "x", window=10., title=htitle, peaksbins=2)
421  c1.SaveAs(pdir+'map_DTvsz_x.png')
422  mapplot(tfiles_plotting, label, "dxdz", window=10., title=htitle, peaksbins=2)
423  c1.SaveAs(pdir+'map_DTvsz_dxdz.png')
424 
425  if station[1]=='4': continue
426  mapplot(tfiles_plotting, label, "y", window=10., title=htitle, peaksbins=2)
427  c1.SaveAs(pdir+'map_DTvsz_y.png')
428  mapplot(tfiles_plotting, label, "dydz", window=10., title=htitle, peaksbins=2)
429  c1.SaveAs(pdir+'map_DTvsz_dydz.png')
430 
431  qcount=0
432  for wheel in DT_TYPES:
433  if wheel[1]!="ALL": continue
434  for station in wheel[2]:
435  if qcount>QUICKTESTN: break
436  qcount += 1
437  pdir = dt_basedir+'/'+wheel[0]+'/'+station[1]+'/'
438  label = "DTvsz_st%ssecALL" % (station[1])
439  htitle = "station %s" % (station[1])
440 
441  print(label, end=' ')
442  mapplot(tfiles_plotting, label, "x", window=10., title=htitle, peaksbins=2)
443  c1.SaveAs(pdir+'map_DTvsz_all_x.png')
444  mapplot(tfiles_plotting, label, "dxdz", window=10., title=htitle, peaksbins=2)
445  c1.SaveAs(pdir+'map_DTvsz_all_dxdz.png')
446 
447  if station[1]=='4': continue
448  mapplot(tfiles_plotting, label, "y", window=10., title=htitle, peaksbins=2)
449  c1.SaveAs(pdir+'map_DTvsz_all_y.png')
450  mapplot(tfiles_plotting, label, "dydz", window=10., title=htitle, peaksbins=2)
451  c1.SaveAs(pdir+'map_DTvsz_all_dydz.png')
452 
453  saveTestResultsMap(options.runLabel)
454 
def wheelLetter
Definition: plotscripts.py:39
const uint16_t range(const Frame &aFrame)
def saveTestResultsMap
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
def alignmentValidation.doSegDiffPlotsCSC (   csc_basedir,
  tfiles_plotting,
  iter_reports 
)
write segment-difference plots for CSC

   segdiff "csc_resid" and "csc_slope"

set of plots of
rphi vs qpt, rphi for positive, rphi for negative ("csc_resid")
drphidz vs qpt, drphidz for positive, drphidz for negative ("csc_slope")
done for ME1-ME2, ME2-ME3, and ME3-ME4 stations combinations with
  endcap "m" or "p" 
  ring 1 or 2
  chamber 1-18 (r1) or 1-36 (r2)
note: there's no ME3-ME4 plots for R2

Interface: could be accessed through a general CSC chambers map, but only for chambers in
stations 2-4 (e.g., station 2 would provide ME1-ME2 plots).

Definition at line 691 of file alignmentValidation.py.

References sistrip::SpyUtilities.range(), plotscripts.segdiff(), and plotscripts.segdiffvsphicsc().

Referenced by doIterationPlots().

692 def doSegDiffPlotsCSC(csc_basedir, tfiles_plotting, iter_reports):
693  """write segment-difference plots for CSC
694 
695  segdiff "csc_resid" and "csc_slope"
696 
697  set of plots of
698  rphi vs qpt, rphi for positive, rphi for negative ("csc_resid")
699  drphidz vs qpt, drphidz for positive, drphidz for negative ("csc_slope")
700  done for ME1-ME2, ME2-ME3, and ME3-ME4 stations combinations with
701  endcap "m" or "p"
702  ring 1 or 2
703  chamber 1-18 (r1) or 1-36 (r2)
704  note: there's no ME3-ME4 plots for R2
705 
706  Interface: could be accessed through a general CSC chambers map, but only for chambers in
707  stations 2-4 (e.g., station 2 would provide ME1-ME2 plots)."""
708 
709  qcount = 0
710  for iendcap in CSC_TYPES:
711  for istation in iendcap[2]:
712  if istation[1]=="1": continue
713  dstations = (int(istation[1])-1)*10 + int(istation[1])
714  for iring in istation[2]:
715  if iring[1]=="ALL": continue
716  if istation[1]=="4" and iring[1]=="2": continue
717  for ichamber in range(1,iring[2]+1):
718  if qcount>QUICKTESTN: break
719  qcount += 1
720  schamber = "%02d" % ichamber
721  pdir = csc_basedir+'/'+iendcap[0]+'/'+istation[1]+'/'+iring[1]+'/'+schamber+'/'
722  segdiff(tfiles_plotting, "csc_resid", dstations,
723  endcap=iendcap[1], ring=int(iring[1]), chamber=ichamber, window=15.)
724  c1.SaveAs(pdir + 'segdif_csc_resid.png')
725  segdiff(tfiles_plotting, "csc_slope", dstations,
726  endcap=iendcap[1], ring=int(iring[1]), chamber=ichamber, window=15.)
727  c1.SaveAs(pdir + 'segdif_csc_slope.png')
728 
729  """segdiffvsphicsc "csc_resid" and "csc_slope"
730 
731  plot for a specific deltaME station differences:
732  rphi vs phi of pair ("csc_resid")
733  dxdz vs phi of pair ("csc_slope")
734  contains plots for two (or one for ME4-ME3) rings
735  done for ME1-ME2, ME2-ME3, and ME3-ME4 stations combinations with
736  endcap "m" or "p"
737 
738  Interface: could be accessed by clicking on ME station boxes, but only for stations 2-4
739  (e.g., station 2 would provide ME1-ME2 plots)."""
740 
741  qcount = 0
742  for iendcap in CSC_TYPES:
743  for istation in iendcap[2]:
744  if istation[1]=="1": continue
745  dstations = (int(istation[1])-1)*10 + int(istation[1])
746  if qcount>QUICKTESTN: break
747  qcount += 1
748  pdir = csc_basedir+'/'+iendcap[0]+'/'+istation[1]+'/'
749  segdiffvsphicsc(tfiles_plotting, "csc_resid", dstations, window=10., endcap=iendcap[1])
750  c1.SaveAs(pdir + 'segdifphi_csc_resid.png')
751  segdiffvsphicsc(tfiles_plotting, "csc_slope", dstations, window=10., endcap=iendcap[1])
752  c1.SaveAs(pdir + 'segdifphi_csc_slope.png')
753 
const uint16_t range(const Frame &aFrame)
def segdiffvsphicsc
def alignmentValidation.doSegDiffPlotsDT (   dt_basedir,
  tfiles_plotting,
  iter_reports 
)
write segment-difference plots for DT

   segdiff "dt13_resid" and "dt13_slope"

set of plots of
x vs qpt, x for positive, x for negative ("dt13_resid")
dxdz vs qpt, dxdz for positive, dxdz for negative ("dt13_slope")
done for MB1-MB2, MB2-MB3, and MB3-MB4 stations combinations with all possible (wheel, sector)

Interface: could be accessed through a general DT chambers map, but only for chambers in
stations 2-4 (e.g., station 2 would provide MB1-MB2 plots).

   segdiff "dt2_resid" and "dt2_slope"

set of plots of
y vs q/pt, y for positive, y for negative ("dt2_resid")
dydz vs q/pt, dydz for positive, dydz for negative ("dt2_slope")
done for MB1-MB2, MB2-MB3 stations combinations with all possible (wheel, sector)

Interface: then the interface would still be a general DT map,
but the info only available from station 2 & 3 chambers.

Definition at line 582 of file alignmentValidation.py.

References funct.abs(), sistrip::SpyUtilities.range(), plotscripts.segdiff(), plotscripts.segdiff_xalign(), plotscripts.segdiffvsphi(), and plotscripts.segdiffvsphi_xalign().

Referenced by doIterationPlots().

583 def doSegDiffPlotsDT(dt_basedir, tfiles_plotting, iter_reports):
584  """write segment-difference plots for DT
585 
586  segdiff "dt13_resid" and "dt13_slope"
587 
588  set of plots of
589  x vs qpt, x for positive, x for negative ("dt13_resid")
590  dxdz vs qpt, dxdz for positive, dxdz for negative ("dt13_slope")
591  done for MB1-MB2, MB2-MB3, and MB3-MB4 stations combinations with all possible (wheel, sector)
592 
593  Interface: could be accessed through a general DT chambers map, but only for chambers in
594  stations 2-4 (e.g., station 2 would provide MB1-MB2 plots).
595 
596  segdiff "dt2_resid" and "dt2_slope"
597 
598  set of plots of
599  y vs q/pt, y for positive, y for negative ("dt2_resid")
600  dydz vs q/pt, dydz for positive, dydz for negative ("dt2_slope")
601  done for MB1-MB2, MB2-MB3 stations combinations with all possible (wheel, sector)
602 
603  Interface: then the interface would still be a general DT map,
604  but the info only available from station 2 & 3 chambers."""
605 
606  qcount = 0
607  for iwheel in DT_TYPES:
608  if iwheel[1]=="ALL": continue
609  for istation in iwheel[2]:
610  if istation[1]=="1": continue
611  dstations = (int(istation[1])-1)*10 + int(istation[1])
612  #print dstations
613  for isector in range(1, istation[2] + 1):
614  if isector > 12: continue
615  if qcount>QUICKTESTN: break
616  qcount += 1
617  ssector = "%02d" % isector
618  pdir = dt_basedir + '/' + iwheel[0] + '/' + istation[1] + '/' + ssector + '/'
619 
620  segdiff(tfiles_plotting, "dt13_resid", dstations, wheel=int(iwheel[1]), sector=isector, window=15.)
621  c1.SaveAs(pdir + 'segdif_dt13_resid.png')
622  segdiff(tfiles_plotting, "dt13_slope", dstations, wheel=int(iwheel[1]), sector=isector, window=15.)
623  c1.SaveAs(pdir + 'segdif_dt13_slope.png')
624 
625  if istation[1] != '4':
626  segdiff(tfiles_plotting, "dt2_resid", dstations, wheel=int(iwheel[1]), sector=isector, window=15.)
627  c1.SaveAs(pdir + 'segdif_dt2_resid.png')
628  segdiff(tfiles_plotting, "dt2_slope", dstations, wheel=int(iwheel[1]), sector=isector, window=15.)
629  c1.SaveAs(pdir + 'segdif_dt2_slope.png')
630 
631  qcount = 0
632  for iwheel in DT_TYPES:
633  if iwheel[1]=="ALL": continue
634  if abs(int(iwheel[1])) != 2: continue
635  for istation in iwheel[2]:
636  if istation[1]=="3": continue
637  #print dstations
638  for isector in range(1, istation[2] + 1):
639  ssector = "%02d" % isector
640  pdir = dt_basedir + '/' + iwheel[0] + '/' + istation[1] + '/' + ssector + '/'
641  if istation[1]=="1":
642  segdiff_xalign(tfiles_plotting, "x_dt1_csc", wheel=int(iwheel[1]), sector=isector, cscstations = "12")
643  c1.SaveAs(pdir + 'segdif_x_dt_csc_resid.png')
644  if istation[1]=="2":
645  segdiff_xalign(tfiles_plotting, "x_dt2_csc", wheel=int(iwheel[1]), sector=isector, cscstations = "1")
646  c1.SaveAs(pdir + 'segdif_x_dt_csc_resid.png')
647 
648  """segdiffvsphi "dt13_resid" and "dt13_slope"
649 
650  plot for a specific wheel #:
651  x vs phi of pair ("dt13_resid")
652  dxdz vs phi of pair ("dt13_slope")
653  contains all three combinations of neighboring stations
654  made for all possible wheel values
655 
656  Interface: could be accessed by clicking on wheel number under the "wheel" column
657  in a general DT map
658 
659  segdiffvsphi "dt2_resid" and "dt2_slope"
660 
661  plot for a specific wheel #:
662  y vs phi of pair ("dt2_resid")
663  dydz vs phi of pair ("dt2_slope")
664  contains both MB1-MB2 and MB2-MB3 combinations
665  made for all possible wheel values
666 
667  Interface: could be accessed by clicking on wheel number under the "wheel" column
668  in a general DT map"""
669 
670  if len(iter_reports)==0: return
671 
672  for iwheel in DT_TYPES:
673  if iwheel[1]=="ALL": continue
674  pdir = dt_basedir + '/' + iwheel[0] + '/'
675  segdiffvsphi(tfiles_plotting, iter_reports, "dt13_resid", int(iwheel[1]), window=10.)#, excludesectors=(1,7))
676  c1.SaveAs(pdir + 'segdifphi_dt13_resid.png')
677  segdiffvsphi(tfiles_plotting, iter_reports, "dt13_slope", int(iwheel[1]), window=10.)#, excludesectors=(1,7))
678  c1.SaveAs(pdir + 'segdifphi_dt13_slope.png')
679  segdiffvsphi(tfiles_plotting, iter_reports, "dt2_resid", int(iwheel[1]), window=10.)#, excludesectors=(1,7))
680  c1.SaveAs(pdir + 'segdifphi_dt2_resid.png')
681  segdiffvsphi(tfiles_plotting, iter_reports, "dt2_slope", int(iwheel[1]), window=15.)#, excludesectors=(1,7))
682  c1.SaveAs(pdir + 'segdifphi_dt2_slope.png')
683 
684  for iwheel in DT_TYPES:
685  if iwheel[1]=="ALL": continue
686  if abs(int(iwheel[1])) != 2: continue
687  pdir = dt_basedir + '/' + iwheel[0] + '/'
688  segdiffvsphi_xalign(tfiles_plotting, int(iwheel[1]), window=10.)
689  c1.SaveAs(pdir + 'segdifphi_x_dt_csc_resid.png')
690 
const uint16_t range(const Frame &aFrame)
def segdiffvsphi_xalign
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
def segdiff_xalign
def alignmentValidation.idsForFile (   dir_name,
  file_name 
)
Recursively looks for file named file_name under dir_name directory
and fill the list with dir names converted to IDs 

Definition at line 911 of file alignmentValidation.py.

References dirToID().

Referenced by createCanvasToIDList().

912 def idsForFile(dir_name, file_name):
913  '''Recursively looks for file named file_name under dir_name directory
914  and fill the list with dir names converted to IDs
915  '''
916  id_list = []
917  for f in os.listdir(dir_name):
918  dirfile = os.path.join(dir_name, f)
919  if os.path.isfile(dirfile) and f==file_name:
920  if file_name[-4:]=='.php': id_list.append(dir_name+'/'+file_name)
921  else: id_list.append(dirToID(dir_name))
922  # recursively access file names in subdirectories
923  elif os.path.isdir(dirfile):
924  #print "Accessing directory:", dirfile
925  ids = idsForFile(dirfile, file_name)
926  if (len(ids)>0):
927  id_list.extend(ids)
928  return id_list
929 
def alignmentValidation.isFileUnderDir (   dir_name,
  file_name 
)

functions definitions

Recursively looks for file named file_name under dir_name directory

Definition at line 281 of file alignmentValidation.py.

Referenced by createCanvasesList().

282 def isFileUnderDir(dir_name, file_name):
283  '''Recursively looks for file named file_name under dir_name directory
284  '''
285  if not DO_DT and dir_name.find("MB")>-1:
286  return False
287  if not DO_CSC and dir_name.find("ME")>-1:
288  return False
289 
290  for f in os.listdir(dir_name):
291  dirfile = os.path.join(dir_name, f)
292  if os.path.isfile(dirfile) and f==file_name:
293  return True
294  # recursively access file names in subdirectories
295  elif os.path.isdir(dirfile):
296  #print "Accessing directory:", dirfile
297  if isFileUnderDir(dirfile, file_name): return True
298  return False
299 
300 
# to time saving of plots
def isFileUnderDir
functions definitions
def alignmentValidation.saveAs (   nm)

Definition at line 301 of file alignmentValidation.py.

Referenced by doCurvaturePlotsDT(), doFitFunctionsPlotsCSC(), and doFitFunctionsPlotsDT().

302 def saveAs(nm):
303  t1 = time.time()
304  ddt[15] += 1
305  c1.SaveAs(nm)
306  tn = time.time()
307  ddt[16] = 1./ddt[15]*((ddt[15]-1)*ddt[16] + tn-t1)
308 

Variable Documentation

string alignmentValidation.action = "store_true"

Definition at line 82 of file alignmentValidation.py.

string alignmentValidation.allOptions = "-l "

Definition at line 200 of file alignmentValidation.py.

tuple alignmentValidation.c1 = ROOT.TCanvas("c1","c1",800,600)

do drawing

Definition at line 1025 of file alignmentValidation.py.

Referenced by reco::NamedCompositeCandidate.addDaughter(), reco::CompositeCandidate.addDaughter(), HcalPulseShapes.analyticPulseShapeSiPMHO(), reco::NamedCompositeCandidate.applyRoles(), reco::CompositeCandidate.applyRoles(), trklet::TrackletCalculatorDisplaced.approxtracklet(), TwoBodyDecayModel.cartesianSecondaryMomenta(), condbon.cdbon_write(), checkPhiInRange(), NamedCandCombinerBase.combine(), CandCombinerBase< OutputCollection, CandPtr >.combine(), PFAlgo.createCandidatesHF(), CTPPSGeometryESModule.CTPPSGeometryESModule(), TwoBodyDecayDerivatives.dqsdm(), TwoBodyDecayDerivatives.dqsdphi(), TwoBodyDecayDerivatives.dqsdpx(), TwoBodyDecayDerivatives.dqsdpy(), TwoBodyDecayDerivatives.dqsdpz(), TwoBodyDecayDerivatives.dqsdtheta(), DTNoiseComputation.endJob(), fastInvertPDM2(), CMTRawAnalyzer.fillDigiAmplitude(), CMTRawAnalyzer.fillDigiAmplitudeHF(), CMTRawAnalyzer.fillDigiAmplitudeHFQIE10(), CMTRawAnalyzer.fillDigiAmplitudeHO(), CMTRawAnalyzer.fillDigiAmplitudeQIE11(), SiStripBaseCondObjDQM.fillSummaryMEs(), heppy::Davismt2.find_high(), hitfit::Chisq_Constrainer.fit(), DTLinearFit.fitNpar(), lumi::fPoly.getCorrection(), GridInterpolator3DException.GridInterpolator3DException(), MonitorElementsDb.htmlOutput(), PFDisplacedVertexHelper.identifyVertex(), CSCWireGeometry.intersection(), CSCLayerGeometry.intersectionOfTwoLines(), PerigeeConversions.jacobianParameters2Cartesian(), PFDisplacedVertexHelper.lambdaCP(), EvolutionECAL.LightCollectionEfficiency(), EvolutionECAL.LightCollectionEfficiencyWeighted(), GEMStripTopology.localError(), CSCRadialStripTopology.localError(), TkRadialStripTopology.localError(), main(), makePlots(), FastTrackerRecHitMatcher.match(), SiStripRecHitMatcher.match(), GlobalTrackerMuonAlignment.misalignMuon(), GlobalTrackerMuonAlignment.misalignMuonL(), heppy::Davismt2.mt2_bisect(), heppy::Davismt2.nsols(), PhiInterval.PhiInterval(), proxim(), CSCTFPtMethods.Pt3Stn(), DTConfigDBProducer.readDTCCBConfig(), RectangularEtaPhiRegion.RectangularEtaPhiRegion(), heppy::mt2w_bisect::mt2w.teco(), align.toMatrix(), egamma.towersOf(), VVIObj.VVIObj(), sistripvvi::VVIObj.VVIObj(), VVIObjF.VVIObjF(), CSCWireGeometry.wireEnds(), and GlobalTrackerMuonAlignment.writeGlPosRcd().

list alignmentValidation.CANVASES_LIST_TEMPLATE

Definition at line 224 of file alignmentValidation.py.

string alignmentValidation.comdir = "common/"

setup output:

Definition at line 1010 of file alignmentValidation.py.

int alignmentValidation.default = ''

Definition at line 41 of file alignmentValidation.py.

string alignmentValidation.dest = "runLabel"

Definition at line 42 of file alignmentValidation.py.

alignmentValidation.DO_CSC = False

Definition at line 169 of file alignmentValidation.py.

alignmentValidation.DO_CURVATURE = False

Definition at line 184 of file alignmentValidation.py.

alignmentValidation.DO_DIAGNOSTIC = options.diagnostic

Definition at line 198 of file alignmentValidation.py.

alignmentValidation.DO_DT = False

Definition at line 168 of file alignmentValidation.py.

alignmentValidation.DO_FIT = False

Definition at line 185 of file alignmentValidation.py.

alignmentValidation.DO_MAP = False

Definition at line 182 of file alignmentValidation.py.

alignmentValidation.DO_MEDIAN = False

Definition at line 186 of file alignmentValidation.py.

alignmentValidation.DO_SEGDIFF = False

Definition at line 183 of file alignmentValidation.py.

string alignmentValidation.fname = options.inputDir+'/'

main script

Definition at line 959 of file alignmentValidation.py.

Referenced by L1TMuonGlobalParams.absIsoCheckMemLUTPath(), L1TMuonGlobalParamsHelper.absIsoCheckMemLUTPath(), HcalTBWriter.analyze(), EcalSRCondTools.analyze(), L1TMuonGlobalParams.bEtaExtrapolationLUTPath(), L1TMuonGlobalParamsHelper.bEtaExtrapolationLUTPath(), L1TMuonGlobalParams.bONegMatchQualLUTPath(), L1TMuonGlobalParamsHelper.bONegMatchQualLUTPath(), L1TMuonGlobalParams.bOPosMatchQualLUTPath(), L1TMuonGlobalParamsHelper.bOPosMatchQualLUTPath(), L1TMuonGlobalParams.bPhiExtrapolationLUTPath(), L1TMuonGlobalParamsHelper.bPhiExtrapolationLUTPath(), clangcms::EDMPluginDumper.checkASTDecl(), dd_to_html(), GeometryInfoDump.dumpInfo(), ExternalLHEAsciiDumper.endRun(), TSGForOIDNN.evaluateClassifier(), TSGForOIDNN.evaluateRegressor(), L1TMuonGlobalParams.fEtaExtrapolationLUTPath(), L1TMuonGlobalParamsHelper.fEtaExtrapolationLUTPath(), trklet::TrackDerTable.fillTable(), L1TMuonGlobalParams.fONegMatchQualLUTPath(), L1TMuonGlobalParamsHelper.fONegMatchQualLUTPath(), L1TMuonGlobalParams.fOPosMatchQualLUTPath(), L1TMuonGlobalParamsHelper.fOPosMatchQualLUTPath(), L1TMuonGlobalParams.fPhiExtrapolationLUTPath(), L1TMuonGlobalParamsHelper.fPhiExtrapolationLUTPath(), L1TMuonGlobalParams.fwdNegSingleMatchQualLUTPath(), L1TMuonGlobalParamsHelper.fwdNegSingleMatchQualLUTPath(), L1TMuonGlobalParams.fwdPosSingleMatchQualLUTPath(), L1TMuonGlobalParamsHelper.fwdPosSingleMatchQualLUTPath(), MatacqProducer.getMatacqFile(), popcon::EcalTPGFineGrainStripfromFile.getNewObjects(), popcon::EcalTPGFineGrainTowerfromFile.getNewObjects(), popcon::EcalTPGSpikeThresholdfromFile.getNewObjects(), popcon::EcalSRPHandler.getNewObjects(), popcon::EcalTPGPhysicsConstfromFile.getNewObjects(), popcon::EcalLaser_weekly_Linearization.getNewObjects(), popcon::EcalLaser_weekly_Linearization_Check.getNewObjects(), popcon::EcalTPGLinPed.getNewObjects(), popcon::EcalTPGPedfromFile.getNewObjects(), popcon::EcalLaser_weekly_Handler.getNewObjects(), TrackingUtility.goToDir(), SiStripUtility.goToDir(), L1TMuonGlobalParams.idxSelMemEtaLUTPath(), L1TMuonGlobalParamsHelper.idxSelMemEtaLUTPath(), L1TMuonGlobalParams.idxSelMemPhiLUTPath(), L1TMuonGlobalParamsHelper.idxSelMemPhiLUTPath(), L1PrefiringWeightProducer.L1PrefiringWeightProducer(), main(), L1TMuonGlobalParams.oEtaExtrapolationLUTPath(), L1TMuonGlobalParamsHelper.oEtaExtrapolationLUTPath(), trklet::Globals.ofstream(), HcalLuttoDB.openChecksums(), trklet::MemoryBase.openFile(), HcalLuttoDB.openPerCrate(), HcalLuttoDB.openPerLut1(), HcalLuttoDB.openPerLut2(), L1TMuonGlobalParams.oPhiExtrapolationLUTPath(), L1TMuonGlobalParamsHelper.oPhiExtrapolationLUTPath(), L1TMuonGlobalParams.ovlNegSingleMatchQualLUTPath(), L1TMuonGlobalParamsHelper.ovlNegSingleMatchQualLUTPath(), L1TMuonGlobalParams.ovlPosSingleMatchQualLUTPath(), L1TMuonGlobalParamsHelper.ovlPosSingleMatchQualLUTPath(), DDLParser.parseFile(), MODCCSHFDat.populateClob(), L1TTwinMuxRawToDigi.processFed(), RPCTriggerConfig.produce(), L1TMuonGlobalParams.relIsoCheckMemLUTPath(), L1TMuonGlobalParamsHelper.relIsoCheckMemLUTPath(), ODLTCConfig.setParameters(), ODTTCFConfig.setParameters(), ODTTCciConfig.setParameters(), ODDCCConfig.setParameters(), ODSRPConfig.setParameters(), ODLaserConfig.setParameters(), CmsShowMain.setupDataHandling(), L1TMuonGlobalParams.sortRankLUTPath(), L1TMuonGlobalParamsHelper.sortRankLUTPath(), trklet::AllProjectionsMemory.writeAP(), trklet::CandidateMatchMemory.writeCM(), trklet::CleanTrackMemory.writeCT(), MODCCSHFDat.writeDB(), trklet::FullMatchMemory.writeMC(), trklet::StubPairsMemory.writeSP(), trklet::StubTripletsMemory.writeST(), trklet::VMStubsMEMemory.writeStubs(), trklet::TrackFitMemory.writeTF(), trklet::TrackletParametersMemory.writeTPAR(), trklet::TrackletProjectionsMemory.writeTPROJ(), and trklet::VMProjectionsMemory.writeVMPROJ().

string alignmentValidation.help = "[REQUIRED] label to use for a run"

Definition at line 39 of file alignmentValidation.py.

alignmentValidation.i1prefix = options.i1prefix

Definition at line 157 of file alignmentValidation.py.

alignmentValidation.iNprefix = options.iNprefix

Definition at line 160 of file alignmentValidation.py.

alignmentValidation.iter1_reports = []

Definition at line 962 of file alignmentValidation.py.

tuple alignmentValidation.iter1_tfile = None

Definition at line 961 of file alignmentValidation.py.

string alignmentValidation.iteration1 = "iter1"

Definition at line 1011 of file alignmentValidation.py.

string alignmentValidation.iterationN = "iterN"

Definition at line 1012 of file alignmentValidation.py.

alignmentValidation.iterN_reports = []

Definition at line 983 of file alignmentValidation.py.

tuple alignmentValidation.iterN_tfile = None

Definition at line 982 of file alignmentValidation.py.

alignmentValidation.outdir = options.outputDir

Definition at line 154 of file alignmentValidation.py.

Referenced by main().

tuple alignmentValidation.parser = optparse.OptionParser(usage)

Definition at line 36 of file alignmentValidation.py.

tuple alignmentValidation.pic_ids = createCanvasToIDList("canvas2id_list.js")

Definition at line 1047 of file alignmentValidation.py.

int alignmentValidation.QUICKTESTN = 10000

Definition at line 217 of file alignmentValidation.py.

alignmentValidation.SINGLE_ITERATION = False

Definition at line 179 of file alignmentValidation.py.

list alignmentValidation.tfiles1_plotting = []

Definition at line 960 of file alignmentValidation.py.

list alignmentValidation.tfilesN_plotting = []

Definition at line 981 of file alignmentValidation.py.

string alignmentValidation.type = "string"

Definition at line 40 of file alignmentValidation.py.

string alignmentValidation.usage = '%prog [options]\n'

To parse commandline args.

Definition at line 19 of file alignmentValidation.py.