acceleration in a ring over multiple passes

Moderators: cyao, michael_borland

Post Reply
VMorozov
Posts: 2
Joined: 10 Aug 2016, 15:43

acceleration in a ring over multiple passes

Post by VMorozov » 11 Aug 2016, 08:57

Hello,

I am trying to accelerate a beam in a ring. I am using multiple passes through a lattice containing an RFCA element with CHANGE_P0=1 but what I find is that the reference momentum is updated only on the first pass. On the subsequent passes the reference momentum remains constant and I believe there is no scaling of the magnetic field strengths. Here is a simple illustration.

A simple lattice file consisting of a single FODO cell (test.lte):
DSXT: DRIF, L=0.05
DQAFE: DRIF, L=0.05
DBXAFE: DRIF, L=0.14
BXAF: CSBEND, L=8, ANGLE=0.07333499518, TILT=0, &
E1=0.03666749759, E2=0.03666749759, K1=0.0 ,N_KICKS=20
DAF01: DRIF, L=0.96
DAF02: DRIF, L=0.51
SXT02: KSEXT, L=0.5, K2=0.0, TILT=0, N_KICKS=10
QAF02: KQUAD, L=0.8, K1=-0.157938024375, TILT=0, N_KICKS=20
SXT01: KSEXT, L=0.5, K2=0.0, TILT=0, N_KICKS=10
QAF01: KQUAD, L=0.8, K1=0.158759981625, TILT=0, N_KICKS=20
RFCSIM: RFCA, L=0, VOLT=30.0E3, PHASE=210, FREQ=13059280.07573, &
CHANGE_P0=1, CHANGE_T=0
MON: DRIF, L=0.15
BXYC: DRIF, L=0.5
W1:WATCH,mode="coordinates",filename="w1.sdds"
FODO: LINE=(&
W1,DSXT,SXT01,DSXT,DQAFE,QAF01,DQAFE,MON,DAF01,DBXAFE,BXAF,DBXAFE,DAF02,RFCSIM, &
DSXT,SXT02,DSXT,DQAFE,QAF02,DQAFE,MON,DAF01,DBXAFE,BXAF,DBXAFE,DAF02)
USE,FODO
RETURN
A command file (test.ele):
&change_particle
name = proton
&end

&run_setup
lattice = test.lte,
use_beamline = FODO,
rootname = test,
default_order = 1,
p_central_mev = 8.0E3
&end

&run_control
n_steps = 2,
n_passes_fiducial = 1,
first_is_fiducial = 1,
restrict_fiducialization = 1,
reset_rf_for_each_step = 0,
n_passes = 10000
&end

&bunched_beam
first_is_fiducial = 1
&end

&track
&end

&stop
Here is what I get when I do: sddsplot w1.sdds -par=Pass,pCentral
fig1.png
fig1.png (4.83 KiB) Viewed 3898 times
or sddsplot w1.sdds -col=p,x
fig2.png
fig2.png (5.98 KiB) Viewed 3898 times
The offset grows with momentum, which means that the fields are not being scaled.

Can you help please? I tried many different options. It works okay in a storage mode but whenever I try to accelerate over multiple passes I do not seem to be able to update the reference momentum after the first pass.

I am using the latest version of Elegant (elegant 30.1.0, Aug 8 2016).

Thank you very much in advance!

Vasiliy

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

Re: acceleration in a ring over multiple passes

Post by michael_borland » 11 Aug 2016, 09:09

Vasiliy,

There are some special steps you need to take to simulate ramping a ring. This includes using the RAMPP (ramp momentum) and RAMPRF elements. See the attached files and let me know if you have further questions.

--Michael
Attachments
boosterRamp.zip
(40.3 KiB) Downloaded 380 times

VMorozov
Posts: 2
Joined: 10 Aug 2016, 15:43

Re: acceleration in a ring over multiple passes

Post by VMorozov » 11 Aug 2016, 11:24

Thank you very much, Michael! This really helps.

Post Reply