OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
OpalStripper.h
Go to the documentation of this file.
1//
2// Class OpalStripper
3// The Stripper element
4//
5// Copyright (c) 2011, Jianjun Yang, Paul Scherrer Institut, Villigen PSI, Switzerland
6// Copyright (c) 2014, 2017-2018, Paul Scherrer Institut, Villigen PSI, Switzerland
7// All rights reserved
8//
9// Implemented as part of the PhD thesis
10// "Beam dynamics in high intensity cyclotrons including neighboring bunch effects"
11// and the paper
12// "Beam dynamics in high intensity cyclotrons including neighboring bunch effects:
13// Model, implementation, and application"
14// (https://journals.aps.org/prab/pdf/10.1103/PhysRevSTAB.13.064201)
15//
16// This file is part of OPAL.
17//
18// OPAL is free software: you can redistribute it and/or modify
19// it under the terms of the GNU General Public License as published by
20// the Free Software Foundation, either version 3 of the License, or
21// (at your option) any later version.
22//
23// You should have received a copy of the GNU General Public License
24// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
25//
26#ifndef OPAL_OpalStripper_HH
27#define OPAL_OpalStripper_HH
28
30
32
33public:
34
36 enum {
37 XSTART = COMMON, // Start of x coordinate
38 XEND, // End of x coordinate
39 YSTART, // Start of y coordinate
40 YEND, // End of y coordinate
41 WIDTH, // Width of the probe
42 OPCHARGE, // Charge number of the outcome particle
43 OPMASS, // Mass of the outcome particle
46 SIZE
47 };
48
50
51 virtual ~OpalStripper();
52
54 virtual OpalStripper *clone(const std::string &name);
55
57 virtual void update();
58
59private:
60
61 // Not implemented.
63 void operator=(const OpalStripper &);
64
65 // Clone constructor.
66 OpalStripper(const std::string &name, OpalStripper *parent);
67
68};
69
70#endif // OPAL_OpalStripper_HH
const std::string name
virtual OpalStripper * clone(const std::string &name)
Make clone.
virtual void update()
Update the embedded CLASSIC septum.
virtual ~OpalStripper()
void operator=(const OpalStripper &)
OpalStripper(const OpalStripper &)