Concurrent parameter stepping and advanced injections
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.