OPAL (Object Oriented Parallel Accelerator Library)
2024.1
OPAL
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
src
Elements
OpalSextupole.h
Go to the documentation of this file.
1
//
2
// Class OpalSextupole
3
// The SEXTUPOLE element.
4
//
5
// Copyright (c) 200x - 2020, Paul Scherrer Institut, Villigen PSI, Switzerland
6
// All rights reserved
7
//
8
// This file is part of OPAL.
9
//
10
// OPAL is free software: you can redistribute it and/or modify
11
// it under the terms of the GNU General Public License as published by
12
// the Free Software Foundation, either version 3 of the License, or
13
// (at your option) any later version.
14
//
15
// You should have received a copy of the GNU General Public License
16
// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
17
//
18
#ifndef OPAL_OpalSextupole_HH
19
#define OPAL_OpalSextupole_HH
20
21
#include "
Elements/OpalElement.h
"
22
23
24
class
OpalSextupole
:
public
OpalElement
{
25
26
public
:
27
29
enum
{
30
K2
=
COMMON
,
// The normal sextupole strength.
31
DK2
,
// The normal sextupole strength error.
32
K2S
,
// The skew sextupole strength.
33
DK2S
,
// The skew sextupole strength error.
34
SIZE
35
};
36
38
OpalSextupole
();
39
40
virtual
~OpalSextupole
();
41
43
virtual
OpalSextupole
*
clone
(
const
std::string &
name
);
44
46
// Handle printing in OPAL-8 format.
47
virtual
void
print
(std::ostream &)
const
;
48
50
virtual
void
update
();
51
52
private
:
53
54
// Not implemented.
55
OpalSextupole
(
const
OpalSextupole
&);
56
void
operator=
(
const
OpalSextupole
&);
57
58
// Clone constructor.
59
OpalSextupole
(
const
std::string &
name
,
OpalSextupole
*parent);
60
};
61
62
#endif // OPAL_OpalSextupole_HH
OpalElement.h
OpalSextupole::~OpalSextupole
virtual ~OpalSextupole()
Definition:
OpalSextupole.cpp:54
OpalSextupole::K2S
Definition:
OpalSextupole.h:32
OpalSextupole::SIZE
Definition:
OpalSextupole.h:34
OpalSextupole
Definition:
OpalSextupole.h:24
OpalSextupole::K2
Definition:
OpalSextupole.h:30
OpalSextupole::print
virtual void print(std::ostream &) const
Print the sextupole.
Definition:
OpalSextupole.cpp:64
OpalSextupole::DK2S
Definition:
OpalSextupole.h:33
OpalSextupole::OpalSextupole
OpalSextupole()
Exemplar constructor.
Definition:
OpalSextupole.cpp:30
OpalElement
Definition:
OpalElement.h:28
OpalSextupole::operator=
void operator=(const OpalSextupole &)
name
const std::string name
Definition:
MaxNormRadialPeak.cpp:32
OpalSextupole::update
virtual void update()
Update the embedded CLASSIC multipole.
Definition:
OpalSextupole.cpp:69
OpalElement::COMMON
Definition:
OpalElement.h:56
OpalSextupole::clone
virtual OpalSextupole * clone(const std::string &name)
Make clone.
Definition:
OpalSextupole.cpp:58
OpalSextupole::DK2
Definition:
OpalSextupole.h:31
Generated on Tue Jul 2 2024 15:05:24 for OPAL (Object Oriented Parallel Accelerator Library) by
1.8.5