OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
PyAsymmetricEnge.cpp
Go to the documentation of this file.
5
8
9namespace PyOpal {
10 template <>
11 std::vector<PyOpalObjectNS::AttributeDef>
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 <>
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) {
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
void registerExceptions()
Register exception translations with boost.
void Initialise()
Globals namespace provides routines to initialise global objects:
Definition: Globals.cpp:50
BOOST_PYTHON_MODULE(asymmetric_enge)
PyOpalObject<C> is the basic wrapper class for Opal Objects.
Definition: PyOpalObject.h:138
boost::python::class_< PyC > make_element_class(const char *className)
This is the basic method to make a class for elements.
Definition: PyOpalObject.h:752