BCAL Calibration
From GlueXWiki
Contents
Steps in Calibration
macros are located at /group/halld/Users/dalton/BCAL/monitoring/macros/
- Remove 4ns ADC hardware offset (pass 1)
- Run reconstruction with BCAL_TDC_Timing plugin to produce the BCAL_TDC_Offsets/Deltat_raw/ histogram
- Run analysis script over output
- script for single run is macros/extract_ADC_Dt_Zcorr.C
- macros/monitor.py --adc4ns can be used to run over all runs
- Load constants to CCDB table /BCAL/ADC_timing_offsets using python macros/commit_CCDB.py -d output/ADCendDt/correction/ --adc
- Remove 32ns TDC hardware offset (pass 1)
- Set CCDB table /BCAL/TDC_offsets to 0
- Run reconstruction with BCAL_online plugin to produce the /bcal/bcal_Uhit_tdiff_raw_ave histogram (pass 1)
- Run analysis script over output
- script for single run is macros/extract_Uhit_tdiff.C
- macros/monitor.py can be used to run over all runs
- Load constants to CCDB table /BCAL/TDC_offsets using python macros/commit_CCDB.py -d output/tdiff/TDCcorrection/runs/ --tdc -v
- TDC timewalk correction (pass 2)
- Prerequisites:
- Remove 4ns ADC hardware offset
- Remove 32ns ADC hardware offset
- Run reconstruction with BCAL_TDC_Timing plugin
- Run analysis script over output
- script for single run is macros/fit_TDCtimewalk.C
- macros/monitor.py --timewalk can be used to run over all runs
- Load constants to CCDB
- Prerequisites:
- Position from end time-difference (pass 2)
- Prerequisites:
- Remove 4ns ADC hardware offset
- Run reconstruction with BCAL_TDC_Timing plugin
- Run analysis script over output
- script for single run is macros/
- ./macros/monitor.py --position can be used to run over all runs
- Load constants to CCDB
- Prerequisites:
- Calibrate the point time offset from tracking (pass 2)
- Prerequisites:
- Remove 4ns ADC hardware offset
- Run reconstruction with BCAL_TDC_Timing plugin
- Run analysis script over output
- Linear fit (needs ~1M events per run)
- script for single run is macros/fit_ZvsDeltaT_p1.C
- macros/monitor.py can be used to run over all runs
- Quadratic fit (needs 5 files per run)
- Linear fit (needs ~1M events per run)
- Load constants to CCDB
- Prerequisites:
- Attenuation length and gain ratio (pass 3)
- Prerequisites:
- position calibration (pass 2)
- Run reconstruction with BCAL_attenlength_gainratio plugin
- Run analysis script over output
- Load constants to CCDB
- Prerequisites:
CCDB Tables
base_time_offset
2 column, 1 rows. This is used in DBCALHit_factory.cc , it is added to the hit time
ADC_timing_offsets
1 col, 1536 row This is loaded in DBCALHit_factory and is used to remove the 4 ns timing offset.
effective_velocities
1 col, 768 row used in DBCALCluster_factory::overlap() (cluster with hit) used in DBCALPoint_factory to calculate z and throw away points > 60 cm from BCAL used in DBCALPoint to subtract the fiber-propagation-time from the time sum
channel_global_offset
1 col, 768 row This is used in DBCALHit_factory and DBCALTDCHit_factory , it is subtracted from the hit time.
z_track_parms
3 col, 768 row Used in BCALPoint to get z position from delta_t
tdiff_u_d
1 col, 768 row This is used in DBCALHit_factory and DBCALTDCHit_factory, but we agree now that it should not be.
digi_scales
3 col, 1 rows. ASCALE not used, but TSCALE is
TDC_offsets
1 col, 1152 row This is used in DBCALTDCHit_factory , it is subtracted from the hit time. I think this is to line up the TDCs with the ADCs.