SMASH Rivet output interface directly to Rivet analyses on the events generated by SMASH. That is, instead of writing the events to disk (or pipe) this output module generates HepMC (see also HepMC Output) events in-memory and pass them on directly to Rivet to avoid the costly encoding and decoding of HepMC3 events to and from disk (or pipe). This provides a speed up (at least \(\times 10\)) compared to intermediate files.
The results of the analyses are written to YODA files.
Internally, this output module generates HepMC events. These can be made in two ways, selected by the formats YODA
and YODA-full
.
YODA
In this format only initial (beam) and final state particles are stored in the event structure and there is only one interaction point. Note, the incoming nucleons are combined into single nuclei.YODA-full
In this format, the whole event is stored (including intermediate states). Note, the incoming nucleons are combined into single nuclei, only to be split at the main interaction point. This allows tracking of the individual nucleons.Refer to https://yoda.hepforge.org/ for further details. Only one format can be chosen. SMASH will use the first format recognized as valid, ignoring the rest. Please, note that choosing YODA or YODA-full determines the kind of information available to the analysis, but the content of the final YODA files depends on the analysis itself. Depending on what it does, the analysis might work fine with both formats, nevertheless, if it is not necessary to know the structure of the whole event, it is recommended to choose the lighter YODA format, thus saving computational time and resources (especially the RAM).
The Rivet process can be configured in the main configuration file. This is done by adding keys to the Rivet
key. Here, we can
Paths
)Preloads
)Analyses
)Ignore_Beams
)Logging
)Weights
)An example:
Output: Rivet: Format: ["YODA"] Ignore_Beams: True Logging: Rivet.AnalysisHandler: Debug Rivet.Analysis.MC_FSPARTICLES: Debug Analyses: - MC_FSPARTICLES
The Rivet set-up can be configured using the content specific Rivet
section in the configuration file.