Skip to content

Concurrent parameter stepping and advanced injections

Magne Eik Lauritzen requested to merge malaurit/YARR:master into master

Added two new capabilities:

1: Advanced injection

The user can now specify the following parameters in Triggerloops:

  • edgeDelay (0)
  • auxMode (0)
  • auxDelay (0)

Leaving them out results in default values in parantheses.

2: Concurrent stepping of parameters

The user can now specify any number of parameters that will be stepped concurrently during a Rd53aParameterLoop loop. Example for stepping InjVcalHigh and InjVcalMed concurrently, and using the value of InjVcalHigh for analysis:

      {
        "config": {
          "1":{
            "max": 997,
            "min": 597,
            "step": 2,
            "parameter":"InjVcalHigh"
            },
          "2":{
            "max": 497,
            "min": 97,
            "step": 2,
            "parameter":"InjVcalMed"
            },
          "log":"InjVcalHigh"
        },
        "loopAction": "Rd53aParameterLoop"
      }

The config dict contains dicts named "1", "2", etc. Each of these contains the configuration of one parameter. The loop will stop when any parameter reaches its max value. This addition does not break functionality, and original scan config files with a single parameter to loop over are executed correctly.

3: Other additions

plot_tdac.cpp has been edited to produce two tdaq histograms, one for each of the diff and lin FE. I found this very useful when tuning.

Edited by Magne Eik Lauritzen

Merge request reports