|
MUSIC unknown
Analysis for the MUSIC active-target ionization chamber
|
One readout channel's beam-peak calibration. More...
#include <CalibrateBeam.hpp>
Public Attributes | |
| TString | name |
| Channel name from the active channel map. | |
| Char_t | side |
| Readout end: 'L' or 'R' for the split strips 1-16, 'S' for the unsplit end strips 0 and 17, 'C' for the cathode, 'G' for the grid. | |
| Int_t | strip |
| Anode strip index this channel reads; -1 for the cathode. | |
| Double_t | fit_adc = 0.0 |
| Modal beam peak, in ADC: the modal bin of the channel's beam-peak histogram (100 bins over the 5th-95th percentile of the samples), or the median for the cathode, which has no clean peak. | |
| Long64_t | n_samples = 0 |
| Events the anchor was taken from. | |
| Double_t | gain = -1.0 |
| Left/right gain-match override. | |
| Double_t | offset_adc = 0.0 |
| ADC subtracted from this channel before its gain, only when the channel fired (a reading of 0 stays 0). | |
| Double_t | ridge_ratio = 0.0 |
| Short channels only: C_short / C_long = -1 / slope from this subfile's own ridge fit, or 0 when the ridge was not measurable and a fallback was used. | |
| Double_t | ridge_offset = 0.0 |
| Short channels only: offset_adc in units of C_long, from this subfile's own ridge fit, aggregated over a run like ridge_ratio. | |
One readout channel's beam-peak calibration.
Produced per subfile by CalibrateBeam, and consumed by EnergyView to turn raw ADC into calibrated units.
Definition at line 44 of file CalibrateBeam.hpp.
| Double_t ChannelCal::fit_adc = 0.0 |
Modal beam peak, in ADC: the modal bin of the channel's beam-peak histogram (100 bins over the 5th-95th percentile of the samples), or the median for the cathode, which has no clean peak.
No fit and no width. 0 when uncalibrated (too few samples).
For the long end of a segmented strip this is its anchor; for the short end it only seeds the ridge fit: see gain.
Definition at line 57 of file CalibrateBeam.hpp.
Referenced by CalibrateBeam::CalibrateBeamOneSubfile(), Gain(), IsCalibrated(), ReduceToAnchors(), and WriteCalibrationTree().
| Double_t ChannelCal::gain = -1.0 |
Left/right gain-match override.
When >= 0 this is used instead of 1 / fit_adc; when negative the reciprocal fit is used.
Set by the gain-match step. The long end is anchored on its own modal beam peak, which is the full deposit for the majority of beam events that leave the short end silent. A robust line through the beam-gated (short, long) pairs, the charge-sharing ridge, has slope -k and intercept a; the short end's anchor is C_long / k and its offset (offset_adc) (a - C_long) / k, the sideways shift of the ridge relative to the long-only peak. With gain x (ADC - offset) on a short end that fired, events with and without a short hit sum to the same total. Where the ridge is not measurable the short side falls back to the parity's median C_short / C_long and median offset, or the global median ratio and no offset. This puts left and right on the same charge scale, so reaction events — which share charge between ends differently than beam events do — no longer sawtooth between even and odd strips.
Definition at line 76 of file CalibrateBeam.hpp.
Referenced by Gain(), and WriteCalibrationTree().
| Long64_t ChannelCal::n_samples = 0 |
Events the anchor was taken from.
Definition at line 58 of file CalibrateBeam.hpp.
Referenced by CalibrateBeam::CalibrateBeamOneSubfile(), ReduceToAnchors(), and WriteCalibrationTree().
| TString ChannelCal::name |
Channel name from the active channel map.
Definition at line 45 of file CalibrateBeam.hpp.
Referenced by CalibrateBeam::BuildChannels(), CalibrateBeam::CalibrateBeamOneSubfile(), and ReduceToAnchors().
| Double_t ChannelCal::offset_adc = 0.0 |
ADC subtracted from this channel before its gain, only when the channel fired (a reading of 0 stays 0).
Short ends of strips 1-16 only, from the ridge; 0 elsewhere. On 37Cl the R-chain short ends carry 100-230 ADC of it, the L-chain ones a few tens.
Definition at line 81 of file CalibrateBeam.hpp.
Referenced by WriteCalibrationTree().
| Double_t ChannelCal::ridge_offset = 0.0 |
Short channels only: offset_adc in units of C_long, from this subfile's own ridge fit, aggregated over a run like ridge_ratio.
Definition at line 94 of file CalibrateBeam.hpp.
Referenced by WriteCalibrationTree().
| Double_t ChannelCal::ridge_ratio = 0.0 |
Short channels only: C_short / C_long = -1 / slope from this subfile's own ridge fit, or 0 when the ridge was not measurable and a fallback was used.
This is a preamplifier gain ratio and therefore fixed per channel. That is what lets AggregateRidgeRatiosForRun() take the run-level median over the subfiles that measured it (three or more) and rewrite each subfile's stored short-side gain from that median and its own long anchor; it edits the calibration tree, not this record.
Definition at line 91 of file CalibrateBeam.hpp.
Referenced by WriteCalibrationTree().
| Char_t ChannelCal::side |
Readout end: 'L' or 'R' for the split strips 1-16, 'S' for the unsplit end strips 0 and 17, 'C' for the cathode, 'G' for the grid.
Definition at line 48 of file CalibrateBeam.hpp.
Referenced by CalibrateBeam::BuildChannels(), CalibrateBeam::CalibrateBeamOneSubfile(), CollectAnchorSamplesOneSubfile(), ReduceToAnchors(), and WriteCalibrationTree().
| Int_t ChannelCal::strip |
Anode strip index this channel reads; -1 for the cathode.
Definition at line 49 of file CalibrateBeam.hpp.
Referenced by CalibrateBeam::BuildChannels(), CalibrateBeam::CalibrateBeamOneSubfile(), CollectAnchorSamplesOneSubfile(), and WriteCalibrationTree().