OPAL (Object Oriented Parallel Accelerator Library)
2024.2
OPAL
src
PyOpal
PyElements
PyAsymmetricEnge.cpp
Go to the documentation of this file.
1
#include "
PyOpal/PyCore/ExceptionTranslation.h
"
2
#include "
PyOpal/PyCore/Globals.h
"
3
#include "
PyOpal/PyCore/PyOpalObject.h
"
4
#include "
PyOpal/PyElements/PyEndFieldModel.h
"
5
6
#include "
Classic/AbsBeamline/EndFieldModel/EndFieldModel.h
"
7
#include "
Elements/OpalAsymmetricEnge.h
"
8
9
namespace
PyOpal
{
10
template
<>
11
std::vector<PyOpalObjectNS::AttributeDef>
12
PyOpalObjectNS::PyOpalObject<OpalAsymmetricEnge>::attributes
= {
13
{
"X0_START"
,
"x0_start"
,
""
,
PyOpalObjectNS::DOUBLE
},
14
{
"LAMBDA_START"
,
"lambda_start"
,
""
,
PyOpalObjectNS::DOUBLE
},
15
{
"COEFFICIENTS_START"
,
"coefficients_start"
,
""
,
PyOpalObjectNS::FLOAT_LIST
},
16
{
"X0_END"
,
"x0_end"
,
""
,
PyOpalObjectNS::DOUBLE
},
17
{
"LAMBDA_END"
,
"lambda_end"
,
""
,
PyOpalObjectNS::DOUBLE
},
18
{
"COEFFICIENTS_END"
,
"coefficients_end"
,
""
,
PyOpalObjectNS::FLOAT_LIST
},
19
};
20
21
template
<>
22
std::string
PyOpalObjectNS::PyOpalObject<OpalAsymmetricEnge>::classDocstring
=
23
"AsymmetricEnge class is a field plugin that models a AsymmetricEnge function.\n"
24
"\n"
25
"It is referenced and set to field elements by use of the OPAL name (note not\n"
26
"any python name). The OPAL name is set using 'set_opal_name'.\n"
;
27
28
namespace
PyAsymmetricEnge {
29
30
const
char
*
module_docstring
=
31
"asymmetric_enge module holds an AsymmetricEnge end field 'plugin' class for\n"
32
"use with field models\n"
;
33
34
BOOST_PYTHON_MODULE
(asymmetric_enge) {
35
PyOpal::Globals::Initialise
();
36
ExceptionTranslation::registerExceptions
();
37
PyOpalObjectNS::PyOpalObject<OpalAsymmetricEnge>
element;
38
auto
elementClass = element.
make_element_class
(
"AsymmetricEnge"
);
39
elementClass.def(
"function"
, &PyOpal::PyEndFieldModel::function<OpalAsymmetricEnge>);
40
elementClass.def(
"update"
, &PyOpalObjectNS::update<OpalAsymmetricEnge>);
41
}
42
43
}
// namespace PyAsymmetricEnge
44
}
// namespace PyOpal
EndFieldModel.h
PyEndFieldModel.h
PyOpalObject.h
Globals.h
ExceptionTranslation.h
OpalAsymmetricEnge.h
PyOpal
Definition
ExceptionTranslation.cpp:21
PyOpal::ExceptionTranslation::registerExceptions
void registerExceptions()
Definition
ExceptionTranslation.cpp:23
PyOpal::Globals::Initialise
void Initialise()
Definition
Globals.cpp:50
PyOpal::PyOpalObjectNS::FLOAT_LIST
@ FLOAT_LIST
Definition
PyOpalObject.h:81
PyOpal::PyOpalObjectNS::DOUBLE
@ DOUBLE
Definition
PyOpalObject.h:81
PyOpal::PyAsymmetricEnge::module_docstring
const char * module_docstring
Definition
PyAsymmetricEnge.cpp:30
PyOpal::PyAsymmetricEnge::BOOST_PYTHON_MODULE
BOOST_PYTHON_MODULE(asymmetric_enge)
Definition
PyAsymmetricEnge.cpp:34
PyOpal::PyOpalObjectNS::PyOpalObject
Definition
PyOpalObject.h:138
PyOpal::PyOpalObjectNS::PyOpalObject::make_element_class
boost::python::class_< PyC > make_element_class(const char *className)
Definition
PyOpalObject.h:752
Generated on Tue Apr 14 2026 07:18:46 for OPAL (Object Oriented Parallel Accelerator Library) by
1.9.8