LSSTApplications  20.0.0
LSSTDataManagementBasePackage
Typedefs | Functions
chebyshevBoundedField.cc File Reference
#include <pybind11/pybind11.h>
#include <pybind11/operators.h>
#include <pybind11/stl.h>
#include "ndarray/pybind11.h"
#include "lsst/pex/config/python.h"
#include "lsst/afw/table/io/python.h"
#include "lsst/afw/table/io/Persistable.h"
#include "lsst/afw/math/BoundedField.h"
#include "lsst/afw/math/ChebyshevBoundedField.h"

Go to the source code of this file.

Typedefs

using ClsField = py::class_< ChebyshevBoundedField, std::shared_ptr< ChebyshevBoundedField >, BoundedField >
 

Functions

template<typename PixelT >
void declareTemplates (ClsField &cls)
 
 PYBIND11_MODULE (chebyshevBoundedField, mod)
 

Typedef Documentation

◆ ClsField

Definition at line 40 of file chebyshevBoundedField.cc.

Function Documentation

◆ declareTemplates()

template<typename PixelT >
void declareTemplates ( ClsField cls)

Definition at line 44 of file chebyshevBoundedField.cc.

44  {
47  ChebyshevBoundedField::fit);
48 }

◆ PYBIND11_MODULE()

PYBIND11_MODULE ( chebyshevBoundedField  ,
mod   
)

Definition at line 50 of file chebyshevBoundedField.cc.

50  {
51  /* Module level */
52  py::class_<ChebyshevBoundedFieldControl> clsChebyshevBoundedFieldControl(mod,
53  "ChebyshevBoundedFieldControl");
54  ClsField clsChebyshevBoundedField(mod, "ChebyshevBoundedField");
55 
56  /* Member types and enums */
58 
59  /* Constructors */
60  clsChebyshevBoundedFieldControl.def(py::init<>());
61  clsChebyshevBoundedField.def(
62  py::init<lsst::geom::Box2I const &, ndarray::Array<double const, 2, 2> const &>());
63 
64  /* Operators are defined only in the BoundedField base class;
65  we let Python inheritance provide them here. */
66 
67  /* Members */
68  LSST_DECLARE_CONTROL_FIELD(clsChebyshevBoundedFieldControl, ChebyshevBoundedFieldControl, orderX);
69  LSST_DECLARE_CONTROL_FIELD(clsChebyshevBoundedFieldControl, ChebyshevBoundedFieldControl, orderY);
70  LSST_DECLARE_CONTROL_FIELD(clsChebyshevBoundedFieldControl, ChebyshevBoundedFieldControl, triangular);
71 
72  clsChebyshevBoundedFieldControl.def("computeSize", &ChebyshevBoundedFieldControl::computeSize);
73 
74  clsChebyshevBoundedField.def("getCoefficients", &ChebyshevBoundedField::getCoefficients);
75  clsChebyshevBoundedField.def_static(
77  lsst::geom::Box2I const &, ndarray::Array<double const, 1> const &,
78  ndarray::Array<double const, 1> const &, ndarray::Array<double const, 1> const &,
79  Control const &)) &
80  ChebyshevBoundedField::fit);
81  clsChebyshevBoundedField.def_static(
83  lsst::geom::Box2I const &, ndarray::Array<double const, 1> const &,
84  ndarray::Array<double const, 1> const &, ndarray::Array<double const, 1> const &,
85  ndarray::Array<double const, 1> const &, Control const &)) &
86  ChebyshevBoundedField::fit);
87 
88  clsChebyshevBoundedField.def("truncate", &ChebyshevBoundedField::truncate);
89 
90  // Pybind11 resolves overloads by picking the first one that might work
91  declareTemplates<double>(clsChebyshevBoundedField);
92  declareTemplates<float>(clsChebyshevBoundedField);
93 }
lsst::afw::math::ChebyshevBoundedFieldControl
A control object used when fitting ChebyshevBoundedField to data (see ChebyshevBoundedField::fit)
Definition: ChebyshevBoundedField.h:38
std::shared_ptr
STL class.
lsst::geom::truncate
Extent< int, N > truncate(Extent< double, N > const &input) noexcept
Return the component-wise truncation (round towards zero).
Definition: Extent.cc:100
lsst::afw::geom.transform.transformContinued.cls
cls
Definition: transformContinued.py:33
lsst::shapelet::computeSize
int computeSize(int order)
Return the size of the coefficient vector for the given order.
Definition: constants.h:97
orderX
table::Key< int > orderX
Definition: ChebyshevBoundedField.cc:316
ClsField
py::class_< ChebyshevBoundedField, std::shared_ptr< ChebyshevBoundedField >, BoundedField > ClsField
Definition: chebyshevBoundedField.cc:41
lsst::geom::Box2I
An integer coordinate rectangle.
Definition: Box.h:55
LSST_DECLARE_CONTROL_FIELD
#define LSST_DECLARE_CONTROL_FIELD(WRAPPER, CLASS, NAME)
Macro used to wrap fields declared by LSST_CONTROL_FIELD using Pybind11.
Definition: python.h:50
lsst::afw::image::Image
A class to represent a 2-dimensional array of pixels.
Definition: Image.h:58
lsst::utils.tests.init
def init()
Definition: tests.py:58
lsst::ip::diffim.Control
Control
Definition: __init__.py:49