|
MUSIC unknown
Analysis for the MUSIC active-target ionization chamber
|
Functions | |
| void | SetActiveEpoch (const RunEpoch *epoch) |
| Set the epoch the Active*() accessors read from. | |
| const RunEpoch * | GetActiveEpoch () |
| The currently active epoch, or null when none is set. | |
| const RunEpoch * | EpochForRun (Int_t run) |
| The epoch owning a run number. | |
| RunEpoch | MakeEpoch (const TString &name, const std::vector< Int_t > &runs) |
| Build an epoch prefilled from the flat configuration block. | |
| std::vector< Int_t > | RunRange (Int_t first, Int_t last) |
| Consecutive run numbers, for MakeEpoch(). | |
| const TString & | ActiveFileTag () |
| Output-name prefix of the active epoch. | |
| Int_t | ActiveNBoards () |
| Boards in the active epoch's setup. | |
| Int_t | ActiveNChannels () |
| Channels per board. | |
| UShort_t | ActiveTimingRefBoard () |
| Board the others are timing-aligned against. | |
| const std::vector< UShort_t > & | ActiveTimingRefBoardChannels () |
| Reference channel per board, for the alignment. | |
| Bool_t | ActiveDoBoardSync () |
| Whether to run the multi-board timing alignment. | |
| Bool_t | ActiveDoSort () |
| Whether to time-sort hits before event building. | |
| Bool_t | ActiveHasCathode () |
| Whether this era instrumented the cathode. | |
| Bool_t | ActiveUseSolarisData () |
| Whether this era's data is SOLARIS rather than CoMPASS. | |
| Double_t | ActiveEventTimeWindowUs () |
| Coincidence window for event building, in microseconds. | |
| Double_t | ActiveSeedHoldoffUs () |
| Seed holdoff in microseconds; 0 = off. See SEED_HOLDOFF_US. | |
| Double_t | ActiveSeedHoldoffMaxRatio () |
| The size, as a fraction of the new hit, under which the current seed counts as a pre-trigger. | |
| const TString & | ActiveReferenceChannel () |
| Channel whose hits seed events. | |
| Double_t | ActiveReferenceChannelMinAdc () |
| Lower energy gate on the seed channel, in ADC. | |
| Double_t | ActiveReferenceChannelMaxAdc () |
| Upper energy gate on the seed channel, in ADC. | |
| DedupStrategy | ActiveDedupStrategy () |
| How repeated hits on one slot are resolved. | |
| Double_t | ActiveStripEMinAdc () |
| Lower bound of the per-strip energy range, in ADC. | |
| Double_t | ActiveStripEMaxAdc () |
| Upper bound of the per-strip energy range, in ADC. | |
| Double_t | ActiveCathodeMaxAdc () |
| Cathode full scale, in ADC. | |
| Double_t | ActiveGridMaxAdc () |
| Grid full scale, in ADC. | |
| Double_t | ActiveStrip0MaxAdc () |
| Strip 0 full scale, in ADC. | |
| Double_t | ActiveStrip17MaxAdc () |
| Strip 17 full scale, in ADC. | |
| Double_t | ActiveLeftEvenMaxAdc () |
| Left-side ceiling for even strips, in ADC. | |
| Double_t | ActiveLeftOddMaxAdc () |
| Left-side ceiling for odd strips, in ADC. | |
| Double_t | ActiveRightEvenMaxAdc () |
| Right-side ceiling for even strips, in ADC. | |
| Double_t | ActiveRightOddMaxAdc () |
| Right-side ceiling for odd strips, in ADC. | |
| const std::vector< Int_t > & | ActiveRunNumbers () |
| Runs of the active epoch, or the flat RUN_NUMBERS when none is set. | |
| Int_t | ActiveMaxFiles () |
| Cap on subfiles processed per run for the active epoch. | |
| Double_t | ActiveSplitChunkSeconds () |
| Chunk length the active epoch's .sol files are split into, in seconds; non-positive means whole files. | |
| const PulseHistoryGroups & | ActivePulseHistoryGroups () |
| The pulse-history groups in force: the active epoch's set, or the flat PULSE_HISTORY_GROUPS when no epoch is set. | |
| Bool_t | ActiveIgnoreShortStrips () |
| Whether the decode keeps the long end only: the active epoch's setting; with none active, the setting of the one epoch the cross-section chain works on (AnalysisEpoch()), else the flat IGNORE_SHORT_STRIPS. | |
| void | ActivateAnalysisEpoch () |
| Make AnalysisEpoch() the active epoch, so a binary of the cross-section chain resolves the file tag, the channel map, the ADC scales and the decode flags of the one epoch it works on. | |
| Bool_t | FileInSample () |
| Whether the file this thread is processing is in the per-file sample: every file with SAVE_FULL_PLOTS, otherwise the ones the tool marked with SetPlotsThisFile(), the first PLOT_SAMPLE_FILES of each epoch. | |
| Bool_t | SavePlots () |
| FileInSample(), by the name the plot call sites use. | |
| std::ostream & | Detail () |
| std::cout for a file in the sample, a stream that discards otherwise: the per-file detail lines (per strip, per channel) go through this, so a file outside the sample keeps only its summary lines. | |
| std::ostream & | DetailErr () |
| Bool_t | InPlotSample (Int_t k) |
| Whether the k-th file (0-based, in file order) of an epoch's list is in the plot sample. | |
| void | SetPlotsThisFile (Bool_t on) |
| Mark the file this thread is about to process as in (or out of) the plot sample. | |
| const std::map< std::pair< Int_t, Int_t >, TString > & | ActiveChannelMap () |
| The channel map in force. | |
Variables | |
| const DatasetConfig & | cfg |
| The active dataset's configuration, flat block. | |
| const Int_t | ARR_SLOT_STRIP_0 = 0 |
| First anode strip, occupying the low end of the array. | |
| const Int_t | ARR_SLOT_STRIP_17 = 33 |
| Last anode strip. Strips run contiguously from ARR_SLOT_STRIP_0 to here. | |
| const Int_t | ARR_SLOT_CATHODE = 34 |
| Cathode signal. | |
| const Int_t | ARR_SLOT_GRID = 35 |
| Frisch grid signal. | |
| const Int_t | N_ARR_SLOTS = ARR_SLOT_GRID + 1 |
| Length of the per-event channel arrays. | |
| void Constants::ActivateAnalysisEpoch | ( | ) |
Make AnalysisEpoch() the active epoch, so a binary of the cross-section chain resolves the file tag, the channel map, the ADC scales and the decode flags of the one epoch it works on.
A no-op when the chain spans several epochs or none are declared, in which case the flat block serves as before. Called at the top of strip-sum-scatter, compute-regions and cross-section.
Definition at line 476 of file Constants.cpp.
Referenced by main().
| Double_t Constants::ActiveCathodeMaxAdc | ( | ) |
Cathode full scale, in ADC.
Definition at line 410 of file Constants.cpp.
| const std::map< std::pair< Int_t, Int_t >, TString > & Constants::ActiveChannelMap | ( | ) |
The channel map in force.
Definition at line 518 of file Constants.cpp.
Referenced by PulseHistory::BuildGroupMap(), Timing::BuildLongChannelList(), and EventBuilder::BuildSlotMap().
| DedupStrategy Constants::ActiveDedupStrategy | ( | ) |
How repeated hits on one slot are resolved.
Definition at line 401 of file Constants.cpp.
Referenced by EventBuilder::BuildEventsFromSortedHits(), and FinalizeEvent().
| Bool_t Constants::ActiveDoBoardSync | ( | ) |
Whether to run the multi-board timing alignment.
Definition at line 366 of file Constants.cpp.
Referenced by Timing::CalcTimeShiftsBeamMethodFromHits(), and RunFusedPipelineForFile().
| Bool_t Constants::ActiveDoSort | ( | ) |
Whether to time-sort hits before event building.
Definition at line 369 of file Constants.cpp.
Referenced by RunFusedPipelineForFile().
| Double_t Constants::ActiveEventTimeWindowUs | ( | ) |
Coincidence window for event building, in microseconds.
Definition at line 379 of file Constants.cpp.
Referenced by EventBuilder::BuildEventsFromSortedHits(), and PulseHistory::Measure().
| const TString & Constants::ActiveFileTag | ( | ) |
Output-name prefix of the active epoch.
Definition at line 443 of file Constants.cpp.
Referenced by StripSumScatter::CacheName(), RegionCutStore::Dir(), FileSet::EventsName(), and FileSet::FileLabel().
| Double_t Constants::ActiveGridMaxAdc | ( | ) |
Grid full scale, in ADC.
Definition at line 413 of file Constants.cpp.
| Bool_t Constants::ActiveHasCathode | ( | ) |
Whether this era instrumented the cathode.
Definition at line 372 of file Constants.cpp.
Referenced by CreateSummaryHistograms().
| Bool_t Constants::ActiveIgnoreShortStrips | ( | ) |
Whether the decode keeps the long end only: the active epoch's setting; with none active, the setting of the one epoch the cross-section chain works on (AnalysisEpoch()), else the flat IGNORE_SHORT_STRIPS.
Definition at line 488 of file Constants.cpp.
Referenced by EnergyView::Decode(), StripSumScatter::DescribeSelection(), and StripSumScatter::SimTagReport().
| Double_t Constants::ActiveLeftEvenMaxAdc | ( | ) |
Left-side ceiling for even strips, in ADC.
Definition at line 422 of file Constants.cpp.
| Double_t Constants::ActiveLeftOddMaxAdc | ( | ) |
Left-side ceiling for odd strips, in ADC.
Definition at line 425 of file Constants.cpp.
| Int_t Constants::ActiveMaxFiles | ( | ) |
Cap on subfiles processed per run for the active epoch.
Definition at line 447 of file Constants.cpp.
| Int_t Constants::ActiveNBoards | ( | ) |
Boards in the active epoch's setup.
Definition at line 353 of file Constants.cpp.
Referenced by EventBuilder::BuildEventsFromSortedHits(), PulseHistory::BuildGroupMap(), EventBuilder::BuildSlotMap(), and Timing::CalcTimeShiftsBeamMethodFromHits().
| Int_t Constants::ActiveNChannels | ( | ) |
Channels per board.
Definition at line 356 of file Constants.cpp.
Referenced by EventBuilder::BuildEventsFromSortedHits(), PulseHistory::BuildGroupMap(), EventBuilder::BuildSlotMap(), and PulseHistory::WriteToEventsFile().
| const PulseHistoryGroups & Constants::ActivePulseHistoryGroups | ( | ) |
The pulse-history groups in force: the active epoch's set, or the flat PULSE_HISTORY_GROUPS when no epoch is set.
Definition at line 452 of file Constants.cpp.
Referenced by RunFusedPipelineForFile().
| const TString & Constants::ActiveReferenceChannel | ( | ) |
Channel whose hits seed events.
Definition at line 390 of file Constants.cpp.
Referenced by EventBuilder::BuildEventsFromSortedHits(), and PulseHistory::Measure().
| Double_t Constants::ActiveReferenceChannelMaxAdc | ( | ) |
Upper energy gate on the seed channel, in ADC.
Definition at line 397 of file Constants.cpp.
Referenced by PulseHistory::Measure().
| Double_t Constants::ActiveReferenceChannelMinAdc | ( | ) |
Lower energy gate on the seed channel, in ADC.
Definition at line 393 of file Constants.cpp.
Referenced by PulseHistory::Measure().
| Double_t Constants::ActiveRightEvenMaxAdc | ( | ) |
Right-side ceiling for even strips, in ADC.
Definition at line 428 of file Constants.cpp.
| Double_t Constants::ActiveRightOddMaxAdc | ( | ) |
Right-side ceiling for odd strips, in ADC.
Definition at line 432 of file Constants.cpp.
| const std::vector< Int_t > & Constants::ActiveRunNumbers | ( | ) |
Runs of the active epoch, or the flat RUN_NUMBERS when none is set.
Definition at line 436 of file Constants.cpp.
| Double_t Constants::ActiveSeedHoldoffMaxRatio | ( | ) |
The size, as a fraction of the new hit, under which the current seed counts as a pre-trigger.
See SEED_HOLDOFF_MAX_RATIO.
Definition at line 386 of file Constants.cpp.
Referenced by EventBuilder::BuildEventsFromSortedHits().
| Double_t Constants::ActiveSeedHoldoffUs | ( | ) |
Seed holdoff in microseconds; 0 = off. See SEED_HOLDOFF_US.
Definition at line 383 of file Constants.cpp.
Referenced by EventBuilder::BuildEventsFromSortedHits().
| Double_t Constants::ActiveSplitChunkSeconds | ( | ) |
Chunk length the active epoch's .sol files are split into, in seconds; non-positive means whole files.
The flat SOL_SPLIT_CHUNK_SECONDS when no epoch is set.
Definition at line 448 of file Constants.cpp.
Referenced by FileSet::DiscoverSolRunSuffixes().
| Double_t Constants::ActiveStrip0MaxAdc | ( | ) |
Strip 0 full scale, in ADC.
Definition at line 416 of file Constants.cpp.
| Double_t Constants::ActiveStrip17MaxAdc | ( | ) |
Strip 17 full scale, in ADC.
Definition at line 419 of file Constants.cpp.
| Double_t Constants::ActiveStripEMaxAdc | ( | ) |
Upper bound of the per-strip energy range, in ADC.
Definition at line 407 of file Constants.cpp.
Referenced by EventBuilder::BuildEventsFromSortedHits(), FindBeamGateStrips(), and PulseHistory::Measure().
| Double_t Constants::ActiveStripEMinAdc | ( | ) |
Lower bound of the per-strip energy range, in ADC.
Definition at line 404 of file Constants.cpp.
| UShort_t Constants::ActiveTimingRefBoard | ( | ) |
Board the others are timing-aligned against.
Definition at line 359 of file Constants.cpp.
Referenced by RunFusedPipelineForFile().
| const std::vector< UShort_t > & Constants::ActiveTimingRefBoardChannels | ( | ) |
Reference channel per board, for the alignment.
Definition at line 362 of file Constants.cpp.
Referenced by RunFusedPipelineForFile().
| Bool_t Constants::ActiveUseSolarisData | ( | ) |
Whether this era's data is SOLARIS rather than CoMPASS.
Definition at line 375 of file Constants.cpp.
Referenced by StripSumScatter::DescribeSelection(), EnsureRunHeaderFused(), FileSet::GroupEventsForGating(), and RunFusedPipelineForFile().
| std::ostream & Constants::Detail | ( | ) |
std::cout for a file in the sample, a stream that discards otherwise: the per-file detail lines (per strip, per channel) go through this, so a file outside the sample keeps only its summary lines.
DetailErr() is the same for std::cerr.
Definition at line 511 of file Constants.cpp.
Referenced by EventsSummary::BuildNormedSummaryHistograms(), CalibrateBeam::CalibrateBeamOneSubfile(), FindBeamGateStrips(), FindStripCentroidAlignment(), ReduceToAnchors(), RunFusedPipelineForFile(), and WriteCalibrationToEvents().
| std::ostream & Constants::DetailErr | ( | ) |
Definition at line 512 of file Constants.cpp.
Referenced by CalibrateBeam::CalibrateBeamOneSubfile(), FindBeamGateStrips(), FindStripCentroidAlignment(), and PulseHistory::Measure().
| const RunEpoch * Constants::EpochForRun | ( | Int_t | run | ) |
The epoch owning a run number.
| run | Run number. |
Definition at line 244 of file Constants.cpp.
| Bool_t Constants::FileInSample | ( | ) |
Whether the file this thread is processing is in the per-file sample: every file with SAVE_FULL_PLOTS, otherwise the ones the tool marked with SetPlotsThisFile(), the first PLOT_SAMPLE_FILES of each epoch.
A sample file draws its figures and writes its full report to the log; the rest write one summary line per stage.
Definition at line 501 of file Constants.cpp.
Referenced by EventBuilder::BuildEventsFromSortedHits(), Detail(), DetailErr(), PrintMemUsage(), RunFusedPipelineForFile(), and SavePlots().
| const RunEpoch * Constants::GetActiveEpoch | ( | ) |
The currently active epoch, or null when none is set.
Definition at line 242 of file Constants.cpp.
Referenced by StripSumScatter::Prepare().
| Bool_t Constants::InPlotSample | ( | Int_t | k | ) |
Whether the k-th file (0-based, in file order) of an epoch's list is in the plot sample.
Definition at line 513 of file Constants.cpp.
Referenced by StripSumScatter::Prepare(), and CalibrateBeam::Run().
| RunEpoch Constants::MakeEpoch | ( | const TString & | name, |
| const std::vector< Int_t > & | runs ) |
Build an epoch prefilled from the flat configuration block.
Carries the hardware layout, timing, reference channel, dedup strategy, ADC caps and channel map, so a dataset states its detector settings once and its epochs as one line each. Override fields on the result for an epoch that genuinely differs.
| name | Epoch name. |
| runs | Run numbers belonging to it. |
Definition at line 258 of file Constants.cpp.
| std::vector< Int_t > Constants::RunRange | ( | Int_t | first, |
| Int_t | last ) |
Consecutive run numbers, for MakeEpoch().
| first | First run, inclusive. |
| last | Last run, inclusive. |
Definition at line 315 of file Constants.cpp.
| Bool_t Constants::SavePlots | ( | ) |
FileInSample(), by the name the plot call sites use.
Definition at line 502 of file Constants.cpp.
Referenced by FindBeamGateStrips(), FindStripCentroidAlignment(), PulseHistory::Measure(), Timing::PlotCostLandscape(), Timing::PlotExtremeEvents2D(), SaveAndDeleteSummaryHistograms(), SaveDynamicRangeOverlay(), PulseHistory::SavePlots(), SaveRidgeFitPlots(), and EventsSummary::SaveSampleTraces().
| void Constants::SetActiveEpoch | ( | const RunEpoch * | epoch | ) |
Set the epoch the Active*() accessors read from.
Pipeline sets this around each epoch's work. Every Active*() accessor reads it when set and falls back to the flat configuration block otherwise, so a dataset declaring no epochs behaves exactly as it did before epochs existed.
| epoch | Epoch to activate, or null to fall back to the flat block. |
Definition at line 241 of file Constants.cpp.
Referenced by ActivateAnalysisEpoch(), main(), and Pipeline::Run().
| void Constants::SetPlotsThisFile | ( | Bool_t | on | ) |
Mark the file this thread is about to process as in (or out of) the plot sample.
Per thread: a tool's worker calls it before each file; the main thread starts out of the sample.
Definition at line 516 of file Constants.cpp.
Referenced by StripSumScatter::Prepare(), and CalibrateBeam::Run().
| const Int_t Constants::ARR_SLOT_CATHODE = 34 |
Cathode signal.
Definition at line 22 of file SlotLayout.hpp.
Referenced by EventBuilder::AssignHit(), EventBuilder::BuildEventsFromSortedHits(), and EventBuilder::BuildSlotMap().
| const Int_t Constants::ARR_SLOT_GRID = 35 |
Frisch grid signal.
Definition at line 23 of file SlotLayout.hpp.
Referenced by EventBuilder::AssignHit(), and EventBuilder::BuildSlotMap().
| const Int_t Constants::ARR_SLOT_STRIP_0 = 0 |
First anode strip, occupying the low end of the array.
Definition at line 19 of file SlotLayout.hpp.
Referenced by EventBuilder::AssignHit(), and EventBuilder::BuildSlotMap().
| const Int_t Constants::ARR_SLOT_STRIP_17 = 33 |
Last anode strip. Strips run contiguously from ARR_SLOT_STRIP_0 to here.
Definition at line 21 of file SlotLayout.hpp.
Referenced by EventBuilder::AssignHit(), and EventBuilder::BuildSlotMap().
|
extern |
The active dataset's configuration, flat block.
Prefer the Active*() accessors, which respect the epoch layer.
Referenced by ActiveCathodeMaxAdc(), ActiveChannelMap(), ActiveDedupStrategy(), ActiveDoBoardSync(), ActiveDoSort(), ActiveEventTimeWindowUs(), ActiveGridMaxAdc(), ActiveHasCathode(), ActiveIgnoreShortStrips(), ActiveLeftEvenMaxAdc(), ActiveLeftOddMaxAdc(), ActiveNBoards(), ActiveNChannels(), ActivePulseHistoryGroups(), ActiveReferenceChannel(), ActiveReferenceChannelMaxAdc(), ActiveReferenceChannelMinAdc(), ActiveRightEvenMaxAdc(), ActiveRightOddMaxAdc(), ActiveRunNumbers(), ActiveSeedHoldoffMaxRatio(), ActiveSeedHoldoffUs(), ActiveSplitChunkSeconds(), ActiveStrip0MaxAdc(), ActiveStrip17MaxAdc(), ActiveStripEMaxAdc(), ActiveStripEMinAdc(), ActiveTimingRefBoard(), ActiveTimingRefBoardChannels(), ActiveUseSolarisData(), PulseHistory::Apply(), EventsSummary::BuildNormedSummaryHistograms(), EventsSummary::BuildTraceFromTotals(), EventBuilder::CheckEventComplete(), BeamEnergies::CmFraction(), CollectAnchorSamplesOneSubfile(), FileSet::CompassBinPath(), StripSumScatter::Condition(), CreateSummaryHistograms(), StripSumScatter::DescribeSelection(), FileSet::DiscoverRunSuffixes(), FileSet::DiscoverSolRunSuffixes(), DiscoverSolRunSuffixesFromBase(), StripSumScatter::DrawAllTaggedTraces(), EpochForRun(), FileInSample(), FinalizeEvent(), FindBeamGateStrips(), Timing::FindShiftBeam(), GpuAccel::Init(), InPlotSample(), StripSumScatter::IsNoise(), StripSumScatter::IsNoise(), StripSumScatter::IsPileup(), StripSumScatter::IsPileup(), StripSumScatter::JumpMin(), main(), main(), main(), MakeEpoch(), StripSumScatter::MaxStepNSigma(), PulseHistory::Measure(), StripSumScatter::NominalThresholds(), StripSumScatter::PlaneXY(), StripSumScatter::Prepare(), StripSumScatter::ResolveTag(), CalibrateBeam::Run(), CrossSection::Run(), Pipeline::Run(), StripSumScatter::Run(), RunFusedPipelineForFile(), SaveDynamicRangeOverlay(), EventsSummary::SaveSampleTraces(), ScanShiftRange(), BeamEnergies::SimPath(), StripSumScatter::SimTagReport(), FileSet::SolBinPath(), StripSumScatter::StripSumScatter(), SummaryGridPartnerIsStrip1(), StripSumScatter::ThresholdVariants(), GpuAccel::TryAcquireSortSlot(), and StripSumScatter::YHiOf().
| const Int_t Constants::N_ARR_SLOTS = ARR_SLOT_GRID + 1 |
Length of the per-event channel arrays.
Indices run 0 to ARR_SLOT_GRID inclusive, so this is one past the last valid slot.
Definition at line 27 of file SlotLayout.hpp.
Referenced by EventBuilder::AssignHit(), EventsSummary::BuildNormedSummaryHistograms(), FinalizeEvent(), EventBuilder::ResetEventState(), and EventBuilder::ResetPerChannelData().