Goal

Here we will run the Cyclotron flavour of OPAL (OPAL-cycl) in two distinct modes

  1. Tune Calculation

    • Tune Calculation with OPAL’s closed orbit finder (only in OPAL 2.2 and higher)

  2. Accelerated orbit mode <!--

  3. 3D space charge calculation (under construction) -→

Preparation

This example is for OPAL 2.0.x and 1.6.x (see compatible versions in examples). If you do not have already access to OPAL, you can visit the download page the download page. In case OPAL is on your cluster please check with the administrator how to use. PSI user please click here.

Needed Input Files

For this project we need input files, that you obtain by clicking on links below:

File Description

cyclotron1.in and cyclotron2.in (cyclotron1.in and cyclotron2.in for 1.6.x)

the OPAL input files

bfield.dat

magnetic field map

rffield1.dat and rffield2.dat

rf field maps

dist1.dat dist2.dat

the input distributions

ic.dat

initial conditions for the tune calculation

refsol.dat

the reference solution for the tune calculation

cyclotron1.gpl and cyclotron2.gpl (cyclotron2.gpl for 1.6.x)

plotting scripts for gnuplot

Tune Calculation using cyclotron1.in

Needed files: cyclotron1.{in,bash,gpl}, bfield.dat, dist1.dat, ic.dat & refsol.dat

For the tune calculation we need initial conditions (ic): energy, radius and radial momenta given to us by an other program in the file ic.dat. The Bash script cyclotron1.bash will run the tune calculation for all energies specified in ic.dat and store the radial and vertical tune values together with reference data. Make sure the script has execute permission (chmod u+x cyclotron1.bash). A comparison can be plotted with gnuplot, by executing

gnuplot cyclotron1.gpl

The result is saved in cyclotron1.pdf and shown below.

tunesFIXPO

Tune Calculation with OPAL’s closed orbit finder (only in OPAL 2.2 and higher)

Needed files

| File | Description | | --- |-----| | cyclotronTune-2-1.in | OPAL input file | | bfield.dat | magnetic field map | | plotTunes.py | python (version 3) plotting script for tune calculation |

Since version 2.2 OPAL has a closed orbit finder with tune calculation based on Gordon’s algorithm.

The important commands in the input file are:

OPTION, CLOTUNEONLY =true;

This tells OPAL to only perform the closed orbit finder and tune calculation.

RingCycl: CYCLOTRON, TYPE=RING, CYHARMON=6, PHIINIT=0.0, PRINIT=pr0, RINIT=r0 , SYMMETRY=8.0, RFFREQ=f1, FMAPFN="bfield.dat", FMLOWE=72, FMHIGHE=590;

The minimal and maximal energy for the tune calculation (72 and 590 MeV).

DistTO: DISTRIBUTION,  TYPE=GAUSSMATCHED, LINE=L1,
        NSTEPS=1440, DENERGY=0.001, MAXSTEPSCO = 100, NSECTORS=8, SECTOR=FALSE;

The matched gauss distribution with parameters for the closed orbit finder (energy steps of 0.001 GeV, average the field over 8 sectors and a maximum of 100 steps for the closed orbit finder to converge). More information on the matched gauss distribution can be found in the Manual.

Run OPAL with

opal cyclotronTune-2-1.in

and plot the result from the output file data/tunes.dat with

python3 plotTunes.py

The result is saved in RingTunes.png and shown below.

TunesClosedOrbitFinder

Accelerated Orbit Calculation using cyclotron2.in

Needed files: cyclotron2.{in,gpl}, bfield.dat, dist2.dat, rffield1.dat & rffield2.dat

For this calculation the initial conditions are set in the input file. Run OPAL with

opal cyclotron2.in | tee cyclotron2.out

where you also save the output in cyclotron2.out. It is always a good idea to check the standard output of OPAL in order to reveal problems.

gnuplot cyclotron2.gpl

As in the previous example, the result is saved in cyclotron2.pdf and shown below.

Orbit