Difference between revisions of "DIRC Software Tasks"
From GlueXWiki
(→Simulation) |
(→Data) |
||
Line 26: | Line 26: | ||
== Data == | == Data == | ||
− | * Write | + | * <strike>Write DDIRCTDCHit decoder in libraries/DAQ for parsing raw data (David) </strike> |
− | * Write DDIRCDigiHit in libraries/DIRC to be used in TTAB/DTranslationTable.cc to convert hardware ID to pixel ID (Bill) | + | ** Initial version works [https://github.com/JeffersonLab/halld_recon/pull/11/files pull request], but needs testing with data that includes more than headers |
+ | * Write DDIRCDigiHit in libraries/DIRC to be used in TTAB/DTranslationTable.cc to convert hardware ID to pixel ID (Bill/Justin) | ||
* Write DDIRCPmtHit_factory in libraries/DIRC to read DDIRCDigiHit, do time-walk correction, and write out the same object as mcsmear (Justin) | * Write DDIRCPmtHit_factory in libraries/DIRC to read DDIRCDigiHit, do time-walk correction, and write out the same object as mcsmear (Justin) | ||
* Calibration plugin and scripts for timing offsets from LED data (Yunjie) | * Calibration plugin and scripts for timing offsets from LED data (Yunjie) |
Revision as of 17:22, 24 August 2018
The software tasks to be completed for a successful DIRC commissioning are listed below under several categories. Please contact Justin Stevens if you're able to contribute to one of these activities.
Simulation
- Implement "as-built" geometry in HDDS xml, including all support structures and material inside the bar boxes (Yunjie/Maria)
- Implement individual bar sizes from spreadsheet provided by Matt?
-
Add smearing of DIRC truth hits in mcsmear to write out DIRCPmtHit object with time and pixel ID. Include time resolution smearing (Justin)- Add per-pixel efficiency from analysis of PMT module tests, with values eventually coming from CCDB tables (Andrew)
- Add cross talk from analysis of PMT module tests (TBD)
- Switch hdgeant4 to using "measured" times in GlueXSensitiveDetectorDIRC, instead of using "time_fixed". Requires similar modification to LUT reconstruction to include flight time of particle relative to other detectors. (Justin)
- A bug was identified in the propagation time by Roman, and Justin submitted an issue to Richard on the HDGeant4 GitHub.
- Add LED generator to hdgeant4/src/GlueXPrimaryGeneratorAction (similar to LUT generator) for developing timing calibration scripts. (Yunjie)
Reconstruction
-
Create DDIRCGeometry to retrieve necessary info from XML: including GetBar(Y) function to return bar ID for extrapolated tracks (Justin)- Add conversion of pixel number to position space (Justin)
-
Add CustomAction to dirc_reactions plugin to split tracks into kinematic bins, and fill histograms of thetaC, likelihood, hit patterns, etc. (Justin)-
Separate tracks by bar, x position (5 cm bins) and momentum (0.5 GeV bins)
-
- Add DIRCHits as associated objects to tracks, so they can be used more easily in later analysis stages (TBD)
- Studies size increase for REST files if these are included
- Add time imaging reconstruction to libraries/DIRC (Maria)
- Add FastDIRC reconstruction to libraries/DIRC (Cris?/Yunjie)
Data
-
Write DDIRCTDCHit decoder in libraries/DAQ for parsing raw data (David)- Initial version works pull request, but needs testing with data that includes more than headers
- Write DDIRCDigiHit in libraries/DIRC to be used in TTAB/DTranslationTable.cc to convert hardware ID to pixel ID (Bill/Justin)
- Write DDIRCPmtHit_factory in libraries/DIRC to read DDIRCDigiHit, do time-walk correction, and write out the same object as mcsmear (Justin)
- Calibration plugin and scripts for timing offsets from LED data (Yunjie)
- Test with simulation of LED signal generator in hdgeant4
Event Display
- Write class which provides 3D position for pixel from DDIRCHit object which can be used in Thomas's event display (TBD)
- Long term: create database of expected hit patterns for (PID, bar, x position, and momentum). Goal is to superimpose expected pattern histogram behind hits for individual events to see if they match (TBD)