OPAL (Object Oriented Parallel Accelerator Library)
2024.1
OPAL
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
src
Elements
OpalOctupole.h
Go to the documentation of this file.
1
//
2
// Class OpalOctupole
3
// The OCTUPOLE 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_OpalOctupole_HH
19
#define OPAL_OpalOctupole_HH
20
21
22
#include "
Elements/OpalElement.h
"
23
24
25
class
OpalOctupole
:
public
OpalElement
{
26
27
public
:
28
30
enum
{
31
K3
=
COMMON
,
// The normal octupole coefficient.
32
DK3
,
// The normal octupole coefficient error.
33
K3S
,
// The skew octupole coefficient.
34
DK3S
,
// The skew octupole coefficient error.
35
SIZE
36
};
37
39
OpalOctupole
();
40
41
virtual
~OpalOctupole
();
42
44
virtual
OpalOctupole
*
clone
(
const
std::string &
name
);
45
47
// Handle printing in OPAL-8 format.
48
virtual
void
print
(std::ostream &)
const
;
49
51
virtual
void
update
();
52
53
private
:
54
55
// Not implemented.
56
OpalOctupole
(
const
OpalOctupole
&);
57
void
operator=
(
const
OpalOctupole
&);
58
59
// Clone constructor.
60
OpalOctupole
(
const
std::string &
name
,
OpalOctupole
*parent);
61
};
62
63
#endif // OPAL_OpalOctupole_HH
OpalElement.h
OpalOctupole::K3
Definition:
OpalOctupole.h:31
OpalOctupole
Definition:
OpalOctupole.h:25
OpalOctupole::clone
virtual OpalOctupole * clone(const std::string &name)
Make clone.
Definition:
OpalOctupole.cpp:58
OpalOctupole::operator=
void operator=(const OpalOctupole &)
OpalOctupole::OpalOctupole
OpalOctupole()
Exemplar constructor.
Definition:
OpalOctupole.cpp:30
OpalOctupole::SIZE
Definition:
OpalOctupole.h:35
OpalElement
Definition:
OpalElement.h:28
OpalOctupole::print
virtual void print(std::ostream &) const
Print the element.
Definition:
OpalOctupole.cpp:63
OpalOctupole::DK3
Definition:
OpalOctupole.h:32
name
const std::string name
Definition:
MaxNormRadialPeak.cpp:32
OpalElement::COMMON
Definition:
OpalElement.h:56
OpalOctupole::update
virtual void update()
Update the embedded CLASSIC multipole.
Definition:
OpalOctupole.cpp:68
OpalOctupole::DK3S
Definition:
OpalOctupole.h:34
OpalOctupole::K3S
Definition:
OpalOctupole.h:33
OpalOctupole::~OpalOctupole
virtual ~OpalOctupole()
Definition:
OpalOctupole.cpp:54
Generated on Tue Jul 2 2024 15:05:24 for OPAL (Object Oriented Parallel Accelerator Library) by
1.8.5