CSR Entrance Wakefield ( drift to bend )

Moderators: cyao, michael_borland

Post Reply
WilliamLou
Posts: 4
Joined: 18 Apr 2019, 07:41

CSR Entrance Wakefield ( drift to bend )

Post by WilliamLou » 18 Apr 2019, 14:12

Dear Elegant Team:
I'm running CSR simulation on a simple lattice using a low-charge beam.
The lattice consists of a CSRdrift(D1), a CSRCSbend (B1), then CSRdrfit(D2).

My goal is to see the plot CSR wake seen by the bunch,
So for B1 I specified the "OUTPUT_FILE" filename,
and for D1 and D2 I specified the "STUPAKOV_OUTPUT" filenames. (See the lte file I attached)

After running ELEGANT, B1 and D2 both generate a file containing the CSR wake data, but D1 does NOT.
It's fair to note that CSR wake is absent in the initial drift D1, BUT what happens to the entrance wake when the head of the bunch enters the bend? In the 2002 Proceeding paper by G.Stupakov and P.Emma figure 1, this was referred as the entrance wake. And I wonder how to access this wake from Elegant. ( On the other hand, it is clear that Elegant calculates the "exit wake", which can be accessed from the output data file from D2. )

Another question is that, what exactly is the"DeltaGamma" quantity from the output files from B1 and D2? (see the two images I attached ) In the documentation for CSRdrift (https://ops.aps.anl.gov/manuals/elegant ... ode72.html ), it seems to imply the quantity is the unitless wake W(s) in G.Stupakov's formulas. I'd like to confirm that this DeltaGamma(s) is actually W(s), without extra normalization factors.

Another side question... is it possible to superimpose a WATCH in the middle of the CSRCSBEND? If not, what's a good way to access beam information in the middle of en element?

Thanks a lot.
Sincerely,
William

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

Re: CSR Entrance Wakefield ( drift to bend )

Post by michael_borland » 22 Apr 2019, 08:30

William,

The "entrance wake" is included: it's just the buildup of the CSR as the bunch enters the magnet.

The "DeltaGamma" quantity is the change in the relativistic factor over the last slice. Multiply by 0.511... to convert to MeV.

You can use the PARTICLE_OUTPUT_FILE parameter to get particle output after each slice. You can also split the CSRCSBEND into pieces (as long as they all have the same name) and put WATCH elements between the pieces.

--Michael

WilliamLou
Posts: 4
Joined: 18 Apr 2019, 07:41

Re: CSR Entrance Wakefield ( drift to bend )

Post by WilliamLou » 24 Apr 2019, 14:09

Hi Michael:

Thanks for the reply.
As you said, the entrance wake is "the buildup of the CSR as the bunch enters the magnet".
Does this mean the "CSR kick data" ( i.e. DeltaGamma ) of the entrance wake is also stored in B1.out, together with the CSR kick data when the entire beam is inside the bend?

I tested with another lattice with (D1,B1,D2,D3,B2,D4), in which D is csrdrift and B is csrcsbend, and all the elements are requested to generate an output file.
Similar situation occurred. D1 and D3 do NOT generate the output files, so I'm guessing the entrance wake data is stored inside B1.out and B2.out correspondingly. This also made me curious... what if I make D2 very short? Then I might not be able to access the entire "exit wake" profile, since the subsequent D3 would not output the "intermediate wake data". Maybe my example is just finding myself unnecessary trouble :cry: .

Thanks.
Sincerely,
William

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

Re: CSR Entrance Wakefield ( drift to bend )

Post by michael_borland » 24 Apr 2019, 15:55

William,

Yes, the entrance wake is reflected in the output files generated by the first bending magnet. The particles don't start to experience a wake until they are inside the magnet. The wake builds up over the "overtaking length," which is given by (24*sigma_s*R^2)^(1/3), where sigma_s is the rms bunch length and R is the bending radius.

If you set USE_STUPAKOV=1 on the CSRDRIFT elements, you can then also request output of the CSR wake using the STUPAKOV_OUTPUT parameter. If you need more detail, you'll need to split the CSRDRIFT elements into many pieces and insert WATCH elements.

--Michael

Post Reply