Skip to content
Snippets Groups Projects

Introduce common scheme of masking inactive channels in the simulation. Refs #2708.

Merged Volker Friese requested to merge v.friese/cbmroot:channel_mask into master
All threads resolved!

See #2708. A measure to mask channels in the simulation was required, representing channels which were masked during data taking or were just defunct.

A common solution for all detector system was asked for. This could be implemented in the base classes CbmDigitizeBase and CbmDigitize. What is to be provided is a text file containing the CbmAddresses of all channels to be masked, one address per line. This has to be set to the digitizer with the method CbmDigitizeBase::SetInactiveChannelFile(constc char*).

To do so in the macro run_digi, the digitizer has to be instantised explicitely and registered to the digitization run, e.g.

CbmStsDigitize* stsDigi = new CbmStsDigitize();
stsDigi->SetInactiveChannelFile("sts_inact_chans.txt");

CbmDigitization run;
run.SetDigitzer(ECbmModuleId::kSts, stsDigi);

.... (Other settings for the digitization)

run. Run();

The STS has a special implementation since it requires two numbers to identify a channel (not only the address). I did not like to implement the same for all detectors, since it requires a map of sets then instead of a single set.

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • @v.friese,

    do I get it right that you handle the STS digis in the CreateDigi function of the STS digitizer whereas you handle all other digis in the SendData function of the base class?

  • Yes, I did not see any other way to cope with the different representation for the STS.

  • To treat the digitisers on a different level is okay, but it took me some time to understand the logic. ;-{

  • Dear @f.uhlig, @v.friese, @p.-a.loizeau,

    you have been identified as code owner of at least one file which was changed with this merge request.

    Please check the changes and approve them or request changes.

  • Sorry if the code is not transparent enough. For the STS, the inherited method SendData is called from the method CreateDigi. So it was easy to put the hook there.

  • Volker Friese added 3 commits

    added 3 commits

    • 6d9d9f30 - Introduce common scheme of masking inactive channels in the simulation. Refs #2708.
    • f7934794 - Removed unneccessary include.
    • cb11b8c2 - Catch incomplete read from file in case of read errors.

    Compare with previous version

  • Florian Uhlig resolved all threads

    resolved all threads

  • Florian Uhlig approved this merge request

    approved this merge request

  • Florian Uhlig enabled an automatic merge when the pipeline for cb11b8c2 succeeds

    enabled an automatic merge when the pipeline for cb11b8c2 succeeds

  • merged

  • Volker Friese mentioned in merge request !1078 (merged)

    mentioned in merge request !1078 (merged)

  • Please register or sign in to reply
    Loading