Difference between revisions of "DIRC Software Overview"

From GlueXWiki
Jump to: navigation, search
(Software Packages and Setup)
(Command line options)
Line 60: Line 60:
 
* '''DIRC:CUT_TDIFFR''' - Timing cut (+/- in ns) for reflected photons
 
* '''DIRC:CUT_TDIFFR''' - Timing cut (+/- in ns) for reflected photons
 
* '''DIRC:SIGMA_THETAC''' - Single photon Cherenkov angle resolution for likelihood calculation
 
* '''DIRC:SIGMA_THETAC''' - Single photon Cherenkov angle resolution for likelihood calculation
 +
* '''DIRC_LUT''' - Specify full path to local file containing alternate LUT ROOT TTree (default is to pull from CCDB)
  
 
== Analysis Scripts ==
 
== Analysis Scripts ==

Revision as of 23:09, 5 January 2019

Software Packages and Setup

The software packages required to run DIRC simulation and reconstruction are a part of standard GlueX software deployment.

  • Packages: hdds, halld_recon, halld_sim, hdgeant4, and gluex_root_analysis
    • For the 2018 commissioning period we are using a branch of these repositories: dirc_commissioning_2018
  • Installation instructions and a list of steps to start generating simulation can be found in this README file

The latest version of MC samples which can be studied with this branch are located at:

  • Event samples: /volatile/halld/home/jrsteven/2018-dirc/dircsim-2018_08-ver10/

halld_recon/src/libraries

DIRC classes

  • DDIRCGeometry: Load bar position from HDDS, and provide tools for converting pixel # to PMT/pixel row and column for hit patterns
  • DDIRCLut: LUT algorithm comparing hit pixel channel/time with expectations, and calculate PID likelihood
  • DDIRCLutReader: Utility class to load ROOT TTree containing LUT from CCDB or command line argument for local files
  • DDIRCPmtHit: Calibrated hit for PMT pixels consisting of hit channel, time, and time-over-threshold
  • DDIRCTDCDigiHit: Uncalibrated hit for both leading and trailing edge of pulses
  • DDIRCTruthBarHit: Truth information for tracks incident on fused silica bars
  • DDIRCTruthPmtHit: Unsmeared hit for PMT pixels

HDDM additions

  • DEventWriter/SourceHDDM/event.xml:
    • Add DDIRCTruthBarHit, DDIRCTruthPmtHit and DDIRCPmtHit to event record for hdgeant and mcsmear output.
  • DEventWriter/SourceREST/rest.xml:
    • Add DDIRCPmtHit and DDIRCMatchParams to REST output format

PID additions

  • DParticleID
    • Initialize DIRCLut class and call CalcLut for tracks with relevant input from track
  • DDetectorMatches
    • Added DDIRCMatchParams to contain DIRC information associated with tracks
    • Functions match tracks to DIRC hits and run LUT algorithm

Plugin additions

  • DIRC_online: online monitoring plugin for both DIRCTDCDigiHits and DIRCPmtHits
  • dirc_hists: diagnostic histograms for LUT algorithm for with inclusive sample of tracks
  • dirc_reactions: diagnostic histograms for LUT algorithm for gp -> 2pi p and gp -> 2k p reactions ("identified" pi/K samples)
  • monitoring_hists: add DIRC PID histograms to standard plugin for reconstruction diagnostics (see ANALYSIS library)
  • truth_dirc: plots of hit patterns for DIRC truth hit objects
  • lut_dirc: utility for creating ROOT TTrees to make LUT for reconstruction
  • pid_dirc: utility to create ROOT TTrees for standalone LUT macros

Command line options

  • REST:WRITE_DIRC_HITS - Use with danarest plugin to save DIRCPmtHits to the REST file for later analysis
  • REST:DIRC_CALC_LUT - Use when analyzing REST files containing DIRCPmtHits to re-calculate the LUT algorithm
  • DIRC:DEBUG_HISTS - Fill debugging histograms on in DIRCLut class inside algorithm (significant slowdown due to thread locking)
  • DIRC:TRUTH_BARHIT - Use DIRCTruthBarHit information for track position and momentum vector (not available when analyzing REST data)
  • DIRC:TRUTH_PIXELTIME - Use DIRCTruthPmtHit (un-smeared) for pixel time in LUT algorithm (not available when analyzing REST data)
  • DIRC:CUT_TDIFFD - Timing cut (+/- in ns) for direct photons
  • DIRC:CUT_TDIFFR - Timing cut (+/- in ns) for reflected photons
  • DIRC:SIGMA_THETAC - Single photon Cherenkov angle resolution for likelihood calculation
  • DIRC_LUT - Specify full path to local file containing alternate LUT ROOT TTree (default is to pull from CCDB)

Analysis Scripts

  • Analysis and calibration scripts should be located in dirc/ directory of hd_utilities

Translation table

  • Initial decoder work ongoing by David

Simulation samples

Generator Number of events (106) Settings Planned usage
bggen 50 General inclusive sample for many studies
gen_2pi_amp 10 ρ → π+π- Pure sample of pions with relevant kinematics
gen_2k 2.5 φ → K+K- Pure sample of kaons with relevant kinematics
k/pi p/m_p4_theata4 0.01 π+/- K+/- particle gun at p=4 GeV, theta=4 degrees, phi = -90 degrees Single particle tests


LUT algorithm documentation

  • Writeup from Maria

Studies

A list of DIRC Software Tasks is maintained, which are the required tools necessary for analysis of the commissioning data. Below are some planned/ongoing studies to evaluate the commissioning data.

Mis-alignment effects

  • Goal: Study qualitatively how mis-alignments may impact hit patterns and LUT reconstruction
  • Identify likely mis-alignments and implement in alternative geometries as examples of what we may observe in the data
    • Example mis-alignments: angles of bar box plane, angle between bar box and optical box (at rubber gasket), translation of mirror box in optical box, etc.
  • Develop script which parses text from DIRC_HDDS.xml (applies rotations and translations) and writes new XML file with mis-alignment (Yunjie)
    • Also needs to implement survey results for finalizing geometry at start of run period
  • Generate another sample of MC with modified geometry and use LUT from "as-built" geometry to see how the mis-alignments affect the commissioning observables

Final Alignment

  • Goal: Optimize alignment parameters for positions and angles of all optical components using identified track samples
  • Plan to use Bayesian optimization technique with FastDIRC algorithm (Cris/Yunjie)
    • Closure test with MC by the end of the year?
  • Possible tests using sub-samples for alignment procedure and validation
    • Align optical box components using tracks from single bar, then test alignment with tracks from other bars
    • Align all components using identified pion sample, then test alignment with identified kaon sample

Time imaging map

  • Goal: Study performance of time imaging algorithm as a function of theta, phi (Maria)

Particle ID efficiency

  • Goal: Using well determined reactions determine efficiency vs background rejection for different algorithms