1#include "dynamical_systems_bindings.h"
3#include <dynamical_systems/DynamicalSystemFactory.hpp>
4#include <dynamical_systems/IDynamicalSystem.hpp>
5#include <state_representation/space/cartesian/CartesianState.hpp>
7#include "py_dynamical_system.h"
10using namespace py_parameter;
12void cartesian(py::module_& m) {
13 py::object parameter_map = py::module_::import(
"state_representation").attr(
"ParameterMap");
14 py::class_<IDynamicalSystem<CartesianState>, std::shared_ptr<IDynamicalSystem<CartesianState>>,
PyDynamicalSystem<CartesianState>> c(m,
"ICartesianDS", parameter_map);
22void bind_cartesian_ds(py::module_& m) {
25 m.def(
"create_cartesian_ds", [](
DYNAMICAL_SYSTEM_TYPE type,
const std::list<ParameterContainer>& parameters) -> py::object {
27 },
"Create a dynamical system of the desired type with initial parameters.",
"type"_a,
"parameters"_a);
31 },
"Create a dynamical system of the desired type.",
"type"_a);
static std::shared_ptr< IDynamicalSystem< S > > create_dynamical_system(DYNAMICAL_SYSTEM_TYPE type)
Create a dynamical system of the desired type.
Abstract class for a dynamical system.
DYNAMICAL_SYSTEM_TYPE
Enumeration of the implemented dynamical systems.
Core state variables and objects.