OPAL (Object Oriented Parallel Accelerator Library)
2022.1
OPAL
src
src
Elements
OpalKicker.h
Go to the documentation of this file.
1
//
2
// Class OpalKicker
3
// The KICKER element.
4
// Note the sign convention: Positive kicks bend particles to positive x or
5
// y respectively.
6
//
7
// Copyright (c) 200x - 2020, Paul Scherrer Institut, Villigen PSI, Switzerland
8
// All rights reserved
9
//
10
// This file is part of OPAL.
11
//
12
// OPAL is free software: you can redistribute it and/or modify
13
// it under the terms of the GNU General Public License as published by
14
// the Free Software Foundation, either version 3 of the License, or
15
// (at your option) any later version.
16
//
17
// You should have received a copy of the GNU General Public License
18
// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
19
//
20
#ifndef OPAL_OpalKicker_HH
21
#define OPAL_OpalKicker_HH
22
23
#include "
Elements/OpalElement.h
"
24
25
26
class
OpalKicker
:
public
OpalElement
{
27
28
public
:
29
31
enum
{
32
HKICK
=
COMMON
,
// The horizontal kicker strength.
33
VKICK
,
// The vertical kicker strength.
34
DESIGNENERGY
,
// The mean kinetic energy at exit
35
K0
,
// The normal dipole field
36
K0S
,
// The skew dipole field
37
SIZE
38
};
39
41
OpalKicker
();
42
43
virtual
~OpalKicker
();
44
46
virtual
OpalKicker
*
clone
(
const
std::string &
name
);
47
48
49
// JMJ 18/12/2000 Following method not needed, commented out, delete after next CVS commit.
50
//BEGIN JMJ 15/12/2000, adding missing print method
51
// Print the kicker
52
// Handle printing in OPAL-8 format.
53
// virtual void print(std::ostream &) const;
54
//END JMJ 15/12/2000, adding missing print method
55
57
virtual
void
update
();
58
59
private
:
60
61
// Not implemented.
62
OpalKicker
(
const
OpalKicker
&);
63
void
operator=
(
const
OpalKicker
&);
64
65
// Clone constructor.
66
OpalKicker
(
const
std::string &
name
,
OpalKicker
*parent);
67
};
68
69
#endif
// OPAL_OpalKicker_HH
OpalElement.h
name
const std::string name
Definition:
MaxNormRadialPeak.cpp:32
OpalElement
Definition:
OpalElement.h:28
OpalElement::COMMON
@ COMMON
Definition:
OpalElement.h:56
OpalKicker
Definition:
OpalKicker.h:26
OpalKicker::K0S
@ K0S
Definition:
OpalKicker.h:36
OpalKicker::VKICK
@ VKICK
Definition:
OpalKicker.h:33
OpalKicker::SIZE
@ SIZE
Definition:
OpalKicker.h:37
OpalKicker::HKICK
@ HKICK
Definition:
OpalKicker.h:32
OpalKicker::DESIGNENERGY
@ DESIGNENERGY
Definition:
OpalKicker.h:34
OpalKicker::K0
@ K0
Definition:
OpalKicker.h:35
OpalKicker::clone
virtual OpalKicker * clone(const std::string &name)
Make clone.
Definition:
OpalKicker.cpp:61
OpalKicker::update
virtual void update()
Update the embedded CLASSIC corrector.
Definition:
OpalKicker.cpp:66
OpalKicker::~OpalKicker
virtual ~OpalKicker()
Definition:
OpalKicker.cpp:57
OpalKicker::OpalKicker
OpalKicker()
Exemplar constructor.
Definition:
OpalKicker.cpp:30
OpalKicker::OpalKicker
OpalKicker(const OpalKicker &)
OpalKicker::operator=
void operator=(const OpalKicker &)
Generated on Thu Oct 20 2022 17:40:11 for OPAL (Object Oriented Parallel Accelerator Library) by
1.9.3