The CycleWarning event builder is the first step in the hysteresis compensation chain, and triggers the prediction of the field of the next cycle (and subsequent correction)

Trigger

Signal: SX.CZERO-CTML/CycleWarning

At 2500 ms before cycle start the signal will trigger, with the following information:

{'lsaCycleName': 'SFT_PRO_MTE_L4780_2025_V1'}

Or whichever cycle will be played. This is in addition to the acquisition header which will contain the selector and cycle timestamp.

Warning

In the current timing system based on GMT (and not White Rabbit), if there are more than 2 ZERO cycles after each other (i.e. 2 BPs), the next cycle will also be announced as a ZERO, which is a problem in the current supercycles where LHC spare cycles can be shorter than the normal, and the padding is ZEROs. This information is still valid March 2025, and has no workaround besides predicting the next cycle based on the Supercycle sequence.

Buffered Subscriptions

IREF: For MBI: MBI/IREF Field correction: For MBI: rda3://UCAP-NODE-SPS-HYSTCOMP-TEST/SPSBEAM.BHYS-CORRECTION/Acquisition

Logic

A CycleData is created at the cycle warning with the programmed current that will be played (or at least what we think will be played), and the existing field correction which we will correct with respect to. This cycle data item is published.

Warning

N.B. The the that we are correcting with respect to must be acquired at the same time as the programmed current that we are predicting with, and not acquired right before the application of the correction