OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
PyPolynomialTimeDependence.cpp
Go to the documentation of this file.
4
7
8namespace PyOpal {
9 template <>
10 std::vector<PyOpalObjectNS::AttributeDef>
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 <>
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
30
31 const char* module_docstring =
32 "polynomial_time_dependence module holds a PolynomialTimeDependence class";
33
34 BOOST_PYTHON_MODULE(polynomial_time_dependence) {
38 auto elementClass = element.make_class("PolynomialTimeDependence");
39 elementClass.def(
40 "function",
43 }
44
45 } // namespace PyOpalPolynomialTimeDependence
46} // namespace PyOpal
void Initialise()
Definition Globals.cpp:50
void update(PyOpalObjectNS::PyOpalObject< C > pyelement)
double function(PyOpalObjectNS::PyOpalObject< C > pyobject, double t)
static std::vector< AttributeDef > attributes
boost::python::class_< PyC > make_class(const char *className)