Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
S src
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 59
    • Issues 59
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 3
    • Merge requests 3
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI/CD
    • Code Review
    • Issue
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OPAL
  • src
  • Wiki
    • Examples
  • cyclotron

Last edited by ext-calvo_p Jun 10, 2022
Page history

cyclotron

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

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.

Ring: 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

Clone repository
  • Examples
    • FFA
    • RFPhotoInjector
    • cyclotron
    • regressiontestexamples
  • FFA school prerequisites
  • For Developers
    • CodingStyle
    • Compile OPAL at CSCS
    • Compile OPAL
    • Compile required software
    • File Format for stat Storage
    • Most Used Directories in the Code
    • OPAL Development Workflow
    • Pmodules
    • Release Procedure
    • Setup build environment at PSI
View All Pages