Bug Summary

File:/tmp/pyrefcon/scipy/scipy/interpolate/_rbfinterp_pythran.cpp
Warning:line 2301, column 25
PyObject ownership leak with reference count of 1

Annotated Source Code

Press '?' to see keyboard shortcuts

clang -cc1 -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name _rbfinterp_pythran.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -analyzer-output=html -analyzer-checker=python -analyzer-disable-checker=deadcode -analyzer-config prune-paths=true,suppress-c++-stdlib=true,suppress-null-return-paths=false,crosscheck-with-z3=true,model-path=/opt/pyrefcon/lib/pyrefcon/models/models -analyzer-config experimental-enable-naive-ctu-analysis=true,ctu-dir=/tmp/pyrefcon/scipy/csa-scan,ctu-index-name=/tmp/pyrefcon/scipy/csa-scan/externalDefMap.txt,ctu-invocation-list=/tmp/pyrefcon/scipy/csa-scan/invocations.yaml,display-ctu-progress=false -setup-static-analyzer -analyzer-config-compatibility-mode=true -mrelocation-model pic -pic-level 2 -fhalf-no-semantic-interposition -mframe-pointer=none -fno-rounding-math -mconstructor-aliases -munwind-tables -target-cpu x86-64 -tune-cpu generic -debug-info-kind=limited -dwarf-version=4 -debugger-tuning=gdb -fcoverage-compilation-dir=/tmp/pyrefcon/scipy -resource-dir /opt/pyrefcon/lib/clang/13.0.0 -isystem /opt/pyrefcon/lib/pyrefcon/models/python3.8 -D NDEBUG -D _FORTIFY_SOURCE=2 -D ENABLE_PYTHON_MODULE -D __PYTHRAN__=3 -D PYTHRAN_BLAS_NONE -I /home/pyrefcon/.local/lib/python3.8/site-packages/pythran -I /usr/lib/python3/dist-packages/numpy/core/include -I /usr/lib/python3/dist-packages/numpy/core/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/x86_64-linux-gnu/c++/10 -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/backward -internal-isystem /opt/pyrefcon/lib/clang/13.0.0/include -internal-isystem /usr/local/include -internal-isystem /usr/lib/gcc/x86_64-linux-gnu/10/../../../../x86_64-linux-gnu/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O2 -Wno-unused-result -Wsign-compare -Wall -Wformat -Werror=format-security -Wformat -Werror=format-security -Wdate-time -Wno-unused-function -Wno-int-in-bool-context -Wno-unknown-warning-option -std=c++11 -fdeprecated-macro -fdebug-compilation-dir=/tmp/pyrefcon/scipy -ferror-limit 19 -fvisibility hidden -pthread -stack-protector 2 -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -vectorize-loops -vectorize-slp -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/pyrefcon/scipy/csa-scan/reports -x c++ scipy/interpolate/_rbfinterp_pythran.cpp

scipy/interpolate/_rbfinterp_pythran.cpp

