bunch-by-bunch feedback simulation

Moderators: cyao, michael_borland

Post Reply
xhs05
Posts: 30
Joined: 29 Nov 2012, 21:43

bunch-by-bunch feedback simulation

Post by xhs05 » 21 May 2018, 22:53

Hi Michael,

I'm learning to simulate effects of the bunch-by-bunch feedback system in the storage ring by the example ".../examples/multibunchCollectiveEffects/APS-24Bunch-CBI". However, I'm confused by the settings of the xpickup, xdriver and ypickup, ydriver in the "lattice.lte" file.

My understanding is that the "xpickup" element measures the "x" coordinate of each bunch, while the "xdriver" element provide a horizontal kick to the " x' " coordinate of each bunch. Based on this understanding, I think that the "xpickup" and "xdriver" elements should be put in the positions with pi/2 betatron phase difference (or phase difference should be the integer multiplication of pi/2 when counting the certain number of turns) to get the effective feedback. However, it seems that in the example, the xpickup and xdriver are put together without betatron phase difference. Is this an effective way for the feedback?

One possible explanation from my side is that the different phase difference can come from the different number of turns between picking up the information from the beam and kicking the beam. However, by doing this, it may be nontrivial to maintain the pi/2 betatron phase difference between the pickup and the kicker. Would like to comment on whether this is a concern in the real machine in positioning the pickups and the kickers of the feedback?

Thanks a lot in advance!

Regards,
Haisheng

michael_borland
Posts: 1927
Joined: 19 May 2008, 09:33
Location: Argonne National Laboratory
Contact:

Re: bunch-by-bunch feedback simulation

Post by michael_borland » 22 May 2018, 17:06

Haisheng,

Of course you are correct that in the real world, the pickup and driver are not co-located. However, in a simulation we can do that for convenience.

Also, pi/2 phase advance is only necessary if data is being used from the same turn. In real feedback systems, one uses data from several turns in order to suppress signals that are not near the tune. The feedback filter uses the turn-by-turn information to compute the amplitude of the oscillation and the necessary kicks on each turn. One can figure out the filter coefficients for arbitrary phase advance between the pickup and driver. This is done with the script TFBFirSetup. The method is described in T. Nakamura et al., “Transverse bunch-by-bunch feedback system for the SPRing-8 Storage Ring,” Proc. of EPAC 2004, 2649.

APS uses this method with a 6-turn filter in both planes. The filter determines the phase and amplitude of the oscillation at the driver location based on data from the pickup, which allows computing the maximum kick amplitude.

One can, of course, try to use a single-turn filter, but then the phase advance between the pickup and driver is more critical.

--Michael

xhs05
Posts: 30
Joined: 29 Nov 2012, 21:43

Re: bunch-by-bunch feedback simulation

Post by xhs05 » 30 May 2018, 04:27

Hi Michael,

Thank you very much for the kind and detailed reply!

I've got clearer understanding about the unnecessary 'pi/2 phase advance' after reading your reply and the reference you mentioned.

I tried to use a 8-turn filter in the simulations and do see the feedback stabilizes the beam under some conditions. More detailed studies can be carried out. Thanks again!

Regards,
Haisheng

Post Reply