Hi,
I am trying to simulate a fan-out kicker model by bumper.
In the attached file. I set up a bunch train uniformly occupying the ring.
1. The initial bunch distribution is 80b_1MP_even.sdds
2. The Bumper file is set up as fan_kick.wf following a sine function, and inserted in the lattice.
When the bunch train passes through the bumper for the first time.
I expect the head-bunch to experience delta_xp=0. And the following bunches with delta_xp follow the strength set-up in the bumper (fan_kick.wf).
By checking data (s,xp) in FANKICKWATCH_2.WC file (exactly after the bumper), I found two things expected:
1. not all bunches experience the kick from the bumper.
2. head-bunches experience stronger kick than following bunches.
Can anyone help me to check how to set-up the simulation correctly?
Many thanks
simulation with a (time-depended) bumper
Moderators: cyao, michael_borland
simulation with a (time-depended) bumper
- Attachments
-
- bumper_sim.zip
- (2.04 MiB) Downloaded 3 times
-
michael_borland
- Posts: 2059
- Joined: 19 May 2008, 09:33
- Location: Argonne National Laboratory
- Contact:
Re: simulation with a (time-depended) bumper
The problem is related to the way the BUMPER element aligns the time coordinates of the beam to the time coordinates of the waveform. In particular, it computes <t> for the particles and aligns that to t=0 in the waveform file. If you center your waveform t data about t=0, you should get the results you expect.
--Michael
--Michael
Re: simulation with a (time-depended) bumper
Hi Michael,
Thanks a lot for you quick reply.
Following your suggestion, I set up a new bumper as shown in the attached file.
To clearly show how bumper kick different bunches.
I set 2 watch element before and after the bumper and calculated the delta_Px and compare with
the kicker strength set up in bumper.
The results is show as Still there are two things those confuse me.
1. in the file "tracking.ele" , I insert the bumper as
&insert_elements name = BPM_SWL_7, type= "MONI",
element_def="Fanout_KICKER:BUMPER,L=0.0,WAVEFORM=\"fan_kick.wf=t+Waveform\",ANGLE=2E-3,tilt=0,FIRE_ON_PASS=1,TIME_OFFSET=3.77E-6"
&end
As you noticed, I set TIME_OFFSET=3.77E-6. With this value, I can align the bunch_train with the bumper.
I put the BUMPER at 530m, then the time offset_should be 1.77E-6. Why is there a 2E-6 time shift?
2. As shown in the plot. The delta_px (difference before and after bumper) experienced by bunches.
The bunches along the ring occupy a time window of 1 unit. To generate this plot,20 turns are tracked.
From left to right is the pass time of pass turns.
My question is: within a bunch train, which bunch is the head bunch and which is the tail bunch?
It seems like the time convention is t_{head} < t_{tail}, is it?
For example in the plot,
take the time window from 11 to 12. I expect the head bunch to experience zero kick and the tail to experience 1.4E-3 rad kick ,
Could you clarify it?
Many thanks
Chao
Thanks a lot for you quick reply.
Following your suggestion, I set up a new bumper as shown in the attached file.
To clearly show how bumper kick different bunches.
I set 2 watch element before and after the bumper and calculated the delta_Px and compare with
the kicker strength set up in bumper.
The results is show as Still there are two things those confuse me.
1. in the file "tracking.ele" , I insert the bumper as
&insert_elements name = BPM_SWL_7, type= "MONI",
element_def="Fanout_KICKER:BUMPER,L=0.0,WAVEFORM=\"fan_kick.wf=t+Waveform\",ANGLE=2E-3,tilt=0,FIRE_ON_PASS=1,TIME_OFFSET=3.77E-6"
&end
As you noticed, I set TIME_OFFSET=3.77E-6. With this value, I can align the bunch_train with the bumper.
I put the BUMPER at 530m, then the time offset_should be 1.77E-6. Why is there a 2E-6 time shift?
2. As shown in the plot. The delta_px (difference before and after bumper) experienced by bunches.
The bunches along the ring occupy a time window of 1 unit. To generate this plot,20 turns are tracked.
From left to right is the pass time of pass turns.
My question is: within a bunch train, which bunch is the head bunch and which is the tail bunch?
It seems like the time convention is t_{head} < t_{tail}, is it?
For example in the plot,
take the time window from 11 to 12. I expect the head bunch to experience zero kick and the tail to experience 1.4E-3 rad kick ,
Could you clarify it?
Many thanks
Chao
- Attachments
-
- bumper.zip
- (1.97 MiB) Downloaded 1 time
Re: simulation with a (time-depended) bumper
Hi, Michael,michael_borland wrote: ↑05 Aug 2026, 10:08The problem is related to the way the BUMPER element aligns the time coordinates of the beam to the time coordinates of the waveform. In particular, it computes <t> for the particles and aligns that to t=0 in the waveform file. If you center your waveform t data about t=0, you should get the results you expect.
--Michael
Sorry for keeping asking the same questions on Bumper simulation.
In the past few days, I tried to run the bumper simulation again. The Elegant script can be found in the attached bumper.zip.
Scripte can be run "elegant tracking.ele -macro=root=test"
Two output files will be generated: FanKickWatch1.WC and FanKickWatch2.WC, which are particle coordinates before and after the bumper.
Then comparing the xp in these two files can tell me how particles are kicked by the bumper element.
I assume that the ring is occupied uniformly by 80 bunches, (I set 1 particle per bunch).
Since the bumper is set to a sine curve, I expect the head bunch to experience a 0 kick and the tail bunch to experience a larger kick when the bunch train passes through the bumper element for the first time.
Again, the following plot shows the comparison between delta_xp and bumper setups. Two questions.
1. I have to set TIME_OFFSET=3.77E-6 in bumper. With this value, I can align the bunch_train with the bumper.
In the ring, I put the BUMPER at 530m, then it should be TIME_OFFSET=530/3E+8 = 1.77E-6, isn;t it?
2. As shown in the plot. The bunches along the ring occupy a time window of 1 unit and the bumper is turned on at the 8th turn.
Within turns 8 to 9, I expect that the head is not kicked and the tailing bunches experience larger kicks.
Whereas the simulation shows the opposite: the tail bunches are not kicked, and the head is kicked by a large angle.
Could you please help me? How can I set up the simulation with such a bumper correctly?
Many thanks
Chao
- Attachments
-
- bumper.zip
- (698.52 KiB) Not downloaded yet