1#include <pythonic/core.hpp>
2#include <pythonic/python/core.hpp>
3#include <pythonic/types/bool.hpp>
4#include <pythonic/types/int.hpp>
5#ifdef _OPENMP
6#include <omp.h>
7#endif
8#include <pythonic/include/types/ndarray.hpp>
9#include <pythonic/include/types/float.hpp>
10#include <pythonic/include/types/numpy_texpr.hpp>
11#include <pythonic/include/types/int.hpp>
12#include <pythonic/include/types/str.hpp>
13#include <pythonic/types/str.hpp>
14#include <pythonic/types/ndarray.hpp>
15#include <pythonic/types/float.hpp>
16#include <pythonic/types/int.hpp>
17#include <pythonic/types/numpy_texpr.hpp>
18#include <pythonic/include/builtins/None.hpp>
19#include <pythonic/include/builtins/dict.hpp>
20#include <pythonic/include/builtins/float_.hpp>
21#include <pythonic/include/builtins/getattr.hpp>
22#include <pythonic/include/builtins/pythran/make_shape.hpp>
23#include <pythonic/include/builtins/range.hpp>
24#include <pythonic/include/builtins/tuple.hpp>
25#include <pythonic/include/numpy/empty.hpp>
26#include <pythonic/include/numpy/exp.hpp>
27#include <pythonic/include/numpy/linalg/norm.hpp>
28#include <pythonic/include/numpy/log.hpp>
29#include <pythonic/include/numpy/max.hpp>
30#include <pythonic/include/numpy/min.hpp>
31#include <pythonic/include/numpy/prod.hpp>
32#include <pythonic/include/numpy/sqrt.hpp>
33#include <pythonic/include/numpy/square.hpp>
34#include <pythonic/include/numpy/zeros.hpp>
35#include <pythonic/include/operator_/add.hpp>
36#include <pythonic/include/operator_/div.hpp>
37#include <pythonic/include/operator_/eq.hpp>
38#include <pythonic/include/operator_/iadd.hpp>
39#include <pythonic/include/operator_/mul.hpp>
40#include <pythonic/include/operator_/neg.hpp>
41#include <pythonic/include/operator_/pow.hpp>
42#include <pythonic/include/operator_/sub.hpp>
43#include <pythonic/include/types/slice.hpp>
44#include <pythonic/include/types/str.hpp>
45#include <pythonic/builtins/None.hpp>
46#include <pythonic/builtins/dict.hpp>
47#include <pythonic/builtins/float_.hpp>
48#include <pythonic/builtins/getattr.hpp>
49#include <pythonic/builtins/pythran/make_shape.hpp>
50#include <pythonic/builtins/range.hpp>
51#include <pythonic/builtins/tuple.hpp>
52#include <pythonic/numpy/empty.hpp>
53#include <pythonic/numpy/exp.hpp>
54#include <pythonic/numpy/linalg/norm.hpp>
55#include <pythonic/numpy/log.hpp>
56#include <pythonic/numpy/max.hpp>
57#include <pythonic/numpy/min.hpp>
58#include <pythonic/numpy/prod.hpp>
59#include <pythonic/numpy/sqrt.hpp>
60#include <pythonic/numpy/square.hpp>
61#include <pythonic/numpy/zeros.hpp>
62#include <pythonic/operator_/add.hpp>
63#include <pythonic/operator_/div.hpp>
64#include <pythonic/operator_/eq.hpp>
65#include <pythonic/operator_/iadd.hpp>
66#include <pythonic/operator_/mul.hpp>
67#include <pythonic/operator_/neg.hpp>
68#include <pythonic/operator_/pow.hpp>
69#include <pythonic/operator_/sub.hpp>
70#include <pythonic/types/slice.hpp>
71#include <pythonic/types/str.hpp>
72namespace __pythran__rbfinterp_pythran
73{
74 struct polynomial_matrix
75 {
76 typedef void callable;
77 ;
78 template <typename argument_type0 , typename argument_type1 , typename argument_type2 >
79 struct type
80 {
81 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::prod{})>::type>::type __type0;
82 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type1;
83 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::range{})>::type>::type __type2;
84 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type1>())) __type4;
85 typedef typename std::tuple_element<0,typename std::remove_reference<__type4>::type>::type __type5;
86 typedef decltype(std::declval<__type2>()(std::declval<__type5>())) __type6;
87 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type6>::type::iterator>::value_type>::type __type7;
88 typedef decltype(std::declval<__type1>()[std::declval<__type7>()]) __type8;
89 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type9;
90 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type9>())) __type11;
91 typedef typename std::tuple_element<0,typename std::remove_reference<__type11>::type>::type __type12;
92 typedef decltype(std::declval<__type2>()(std::declval<__type12>())) __type13;
93 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type13>::type::iterator>::value_type>::type __type14;
94 typedef decltype(std::declval<__type9>()[std::declval<__type14>()]) __type15;
95 typedef decltype(pythonic::builtins::pow(std::declval<__type8>(), std::declval<__type15>())) __type16;
96 typedef decltype(std::declval<__type0>()(std::declval<__type16>())) __type17;
97 typedef decltype(pythonic::types::make_tuple(std::declval<__type7>(), std::declval<__type14>())) __type20;
98 typedef __type17 __ptype0;
99 typedef __type20 __ptype1;
100 typedef typename pythonic::returnable<pythonic::types::none_type>::type result_type;
101 }
102 ;
103 template <typename argument_type0 , typename argument_type1 , typename argument_type2 >
104 typename type<argument_type0, argument_type1, argument_type2>::result_type operator()(argument_type0&& x, argument_type1&& powers, argument_type2&& out) const
105 ;
106 } ;
107 struct kernel_matrix
108 {
109 typedef void callable;
110 ;
111 template <typename argument_type0 , typename argument_type1 , typename argument_type2 >
112 struct type
113 {
114 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type0;
115 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::linalg::functor::norm{})>::type>::type __type1;
116 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
117 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::range{})>::type>::type __type3;
118 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type2>())) __type5;
119 typedef typename std::tuple_element<0,typename std::remove_reference<__type5>::type>::type __type6;
120 typedef decltype(std::declval<__type3>()(std::declval<__type6>())) __type7;
121 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type7>::type::iterator>::value_type>::type __type8;
122 typedef decltype(std::declval<__type2>()[std::declval<__type8>()]) __type9;
123 typedef long __type12;
124 typedef decltype(pythonic::operator_::add(std::declval<__type8>(), std::declval<__type12>())) __type13;
125 typedef decltype(std::declval<__type3>()(std::declval<__type13>())) __type14;
126 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type14>::type::iterator>::value_type>::type __type15;
127 typedef decltype(std::declval<__type2>()[std::declval<__type15>()]) __type16;
128 typedef decltype(pythonic::operator_::sub(std::declval<__type9>(), std::declval<__type16>())) __type17;
129 typedef decltype(std::declval<__type1>()(std::declval<__type17>())) __type18;
130 typedef decltype(std::declval<__type0>()(std::declval<__type18>())) __type19;
131 typedef decltype(pythonic::types::make_tuple(std::declval<__type8>(), std::declval<__type15>())) __type22;
132 typedef __type19 __ptype4;
133 typedef __type22 __ptype5;
134 typedef typename pythonic::returnable<pythonic::types::none_type>::type result_type;
135 }
136 ;
137 template <typename argument_type0 , typename argument_type1 , typename argument_type2 >
138 typename type<argument_type0, argument_type1, argument_type2>::result_type operator()(argument_type0&& x, argument_type1&& kernel_func, argument_type2&& out) const
139 ;
140 } ;
141 struct polynomial_vector
142 {
143 typedef void callable;
144 ;
145 template <typename argument_type0 , typename argument_type1 , typename argument_type2 >
146 struct type
147 {
148 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::prod{})>::type>::type __type0;
149 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type1;
150 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type2;
151 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::range{})>::type>::type __type3;
152 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type2>())) __type5;
153 typedef typename std::tuple_element<0,typename std::remove_reference<__type5>::type>::type __type6;
154 typedef decltype(std::declval<__type3>()(std::declval<__type6>())) __type7;
155 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type7>::type::iterator>::value_type>::type __type8;
156 typedef decltype(std::declval<__type2>()[std::declval<__type8>()]) __type9;
157 typedef decltype(pythonic::builtins::pow(std::declval<__type1>(), std::declval<__type9>())) __type10;
158 typedef decltype(std::declval<__type0>()(std::declval<__type10>())) __type11;
159 typedef __type11 __ptype12;
160 typedef __type8 __ptype13;
161 typedef typename pythonic::returnable<pythonic::types::none_type>::type result_type;
162 }
163 ;
164 template <typename argument_type0 , typename argument_type1 , typename argument_type2 >
165 typename type<argument_type0, argument_type1, argument_type2>::result_type operator()(argument_type0&& x, argument_type1&& powers, argument_type2&& out) const
166 ;
167 } ;
168 struct kernel_vector
169 {
170 typedef void callable;
171 ;
172 template <typename argument_type0 , typename argument_type1 , typename argument_type2 , typename argument_type3 >
173 struct type
174 {
175 typedef typename std::remove_cv<typename std::remove_reference<argument_type2>::type>::type __type0;
176 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::linalg::functor::norm{})>::type>::type __type1;
177 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
178 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type3;
179 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::range{})>::type>::type __type4;
180 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type3>())) __type6;
181 typedef typename std::tuple_element<0,typename std::remove_reference<__type6>::type>::type __type7;
182 typedef decltype(std::declval<__type4>()(std::declval<__type7>())) __type8;
183 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type8>::type::iterator>::value_type>::type __type9;
184 typedef decltype(std::declval<__type3>()[std::declval<__type9>()]) __type10;
185 typedef decltype(pythonic::operator_::sub(std::declval<__type2>(), std::declval<__type10>())) __type11;
186 typedef decltype(std::declval<__type1>()(std::declval<__type11>())) __type12;
187 typedef decltype(std::declval<__type0>()(std::declval<__type12>())) __type13;
188 typedef __type13 __ptype16;
189 typedef __type9 __ptype17;
190 typedef typename pythonic::returnable<pythonic::types::none_type>::type result_type;
191 }
192 ;
193 template <typename argument_type0 , typename argument_type1 , typename argument_type2 , typename argument_type3 >
194 typename type<argument_type0, argument_type1, argument_type2, argument_type3>::result_type operator()(argument_type0&& x, argument_type1&& y, argument_type2&& kernel_func, argument_type3&& out) const
195 ;
196 } ;
197 struct gaussian
198 {
199 typedef void callable;
200 typedef void pure;
201 template <typename argument_type0 >
202 struct type
203 {
204 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::exp{})>::type>::type __type0;
205 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::square{})>::type>::type __type1;
206 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
207 typedef decltype(std::declval<__type1>()(std::declval<__type2>())) __type3;
208 typedef decltype(pythonic::operator_::neg(std::declval<__type3>())) __type4;
209 typedef typename pythonic::returnable<decltype(std::declval<__type0>()(std::declval<__type4>()))>::type result_type;
210 }
211 ;
212 template <typename argument_type0 >
213 typename type<argument_type0>::result_type operator()(argument_type0&& r) const
214 ;
215 } ;
216 struct inverse_quadratic
217 {
218 typedef void callable;
219 typedef void pure;
220 template <typename argument_type0 >
221 struct type
222 {
223 typedef long __type0;
224 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::square{})>::type>::type __type1;
225 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
226 typedef decltype(std::declval<__type1>()(std::declval<__type2>())) __type3;
227 typedef decltype(pythonic::operator_::add(std::declval<__type3>(), std::declval<__type0>())) __type4;
228 typedef typename pythonic::returnable<decltype(pythonic::operator_::div(std::declval<__type0>(), std::declval<__type4>()))>::type result_type;
229 }
230 ;
231 template <typename argument_type0 >
232 typename type<argument_type0>::result_type operator()(argument_type0&& r) const
233 ;
234 } ;
235 struct inverse_multiquadric
236 {
237 typedef void callable;
238 typedef void pure;
239 template <typename argument_type0 >
240 struct type
241 {
242 typedef long __type0;
243 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::sqrt{})>::type>::type __type1;
244 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::square{})>::type>::type __type2;
245 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type3;
246 typedef decltype(std::declval<__type2>()(std::declval<__type3>())) __type4;
247 typedef decltype(pythonic::operator_::add(std::declval<__type4>(), std::declval<__type0>())) __type5;
248 typedef decltype(std::declval<__type1>()(std::declval<__type5>())) __type6;
249 typedef typename pythonic::returnable<decltype(pythonic::operator_::div(std::declval<__type0>(), std::declval<__type6>()))>::type result_type;
250 }
251 ;
252 template <typename argument_type0 >
253 typename type<argument_type0>::result_type operator()(argument_type0&& r) const
254 ;
255 } ;
256 struct multiquadric
257 {
258 typedef void callable;
259 typedef void pure;
260 template <typename argument_type0 >
261 struct type
262 {
263 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::sqrt{})>::type>::type __type0;
264 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::square{})>::type>::type __type1;
265 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
266 typedef decltype(std::declval<__type1>()(std::declval<__type2>())) __type3;
267 typedef long __type4;
268 typedef decltype(pythonic::operator_::add(std::declval<__type3>(), std::declval<__type4>())) __type5;
269 typedef decltype(std::declval<__type0>()(std::declval<__type5>())) __type6;
270 typedef typename pythonic::returnable<decltype(pythonic::operator_::neg(std::declval<__type6>()))>::type result_type;
271 }
272 ;
273 template <typename argument_type0 >
274 typename type<argument_type0>::result_type operator()(argument_type0&& r) const
275 ;
276 } ;
277 struct quintic
278 {
279 typedef void callable;
280 typedef void pure;
281 template <typename argument_type0 >
282 struct type
283 {
284 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::square{})>::type>::type __type0;
285 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type1;
286 typedef decltype(std::declval<__type0>()(std::declval<__type1>())) __type2;
287 typedef decltype(std::declval<__type0>()(std::declval<__type2>())) __type3;
288 typedef decltype(pythonic::operator_::mul(std::declval<__type3>(), std::declval<__type1>())) __type5;
289 typedef typename pythonic::returnable<decltype(pythonic::operator_::neg(std::declval<__type5>()))>::type result_type;
290 }
291 ;
292 template <typename argument_type0 >
293 typename type<argument_type0>::result_type operator()(argument_type0&& r) const
294 ;
295 } ;
296 struct cubic
297 {
298 typedef void callable;
299 typedef void pure;
300 template <typename argument_type0 >
301 struct type
302 {
303 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::square{})>::type>::type __type0;
304 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type1;
305 typedef decltype(std::declval<__type0>()(std::declval<__type1>())) __type2;
306 typedef typename pythonic::returnable<decltype(pythonic::operator_::mul(std::declval<__type2>(), std::declval<__type1>()))>::type result_type;
307 }
308 ;
309 template <typename argument_type0 >
310 typename type<argument_type0>::result_type operator()(argument_type0&& r) const
311 ;
312 } ;
313 struct thin_plate_spline
314 {
315 typedef void callable;
316 typedef void pure;
317 template <typename argument_type0 >
318 struct type
319 {
320 typedef double __type0;
321 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::square{})>::type>::type __type1;
322 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
323 typedef decltype(std::declval<__type1>()(std::declval<__type2>())) __type3;
324 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::log{})>::type>::type __type4;
325 typedef decltype(std::declval<__type4>()(std::declval<__type2>())) __type6;
326 typedef decltype(pythonic::operator_::mul(std::declval<__type3>(), std::declval<__type6>())) __type7;
327 typedef typename pythonic::returnable<typename __combined<__type0,__type7>::type>::type result_type;
328 }
329 ;
330 template <typename argument_type0 >
331 typename type<argument_type0>::result_type operator()(argument_type0&& r) const
332 ;
333 } ;
334 struct linear
335 {
336 typedef void callable;
337 typedef void pure;
338 template <typename argument_type0 >
339 struct type
340 {
341 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type0;
342 typedef typename pythonic::returnable<decltype(pythonic::operator_::neg(std::declval<__type0>()))>::type result_type;
343 }
344 ;
345 template <typename argument_type0 >
346 typename type<argument_type0>::result_type operator()(argument_type0&& r) const
347 ;
348 } ;
349 struct _polynomial_matrix
350 {
351 typedef void callable;
352 typedef void pure;
353 template <typename argument_type0 , typename argument_type1 >
354 struct type
355 {
356 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::empty{})>::type>::type __type0;
357 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::pythran::functor::make_shape{})>::type>::type __type1;
358 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
359 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type2>())) __type3;
360 typedef typename std::tuple_element<0,typename std::remove_reference<__type3>::type>::type __type4;
361 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type5;
362 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type5>())) __type6;
363 typedef typename std::tuple_element<0,typename std::remove_reference<__type6>::type>::type __type7;
364 typedef decltype(std::declval<__type1>()(std::declval<__type4>(), std::declval<__type7>())) __type8;
365 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::float_{})>::type>::type __type9;
366 typedef typename pythonic::assignable<decltype(std::declval<__type0>()(std::declval<__type8>(), std::declval<__type9>()))>::type __type10;
367 typedef typename polynomial_matrix::type<__type2, __type5, __type10>::__ptype0 __type14;
368 typedef container<typename std::remove_reference<__type14>::type> __type15;
369 typedef typename __combined<__type10,__type15>::type __type16;
370 typedef typename polynomial_matrix::type<__type2, __type5, __type16>::__ptype1 __type18;
371 typedef indexable<__type18> __type19;
372 typedef typename __combined<__type16,__type19>::type __type20;
373 typedef typename pythonic::returnable<typename __combined<__type20,__type20>::type>::type result_type;
374 }
375 ;
376 template <typename argument_type0 , typename argument_type1 >
377 typename type<argument_type0, argument_type1>::result_type operator()(argument_type0&& x, argument_type1&& powers) const
378 ;
379 } ;
380 struct NAME_TO_FUNC
381 {
382 typedef void callable;
383 typedef void pure;
384 struct type
385 {
386 typedef pythonic::types::str __type0;
387 typedef linear __type1;
388 typedef pythonic::types::dict<__type0,__type1> __type2;
389 typedef thin_plate_spline __type3;
390 typedef pythonic::types::dict<__type0,__type3> __type4;
391 typedef typename __combined<__type2,__type4>::type __type5;
392 typedef cubic __type6;
393 typedef pythonic::types::dict<__type0,__type6> __type7;
394 typedef typename __combined<__type5,__type7>::type __type8;
395 typedef quintic __type9;
396 typedef pythonic::types::dict<__type0,__type9> __type10;
397 typedef typename __combined<__type8,__type10>::type __type11;
398 typedef multiquadric __type12;
399 typedef pythonic::types::dict<__type0,__type12> __type13;
400 typedef typename __combined<__type11,__type13>::type __type14;
401 typedef inverse_multiquadric __type15;
402 typedef pythonic::types::dict<__type0,__type15> __type16;
403 typedef typename __combined<__type14,__type16>::type __type17;
404 typedef inverse_quadratic __type18;
405 typedef pythonic::types::dict<__type0,__type18> __type19;
406 typedef typename __combined<__type17,__type19>::type __type20;
407 typedef gaussian __type21;
408 typedef pythonic::types::dict<__type0,__type21> __type22;
409 typedef typename pythonic::returnable<typename __combined<__type20,__type22>::type>::type result_type;
410 } ;
411 typename type::result_type operator()() const;
412 ;
413 } ;
414 struct _kernel_matrix
415 {
416 typedef void callable;
417 ;
418 template <typename argument_type0 , typename argument_type1 >
419 struct type
420 {
421 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::empty{})>::type>::type __type0;
422 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::pythran::functor::make_shape{})>::type>::type __type1;
423 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
424 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type2>())) __type3;
425 typedef typename std::tuple_element<0,typename std::remove_reference<__type3>::type>::type __type4;
426 typedef decltype(std::declval<__type1>()(std::declval<__type4>(), std::declval<__type4>())) __type8;
427 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::float_{})>::type>::type __type9;
428 typedef typename pythonic::assignable<decltype(std::declval<__type0>()(std::declval<__type8>(), std::declval<__type9>()))>::type __type10;
429 typedef pythonic::types::str __type12;
430 typedef linear __type13;
431 typedef pythonic::types::dict<__type12,__type13> __type14;
432 typedef thin_plate_spline __type15;
433 typedef pythonic::types::dict<__type12,__type15> __type16;
434 typedef typename __combined<__type14,__type16>::type __type17;
435 typedef cubic __type18;
436 typedef pythonic::types::dict<__type12,__type18> __type19;
437 typedef typename __combined<__type17,__type19>::type __type20;
438 typedef quintic __type21;
439 typedef pythonic::types::dict<__type12,__type21> __type22;
440 typedef typename __combined<__type20,__type22>::type __type23;
441 typedef multiquadric __type24;
442 typedef pythonic::types::dict<__type12,__type24> __type25;
443 typedef typename __combined<__type23,__type25>::type __type26;
444 typedef inverse_multiquadric __type27;
445 typedef pythonic::types::dict<__type12,__type27> __type28;
446 typedef typename __combined<__type26,__type28>::type __type29;
447 typedef inverse_quadratic __type30;
448 typedef pythonic::types::dict<__type12,__type30> __type31;
449 typedef typename __combined<__type29,__type31>::type __type32;
450 typedef gaussian __type33;
451 typedef pythonic::types::dict<__type12,__type33> __type34;
452 typedef typename __combined<__type32,__type34>::type __type35;
453 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type36;
454 typedef decltype(std::declval<__type35>()[std::declval<__type36>()]) __type37;
455 typedef typename kernel_matrix::type<__type2, __type37, __type10>::__ptype4 __type39;
456 typedef container<typename std::remove_reference<__type39>::type> __type40;
457 typedef typename __combined<__type10,__type40>::type __type41;
458 typedef typename kernel_matrix::type<__type2, __type37, __type41>::__ptype5 __type43;
459 typedef indexable<__type43> __type44;
460 typedef typename __combined<__type41,__type44>::type __type45;
461 typedef typename pythonic::returnable<typename __combined<__type45,__type45>::type>::type result_type;
462 }
463 ;
464 template <typename argument_type0 , typename argument_type1 >
465 typename type<argument_type0, argument_type1>::result_type operator()(argument_type0&& x, argument_type1&& kernel) const
466 ;
467 } ;
468 struct _evaluate
469 {
470 typedef void callable;
471 ;
472 template <typename argument_type0 , typename argument_type1 , typename argument_type2 , typename argument_type3 , typename argument_type4 , typename argument_type5 , typename argument_type6 , typename argument_type7 >
473 struct type
474 {
475 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::zeros{})>::type>::type __type0;
476 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::pythran::functor::make_shape{})>::type>::type __type1;
477 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
478 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type2>())) __type3;
479 typedef typename std::tuple_element<0,typename std::remove_reference<__type3>::type>::type __type4;
480 typedef typename std::remove_cv<typename std::remove_reference<argument_type7>::type>::type __type5;
481 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type5>())) __type6;
482 typedef typename std::tuple_element<1,typename std::remove_reference<__type6>::type>::type __type7;
483 typedef decltype(std::declval<__type1>()(std::declval<__type4>(), std::declval<__type7>())) __type8;
484 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::float_{})>::type>::type __type9;
485 typedef typename pythonic::assignable<decltype(std::declval<__type0>()(std::declval<__type8>(), std::declval<__type9>()))>::type __type10;
486 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::range{})>::type>::type __type11;
487 typedef decltype(std::declval<__type11>()(std::declval<__type4>())) __type12;
488 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type12>::type::iterator>::value_type>::type __type13;
489 typedef decltype(std::declval<__type11>()(std::declval<__type7>())) __type14;
490 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type14>::type::iterator>::value_type>::type __type15;
491 typedef decltype(pythonic::types::make_tuple(std::declval<__type13>(), std::declval<__type15>())) __type16;
492 typedef indexable<__type16> __type17;
493 typedef typename __combined<__type10,__type17>::type __type18;
494 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type20;
495 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type20>())) __type21;
496 typedef typename pythonic::assignable<typename std::tuple_element<0,typename std::remove_reference<__type21>::type>::type>::type __type22;
497 typedef typename std::remove_cv<typename std::remove_reference<argument_type4>::type>::type __type23;
498 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type23>())) __type24;
499 typedef typename std::tuple_element<0,typename std::remove_reference<__type24>::type>::type __type25;
500 typedef decltype(pythonic::operator_::add(std::declval<__type22>(), std::declval<__type25>())) __type26;
501 typedef decltype(std::declval<__type11>()(std::declval<__type26>())) __type27;
502 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type27>::type::iterator>::value_type>::type __type28;
503 typedef decltype(pythonic::types::make_tuple(std::declval<__type28>(), std::declval<__type15>())) __type30;
504 typedef decltype(std::declval<__type5>()[std::declval<__type30>()]) __type31;
505 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::empty{})>::type>::type __type32;
506 typedef decltype(std::declval<__type1>()(std::declval<__type26>())) __type35;
507 typedef typename pythonic::assignable<decltype(std::declval<__type32>()(std::declval<__type35>(), std::declval<__type9>()))>::type __type36;
508 typedef pythonic::types::contiguous_slice __type38;
509 typedef decltype(std::declval<__type36>()[std::declval<__type38>()]) __type39;
510 typedef typename std::remove_cv<typename std::remove_reference<argument_type3>::type>::type __type41;
511 typedef typename pythonic::assignable<decltype(pythonic::operator_::mul(std::declval<__type2>(), std::declval<__type41>()))>::type __type42;
512 typedef decltype(std::declval<__type42>()[std::declval<__type13>()]) __type44;
513 typedef typename pythonic::assignable<decltype(pythonic::operator_::mul(std::declval<__type20>(), std::declval<__type41>()))>::type __type47;
514 typedef pythonic::types::str __type48;
515 typedef linear __type49;
516 typedef pythonic::types::dict<__type48,__type49> __type50;
517 typedef thin_plate_spline __type51;
518 typedef pythonic::types::dict<__type48,__type51> __type52;
519 typedef typename __combined<__type50,__type52>::type __type53;
520 typedef cubic __type54;
521 typedef pythonic::types::dict<__type48,__type54> __type55;
522 typedef typename __combined<__type53,__type55>::type __type56;
523 typedef quintic __type57;
524 typedef pythonic::types::dict<__type48,__type57> __type58;
525 typedef typename __combined<__type56,__type58>::type __type59;
526 typedef multiquadric __type60;
527 typedef pythonic::types::dict<__type48,__type60> __type61;
528 typedef typename __combined<__type59,__type61>::type __type62;
529 typedef inverse_multiquadric __type63;
530 typedef pythonic::types::dict<__type48,__type63> __type64;
531 typedef typename __combined<__type62,__type64>::type __type65;
532 typedef inverse_quadratic __type66;
533 typedef pythonic::types::dict<__type48,__type66> __type67;
534 typedef typename __combined<__type65,__type67>::type __type68;
535 typedef gaussian __type69;
536 typedef pythonic::types::dict<__type48,__type69> __type70;
537 typedef typename __combined<__type68,__type70>::type __type71;
538 typedef typename std::remove_cv<typename std::remove_reference<argument_type2>::type>::type __type72;
539 typedef typename pythonic::assignable<decltype(std::declval<__type71>()[std::declval<__type72>()])>::type __type73;
540 typedef typename kernel_vector::type<__type44, __type47, __type73, __type39>::__ptype16 __type74;
541 typedef container<typename std::remove_reference<__type74>::type> __type75;
542 typedef typename __combined<__type39,__type75>::type __type76;
543 typedef typename kernel_vector::type<__type44, __type47, __type73, __type76>::__ptype17 __type77;
544 typedef indexable<__type77> __type78;
545 typedef typename __combined<__type76,__type78>::type __type79;
546 typedef typename __combined<__type75,__type78>::type __type80;
547 typedef typename __combined<__type36,__type79,__type80>::type __type81;
548 typedef decltype(std::declval<__type81>()[std::declval<__type38>()]) __type82;
549 typedef typename std::remove_cv<typename std::remove_reference<argument_type5>::type>::type __type84;
550 typedef decltype(pythonic::operator_::sub(std::declval<__type2>(), std::declval<__type84>())) __type85;
551 typedef typename std::remove_cv<typename std::remove_reference<argument_type6>::type>::type __type86;
552 typedef typename pythonic::assignable<decltype(pythonic::operator_::div(std::declval<__type85>(), std::declval<__type86>()))>::type __type87;
553 typedef decltype(std::declval<__type87>()[std::declval<__type13>()]) __type89;
554 typedef typename polynomial_vector::type<__type89, __type23, __type82>::__ptype12 __type91;
555 typedef container<typename std::remove_reference<__type91>::type> __type92;
556 typedef typename __combined<__type82,__type92>::type __type93;
557 typedef typename polynomial_vector::type<__type89, __type23, __type93>::__ptype13 __type94;
558 typedef indexable<__type94> __type95;
559 typedef typename __combined<__type93,__type95>::type __type96;
560 typedef typename __combined<__type92,__type95>::type __type97;
561 typedef typename __combined<__type36,__type79,__type80,__type96,__type97>::type __type98;
562 typedef decltype(std::declval<__type98>()[std::declval<__type28>()]) __type100;
563 typedef decltype(pythonic::operator_::mul(std::declval<__type31>(), std::declval<__type100>())) __type101;
564 typedef container<typename std::remove_reference<__type101>::type> __type102;
565 typedef typename pythonic::returnable<typename __combined<__type18,__type17,__type102>::type>::type result_type;
566 }
567 ;
568 template <typename argument_type0 , typename argument_type1 , typename argument_type2 , typename argument_type3 , typename argument_type4 , typename argument_type5 , typename argument_type6 , typename argument_type7 >
569 typename type<argument_type0, argument_type1, argument_type2, argument_type3, argument_type4, argument_type5, argument_type6, argument_type7>::result_type operator()(argument_type0&& x, argument_type1&& y, argument_type2&& kernel, argument_type3&& epsilon, argument_type4&& powers, argument_type5&& shift, argument_type6&& scale, argument_type7&& coeffs) const
570 ;
571 } ;
572 struct _build_system
573 {
574 typedef void callable;
575 ;
576 template <typename argument_type0 , typename argument_type1 , typename argument_type2 , typename argument_type3 , typename argument_type4 , typename argument_type5 >
577 struct type
578 {
579 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::empty{})>::type>::type __type0;
580 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::pythran::functor::make_shape{})>::type>::type __type1;
581 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type2;
582 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type2>())) __type3;
583 typedef typename pythonic::assignable<typename std::tuple_element<0,typename std::remove_reference<__type3>::type>::type>::type __type4;
584 typedef typename std::remove_cv<typename std::remove_reference<argument_type5>::type>::type __type5;
585 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type5>())) __type6;
586 typedef typename pythonic::assignable<typename std::tuple_element<0,typename std::remove_reference<__type6>::type>::type>::type __type7;
587 typedef decltype(pythonic::operator_::add(std::declval<__type4>(), std::declval<__type7>())) __type8;
588 typedef decltype(std::declval<__type1>()(std::declval<__type8>(), std::declval<__type8>())) __type12;
589 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::float_{})>::type>::type __type13;
590 typedef decltype(std::declval<__type0>()(std::declval<__type12>(), std::declval<__type13>())) __type14;
591 typedef typename pythonic::assignable<decltype(pythonic::builtins::getattr(pythonic::types::attr::T{}, std::declval<__type14>()))>::type __type15;
592 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::range{})>::type>::type __type16;
593 typedef decltype(std::declval<__type16>()(std::declval<__type4>())) __type18;
594 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type18>::type::iterator>::value_type>::type __type19;
595 typedef decltype(pythonic::types::make_tuple(std::declval<__type19>(), std::declval<__type19>())) __type21;
596 typedef indexable<__type21> __type22;
597 typedef typename __combined<__type15,__type22>::type __type23;
598 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type24;
599 typedef typename std::remove_cv<typename std::remove_reference<argument_type4>::type>::type __type25;
600 typedef decltype(pythonic::operator_::mul(std::declval<__type24>(), std::declval<__type25>())) __type26;
601 typedef pythonic::types::str __type27;
602 typedef linear __type28;
603 typedef pythonic::types::dict<__type27,__type28> __type29;
604 typedef thin_plate_spline __type30;
605 typedef pythonic::types::dict<__type27,__type30> __type31;
606 typedef typename __combined<__type29,__type31>::type __type32;
607 typedef cubic __type33;
608 typedef pythonic::types::dict<__type27,__type33> __type34;
609 typedef typename __combined<__type32,__type34>::type __type35;
610 typedef quintic __type36;
611 typedef pythonic::types::dict<__type27,__type36> __type37;
612 typedef typename __combined<__type35,__type37>::type __type38;
613 typedef multiquadric __type39;
614 typedef pythonic::types::dict<__type27,__type39> __type40;
615 typedef typename __combined<__type38,__type40>::type __type41;
616 typedef inverse_multiquadric __type42;
617 typedef pythonic::types::dict<__type27,__type42> __type43;
618 typedef typename __combined<__type41,__type43>::type __type44;
619 typedef inverse_quadratic __type45;
620 typedef pythonic::types::dict<__type27,__type45> __type46;
621 typedef typename __combined<__type44,__type46>::type __type47;
622 typedef gaussian __type48;
623 typedef pythonic::types::dict<__type27,__type48> __type49;
624 typedef typename __combined<__type47,__type49>::type __type50;
625 typedef typename std::remove_cv<typename std::remove_reference<argument_type3>::type>::type __type51;
626 typedef decltype(std::declval<__type50>()[std::declval<__type51>()]) __type52;
627 typedef pythonic::types::contiguous_slice __type54;
628 typedef decltype(std::declval<__type15>()(std::declval<__type54>(), std::declval<__type54>())) __type55;
629 typedef typename kernel_matrix::type<__type26, __type52, __type55>::__ptype4 __type56;
630 typedef container<typename std::remove_reference<__type56>::type> __type57;
631 typedef container<typename std::remove_reference<__type57>::type> __type58;
632 typedef typename kernel_matrix::type<__type26, __type52, __type55>::__ptype5 __type59;
633 typedef indexable<__type59> __type60;
634 typedef container<typename std::remove_reference<__type60>::type> __type61;
635 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::max{})>::type>::type __type63;
636 typedef long __type65;
637 typedef typename pythonic::assignable<decltype(std::declval<__type63>()(std::declval<__type24>(), std::declval<__type65>()))>::type __type66;
638 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::min{})>::type>::type __type67;
639 typedef typename pythonic::assignable<decltype(std::declval<__type67>()(std::declval<__type24>(), std::declval<__type65>()))>::type __type69;
640 typedef decltype(pythonic::operator_::add(std::declval<__type66>(), std::declval<__type69>())) __type70;
641 typedef typename pythonic::assignable<decltype(pythonic::operator_::div(std::declval<__type70>(), std::declval<__type65>()))>::type __type71;
642 typedef decltype(pythonic::operator_::sub(std::declval<__type24>(), std::declval<__type71>())) __type72;
643 typedef decltype(pythonic::operator_::sub(std::declval<__type66>(), std::declval<__type69>())) __type75;
644 typedef typename pythonic::assignable<decltype(pythonic::operator_::div(std::declval<__type75>(), std::declval<__type65>()))>::type __type76;
645 typedef double __type77;
646 typedef container<typename std::remove_reference<__type77>::type> __type78;
647 typedef typename __combined<__type76,__type78>::type __type79;
648 typedef decltype(pythonic::operator_::eq(std::declval<__type79>(), std::declval<__type77>())) __type80;
649 typedef indexable<__type80> __type81;
650 typedef typename __combined<__type76,__type81>::type __type82;
651 typedef typename __combined<__type82,__type78,__type81,__type78>::type __type83;
652 typedef decltype(pythonic::operator_::div(std::declval<__type72>(), std::declval<__type83>())) __type84;
653 typedef typename __combined<__type15,__type58,__type61>::type __type86;
654 typedef decltype(std::declval<__type86>()(std::declval<__type54>(), std::declval<__type54>())) __type87;
655 typedef typename polynomial_matrix::type<__type84, __type5, __type87>::__ptype0 __type88;
656 typedef container<typename std::remove_reference<__type88>::type> __type89;
657 typedef container<typename std::remove_reference<__type89>::type> __type90;
658 typedef typename polynomial_matrix::type<__type84, __type5, __type87>::__ptype1 __type91;
659 typedef indexable<__type91> __type92;
660 typedef container<typename std::remove_reference<__type92>::type> __type93;
661 typedef typename __combined<__type15,__type58,__type61,__type90,__type93>::type __type94;
662 typedef decltype(std::declval<__type94>()(std::declval<__type54>(), std::declval<__type54>())) __type95;
663 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::T{}, std::declval<__type95>())) __type96;
664 typedef container<typename std::remove_reference<__type96>::type> __type97;
665 typedef typename std::remove_cv<typename std::remove_reference<argument_type2>::type>::type __type98;
666 typedef decltype(std::declval<__type98>()[std::declval<__type19>()]) __type100;
667 typedef container<typename std::remove_reference<__type100>::type> __type101;
668 typedef typename __combined<__type23,__type58,__type61,__type90,__type93,__type97,__type78,__type22,__type101>::type __type102;
669 typedef typename std::tuple_element<1,typename std::remove_reference<__type3>::type>::type __type105;
670 typedef decltype(std::declval<__type1>()(std::declval<__type105>(), std::declval<__type8>())) __type109;
671 typedef decltype(std::declval<__type0>()(std::declval<__type109>(), std::declval<__type13>())) __type110;
672 typedef typename pythonic::assignable<decltype(pythonic::builtins::getattr(pythonic::types::attr::T{}, std::declval<__type110>()))>::type __type111;
673 typedef typename __combined<__type111,__type2,__type77>::type __type113;
674 typedef typename __combined<__type82,__type78,__type81>::type __type115;
675 typedef typename pythonic::returnable<decltype(pythonic::types::make_tuple(std::declval<__type102>(), std::declval<__type113>(), std::declval<__type71>(), std::declval<__type115>()))>::type result_type;
676 }
677 ;
678 template <typename argument_type0 , typename argument_type1 , typename argument_type2 , typename argument_type3 , typename argument_type4 , typename argument_type5 >
679 typename type<argument_type0, argument_type1, argument_type2, argument_type3, argument_type4, argument_type5>::result_type operator()(argument_type0&& y, argument_type1&& d, argument_type2&& smoothing, argument_type3&& kernel, argument_type4&& epsilon, argument_type5&& powers) const
680 ;
681 } ;
682 template <typename argument_type0 , typename argument_type1 , typename argument_type2 >
683 typename polynomial_matrix::type<argument_type0, argument_type1, argument_type2>::result_type polynomial_matrix::operator()(argument_type0&& x, argument_type1&& powers, argument_type2&& out) const
684 {
685 {
686 long __target139669609899152 = std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, x));
687 for (long i=0L; i < __target139669609899152; i += 1L)
688 {
689 {
690 long __target139669609913744 = std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, powers));
691 for (long j=0L; j < __target139669609913744; j += 1L)
692 {
693 out.fast(pythonic::types::make_tuple(i, j)) = pythonic::numpy::functor::prod{}(pythonic::builtins::pow(x.fast(i), powers.fast(j)));
694 }
695 }
696 }
697 }
698 return pythonic::builtins::None;
699 }
700 template <typename argument_type0 , typename argument_type1 , typename argument_type2 >
701 typename kernel_matrix::type<argument_type0, argument_type1, argument_type2>::result_type kernel_matrix::operator()(argument_type0&& x, argument_type1&& kernel_func, argument_type2&& out) const
702 {
703 {
704 long __target139669609879632 = std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, x));
705 for (long i=0L; i < __target139669609879632; i += 1L)
706 {
707 {
708 long __target139669609899344 = pythonic::operator_::add(i, 1L);
709 for (long j=0L; j < __target139669609899344; j += 1L)
710 {
711 out.fast(pythonic::types::make_tuple(i, j)) = kernel_func(pythonic::numpy::linalg::functor::norm{}(pythonic::operator_::sub(x.fast(i), x.fast(j))));
712 out.fast(pythonic::types::make_tuple(j, i)) = out.fast(pythonic::types::make_tuple(i, j));
713 }
714 }
715 }
716 }
717 return pythonic::builtins::None;
718 }
719 template <typename argument_type0 , typename argument_type1 , typename argument_type2 >
720 typename polynomial_vector::type<argument_type0, argument_type1, argument_type2>::result_type polynomial_vector::operator()(argument_type0&& x, argument_type1&& powers, argument_type2&& out) const
721 {
722 {
723 long __target139669609868064 = std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, powers));
724 for (long i=0L; i < __target139669609868064; i += 1L)
725 {
726 out.fast(i) = pythonic::numpy::functor::prod{}(pythonic::builtins::pow(x, powers.fast(i)));
727 }
728 }
729 return pythonic::builtins::None;
730 }
731 template <typename argument_type0 , typename argument_type1 , typename argument_type2 , typename argument_type3 >
732 typename kernel_vector::type<argument_type0, argument_type1, argument_type2, argument_type3>::result_type kernel_vector::operator()(argument_type0&& x, argument_type1&& y, argument_type2&& kernel_func, argument_type3&& out) const
733 {
734 {
735 long __target139669609867584 = std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, y));
736 for (long i=0L; i < __target139669609867584; i += 1L)
737 {
738 out.fast(i) = kernel_func(pythonic::numpy::linalg::functor::norm{}(pythonic::operator_::sub(x, y.fast(i))));
739 }
740 }
741 return pythonic::builtins::None;
742 }
743 template <typename argument_type0 >
744 typename gaussian::type<argument_type0>::result_type gaussian::operator()(argument_type0&& r) const
745 {
746 return pythonic::numpy::functor::exp{}(pythonic::operator_::neg(pythonic::numpy::functor::square{}(r)));
747 }
748 template <typename argument_type0 >
749 typename inverse_quadratic::type<argument_type0>::result_type inverse_quadratic::operator()(argument_type0&& r) const
750 {
751 return pythonic::operator_::div(1L, pythonic::operator_::add(pythonic::numpy::functor::square{}(r), 1L));
752 }
753 template <typename argument_type0 >
754 typename inverse_multiquadric::type<argument_type0>::result_type inverse_multiquadric::operator()(argument_type0&& r) const
755 {
756 return pythonic::operator_::div(1L, pythonic::numpy::functor::sqrt{}(pythonic::operator_::add(pythonic::numpy::functor::square{}(r), 1L)));
757 }
758 template <typename argument_type0 >
759 typename multiquadric::type<argument_type0>::result_type multiquadric::operator()(argument_type0&& r) const
760 {
761 return pythonic::operator_::neg(pythonic::numpy::functor::sqrt{}(pythonic::operator_::add(pythonic::numpy::functor::square{}(r), 1L)));
762 }
763 template <typename argument_type0 >
764 typename quintic::type<argument_type0>::result_type quintic::operator()(argument_type0&& r) const
765 {
766 return pythonic::operator_::neg(pythonic::operator_::mul(pythonic::numpy::functor::square{}(pythonic::numpy::functor::square{}(r)), r));
767 }
768 template <typename argument_type0 >
769 typename cubic::type<argument_type0>::result_type cubic::operator()(argument_type0&& r) const
770 {
771 return pythonic::operator_::mul(pythonic::numpy::functor::square{}(r), r);
772 }
773 template <typename argument_type0 >
774 typename thin_plate_spline::type<argument_type0>::result_type thin_plate_spline::operator()(argument_type0&& r) const
775 {
776 if (pythonic::operator_::eq(r, 0L))
777 {
778 return 0.0;
779 }
780 else
781 {
782 return pythonic::operator_::mul(pythonic::numpy::functor::square{}(r), pythonic::numpy::functor::log{}(r));
783 }
784 }
785 template <typename argument_type0 >
786 typename linear::type<argument_type0>::result_type linear::operator()(argument_type0&& r) const
787 {
788 return pythonic::operator_::neg(r);
789 }
790 template <typename argument_type0 , typename argument_type1 >
791 typename _polynomial_matrix::type<argument_type0, argument_type1>::result_type _polynomial_matrix::operator()(argument_type0&& x, argument_type1&& powers) const
792 {
793 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::empty{})>::type>::type __type0;
794 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::pythran::functor::make_shape{})>::type>::type __type1;
795 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
796 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type2>())) __type3;
797 typedef typename std::tuple_element<0,typename std::remove_reference<__type3>::type>::type __type4;
798 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type5;
799 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type5>())) __type6;
800 typedef typename std::tuple_element<0,typename std::remove_reference<__type6>::type>::type __type7;
801 typedef decltype(std::declval<__type1>()(std::declval<__type4>(), std::declval<__type7>())) __type8;
802 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::float_{})>::type>::type __type9;
803 typedef typename pythonic::assignable<decltype(std::declval<__type0>()(std::declval<__type8>(), std::declval<__type9>()))>::type __type10;
804 typedef typename polynomial_matrix::type<__type2, __type5, __type10>::__ptype0 __type14;
805 typedef container<typename std::remove_reference<__type14>::type> __type15;
806 typedef typename __combined<__type10,__type15>::type __type16;
807 typedef typename polynomial_matrix::type<__type2, __type5, __type16>::__ptype1 __type18;
808 typedef indexable<__type18> __type19;
809 typedef typename __combined<__type16,__type19>::type __type20;
810 typename pythonic::assignable<typename __combined<__type20,__type20>::type>::type out = pythonic::numpy::functor::empty{}(pythonic::builtins::pythran::functor::make_shape{}(std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, x)), std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, powers))), pythonic::builtins::functor::float_{});
811 polynomial_matrix()(x, powers, out);
812 return out;
813 }
814 typename NAME_TO_FUNC::type::result_type NAME_TO_FUNC::operator()() const
815 {
816 {
817 static typename NAME_TO_FUNC::type::result_type tmp_global = typename pythonic::assignable<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<pythonic::types::dict<pythonic::types::str,linear>,pythonic::types::dict<pythonic::types::str,thin_plate_spline>>::type,pythonic::types::dict<pythonic::types::str,cubic>>::type,pythonic::types::dict<pythonic::types::str,quintic>>::type,pythonic::types::dict<pythonic::types::str,multiquadric>>::type,pythonic::types::dict<pythonic::types::str,inverse_multiquadric>>::type,pythonic::types::dict<pythonic::types::str,inverse_quadratic>>::type,pythonic::types::dict<pythonic::types::str,gaussian>>::type>::type{{{ pythonic::types::str("linear"), linear() }, { pythonic::types::str("thin_plate_spline"), thin_plate_spline() }, { pythonic::types::str("cubic"), cubic() }, { pythonic::types::str("quintic"), quintic() }, { pythonic::types::str("multiquadric"), multiquadric() }, { pythonic::types::str("inverse_multiquadric"), inverse_multiquadric() }, { pythonic::types::str("inverse_quadratic"), inverse_quadratic() }, { pythonic::types::str("gaussian"), gaussian() }}};
818 return tmp_global;
819 }
820 }
821 template <typename argument_type0 , typename argument_type1 >
822 typename _kernel_matrix::type<argument_type0, argument_type1>::result_type _kernel_matrix::operator()(argument_type0&& x, argument_type1&& kernel) const
823 {
824 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::empty{})>::type>::type __type0;
825 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::pythran::functor::make_shape{})>::type>::type __type1;
826 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type2;
827 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type2>())) __type3;
828 typedef typename std::tuple_element<0,typename std::remove_reference<__type3>::type>::type __type4;
829 typedef decltype(std::declval<__type1>()(std::declval<__type4>(), std::declval<__type4>())) __type8;
830 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::float_{})>::type>::type __type9;
831 typedef typename pythonic::assignable<decltype(std::declval<__type0>()(std::declval<__type8>(), std::declval<__type9>()))>::type __type10;
832 typedef pythonic::types::str __type12;
833 typedef linear __type13;
834 typedef pythonic::types::dict<__type12,__type13> __type14;
835 typedef thin_plate_spline __type15;
836 typedef pythonic::types::dict<__type12,__type15> __type16;
837 typedef typename __combined<__type14,__type16>::type __type17;
838 typedef cubic __type18;
839 typedef pythonic::types::dict<__type12,__type18> __type19;
840 typedef typename __combined<__type17,__type19>::type __type20;
841 typedef quintic __type21;
842 typedef pythonic::types::dict<__type12,__type21> __type22;
843 typedef typename __combined<__type20,__type22>::type __type23;
844 typedef multiquadric __type24;
845 typedef pythonic::types::dict<__type12,__type24> __type25;
846 typedef typename __combined<__type23,__type25>::type __type26;
847 typedef inverse_multiquadric __type27;
848 typedef pythonic::types::dict<__type12,__type27> __type28;
849 typedef typename __combined<__type26,__type28>::type __type29;
850 typedef inverse_quadratic __type30;
851 typedef pythonic::types::dict<__type12,__type30> __type31;
852 typedef typename __combined<__type29,__type31>::type __type32;
853 typedef gaussian __type33;
854 typedef pythonic::types::dict<__type12,__type33> __type34;
855 typedef typename __combined<__type32,__type34>::type __type35;
856 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type36;
857 typedef decltype(std::declval<__type35>()[std::declval<__type36>()]) __type37;
858 typedef typename kernel_matrix::type<__type2, __type37, __type10>::__ptype4 __type39;
859 typedef container<typename std::remove_reference<__type39>::type> __type40;
860 typedef typename __combined<__type10,__type40>::type __type41;
861 typedef typename kernel_matrix::type<__type2, __type37, __type41>::__ptype5 __type43;
862 typedef indexable<__type43> __type44;
863 typedef typename __combined<__type41,__type44>::type __type45;
864 typename pythonic::assignable<typename __combined<__type45,__type45>::type>::type out = pythonic::numpy::functor::empty{}(pythonic::builtins::pythran::functor::make_shape{}(std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, x)), std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, x))), pythonic::builtins::functor::float_{});
865 kernel_matrix()(x, typename pythonic::assignable<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<pythonic::types::dict<pythonic::types::str,linear>,pythonic::types::dict<pythonic::types::str,thin_plate_spline>>::type,pythonic::types::dict<pythonic::types::str,cubic>>::type,pythonic::types::dict<pythonic::types::str,quintic>>::type,pythonic::types::dict<pythonic::types::str,multiquadric>>::type,pythonic::types::dict<pythonic::types::str,inverse_multiquadric>>::type,pythonic::types::dict<pythonic::types::str,inverse_quadratic>>::type,pythonic::types::dict<pythonic::types::str,gaussian>>::type>::type{{{ pythonic::types::str("linear"), linear() }, { pythonic::types::str("thin_plate_spline"), thin_plate_spline() }, { pythonic::types::str("cubic"), cubic() }, { pythonic::types::str("quintic"), quintic() }, { pythonic::types::str("multiquadric"), multiquadric() }, { pythonic::types::str("inverse_multiquadric"), inverse_multiquadric() }, { pythonic::types::str("inverse_quadratic"), inverse_quadratic() }, { pythonic::types::str("gaussian"), gaussian() }}}[kernel], out);
866 return out;
867 }
868 template <typename argument_type0 , typename argument_type1 , typename argument_type2 , typename argument_type3 , typename argument_type4 , typename argument_type5 , typename argument_type6 , typename argument_type7 >
869 typename _evaluate::type<argument_type0, argument_type1, argument_type2, argument_type3, argument_type4, argument_type5, argument_type6, argument_type7>::result_type _evaluate::operator()(argument_type0&& x, argument_type1&& y, argument_type2&& kernel, argument_type3&& epsilon, argument_type4&& powers, argument_type5&& shift, argument_type6&& scale, argument_type7&& coeffs) const
870 {
871 typedef pythonic::types::str __type0;
872 typedef linear __type1;
873 typedef pythonic::types::dict<__type0,__type1> __type2;
874 typedef thin_plate_spline __type3;
875 typedef pythonic::types::dict<__type0,__type3> __type4;
876 typedef typename __combined<__type2,__type4>::type __type5;
877 typedef cubic __type6;
878 typedef pythonic::types::dict<__type0,__type6> __type7;
879 typedef typename __combined<__type5,__type7>::type __type8;
880 typedef quintic __type9;
881 typedef pythonic::types::dict<__type0,__type9> __type10;
882 typedef typename __combined<__type8,__type10>::type __type11;
883 typedef multiquadric __type12;
884 typedef pythonic::types::dict<__type0,__type12> __type13;
885 typedef typename __combined<__type11,__type13>::type __type14;
886 typedef inverse_multiquadric __type15;
887 typedef pythonic::types::dict<__type0,__type15> __type16;
888 typedef typename __combined<__type14,__type16>::type __type17;
889 typedef inverse_quadratic __type18;
890 typedef pythonic::types::dict<__type0,__type18> __type19;
891 typedef typename __combined<__type17,__type19>::type __type20;
892 typedef gaussian __type21;
893 typedef pythonic::types::dict<__type0,__type21> __type22;
894 typedef typename __combined<__type20,__type22>::type __type23;
895 typedef typename std::remove_cv<typename std::remove_reference<argument_type2>::type>::type __type24;
896 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::zeros{})>::type>::type __type25;
897 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::pythran::functor::make_shape{})>::type>::type __type26;
898 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type27;
899 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type27>())) __type28;
900 typedef typename std::tuple_element<0,typename std::remove_reference<__type28>::type>::type __type29;
901 typedef typename std::remove_cv<typename std::remove_reference<argument_type7>::type>::type __type30;
902 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type30>())) __type31;
903 typedef typename std::tuple_element<1,typename std::remove_reference<__type31>::type>::type __type32;
904 typedef decltype(std::declval<__type26>()(std::declval<__type29>(), std::declval<__type32>())) __type33;
905 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::float_{})>::type>::type __type34;
906 typedef typename pythonic::assignable<decltype(std::declval<__type25>()(std::declval<__type33>(), std::declval<__type34>()))>::type __type35;
907 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::range{})>::type>::type __type36;
908 typedef decltype(std::declval<__type36>()(std::declval<__type29>())) __type37;
909 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type37>::type::iterator>::value_type>::type __type38;
910 typedef decltype(std::declval<__type36>()(std::declval<__type32>())) __type39;
911 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type39>::type::iterator>::value_type>::type __type40;
912 typedef decltype(pythonic::types::make_tuple(std::declval<__type38>(), std::declval<__type40>())) __type41;
913 typedef indexable<__type41> __type42;
914 typedef typename __combined<__type35,__type42>::type __type43;
915 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type45;
916 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type45>())) __type46;
917 typedef typename pythonic::assignable<typename std::tuple_element<0,typename std::remove_reference<__type46>::type>::type>::type __type47;
918 typedef typename std::remove_cv<typename std::remove_reference<argument_type4>::type>::type __type48;
919 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type48>())) __type49;
920 typedef typename std::tuple_element<0,typename std::remove_reference<__type49>::type>::type __type50;
921 typedef decltype(pythonic::operator_::add(std::declval<__type47>(), std::declval<__type50>())) __type51;
922 typedef decltype(std::declval<__type36>()(std::declval<__type51>())) __type52;
923 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type52>::type::iterator>::value_type>::type __type53;
924 typedef decltype(pythonic::types::make_tuple(std::declval<__type53>(), std::declval<__type40>())) __type55;
925 typedef decltype(std::declval<__type30>()[std::declval<__type55>()]) __type56;
926 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::empty{})>::type>::type __type57;
927 typedef decltype(std::declval<__type26>()(std::declval<__type51>())) __type60;
928 typedef typename pythonic::assignable<decltype(std::declval<__type57>()(std::declval<__type60>(), std::declval<__type34>()))>::type __type61;
929 typedef pythonic::types::contiguous_slice __type63;
930 typedef decltype(std::declval<__type61>()[std::declval<__type63>()]) __type64;
931 typedef typename std::remove_cv<typename std::remove_reference<argument_type3>::type>::type __type66;
932 typedef typename pythonic::assignable<decltype(pythonic::operator_::mul(std::declval<__type27>(), std::declval<__type66>()))>::type __type67;
933 typedef decltype(std::declval<__type67>()[std::declval<__type38>()]) __type69;
934 typedef typename pythonic::assignable<decltype(pythonic::operator_::mul(std::declval<__type45>(), std::declval<__type66>()))>::type __type72;
935 typedef typename pythonic::assignable<decltype(std::declval<__type23>()[std::declval<__type24>()])>::type __type73;
936 typedef typename kernel_vector::type<__type69, __type72, __type73, __type64>::__ptype16 __type74;
937 typedef container<typename std::remove_reference<__type74>::type> __type75;
938 typedef typename __combined<__type64,__type75>::type __type76;
939 typedef typename kernel_vector::type<__type69, __type72, __type73, __type76>::__ptype17 __type77;
940 typedef indexable<__type77> __type78;
941 typedef typename __combined<__type76,__type78>::type __type79;
942 typedef typename __combined<__type75,__type78>::type __type80;
943 typedef typename __combined<__type61,__type79,__type80>::type __type81;
944 typedef decltype(std::declval<__type81>()[std::declval<__type63>()]) __type82;
945 typedef typename std::remove_cv<typename std::remove_reference<argument_type5>::type>::type __type84;
946 typedef decltype(pythonic::operator_::sub(std::declval<__type27>(), std::declval<__type84>())) __type85;
947 typedef typename std::remove_cv<typename std::remove_reference<argument_type6>::type>::type __type86;
948 typedef typename pythonic::assignable<decltype(pythonic::operator_::div(std::declval<__type85>(), std::declval<__type86>()))>::type __type87;
949 typedef decltype(std::declval<__type87>()[std::declval<__type38>()]) __type89;
950 typedef typename polynomial_vector::type<__type89, __type48, __type82>::__ptype12 __type91;
951 typedef container<typename std::remove_reference<__type91>::type> __type92;
952 typedef typename __combined<__type82,__type92>::type __type93;
953 typedef typename polynomial_vector::type<__type89, __type48, __type93>::__ptype13 __type94;
954 typedef indexable<__type94> __type95;
955 typedef typename __combined<__type93,__type95>::type __type96;
956 typedef typename __combined<__type92,__type95>::type __type97;
957 typedef typename __combined<__type61,__type79,__type80,__type96,__type97>::type __type98;
958 typedef decltype(std::declval<__type98>()[std::declval<__type53>()]) __type100;
959 typedef decltype(pythonic::operator_::mul(std::declval<__type56>(), std::declval<__type100>())) __type101;
960 typedef container<typename std::remove_reference<__type101>::type> __type102;
961 typename pythonic::assignable_noescape<decltype(std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, y)))>::type p = std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, y));
962 typename pythonic::assignable<typename pythonic::assignable<decltype(std::declval<__type23>()[std::declval<__type24>()])>::type>::type kernel_func = typename pythonic::assignable<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<pythonic::types::dict<pythonic::types::str,linear>,pythonic::types::dict<pythonic::types::str,thin_plate_spline>>::type,pythonic::types::dict<pythonic::types::str,cubic>>::type,pythonic::types::dict<pythonic::types::str,quintic>>::type,pythonic::types::dict<pythonic::types::str,multiquadric>>::type,pythonic::types::dict<pythonic::types::str,inverse_multiquadric>>::type,pythonic::types::dict<pythonic::types::str,inverse_quadratic>>::type,pythonic::types::dict<pythonic::types::str,gaussian>>::type>::type{{{ pythonic::types::str("linear"), linear() }, { pythonic::types::str("thin_plate_spline"), thin_plate_spline() }, { pythonic::types::str("cubic"), cubic() }, { pythonic::types::str("quintic"), quintic() }, { pythonic::types::str("multiquadric"), multiquadric() }, { pythonic::types::str("inverse_multiquadric"), inverse_multiquadric() }, { pythonic::types::str("inverse_quadratic"), inverse_quadratic() }, { pythonic::types::str("gaussian"), gaussian() }}}[kernel];
963 typename pythonic::assignable_noescape<decltype(pythonic::operator_::mul(y, epsilon))>::type yeps = pythonic::operator_::mul(y, epsilon);
964 typename pythonic::assignable_noescape<decltype(pythonic::operator_::mul(x, epsilon))>::type xeps = pythonic::operator_::mul(x, epsilon);
965 typename pythonic::assignable_noescape<decltype(pythonic::operator_::div(pythonic::operator_::sub(x, shift), scale))>::type xhat = pythonic::operator_::div(pythonic::operator_::sub(x, shift), scale);
966 typename pythonic::assignable<typename __combined<__type43,__type42,__type102>::type>::type out = pythonic::numpy::functor::zeros{}(pythonic::builtins::pythran::functor::make_shape{}(std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, x)), std::get<1>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, coeffs))), pythonic::builtins::functor::float_{});
967 typename pythonic::assignable<typename __combined<__type61,__type79,__type80,__type96,__type97>::type>::type vec = pythonic::numpy::functor::empty{}(pythonic::builtins::pythran::functor::make_shape{}(pythonic::operator_::add(p, std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, powers)))), pythonic::builtins::functor::float_{});
968 {
969 long __target139669610056960 = std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, x));
970 for (long i=0L; i < __target139669610056960; i += 1L)
971 {
972 kernel_vector()(xeps[i], yeps, kernel_func, vec[pythonic::types::contiguous_slice(pythonic::builtins::None,p)]);
973 polynomial_vector()(xhat[i], powers, vec[pythonic::types::contiguous_slice(p,pythonic::builtins::None)]);
974 {
975 long __target139669610064096 = std::get<1>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, coeffs));
976 for (long j=0L; j < __target139669610064096; j += 1L)
977 {
978 {
979 long __target139669609555376 = pythonic::operator_::add(p, std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, powers)));
980 for (long k=0L; k < __target139669609555376; k += 1L)
981 {
982 out.fast(pythonic::types::make_tuple(i, j)) += pythonic::operator_::mul(coeffs.fast(pythonic::types::make_tuple(k, j)), vec.fast(k));
983 }
984 }
985 }
986 }
987 }
988 }
989 return out;
990 }
991 template <typename argument_type0 , typename argument_type1 , typename argument_type2 , typename argument_type3 , typename argument_type4 , typename argument_type5 >
992 typename _build_system::type<argument_type0, argument_type1, argument_type2, argument_type3, argument_type4, argument_type5>::result_type _build_system::operator()(argument_type0&& y, argument_type1&& d, argument_type2&& smoothing, argument_type3&& kernel, argument_type4&& epsilon, argument_type5&& powers) const
993 {
994 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::max{})>::type>::type __type0;
995 typedef typename std::remove_cv<typename std::remove_reference<argument_type0>::type>::type __type1;
996 typedef long __type2;
997 typedef typename pythonic::assignable<decltype(std::declval<__type0>()(std::declval<__type1>(), std::declval<__type2>()))>::type __type3;
998 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::min{})>::type>::type __type4;
999 typedef typename pythonic::assignable<decltype(std::declval<__type4>()(std::declval<__type1>(), std::declval<__type2>()))>::type __type6;
1000 typedef decltype(pythonic::operator_::sub(std::declval<__type3>(), std::declval<__type6>())) __type7;
1001 typedef typename pythonic::assignable<decltype(pythonic::operator_::div(std::declval<__type7>(), std::declval<__type2>()))>::type __type8;
1002 typedef double __type9;
1003 typedef container<typename std::remove_reference<__type9>::type> __type10;
1004 typedef typename __combined<__type8,__type10>::type __type11;
1005 typedef decltype(pythonic::operator_::eq(std::declval<__type11>(), std::declval<__type9>())) __type12;
1006 typedef indexable<__type12> __type13;
1007 typedef typename __combined<__type8,__type13>::type __type14;
1008 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::numpy::functor::empty{})>::type>::type __type15;
1009 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::pythran::functor::make_shape{})>::type>::type __type16;
1010 typedef typename std::remove_cv<typename std::remove_reference<argument_type1>::type>::type __type17;
1011 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type17>())) __type18;
1012 typedef typename pythonic::assignable<typename std::tuple_element<0,typename std::remove_reference<__type18>::type>::type>::type __type19;
1013 typedef typename std::remove_cv<typename std::remove_reference<argument_type5>::type>::type __type20;
1014 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, std::declval<__type20>())) __type21;
1015 typedef typename pythonic::assignable<typename std::tuple_element<0,typename std::remove_reference<__type21>::type>::type>::type __type22;
1016 typedef decltype(pythonic::operator_::add(std::declval<__type19>(), std::declval<__type22>())) __type23;
1017 typedef decltype(std::declval<__type16>()(std::declval<__type23>(), std::declval<__type23>())) __type27;
1018 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::float_{})>::type>::type __type28;
1019 typedef decltype(std::declval<__type15>()(std::declval<__type27>(), std::declval<__type28>())) __type29;
1020 typedef typename pythonic::assignable<decltype(pythonic::builtins::getattr(pythonic::types::attr::T{}, std::declval<__type29>()))>::type __type30;
1021 typedef typename std::remove_cv<typename std::remove_reference<decltype(pythonic::builtins::functor::range{})>::type>::type __type31;
1022 typedef decltype(std::declval<__type31>()(std::declval<__type19>())) __type33;
1023 typedef typename std::remove_cv<typename std::iterator_traits<typename std::remove_reference<__type33>::type::iterator>::value_type>::type __type34;
1024 typedef decltype(pythonic::types::make_tuple(std::declval<__type34>(), std::declval<__type34>())) __type36;
1025 typedef indexable<__type36> __type37;
1026 typedef typename __combined<__type30,__type37>::type __type38;
1027 typedef typename std::remove_cv<typename std::remove_reference<argument_type4>::type>::type __type40;
1028 typedef decltype(pythonic::operator_::mul(std::declval<__type1>(), std::declval<__type40>())) __type41;
1029 typedef pythonic::types::str __type42;
1030 typedef linear __type43;
1031 typedef pythonic::types::dict<__type42,__type43> __type44;
1032 typedef thin_plate_spline __type45;
1033 typedef pythonic::types::dict<__type42,__type45> __type46;
1034 typedef typename __combined<__type44,__type46>::type __type47;
1035 typedef cubic __type48;
1036 typedef pythonic::types::dict<__type42,__type48> __type49;
1037 typedef typename __combined<__type47,__type49>::type __type50;
1038 typedef quintic __type51;
1039 typedef pythonic::types::dict<__type42,__type51> __type52;
1040 typedef typename __combined<__type50,__type52>::type __type53;
1041 typedef multiquadric __type54;
1042 typedef pythonic::types::dict<__type42,__type54> __type55;
1043 typedef typename __combined<__type53,__type55>::type __type56;
1044 typedef inverse_multiquadric __type57;
1045 typedef pythonic::types::dict<__type42,__type57> __type58;
1046 typedef typename __combined<__type56,__type58>::type __type59;
1047 typedef inverse_quadratic __type60;
1048 typedef pythonic::types::dict<__type42,__type60> __type61;
1049 typedef typename __combined<__type59,__type61>::type __type62;
1050 typedef gaussian __type63;
1051 typedef pythonic::types::dict<__type42,__type63> __type64;
1052 typedef typename __combined<__type62,__type64>::type __type65;
1053 typedef typename std::remove_cv<typename std::remove_reference<argument_type3>::type>::type __type66;
1054 typedef decltype(std::declval<__type65>()[std::declval<__type66>()]) __type67;
1055 typedef pythonic::types::contiguous_slice __type69;
1056 typedef decltype(std::declval<__type30>()(std::declval<__type69>(), std::declval<__type69>())) __type70;
1057 typedef typename kernel_matrix::type<__type41, __type67, __type70>::__ptype4 __type71;
1058 typedef container<typename std::remove_reference<__type71>::type> __type72;
1059 typedef container<typename std::remove_reference<__type72>::type> __type73;
1060 typedef typename kernel_matrix::type<__type41, __type67, __type70>::__ptype5 __type74;
1061 typedef indexable<__type74> __type75;
1062 typedef container<typename std::remove_reference<__type75>::type> __type76;
1063 typedef decltype(pythonic::operator_::add(std::declval<__type3>(), std::declval<__type6>())) __type80;
1064 typedef typename pythonic::assignable<decltype(pythonic::operator_::div(std::declval<__type80>(), std::declval<__type2>()))>::type __type81;
1065 typedef decltype(pythonic::operator_::sub(std::declval<__type1>(), std::declval<__type81>())) __type82;
1066 typedef typename __combined<__type14,__type10,__type13>::type __type83;
1067 typedef decltype(pythonic::operator_::div(std::declval<__type82>(), std::declval<__type83>())) __type84;
1068 typedef typename __combined<__type30,__type73,__type76>::type __type86;
1069 typedef decltype(std::declval<__type86>()(std::declval<__type69>(), std::declval<__type69>())) __type87;
1070 typedef typename polynomial_matrix::type<__type84, __type20, __type87>::__ptype0 __type88;
1071 typedef container<typename std::remove_reference<__type88>::type> __type89;
1072 typedef container<typename std::remove_reference<__type89>::type> __type90;
1073 typedef typename polynomial_matrix::type<__type84, __type20, __type87>::__ptype1 __type91;
1074 typedef indexable<__type91> __type92;
1075 typedef container<typename std::remove_reference<__type92>::type> __type93;
1076 typedef typename __combined<__type30,__type73,__type76,__type90,__type93>::type __type94;
1077 typedef decltype(std::declval<__type94>()(std::declval<__type69>(), std::declval<__type69>())) __type95;
1078 typedef decltype(pythonic::builtins::getattr(pythonic::types::attr::T{}, std::declval<__type95>())) __type96;
1079 typedef container<typename std::remove_reference<__type96>::type> __type97;
1080 typedef typename std::remove_cv<typename std::remove_reference<argument_type2>::type>::type __type98;
1081 typedef decltype(std::declval<__type98>()[std::declval<__type34>()]) __type100;
1082 typedef container<typename std::remove_reference<__type100>::type> __type101;
1083 typedef typename std::tuple_element<1,typename std::remove_reference<__type18>::type>::type __type104;
1084 typedef decltype(std::declval<__type16>()(std::declval<__type104>(), std::declval<__type23>())) __type108;
1085 typedef decltype(std::declval<__type15>()(std::declval<__type108>(), std::declval<__type28>())) __type109;
1086 typedef typename pythonic::assignable<decltype(pythonic::builtins::getattr(pythonic::types::attr::T{}, std::declval<__type109>()))>::type __type110;
1087 typename pythonic::assignable_noescape<decltype(std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, d)))>::type p = std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, d));
1088 typename pythonic::assignable_noescape<decltype(std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, powers)))>::type r = std::get<0>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, powers));
1089 typename pythonic::assignable_noescape<decltype(pythonic::numpy::functor::min{}(y, 0L))>::type mins = pythonic::numpy::functor::min{}(y, 0L);
1090 typename pythonic::assignable_noescape<decltype(pythonic::numpy::functor::max{}(y, 0L))>::type maxs = pythonic::numpy::functor::max{}(y, 0L);
1091 typename pythonic::assignable_noescape<decltype(pythonic::operator_::div(pythonic::operator_::add(maxs, mins), 2L))>::type shift = pythonic::operator_::div(pythonic::operator_::add(maxs, mins), 2L);
1092 typename pythonic::assignable<typename __combined<__type14,__type10,__type13>::type>::type scale = pythonic::operator_::div(pythonic::operator_::sub(maxs, mins), 2L);
1093 scale.fast(pythonic::operator_::eq(scale, 0.0)) = 1.0;
1094 typename pythonic::assignable<typename __combined<__type38,__type73,__type76,__type90,__type93,__type97,__type10,__type37,__type101>::type>::type lhs = pythonic::builtins::getattr(pythonic::types::attr::T{}, pythonic::numpy::functor::empty{}(pythonic::builtins::pythran::functor::make_shape{}(pythonic::operator_::add(p, r), pythonic::operator_::add(p, r)), pythonic::builtins::functor::float_{}));
1095 kernel_matrix()(pythonic::operator_::mul(y, epsilon), typename pythonic::assignable<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<typename __combined<pythonic::types::dict<pythonic::types::str,linear>,pythonic::types::dict<pythonic::types::str,thin_plate_spline>>::type,pythonic::types::dict<pythonic::types::str,cubic>>::type,pythonic::types::dict<pythonic::types::str,quintic>>::type,pythonic::types::dict<pythonic::types::str,multiquadric>>::type,pythonic::types::dict<pythonic::types::str,inverse_multiquadric>>::type,pythonic::types::dict<pythonic::types::str,inverse_quadratic>>::type,pythonic::types::dict<pythonic::types::str,gaussian>>::type>::type{{{ pythonic::types::str("linear"), linear() }, { pythonic::types::str("thin_plate_spline"), thin_plate_spline() }, { pythonic::types::str("cubic"), cubic() }, { pythonic::types::str("quintic"), quintic() }, { pythonic::types::str("multiquadric"), multiquadric() }, { pythonic::types::str("inverse_multiquadric"), inverse_multiquadric() }, { pythonic::types::str("inverse_quadratic"), inverse_quadratic() }, { pythonic::types::str("gaussian"), gaussian() }}}[kernel], lhs(pythonic::types::contiguous_slice(pythonic::builtins::None,p),pythonic::types::contiguous_slice(pythonic::builtins::None,p)));
1096 polynomial_matrix()(pythonic::operator_::div(pythonic::operator_::sub(y, shift), scale), powers, lhs(pythonic::types::contiguous_slice(pythonic::builtins::None,p),pythonic::types::contiguous_slice(p,pythonic::builtins::None)));
1097 lhs(pythonic::types::contiguous_slice(p,pythonic::builtins::None),pythonic::types::contiguous_slice(pythonic::builtins::None,p)) = pythonic::builtins::getattr(pythonic::types::attr::T{}, lhs(pythonic::types::contiguous_slice(pythonic::builtins::None,p),pythonic::types::contiguous_slice(p,pythonic::builtins::None)));
1098 lhs(pythonic::types::contiguous_slice(p,pythonic::builtins::None),pythonic::types::contiguous_slice(p,pythonic::builtins::None)) = 0.0;
1099 {
1100 long __target139669610018416 = p;
1101 for (long i=0L; i < __target139669610018416; i += 1L)
1102 {
1103 lhs.fast(pythonic::types::make_tuple(i, i)) += smoothing.fast(i);
1104 }
1105 }
1106 typename pythonic::assignable<typename __combined<__type110,__type17,__type9>::type>::type rhs = pythonic::builtins::getattr(pythonic::types::attr::T{}, pythonic::numpy::functor::empty{}(pythonic::builtins::pythran::functor::make_shape{}(std::get<1>(pythonic::builtins::getattr(pythonic::types::attr::SHAPE{}, d)), pythonic::operator_::add(p, r)), pythonic::builtins::functor::float_{}));
1107 rhs[pythonic::types::contiguous_slice(pythonic::builtins::None,p)] = d;
1108 rhs[pythonic::types::contiguous_slice(p,pythonic::builtins::None)] = 0.0;
1109 return pythonic::types::make_tuple(lhs, rhs, shift, scale);
1110 }
1111}
1112#include <pythonic/python/exception_handler.hpp>
1113#ifdef ENABLE_PYTHON_MODULE1
1114typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>::result_type _evaluate0(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& coeffs)
1115{
1116
1117 PyThreadState *_save = PyEval_SaveThread();
1118 try {
1119 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1120 PyEval_RestoreThread(_save);
1121 return res;
1122 }
1123 catch(...) {
1124 PyEval_RestoreThread(_save);
1125 throw;
1126 }
1127 ;
1128}
1129typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>::result_type _evaluate1(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& coeffs)
1130{
1131
1132 PyThreadState *_save = PyEval_SaveThread();
1133 try {
1134 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1135 PyEval_RestoreThread(_save);
1136 return res;
1137 }
1138 catch(...) {
1139 PyEval_RestoreThread(_save);
1140 throw;
1141 }
1142 ;
1143}
1144typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>::result_type _evaluate2(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& coeffs)
1145{
1146
1147 PyThreadState *_save = PyEval_SaveThread();
1148 try {
1149 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1150 PyEval_RestoreThread(_save);
1151 return res;
1152 }
1153 catch(...) {
1154 PyEval_RestoreThread(_save);
1155 throw;
1156 }
1157 ;
1158}
1159typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>::result_type _evaluate3(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& coeffs)
1160{
1161
1162 PyThreadState *_save = PyEval_SaveThread();
1163 try {
1164 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1165 PyEval_RestoreThread(_save);
1166 return res;
1167 }
1168 catch(...) {
1169 PyEval_RestoreThread(_save);
1170 throw;
1171 }
1172 ;
1173}
1174typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>::result_type _evaluate4(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& coeffs)
1175{
1176
1177 PyThreadState *_save = PyEval_SaveThread();
1178 try {
1179 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1180 PyEval_RestoreThread(_save);
1181 return res;
1182 }
1183 catch(...) {
1184 PyEval_RestoreThread(_save);
1185 throw;
1186 }
1187 ;
1188}
1189typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>::result_type _evaluate5(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& coeffs)
1190{
1191
1192 PyThreadState *_save = PyEval_SaveThread();
1193 try {
1194 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1195 PyEval_RestoreThread(_save);
1196 return res;
1197 }
1198 catch(...) {
1199 PyEval_RestoreThread(_save);
1200 throw;
1201 }
1202 ;
1203}
1204typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>::result_type _evaluate6(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& coeffs)
1205{
1206
1207 PyThreadState *_save = PyEval_SaveThread();
1208 try {
1209 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1210 PyEval_RestoreThread(_save);
1211 return res;
1212 }
1213 catch(...) {
1214 PyEval_RestoreThread(_save);
1215 throw;
1216 }
1217 ;
1218}
1219typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>::result_type _evaluate7(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& coeffs)
1220{
1221
1222 PyThreadState *_save = PyEval_SaveThread();
1223 try {
1224 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1225 PyEval_RestoreThread(_save);
1226 return res;
1227 }
1228 catch(...) {
1229 PyEval_RestoreThread(_save);
1230 throw;
1231 }
1232 ;
1233}
1234typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>::result_type _evaluate8(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& coeffs)
1235{
1236
1237 PyThreadState *_save = PyEval_SaveThread();
1238 try {
1239 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1240 PyEval_RestoreThread(_save);
1241 return res;
1242 }
1243 catch(...) {
1244 PyEval_RestoreThread(_save);
1245 throw;
1246 }
1247 ;
1248}
1249typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>::result_type _evaluate9(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& coeffs)
1250{
1251
1252 PyThreadState *_save = PyEval_SaveThread();
1253 try {
1254 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1255 PyEval_RestoreThread(_save);
1256 return res;
1257 }
1258 catch(...) {
1259 PyEval_RestoreThread(_save);
1260 throw;
1261 }
1262 ;
1263}
1264typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>::result_type _evaluate10(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& coeffs)
1265{
1266
1267 PyThreadState *_save = PyEval_SaveThread();
1268 try {
1269 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1270 PyEval_RestoreThread(_save);
1271 return res;
1272 }
1273 catch(...) {
1274 PyEval_RestoreThread(_save);
1275 throw;
1276 }
1277 ;
1278}
1279typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>::result_type _evaluate11(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& coeffs)
1280{
1281
1282 PyThreadState *_save = PyEval_SaveThread();
1283 try {
1284 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1285 PyEval_RestoreThread(_save);
1286 return res;
1287 }
1288 catch(...) {
1289 PyEval_RestoreThread(_save);
1290 throw;
1291 }
1292 ;
1293}
1294typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>::result_type _evaluate12(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& coeffs)
1295{
1296
1297 PyThreadState *_save = PyEval_SaveThread();
1298 try {
1299 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1300 PyEval_RestoreThread(_save);
1301 return res;
1302 }
1303 catch(...) {
1304 PyEval_RestoreThread(_save);
1305 throw;
1306 }
1307 ;
1308}
1309typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>::result_type _evaluate13(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& coeffs)
1310{
1311
1312 PyThreadState *_save = PyEval_SaveThread();
1313 try {
1314 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1315 PyEval_RestoreThread(_save);
1316 return res;
1317 }
1318 catch(...) {
1319 PyEval_RestoreThread(_save);
1320 throw;
1321 }
1322 ;
1323}
1324typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>::result_type _evaluate14(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& coeffs)
1325{
1326
1327 PyThreadState *_save = PyEval_SaveThread();
1328 try {
1329 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1330 PyEval_RestoreThread(_save);
1331 return res;
1332 }
1333 catch(...) {
1334 PyEval_RestoreThread(_save);
1335 throw;
1336 }
1337 ;
1338}
1339typename __pythran__rbfinterp_pythran::_evaluate::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>::result_type _evaluate15(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& shift, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& scale, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& coeffs)
1340{
1341
1342 PyThreadState *_save = PyEval_SaveThread();
1343 try {
1344 auto res = __pythran__rbfinterp_pythran::_evaluate()(x, y, kernel, epsilon, powers, shift, scale, coeffs);
1345 PyEval_RestoreThread(_save);
1346 return res;
1347 }
1348 catch(...) {
1349 PyEval_RestoreThread(_save);
1350 throw;
1351 }
1352 ;
1353}
1354typename __pythran__rbfinterp_pythran::_build_system::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>::result_type _build_system0(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& d, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& smoothing, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers)
1355{
1356
1357 PyThreadState *_save = PyEval_SaveThread();
1358 try {
1359 auto res = __pythran__rbfinterp_pythran::_build_system()(y, d, smoothing, kernel, epsilon, powers);
1360 PyEval_RestoreThread(_save);
1361 return res;
1362 }
1363 catch(...) {
1364 PyEval_RestoreThread(_save);
1365 throw;
1366 }
1367 ;
1368}
1369typename __pythran__rbfinterp_pythran::_build_system::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>::result_type _build_system1(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& d, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& smoothing, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers)
1370{
1371
1372 PyThreadState *_save = PyEval_SaveThread();
1373 try {
1374 auto res = __pythran__rbfinterp_pythran::_build_system()(y, d, smoothing, kernel, epsilon, powers);
1375 PyEval_RestoreThread(_save);
1376 return res;
1377 }
1378 catch(...) {
1379 PyEval_RestoreThread(_save);
1380 throw;
1381 }
1382 ;
1383}
1384typename __pythran__rbfinterp_pythran::_build_system::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>::result_type _build_system2(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& d, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& smoothing, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers)
1385{
1386
1387 PyThreadState *_save = PyEval_SaveThread();
1388 try {
1389 auto res = __pythran__rbfinterp_pythran::_build_system()(y, d, smoothing, kernel, epsilon, powers);
1390 PyEval_RestoreThread(_save);
1391 return res;
1392 }
1393 catch(...) {
1394 PyEval_RestoreThread(_save);
1395 throw;
1396 }
1397 ;
1398}
1399typename __pythran__rbfinterp_pythran::_build_system::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>::result_type _build_system3(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& y, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& d, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& smoothing, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers)
1400{
1401
1402 PyThreadState *_save = PyEval_SaveThread();
1403 try {
1404 auto res = __pythran__rbfinterp_pythran::_build_system()(y, d, smoothing, kernel, epsilon, powers);
1405 PyEval_RestoreThread(_save);
1406 return res;
1407 }
1408 catch(...) {
1409 PyEval_RestoreThread(_save);
1410 throw;
1411 }
1412 ;
1413}
1414typename __pythran__rbfinterp_pythran::_build_system::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>::result_type _build_system4(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& d, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& smoothing, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers)
1415{
1416
1417 PyThreadState *_save = PyEval_SaveThread();
1418 try {
1419 auto res = __pythran__rbfinterp_pythran::_build_system()(y, d, smoothing, kernel, epsilon, powers);
1420 PyEval_RestoreThread(_save);
1421 return res;
1422 }
1423 catch(...) {
1424 PyEval_RestoreThread(_save);
1425 throw;
1426 }
1427 ;
1428}
1429typename __pythran__rbfinterp_pythran::_build_system::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>::result_type _build_system5(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& d, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& smoothing, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers)
1430{
1431
1432 PyThreadState *_save = PyEval_SaveThread();
1433 try {
1434 auto res = __pythran__rbfinterp_pythran::_build_system()(y, d, smoothing, kernel, epsilon, powers);
1435 PyEval_RestoreThread(_save);
1436 return res;
1437 }
1438 catch(...) {
1439 PyEval_RestoreThread(_save);
1440 throw;
1441 }
1442 ;
1443}
1444typename __pythran__rbfinterp_pythran::_build_system::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::str, double, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>::result_type _build_system6(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& d, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& smoothing, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers)
1445{
1446
1447 PyThreadState *_save = PyEval_SaveThread();
1448 try {
1449 auto res = __pythran__rbfinterp_pythran::_build_system()(y, d, smoothing, kernel, epsilon, powers);
1450 PyEval_RestoreThread(_save);
1451 return res;
1452 }
1453 catch(...) {
1454 PyEval_RestoreThread(_save);
1455 throw;
1456 }
1457 ;
1458}
1459typename __pythran__rbfinterp_pythran::_build_system::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<double,pythonic::types::pshape<long>>, pythonic::types::str, double, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>::result_type _build_system7(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& y, pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& d, pythonic::types::ndarray<double,pythonic::types::pshape<long>>&& smoothing, pythonic::types::str&& kernel, double&& epsilon, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers)
1460{
1461
1462 PyThreadState *_save = PyEval_SaveThread();
1463 try {
1464 auto res = __pythran__rbfinterp_pythran::_build_system()(y, d, smoothing, kernel, epsilon, powers);
1465 PyEval_RestoreThread(_save);
1466 return res;
1467 }
1468 catch(...) {
1469 PyEval_RestoreThread(_save);
1470 throw;
1471 }
1472 ;
1473}
1474typename __pythran__rbfinterp_pythran::_polynomial_matrix::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>::result_type _polynomial_matrix0(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers)
1475{
1476
1477 PyThreadState *_save = PyEval_SaveThread();
1478 try {
1479 auto res = __pythran__rbfinterp_pythran::_polynomial_matrix()(x, powers);
1480 PyEval_RestoreThread(_save);
1481 return res;
1482 }
1483 catch(...) {
1484 PyEval_RestoreThread(_save);
1485 throw;
1486 }
1487 ;
1488}
1489typename __pythran__rbfinterp_pythran::_polynomial_matrix::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>::result_type _polynomial_matrix1(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers)
1490{
1491
1492 PyThreadState *_save = PyEval_SaveThread();
1493 try {
1494 auto res = __pythran__rbfinterp_pythran::_polynomial_matrix()(x, powers);
1495 PyEval_RestoreThread(_save);
1496 return res;
1497 }
1498 catch(...) {
1499 PyEval_RestoreThread(_save);
1500 throw;
1501 }
1502 ;
1503}
1504typename __pythran__rbfinterp_pythran::_polynomial_matrix::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>::result_type _polynomial_matrix2(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>&& powers)
1505{
1506
1507 PyThreadState *_save = PyEval_SaveThread();
1508 try {
1509 auto res = __pythran__rbfinterp_pythran::_polynomial_matrix()(x, powers);
1510 PyEval_RestoreThread(_save);
1511 return res;
1512 }
1513 catch(...) {
1514 PyEval_RestoreThread(_save);
1515 throw;
1516 }
1517 ;
1518}
1519typename __pythran__rbfinterp_pythran::_polynomial_matrix::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>::result_type _polynomial_matrix3(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>&& powers)
1520{
1521
1522 PyThreadState *_save = PyEval_SaveThread();
1523 try {
1524 auto res = __pythran__rbfinterp_pythran::_polynomial_matrix()(x, powers);
1525 PyEval_RestoreThread(_save);
1526 return res;
1527 }
1528 catch(...) {
1529 PyEval_RestoreThread(_save);
1530 throw;
1531 }
1532 ;
1533}
1534typename __pythran__rbfinterp_pythran::_kernel_matrix::type<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>, pythonic::types::str>::result_type _kernel_matrix0(pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>&& x, pythonic::types::str&& kernel)
1535{
1536
1537 PyThreadState *_save = PyEval_SaveThread();
1538 try {
1539 auto res = __pythran__rbfinterp_pythran::_kernel_matrix()(x, kernel);
1540 PyEval_RestoreThread(_save);
1541 return res;
1542 }
1543 catch(...) {
1544 PyEval_RestoreThread(_save);
1545 throw;
1546 }
1547 ;
1548}
1549typename __pythran__rbfinterp_pythran::_kernel_matrix::type<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>, pythonic::types::str>::result_type _kernel_matrix1(pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>&& x, pythonic::types::str&& kernel)
1550{
1551
1552 PyThreadState *_save = PyEval_SaveThread();
1553 try {
1554 auto res = __pythran__rbfinterp_pythran::_kernel_matrix()(x, kernel);
1555 PyEval_RestoreThread(_save);
1556 return res;
1557 }
1558 catch(...) {
1559 PyEval_RestoreThread(_save);
1560 throw;
1561 }
1562 ;
1563}
1564
1565static PyObject *
1566__pythran_wrap__evaluate0(PyObject *self, PyObject *args, PyObject *kw)
1567{
1568 PyObject* args_obj[8+1];
1569
1570 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1571 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1572 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1573 return nullptr;
1574 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7]))
1575 return to_python(_evaluate0(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7])));
1576 else {
1577 return nullptr;
1578 }
1579}
1580
1581static PyObject *
1582__pythran_wrap__evaluate1(PyObject *self, PyObject *args, PyObject *kw)
1583{
1584 PyObject* args_obj[8+1];
1585
1586 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1587 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1588 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1589 return nullptr;
1590 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7]))
1591 return to_python(_evaluate1(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7])));
1592 else {
1593 return nullptr;
1594 }
1595}
1596
1597static PyObject *
1598__pythran_wrap__evaluate2(PyObject *self, PyObject *args, PyObject *kw)
1599{
1600 PyObject* args_obj[8+1];
1601
1602 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1603 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1604 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1605 return nullptr;
1606 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7]))
1607 return to_python(_evaluate2(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7])));
1608 else {
1609 return nullptr;
1610 }
1611}
1612
1613static PyObject *
1614__pythran_wrap__evaluate3(PyObject *self, PyObject *args, PyObject *kw)
1615{
1616 PyObject* args_obj[8+1];
1617
1618 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1619 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1620 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1621 return nullptr;
1622 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7]))
1623 return to_python(_evaluate3(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7])));
1624 else {
1625 return nullptr;
1626 }
1627}
1628
1629static PyObject *
1630__pythran_wrap__evaluate4(PyObject *self, PyObject *args, PyObject *kw)
1631{
1632 PyObject* args_obj[8+1];
1633
1634 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1635 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1636 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1637 return nullptr;
1638 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7]))
1639 return to_python(_evaluate4(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7])));
1640 else {
1641 return nullptr;
1642 }
1643}
1644
1645static PyObject *
1646__pythran_wrap__evaluate5(PyObject *self, PyObject *args, PyObject *kw)
1647{
1648 PyObject* args_obj[8+1];
1649
1650 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1651 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1652 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1653 return nullptr;
1654 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7]))
1655 return to_python(_evaluate5(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7])));
1656 else {
1657 return nullptr;
1658 }
1659}
1660
1661static PyObject *
1662__pythran_wrap__evaluate6(PyObject *self, PyObject *args, PyObject *kw)
1663{
1664 PyObject* args_obj[8+1];
1665
1666 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1667 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1668 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1669 return nullptr;
1670 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7]))
1671 return to_python(_evaluate6(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7])));
1672 else {
1673 return nullptr;
1674 }
1675}
1676
1677static PyObject *
1678__pythran_wrap__evaluate7(PyObject *self, PyObject *args, PyObject *kw)
1679{
1680 PyObject* args_obj[8+1];
1681
1682 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1683 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1684 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1685 return nullptr;
1686 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7]))
1687 return to_python(_evaluate7(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7])));
1688 else {
1689 return nullptr;
1690 }
1691}
1692
1693static PyObject *
1694__pythran_wrap__evaluate8(PyObject *self, PyObject *args, PyObject *kw)
1695{
1696 PyObject* args_obj[8+1];
1697
1698 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1699 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1700 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1701 return nullptr;
1702 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7]))
1703 return to_python(_evaluate8(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7])));
1704 else {
1705 return nullptr;
1706 }
1707}
1708
1709static PyObject *
1710__pythran_wrap__evaluate9(PyObject *self, PyObject *args, PyObject *kw)
1711{
1712 PyObject* args_obj[8+1];
1713
1714 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1715 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1716 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1717 return nullptr;
1718 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7]))
1719 return to_python(_evaluate9(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7])));
1720 else {
1721 return nullptr;
1722 }
1723}
1724
1725static PyObject *
1726__pythran_wrap__evaluate10(PyObject *self, PyObject *args, PyObject *kw)
1727{
1728 PyObject* args_obj[8+1];
1729
1730 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1731 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1732 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1733 return nullptr;
1734 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7]))
1735 return to_python(_evaluate10(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7])));
1736 else {
1737 return nullptr;
1738 }
1739}
1740
1741static PyObject *
1742__pythran_wrap__evaluate11(PyObject *self, PyObject *args, PyObject *kw)
1743{
1744 PyObject* args_obj[8+1];
1745
1746 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1747 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1748 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1749 return nullptr;
1750 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7]))
1751 return to_python(_evaluate11(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7])));
1752 else {
1753 return nullptr;
1754 }
1755}
1756
1757static PyObject *
1758__pythran_wrap__evaluate12(PyObject *self, PyObject *args, PyObject *kw)
1759{
1760 PyObject* args_obj[8+1];
1761
1762 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1763 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1764 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1765 return nullptr;
1766 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7]))
1767 return to_python(_evaluate12(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7])));
1768 else {
1769 return nullptr;
1770 }
1771}
1772
1773static PyObject *
1774__pythran_wrap__evaluate13(PyObject *self, PyObject *args, PyObject *kw)
1775{
1776 PyObject* args_obj[8+1];
1777
1778 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1779 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1780 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1781 return nullptr;
1782 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7]))
1783 return to_python(_evaluate13(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7])));
1784 else {
1785 return nullptr;
1786 }
1787}
1788
1789static PyObject *
1790__pythran_wrap__evaluate14(PyObject *self, PyObject *args, PyObject *kw)
1791{
1792 PyObject* args_obj[8+1];
1793
1794 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1795 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1796 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1797 return nullptr;
1798 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7]))
1799 return to_python(_evaluate14(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[7])));
1800 else {
1801 return nullptr;
1802 }
1803}
1804
1805static PyObject *
1806__pythran_wrap__evaluate15(PyObject *self, PyObject *args, PyObject *kw)
1807{
1808 PyObject* args_obj[8+1];
1809
1810 char const* keywords[] = {"x", "y", "kernel", "epsilon", "powers", "shift", "scale", "coeffs", nullptr};
1811 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOOOO",
1812 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5], &args_obj[6], &args_obj[7]))
1813 return nullptr;
1814 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::str>(args_obj[2]) && is_convertible<double>(args_obj[3]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7]))
1815 return to_python(_evaluate15(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::str>(args_obj[2]), from_python<double>(args_obj[3]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[4]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[5]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[6]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[7])));
1816 else {
1817 return nullptr;
1818 }
1819}
1820
1821static PyObject *
1822__pythran_wrap__build_system0(PyObject *self, PyObject *args, PyObject *kw)
1823{
1824 PyObject* args_obj[6+1];
1825
1826 char const* keywords[] = {"y", "d", "smoothing", "kernel", "epsilon", "powers", nullptr};
1827 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOO",
1828 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5]))
1829 return nullptr;
1830 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]) && is_convertible<pythonic::types::str>(args_obj[3]) && is_convertible<double>(args_obj[4]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[5]))
1831 return to_python(_build_system0(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]), from_python<pythonic::types::str>(args_obj[3]), from_python<double>(args_obj[4]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[5])));
1832 else {
1833 return nullptr;
1834 }
1835}
1836
1837static PyObject *
1838__pythran_wrap__build_system1(PyObject *self, PyObject *args, PyObject *kw)
1839{
1840 PyObject* args_obj[6+1];
1841
1842 char const* keywords[] = {"y", "d", "smoothing", "kernel", "epsilon", "powers", nullptr};
1843 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOO",
1844 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5]))
1845 return nullptr;
1846 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]) && is_convertible<pythonic::types::str>(args_obj[3]) && is_convertible<double>(args_obj[4]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[5]))
1847 return to_python(_build_system1(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]), from_python<pythonic::types::str>(args_obj[3]), from_python<double>(args_obj[4]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[5])));
1848 else {
1849 return nullptr;
1850 }
1851}
1852
1853static PyObject *
1854__pythran_wrap__build_system2(PyObject *self, PyObject *args, PyObject *kw)
1855{
1856 PyObject* args_obj[6+1];
1857
1858 char const* keywords[] = {"y", "d", "smoothing", "kernel", "epsilon", "powers", nullptr};
1859 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOO",
1860 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5]))
1861 return nullptr;
1862 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]) && is_convertible<pythonic::types::str>(args_obj[3]) && is_convertible<double>(args_obj[4]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[5]))
1863 return to_python(_build_system2(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]), from_python<pythonic::types::str>(args_obj[3]), from_python<double>(args_obj[4]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[5])));
1864 else {
1865 return nullptr;
1866 }
1867}
1868
1869static PyObject *
1870__pythran_wrap__build_system3(PyObject *self, PyObject *args, PyObject *kw)
1871{
1872 PyObject* args_obj[6+1];
1873
1874 char const* keywords[] = {"y", "d", "smoothing", "kernel", "epsilon", "powers", nullptr};
1875 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOO",
1876 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5]))
1877 return nullptr;
1878 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]) && is_convertible<pythonic::types::str>(args_obj[3]) && is_convertible<double>(args_obj[4]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[5]))
1879 return to_python(_build_system3(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]), from_python<pythonic::types::str>(args_obj[3]), from_python<double>(args_obj[4]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[5])));
1880 else {
1881 return nullptr;
1882 }
1883}
1884
1885static PyObject *
1886__pythran_wrap__build_system4(PyObject *self, PyObject *args, PyObject *kw)
1887{
1888 PyObject* args_obj[6+1];
1889
1890 char const* keywords[] = {"y", "d", "smoothing", "kernel", "epsilon", "powers", nullptr};
1891 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOO",
1892 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5]))
1893 return nullptr;
1894 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]) && is_convertible<pythonic::types::str>(args_obj[3]) && is_convertible<double>(args_obj[4]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[5]))
1895 return to_python(_build_system4(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]), from_python<pythonic::types::str>(args_obj[3]), from_python<double>(args_obj[4]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[5])));
1896 else {
1897 return nullptr;
1898 }
1899}
1900
1901static PyObject *
1902__pythran_wrap__build_system5(PyObject *self, PyObject *args, PyObject *kw)
1903{
1904 PyObject* args_obj[6+1];
1905
1906 char const* keywords[] = {"y", "d", "smoothing", "kernel", "epsilon", "powers", nullptr};
1907 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOO",
1908 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5]))
1909 return nullptr;
1910 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]) && is_convertible<pythonic::types::str>(args_obj[3]) && is_convertible<double>(args_obj[4]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[5]))
1911 return to_python(_build_system5(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[1]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]), from_python<pythonic::types::str>(args_obj[3]), from_python<double>(args_obj[4]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[5])));
1912 else {
1913 return nullptr;
1914 }
1915}
1916
1917static PyObject *
1918__pythran_wrap__build_system6(PyObject *self, PyObject *args, PyObject *kw)
1919{
1920 PyObject* args_obj[6+1];
1921
1922 char const* keywords[] = {"y", "d", "smoothing", "kernel", "epsilon", "powers", nullptr};
1923 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOO",
1924 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5]))
1925 return nullptr;
1926 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]) && is_convertible<pythonic::types::str>(args_obj[3]) && is_convertible<double>(args_obj[4]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[5]))
1927 return to_python(_build_system6(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]), from_python<pythonic::types::str>(args_obj[3]), from_python<double>(args_obj[4]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[5])));
1928 else {
1929 return nullptr;
1930 }
1931}
1932
1933static PyObject *
1934__pythran_wrap__build_system7(PyObject *self, PyObject *args, PyObject *kw)
1935{
1936 PyObject* args_obj[6+1];
1937
1938 char const* keywords[] = {"y", "d", "smoothing", "kernel", "epsilon", "powers", nullptr};
1939 if(! PyArg_ParseTupleAndKeywords(args, kw, "OOOOOO",
1940 (char**)keywords , &args_obj[0], &args_obj[1], &args_obj[2], &args_obj[3], &args_obj[4], &args_obj[5]))
1941 return nullptr;
1942 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]) && is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]) && is_convertible<pythonic::types::str>(args_obj[3]) && is_convertible<double>(args_obj[4]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[5]))
1943 return to_python(_build_system7(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[1]), from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long>>>(args_obj[2]), from_python<pythonic::types::str>(args_obj[3]), from_python<double>(args_obj[4]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[5])));
1944 else {
1945 return nullptr;
1946 }
1947}
1948
1949static PyObject *
1950__pythran_wrap__polynomial_matrix0(PyObject *self, PyObject *args, PyObject *kw)
1951{
1952 PyObject* args_obj[2+1];
1953
1954 char const* keywords[] = {"x", "powers", nullptr};
1955 if(! PyArg_ParseTupleAndKeywords(args, kw, "OO",
1956 (char**)keywords , &args_obj[0], &args_obj[1]))
1957 return nullptr;
1958 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[1]))
1959 return to_python(_polynomial_matrix0(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[1])));
1960 else {
1961 return nullptr;
1962 }
1963}
1964
1965static PyObject *
1966__pythran_wrap__polynomial_matrix1(PyObject *self, PyObject *args, PyObject *kw)
1967{
1968 PyObject* args_obj[2+1];
1969
1970 char const* keywords[] = {"x", "powers", nullptr};
1971 if(! PyArg_ParseTupleAndKeywords(args, kw, "OO",
1972 (char**)keywords , &args_obj[0], &args_obj[1]))
1973 return nullptr;
1974 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[1]))
1975 return to_python(_polynomial_matrix1(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[1])));
1976 else {
1977 return nullptr;
1978 }
1979}
1980
1981static PyObject *
1982__pythran_wrap__polynomial_matrix2(PyObject *self, PyObject *args, PyObject *kw)
1983{
1984 PyObject* args_obj[2+1];
1985
1986 char const* keywords[] = {"x", "powers", nullptr};
1987 if(! PyArg_ParseTupleAndKeywords(args, kw, "OO",
1988 (char**)keywords , &args_obj[0], &args_obj[1]))
1989 return nullptr;
1990 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[1]))
1991 return to_python(_polynomial_matrix2(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>(args_obj[1])));
1992 else {
1993 return nullptr;
1994 }
1995}
1996
1997static PyObject *
1998__pythran_wrap__polynomial_matrix3(PyObject *self, PyObject *args, PyObject *kw)
1999{
2000 PyObject* args_obj[2+1];
2001
2002 char const* keywords[] = {"x", "powers", nullptr};
2003 if(! PyArg_ParseTupleAndKeywords(args, kw, "OO",
2004 (char**)keywords , &args_obj[0], &args_obj[1]))
2005 return nullptr;
2006 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[1]))
2007 return to_python(_polynomial_matrix3(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<long,pythonic::types::pshape<long,long>>>>(args_obj[1])));
2008 else {
2009 return nullptr;
2010 }
2011}
2012
2013static PyObject *
2014__pythran_wrap__kernel_matrix0(PyObject *self, PyObject *args, PyObject *kw)
2015{
2016 PyObject* args_obj[2+1];
2017
2018 char const* keywords[] = {"x", "kernel", nullptr};
2019 if(! PyArg_ParseTupleAndKeywords(args, kw, "OO",
2020 (char**)keywords , &args_obj[0], &args_obj[1]))
2021 return nullptr;
2022 if(is_convertible<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]) && is_convertible<pythonic::types::str>(args_obj[1]))
2023 return to_python(_kernel_matrix0(from_python<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>(args_obj[0]), from_python<pythonic::types::str>(args_obj[1])));
2024 else {
2025 return nullptr;
2026 }
2027}
2028
2029static PyObject *
2030__pythran_wrap__kernel_matrix1(PyObject *self, PyObject *args, PyObject *kw)
2031{
2032 PyObject* args_obj[2+1];
2033
2034 char const* keywords[] = {"x", "kernel", nullptr};
2035 if(! PyArg_ParseTupleAndKeywords(args, kw, "OO",
2036 (char**)keywords , &args_obj[0], &args_obj[1]))
2037 return nullptr;
2038 if(is_convertible<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]) && is_convertible<pythonic::types::str>(args_obj[1]))
2039 return to_python(_kernel_matrix1(from_python<pythonic::types::numpy_texpr<pythonic::types::ndarray<double,pythonic::types::pshape<long,long>>>>(args_obj[0]), from_python<pythonic::types::str>(args_obj[1])));
2040 else {
2041 return nullptr;
2042 }
2043}
2044
2045 static PyObject *
2046 __pythran_wrapall__evaluate(PyObject *self, PyObject *args, PyObject *kw)
2047 {
2048 return pythonic::handle_python_exception([self, args, kw]()
2049 -> PyObject* {
2050
2051if(PyObject* obj = __pythran_wrap__evaluate0(self, args, kw))
2052 return obj;
2053PyErr_Clear();
2054
2055
2056if(PyObject* obj = __pythran_wrap__evaluate1(self, args, kw))
2057 return obj;
2058PyErr_Clear();
2059
2060
2061if(PyObject* obj = __pythran_wrap__evaluate2(self, args, kw))
2062 return obj;
2063PyErr_Clear();
2064
2065
2066if(PyObject* obj = __pythran_wrap__evaluate3(self, args, kw))
2067 return obj;
2068PyErr_Clear();
2069
2070
2071if(PyObject* obj = __pythran_wrap__evaluate4(self, args, kw))
2072 return obj;
2073PyErr_Clear();
2074
2075
2076if(PyObject* obj = __pythran_wrap__evaluate5(self, args, kw))
2077 return obj;
2078PyErr_Clear();
2079
2080
2081if(PyObject* obj = __pythran_wrap__evaluate6(self, args, kw))
2082 return obj;
2083PyErr_Clear();
2084
2085
2086if(PyObject* obj = __pythran_wrap__evaluate7(self, args, kw))
2087 return obj;
2088PyErr_Clear();
2089
2090
2091if(PyObject* obj = __pythran_wrap__evaluate8(self, args, kw))
2092 return obj;
2093PyErr_Clear();
2094
2095
2096if(PyObject* obj = __pythran_wrap__evaluate9(self, args, kw))
2097 return obj;
2098PyErr_Clear();
2099
2100
2101if(PyObject* obj = __pythran_wrap__evaluate10(self, args, kw))
2102 return obj;
2103PyErr_Clear();
2104
2105
2106if(PyObject* obj = __pythran_wrap__evaluate11(self, args, kw))
2107 return obj;
2108PyErr_Clear();
2109
2110
2111if(PyObject* obj = __pythran_wrap__evaluate12(self, args, kw))
2112 return obj;
2113PyErr_Clear();
2114
2115
2116if(PyObject* obj = __pythran_wrap__evaluate13(self, args, kw))
2117 return obj;
2118PyErr_Clear();
2119
2120
2121if(PyObject* obj = __pythran_wrap__evaluate14(self, args, kw))
2122 return obj;
2123PyErr_Clear();
2124
2125
2126if(PyObject* obj = __pythran_wrap__evaluate15(self, args, kw))
2127 return obj;
2128PyErr_Clear();
2129
2130 return pythonic::python::raise_invalid_argument(
2131 "_evaluate", "\n"" - _evaluate(float[:,:], float[:,:], str, float, int[:,:], float[:], float[:], float[:,:])", args, kw);
2132 });
2133 }
2134
2135
2136 static PyObject *
2137 __pythran_wrapall__build_system(PyObject *self, PyObject *args, PyObject *kw)
2138 {
2139 return pythonic::handle_python_exception([self, args, kw]()
2140 -> PyObject* {
2141
2142if(PyObject* obj = __pythran_wrap__build_system0(self, args, kw))
2143 return obj;
2144PyErr_Clear();
2145
2146
2147if(PyObject* obj = __pythran_wrap__build_system1(self, args, kw))
2148 return obj;
2149PyErr_Clear();
2150
2151
2152if(PyObject* obj = __pythran_wrap__build_system2(self, args, kw))
2153 return obj;
2154PyErr_Clear();
2155
2156
2157if(PyObject* obj = __pythran_wrap__build_system3(self, args, kw))
2158 return obj;
2159PyErr_Clear();
2160
2161
2162if(PyObject* obj = __pythran_wrap__build_system4(self, args, kw))
2163 return obj;
2164PyErr_Clear();
2165
2166
2167if(PyObject* obj = __pythran_wrap__build_system5(self, args, kw))
2168 return obj;
2169PyErr_Clear();
2170
2171
2172if(PyObject* obj = __pythran_wrap__build_system6(self, args, kw))
2173 return obj;
2174PyErr_Clear();
2175
2176
2177if(PyObject* obj = __pythran_wrap__build_system7(self, args, kw))
2178 return obj;
2179PyErr_Clear();
2180
2181 return pythonic::python::raise_invalid_argument(
2182 "_build_system", "\n"" - _build_system(float[:,:], float[:,:], float[:], str, float, int[:,:])", args, kw);
2183 });
2184 }
2185
2186
2187 static PyObject *
2188 __pythran_wrapall__polynomial_matrix(PyObject *self, PyObject *args, PyObject *kw)
2189 {
2190 return pythonic::handle_python_exception([self, args, kw]()
2191 -> PyObject* {
2192
2193if(PyObject* obj = __pythran_wrap__polynomial_matrix0(self, args, kw))
2194 return obj;
2195PyErr_Clear();
2196
2197
2198if(PyObject* obj = __pythran_wrap__polynomial_matrix1(self, args, kw))
2199 return obj;
2200PyErr_Clear();
2201
2202
2203if(PyObject* obj = __pythran_wrap__polynomial_matrix2(self, args, kw))
2204 return obj;
2205PyErr_Clear();
2206
2207
2208if(PyObject* obj = __pythran_wrap__polynomial_matrix3(self, args, kw))
2209 return obj;
2210PyErr_Clear();
2211
2212 return pythonic::python::raise_invalid_argument(
2213 "_polynomial_matrix", "\n"" - _polynomial_matrix(float[:,:], int[:,:])", args, kw);
2214 });
2215 }
2216
2217
2218 static PyObject *
2219 __pythran_wrapall__kernel_matrix(PyObject *self, PyObject *args, PyObject *kw)
2220 {
2221 return pythonic::handle_python_exception([self, args, kw]()
2222 -> PyObject* {
2223
2224if(PyObject* obj = __pythran_wrap__kernel_matrix0(self, args, kw))
2225 return obj;
2226PyErr_Clear();
2227
2228
2229if(PyObject* obj = __pythran_wrap__kernel_matrix1(self, args, kw))
2230 return obj;
2231PyErr_Clear();
2232
2233 return pythonic::python::raise_invalid_argument(
2234 "_kernel_matrix", "\n"" - _kernel_matrix(float[:,:], str)", args, kw);
2235 });
2236 }
2237
2238
2239static PyMethodDef Methods[] = {
2240 {
2241 "_evaluate",
2242 (PyCFunction)__pythran_wrapall__evaluate,
2243 METH_VARARGS0x0001 | METH_KEYWORDS0x0002,
2244 "Evaluate the RBF interpolant at `x`.\n""\n"" Supported prototypes:\n""\n"" - _evaluate(float[:,:], float[:,:], str, float, int[:,:], float[:], float[:], float[:,:])\n""\n"" Parameters\n"" ----------\n"" x : (Q, N) float ndarray\n"" Evaluation point coordinates.\n"" y : (P, N) float ndarray\n"" Data point coordinates.\n"" kernel : str\n"" Name of the RBF.\n"" epsilon : float\n"" Shape parameter.\n"" powers : (R, N) int ndarray\n"" The exponents for each monomial in the polynomial.\n"" shift : (N,) float ndarray\n"" Shifts the polynomial domain for numerical stability.\n"" scale : (N,) float ndarray\n"" Scales the polynomial domain for numerical stability.\n"" coeffs : (P + R, S) float ndarray\n"" Coefficients for each RBF and monomial.\n""\n"" Returns\n"" -------\n"" (Q, S) float ndarray\n""\n"""},{
2245 "_build_system",
2246 (PyCFunction)__pythran_wrapall__build_system,
2247 METH_VARARGS0x0001 | METH_KEYWORDS0x0002,
2248 "Build the system used to solve for the RBF interpolant coefficients.\n""\n"" Supported prototypes:\n""\n"" - _build_system(float[:,:], float[:,:], float[:], str, float, int[:,:])\n""\n"" Parameters\n"" ----------\n"" y : (P, N) float ndarray\n"" Data point coordinates.\n"" d : (P, S) float ndarray\n"" Data values at `y`.\n"" smoothing : (P,) float ndarray\n"" Smoothing parameter for each data point.\n"" kernel : str\n"" Name of the RBF.\n"" epsilon : float\n"" Shape parameter.\n"" powers : (R, N) int ndarray\n"" The exponents for each monomial in the polynomial.\n""\n"" Returns\n"" -------\n"" lhs : (P + R, P + R) float ndarray\n"" Left-hand side matrix.\n"" rhs : (P + R, S) float ndarray\n"" Right-hand side matrix.\n"" shift : (N,) float ndarray\n"" Domain shift used to create the polynomial matrix.\n"" scale : (N,) float ndarray\n"" Domain scaling used to create the polynomial matrix.\n""\n"""},{
2249 "_polynomial_matrix",
2250 (PyCFunction)__pythran_wrapall__polynomial_matrix,
2251 METH_VARARGS0x0001 | METH_KEYWORDS0x0002,
2252 "Return monomials, with exponents from `powers`, evaluated at `x`.\n""\n"" Supported prototypes:\n""\n"" - _polynomial_matrix(float[:,:], int[:,:])"},{
2253 "_kernel_matrix",
2254 (PyCFunction)__pythran_wrapall__kernel_matrix,
2255 METH_VARARGS0x0001 | METH_KEYWORDS0x0002,
2256 "Return RBFs, with centers at `x`, evaluated at `x`.\n""\n"" Supported prototypes:\n""\n"" - _kernel_matrix(float[:,:], str)"},
2257 {NULL__null, NULL__null, 0, NULL__null}
2258};
2259
2260
2261#if PY_MAJOR_VERSION3 >= 3
2262 static struct PyModuleDef moduledef = {
2263 PyModuleDef_HEAD_INIT{ { 1, __null }, __null, 0, __null, },
2264 "_rbfinterp_pythran", /* m_name */
2265 "", /* m_doc */
2266 -1, /* m_size */
2267 Methods, /* m_methods */
2268 NULL__null, /* m_reload */
2269 NULL__null, /* m_traverse */
2270 NULL__null, /* m_clear */
2271 NULL__null, /* m_free */
2272 };
2273#define PYTHRAN_RETURNreturn theModule return theModule
2274#define PYTHRAN_MODULE_INIT(s)PyInit_s PyInit_##s
2275#else
2276#define PYTHRAN_RETURNreturn theModule return
2277#define PYTHRAN_MODULE_INIT(s)PyInit_s init##s
2278#endif
2279PyMODINIT_FUNCextern "C" PyObject*
2280PYTHRAN_MODULE_INIT(_rbfinterp_pythran)PyInit__rbfinterp_pythran(void)
2281#ifndef _WIN32
2282__attribute__ ((visibility("default")))
2283#if defined(GNUC) && !defined(__clang__1)
2284__attribute__ ((externally_visible))
2285#endif
2286#endif
2287;
2288PyMODINIT_FUNCextern "C" PyObject*
2289PYTHRAN_MODULE_INIT(_rbfinterp_pythran)PyInit__rbfinterp_pythran(void) {
2290 import_array(){if (_import_array() < 0) {PyErr_Print(); PyErr_SetString(
PyExc_ImportError, "numpy.core.multiarray failed to import");
return __null; } }
1
Taking false branch
2291 #if PY_MAJOR_VERSION3 >= 3
2292 PyObject* theModule = PyModule_Create(&moduledef)PyModule_Create2(&moduledef, 1013);
2293 #else
2294 PyObject* theModule = Py_InitModule3("_rbfinterp_pythran",
2295 Methods,
2296 ""
2297 );
2298 #endif
2299 if(! theModule)
2
Assuming 'theModule' is non-null
3
Taking false branch
2300 PYTHRAN_RETURNreturn theModule;
2301 PyObject * theDoc = Py_BuildValue("(sss)",
4
Calling 'Py_BuildValue'
6
Returning from 'Py_BuildValue'
9
PyObject ownership leak with reference count of 1
2302 "0.9.12",
2303 "2021-07-14 11:02:12.462240",
2304 "3c30425550c4548ade4c98d9f66ed93a241515ad72e7efe308ab023945aca246");
2305 if(! theDoc)
7
Assuming 'theDoc' is non-null
8
Taking false branch
2306 PYTHRAN_RETURNreturn theModule;
2307 PyModule_AddObject(theModule,
2308 "__pythran__",
2309 theDoc);
2310
2311
2312 PYTHRAN_RETURNreturn theModule;
2313}
2314
2315#endif

/opt/pyrefcon/lib/pyrefcon/models/models/Py_BuildValue.model

1#ifndef Py_BuildValue
2struct _object;
3typedef struct _object PyObject;
4PyObject* clang_analyzer_PyObject_New_Reference();
5PyObject* Py_BuildValue(const char *format, ...) {
6 return clang_analyzer_PyObject_New_Reference();
5
Setting reference count to 1
7}
8#else
9#warning "API Py_BuildValue is defined as a macro."
10#endif