OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
PyPolynomialPatch.h
Go to the documentation of this file.
1/* This file is part of MAUS: http://micewww.pp.rl.ac.uk/projects/maus
2 *
3 * MAUS is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 3 of the License, or
6 * (at your option) any later version.
7 *
8 * MAUS is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with MAUS. If not, see <http://www.gnu.org/licenses/>.
15 *
16 */
17
18#ifndef PYOPAL_PyPolynomialPatch_H
19#define PYOPAL_PyPolynomialPatch_H
20
21#include <Python.h>
22
23namespace interpolation {
24
25// note following are in interpolation namespace
26class PolynomialPatch;
27}
28
30
35typedef struct {
39
47static PyObject *_alloc(PyTypeObject *type, Py_ssize_t nitems);
48
58static int _init(PyObject* self, PyObject *args, PyObject *kwds);
59
65static void _dealloc(PyPolynomialMap * self);
66
68static void _free(PyPolynomialMap * self);
69
75PyMODINIT_FUNC initsquare_polynomial_map(void);
76
86static PyObject* get_coefficients_as_matrix(PyObject *self, PyObject *args,
87 PyObject *kwds);
88
97static PyObject* evaluate(PyObject *self, PyObject *args,
98 PyObject *kwds);
99
108// static PyObject* point_dimension(PyObject *self, PyObject *args,
109// PyObject *kwds);
110
119// static PyObject* value_dimension(PyObject *self, PyObject *args,
120// PyObject *kwds);
121
130// static PyObject* str(PyObject *self, PyObject *args, PyObject *kwds);
131
132} // namespace PySquarePolynomialMap
133
134#endif // PYOPAL_PySquarePolynomialMap_H
PyMODINIT_FUNC initsquare_polynomial_map(void)
boost::function< boost::tuple< double, bool >(arguments_t)> type
Definition: function.hpp:21
interpolation::PolynomialPatch * map
Patches together many SquarePolynomialVectors to make a multidimensional polynomial spline.