OPAL (Object Oriented Parallel Accelerator Library)
2024.2
OPAL
src
PyOpal
PyElements
PyPolynomialTimeDependence.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
5
#include "
Elements/OpalPolynomialTimeDependence.h
"
6
#include "
PyOpal/PyElements/PyAbstractTimeDependence.h
"
7
8
namespace
PyOpal
{
9
template
<>
10
std::vector<PyOpalObjectNS::AttributeDef>
11
PyOpalObjectNS::PyOpalObject<OpalPolynomialTimeDependence>::attributes
= {
12
{
"P0"
,
"p0"
,
""
,
DOUBLE
},
13
{
"P1"
,
"p1"
,
""
,
DOUBLE
},
14
{
"P2"
,
"p2"
,
""
,
DOUBLE
},
15
{
"P3"
,
"p3"
,
""
,
DOUBLE
},
16
{
"COEFFICIENTS"
,
"coefficients"
,
""
,
FLOAT_LIST
},
17
};
18
19
template
<>
20
std::string
PyOpalObjectNS::PyOpalObject<OpalPolynomialTimeDependence>::classDocstring
=
21
"PolynomialTimeDependence class enables modelling time dependent behaviour.\n"
22
"\n"
23
"PolynomialTimeDependence class enables modelling lattice parameters that are\n"
24
"changing in time, for example RF voltages, frequencies, etc. The dependence\n"
25
"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/retrieved using 'set_opal_name' and\n"
27
"'get_opal_name' respectively.\n"
;
28
29
namespace
PyOpalPolynomialTimeDependence {
30
31
const
char
*
module_docstring
=
32
"polynomial_time_dependence module holds a PolynomialTimeDependence class"
;
33
34
BOOST_PYTHON_MODULE
(polynomial_time_dependence) {
35
Globals::Initialise
();
36
ExceptionTranslation::registerExceptions
();
37
PyOpalObjectNS::PyOpalObject<OpalPolynomialTimeDependence>
element;
38
auto
elementClass = element.
make_class
(
"PolynomialTimeDependence"
);
39
elementClass.def(
40
"function"
,
41
&PyOpal::PyAbstractTimeDependence::function<OpalPolynomialTimeDependence>);
42
elementClass.def(
"update"
, &PyOpalObjectNS::update<OpalPolynomialTimeDependence>);
43
}
44
45
}
// namespace PyOpalPolynomialTimeDependence
46
}
// namespace PyOpal
PyAbstractTimeDependence.h
PyOpalObject.h
Globals.h
ExceptionTranslation.h
OpalPolynomialTimeDependence.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::PyOpalPolynomialTimeDependence::BOOST_PYTHON_MODULE
BOOST_PYTHON_MODULE(polynomial_time_dependence)
Definition
PyPolynomialTimeDependence.cpp:34
PyOpal::PyOpalPolynomialTimeDependence::module_docstring
const char * module_docstring
Definition
PyPolynomialTimeDependence.cpp:31
PyOpal::PyOpalObjectNS::PyOpalObject
Definition
PyOpalObject.h:138
PyOpal::PyOpalObjectNS::PyOpalObject::make_class
boost::python::class_< PyC > make_class(const char *className)
Definition
PyOpalObject.h:745
Generated on Tue Apr 14 2026 07:18:46 for OPAL (Object Oriented Parallel Accelerator Library) by
1.9.8