|
MUSIC unknown
Analysis for the MUSIC active-target ionization chamber
|
Dataset configuration. More...
#include "DedupStrategy.hpp"#include "PulseHistoryGroups.hpp"#include "RunEpoch.hpp"#include "SlotLayout.hpp"#include <Rtypes.h>#include <RtypesCore.h>#include <TString.h>#include <iostream>#include <map>#include <utility>#include <vector>Go to the source code of this file.
Classes | |
| struct | StripSumScatterConfig |
| struct | CrossSectionChannel |
| TALYS calculation with name for plot and parameters to actually run TALYS (see CrossSectionConfig::TALYS_MODELS). More... | |
| struct | TalysModel |
| One TALYS model variant to compare against. More... | |
| struct | CrossSectionConfig |
| Experimental details needed to properly calculate the cross section. More... | |
| class | DatasetConfig |
Namespaces | |
| namespace | Constants |
Macros | |
| #define | MUSIC_HOT_PATH_LOGGING 0 |
| Whether per-hit and per-event progress logging is compiled in. | |
Enumerations | |
| enum | TargetGas { kHELIUM } |
| The fill gas the beam reacts in. More... | |
Functions | |
| Int_t | TargetGasA (TargetGas gas) |
| Mass number of the target nucleus in a fill gas. | |
| Double_t | TargetGasAtomsPerMolecule (TargetGas gas) |
| Atoms of the reacting species per molecule of fill gas. | |
| void | Constants::SetActiveEpoch (const RunEpoch *epoch) |
| Set the epoch the Active*() accessors read from. | |
| const RunEpoch * | Constants::GetActiveEpoch () |
| The currently active epoch, or null when none is set. | |
| const RunEpoch * | Constants::EpochForRun (Int_t run) |
| The epoch owning a run number. | |
| RunEpoch | Constants::MakeEpoch (const TString &name, const std::vector< Int_t > &runs) |
| Build an epoch prefilled from the flat configuration block. | |
| std::vector< Int_t > | Constants::RunRange (Int_t first, Int_t last) |
| Consecutive run numbers, for MakeEpoch(). | |
| const TString & | Constants::ActiveFileTag () |
| Output-name prefix of the active epoch. | |
| Int_t | Constants::ActiveNBoards () |
| Boards in the active epoch's setup. | |
| Int_t | Constants::ActiveNChannels () |
| Channels per board. | |
| UShort_t | Constants::ActiveTimingRefBoard () |
| Board the others are timing-aligned against. | |
| const std::vector< UShort_t > & | Constants::ActiveTimingRefBoardChannels () |
| Reference channel per board, for the alignment. | |
| Bool_t | Constants::ActiveDoBoardSync () |
| Whether to run the multi-board timing alignment. | |
| Bool_t | Constants::ActiveDoSort () |
| Whether to time-sort hits before event building. | |
| Bool_t | Constants::ActiveHasCathode () |
| Whether this era instrumented the cathode. | |
| Bool_t | Constants::ActiveUseSolarisData () |
| Whether this era's data is SOLARIS rather than CoMPASS. | |
| Double_t | Constants::ActiveEventTimeWindowUs () |
| Coincidence window for event building, in microseconds. | |
| Double_t | Constants::ActiveSeedHoldoffUs () |
| Seed holdoff in microseconds; 0 = off. See SEED_HOLDOFF_US. | |
| Double_t | Constants::ActiveSeedHoldoffMaxRatio () |
| The size, as a fraction of the new hit, under which the current seed counts as a pre-trigger. | |
| const TString & | Constants::ActiveReferenceChannel () |
| Channel whose hits seed events. | |
| Double_t | Constants::ActiveReferenceChannelMinAdc () |
| Lower energy gate on the seed channel, in ADC. | |
| Double_t | Constants::ActiveReferenceChannelMaxAdc () |
| Upper energy gate on the seed channel, in ADC. | |
| DedupStrategy | Constants::ActiveDedupStrategy () |
| How repeated hits on one slot are resolved. | |
| Double_t | Constants::ActiveStripEMinAdc () |
| Lower bound of the per-strip energy range, in ADC. | |
| Double_t | Constants::ActiveStripEMaxAdc () |
| Upper bound of the per-strip energy range, in ADC. | |
| Double_t | Constants::ActiveCathodeMaxAdc () |
| Cathode full scale, in ADC. | |
| Double_t | Constants::ActiveGridMaxAdc () |
| Grid full scale, in ADC. | |
| Double_t | Constants::ActiveStrip0MaxAdc () |
| Strip 0 full scale, in ADC. | |
| Double_t | Constants::ActiveStrip17MaxAdc () |
| Strip 17 full scale, in ADC. | |
| Double_t | Constants::ActiveLeftEvenMaxAdc () |
| Left-side ceiling for even strips, in ADC. | |
| Double_t | Constants::ActiveLeftOddMaxAdc () |
| Left-side ceiling for odd strips, in ADC. | |
| Double_t | Constants::ActiveRightEvenMaxAdc () |
| Right-side ceiling for even strips, in ADC. | |
| Double_t | Constants::ActiveRightOddMaxAdc () |
| Right-side ceiling for odd strips, in ADC. | |
| const std::vector< Int_t > & | Constants::ActiveRunNumbers () |
| Runs of the active epoch, or the flat RUN_NUMBERS when none is set. | |
| Int_t | Constants::ActiveMaxFiles () |
| Cap on subfiles processed per run for the active epoch. | |
| Double_t | Constants::ActiveSplitChunkSeconds () |
| Chunk length the active epoch's .sol files are split into, in seconds; non-positive means whole files. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| Bool_t | Constants::SavePlots () |
| FileInSample(), by the name the plot call sites use. | |
| 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. | |
| std::ostream & | Constants::DetailErr () |
| 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. | |
| void | Constants::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 > & | Constants::ActiveChannelMap () |
| The channel map in force. | |
Variables | |
| const Int_t | GATE_AXIS_GRID = -1 |
| Options which govern the reaction search in the 2D histograms (strip-sum-scatter). | |
| const DatasetConfig & | Constants::cfg |
| The active dataset's configuration, flat block. | |
Dataset configuration.
Configuration is split in two. The struct definitions and the tooling-wide defaults live here and in Constants.cpp; each dataset then overrides only the fields it cares about in analysis/<dataset>/config/Constants.cpp, which is compiled into that dataset's binaries.
There is additionally an option for epochs. A dataset spanning several acquisition eras declares a RunEpoch per era, and the Active*() accessors read the active epoch when one is set and the flat block otherwise.
Definition in file Constants.hpp.
| #define MUSIC_HOT_PATH_LOGGING 0 |
Whether per-hit and per-event progress logging is compiled in.
Compile-time so the branch leaves the hot loop entirely when off. Define it to 1 on the compiler command line to enable.
Definition at line 41 of file Constants.hpp.
| enum TargetGas |
The fill gas the beam reacts in.
Only helium so far. The per-gas numbers the cross section needs come from TargetGasA() and TargetGasAtomsPerMolecule() rather than being repeated at each use.
| Enumerator | |
|---|---|
| kHELIUM | Helium fill. |
Definition at line 343 of file Constants.hpp.
| Int_t TargetGasA | ( | TargetGas | gas | ) |
Mass number of the target nucleus in a fill gas.
| gas | Fill gas. |
Definition at line 3 of file Constants.cpp.
Referenced by BeamEnergies::CmFraction(), and main().
| Double_t TargetGasAtomsPerMolecule | ( | TargetGas | gas | ) |
Atoms of the reacting species per molecule of fill gas.
| gas | Fill gas. |
Definition at line 11 of file Constants.cpp.
| const Int_t GATE_AXIS_GRID = -1 |
Options which govern the reaction search in the 2D histograms (strip-sum-scatter).
There are two kinds of controls; ones which define which events populating the histograms, and ones which define how the histograms are constructed. Each field says which it is. The cache fingerprints them all, so rebuilds should happen automatically if they are needed. An axis of the pure-beam entrance ellipse (PURE_BEAM_GATE_S1_GRID): the Frisch grid over its beam anchor (GainGrid), so it sits at 1.0 like a strip.
Definition at line 56 of file Constants.hpp.
Referenced by EnergyView::Axis().