Skip to content

Menu work for L1Topo multiplicity and decision boards (ATR-23263, ATR-23196)

Daniele Zanzi requested to merge dzanzi/athena:ATR-23263_dzanzi into master

Work for L1Topo boards:

  • fix in CTP optical inputs (tagging @amarzin )
  • correct assignment of FEXes to L1Topo multiplicity boards (tagging @jodamp )
  • addition of preliminary set of eTAU thresholds with 2 or 3 bits

Important notes for L1Topo json parts: (@rgugel , @orlando , @jodamp , @asonay , @landon , @stelzer )

  • Algorithms with muon inputs:
    • sort/select algos with run3 pt and flag selections still missing
    • MinET thresholds expressed as (GeV-1)*10, ie the threshold to select 4 GeV muons is 30. This is applied to all sorting and decision algorithms and breaks the definition of the run2 algorithms with muons in the json, which is OK since these won't be used for sure. For the test sorting/decision algorithms in MuCTPi, the thresholds are expressed as GeV-1.
    • All muon thresholds and selection are now for the run3 muons. If we run with run2 muons, the decision output is likely wrong
  • Sorting/decision algorithms:
    • All parameters are expressed in FW values. The human-readable values in L1/Config/TopoAlgoDef.py are converted with conversion factors defined at the top of the file. There are no further conversions applied in L1/Base/TopoAlgos.py as it used to be. I did not duplicate the parameters saved in the json file with also the human-readable ones since this would have required duplicating the parameters of all the L1Topo sort/decision classes.
    • the HW width parameters are to be updated in a future MR (@jodamp is preparing the new numbers)
    • the list of decision algorithms is still partially migrated
    • Johannes, Anil and I decided to use the value 1024x1024x10x10x10 to identify an upper threshold on the maximum invariant mass cut. A check for this value in FW and in simulation (to be implemented) would remove any upper cut
  • Multiplicity algorithms:
    • the Et thresholds are in GeV and the eta thresholds are int(eta*10)! To get the energy thresholds in counts (100 MeV units), you can use this access method TrigConf::L1Threshold_Calo::thrValueCounts(int eta). I realised that "resolutionMeV" extra information is currently stored in the json only for eEM and eTAU, but I suppose the energy of all Phase1 FEXes are now in 100MeV units, at least internally in L1Topo to compute the multiplicities. Is that right? Maybe I need to set this for all FEXes?

tagging @blumen , @jmontejo , @hillier

Edited by Daniele Zanzi

Merge request reports