Table of Contents
Multifast
In fds
, turn the multifast mode and choose a file size (in seconds, here 10s)
set_multifast_on set_file_size_second 10
You then can define a trigger per board :
software_trigger_setup [IP address of board]
To turn off :
set_multifast_off
a trigger window appears and we choose, for example, the Boolean trigger
and the associated expression with channel labels (41 and 42) or (43 and 44)
This condition will automatically generate a group with a label 3XYY
where X
is the crate number and YY
the slot number of the card in this crate.
You can check the trigger with
software_trigger_list
You have to restart for the other cards (or modified the ?? file)
A “global” trigger car be defined by the same command but without any IP address as argument:
software_trigger_setup
now the trigger expression can use group labels (3XYY
). Note that you can also use channel labels but they have to be kept available in the flow (i.e. not systematically embedded in a group), you might then consider using the “lossless” mode in that case.
Decimation
This is performed via specific software(s) inserted in the data flow
post_trigger_command_setup
which will give some examples of configuration (cfg) files. In our case, we use the ./multifast/post_trigger_commands.cfg
file to define different “commands”, in this case faster_file_decimate
(which again is just a software that act on the data flow).
[Post_trigger] enabled = TRUE [Faster_command_1] binary_path = /usr/bin/ binary_name = faster_file_decimate options = -c multifast/decimater.cfg save_input_file = FALSE no_output_file = FALSE [Faster_command_2] binary_path = /usr/bin/ binary_name = faster_file_decimate options = -c multifast/killer.cfg save_input_file = FALSE no_output_file = FALSE
and an example of the decimater.cfg
where the decimation factor here is 100
for the label 3107
corresponding the SBT
beam detectors
[Decimater] factor = 100 labels = 3107 type_alias =
The killer.cfg
is similar, its purpose being to remove all the unwanted labels that might have been kept by the “lossless” mode (the decimation factor is then 0)
To list the commands :
post_trigger_command_list
To enable (or disable) these commands:
post_trigger_command_enable(disable)
Example of flowchart
The diagram below gives an idea for the most complex situation in this experiment
This diagram above was drawn before experiment. You can however generate a similar flowchart from the different FASTER configurations files by running the following script https://gitlab.in2p3.fr/nebula-plus/check_trigger_conf within the FASTER working directory. Note than on expand ACQ this script can be run with the following command:
/home/expand/Programs/Check_Trigger_Conf/check_trigger_conf.py
it then produces this type of flowchart:
Configurations
It is possible to define several configurations, e.g. physical run, calibration…
configuration_save_as [myconfiguration]
which saves the current configuration under the name myconfiguration
To load another configuration
configuration_load [myotherconfig]
Configurations are saved in cfg.fds
directory.