25 #include <pybind11/pybind11.h>
26 #include <pybind11/stl.h>
27 #include "ndarray/pybind11.h"
33 using namespace pybind11::literals;
38 void declareChebyDomain(
py::module const &mod) {
39 py::class_<ChebyDomain, std::shared_ptr<ChebyDomain>>
cls(mod,
"ChebyDomain");
42 cls.def_readonly(
"lbnd", &ChebyDomain::lbnd);
43 cls.def_readonly(
"ubnd", &ChebyDomain::ubnd);
47 py::module::import(
"astshim.mapping");
49 declareChebyDomain(mod);
51 py::class_<ChebyMap, std::shared_ptr<ChebyMap>, Mapping>
cls(mod,
"ChebyMap");
56 "coeff_i"_a,
"coeff_i"_a,
"lbnds_f"_a,
"ubnds_f"_a,
"lbnds_i"_a,
"ubnds_i"_a,
"options"_a =
"");
59 "coeff_i"_a,
"nout"_a,
"lbnds_f"_a,
"ubnds_f"_a,
"options"_a =
"");
60 cls.def(py::init<ChebyMap const &>());
62 cls.def(
"copy", &ChebyMap::copy);
63 cls.def(
"getDomain", &ChebyMap::getDomain,
"forward"_a);
67 "forward"_a,
"acc"_a,
"maxacc"_a,
"maxorder"_a,
"lbnd"_a,
"ubnd"_a);
68 cls.def(
"polyTran", py::overload_cast<bool, double, double, int>(&ChebyMap::polyTran, py::const_),
69 "forward"_a,
"acc"_a,
"maxacc"_a,
"maxorder"_a);