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