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.