Sie sind auf Seite 1von 5

Overview of Linac Codes

Yasser Nour El-Din Mohammed

April 17, 2009


Introduction
In this article i will give an overview on seven linac simulation codes, mentioning their
basic features like particle tracking, space charge effect, beam loading and wakefield.

The codes we will discuss are:


• ASTRA

• HOMDYN

• BEAMPATH

• ElEGANT

• PARMELA

• PARMILA

• TREDI

ASTRA
ASTRA (A Space Charge Tracking Algorithm) tracks particles under externel and inter-
nel fields, Astra tracks particles through user defined external fields taking into account
the space charge field of the particle cloud. The tracking is based on a Runge-Kutta
integration of 4th order with fixed time step.

For the calculation of the space charge field a cylindrical grid (r, Φ, z coordinates), con-
sisting of rings in the radial direction and slices in the longitudinal direction, is set up over
the extension of the bunch. The grid is Lorentz transformed into the average rest system
of the bunch, where the motion of the particles is to good approximation non relativistic
and a static field calculation can be performed by integrating numerically over the rings
thereby assuming a constant charge density inside a ring. The field contributions of the
individual rings at the center points of the grid cells are added up and transformed back
into the laboratory system.

ASTRA calculates beam loading effects, but missing Wakefield effects.

Link: ’http://www.desy.de/∼mpyflo/Astra dokumentation’

HOMDYN
HOMDYN basic model is that each bunch is described by a uniformly charged cylinder
(with circular or elliptical cross section), By slicing the bunch in an array of cylinders,
each one subject to the local field, one obtains the energy spread and the emittance degra-
dation due to phase correlation of RF and space charge effects, keeping anyway uniform
charge distribution inside each slice.

1
Longitudinal short range wakefields are taken into account in HOMDYN, beside beam
loading effects.

Link: http://www.nicadd.niu.edu/fnpl/homdyn/manual.pdf

BEAMPATH
BEAMPATH is a 2D and 3D space charge dominated beam dynamics study code in lin-
ear particle accelerators, the code covers many issues like 2D and 3D space charge effects
for different beam geometery, beam loading in accelerating waveguides, particle tracking
in commonly used beamline elements and accelerating structures, spin depolarization ef-
fects, and generation of typical beam distributions as well as dealing with user specified
distribution.

The simulation is performed in 6-dimensional phase space of particle positions x, y, z, and


momenta px ,py , pz . At the initial moment of time, phase-space is filled with macropar-
ticles using a random number generator. Particle trajectories are integrated in the field
which is a combination of external field and self space-charge field of the beam.

The external fields are given functions of coordinates and time. The space charge field
of the beam is renewed at every elementary integration step via solution of the Poisson’s
equation in the moving frame(Same as ASTRA).

Beam loading effect is expressed as superposition of longitudinal, and transverse wake


fields acting at every particle from other particles.

Link: Unknown

ELEGANT
Elegant stands for (ELEctron Generation ANd Tracking) a fully 6D accelerator program
that now does much more than generate particle distributions and track them.

Elegant tracks in the 6-dimensional phase space (x, x0 , y, y 0 , s, δ), where x (y) is the
horizontal (vertical) transverse coordinate, primed quantities are slopes, s is the total,
equivalent distance traveled, and δ is the fractional momentum deviation.

Tracking may be performed using matrices, kick elements, numerically integrated ele-
ments, or any combination. Kick elements are available for bending magnets, quadrupoles,
sextupoles; all of these elements also support optional classical synchrotron radiation
losses. Among the numerically integrated elements available are extended-fringe-field
bending magnets and traveling-wave accelerators.

Beside space charge effects, Elegent has functions that used to add Wakefields effects

2
to the beam.

Link:
http://www.aps.anl.gov/Accelerator Systems Division/Operations Analysis/oagSoftware.shtml

PARMELA
PARMELA is an electron linac counterpart of PARMILA, the name being derived from
the phrase, ”Phase and Radial Motion in Electron Linacs.”.

The electrons are each represented by six coordinates: The three position coordinates
(x, y, z) and the components of the momentum in these three directions (γβx , γβy , γβz ).
It is convenient to have a so-called ”reference particle” having an initial z-coordinate and
kinetic energy defined.

PARMELA uses time (or phase angle) as the independent variable for particle motion
integration. The phase angle for integratin are given as input (in degrees) in START
command.

For space charge calculations, a 2D space charge routine SCHEFF is used to apply space
charge impulse/kick on particle each phase angle specified in argument given to SCHEFF
routine. SCHEFF space charge routine is same as the one used in ASTRA that the beam
is sliced to rings, lorentz transformed to the average rest system, then static fields from
this charged rings is computed and then transformed back to the linac rest frame. then
the force impluse/kick from this added fields is applied on each particle.

Longitudinal and transverse wakefield modelling has been added by applying a kick to
each particle at the exit of specified elements derived from wake potential tables developed
by other codes, for example, ABCI, Xwake or TBCI.

Link: http://pbpl.physics.ucla.edu/Literature/Special Collections/docs/parmela.pdf

PARMILA
PARMILA is ion counterpart for PARMELA, It uses gap impulses (Thin-lens approxima-
tion) applied at the electrical center of the RF cells to get the new momentum, coordinates
of particles at the output of RF cells.

Elements available are bending magnets, quadrupoles, DTL (Drift Tube linacs) cells,
CCL (Coupled Cavity linac) cells, CCDTL (Coupled Cavity Drift Tube Linac) cells.

PARMELA uses the same space charge routine used in PARMELA (SCHEFF), but the
space charge impulses are applied in the middle of each drift between cells, and at the
middle of quadrupoles.

3
Link: http://laacg1.lanl.gov/laacg/services/download PMI.phtml

TREDI
TREDI is multi-purpose macroparticle, devoted to the simulation of electron beams
through RF guns, Linacs (Traveling, Standing Wave), Solenoids and Bending magnets.

Particle dynamics is obtained by integrating the Lorentz force equation by means of


a 4th order, variable step size Runge-Kutta algorithm.

Externel fields are split into two classes: field are computed analytically, or fields are
loaded from files and off axis terms are evaluated by means of series expansion.

Self field (Space Charge) is calculated using quasi-static approximation similar to PARMELA
and ASTRA with the space charge calculated at retarted time (Lienard Wiechert poten-
tials).

Unlike above codes, TREDI source code is available for public.

Link: http://www.tredi.enea.it/docs/lectures/index.htm

Das könnte Ihnen auch gefallen