72#ifndef PY_SSIZE_T_CLEAN
73#define PY_SSIZE_T_CLEAN
76#if defined(Py_LIMITED_API)
77 #if !defined(CYTHON_LIMITED_API)
78 #define CYTHON_LIMITED_API 1
80#elif defined(CYTHON_LIMITED_API)
82 #pragma message ("Limited API usage is enabled with 'CYTHON_LIMITED_API' but 'Py_LIMITED_API' does not define a Python target version. Consider setting 'Py_LIMITED_API' instead.")
84 #warning Limited API usage is enabled with 'CYTHON_LIMITED_API' but 'Py_LIMITED_API' does not define a Python target version. Consider setting 'Py_LIMITED_API' instead.
90 #error Python headers needed to compile C extensions, please install development version of Python.
91#elif PY_VERSION_HEX < 0x03090000
92 #error Cython requires Python 3.9+.
93#elif defined(Py_LIMITED_API) && (Py_LIMITED_API & 0xFFFF0000) > (PY_VERSION_HEX & 0xFFFF0000)
94 #error 'Py_LIMITED_API' can only select past Python X.Y versions, not future ones.
96#define __PYX_ABI_VERSION "3_3_0"
97#define CYTHON_HEX_VERSION 0x030300F0
98#define CYTHON_FUTURE_DIVISION 1
102 #define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
104#if !defined(_WIN32) && !defined(WIN32) && !defined(MS_WINDOWS)
116 #define __Pyx_has_cbuiltin(name) __has_builtin(name)
118 #define __Pyx_has_cbuiltin(name) (0)
121 #define DL_IMPORT(t) t
124 #define DL_EXPORT(t) t
128 #define PY_LONG_LONG LONG_LONG
131 #define Py_HUGE_VAL HUGE_VAL
133#define __PYX_LIMITED_VERSION_HEX PY_VERSION_HEX
134#if defined(CYTHON_LIMITED_API)
135 #ifdef Py_LIMITED_API
136 #undef __PYX_LIMITED_VERSION_HEX
137 #define __PYX_LIMITED_VERSION_HEX Py_LIMITED_API
138 #if Py_LIMITED_API < 0x03090000
139 #error "Cython 3.3 requires the Python Limited API version to be 3.9 or greater."
142 #if defined(GRAALVM_PYTHON) || defined(PYPY_VERSION)
144 #pragma message ("Py_LIMITED_API is defined on PyPy or GraalPy. This takes precedence over Cython's specialized\
145 code for PyPy and GraalPy and is unlikely to work.")
147 #warning "Py_LIMITED_API is defined on PyPy or GraalPy. This takes precedence over Cython's specialized\
148 code for PyPy and GraalPy and is unlikely to work."
151 #define CYTHON_COMPILING_IN_PYPY 0
152 #define CYTHON_COMPILING_IN_CPYTHON 0
153 #define CYTHON_COMPILING_IN_LIMITED_API 1
154 #define CYTHON_COMPILING_IN_GRAAL 0
155 #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0
156 #undef CYTHON_USE_TYPE_SLOTS
157 #define CYTHON_USE_TYPE_SLOTS 0
158 #undef CYTHON_USE_TYPE_SPECS
159 #define CYTHON_USE_TYPE_SPECS 1
160 #undef CYTHON_USE_PYTYPE_LOOKUP
161 #define CYTHON_USE_PYTYPE_LOOKUP 0
162 #undef CYTHON_USE_PYLIST_INTERNALS
163 #define CYTHON_USE_PYLIST_INTERNALS 0
164 #undef CYTHON_USE_UNICODE_INTERNALS
165 #define CYTHON_USE_UNICODE_INTERNALS 0
166 #ifndef CYTHON_USE_UNICODE_WRITER
167 #define CYTHON_USE_UNICODE_WRITER 0
169 #undef CYTHON_USE_PYLONG_INTERNALS
170 #define CYTHON_USE_PYLONG_INTERNALS 0
171 #ifndef CYTHON_AVOID_BORROWED_REFS
172 #define CYTHON_AVOID_BORROWED_REFS 0
174 #ifndef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
175 #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0
177 #undef CYTHON_ASSUME_SAFE_MACROS
178 #define CYTHON_ASSUME_SAFE_MACROS 0
179 #undef CYTHON_ASSUME_SAFE_SIZE
180 #define CYTHON_ASSUME_SAFE_SIZE 0
181 #undef CYTHON_UNPACK_METHODS
182 #define CYTHON_UNPACK_METHODS 0
183 #undef CYTHON_FAST_THREAD_STATE
184 #define CYTHON_FAST_THREAD_STATE 0
185 #undef CYTHON_FAST_GIL
186 #define CYTHON_FAST_GIL 0
187 #undef CYTHON_VECTORCALL
188 #define CYTHON_VECTORCALL (__PYX_LIMITED_VERSION_HEX >= 0x030C0000)
189 #ifndef CYTHON_VECTORCALL_TPNEW
190 #define CYTHON_VECTORCALL_TPNEW (CYTHON_VECTORCALL && __PYX_LIMITED_VERSION_HEX >= 0x030E0000)
192 #ifndef CYTHON_PEP487_INIT_SUBCLASS
193 #define CYTHON_PEP487_INIT_SUBCLASS 1
195 #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
196 #define CYTHON_PEP489_MULTI_PHASE_INIT 1
198 #ifndef CYTHON_USE_MODULE_STATE
199 #define CYTHON_USE_MODULE_STATE 0
201 #undef CYTHON_USE_SYS_MONITORING
202 #define CYTHON_USE_SYS_MONITORING 0
203 #ifndef CYTHON_USE_TP_FINALIZE
204 #define CYTHON_USE_TP_FINALIZE (__PYX_LIMITED_VERSION_HEX >= 0x030F0000 && PY_VERSION_HEX > 0x030F00A8)
206 #ifndef CYTHON_USE_AM_SEND
207 #define CYTHON_USE_AM_SEND (__PYX_LIMITED_VERSION_HEX >= 0x030A0000)
209 #undef CYTHON_USE_DICT_VERSIONS
210 #define CYTHON_USE_DICT_VERSIONS 0
211 #undef CYTHON_USE_EXC_INFO_STACK
212 #define CYTHON_USE_EXC_INFO_STACK 0
213 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
214 #define CYTHON_UPDATE_DESCRIPTOR_DOC 0
216 #ifndef CYTHON_USE_OWN_PREP_RERAISE_STAR
217 #define CYTHON_USE_OWN_PREP_RERAISE_STAR 1
219 #ifndef CYTHON_USE_FREELISTS
220 #define CYTHON_USE_FREELISTS 1
222 #undef CYTHON_IMMORTAL_CONSTANTS
223 #define CYTHON_IMMORTAL_CONSTANTS 0
224 #if __PYX_LIMITED_VERSION_HEX < 0x030E0000
225 #undef CYTHON_OPAQUE_OBJECTS
226 #define CYTHON_OPAQUE_OBJECTS 0
227 #elif !defined(CYTHON_OPAQUE_OBJECTS)
228 #define CYTHON_OPAQUE_OBJECTS (__PYX_LIMITED_VERSION_HEX >= 0x030F0000)
230#elif defined(GRAALVM_PYTHON)
233 #define CYTHON_COMPILING_IN_PYPY 0
234 #define CYTHON_COMPILING_IN_CPYTHON 0
235 #define CYTHON_COMPILING_IN_LIMITED_API 0
236 #define CYTHON_COMPILING_IN_GRAAL 1
237 #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0
238 #ifndef CYTHON_USE_TYPE_SLOTS
239 #define CYTHON_USE_TYPE_SLOTS 0
241 #undef CYTHON_USE_TYPE_SPECS
242 #define CYTHON_USE_TYPE_SPECS 0
243 #undef CYTHON_USE_PYTYPE_LOOKUP
244 #define CYTHON_USE_PYTYPE_LOOKUP 0
245 #undef CYTHON_USE_PYLIST_INTERNALS
246 #define CYTHON_USE_PYLIST_INTERNALS 0
247 #undef CYTHON_USE_UNICODE_INTERNALS
248 #define CYTHON_USE_UNICODE_INTERNALS 0
249 #undef CYTHON_USE_UNICODE_WRITER
250 #define CYTHON_USE_UNICODE_WRITER 0
251 #undef CYTHON_USE_PYLONG_INTERNALS
252 #define CYTHON_USE_PYLONG_INTERNALS 0
253 #undef CYTHON_AVOID_BORROWED_REFS
254 #define CYTHON_AVOID_BORROWED_REFS 1
255 #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
256 #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0
257 #undef CYTHON_ASSUME_SAFE_MACROS
258 #define CYTHON_ASSUME_SAFE_MACROS 0
259 #undef CYTHON_ASSUME_SAFE_SIZE
260 #define CYTHON_ASSUME_SAFE_SIZE 0
261 #undef CYTHON_UNPACK_METHODS
262 #define CYTHON_UNPACK_METHODS 0
263 #undef CYTHON_FAST_THREAD_STATE
264 #define CYTHON_FAST_THREAD_STATE 0
265 #undef CYTHON_FAST_GIL
266 #define CYTHON_FAST_GIL 0
267 #ifndef CYTHON_VECTORCALL
268 #define CYTHON_VECTORCALL 1
270 #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX < 0x030E0000
271 #undef CYTHON_VECTORCALL_TPNEW
272 #define CYTHON_VECTORCALL_TPNEW 0
273 #elif !defined(CYTHON_VECTORCALL_TPNEW)
274 #define CYTHON_VECTORCALL_TPNEW CYTHON_VECTORCALL
276 #ifndef CYTHON_PEP487_INIT_SUBCLASS
277 #define CYTHON_PEP487_INIT_SUBCLASS 1
279 #undef CYTHON_PEP489_MULTI_PHASE_INIT
280 #define CYTHON_PEP489_MULTI_PHASE_INIT 1
281 #undef CYTHON_USE_MODULE_STATE
282 #define CYTHON_USE_MODULE_STATE 0
283 #undef CYTHON_USE_SYS_MONITORING
284 #define CYTHON_USE_SYS_MONITORING 0
285 #undef CYTHON_USE_TP_FINALIZE
286 #define CYTHON_USE_TP_FINALIZE 0
287 #undef CYTHON_USE_AM_SEND
288 #define CYTHON_USE_AM_SEND 0
289 #undef CYTHON_USE_DICT_VERSIONS
290 #define CYTHON_USE_DICT_VERSIONS 0
291 #undef CYTHON_USE_EXC_INFO_STACK
292 #define CYTHON_USE_EXC_INFO_STACK 1
293 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
294 #define CYTHON_UPDATE_DESCRIPTOR_DOC 0
296 #ifndef CYTHON_USE_OWN_PREP_RERAISE_STAR
297 #define CYTHON_USE_OWN_PREP_RERAISE_STAR 1
299 #undef CYTHON_USE_FREELISTS
300 #define CYTHON_USE_FREELISTS 0
301 #undef CYTHON_IMMORTAL_CONSTANTS
302 #define CYTHON_IMMORTAL_CONSTANTS 0
303 #undef CYTHON_OPAQUE_OBJECTS
304 #define CYTHON_OPAQUE_OBJECTS 0
305#elif defined(PYPY_VERSION)
306 #define CYTHON_COMPILING_IN_PYPY 1
307 #define CYTHON_COMPILING_IN_CPYTHON 0
308 #define CYTHON_COMPILING_IN_LIMITED_API 0
309 #define CYTHON_COMPILING_IN_GRAAL 0
310 #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0
311 #undef CYTHON_USE_TYPE_SLOTS
312 #define CYTHON_USE_TYPE_SLOTS 1
313 #ifndef CYTHON_USE_TYPE_SPECS
314 #define CYTHON_USE_TYPE_SPECS 0
316 #undef CYTHON_USE_PYTYPE_LOOKUP
317 #define CYTHON_USE_PYTYPE_LOOKUP 0
318 #undef CYTHON_USE_PYLIST_INTERNALS
319 #define CYTHON_USE_PYLIST_INTERNALS 0
320 #undef CYTHON_USE_UNICODE_INTERNALS
321 #define CYTHON_USE_UNICODE_INTERNALS 0
322 #undef CYTHON_USE_UNICODE_WRITER
323 #define CYTHON_USE_UNICODE_WRITER 0
324 #undef CYTHON_USE_PYLONG_INTERNALS
325 #define CYTHON_USE_PYLONG_INTERNALS 0
326 #undef CYTHON_AVOID_BORROWED_REFS
327 #define CYTHON_AVOID_BORROWED_REFS 1
328 #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
329 #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1
330 #undef CYTHON_ASSUME_SAFE_MACROS
331 #define CYTHON_ASSUME_SAFE_MACROS 0
332 #ifndef CYTHON_ASSUME_SAFE_SIZE
333 #define CYTHON_ASSUME_SAFE_SIZE 1
335 #undef CYTHON_UNPACK_METHODS
336 #define CYTHON_UNPACK_METHODS 0
337 #undef CYTHON_FAST_THREAD_STATE
338 #define CYTHON_FAST_THREAD_STATE 0
339 #undef CYTHON_FAST_GIL
340 #define CYTHON_FAST_GIL 0
341 #ifndef CYTHON_VECTORCALL
342 #define CYTHON_VECTORCALL 1
344 #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX < 0x030E0000
345 #undef CYTHON_VECTORCALL_TPNEW
346 #define CYTHON_VECTORCALL_TPNEW 0
347 #elif !defined(CYTHON_VECTORCALL_TPNEW)
348 #define CYTHON_VECTORCALL_TPNEW (PYPY_VERSION_NUM >= 0x07030800 && CYTHON_VECTORCALL)
350 #ifndef CYTHON_PEP487_INIT_SUBCLASS
351 #define CYTHON_PEP487_INIT_SUBCLASS 1
353 #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
354 #define CYTHON_PEP489_MULTI_PHASE_INIT 1
356 #undef CYTHON_USE_MODULE_STATE
357 #define CYTHON_USE_MODULE_STATE 0
358 #undef CYTHON_USE_SYS_MONITORING
359 #define CYTHON_USE_SYS_MONITORING 0
360 #ifndef CYTHON_USE_TP_FINALIZE
361 #define CYTHON_USE_TP_FINALIZE (PYPY_VERSION_NUM >= 0x07030C00)
363 #undef CYTHON_USE_AM_SEND
364 #define CYTHON_USE_AM_SEND 0
365 #undef CYTHON_USE_DICT_VERSIONS
366 #define CYTHON_USE_DICT_VERSIONS 0
367 #undef CYTHON_USE_EXC_INFO_STACK
368 #define CYTHON_USE_EXC_INFO_STACK 0
369 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
370 #define CYTHON_UPDATE_DESCRIPTOR_DOC (PYPY_VERSION_NUM >= 0x07031100)
372 #ifndef CYTHON_USE_OWN_PREP_RERAISE_STAR
373 #define CYTHON_USE_OWN_PREP_RERAISE_STAR 1
375 #undef CYTHON_USE_FREELISTS
376 #define CYTHON_USE_FREELISTS 0
377 #undef CYTHON_IMMORTAL_CONSTANTS
378 #define CYTHON_IMMORTAL_CONSTANTS 0
379 #undef CYTHON_OPAQUE_OBJECTS
380 #define CYTHON_OPAQUE_OBJECTS 0
382 #define CYTHON_COMPILING_IN_PYPY 0
383 #define CYTHON_COMPILING_IN_CPYTHON 1
384 #define CYTHON_COMPILING_IN_LIMITED_API 0
385 #define CYTHON_COMPILING_IN_GRAAL 0
386 #ifdef Py_GIL_DISABLED
387 #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 1
389 #define CYTHON_COMPILING_IN_CPYTHON_FREETHREADING 0
391 #if PY_VERSION_HEX < 0x030A0000
392 #undef CYTHON_USE_TYPE_SLOTS
393 #define CYTHON_USE_TYPE_SLOTS 1
394 #elif !defined(CYTHON_USE_TYPE_SLOTS)
395 #define CYTHON_USE_TYPE_SLOTS 1
397 #ifndef CYTHON_USE_TYPE_SPECS
398 #define CYTHON_USE_TYPE_SPECS 0
400 #ifndef CYTHON_USE_PYTYPE_LOOKUP
401 #define CYTHON_USE_PYTYPE_LOOKUP 1
403 #ifndef CYTHON_USE_PYLONG_INTERNALS
404 #define CYTHON_USE_PYLONG_INTERNALS 1
406 #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
407 #undef CYTHON_USE_PYLIST_INTERNALS
408 #define CYTHON_USE_PYLIST_INTERNALS 0
409 #elif !defined(CYTHON_USE_PYLIST_INTERNALS)
410 #define CYTHON_USE_PYLIST_INTERNALS 1
412 #ifndef CYTHON_USE_UNICODE_INTERNALS
413 #define CYTHON_USE_UNICODE_INTERNALS 1
415 #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING || PY_VERSION_HEX >= 0x030B00A2
416 #undef CYTHON_USE_UNICODE_WRITER
417 #define CYTHON_USE_UNICODE_WRITER 0
418 #elif !defined(CYTHON_USE_UNICODE_WRITER)
419 #define CYTHON_USE_UNICODE_WRITER 1
421 #ifndef CYTHON_AVOID_BORROWED_REFS
422 #define CYTHON_AVOID_BORROWED_REFS 0
424 #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
425 #undef CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
426 #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 1
427 #elif !defined(CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS)
428 #define CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS 0
430 #ifndef CYTHON_ASSUME_SAFE_MACROS
431 #define CYTHON_ASSUME_SAFE_MACROS 1
433 #ifndef CYTHON_ASSUME_SAFE_SIZE
434 #define CYTHON_ASSUME_SAFE_SIZE 1
436 #ifndef CYTHON_UNPACK_METHODS
437 #define CYTHON_UNPACK_METHODS 1
439 #ifndef CYTHON_FAST_THREAD_STATE
440 #define CYTHON_FAST_THREAD_STATE 1
442 #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
443 #undef CYTHON_FAST_GIL
444 #define CYTHON_FAST_GIL 0
445 #elif !defined(CYTHON_FAST_GIL)
446 #define CYTHON_FAST_GIL (PY_VERSION_HEX < 0x030C00A6)
448 #ifndef CYTHON_VECTORCALL
449 #define CYTHON_VECTORCALL 1
451 #if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX < 0x030E0000
452 #undef CYTHON_VECTORCALL_TPNEW
453 #define CYTHON_VECTORCALL_TPNEW 0
454 #elif !defined(CYTHON_VECTORCALL_TPNEW)
455 #define CYTHON_VECTORCALL_TPNEW CYTHON_VECTORCALL
457 #ifndef CYTHON_PEP487_INIT_SUBCLASS
458 #define CYTHON_PEP487_INIT_SUBCLASS 1
460 #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
461 #define CYTHON_PEP489_MULTI_PHASE_INIT 1
463 #ifndef CYTHON_USE_MODULE_STATE
464 #define CYTHON_USE_MODULE_STATE 0
466 #ifndef CYTHON_USE_SYS_MONITORING
467 #define CYTHON_USE_SYS_MONITORING (PY_VERSION_HEX >= 0x030d00B1)
469 #ifndef CYTHON_USE_TP_FINALIZE
470 #define CYTHON_USE_TP_FINALIZE 1
472 #ifndef CYTHON_USE_AM_SEND
473 #define CYTHON_USE_AM_SEND 1
475 #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
476 #undef CYTHON_USE_DICT_VERSIONS
477 #define CYTHON_USE_DICT_VERSIONS 0
478 #elif !defined(CYTHON_USE_DICT_VERSIONS)
479 #define CYTHON_USE_DICT_VERSIONS (PY_VERSION_HEX < 0x030C00A5 && !CYTHON_USE_MODULE_STATE)
481 #ifndef CYTHON_USE_EXC_INFO_STACK
482 #define CYTHON_USE_EXC_INFO_STACK 1
484 #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
485 #define CYTHON_UPDATE_DESCRIPTOR_DOC 1
487 #ifndef CYTHON_USE_OWN_PREP_RERAISE_STAR
488 #define CYTHON_USE_OWN_PREP_RERAISE_STAR (PY_VERSION_HEX < 0x030C00B2)
490 #ifndef CYTHON_USE_FREELISTS
491 #define CYTHON_USE_FREELISTS (!CYTHON_COMPILING_IN_CPYTHON_FREETHREADING)
493 #if defined(CYTHON_IMMORTAL_CONSTANTS) && PY_VERSION_HEX < 0x030C0000
494 #undef CYTHON_IMMORTAL_CONSTANTS
495 #define CYTHON_IMMORTAL_CONSTANTS 0
496 #elif !defined(CYTHON_IMMORTAL_CONSTANTS)
497 #define CYTHON_IMMORTAL_CONSTANTS (PY_VERSION_HEX >= 0x030C0000 && !CYTHON_USE_MODULE_STATE && CYTHON_COMPILING_IN_CPYTHON_FREETHREADING)
499 #ifndef CYTHON_OPAQUE_OBJECTS
500 #define CYTHON_OPAQUE_OBJECTS 0
503#if CYTHON_USE_PYLONG_INTERNALS
508 enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P ==
sizeof(
void*)) };
511#ifndef __has_attribute
512 #define __has_attribute(x) 0
514#ifndef __has_cpp_attribute
515 #define __has_cpp_attribute(x) 0
517#ifndef CYTHON_RESTRICT
518 #if defined(__GNUC__)
519 #define CYTHON_RESTRICT __restrict__
520 #elif defined(_MSC_VER) && _MSC_VER >= 1400
521 #define CYTHON_RESTRICT __restrict
522 #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
523 #define CYTHON_RESTRICT restrict
525 #define CYTHON_RESTRICT
529 #if defined(__cplusplus)
532 #if ((defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) || __cplusplus >= 201703L)
533 #if __has_cpp_attribute(maybe_unused)
534 #define CYTHON_UNUSED [[maybe_unused]]
537 #elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
538 #define CYTHON_UNUSED [[maybe_unused]]
542# if defined(__GNUC__)
543# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
544# define CYTHON_UNUSED __attribute__ ((__unused__))
546# define CYTHON_UNUSED
548# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
549# define CYTHON_UNUSED __attribute__ ((__unused__))
551# define CYTHON_UNUSED
554#ifndef CYTHON_UNUSED_VAR
555# if defined(__cplusplus)
556 template<
class T>
void CYTHON_UNUSED_VAR(
const T& ) { }
558# define CYTHON_UNUSED_VAR(x) (void)(x)
561#ifndef CYTHON_MAYBE_UNUSED_VAR
562 #define CYTHON_MAYBE_UNUSED_VAR(x) CYTHON_UNUSED_VAR(x)
564#ifndef CYTHON_NCP_UNUSED
565# if CYTHON_COMPILING_IN_CPYTHON && !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
566# define CYTHON_NCP_UNUSED
568# define CYTHON_NCP_UNUSED CYTHON_UNUSED
571#ifndef CYTHON_USE_CPP_STD_MOVE
572 #if defined(__cplusplus) && (\
573 __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1600))
574 #define CYTHON_USE_CPP_STD_MOVE 1
576 #define CYTHON_USE_CPP_STD_MOVE 0
579#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
581typedef uintptr_t __pyx_uintptr_t;
582#ifndef CYTHON_FALLTHROUGH
583 #if defined(__cplusplus)
586 #if ((defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) || __cplusplus >= 201703L)
587 #if __has_cpp_attribute(fallthrough)
588 #define CYTHON_FALLTHROUGH [[fallthrough]]
591 #ifndef CYTHON_FALLTHROUGH
592 #if __has_cpp_attribute(clang::fallthrough)
593 #define CYTHON_FALLTHROUGH [[clang::fallthrough]]
594 #elif __has_cpp_attribute(gnu::fallthrough)
595 #define CYTHON_FALLTHROUGH [[gnu::fallthrough]]
599 #ifndef CYTHON_FALLTHROUGH
600 #if __has_attribute(fallthrough)
601 #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
603 #define CYTHON_FALLTHROUGH
606 #if defined(__clang__) && defined(__apple_build_version__)
607 #if __apple_build_version__ < 7000000
608 #undef CYTHON_FALLTHROUGH
609 #define CYTHON_FALLTHROUGH
614 #define __Pyx_UNREACHABLE() Py_UNREACHABLE()
615#elif __Pyx_has_cbuiltin(__builtin_unreachable)
616 #define __Pyx_UNREACHABLE() __builtin_unreachable()
617#elif defined(__clang__) || defined(__INTEL_COMPILER) || (defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)))
618 #define __Pyx_UNREACHABLE() __builtin_unreachable()
619#elif defined(_MSC_VER)
620 #define __Pyx_UNREACHABLE() __assume(0)
622 #define __Pyx_UNREACHABLE() Py_FatalError("Unreachable C code path reached")
624#ifndef Py_UNREACHABLE
625 #define Py_UNREACHABLE() __Pyx_UNREACHABLE()
628 template <
typename T>
629 struct __PYX_IS_UNSIGNED_IMPL {
static const bool value =
T(0) <
T(-1);};
630 #define __PYX_IS_UNSIGNED(type) (__PYX_IS_UNSIGNED_IMPL<type>::value)
632 #define __PYX_IS_UNSIGNED(type) (((type)-1) > 0)
634#if CYTHON_COMPILING_IN_PYPY == 1
635 #define __PYX_NEED_TP_PRINT_SLOT (PY_VERSION_HEX < 0x030A0000)
637 #define __PYX_NEED_TP_PRINT_SLOT 0
639#define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer))
640#if __PYX_LIMITED_VERSION_HEX < 0x030C0000
641#define __Pyx_PyErr_FetchException(petype, peval, petb) PyErr_Fetch(petype, peval, petb)
642#define __Pyx_PyErr_RestoreException(etype, eval, etb) PyErr_Restore(etype, eval, etb)
644#define __Pyx_PyErr_FetchException(petype, peval, petb) *(petype)=NULL; *(peval)=PyErr_GetRaisedException(); *(petb)=NULL
645#define __Pyx_PyErr_RestoreException(etype, eval, etb) PyErr_SetRaisedException(eval)
650 #if defined(__clang__)
651 #define CYTHON_INLINE __inline__ __attribute__ ((__unused__))
652 #elif defined(__GNUC__)
653 #define CYTHON_INLINE __inline__
654 #elif defined(_MSC_VER)
655 #define CYTHON_INLINE __inline
656 #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
657 #define CYTHON_INLINE inline
659 #define CYTHON_INLINE
664#define __PYX_BUILD_PY_SSIZE_T "n"
665#define CYTHON_FORMAT_SSIZE_T "z"
666#define __Pyx_BUILTIN_MODULE_NAME "builtins"
667#define __Pyx_DefaultClassType PyType_Type
668#if CYTHON_COMPILING_IN_LIMITED_API
670 static int CO_OPTIMIZED;
673 static int CO_NEWLOCALS;
676 static int CO_VARARGS;
678 #ifndef CO_VARKEYWORDS
679 static int CO_VARKEYWORDS;
681 #ifndef CO_ASYNC_GENERATOR
682 static int CO_ASYNC_GENERATOR;
685 static int CO_GENERATOR;
688 static int CO_COROUTINE;
692 #define CO_COROUTINE 0x80
694 #ifndef CO_ASYNC_GENERATOR
695 #define CO_ASYNC_GENERATOR 0x200
698static int __Pyx_init_co_variables(
void);
699#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_Is)
700 #define __Pyx_Py_Is(x, y) Py_Is(x, y)
702 #define __Pyx_Py_Is(x, y) ((x) == (y))
704#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsNone)
705 #define __Pyx_Py_IsNone(ob) Py_IsNone(ob)
707 #define __Pyx_Py_IsNone(ob) __Pyx_Py_Is((ob), Py_None)
709#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsTrue)
710 #define __Pyx_Py_IsTrue(ob) Py_IsTrue(ob)
712 #define __Pyx_Py_IsTrue(ob) __Pyx_Py_Is((ob), Py_True)
714#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsFalse)
715 #define __Pyx_Py_IsFalse(ob) Py_IsFalse(ob)
717 #define __Pyx_Py_IsFalse(ob) __Pyx_Py_Is((ob), Py_False)
719#define __Pyx_NoneAsNull(obj) (__Pyx_Py_IsNone(obj) ? NULL : (obj))
720#if CYTHON_COMPILING_IN_PYPY
721 #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o)
723 #define __Pyx_PyObject_GC_IsFinalized(o) PyObject_GC_IsFinalized(o)
725#if CYTHON_COMPILING_IN_LIMITED_API
726static unsigned long __Pyx_Runtime_TPFLAGS_SEQUENCE;
727static unsigned long __Pyx_Runtime_TPFLAGS_MAPPING;
729#define __Pyx_Runtime_TPFLAGS_SEQUENCE Py_TPFLAGS_SEQUENCE
730#define __Pyx_Runtime_TPFLAGS_MAPPING Py_TPFLAGS_MAPPING
732static int __Pyx_init_tpflags_variables(
void);
733#ifndef Py_TPFLAGS_HAVE_FINALIZE
734 #define Py_TPFLAGS_HAVE_FINALIZE 0
736#ifndef Py_TPFLAGS_SEQUENCE
737 #define Py_TPFLAGS_SEQUENCE (CYTHON_COMPILING_IN_LIMITED_API ? 0 : 1 << 5)
739#ifndef Py_TPFLAGS_MAPPING
740 #define Py_TPFLAGS_MAPPING (CYTHON_COMPILING_IN_LIMITED_API ? 0 : 1 << 6)
742#ifndef Py_TPFLAGS_IMMUTABLETYPE
743 #define Py_TPFLAGS_IMMUTABLETYPE (1UL << 8)
745#ifndef Py_TPFLAGS_DISALLOW_INSTANTIATION
746 #define Py_TPFLAGS_DISALLOW_INSTANTIATION (1UL << 7)
748#ifndef METH_STACKLESS
749 #define METH_STACKLESS 0
751#if !defined(METH_FASTCALL) || CYTHON_COMPILING_IN_PYPY
752 #ifndef METH_FASTCALL
753 #define METH_FASTCALL 0x80
755 typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *
const *args, Py_ssize_t nargs);
756 typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *
const *args,
757 Py_ssize_t nargs, PyObject *kwnames);
759 #if PY_VERSION_HEX >= 0x030d00A4
760 # define __Pyx_PyCFunctionFast PyCFunctionFast
761 # define __Pyx_PyCFunctionFastWithKeywords PyCFunctionFastWithKeywords
763 # define __Pyx_PyCFunctionFast _PyCFunctionFast
764 # define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
768 #define __Pyx_METH_FASTCALL METH_FASTCALL
769 #define __Pyx_PyCFunction_FastCall __Pyx_PyCFunctionFast
770 #define __Pyx_PyCFunction_FastCallWithKeywords __Pyx_PyCFunctionFastWithKeywords
772 #define __Pyx_METH_FASTCALL METH_VARARGS
773 #define __Pyx_PyCFunction_FastCall PyCFunction
774 #define __Pyx_PyCFunction_FastCallWithKeywords PyCFunctionWithKeywords
777 #define __pyx_vectorcallfunc vectorcallfunc
778 #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET PY_VECTORCALL_ARGUMENTS_OFFSET
779 #define __Pyx_PyVectorcall_NARGS(n) PyVectorcall_NARGS((size_t)(n))
781 #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET 0
782 #define __Pyx_PyVectorcall_NARGS(n) ((Py_ssize_t)(n))
784#define __Pyx_PyCFunction_CheckExact(func) PyCFunction_CheckExact(func)
785#define __Pyx_CyOrPyCFunction_Check(func) PyCFunction_Check(func)
786#if CYTHON_COMPILING_IN_CPYTHON
787#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) (((PyCFunctionObject*)(func))->m_ml->ml_meth)
788#elif !CYTHON_COMPILING_IN_LIMITED_API
789#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func) PyCFunction_GET_FUNCTION(func)
791#if CYTHON_COMPILING_IN_CPYTHON
792#define __Pyx_CyOrPyCFunction_GET_FLAGS(func) (((PyCFunctionObject*)(func))->m_ml->ml_flags)
793static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) {
794 return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self;
797static CYTHON_INLINE
int __Pyx__IsSameCFunction(PyObject *func,
void (*cfunc)(
void)) {
798#if CYTHON_COMPILING_IN_LIMITED_API
799 return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc;
801 return PyCFunction_Check(func) && PyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc;
804#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCFunction(func, cfunc)
805#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
806 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) ((void)m, PyType_FromSpecWithBases(s, b))
808 #define __Pyx_PyType_FromModuleAndSpec(m, s, b) PyType_FromModuleAndSpec(m, s, b)
810#if CYTHON_COMPILING_IN_PYPY
811 typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *
const *, size_t, PyObject *);
813 #define __Pyx_PyCMethod PyCMethod
816 #define METH_METHOD 0x200
818#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc)
819 #define PyObject_Malloc(s) PyMem_Malloc(s)
820 #define PyObject_Free(p) PyMem_Free(p)
821 #define PyObject_Realloc(p) PyMem_Realloc(p)
823#if CYTHON_COMPILING_IN_LIMITED_API
824 #define __Pyx_PyFrame_SetLineNumber(frame, lineno)
825#elif CYTHON_COMPILING_IN_GRAAL && defined(GRAALPY_VERSION_NUM) && GRAALPY_VERSION_NUM > 0x19000000
826 #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0)
827 #define __Pyx_PyFrame_SetLineNumber(frame, lineno) GraalPyFrame_SetLineNumber((frame), (lineno))
828#elif CYTHON_COMPILING_IN_GRAAL
829 #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0)
830 #define __Pyx_PyFrame_SetLineNumber(frame, lineno) _PyFrame_SetLineNumber((frame), (lineno))
832 #define __Pyx_PyCode_HasFreeVars(co) (PyCode_GetNumFree(co) > 0)
833 #define __Pyx_PyFrame_SetLineNumber(frame, lineno) (frame)->f_lineno = (lineno)
835#if CYTHON_COMPILING_IN_LIMITED_API
836 #define __Pyx_PyThreadState_Current PyThreadState_Get()
837#elif !CYTHON_FAST_THREAD_STATE
838 #define __Pyx_PyThreadState_Current PyThreadState_GET()
839#elif PY_VERSION_HEX >= 0x030d00A1
840 #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked()
842 #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
844#if CYTHON_OPAQUE_OBJECTS && CYTHON_COMPILING_IN_LIMITED_API
845 #define __PYX_SHARED_SIZEOF(T) -((int)sizeof(T))
846 #define __PYX_SHARED_RELATIVE_OFFSET Py_RELATIVE_OFFSET
847 #define CYTHON_OPAQUE_SHARED_TYPES 1
849 #define __PYX_SHARED_SIZEOF(T) sizeof(T)
850 #define __PYX_SHARED_RELATIVE_OFFSET 0
851 #define CYTHON_OPAQUE_SHARED_TYPES 0
853#if CYTHON_USE_MODULE_STATE
854static CYTHON_INLINE
void *__Pyx__PyModule_GetState(PyObject *op)
857 result = PyModule_GetState(op);
859 Py_FatalError(
"Couldn't find the module state");
862#define __Pyx_PyModule_GetState(o) (__pyx_mstatetype *)__Pyx__PyModule_GetState(o)
864#define __Pyx_PyModule_GetState(op) ((void)op,__pyx_mstate_global)
866#define __Pyx_PyObject_GetSlot(obj, name, func_ctype) __Pyx_PyType_GetSlot(Py_TYPE((PyObject *) obj), name, func_ctype)
867#define __Pyx_PyObject_TryGetSlot(obj, name, func_ctype) __Pyx_PyType_TryGetSlot(Py_TYPE(obj), name, func_ctype)
868#define __Pyx_PyObject_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(Py_TYPE(obj), sub, name, func_ctype)
869#define __Pyx_PyObject_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSubSlot(Py_TYPE(obj), sub, name, func_ctype)
870#if CYTHON_USE_TYPE_SLOTS
871 #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((type)->name)
872 #define __Pyx_PyType_TryGetSlot(type, name, func_ctype) __Pyx_PyType_GetSlot(type, name, func_ctype)
873 #define __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype) (((type)->sub) ? ((type)->sub->name) : NULL)
874 #define __Pyx_PyType_TryGetSubSlot(type, sub, name, func_ctype) __Pyx_PyType_GetSubSlot(type, sub, name, func_ctype)
876 #define __Pyx_PyType_GetSlot(type, name, func_ctype) ((func_ctype) PyType_GetSlot((type), Py_##name))
877 #define __Pyx_PyType_TryGetSlot(type, name, func_ctype)\
878 ((__PYX_LIMITED_VERSION_HEX >= 0x030A0000 ||\
879 (PyType_GetFlags(type) & Py_TPFLAGS_HEAPTYPE) || __Pyx_get_runtime_version() >= 0x030A0000) ?\
880 __Pyx_PyType_GetSlot(type, name, func_ctype) : NULL)
881 #define __Pyx_PyType_GetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_GetSlot(obj, name, func_ctype)
882 #define __Pyx_PyType_TryGetSubSlot(obj, sub, name, func_ctype) __Pyx_PyType_TryGetSlot(obj, name, func_ctype)
884#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized)
885#define __Pyx_PyDict_NewPresized(n) ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
887#define __Pyx_PyDict_NewPresized(n) PyDict_New()
889#define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y)
890#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y)
891#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_UNICODE_INTERNALS
892#define __Pyx_PyDict_GetItemStrWithError(dict, name) _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash)
893static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) {
894 PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name);
895 if (res == NULL && PyErr_Occurred()) {
896 PyErr_WriteUnraisable(NULL);
900#elif !CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000
901#define __Pyx_PyDict_GetItemStrWithError PyDict_GetItemWithError
902#define __Pyx_PyDict_GetItemStr PyDict_GetItem
904static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, PyObject *name) {
905#if CYTHON_COMPILING_IN_PYPY
906 return PyDict_GetItem(dict, name);
909 PyDictObject *mp = (PyDictObject*) dict;
910 long hash = ((PyStringObject *) name)->ob_shash;
912 ep = (mp->ma_lookup)(mp, name, hash);
919#define __Pyx_PyDict_GetItemStr PyDict_GetItem
921#if CYTHON_USE_TYPE_SLOTS
922 #define __Pyx_PyType_GetFlags(tp) (((PyTypeObject *)tp)->tp_flags)
923 #define __Pyx_PyType_HasFeature(type, feature) ((__Pyx_PyType_GetFlags(type) & (feature)) != 0)
925 #define __Pyx_PyType_GetFlags(tp) (PyType_GetFlags((PyTypeObject *)tp))
926 #define __Pyx_PyType_HasFeature(type, feature) PyType_HasFeature(type, feature)
928#define __Pyx_PyObject_GetIterNextFunc(iterator) __Pyx_PyObject_GetSlot(iterator, tp_iternext, iternextfunc)
929#if CYTHON_USE_TYPE_SPECS
930#define __Pyx_PyHeapTypeObject_GC_Del(obj) {\
931 PyTypeObject *type = Py_TYPE((PyObject*)obj);\
932 assert(__Pyx_PyType_HasFeature(type, Py_TPFLAGS_HEAPTYPE));\
933 PyObject_GC_Del(obj);\
937#define __Pyx_PyHeapTypeObject_GC_Del(obj) PyObject_GC_Del(obj)
939#if CYTHON_COMPILING_IN_LIMITED_API
940 #define __Pyx_PyUnicode_READY(op) (0)
941 #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i)
942 #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) ((void)u, 1114111U)
943 #define __Pyx_PyUnicode_KIND(u) ((void)u, (0))
944 #define __Pyx_PyUnicode_KIND_04(u) __Pyx_PyUnicode_KIND(u)
945 #define __Pyx_PyUnicode_DATA(u) ((void*)u)
946 #define __Pyx_PyUnicode_READ(k, d, i) ((void)k, PyUnicode_ReadChar((PyObject*)(d), i))
947 #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GetLength(u))
949 #if PY_VERSION_HEX >= 0x030C0000
950 #define __Pyx_PyUnicode_READY(op) (0)
952 #define __Pyx_PyUnicode_READY(op) (likely(PyUnicode_IS_READY(op)) ?\
953 0 : _PyUnicode_Ready((PyObject *)(op)))
955 #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
956 #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u) PyUnicode_MAX_CHAR_VALUE(u)
957 #define __Pyx_PyUnicode_KIND(u) ((int)PyUnicode_KIND(u))
958 #define __Pyx_PyUnicode_DATA(u) PyUnicode_DATA(u)
959 #define __Pyx_PyUnicode_READ(k, d, i) PyUnicode_READ(k, d, i)
960 #define __Pyx_PyUnicode_WRITE(k, d, i, ch) PyUnicode_WRITE(k, d, i, (Py_UCS4) ch)
961 #if PY_VERSION_HEX >= 0x030C0000
962 #define __Pyx_PyUnicode_IS_TRUE(u) (0 != PyUnicode_GET_LENGTH(u))
964 #if CYTHON_COMPILING_IN_CPYTHON
965 #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : ((PyCompactUnicodeObject *)(u))->wstr_length))
967 #define __Pyx_PyUnicode_IS_TRUE(u) (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
970 static CYTHON_INLINE
int __Pyx_PyUnicode_KIND_04(PyObject *o) {
971 return __Pyx_PyUnicode_KIND(o) - (int) !!PyUnicode_IS_ASCII(o);
974#if CYTHON_COMPILING_IN_PYPY
975 #define __Pyx_PyUnicode_Concat(a, b) PyNumber_Add(a, b)
976 #define __Pyx_PyUnicode_ConcatSafe(a, b) PyNumber_Add(a, b)
978 #define __Pyx_PyUnicode_Concat(a, b) PyUnicode_Concat(a, b)
979 #define __Pyx_PyUnicode_ConcatSafe(a, b) ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\
980 PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b))
982#if CYTHON_COMPILING_IN_PYPY
983 #if !defined(PyUnicode_DecodeUnicodeEscape)
984 #define PyUnicode_DecodeUnicodeEscape(s, size, errors) PyUnicode_Decode(s, size, "unicode_escape", errors)
986 #if !defined(PyUnicode_Contains)
987 #define PyUnicode_Contains(u, s) PySequence_Contains(u, s)
989 #if !defined(PyByteArray_Check)
990 #define PyByteArray_Check(obj) PyObject_TypeCheck(obj, &PyByteArray_Type)
992 #if !defined(PyObject_Format)
993 #define PyObject_Format(obj, fmt) PyObject_CallMethod(obj, "__format__", "O", fmt)
996#define __Pyx_PyUnicode_FormatSafe(a, b) ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
997#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
998 #define __Pyx_PySequence_ListKeepNew(obj)\
999 (likely(PyList_CheckExact(obj) && PyUnstable_Object_IsUniquelyReferenced(obj)) ? __Pyx_NewRef(obj) : PySequence_List(obj))
1000#elif CYTHON_COMPILING_IN_CPYTHON
1001 #define __Pyx_PySequence_ListKeepNew(obj)\
1002 (likely(PyList_CheckExact(obj) && Py_REFCNT(obj) == 1) ? __Pyx_NewRef(obj) : PySequence_List(obj))
1004 #define __Pyx_PySequence_ListKeepNew(obj) PySequence_List(obj)
1006#ifndef PySet_CheckExact
1007 #define PySet_CheckExact(obj) Py_IS_TYPE(obj, &PySet_Type)
1009enum __Pyx_ReferenceSharing {
1010 __Pyx_ReferenceSharing_DefinitelyUnique,
1011 __Pyx_ReferenceSharing_OwnStrongReference,
1012 __Pyx_ReferenceSharing_FunctionArgument,
1013 __Pyx_ReferenceSharing_SharedReference,
1015#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && PY_VERSION_HEX >= 0x030E0000
1016#define __Pyx_IS_UNIQUELY_REFERENCED(o, sharing)\
1017 (sharing == __Pyx_ReferenceSharing_DefinitelyUnique ? 1 :\
1018 (sharing == __Pyx_ReferenceSharing_FunctionArgument ? PyUnstable_Object_IsUniqueReferencedTemporary(o) :\
1019 (sharing == __Pyx_ReferenceSharing_OwnStrongReference ? PyUnstable_Object_IsUniquelyReferenced(o) : 0)))
1020#elif (CYTHON_COMPILING_IN_CPYTHON && !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING) || CYTHON_COMPILING_IN_LIMITED_API
1021#define __Pyx_IS_UNIQUELY_REFERENCED(o, sharing) (((void)sharing), Py_REFCNT(o) == 1)
1023#define __Pyx_IS_UNIQUELY_REFERENCED(o, sharing) (((void)o), ((void)sharing), 0)
1025#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
1026 #define __Pyx_PyList_GetItemRef(o, i) PyList_GetItemRef(o, i)
1027#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
1028 #if CYTHON_COMPILING_IN_LIMITED_API || !CYTHON_ASSUME_SAFE_MACROS
1029 #define __Pyx_PyList_GetItemRef(o, i) (likely((i) >= 0) ? PySequence_GetItem(o, i) : (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL))
1031 #define __Pyx_PyList_GetItemRef(o, i) PySequence_ITEM(o, i)
1033#elif CYTHON_COMPILING_IN_LIMITED_API || !(CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE)
1034 #define __Pyx_PyList_GetItemRef(o, i) __Pyx_XNewRef(PyList_GetItem(o, i))
1036 #define __Pyx_PyList_GetItemRef(o, i) (likely(__Pyx_is_valid_index(i, PyList_GET_SIZE(o))) ?\
1037 __Pyx_NewRef(PyList_GET_ITEM(o, i)) : (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL))
1039#if CYTHON_AVOID_BORROWED_REFS || CYTHON_COMPILING_IN_LIMITED_API
1040 #define __Pyx_PyList_GET_ITEM_REF(o, i, unsafe_shared) ((void)(unsafe_shared),\
1041 __Pyx_PyList_GetItemRef(o, i))
1042#elif CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
1043 #if CYTHON_ASSUME_SAFE_MACROS
1044 #define __Pyx_PyList_GET_ITEM_REF(o, i, unsafe_shared) (\
1045 __Pyx_IS_UNIQUELY_REFERENCED(o, unsafe_shared) ?\
1046 __Pyx_NewRef(PyList_GET_ITEM(o, i)) : __Pyx_PyList_GetItemRef(o, i))
1048 #define __Pyx_PyList_GET_ITEM_REF(o, i, unsafe_shared) (\
1049 __Pyx_IS_UNIQUELY_REFERENCED(o, unsafe_shared) ?\
1050 __Pyx_XNewRef(PyList_GetItem(o, i)) : __Pyx_PyList_GetItemRef(o, i))
1052#elif CYTHON_ASSUME_SAFE_MACROS
1053 #define __Pyx_PyList_GET_ITEM_REF(o, i, unsafe_shared) ((void)(unsafe_shared),\
1054 __Pyx_NewRef(PyList_GET_ITEM(o, i)))
1056 #define __Pyx_PyList_GET_ITEM_REF(o, i, unsafe_shared) ((void)(unsafe_shared),\
1057 __Pyx_XNewRef(PyList_GetItem(o, i)))
1059#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
1060#define __Pyx_PyDict_GetItemRef(dict, key, result) PyDict_GetItemRef(dict, key, result)
1061#elif CYTHON_AVOID_BORROWED_REFS || CYTHON_AVOID_THREAD_UNSAFE_BORROWED_REFS
1062static CYTHON_INLINE
int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) {
1063 *result = PyObject_GetItem(dict, key);
1064 if (*result == NULL) {
1065 if (PyErr_ExceptionMatches(PyExc_KeyError)) {
1074static CYTHON_INLINE
int __Pyx_PyDict_GetItemRef(PyObject *dict, PyObject *key, PyObject **result) {
1075 *result = PyDict_GetItemWithError(dict, key);
1076 if (*result == NULL) {
1077 return PyErr_Occurred() ? -1 : 0;
1083#if defined(CYTHON_DEBUG_VISIT_CONST) && CYTHON_DEBUG_VISIT_CONST
1084 #define __Pyx_VISIT_CONST(obj) Py_VISIT(obj)
1086 #define __Pyx_VISIT_CONST(obj)
1088#if CYTHON_ASSUME_SAFE_MACROS
1089 #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i)
1090 #define __Pyx_PySequence_SIZE(seq) Py_SIZE(seq)
1091 #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0))
1092 #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GET_ITEM(o, i)
1093 #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0))
1094 #define __Pyx_PyList_GET_ITEM(o, i) PyList_GET_ITEM(o, i)
1096 #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i)
1097 #define __Pyx_PySequence_SIZE(seq) PySequence_Size(seq)
1098 #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v)
1099 #define __Pyx_PyTuple_GET_ITEM(o, i) PyTuple_GetItem(o, i)
1100 #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v)
1101 #define __Pyx_PyList_GET_ITEM(o, i) PyList_GetItem(o, i)
1103#if CYTHON_ASSUME_SAFE_SIZE
1104 #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o)
1105 #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o)
1106 #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o)
1107 #define __Pyx_PyDict_GET_SIZE(o) PyDict_GET_SIZE(o)
1108 #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o)
1109 #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o)
1110 #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GET_LENGTH(o)
1112 #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o)
1113 #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o)
1114 #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o)
1115 #define __Pyx_PyDict_GET_SIZE(o) PyDict_Size(o)
1116 #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o)
1117 #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o)
1118 #define __Pyx_PyUnicode_GET_LENGTH(o) PyUnicode_GetLength(o)
1120#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_InternFromString)
1121 #define PyUnicode_InternFromString(s) PyUnicode_FromString(s)
1123#define __Pyx_PyLong_FromHash_t PyLong_FromSsize_t
1124#define __Pyx_PyLong_AsHash_t __Pyx_PyIndex_AsSsize_t
1125#if __PYX_LIMITED_VERSION_HEX >= 0x030A0000
1126 #define __Pyx_PySendResult PySendResult
1132 } __Pyx_PySendResult;
1134#if CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX < 0x030A00A3
1135 typedef __Pyx_PySendResult (*__Pyx_pyiter_sendfunc)(PyObject *iter, PyObject *value, PyObject **result);
1137 #define __Pyx_pyiter_sendfunc sendfunc
1139#if !CYTHON_USE_AM_SEND
1140#define __PYX_HAS_PY_AM_SEND 0
1141#elif __PYX_LIMITED_VERSION_HEX >= 0x030A0000
1142#define __PYX_HAS_PY_AM_SEND 1
1144#define __PYX_HAS_PY_AM_SEND 2
1146#if __PYX_HAS_PY_AM_SEND < 2
1147 #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
1153 __Pyx_pyiter_sendfunc am_send;
1154 } __Pyx_PyAsyncMethodsStruct;
1155 #define __Pyx_SlotTpAsAsync(s) ((PyAsyncMethods*)(s))
1157#if CYTHON_USE_AM_SEND && PY_VERSION_HEX < 0x030A00F0
1158 #define __Pyx_TPFLAGS_HAVE_AM_SEND (1UL << 21)
1160 #define __Pyx_TPFLAGS_HAVE_AM_SEND (0)
1162#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030A0000
1166PyAPI_FUNC(
void *) PyMem_Calloc(
size_t nelem,
size_t elsize);
1168#if CYTHON_COMPILING_IN_LIMITED_API
1169static int __Pyx_init_co_variable(PyObject *inspect,
const char* name,
int *write_to) {
1171 PyObject *py_value = PyObject_GetAttrString(inspect, name);
1172 if (!py_value)
return 0;
1173 value = (int) PyLong_AsLong(py_value);
1174 Py_DECREF(py_value);
1176 return value != -1 || !PyErr_Occurred();
1178static int __Pyx_init_co_variables(
void) {
1181 inspect = PyImport_ImportModule(
"inspect");
1183#if !defined(CO_OPTIMIZED)
1184 __Pyx_init_co_variable(inspect,
"CO_OPTIMIZED", &CO_OPTIMIZED) &&
1186#if !defined(CO_NEWLOCALS)
1187 __Pyx_init_co_variable(inspect,
"CO_NEWLOCALS", &CO_NEWLOCALS) &&
1189#if !defined(CO_VARARGS)
1190 __Pyx_init_co_variable(inspect,
"CO_VARARGS", &CO_VARARGS) &&
1192#if !defined(CO_VARKEYWORDS)
1193 __Pyx_init_co_variable(inspect,
"CO_VARKEYWORDS", &CO_VARKEYWORDS) &&
1195#if !defined(CO_ASYNC_GENERATOR)
1196 __Pyx_init_co_variable(inspect,
"CO_ASYNC_GENERATOR", &CO_ASYNC_GENERATOR) &&
1198#if !defined(CO_GENERATOR)
1199 __Pyx_init_co_variable(inspect,
"CO_GENERATOR", &CO_GENERATOR) &&
1201#if !defined(CO_COROUTINE)
1202 __Pyx_init_co_variable(inspect,
"CO_COROUTINE", &CO_COROUTINE) &&
1206 return result ? 0 : -1;
1208static int __Pyx_init_tpflags_bitcount(
unsigned long flag) {
1211 count += (int) (flag & 1);
1216static int __Pyx_init_tpflags_variables(
void) {
1217 if (__Pyx_Runtime_TPFLAGS_SEQUENCE != 0 && __Pyx_Runtime_TPFLAGS_MAPPING != 0) {
1220 PyObject *collections_abc = PyImport_ImportModule(
"collections.abc");
1221 if (!collections_abc)
return -1;
1223 PyObject *sequence = NULL, *mapping = NULL;
1224#if __PYX_LIMITED_VERSION_HEX >= 0x030D0000
1225 if (PyObject_GetOptionalAttrString(collections_abc,
"Sequence", &sequence) != 1)
goto fail;
1226 if (PyObject_GetOptionalAttrString(collections_abc,
"Mapping", &mapping) != 1)
goto fail;
1228 sequence = PyObject_GetAttrString(collections_abc,
"Sequence");
1229 if (!sequence)
goto fail_attr_lookup;
1230 mapping = PyObject_GetAttrString(collections_abc,
"Mapping");
1231 if (!mapping)
goto fail_attr_lookup;
1233 if (!PyType_Check(sequence) || !PyType_Check(mapping))
goto fail;
1235 unsigned long sequence_flags = PyType_GetFlags((PyTypeObject*)sequence);
1236 unsigned long mapping_flags = PyType_GetFlags((PyTypeObject*)mapping);
1237 unsigned long mutual_flags = sequence_flags & mapping_flags;
1238 sequence_flags = sequence_flags ^ mutual_flags;
1239 mapping_flags = mapping_flags ^ mutual_flags;
1240 if (__Pyx_Runtime_TPFLAGS_SEQUENCE == 0 && __Pyx_init_tpflags_bitcount(sequence_flags) == 1) {
1241 __Pyx_Runtime_TPFLAGS_SEQUENCE = sequence_flags;
1243 if (__Pyx_Runtime_TPFLAGS_MAPPING == 0 && __Pyx_init_tpflags_bitcount(mapping_flags) == 1) {
1244 __Pyx_Runtime_TPFLAGS_MAPPING = mapping_flags;
1248 Py_XDECREF(mapping);
1249 Py_XDECREF(sequence);
1250 Py_DECREF(collections_abc);
1252#if __PYX_LIMITED_VERSION_HEX < 0x030D0000
1254 if (PyErr_ExceptionMatches(PyExc_AttributeError)) {
1259 result = PyErr_Occurred() ? -1 : 0;
1263static int __Pyx_init_co_variables(
void) {
1266static int __Pyx_init_tpflags_variables(
void) {
1272#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS)
1273 #ifndef _USE_MATH_DEFINES
1274 #define _USE_MATH_DEFINES
1278#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL)
1279#define __Pyx_truncl trunc
1281#define __Pyx_truncl truncl
1284#ifndef CYTHON_CLINE_IN_TRACEBACK_RUNTIME
1285#define CYTHON_CLINE_IN_TRACEBACK_RUNTIME 1
1287#ifndef CYTHON_CLINE_IN_TRACEBACK
1288#define CYTHON_CLINE_IN_TRACEBACK CYTHON_CLINE_IN_TRACEBACK_RUNTIME
1290#if CYTHON_CLINE_IN_TRACEBACK
1291#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; __pyx_clineno = __LINE__; (void) __pyx_clineno; }
1293#define __PYX_MARK_ERR_POS(f_index, lineno) { __pyx_filename = __pyx_f[f_index]; (void) __pyx_filename; __pyx_lineno = lineno; (void) __pyx_lineno; (void) __pyx_clineno; }
1295#define __PYX_ERR(f_index, lineno, Ln_error) \
1296 { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }
1298#ifdef CYTHON_EXTERN_C
1299 #undef __PYX_EXTERN_C
1300 #define __PYX_EXTERN_C CYTHON_EXTERN_C
1301#elif defined(__PYX_EXTERN_C)
1303 #pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.")
1305 #warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.
1309 #define __PYX_EXTERN_C extern "C"
1311 #define __PYX_EXTERN_C extern
1315#define __PYX_HAVE__cpostprocessing
1316#define __PYX_HAVE_API__cpostprocessing
1323#include "numpy/arrayobject.h"
1324#include "numpy/ndarrayobject.h"
1325#include "numpy/ndarraytypes.h"
1326#include "numpy/arrayscalars.h"
1327#include "numpy/ufuncobject.h"
1333#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS)
1334#define CYTHON_WITHOUT_ASSERTIONS
1337#ifdef CYTHON_FREETHREADING_COMPATIBLE
1338#if CYTHON_FREETHREADING_COMPATIBLE
1339#define __Pyx_FREETHREADING_COMPATIBLE Py_MOD_GIL_NOT_USED
1341#define __Pyx_FREETHREADING_COMPATIBLE Py_MOD_GIL_USED
1344#define __Pyx_FREETHREADING_COMPATIBLE Py_MOD_GIL_USED
1346#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0
1347#define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0
1348#define __PYX_DEFAULT_STRING_ENCODING ""
1349#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString
1350#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
1351#define __Pyx_uchar_cast(c) ((unsigned char)c)
1352#define __Pyx_long_cast(x) ((long)x)
1353#define __Pyx_fits_Py_ssize_t(v, type, is_signed) (\
1354 (sizeof(type) < sizeof(Py_ssize_t)) ||\
1355 (sizeof(type) > sizeof(Py_ssize_t) &&\
1356 likely(v < (type)PY_SSIZE_T_MAX ||\
1357 v == (type)PY_SSIZE_T_MAX) &&\
1358 (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\
1359 v == (type)PY_SSIZE_T_MIN))) ||\
1360 (sizeof(type) == sizeof(Py_ssize_t) &&\
1361 (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\
1362 v == (type)PY_SSIZE_T_MAX))) )
1363static CYTHON_INLINE
int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) {
1364 return (
size_t) i < (size_t) limit;
1366#if defined (__cplusplus) && __cplusplus >= 201103L
1368 #define __Pyx_sst_abs(value) std::abs(value)
1369#elif SIZEOF_INT >= SIZEOF_SIZE_T
1370 #define __Pyx_sst_abs(value) abs(value)
1371#elif SIZEOF_LONG >= SIZEOF_SIZE_T
1372 #define __Pyx_sst_abs(value) labs(value)
1373#elif defined (_MSC_VER)
1374 #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
1375#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
1376 #define __Pyx_sst_abs(value) llabs(value)
1377#elif defined (__GNUC__)
1378 #define __Pyx_sst_abs(value) __builtin_llabs(value)
1380 #define __Pyx_sst_abs(value) ((value<0) ? -value : value)
1382static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(
const char *
s);
1383static CYTHON_INLINE
const char* __Pyx_PyObject_AsString(PyObject*);
1384static CYTHON_INLINE
const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
1385static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(
const char*);
1386#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
1387#define __Pyx_PyBytes_FromString PyBytes_FromString
1388#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
1389static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(
const char*);
1390#if CYTHON_ASSUME_SAFE_MACROS
1391 #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AS_STRING(s))
1392 #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AS_STRING(s))
1393 #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AS_STRING(s))
1394 #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AS_STRING(s))
1395 #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AS_STRING(s))
1396 #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AS_STRING(s))
1397 #define __Pyx_PyByteArray_AsString(s) PyByteArray_AS_STRING(s)
1399 #define __Pyx_PyBytes_AsWritableString(s) ((char*) PyBytes_AsString(s))
1400 #define __Pyx_PyBytes_AsWritableSString(s) ((signed char*) PyBytes_AsString(s))
1401 #define __Pyx_PyBytes_AsWritableUString(s) ((unsigned char*) PyBytes_AsString(s))
1402 #define __Pyx_PyBytes_AsString(s) ((const char*) PyBytes_AsString(s))
1403 #define __Pyx_PyBytes_AsSString(s) ((const signed char*) PyBytes_AsString(s))
1404 #define __Pyx_PyBytes_AsUString(s) ((const unsigned char*) PyBytes_AsString(s))
1405 #define __Pyx_PyByteArray_AsString(s) PyByteArray_AsString(s)
1407#define __Pyx_PyObject_AsWritableString(s) ((char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
1408#define __Pyx_PyObject_AsWritableSString(s) ((signed char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
1409#define __Pyx_PyObject_AsWritableUString(s) ((unsigned char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
1410#define __Pyx_PyObject_AsSString(s) ((const signed char*) __Pyx_PyObject_AsString(s))
1411#define __Pyx_PyObject_AsUString(s) ((const unsigned char*) __Pyx_PyObject_AsString(s))
1412#define __Pyx_PyObject_FromCString(s) __Pyx_PyObject_FromString((const char*)s)
1413#define __Pyx_PyBytes_FromCString(s) __Pyx_PyBytes_FromString((const char*)s)
1414#define __Pyx_PyByteArray_FromCString(s) __Pyx_PyByteArray_FromString((const char*)s)
1415#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
1416#define __Pyx_PyUnicode_FromOrdinal(o) PyUnicode_FromOrdinal((int)o)
1417#define __Pyx_PyUnicode_AsUnicode PyUnicode_AsUnicode
1418static CYTHON_INLINE PyObject *__Pyx_NewRef(PyObject *obj) {
1419#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_NewRef)
1420 return Py_NewRef(obj);
1426static CYTHON_INLINE PyObject *__Pyx_XNewRef(PyObject *obj) {
1427#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030a0000 || defined(Py_XNewRef)
1428 return Py_XNewRef(obj);
1434static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(
int b);
1435static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(
long b);
1436static CYTHON_INLINE
int __Pyx_PyObject_IsTrue(PyObject*);
1437static CYTHON_INLINE
int __Pyx_PyObject_IsTrueAndDecref(PyObject*);
1438static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x);
1439#define __Pyx_PyObject_RichCompareBool(a,b,cmp) __Pyx_PyObject_IsTrueAndDecref(PyObject_RichCompare((a),(b),(cmp)))
1440#define __Pyx_PySequence_Tuple(obj)\
1441 (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
1442static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
1443static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(
size_t);
1444static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*);
1445#if CYTHON_ASSUME_SAFE_MACROS
1446#define __Pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
1447#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AS_DOUBLE(x)
1448#define __Pyx_PyFloat_IsNonZero(x) (PyFloat_AS_DOUBLE(x) != 0.0)
1450#define __Pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
1451#define __Pyx_PyFloat_AS_DOUBLE(x) PyFloat_AsDouble(x)
1452#define __Pyx_PyFloat_IsNonZero(x) PyObject_IsTrue(x)
1454#define __Pyx_PyFloat_AsFloat(x) ((float) __Pyx_PyFloat_AsDouble(x))
1455#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x))
1456#if CYTHON_USE_PYLONG_INTERNALS
1457 #if PY_VERSION_HEX >= 0x030C00A7
1458 #ifndef _PyLong_SIGN_MASK
1459 #define _PyLong_SIGN_MASK 3
1461 #ifndef _PyLong_NON_SIZE_BITS
1462 #define _PyLong_NON_SIZE_BITS 3
1464 #define __Pyx_PyLong_SignBits(x) ((int) (((PyLongObject*)x)->long_value.lv_tag & _PyLong_SIGN_MASK))
1465 #define __Pyx_PyLong_Sign(x) (1 - __Pyx_PyLong_SignBits(x))
1466 #define __Pyx_PyLong_IsNeg(x) ((__Pyx_PyLong_SignBits(x) & 2) != 0)
1467 #define __Pyx_PyLong_IsNonNeg(x) (!__Pyx_PyLong_IsNeg(x))
1468 #define __Pyx_PyLong_IsZero(x) (__Pyx_PyLong_SignBits(x) & 1)
1469 #define __Pyx_PyLong_IsPos(x) (__Pyx_PyLong_SignBits(x) == 0)
1470 #define __Pyx_PyLong_CompactValueUnsigned(x) (__Pyx_PyLong_Digits(x)[0])
1471 #define __Pyx_PyLong_DigitCount(x) ((Py_ssize_t) (((PyLongObject*)x)->long_value.lv_tag >> _PyLong_NON_SIZE_BITS))
1472 #define __Pyx_PyLong_SignedDigitCount(x)\
1473 (((Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x))
1474 #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue)
1475 #define __Pyx_PyLong_IsCompact(x) PyUnstable_Long_IsCompact((PyLongObject*) x)
1476 #define __Pyx_PyLong_CompactValue(x) PyUnstable_Long_CompactValue((PyLongObject*) x)
1478 #define __Pyx_PyLong_IsCompact(x) (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS))
1479 #define __Pyx_PyLong_CompactValue(x) (((Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0])
1481 static CYTHON_INLINE Py_ssize_t __Pyx_PyLong_CompareSignAndSize(PyObject *a, PyObject *b) {
1482 uintptr_t tag_a = ((PyLongObject*)a)->long_value.lv_tag;
1483 uintptr_t tag_b = ((PyLongObject*)b)->long_value.lv_tag;
1484 if (tag_a == tag_b)
return 0;
1485 int sign_a = (int) (tag_a & _PyLong_SIGN_MASK);
1486 int sign_b = (int) (tag_b & _PyLong_SIGN_MASK);
1487 if (sign_a > sign_b)
return -1;
1488 if (sign_a < sign_b)
return 1;
1489 Py_ssize_t size_a = (Py_ssize_t) (tag_a >> _PyLong_NON_SIZE_BITS);
1490 Py_ssize_t size_b = (Py_ssize_t) (tag_b >> _PyLong_NON_SIZE_BITS);
1491 return (1 - sign_a) * (size_a - size_b);
1493 typedef Py_ssize_t __Pyx_compact_pylong;
1494 typedef size_t __Pyx_compact_upylong;
1496 #define __Pyx_PyLong_Sign(x) ((int) ((Py_SIZE(x) == 0) ? 0 : (Py_SIZE(x) < 0) ? -1 : 1))
1497 #define __Pyx_PyLong_IsNeg(x) (Py_SIZE(x) < 0)
1498 #define __Pyx_PyLong_IsNonNeg(x) (Py_SIZE(x) >= 0)
1499 #define __Pyx_PyLong_IsZero(x) (Py_SIZE(x) == 0)
1500 #define __Pyx_PyLong_IsPos(x) (Py_SIZE(x) > 0)
1501 #define __Pyx_PyLong_CompactValueUnsigned(x) ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0])
1502 #define __Pyx_PyLong_DigitCount(x) __Pyx_sst_abs(Py_SIZE(x))
1503 #define __Pyx_PyLong_SignedDigitCount(x) Py_SIZE(x)
1504 #define __Pyx_PyLong_IsCompact(x) (Py_SIZE(x) == 0 || Py_SIZE(x) == 1 || Py_SIZE(x) == -1)
1505 #define __Pyx_PyLong_CompactValue(x)\
1506 ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0]))
1507 #define __Pyx_PyLong_CompareSignAndSize(a, b) (Py_SIZE(a) - Py_SIZE(b))
1508 typedef sdigit __Pyx_compact_pylong;
1509 typedef digit __Pyx_compact_upylong;
1511 #if PY_VERSION_HEX >= 0x030C00A5
1512 #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->long_value.ob_digit)
1514 #define __Pyx_PyLong_Digits(x) (((PyLongObject*)x)->ob_digit)
1516 #define __Pyx_PyLong_IsNonZero(x) (!__Pyx_PyLong_IsZero(x))
1518 #define __Pyx_PyLong_IsNonZero(x) PyObject_IsTrue(x)
1520#if __PYX_DEFAULT_STRING_ENCODING_IS_UTF8
1521 #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL)
1522#elif __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
1523 #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeASCII(c_str, size, NULL)
1525 #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
1530#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)))
1531 #define likely(x) __builtin_expect(!!(x), 1)
1532 #define unlikely(x) __builtin_expect(!!(x), 0)
1534 #define likely(x) (x)
1535 #define unlikely(x) (x)
1539#if __cplusplus > 201103L
1540#include <type_traits>
1542template <
typename T>
1543static void __Pyx_pretend_to_initialize(
T* ptr) {
1544#if __cplusplus > 201103L
1545 if ((std::is_trivially_default_constructible<T>::value))
1551static CYTHON_INLINE
void __Pyx_pretend_to_initialize(
void* ptr) { (void)ptr; }
1555#if !CYTHON_USE_MODULE_STATE
1556static PyObject *__pyx_m = NULL;
1558static const char *
const __pyx_cfilenm = __FILE__;
1561#if !defined(CYTHON_CCOMPLEX)
1562 #if defined(__cplusplus)
1563 #define CYTHON_CCOMPLEX 1
1564 #elif (defined(_Complex_I) && !defined(_MSC_VER)) || ((defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) && !defined(__STDC_NO_COMPLEX__) && !defined(_MSC_VER))
1565 #define CYTHON_CCOMPLEX 1
1567 #define CYTHON_CCOMPLEX 0
1574 #include <complex.h>
1577#if CYTHON_CCOMPLEX && !defined(__cplusplus) && defined(__sun__) && defined(__GNUC__)
1579 #define _Complex_I 1.0fj
1584static const char*
const __pyx_f[] = {
1585 "proteus/cpostprocessing.pyx",
1586 "../miniforge3/envs/proteus-jupyterhub/lib/python3.14/site-packages/numpy/__init__.cython-30.pxd",
1592#include <pythread.h>
1593#ifndef CYTHON_ATOMICS
1594 #define CYTHON_ATOMICS 1
1596#define __PYX_CYTHON_ATOMICS_ENABLED() CYTHON_ATOMICS
1597#define __PYX_GET_CYTHON_COMPILING_IN_CPYTHON_FREETHREADING() CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
1598#define __pyx_atomic_int_type int
1599#define __pyx_nonatomic_int_type int
1600#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\
1601 (__STDC_VERSION__ >= 201112L) &&\
1602 !defined(__STDC_NO_ATOMICS__))
1603 #include <stdatomic.h>
1604#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\
1605 (__cplusplus >= 201103L) ||\
1606 (defined(_MSC_VER) && _MSC_VER >= 1700)))
1609#if CYTHON_ATOMICS && (defined(__STDC_VERSION__) &&\
1610 (__STDC_VERSION__ >= 201112L) &&\
1611 !defined(__STDC_NO_ATOMICS__) &&\
1612 ATOMIC_INT_LOCK_FREE == 2)
1613 #undef __pyx_atomic_int_type
1614 #define __pyx_atomic_int_type atomic_int
1615 #define __pyx_atomic_ptr_type atomic_uintptr_t
1616 #define __pyx_nonatomic_ptr_type uintptr_t
1617 #define __pyx_atomic_incr_relaxed(value) atomic_fetch_add_explicit(value, 1, memory_order_relaxed)
1618 #define __pyx_atomic_incr_acq_rel(value) atomic_fetch_add_explicit(value, 1, memory_order_acq_rel)
1619 #define __pyx_atomic_decr_acq_rel(value) atomic_fetch_sub_explicit(value, 1, memory_order_acq_rel)
1620 #define __pyx_atomic_sub(value, arg) atomic_fetch_sub(value, arg)
1621 #define __pyx_atomic_int_cmp_exchange(value, expected, desired) atomic_compare_exchange_strong(value, expected, desired)
1622 #define __pyx_atomic_load(value) atomic_load(value)
1623 #define __pyx_atomic_store(value, new_value) atomic_store(value, new_value)
1624 #define __pyx_atomic_pointer_load_relaxed(value) atomic_load_explicit(value, memory_order_relaxed)
1625 #define __pyx_atomic_pointer_load_acquire(value) atomic_load_explicit(value, memory_order_acquire)
1626 #define __pyx_atomic_pointer_exchange(value, new_value) atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value)
1627 #define __pyx_atomic_pointer_cmp_exchange(value, expected, desired) atomic_compare_exchange_strong(value, expected, desired)
1628 #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER)
1629 #pragma message ("Using standard C atomics")
1630 #elif defined(__PYX_DEBUG_ATOMICS)
1631 #warning "Using standard C atomics"
1633#elif CYTHON_ATOMICS && (defined(__cplusplus) && (\
1634 (__cplusplus >= 201103L) ||\
1636 (defined(_MSC_VER) && _MSC_VER >= 1700)) &&\
1637 ATOMIC_INT_LOCK_FREE == 2)
1638 #undef __pyx_atomic_int_type
1639 #define __pyx_atomic_int_type std::atomic_int
1640 #define __pyx_atomic_ptr_type std::atomic_uintptr_t
1641 #define __pyx_nonatomic_ptr_type uintptr_t
1642 #define __pyx_atomic_incr_relaxed(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_relaxed)
1643 #define __pyx_atomic_incr_acq_rel(value) std::atomic_fetch_add_explicit(value, 1, std::memory_order_acq_rel)
1644 #define __pyx_atomic_decr_acq_rel(value) std::atomic_fetch_sub_explicit(value, 1, std::memory_order_acq_rel)
1645 #define __pyx_atomic_sub(value, arg) std::atomic_fetch_sub(value, arg)
1646 #define __pyx_atomic_int_cmp_exchange(value, expected, desired) std::atomic_compare_exchange_strong(value, expected, desired)
1647 #define __pyx_atomic_load(value) std::atomic_load(value)
1648 #define __pyx_atomic_store(value, new_value) std::atomic_store(value, new_value)
1649 #define __pyx_atomic_pointer_load_relaxed(value) std::atomic_load_explicit(value, std::memory_order_relaxed)
1650 #define __pyx_atomic_pointer_load_acquire(value) std::atomic_load_explicit(value, std::memory_order_acquire)
1651 #define __pyx_atomic_pointer_exchange(value, new_value) std::atomic_exchange(value, (__pyx_nonatomic_ptr_type)new_value)
1652 #define __pyx_atomic_pointer_cmp_exchange(value, expected, desired) std::atomic_compare_exchange_strong(value, expected, desired)
1653 #if defined(__PYX_DEBUG_ATOMICS) && defined(_MSC_VER)
1654 #pragma message ("Using standard C++ atomics")
1655 #elif defined(__PYX_DEBUG_ATOMICS)
1656 #warning "Using standard C++ atomics"
1658#elif CYTHON_ATOMICS && (__GNUC__ >= 5 || (__GNUC__ == 4 &&\
1659 (__GNUC_MINOR__ > 1 ||\
1660 (__GNUC_MINOR__ == 1 && __GNUC_PATCHLEVEL__ >= 2))))
1661 #define __pyx_atomic_ptr_type void*
1662 #define __pyx_nonatomic_ptr_type void*
1663 #define __pyx_atomic_incr_relaxed(value) __sync_fetch_and_add(value, 1)
1664 #define __pyx_atomic_incr_acq_rel(value) __sync_fetch_and_add(value, 1)
1665 #define __pyx_atomic_decr_acq_rel(value) __sync_fetch_and_sub(value, 1)
1666 #define __pyx_atomic_sub(value, arg) __sync_fetch_and_sub(value, arg)
1667 static CYTHON_INLINE
int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) {
1668 __pyx_nonatomic_int_type old = __sync_val_compare_and_swap(value, *expected, desired);
1669 int result = old == *expected;
1673 #define __pyx_atomic_load(value) __sync_fetch_and_add(value, 0)
1674 #define __pyx_atomic_store(value, new_value) __sync_lock_test_and_set(value, new_value)
1675 #define __pyx_atomic_pointer_load_relaxed(value) __sync_fetch_and_add(value, 0)
1676 #define __pyx_atomic_pointer_load_acquire(value) __sync_fetch_and_add(value, 0)
1677 #define __pyx_atomic_pointer_exchange(value, new_value) __sync_lock_test_and_set(value, (__pyx_atomic_ptr_type)new_value)
1678 static CYTHON_INLINE
int __pyx_atomic_pointer_cmp_exchange(__pyx_atomic_ptr_type* value, __pyx_nonatomic_ptr_type* expected, __pyx_nonatomic_ptr_type desired) {
1679 __pyx_nonatomic_ptr_type old = __sync_val_compare_and_swap(value, *expected, desired);
1680 int result = old == *expected;
1684 #ifdef __PYX_DEBUG_ATOMICS
1685 #warning "Using GNU atomics"
1687#elif CYTHON_ATOMICS && defined(_MSC_VER)
1689 #undef __pyx_atomic_int_type
1690 #define __pyx_atomic_int_type long
1691 #define __pyx_atomic_ptr_type void*
1692 #undef __pyx_nonatomic_int_type
1693 #define __pyx_nonatomic_int_type long
1694 #define __pyx_nonatomic_ptr_type void*
1695 #pragma intrinsic (_InterlockedExchangeAdd, _InterlockedExchange, _InterlockedCompareExchange, _InterlockedCompareExchangePointer, _InterlockedExchangePointer)
1696 #define __pyx_atomic_incr_relaxed(value) _InterlockedExchangeAdd(value, 1)
1697 #define __pyx_atomic_incr_acq_rel(value) _InterlockedExchangeAdd(value, 1)
1698 #define __pyx_atomic_decr_acq_rel(value) _InterlockedExchangeAdd(value, -1)
1699 #define __pyx_atomic_sub(value, arg) _InterlockedExchangeAdd(value, -arg)
1700 static CYTHON_INLINE
int __pyx_atomic_int_cmp_exchange(__pyx_atomic_int_type* value, __pyx_nonatomic_int_type* expected, __pyx_nonatomic_int_type desired) {
1701 __pyx_nonatomic_int_type old = _InterlockedCompareExchange(value, desired, *expected);
1702 int result = old == *expected;
1706 #define __pyx_atomic_load(value) _InterlockedExchangeAdd(value, 0)
1707 #define __pyx_atomic_store(value, new_value) _InterlockedExchange(value, new_value)
1708 #define __pyx_atomic_pointer_load_relaxed(value) *(void * volatile *)value
1709 #define __pyx_atomic_pointer_load_acquire(value) _InterlockedCompareExchangePointer(value, 0, 0)
1710 #define __pyx_atomic_pointer_exchange(value, new_value) _InterlockedExchangePointer(value, (__pyx_atomic_ptr_type)new_value)
1711 static CYTHON_INLINE
int __pyx_atomic_pointer_cmp_exchange(__pyx_atomic_ptr_type* value, __pyx_nonatomic_ptr_type* expected, __pyx_nonatomic_ptr_type desired) {
1712 __pyx_atomic_ptr_type old = _InterlockedCompareExchangePointer(value, desired, *expected);
1713 int result = old == *expected;
1717 #ifdef __PYX_DEBUG_ATOMICS
1718 #pragma message ("Using MSVC atomics")
1721 #undef CYTHON_ATOMICS
1722 #define CYTHON_ATOMICS 0
1723 #ifdef __PYX_DEBUG_ATOMICS
1724 #warning "Not using atomics"
1729#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
1730#define __Pyx_PyCriticalSection void*
1731#define __Pyx_PyCriticalSection2 void*
1732#define __Pyx_PyCriticalSection_End(cs)
1733#define __Pyx_PyCriticalSection2_End(cs)
1735#define __Pyx_PyCriticalSection PyCriticalSection
1736#define __Pyx_PyCriticalSection2 PyCriticalSection2
1737#define __Pyx_PyCriticalSection_End PyCriticalSection_End
1738#define __Pyx_PyCriticalSection2_End PyCriticalSection2_End
1742#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
1743#define __Pyx_PyCriticalSection_Begin(cs, arg) (void)(cs)
1744#define __Pyx_PyCriticalSection2_Begin(cs, arg1, arg2) (void)(cs)
1746#define __Pyx_PyCriticalSection_Begin PyCriticalSection_Begin
1747#define __Pyx_PyCriticalSection2_Begin PyCriticalSection2_Begin
1749#if PY_VERSION_HEX < 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API
1750#define __Pyx_BEGIN_CRITICAL_SECTION(o) {
1751#define __Pyx_END_CRITICAL_SECTION() }
1753#define __Pyx_BEGIN_CRITICAL_SECTION Py_BEGIN_CRITICAL_SECTION
1754#define __Pyx_END_CRITICAL_SECTION Py_END_CRITICAL_SECTION
1758struct __Pyx_StructField_;
1759#define __PYX_BUF_FLAGS_PACKED_STRUCT (1 << 0)
1762 const struct __Pyx_StructField_* fields;
1764 size_t arraysize[8];
1770typedef struct __Pyx_StructField_ {
1771 const __Pyx_TypeInfo* type;
1776 const __Pyx_StructField* field;
1777 size_t parent_offset;
1778} __Pyx_BufFmt_StackElem;
1780 __Pyx_StructField root;
1781 __Pyx_BufFmt_StackElem* head;
1783 size_t new_count, enc_count;
1784 size_t struct_alignment;
1789 char is_valid_array;
1790} __Pyx_BufFmt_Context;
1793#include <structmember.h>
1804typedef npy_int8 __pyx_t_5numpy_int8_t;
1813typedef npy_int16 __pyx_t_5numpy_int16_t;
1822typedef npy_int32 __pyx_t_5numpy_int32_t;
1831typedef npy_int64 __pyx_t_5numpy_int64_t;
1840typedef npy_uint8 __pyx_t_5numpy_uint8_t;
1849typedef npy_uint16 __pyx_t_5numpy_uint16_t;
1858typedef npy_uint32 __pyx_t_5numpy_uint32_t;
1867typedef npy_uint64 __pyx_t_5numpy_uint64_t;
1876typedef npy_float32 __pyx_t_5numpy_float32_t;
1885typedef npy_float64 __pyx_t_5numpy_float64_t;
1894typedef npy_longlong __pyx_t_5numpy_longlong_t;
1903typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t;
1912typedef npy_intp __pyx_t_5numpy_intp_t;
1921typedef npy_uintp __pyx_t_5numpy_uintp_t;
1930typedef npy_double __pyx_t_5numpy_float_t;
1939typedef npy_double __pyx_t_5numpy_double_t;
1948typedef npy_longdouble __pyx_t_5numpy_longdouble_t;
1951#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
1953 typedef ::std::complex< float > __pyx_t_float_complex;
1955 typedef float _Complex __pyx_t_float_complex;
1958 typedef struct {
float real, imag; } __pyx_t_float_complex;
1960static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(
float,
float);
1963#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
1965 typedef ::std::complex< double > __pyx_t_double_complex;
1967 typedef double _Complex __pyx_t_double_complex;
1970 typedef struct {
double real, imag; } __pyx_t_double_complex;
1972static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(
double,
double);
1975#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
1977 typedef ::std::complex< long double > __pyx_t_long_double_complex;
1979 typedef long double _Complex __pyx_t_long_double_complex;
1982 typedef struct {
long double real, imag; } __pyx_t_long_double_complex;
1984static CYTHON_INLINE __pyx_t_long_double_complex __pyx_t_long_double_complex_from_parts(
long double,
long double);
1989struct __pyx_obj_15cpostprocessing_NodeStarFactor;
1998struct __pyx_obj_15cpostprocessing_NodeStarFactor {
2000 NodeStarFactorStruct nsf;
2007#ifndef CYTHON_REFNANNY
2008 #define CYTHON_REFNANNY 0
2012 void (*INCREF)(
void*, PyObject*, Py_ssize_t);
2013 void (*DECREF)(
void*, PyObject*, Py_ssize_t);
2014 void (*GOTREF)(
void*, PyObject*, Py_ssize_t);
2015 void (*GIVEREF)(
void*, PyObject*, Py_ssize_t);
2016 void* (*SetupContext)(
const char*, Py_ssize_t,
const char*);
2017 void (*FinishContext)(
void**);
2018 } __Pyx_RefNannyAPIStruct;
2019 static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;
2020 static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(
const char *modname);
2021 #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL;
2022 #define __Pyx_RefNannySetupContext(name, acquire_gil)\
2024 PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
2025 __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__));\
2026 PyGILState_Release(__pyx_gilstate_save);\
2028 __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__));\
2030 #define __Pyx_RefNannyFinishContextNogil() {\
2031 PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
2032 __Pyx_RefNannyFinishContext();\
2033 PyGILState_Release(__pyx_gilstate_save);\
2035 #define __Pyx_RefNannyFinishContextNogil() {\
2036 PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
2037 __Pyx_RefNannyFinishContext();\
2038 PyGILState_Release(__pyx_gilstate_save);\
2040 #define __Pyx_RefNannyFinishContext()\
2041 __Pyx_RefNanny->FinishContext(&__pyx_refnanny)
2042 #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
2043 #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
2044 #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
2045 #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
2046 #define __Pyx_XINCREF(r) do { if((r) == NULL); else {__Pyx_INCREF(r); }} while(0)
2047 #define __Pyx_XDECREF(r) do { if((r) == NULL); else {__Pyx_DECREF(r); }} while(0)
2048 #define __Pyx_XGOTREF(r) do { if((r) == NULL); else {__Pyx_GOTREF(r); }} while(0)
2049 #define __Pyx_XGIVEREF(r) do { if((r) == NULL); else {__Pyx_GIVEREF(r);}} while(0)
2051 #define __Pyx_RefNannyDeclarations
2052 #define __Pyx_RefNannySetupContext(name, acquire_gil)
2053 #define __Pyx_RefNannyFinishContextNogil()
2054 #define __Pyx_RefNannyFinishContext()
2055 #define __Pyx_INCREF(r) Py_INCREF(r)
2056 #define __Pyx_DECREF(r) Py_DECREF(r)
2057 #define __Pyx_GOTREF(r)
2058 #define __Pyx_GIVEREF(r)
2059 #define __Pyx_XINCREF(r) Py_XINCREF(r)
2060 #define __Pyx_XDECREF(r) Py_XDECREF(r)
2061 #define __Pyx_XGOTREF(r)
2062 #define __Pyx_XGIVEREF(r)
2064#define __Pyx_Py_XDECREF_SET(r, v) do {\
2065 PyObject *tmp = (PyObject *) r;\
2066 r = v; Py_XDECREF(tmp);\
2068#define __Pyx_XDECREF_SET(r, v) do {\
2069 PyObject *tmp = (PyObject *) r;\
2070 r = v; __Pyx_XDECREF(tmp);\
2072#define __Pyx_DECREF_SET(r, v) do {\
2073 PyObject *tmp = (PyObject *) r;\
2074 r = v; __Pyx_DECREF(tmp);\
2076#define __Pyx_CLEAR(r) do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0)
2077#define __Pyx_XCLEAR(r) do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)
2080#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE
2081static _PyErr_StackItem * __Pyx_PyErr_GetTopmostException(PyThreadState *tstate);
2085#if CYTHON_FAST_THREAD_STATE
2086#define __Pyx_PyThreadState_declare PyThreadState *__pyx_tstate;
2087#define __Pyx_PyThreadState_assign __pyx_tstate = __Pyx_PyThreadState_Current;
2088#if PY_VERSION_HEX >= 0x030C00A6
2089#define __Pyx_PyErr_Occurred() (__pyx_tstate->current_exception != NULL)
2090#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->current_exception ? (PyObject*) Py_TYPE(__pyx_tstate->current_exception) : (PyObject*) NULL)
2092#define __Pyx_PyErr_Occurred() (__pyx_tstate->curexc_type != NULL)
2093#define __Pyx_PyErr_CurrentExceptionType() (__pyx_tstate->curexc_type)
2096#define __Pyx_PyThreadState_declare
2097#define __Pyx_PyThreadState_assign
2098#define __Pyx_PyErr_Occurred() (PyErr_Occurred() != NULL)
2099#define __Pyx_PyErr_CurrentExceptionType() PyErr_Occurred()
2103#if CYTHON_FAST_THREAD_STATE
2104#define __Pyx_ExceptionSave(type, value, tb) __Pyx__ExceptionSave(__pyx_tstate, type, value, tb)
2105static CYTHON_INLINE
void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
2106#define __Pyx_ExceptionReset(type, value, tb) __Pyx__ExceptionReset(__pyx_tstate, type, value, tb)
2107static CYTHON_INLINE
void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
2109#define __Pyx_ExceptionSave(type, value, tb) PyErr_GetExcInfo(type, value, tb)
2110#define __Pyx_ExceptionReset(type, value, tb) PyErr_SetExcInfo(type, value, tb)
2114#if CYTHON_COMPILING_IN_CPYTHON
2115#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type)
2116#define __Pyx_TypeCheck2(obj, type1, type2) __Pyx_IsAnySubtype2(Py_TYPE(obj), (PyTypeObject *)type1, (PyTypeObject *)type2)
2117static CYTHON_INLINE
int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b);
2118static CYTHON_INLINE
int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, PyTypeObject *b);
2119#define __Pyx_PyAnySet_Check(obj) __Pyx_TypeCheck2(obj, &PySet_Type, &PyFrozenSet_Type)
2121#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
2122#define __Pyx_TypeCheck2(obj, type1, type2) (PyObject_TypeCheck(obj, (PyTypeObject *)type1) || PyObject_TypeCheck(obj, (PyTypeObject *)type2))
2123#define __Pyx_PyAnySet_Check(obj) PyAnySet_Check(obj)
2127#define __Pyx_PyExc_Exception_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)
2130#if CYTHON_FAST_THREAD_STATE
2131#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL)
2132#define __Pyx_ErrRestoreWithState(type, value, tb) __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb)
2133#define __Pyx_ErrFetchWithState(type, value, tb) __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb)
2134#define __Pyx_ErrRestore(type, value, tb) __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb)
2135#define __Pyx_ErrFetch(type, value, tb) __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb)
2136static CYTHON_INLINE
void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
2137static CYTHON_INLINE
void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
2138#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A6
2139#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL))
2141#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
2144#define __Pyx_PyErr_Clear() PyErr_Clear()
2145#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
2146#define __Pyx_ErrRestoreWithState(type, value, tb) PyErr_Restore(type, value, tb)
2147#define __Pyx_ErrFetchWithState(type, value, tb) PyErr_Fetch(type, value, tb)
2148#define __Pyx_ErrRestoreInState(tstate, type, value, tb) PyErr_Restore(type, value, tb)
2149#define __Pyx_ErrFetchInState(tstate, type, value, tb) PyErr_Fetch(type, value, tb)
2150#define __Pyx_ErrRestore(type, value, tb) PyErr_Restore(type, value, tb)
2151#define __Pyx_ErrFetch(type, value, tb) PyErr_Fetch(type, value, tb)
2155#if CYTHON_COMPILING_IN_CPYTHON
2156static CYTHON_INLINE
int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type);
2157static CYTHON_INLINE
int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2);
2159#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type)
2160static CYTHON_INLINE
int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2) {
2161 return PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2);
2164#define __Pyx_PyErr_ExceptionMatches2(err1, err2) __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2)
2167#if CYTHON_FAST_THREAD_STATE
2168#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err)
2169static CYTHON_INLINE
int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err);
2171#define __Pyx_PyErr_ExceptionMatches(err) PyErr_ExceptionMatches(err)
2175#if CYTHON_FAST_THREAD_STATE
2176#define __Pyx_GetException(type, value, tb) __Pyx__GetException(__pyx_tstate, type, value, tb)
2177static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
2179static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb);
2183#define __Pyx_PyExc_ImportError_Check(obj) __Pyx_TypeCheck(obj, PyExc_ImportError)
2186#if CYTHON_COMPILING_IN_CPYTHON
2187static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw);
2189#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw)
2193#if CYTHON_COMPILING_IN_CPYTHON
2194static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg);
2198#define __Pyx_PyObject_FastCall(func, args, nargs) __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL)
2199static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject *
const*args,
size_t nargsf, PyObject *kwargs);
2202static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause);
2205#if CYTHON_COMPILING_IN_CPYTHON
2206static CYTHON_INLINE
void __Pyx_copy_object_array(PyObject *
const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length);
2210#if PY_VERSION_HEX >= 0x030F0000 && !CYTHON_COMPILING_IN_LIMITED_API
2211#define __Pyx_PyTuple_FromArray(src, n) PyTuple_FromArray(src, ((n)<0) ? 0 : (n))
2213CYTHON_UNUSED
static PyObject *
2214__Pyx_PyTuple_FromArray(PyObject *
const *src, Py_ssize_t
n);
2224static CYTHON_INLINE
int __Pyx_PyObject_CompareBoolEq_str_str(PyObject *op1, PyObject *op2,
int pyop);
2227#define __Pyx_PyUnicode_Equals(s1, s2) __Pyx_PyObject_CompareBoolEq_str_str(s1, s2, Py_EQ)
2230#if CYTHON_AVOID_BORROWED_REFS
2231 #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_PySequence_ITEM(args, i)
2232#elif CYTHON_ASSUME_SAFE_MACROS
2233 #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(args, i))
2235 #define __Pyx_ArgRef_VARARGS(args, i) __Pyx_XNewRef(PyTuple_GetItem(args, i))
2237#define __Pyx_NumKwargs_VARARGS(kwds) PyDict_Size(kwds)
2238#define __Pyx_KwValues_VARARGS(args, nargs) NULL
2239#define __Pyx_GetKwValue_VARARGS(kw, kwvalues, s) __Pyx_PyDict_GetItemStrWithError(kw, s)
2240#define __Pyx_KwargsAsDict_VARARGS(kw, kwvalues) PyDict_Copy(kw)
2241#if CYTHON_VECTORCALL
2242 #define __Pyx_ArgRef_FASTCALL(args, i) __Pyx_NewRef(args[i])
2243 #define __Pyx_NumKwargs_FASTCALL(kwds) __Pyx_PyTuple_GET_SIZE(kwds)
2244 #define __Pyx_KwValues_FASTCALL(args, nargs) ((args) + (nargs))
2245 static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *
const *kwvalues, PyObject *
s);
2246 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_GRAAL
2247 CYTHON_UNUSED
static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *
const *kwvalues);
2249 #define __Pyx_KwargsAsDict_FASTCALL(kw, kwvalues) _PyStack_AsDict(kwvalues, kw)
2252 #define __Pyx_ArgRef_FASTCALL __Pyx_ArgRef_VARARGS
2253 #define __Pyx_NumKwargs_FASTCALL __Pyx_NumKwargs_VARARGS
2254 #define __Pyx_KwValues_FASTCALL __Pyx_KwValues_VARARGS
2255 #define __Pyx_GetKwValue_FASTCALL __Pyx_GetKwValue_VARARGS
2256 #define __Pyx_KwargsAsDict_FASTCALL __Pyx_KwargsAsDict_VARARGS
2258#if CYTHON_VECTORCALL_TPNEW
2259 #if !CYTHON_VECTORCALL
2260 #error Enabling CYTHON_VECTORCALL_TPNEW without CYTHON_VECTORCALL is not supported
2262 #define __Pyx_ArgRef_FASTCALL_TPNEW __Pyx_ArgRef_FASTCALL
2263 #define __Pyx_NumKwargs_FASTCALL_TPNEW __Pyx_NumKwargs_FASTCALL
2264 #define __Pyx_KwValues_FASTCALL_TPNEW __Pyx_KwValues_FASTCALL
2265 #define __Pyx_GetKwValue_FASTCALL_TPNEW __Pyx_GetKwValue_FASTCALL
2266 #define __Pyx_KwargsAsDict_FASTCALL_TPNEW __Pyx_KwargsAsDict_FASTCALL
2268 #define __Pyx_ArgRef_FASTCALL_TPNEW __Pyx_ArgRef_VARARGS
2269 #define __Pyx_NumKwargs_FASTCALL_TPNEW __Pyx_NumKwargs_VARARGS
2270 #define __Pyx_KwValues_FASTCALL_TPNEW __Pyx_KwValues_VARARGS
2271 #define __Pyx_GetKwValue_FASTCALL_TPNEW __Pyx_GetKwValue_VARARGS
2272 #define __Pyx_KwargsAsDict_FASTCALL_TPNEW __Pyx_KwargsAsDict_VARARGS
2274#define __Pyx_ArgsSlice_VARARGS(args, start, stop) PyTuple_GetSlice(args, start, stop)
2275#if CYTHON_VECTORCALL
2276#define __Pyx_ArgsSlice_FASTCALL(args, start, stop) __Pyx_PyTuple_FromArray(args + start, stop - start)
2278#define __Pyx_ArgsSlice_FASTCALL __Pyx_ArgsSlice_VARARGS
2282#define __Pyx_PyDict_items_TypePtr (&PyDictKeys_Type)
2283#define __Pyx_PyDict_items_Check(obj) PyObject_TypeCheck((obj), __Pyx_PyDictItems_TypePtr)
2284#define __Pyx_PyDict_items_CheckExact(obj) Py_IS_TYPE((obj), __Pyx_PyDictItems_TypePtr)
2285static CYTHON_INLINE PyObject* __Pyx_PyDict_Items(PyObject* d);
2288#define __Pyx_CallCFunction(cfunc, self, args)\
2289 ((PyCFunction)(void(*)(void))(cfunc)->func)(self, args)
2290#define __Pyx_CallCFunctionWithKeywords(cfunc, self, args, kwargs)\
2291 ((PyCFunctionWithKeywords)(void(*)(void))(cfunc)->func)(self, args, kwargs)
2292#define __Pyx_CallCFunctionFast(cfunc, self, args, nargs)\
2293 ((__Pyx_PyCFunctionFast)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs)
2294#define __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, nargs, kwnames)\
2295 ((__Pyx_PyCFunctionFastWithKeywords)(void(*)(void))(PyCFunction)(cfunc)->func)(self, args, nargs, kwnames)
2298static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg);
2303 PyObject **method_name;
2307#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && CYTHON_ATOMICS
2308 __pyx_atomic_int_type initialized;
2310} __Pyx_CachedCFunction;
2313static CYTHON_INLINE
int __Pyx_IgnoreGivenException(PyObject *given_exception, PyObject *ignorable_exception);
2314#define __Pyx_IgnoreException(ignorable_exception) __Pyx_IgnoreGivenException(NULL, ignorable_exception)
2317#if CYTHON_USE_TYPE_SLOTS
2318static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name);
2320#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n)
2324static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target);
2327#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
2328static CYTHON_INLINE
int __Pyx_CachedCFunction_GetAndSetInitializing(__Pyx_CachedCFunction *cfunc) {
2332 __pyx_nonatomic_int_type expected = 0;
2333 if (__pyx_atomic_int_cmp_exchange(&cfunc->initialized, &expected, 1)) {
2339static CYTHON_INLINE
void __Pyx_CachedCFunction_SetFinishedInitializing(__Pyx_CachedCFunction *cfunc) {
2341 __pyx_atomic_store(&cfunc->initialized, 2);
2345#define __Pyx_CachedCFunction_GetAndSetInitializing(cfunc) 2
2346#define __Pyx_CachedCFunction_SetFinishedInitializing(cfunc)
2351static PyObject* __Pyx__CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObject* self);
2352#if CYTHON_COMPILING_IN_CPYTHON
2353static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObject* self);
2355#define __Pyx_CallUnboundCMethod0(cfunc, self) __Pyx__CallUnboundCMethod0(cfunc, self)
2359#define __Pyx_PyDict_values_TypePtr (&PyDictKeys_Type)
2360#define __Pyx_PyDict_values_Check(obj) PyObject_TypeCheck((obj), __Pyx_PyDictValues_TypePtr)
2361#define __Pyx_PyDict_values_CheckExact(obj) Py_IS_TYPE((obj), __Pyx_PyDictValues_TypePtr)
2362static CYTHON_INLINE PyObject* __Pyx_PyDict_Values(PyObject* d);
2365#if CYTHON_AVOID_BORROWED_REFS
2366static int __Pyx_PyDict_NextRef(PyObject *p, PyObject **ppos, PyObject **pkey, PyObject **pvalue);
2369static int __Pyx_PyDict_NextRef(PyObject *p, Py_ssize_t *ppos, PyObject **pkey, PyObject **pvalue);
2373static void __Pyx_RaiseDoubleKeywordsError(
const char* func_name, PyObject* kw_name);
2376static int __Pyx_ParseKeywordsTuple(
2378 PyObject *
const *kwvalues,
2379 PyObject **
const argnames[],
2382 Py_ssize_t num_pos_args,
2383 Py_ssize_t num_kwargs,
2384 const char* function_name,
2385 int ignore_unknown_kwargs
2387static int __Pyx_ParseKeywordDictToDict(
2389 PyObject **
const argnames[],
2392 Py_ssize_t num_pos_args,
2393 const char* function_name
2395static int __Pyx_ParseKeywordDict(
2397 PyObject **
const argnames[],
2399 Py_ssize_t num_pos_args,
2400 Py_ssize_t num_kwargs,
2401 const char* function_name,
2402 int ignore_unknown_kwargs
2407static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2);
2408#if CYTHON_COMPILING_IN_CPYTHON
2409static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2);
2411#define __Pyx_CallUnboundCMethod2(cfunc, self, arg1, arg2) __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2)
2415static CYTHON_INLINE
int __Pyx_ParseKeywords(
2416 PyObject *kwds, PyObject *
const *kwvalues, PyObject **
const argnames[],
2417 PyObject *kwds2, PyObject *values[],
2418 Py_ssize_t num_pos_args, Py_ssize_t num_kwargs,
2419 const char* function_name,
2420 int ignore_unknown_kwargs
2424static void __Pyx_RaiseArgtupleInvalid(
const char* func_name,
int exact,
2425 Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found);
2428static void __Pyx_ArgTypeError(PyObject *obj, PyTypeObject *type,
const char *name,
int exact);
2431static CYTHON_INLINE
int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type,
int none_allowed,
const char *name,
int exact);
2434#if CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX >= 0x030C0000
2435 static int __pyx_assertions_enabled_flag;
2436 #define __pyx_assertions_enabled() (__pyx_assertions_enabled_flag)
2437 #if __clang__ || __GNUC__
2438 __attribute__((no_sanitize(
"thread")))
2440 static int __Pyx_init_assertions_enabled(
void) {
2441 PyObject *builtins, *debug, *debug_str;
2443 builtins = PyEval_GetBuiltins();
2444 if (!builtins)
goto bad;
2445 debug_str = PyUnicode_FromStringAndSize(
"__debug__", 9);
2446 if (!debug_str)
goto bad;
2447 debug = PyObject_GetItem(builtins, debug_str);
2448 Py_DECREF(debug_str);
2449 if (!debug)
goto bad;
2450 flag = PyObject_IsTrue(debug);
2452 if (flag == -1)
goto bad;
2453 __pyx_assertions_enabled_flag = flag;
2456 __pyx_assertions_enabled_flag = 1;
2460 #define __Pyx_init_assertions_enabled() (0)
2461 #define __pyx_assertions_enabled() (!Py_OptimizeFlag)
2465#define __Pyx_PyExc_AssertionError_Check(obj) __Pyx_TypeCheck(obj, PyExc_AssertionError)
2468static CYTHON_INLINE npy_intp __Pyx_div_npy_intp(npy_intp, npy_intp,
int b_is_constant);
2471#define __Pyx_UNARY_NEG_WOULD_OVERFLOW(x)\
2472 (((x) < 0) & ((unsigned long)(x) == 0-(unsigned long)(x)))
2475static void __Pyx_RejectKeywords(
const char* function_name, PyObject *kwds);
2478#define __Pyx_PyExc_TypeError_Check(obj) __Pyx_TypeCheck(obj, PyExc_TypeError)
2481static CYTHON_INLINE
int __Pyx_Is_Little_Endian(
void);
2484static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx,
const char* ts);
2485static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx,
2486 __Pyx_BufFmt_StackElem* stack,
2487 const __Pyx_TypeInfo* type);
2490#define __Pyx_GetBufferAndValidate(buf, obj, dtype, flags, nd, cast, stack)\
2491 ((obj == Py_None || obj == NULL) ?\
2492 (__Pyx_ZeroBuffer(buf), 0) :\
2493 __Pyx__GetBufferAndValidate(buf, obj, dtype, flags, nd, cast, stack))
2494static int __Pyx__GetBufferAndValidate(Py_buffer* buf, PyObject* obj,
2495 const __Pyx_TypeInfo* dtype,
int flags,
int nd,
int cast, __Pyx_BufFmt_StackElem* stack);
2496static void __Pyx_ZeroBuffer(Py_buffer* buf);
2497static CYTHON_INLINE
void __Pyx_SafeReleaseBuffer(Py_buffer* info);
2498static Py_ssize_t __Pyx_minusones[] = { -1, -1, -1, -1, -1, -1, -1, -1 };
2499static Py_ssize_t __Pyx_zeros[] = { 0, 0, 0, 0, 0, 0, 0, 0 };
2502#if CYTHON_COMPILING_IN_LIMITED_API
2503#define __Pyx_PyFrozenDict_TypePtr ((PyTypeObject*) __pyx_mstate_global->__Pyx_PyFrozenDictType)
2504#define __Pyx_PyFrozenDict_New(it) __Pyx__PyFrozenDict_New(__pyx_mstate_global->__Pyx_PyFrozenDictType, it)
2505static CYTHON_INLINE PyObject* __Pyx__PyFrozenDict_New(PyObject* frozendict_type, PyObject* it);
2506#define __Pyx_PyFrozenDict_NewEmpty() __Pyx_PyFrozenDict_New(NULL)
2507#define __Pyx_PyFrozenDict_Check(obj) PyObject_TypeCheck((obj), __Pyx_PyFrozenDict_TypePtr)
2508#define __Pyx_PyFrozenDict_CheckExact(obj) Py_IS_TYPE((obj), __Pyx_PyFrozenDict_TypePtr)
2509#define __Pyx_PyAnyDict_Check(obj) __Pyx__PyAnyDict_Check(obj, __Pyx_PyFrozenDict_TypePtr)
2510static CYTHON_INLINE
int __Pyx__PyAnyDict_Check(PyObject *obj, PyTypeObject* frozendict_type) {
2511 return PyObject_TypeCheck(obj, &PyDict_Type) || PyObject_TypeCheck(obj, frozendict_type);
2513#define __Pyx_PyAnyDict_CheckExact(obj) __Pyx__PyAnyDict_CheckExact(obj, __Pyx_PyFrozenDict_TypePtr)
2514static CYTHON_INLINE
int __Pyx__PyAnyDict_CheckExact(PyObject *obj, PyTypeObject* frozendict_type) {
2515 return Py_IS_TYPE(obj, &PyDict_Type) || Py_IS_TYPE(obj, frozendict_type);
2517#elif PY_VERSION_HEX >= 0x030f00a6 ||\
2518 (defined(PyFrozenDict_Check) && defined(PyAnyDict_Check) && defined(PyFrozenDict_New))
2519#define __Pyx_PyFrozenDict_TypePtr (&PyFrozenDict_Type)
2520#define __Pyx_PyFrozenDict_New(it) PyFrozenDict_New(it)
2521#define __Pyx_PyFrozenDict_NewEmpty() PyFrozenDict_New(NULL)
2522#define __Pyx_PyFrozenDict_Check(obj) PyFrozenDict_Check(obj)
2523#define __Pyx_PyFrozenDict_CheckExact(obj) PyFrozenDict_CheckExact(obj)
2524#define __Pyx_PyAnyDict_Check(obj) PyAnyDict_Check(obj)
2525#define __Pyx_PyAnyDict_CheckExact(obj) PyAnyDict_CheckExact(obj)
2527#define __Pyx_PyFrozenDict_TypePtr (&PyDict_Type)
2528static CYTHON_INLINE PyObject* __Pyx_PyFrozenDict_New(PyObject* it) {
2530 return PyDict_New();
2531 }
else if (PyDict_Check(it)) {
2532 return PyDict_Copy(it);
2534 PyObject *dict = PyDict_New();
2535 if (!dict)
return NULL;
2536 PyObject *result = PyNumber_InPlaceOr(dict, it);
2541#define __Pyx_PyFrozenDict_NewEmpty() PyDict_New()
2542#define __Pyx_PyFrozenDict_Check(obj) PyDict_Check(obj)
2543#define __Pyx_PyFrozenDict_CheckExact(obj) PyDict_CheckExact(obj)
2544#define __Pyx_PyAnyDict_Check(obj) PyDict_Check(obj)
2545#define __Pyx_PyAnyDict_CheckExact(obj) PyDict_CheckExact(obj)
2549#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, wraparound, boundscheck, has_gil, unsafe_shared)\
2550 (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
2551 __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, wraparound, boundscheck, unsafe_shared) :\
2552 __Pyx_GetItemInt_Generic(o, to_py_func(i)))
2553#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, wraparound, boundscheck, has_gil, unsafe_shared)\
2554 (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
2555 __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck, unsafe_shared) :\
2556 (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL))
2557static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
2558 int wraparound,
int boundscheck,
int unsafe_shared);
2559#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, wraparound, boundscheck, has_gil, unsafe_shared)\
2560 (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
2561 __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck, unsafe_shared) :\
2562 (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL))
2563static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
2564 int wraparound,
int boundscheck,
int unsafe_shared);
2565static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j);
2566static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i,
2567 int wraparound,
int boundscheck,
int unsafe_shared);
2570static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name);
2573#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030d0000
2574typedef PyObject *__Pyx_TypeName;
2575#define __Pyx_FMT_TYPENAME "%N"
2576#define __Pyx_PyType_GetFullyQualifiedName(tp) Py_NewRef((PyObject*)tp)
2577#define __Pyx_DECREF_TypeName(obj) Py_DECREF(obj)
2578#elif CYTHON_COMPILING_IN_LIMITED_API
2579typedef PyObject *__Pyx_TypeName;
2580#define __Pyx_FMT_TYPENAME "%U"
2581#define __Pyx_DECREF_TypeName(obj) Py_XDECREF(obj)
2582static __Pyx_TypeName __Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp);
2584typedef const char *__Pyx_TypeName;
2585#define __Pyx_FMT_TYPENAME "%.200s"
2586#define __Pyx_PyType_GetFullyQualifiedName(tp) ((tp)->tp_name)
2587#define __Pyx_DECREF_TypeName(obj)
2591#define __Pyx_RaiseTypeErrorWithObjectType(message, obj) __Pyx_RaiseErrorWithObjectType(PyExc_TypeError, message, obj)
2592#define __Pyx_RaiseErrorWithObjectType(exc_type, message, obj) __Pyx_RaiseErrorWithType(exc_type, message, Py_TYPE(obj))
2594static void __Pyx_RaiseErrorWithType(PyObject* exc_type,
const char* message, PyTypeObject *type_obj);
2597#if CYTHON_USE_TYPE_SLOTS
2598static CYTHON_INLINE PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject *key);
2600#define __Pyx_PyObject_GetItem(obj, key) PyObject_GetItem(obj, key)
2604static void __Pyx_RaiseBufferIndexError(
int axis);
2606#define __Pyx_BufPtrStrided2d(type, buf, i0, s0, i1, s1) (type)((char*)buf + i0 * s0 + i1 * s1)
2608#define __Pyx_RaiseErrorWithObjectTypes1(exc_type, message, arg, obj1, obj2) __Pyx_RaiseErrorWithTypes1(exc_type, message, arg, Py_TYPE(obj1), Py_TYPE(obj2))
2609#define __Pyx_RaiseTypeErrorWithObjectTypes(message, obj1, obj2) __Pyx_RaiseTypeErrorWithTypes(message, Py_TYPE(obj1), Py_TYPE(obj2))
2610#define __Pyx_RaiseTypeErrorWithTypes(message, type_obj1, type_obj2) __Pyx_RaiseErrorWithTypes1(PyExc_TypeError, "%.1s" message, "", type_obj1, type_obj2)
2612static void __Pyx_RaiseErrorWithTypes1(PyObject* exc_type,
const char *message,
const char *arg, PyTypeObject *type_obj1, PyTypeObject *type_obj2);
2615#if CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_GRAAL || CYTHON_COMPILING_IN_LIMITED_API
2616#define __Pyx_PyNumber_Add_object_object(op1, op2) PyNumber_Add(op1, op2)
2617#define __Pyx_PyNumber_InPlaceAdd_object_object(op1, op2) PyNumber_InPlaceAdd(op1, op2)
2619#define __Pyx_PyNumber_Add_object_object(op1, op2) __Pyx__PyNumber_Add_object_object(op1, op2, 0)
2620#define __Pyx_PyNumber_InPlaceAdd_object_object(op1, op2) __Pyx__PyNumber_Add_object_object(op1, op2, 1)
2621static CYTHON_INLINE PyObject* __Pyx__PyNumber_Add_object_object(PyObject *op1, PyObject *op2,
int inplace);
2625static PyObject *__Pyx_AllocateExtensionType(PyTypeObject *t,
int is_final);
2628#if CYTHON_VECTORCALL_TPNEW
2629typedef PyObject * (*__Pyx_tpnewvectorcallfunc)(PyTypeObject* o, PyObject *
const *args, Py_ssize_t nargs, PyObject *kwnames);
2630static PyObject * __Pyx_CallTpnewAsVectorcall(__Pyx_tpnewvectorcallfunc
f, PyTypeObject* o, PyObject *a, PyObject *k);
2634#if CYTHON_VECTORCALL_TPNEW
2635static PyObject *__Pyx_CallNewInitFromVectorcall(PyTypeObject *t, PyObject *
const *args,
size_t nargsf, PyObject *kwnames);
2639#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
2640#define __Pyx_DeallocKeepAliveBegin(o) do {\
2641 _Py_atomic_store_uintptr_relaxed(&(o)->ob_tid, _Py_ThreadId());\
2642 _Py_atomic_store_uint32_relaxed(&(o)->ob_ref_local, 1);\
2643 _Py_atomic_store_ssize_relaxed(&(o)->ob_ref_shared, 0);\
2645#define __Pyx_DeallocKeepAliveEnd(o)\
2646 _Py_atomic_store_uint32_relaxed(&(o)->ob_ref_local, 0)
2648#define __Pyx_DeallocKeepAliveBegin(o) Py_SET_REFCNT(o, Py_REFCNT(o) + 1)
2649#define __Pyx_DeallocKeepAliveEnd(o) Py_SET_REFCNT(o, Py_REFCNT(o) - 1)
2653static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name);
2656#if !CYTHON_USE_TYPE_SLOTS
2657CYTHON_UNUSED
static Py_ssize_t __Pyx_GetTypeDictOffset(PyObject *tp,
int require_cython_valid_result);
2661#define __Pyx_RaiseTypeErrorWithObjectType1(message, arg, obj) __Pyx_RaiseErrorWithObjectType1(PyExc_TypeError, message, arg, obj)
2662#define __Pyx_RaiseErrorWithObjectType1(exc_type, message, arg, obj) __Pyx_RaiseErrorWithType1(exc_type, message, arg, Py_TYPE(obj))
2664static void __Pyx_RaiseErrorWithType1(PyObject* exc_type,
const char* message,
const char *arg, PyTypeObject *type_obj);
2667#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS
2668static int __Pyx_validate_bases_tuple(
const char *type_name,
int has_dictoffset, PyObject *bases);
2672CYTHON_UNUSED
static int __Pyx_PyType_Ready(PyTypeObject *t);
2675#if CYTHON_COMPILING_IN_LIMITED_API
2676static PyObject *__Pyx_GetTypeTypeDict(PyTypeObject *tp);
2680#define __Pyx_DelItemOnTypeDict(tp, k) __Pyx__DelItemOnTypeDict((PyTypeObject*)tp, k)
2683static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k);
2686#define __Pyx_SetItemOnTypeDict(tp, k, v) __Pyx__SetItemOnTypeDict((PyTypeObject*)tp, k, v)
2689static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *
v);
2692static int __Pyx_setup_reduce(PyObject* type_obj);
2695#ifndef __PYX_HAVE_RT_ImportType_proto_3_3_0
2696#define __PYX_HAVE_RT_ImportType_proto_3_3_0
2697#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
2698#include <stdalign.h>
2700#if (defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || __cplusplus >= 201103L
2701#define __PYX_GET_STRUCT_ALIGNMENT_3_3_0(s) alignof(s)
2703#define __PYX_GET_STRUCT_ALIGNMENT_3_3_0(s) sizeof(void*)
2705enum __Pyx_ImportType_CheckSize_3_3_0 {
2706 __Pyx_ImportType_CheckSize_Error_3_3_0 = 0,
2707 __Pyx_ImportType_CheckSize_Warn_3_3_0 = 1,
2708 __Pyx_ImportType_CheckSize_Ignore_3_3_0 = 2
2710static PyTypeObject *__Pyx_ImportType_3_3_0(PyObject* module,
const char *module_name,
const char *class_name,
size_t size,
size_t alignment,
enum __Pyx_ImportType_CheckSize_3_3_0 check_size);
2714#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
2715#define __Pyx_HasAttr(o, n) PyObject_HasAttrWithError(o, n)
2717static CYTHON_INLINE
int __Pyx_HasAttr(PyObject *, PyObject *);
2721CYTHON_UNUSED
static PyObject *
2722__Pyx_PyList_FromArray(PyObject *
const *src, Py_ssize_t
n);
2728static PyObject *__Pyx__Import(PyObject *name, PyObject *
const *imported_names, Py_ssize_t len_imported_names, PyObject *qualname, PyObject *moddict,
int level);
2731static CYTHON_INLINE PyObject *__Pyx_Import(PyObject *name, PyObject *
const *imported_names, Py_ssize_t len_imported_names, PyObject *qualname,
int level);
2734static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value);
2737#if ((CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && PY_VERSION_HEX < 0x030F00a3) ||\
2738 __PYX_LIMITED_VERSION_HEX < 0x030d0000)
2739 static PyObject *__Pyx_PyImport_AddModuleRef(
const char *name);
2741 #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name)
2745static PyObject *__Pyx_FetchSharedCythonABIModule(
void);
2748static int __Pyx_VerifyCachedType(PyObject *cached_type,
2750 Py_ssize_t expected_basicsize);
2753static PyTypeObject* __Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases);
2756static int __pyx_CommonTypesMetaclass_init(PyObject *module);
2757#define __Pyx_CommonTypesMetaclass_USED
2760#define __Pyx_CyFunction_USED
2761#if CYTHON_OPAQUE_SHARED_TYPES
2762#define __Pyx_as_CyFunctionObject(o) ((__pyx_CyFunctionObject *)PyObject_GetTypeData((o), __pyx_mstate_global->__pyx_CyFunctionType))
2764#define __Pyx_as_CyFunctionObject(o) ((__pyx_CyFunctionObject *)o)
2766#define __Pyx_CYFUNCTION_STATICMETHOD 0x01
2767#define __Pyx_CYFUNCTION_CLASSMETHOD 0x02
2768#define __Pyx_CYFUNCTION_CCLASS 0x04
2769#define __Pyx_CYFUNCTION_COROUTINE 0x08
2770#define __Pyx_CyFunction_GetClosure(f)\
2771 ((__Pyx_as_CyFunctionObject(f))->func_closure)
2772#if CYTHON_COMPILING_IN_LIMITED_API
2773 #define __Pyx__CyFunction_GetClassObj(f)\
2774 ((f)->func_classobj)
2776 #define __Pyx__CyFunction_GetClassObj(f)\
2777 ((PyObject*) ((PyCMethodObject *) (f))->mm_class)
2779#define __Pyx_CyFunction_GetClassObj(f)\
2780 __Pyx__CyFunction_GetClassObj(__Pyx_as_CyFunctionObject(f))
2781#define __Pyx_CyFunction_SetClassObj(f, classobj)\
2782 __Pyx__CyFunction_SetClassObj(__Pyx_as_CyFunctionObject(f), (classobj))
2783#define __Pyx_CyFunction_Defaults(type, f)\
2784 ((type *)((__Pyx_as_CyFunctionObject(f))->defaults))
2785#define __Pyx_CyFunction_SetDefaultsGetter(f, g)\
2786 (__Pyx_as_CyFunctionObject(f))->defaults_getter = (g)
2788#if CYTHON_COMPILING_IN_LIMITED_API
2789#if !CYTHON_OPAQUE_OBJECTS
2792 PyMethodDef *func_methoddef;
2793 PyObject *func_module;
2795 PyCMethodObject func;
2797#if (CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY) && CYTHON_VECTORCALL
2798 __pyx_vectorcallfunc func_vectorcall;
2800#if CYTHON_COMPILING_IN_LIMITED_API
2801 PyObject *func_weakreflist;
2803#if PY_VERSION_HEX < 0x030C0000 || CYTHON_COMPILING_IN_LIMITED_API
2804 PyObject *func_dict;
2806 PyObject *func_name;
2807 PyObject *func_qualname;
2809 PyObject *func_globals;
2810 PyObject *func_code;
2811 PyObject *func_closure;
2812#if CYTHON_COMPILING_IN_LIMITED_API
2813 PyObject *func_classobj;
2817 PyObject *defaults_tuple;
2818 PyObject *defaults_kwdict;
2819 PyObject *(*defaults_getter)(PyObject *);
2820 PyObject *func_annotations;
2821#if __PYX_LIMITED_VERSION_HEX < 0x030B0000
2822 PyObject *func_is_coroutine;
2824} __pyx_CyFunctionObject;
2825#undef __Pyx_CyOrPyCFunction_Check
2826#define __Pyx_CyFunction_Check(obj) __Pyx_TypeCheck(obj, __pyx_mstate_global->__pyx_CyFunctionType)
2827#define __Pyx_CyOrPyCFunction_Check(obj) __Pyx_TypeCheck2(obj, __pyx_mstate_global->__pyx_CyFunctionType, &PyCFunction_Type)
2828#define __Pyx_CyFunction_CheckExact(obj) Py_IS_TYPE(obj, __pyx_mstate_global->__pyx_CyFunctionType)
2829static CYTHON_INLINE
int __Pyx__IsSameCyOrCFunction(PyObject *func,
void (*cfunc)(
void));
2830#undef __Pyx_IsSameCFunction
2831#define __Pyx_IsSameCFunction(func, cfunc) __Pyx__IsSameCyOrCFunction(func, cfunc)
2832static CYTHON_INLINE
void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject*
f, PyObject* classobj);
2833static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func,
2834 PyTypeObject *defaults_type);
2835static CYTHON_INLINE
void __Pyx_CyFunction_SetDefaultsTuple(PyObject *m,
2837static CYTHON_INLINE
void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *m,
2839static CYTHON_INLINE
void __Pyx_CyFunction_SetAnnotationsDict(PyObject *m,
2841static int __pyx_CyFunction_init(PyObject *module);
2842#if CYTHON_VECTORCALL
2843#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY
2844#define __Pyx_CyFunction_func_vectorcall(f) ((f)->func_vectorcall)
2846#define __Pyx_CyFunction_func_vectorcall(f) (((PyCFunctionObject*)f)->vectorcall)
2851#if !CYTHON_USE_TYPE_SPECS
2852#define __Pyx_call_type_traverse(o, always_call, visit, arg) 0
2854static int __Pyx_call_type_traverse(PyObject *o,
int always_call, visitproc visit,
void *arg);
2858static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ);
2861#if CYTHON_VECTORCALL
2862static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *
const *args,
size_t nargs, PyObject *kw);
2866static PyObject *__Pyx_CyFunction_Init(PyObject *op_in, PyMethodDef *ml,
2867 int flags, PyObject* qualname,
2869 PyObject *module, PyObject *globals,
2871#if CYTHON_VECTORCALL
2872static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *
const *args,
size_t nargsf, PyObject *kwnames);
2873static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *
const *args,
size_t nargsf, PyObject *kwnames);
2874static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *
const *args,
size_t nargsf, PyObject *kwnames);
2875static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *
const *args,
size_t nargsf, PyObject *kwnames);
2879static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml,
2880 int flags, PyObject* qualname,
2882 PyObject *module, PyObject *globals,
2884static PyTypeObject *__Pyx_Get_CyFunction_Type(
void);
2887#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS
2888#define __PYX_DICT_VERSION_INIT ((PY_UINT64_T) -1)
2889#define __PYX_GET_DICT_VERSION(dict) (((PyDictObject*)(dict))->ma_version_tag)
2890#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\
2891 (version_var) = __PYX_GET_DICT_VERSION(dict);\
2892 (cache_var) = (value);
2893#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\
2894 static PY_UINT64_T __pyx_dict_version = 0;\
2895 static PyObject *__pyx_dict_cached_value = NULL;\
2896 if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
2897 (VAR) = __Pyx_XNewRef(__pyx_dict_cached_value);\
2899 (VAR) = __pyx_dict_cached_value = (LOOKUP);\
2900 __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
2903static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj);
2904static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj);
2905static CYTHON_INLINE
int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version);
2907#define __PYX_GET_DICT_VERSION(dict) (0)
2908#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)
2909#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) (VAR) = (LOOKUP);
2913#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME
2914static int __Pyx_CLineForTraceback(PyThreadState *tstate,
int c_line);
2916#define __Pyx_CLineForTraceback(tstate, c_line) (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0)
2920#if CYTHON_COMPILING_IN_LIMITED_API
2921typedef PyObject __Pyx_CachedCodeObjectType;
2923typedef PyCodeObject __Pyx_CachedCodeObjectType;
2926 __Pyx_CachedCodeObjectType* code_object;
2928} __Pyx_CodeObjectCacheEntry;
2929struct __Pyx_CodeObjectCache {
2932 __Pyx_CodeObjectCacheEntry* entries;
2933 #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
2934 __pyx_atomic_int_type accessor_count;
2937static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries,
int count,
int code_line);
2938static __Pyx_CachedCodeObjectType *__pyx_find_code_object(
int code_line);
2939static void __pyx_insert_code_object(
int code_line, __Pyx_CachedCodeObjectType* code_object);
2942static void __Pyx_AddTraceback(
const char *funcname,
int c_line,
2943 int py_line,
const char *filename);
2947 Py_ssize_t shape, strides, suboffsets;
2954 __Pyx_Buffer *rcbuffer;
2956 __Pyx_Buf_DimInfo diminfo[8];
2960#if !defined(__INTEL_COMPILER) && defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
2961#define __Pyx_HAS_GCC_DIAGNOSTIC
2967 #define __Pyx_CREAL(z) ((z).real())
2968 #define __Pyx_CIMAG(z) ((z).imag())
2970 #define __Pyx_CREAL(z) (__real__(z))
2971 #define __Pyx_CIMAG(z) (__imag__(z))
2974 #define __Pyx_CREAL(z) ((z).real)
2975 #define __Pyx_CIMAG(z) ((z).imag)
2977#if defined(__cplusplus) && CYTHON_CCOMPLEX\
2978 && (defined(_WIN32) || defined(__clang__) || (defined(__GNUC__) && (__GNUC__ >= 5 || __GNUC__ == 4 && __GNUC_MINOR__ >= 4 )) || __cplusplus >= 201103)
2979 #define __Pyx_SET_CREAL(z,x) ((z).real(x))
2980 #define __Pyx_SET_CIMAG(z,y) ((z).imag(y))
2982 #define __Pyx_SET_CREAL(z,x) __Pyx_CREAL(z) = (x)
2983 #define __Pyx_SET_CIMAG(z,y) __Pyx_CIMAG(z) = (y)
2987#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
2988 #define __Pyx_c_eq_float(a, b) ((a)==(b))
2989 #define __Pyx_c_sum_float(a, b) ((a)+(b))
2990 #define __Pyx_c_diff_float(a, b) ((a)-(b))
2991 #define __Pyx_c_prod_float(a, b) ((a)*(b))
2992 #define __Pyx_c_quot_float(a, b) ((a)/(b))
2993 #define __Pyx_c_neg_float(a) (-(a))
2995 #define __Pyx_c_is_zero_float(z) ((z)==(float)0)
2996 #define __Pyx_c_conj_float(z) (::std::conj(z))
2998 #define __Pyx_c_abs_float(z) (::std::abs(z))
2999 #define __Pyx_c_pow_float(a, b) (::std::pow(a, b))
3002 #define __Pyx_c_is_zero_float(z) ((z)==0)
3003 #define __Pyx_c_conj_float(z) (conjf(z))
3005 #define __Pyx_c_abs_float(z) (cabsf(z))
3006 #define __Pyx_c_pow_float(a, b) (cpowf(a, b))
3010 static CYTHON_INLINE
int __Pyx_c_eq_float(__pyx_t_float_complex, __pyx_t_float_complex);
3011 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex, __pyx_t_float_complex);
3012 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex, __pyx_t_float_complex);
3013 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex, __pyx_t_float_complex);
3014 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex, __pyx_t_float_complex);
3015 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex);
3016 static CYTHON_INLINE
int __Pyx_c_is_zero_float(__pyx_t_float_complex);
3017 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex);
3019 static CYTHON_INLINE
float __Pyx_c_abs_float(__pyx_t_float_complex);
3020 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex, __pyx_t_float_complex);
3025#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
3026 #define __Pyx_c_eq_double(a, b) ((a)==(b))
3027 #define __Pyx_c_sum_double(a, b) ((a)+(b))
3028 #define __Pyx_c_diff_double(a, b) ((a)-(b))
3029 #define __Pyx_c_prod_double(a, b) ((a)*(b))
3030 #define __Pyx_c_quot_double(a, b) ((a)/(b))
3031 #define __Pyx_c_neg_double(a) (-(a))
3033 #define __Pyx_c_is_zero_double(z) ((z)==(double)0)
3034 #define __Pyx_c_conj_double(z) (::std::conj(z))
3036 #define __Pyx_c_abs_double(z) (::std::abs(z))
3037 #define __Pyx_c_pow_double(a, b) (::std::pow(a, b))
3040 #define __Pyx_c_is_zero_double(z) ((z)==0)
3041 #define __Pyx_c_conj_double(z) (conj(z))
3043 #define __Pyx_c_abs_double(z) (cabs(z))
3044 #define __Pyx_c_pow_double(a, b) (cpow(a, b))
3048 static CYTHON_INLINE
int __Pyx_c_eq_double(__pyx_t_double_complex, __pyx_t_double_complex);
3049 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex, __pyx_t_double_complex);
3050 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex, __pyx_t_double_complex);
3051 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex, __pyx_t_double_complex);
3052 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex, __pyx_t_double_complex);
3053 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex);
3054 static CYTHON_INLINE
int __Pyx_c_is_zero_double(__pyx_t_double_complex);
3055 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex);
3057 static CYTHON_INLINE
double __Pyx_c_abs_double(__pyx_t_double_complex);
3058 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex, __pyx_t_double_complex);
3063#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
3064 #define __Pyx_c_eq_long__double(a, b) ((a)==(b))
3065 #define __Pyx_c_sum_long__double(a, b) ((a)+(b))
3066 #define __Pyx_c_diff_long__double(a, b) ((a)-(b))
3067 #define __Pyx_c_prod_long__double(a, b) ((a)*(b))
3068 #define __Pyx_c_quot_long__double(a, b) ((a)/(b))
3069 #define __Pyx_c_neg_long__double(a) (-(a))
3071 #define __Pyx_c_is_zero_long__double(z) ((z)==(long double)0)
3072 #define __Pyx_c_conj_long__double(z) (::std::conj(z))
3074 #define __Pyx_c_abs_long__double(z) (::std::abs(z))
3075 #define __Pyx_c_pow_long__double(a, b) (::std::pow(a, b))
3078 #define __Pyx_c_is_zero_long__double(z) ((z)==0)
3079 #define __Pyx_c_conj_long__double(z) (conjl(z))
3081 #define __Pyx_c_abs_long__double(z) (cabsl(z))
3082 #define __Pyx_c_pow_long__double(a, b) (cpowl(a, b))
3086 static CYTHON_INLINE
int __Pyx_c_eq_long__double(__pyx_t_long_double_complex, __pyx_t_long_double_complex);
3087 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_sum_long__double(__pyx_t_long_double_complex, __pyx_t_long_double_complex);
3088 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_diff_long__double(__pyx_t_long_double_complex, __pyx_t_long_double_complex);
3089 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_prod_long__double(__pyx_t_long_double_complex, __pyx_t_long_double_complex);
3090 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_quot_long__double(__pyx_t_long_double_complex, __pyx_t_long_double_complex);
3091 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_neg_long__double(__pyx_t_long_double_complex);
3092 static CYTHON_INLINE
int __Pyx_c_is_zero_long__double(__pyx_t_long_double_complex);
3093 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_conj_long__double(__pyx_t_long_double_complex);
3095 static CYTHON_INLINE
long double __Pyx_c_abs_long__double(__pyx_t_long_double_complex);
3096 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_pow_long__double(__pyx_t_long_double_complex, __pyx_t_long_double_complex);
3101static CYTHON_INLINE
int __Pyx_PyLong_As_int(PyObject *);
3104#if CYTHON_VECTORCALL
3105#define __Pyx_Object_VectorcallKwds PyObject_Vectorcall
3106CYTHON_UNUSED
static int __Pyx_CheckVectorcallKwarg(PyObject *kwnames, Py_ssize_t i);
3108#define __Pyx_Object_VectorcallKwds __Pyx_PyObject_FastCallDict
3109CYTHON_UNUSED
static PyObject *__Pyx_MakeKwargDict(PyObject **keys, PyObject **values, Py_ssize_t
n);
3110CYTHON_UNUSED
static int __Pyx_CheckVectorcallKwarg(PyObject **kwnames, Py_ssize_t i);
3114#if CYTHON_VECTORCALL
3115#define __Pyx_Object_VectorcallMethodKwds PyObject_VectorcallMethod
3117static PyObject *__Pyx_Object_VectorcallMethodKwds(PyObject *name, PyObject *
const *args,
size_t nargsf, PyObject *kwnames);
3121static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(
int value);
3124static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(
long value);
3127static CYTHON_INLINE
long __Pyx_PyLong_As_long(PyObject *);
3130#if __PYX_LIMITED_VERSION_HEX < 0x030b0000
3131static unsigned long __Pyx_cached_runtime_version = 0;
3132static void __Pyx_init_runtime_version(
void);
3134#define __Pyx_init_runtime_version()
3136static unsigned long __Pyx_get_runtime_version(
void);
3139static int __Pyx_check_binary_version(
unsigned long ct_version,
unsigned long rt_version,
int allow_newer);
3142static PyObject *__Pyx_DecompressString(
const char *
s, Py_ssize_t length,
int algo);
3145static PyObject *__Pyx_DecompressString_LZSS(
const char *
s,
size_t compressed_length,
size_t uncompressed_length);
3148#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE
3150static PyObject *__Pyx_State_FindModule(
void*);
3151static int __Pyx_State_AddModule(PyObject* module,
void*);
3152static int __Pyx_State_RemoveModule(
void*);
3153#elif CYTHON_USE_MODULE_STATE
3154#define __Pyx_State_FindModule PyState_FindModule
3155#define __Pyx_State_AddModule PyState_AddModule
3156#define __Pyx_State_RemoveModule PyState_RemoveModule
3161#if CYTHON_COMPILING_IN_LIMITED_API
3162 #if CYTHON_VECTORCALL
3163 #define __PYX_VECTORCALL_ABI_SUFFIX "_vectorcall"
3165 #define __PYX_VECTORCALL_ABI_SUFFIX
3167 #define __PYX_LIMITED_ABI_SUFFIX "limited" __PYX_VECTORCALL_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX
3169 #define __PYX_LIMITED_ABI_SUFFIX
3171#if __PYX_HAS_PY_AM_SEND == 1
3172 #define __PYX_AM_SEND_ABI_SUFFIX
3173#elif __PYX_HAS_PY_AM_SEND == 2
3174 #define __PYX_AM_SEND_ABI_SUFFIX "amsendbackport"
3176 #define __PYX_AM_SEND_ABI_SUFFIX "noamsend"
3178#ifndef __PYX_MONITORING_ABI_SUFFIX
3179 #define __PYX_MONITORING_ABI_SUFFIX
3181#if CYTHON_USE_TP_FINALIZE
3182 #define __PYX_TP_FINALIZE_ABI_SUFFIX
3184 #define __PYX_TP_FINALIZE_ABI_SUFFIX "nofinalize"
3186#if CYTHON_USE_FREELISTS || !defined(__Pyx_AsyncGen_USED)
3187 #define __PYX_FREELISTS_ABI_SUFFIX
3189 #define __PYX_FREELISTS_ABI_SUFFIX "nofreelists"
3191#if CYTHON_OPAQUE_OBJECTS && CYTHON_COMPILING_IN_LIMITED_API
3192 #define __PYX_OPAQUE_OBJECTS_ABI_SUFFIX "opaque"
3194 #define __PYX_OPAQUE_OBJECTS_ABI_SUFFIX
3196#define CYTHON_ABI __PYX_ABI_VERSION __PYX_LIMITED_ABI_SUFFIX __PYX_MONITORING_ABI_SUFFIX __PYX_TP_FINALIZE_ABI_SUFFIX __PYX_FREELISTS_ABI_SUFFIX __PYX_AM_SEND_ABI_SUFFIX __PYX_OPAQUE_OBJECTS_ABI_SUFFIX
3197#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI
3198#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "."
3200static CYTHON_INLINE PyTypeObject *__pyx_f_5numpy_5dtype_7typeobj___get__(PyArray_Descr *__pyx_v_self);
3201static CYTHON_INLINE
char __pyx_f_5numpy_5dtype_4kind___get__(PyArray_Descr *__pyx_v_self);
3202static CYTHON_INLINE
char __pyx_f_5numpy_5dtype_4type___get__(PyArray_Descr *__pyx_v_self);
3203static CYTHON_INLINE
char __pyx_f_5numpy_5dtype_9byteorder___get__(PyArray_Descr *__pyx_v_self);
3204static CYTHON_INLINE
int __pyx_f_5numpy_5dtype_8type_num___get__(PyArray_Descr *__pyx_v_self);
3205static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_8itemsize___get__(PyArray_Descr *__pyx_v_self);
3206static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_9alignment___get__(PyArray_Descr *__pyx_v_self);
3207static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_6fields___get__(PyArray_Descr *__pyx_v_self);
3208static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_5names___get__(PyArray_Descr *__pyx_v_self);
3209static CYTHON_INLINE PyArray_ArrayDescr *__pyx_f_5numpy_5dtype_8subarray___get__(PyArray_Descr *__pyx_v_self);
3210static CYTHON_INLINE npy_uint64 __pyx_f_5numpy_5dtype_5flags___get__(PyArray_Descr *__pyx_v_self);
3211static CYTHON_INLINE
int __pyx_f_5numpy_9broadcast_7numiter___get__(PyArrayMultiIterObject *__pyx_v_self);
3212static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_4size___get__(PyArrayMultiIterObject *__pyx_v_self);
3213static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_5index___get__(PyArrayMultiIterObject *__pyx_v_self);
3214static CYTHON_INLINE
int __pyx_f_5numpy_9broadcast_2nd___get__(PyArrayMultiIterObject *__pyx_v_self);
3215static CYTHON_INLINE npy_intp *__pyx_f_5numpy_9broadcast_10dimensions___get__(PyArrayMultiIterObject *__pyx_v_self);
3216static CYTHON_INLINE
void **__pyx_f_5numpy_9broadcast_5iters___get__(PyArrayMultiIterObject *__pyx_v_self);
3217static CYTHON_INLINE PyObject *__pyx_f_5numpy_7ndarray_4base___get__(PyArrayObject *__pyx_v_self);
3218static CYTHON_INLINE PyArray_Descr *__pyx_f_5numpy_7ndarray_5descr___get__(PyArrayObject *__pyx_v_self);
3219static CYTHON_INLINE
int __pyx_f_5numpy_7ndarray_4ndim___get__(PyArrayObject *__pyx_v_self);
3220static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_5shape___get__(PyArrayObject *__pyx_v_self);
3221static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_7strides___get__(PyArrayObject *__pyx_v_self);
3222static CYTHON_INLINE npy_intp __pyx_f_5numpy_7ndarray_4size___get__(PyArrayObject *__pyx_v_self);
3223static CYTHON_INLINE
char *__pyx_f_5numpy_7ndarray_4data___get__(PyArrayObject *__pyx_v_self);
3224static CYTHON_INLINE
int __pyx_f_5numpy_5ufunc_3nin___get__(PyUFuncObject *__pyx_v_self);
3225static CYTHON_INLINE
int __pyx_f_5numpy_5ufunc_4nout___get__(PyUFuncObject *__pyx_v_self);
3226static CYTHON_INLINE
int __pyx_f_5numpy_5ufunc_5nargs___get__(PyUFuncObject *__pyx_v_self);
3227static CYTHON_INLINE PyUFuncGenericFunction *__pyx_f_5numpy_5ufunc_9functions___get__(PyUFuncObject *__pyx_v_self);
3228static CYTHON_INLINE
void **__pyx_f_5numpy_5ufunc_4data___get__(PyUFuncObject *__pyx_v_self);
3229static CYTHON_INLINE
int __pyx_f_5numpy_5ufunc_6ntypes___get__(PyUFuncObject *__pyx_v_self);
3230static CYTHON_INLINE
char const *__pyx_f_5numpy_5ufunc_4name___get__(PyUFuncObject *__pyx_v_self);
3231static CYTHON_INLINE
char const *__pyx_f_5numpy_5ufunc_3doc___get__(PyUFuncObject *__pyx_v_self);
3232static CYTHON_INLINE
void *__pyx_f_5numpy_5ufunc_3ptr___get__(PyUFuncObject *__pyx_v_self);
3233static CYTHON_INLINE PyObject *__pyx_f_5numpy_5ufunc_3obj___get__(PyUFuncObject *__pyx_v_self);
3234static CYTHON_INLINE PyObject *__pyx_f_5numpy_5ufunc_9userloops___get__(PyUFuncObject *__pyx_v_self);
3258static const __Pyx_TypeInfo __Pyx_TypeInfo_int = {
"int", NULL,
sizeof(int), { 0 }, 0, __PYX_IS_UNSIGNED(
int) ?
'U' :
'I', __PYX_IS_UNSIGNED(
int), 0 };
3260#define __Pyx_MODULE_NAME "cpostprocessing"
3261extern int __pyx_module_is_main_cpostprocessing;
3262int __pyx_module_is_main_cpostprocessing = 0;
3268static PyObject *__pyx_pf_15cpostprocessing_postProcessRT0velocityFromP1nc(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nFreeDOF_element, PyArrayObject *__pyx_v_freeLocal_element, PyArrayObject *__pyx_v_detJ, PyArrayObject *__pyx_v_sqrt_det_g, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_elementBarycenters, PyArrayObject *__pyx_v_quad_a, PyArrayObject *__pyx_v_quad_f, PyArrayObject *__pyx_v_w_dV_r, PyArrayObject *__pyx_v_u, PyArrayObject *__pyx_v_gradu, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_f, PyArrayObject *__pyx_v_r, PyArrayObject *__pyx_v_rt0vdofs, PyArrayObject *__pyx_v_w_dV_m, PyArrayObject *__pyx_v_mt);
3269static PyObject *__pyx_pf_15cpostprocessing_2postProcessRT0velocityFromP1nc_sd(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_rowptr, PyArrayObject *__pyx_v_colind, PyArrayObject *__pyx_v_nFreeDOF_element, PyArrayObject *__pyx_v_freeLocal_element, PyArrayObject *__pyx_v_detJ, PyArrayObject *__pyx_v_sqrt_det_g, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_elementBarycenters, PyArrayObject *__pyx_v_quad_a, PyArrayObject *__pyx_v_quad_f, PyArrayObject *__pyx_v_w_dV_r, PyArrayObject *__pyx_v_u, PyArrayObject *__pyx_v_gradu, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_f, PyArrayObject *__pyx_v_r, PyArrayObject *__pyx_v_rt0vdofs, PyArrayObject *__pyx_v_w_dV_m, PyArrayObject *__pyx_v_mt);
3270static PyObject *__pyx_pf_15cpostprocessing_4updateRT0velocityWithAveragedPotentialP1nc(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_detJ, PyArrayObject *__pyx_v_quad_a, PyArrayObject *__pyx_v_phi, PyArrayObject *__pyx_v_gradphi, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_rt0vdofs_element);
3271static PyObject *__pyx_pf_15cpostprocessing_6updateRT0velocityWithAveragedPotentialP1nc_sd(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_rowptr, PyArrayObject *__pyx_v_colind, PyArrayObject *__pyx_v_detJ, PyArrayObject *__pyx_v_quad_a, PyArrayObject *__pyx_v_phi, PyArrayObject *__pyx_v_gradphi, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_rt0vdofs_element);
3272static PyObject *__pyx_pf_15cpostprocessing_8getElementRT0velocityValues(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_x_element, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_element);
3273static PyObject *__pyx_pf_15cpostprocessing_10getElementBoundaryRT0velocityValues(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_x_elementBoundary, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary);
3274static PyObject *__pyx_pf_15cpostprocessing_12getGlobalElementBoundaryRT0velocityValues(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_x_elementBoundary_global, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary_global);
3275static PyObject *__pyx_pf_15cpostprocessing_14getGlobalExteriorElementBoundaryRT0velocityValues(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_x_elementBoundary_global, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary_global);
3276static PyObject *__pyx_pf_15cpostprocessing_16postProcessRT0potentialFromP1nc(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_uQuadratureWeights_element, PyArrayObject *__pyx_v_elementBarycenters, PyArrayObject *__pyx_v_aElementQuadWeights, PyArrayObject *__pyx_v_detJ, CYTHON_UNUSED PyArrayObject *__pyx_v_uQuadratureWeights_elementBoundary, PyArrayObject *__pyx_v_x, PyArrayObject *__pyx_v_u, PyArrayObject *__pyx_v_gradu, PyArrayObject *__pyx_v_x_elementBoundary, PyArrayObject *__pyx_v_u_elementBoundary, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_f, PyArrayObject *__pyx_v_r, PyArrayObject *__pyx_v_rt0vdofs, PyArrayObject *__pyx_v_rt0potential);
3277static PyObject *__pyx_pf_15cpostprocessing_18postProcessRT0potentialFromP1nc_sd(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_rowptr, PyArrayObject *__pyx_v_colind, PyArrayObject *__pyx_v_uQuadratureWeights_element, PyArrayObject *__pyx_v_elementBarycenters, PyArrayObject *__pyx_v_aElementQuadWeights, PyArrayObject *__pyx_v_detJ, CYTHON_UNUSED PyArrayObject *__pyx_v_uQuadratureWeights_elementBoundary, PyArrayObject *__pyx_v_x, PyArrayObject *__pyx_v_u, PyArrayObject *__pyx_v_gradu, PyArrayObject *__pyx_v_x_elementBoundary, PyArrayObject *__pyx_v_u_elementBoundary, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_f, PyArrayObject *__pyx_v_r, PyArrayObject *__pyx_v_rt0vdofs, PyArrayObject *__pyx_v_rt0potential);
3278static PyObject *__pyx_pf_15cpostprocessing_20buildLocalBDM1projectionMatrices(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_ebq_v, PyArrayObject *__pyx_v_BDMmat_element);
3279static PyObject *__pyx_pf_15cpostprocessing_22buildLocalBDM2projectionMatrices(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_degree, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_ebq_v, PyArrayObject *__pyx_v_q_basis_vals, PyArrayObject *__pyx_v_w_int_test_grads, PyArrayObject *__pyx_v_w_int_div_free, PyArrayObject *__pyx_v_piola_trial_fun, PyArrayObject *__pyx_v_edgeFlags, PyArrayObject *__pyx_v_BDMmat_element);
3280static PyObject *__pyx_pf_15cpostprocessing_24factorLocalBDM1projectionMatrices(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element);
3281static PyObject *__pyx_pf_15cpostprocessing_26factorLocalBDM2projectionMatrices(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element);
3282static PyObject *__pyx_pf_15cpostprocessing_28solveLocalBDM1projection(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_q_vdofs);
3283static PyObject *__pyx_pf_15cpostprocessing_30solveLocalBDM2projection(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_w_interior_gradients, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_q_velocity, PyArrayObject *__pyx_v_q_vdofs);
3284static PyObject *__pyx_pf_15cpostprocessing_32buildBDM2rhs(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_w_interior_gradients, PyArrayObject *__pyx_v_w_interior_divfree, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_q_velocity, PyArrayObject *__pyx_v_q_vdofs, PyArrayObject *__pyx_v_edgeFlags);
3285static PyObject *__pyx_pf_15cpostprocessing_34solveLocalBDM1projectionFromFlux(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_elementBoundariesArray, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_global_flux, PyArrayObject *__pyx_v_q_vdofs);
3286static PyObject *__pyx_pf_15cpostprocessing_36getElementBDM1velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_q_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_q_velocity);
3287static PyObject *__pyx_pf_15cpostprocessing_38getElementBDM2velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_q_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_q_velocity);
3288static PyObject *__pyx_pf_15cpostprocessing_40getElementLDGvelocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_q_v, PyArrayObject *__pyx_v_vdofs, PyArrayObject *__pyx_v_q_velocity);
3289static PyObject *__pyx_pf_15cpostprocessing_42getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_ebqe_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_ebqe_velocity);
3290static PyObject *__pyx_pf_15cpostprocessing_44getGlobalElementBoundaryBDM1velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_ebqe_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_ebq_global_velocity);
3291static PyObject *__pyx_pf_15cpostprocessing_46getElementBoundaryBDM1velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_ebq_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_ebq_velocity);
3292static PyObject *__pyx_pf_15cpostprocessing_48projectElementBoundaryVelocityToRT0fluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryQuadratureWeights, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_v_elementBoundary, PyArrayObject *__pyx_v_rt0vdofs_element);
3293static PyObject *__pyx_pf_15cpostprocessing_50projectElementBoundaryFluxToRT0fluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_elementBoundariesArray, PyArrayObject *__pyx_v_elementBoundaryQuadratureWeights, PyArrayObject *__pyx_v_flux_elementBoundary, PyArrayObject *__pyx_v_rt0vdofs_element);
3294static PyObject *__pyx_pf_15cpostprocessing_52getElementRT0velocityValuesFluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x_element, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_element);
3295static PyObject *__pyx_pf_15cpostprocessing_54getElementBoundaryRT0velocityValuesFluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x_elementBoundary, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary);
3296static PyObject *__pyx_pf_15cpostprocessing_56getGlobalElementBoundaryRT0velocityValuesFluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x_elementBoundary_global, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary_global);
3297static PyObject *__pyx_pf_15cpostprocessing_58getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x_ebqe, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_ebqe);
3298static PyObject *__pyx_pf_15cpostprocessing_60getRT0velocityValuesFluxRep_arbitraryElementMembership(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x, PyArrayObject *__pyx_v_element_locations, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_element);
3299static PyObject *__pyx_pf_15cpostprocessing_62fluxCorrectionVelocityUpdate(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_dS, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_fluxCorrection, PyArrayObject *__pyx_v_velocity, PyArrayObject *__pyx_v_velocity_element);
3300static PyObject *__pyx_pf_15cpostprocessing_64computeFluxCorrectionPWC(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_pwcW, PyArrayObject *__pyx_v_pwcV, PyArrayObject *__pyx_v_fluxCorrection);
3301static PyObject *__pyx_pf_15cpostprocessing_66sunWheelerGSsweep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_dS, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_sqrt_det_g, PyArrayObject *__pyx_v_alphaFactor, PyArrayObject *__pyx_v_fluxCorrection, PyArrayObject *__pyx_v_conservationResidual);
3302static int __pyx_pf_15cpostprocessing_14NodeStarFactor___cinit__(
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_nodeStarElementsArray, PyArrayObject *__pyx_v_nodeStarElementsNeighborsArray);
3303static void __pyx_pf_15cpostprocessing_14NodeStarFactor_2__dealloc__(
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self);
3304static PyObject *__pyx_pf_15cpostprocessing_14NodeStarFactor_4setU(
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self,
double __pyx_v_val);
3305static PyObject *__pyx_pf_15cpostprocessing_14NodeStarFactor_6copyData(
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_other);
3306static PyObject *__pyx_pf_15cpostprocessing_14NodeStarFactor_8__reduce_cython__(CYTHON_UNUSED
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self);
3307static PyObject *__pyx_pf_15cpostprocessing_14NodeStarFactor_10__setstate_cython__(CYTHON_UNUSED
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state);
3308static PyObject *__pyx_pf_15cpostprocessing_68calculateConservationResidualPWL(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_dofMapl2g, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_vAverage, PyArrayObject *__pyx_v_dx, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_conservationResidual, PyArrayObject *__pyx_v_vConservative, PyArrayObject *__pyx_v_vConservative_element);
3309static PyObject *__pyx_pf_15cpostprocessing_70calculateConservationJacobianPWL(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_dofMapl2g, PyArrayObject *__pyx_v_dofStarElements, PyArrayObject *__pyx_v_dofStarElementNeighbors, PyArrayObject *__pyx_v_nElements_dof, PyArrayObject *__pyx_v_internalNodes, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_fluxBoundaryNodes, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor);
3310static PyObject *__pyx_pf_15cpostprocessing_72calculateConservationFluxPWL(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_internalNodes, PyArrayObject *__pyx_v_fluxBoundaryNodes,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor);
3311static PyObject *__pyx_pf_15cpostprocessing_74calculateConservationFluxPWL_noNeumannFix(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nElements_node,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor);
3312static PyObject *__pyx_pf_15cpostprocessing_76calculateConservationResidualPWL_opt(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_nNodes_owned, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_vAverage, PyArrayObject *__pyx_v_dx, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_conservationResidual, PyArrayObject *__pyx_v_vConservative, PyArrayObject *__pyx_v_vConservative_element);
3313static PyObject *__pyx_pf_15cpostprocessing_78calculateConservationResidualPWL_primative(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_skipflag_elementBoundaries, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_dx, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_conservationResidual, PyArrayObject *__pyx_v_vConservative);
3314static PyObject *__pyx_pf_15cpostprocessing_80calculateConservationJacobianPWL_opt(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_nNodes_owned, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_internalNodes, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_fluxBoundaryNodes, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor);
3315static PyObject *__pyx_pf_15cpostprocessing_82calculateConservationFluxPWL_opt(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_nNodes_owned, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_internalNodes, PyArrayObject *__pyx_v_fluxBoundaryNodes,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor);
3316static PyObject *__pyx_pf_15cpostprocessing_84calculateConservationResidualPWL_interiorBoundaries(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_vAverage, PyArrayObject *__pyx_v_dx, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_conservationResidual, PyArrayObject *__pyx_v_vConservative, PyArrayObject *__pyx_v_vConservative_element);
3317static PyObject *__pyx_pf_15cpostprocessing_86calculateConservationJacobianPWL_interiorBoundaries(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor);
3318static PyObject *__pyx_pf_15cpostprocessing_88_subdomain_U_copy_global2local(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_max_nN_owned, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_subdomain_U);
3319static PyObject *__pyx_pf_15cpostprocessing_90_subdomain_U_copy_local2global(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_max_nN_owned, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_subdomain_U);
3320static PyObject *__pyx_pf_15cpostprocessing_92calculateConservationResidualGlobalBoundaries(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundariesToSkip, PyArrayObject *__pyx_v_dS, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_velocity, PyArrayObject *__pyx_v_conservationResidual);
3321static PyObject *__pyx_pf_15cpostprocessing_94updateSelectedExteriorElementBoundaryFlux(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_skipflag_elementBoundaries, PyArrayObject *__pyx_v_flux, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_residual);
3322static PyObject *__pyx_pf_15cpostprocessing_96updateAdvectiveVelocityPointEval(CYTHON_UNUSED PyObject *__pyx_self,
double __pyx_v_updateCoef, PyArrayObject *__pyx_v_advectiveVelocity, PyArrayObject *__pyx_v_velocity);
3323static PyObject *__pyx_pf_15cpostprocessing_98updateDiffusiveVelocityPointEval(CYTHON_UNUSED PyObject *__pyx_self,
double __pyx_v_updateCoef, PyArrayObject *__pyx_v_diffusionTensor, PyArrayObject *__pyx_v_grad_phi, PyArrayObject *__pyx_v_velocity);
3324static PyObject *__pyx_pf_15cpostprocessing_100updateDiffusiveVelocityPointEval_sd(CYTHON_UNUSED PyObject *__pyx_self,
double __pyx_v_updateCoef, PyArrayObject *__pyx_v_rowptr, PyArrayObject *__pyx_v_colind, PyArrayObject *__pyx_v_diffusionTensor, PyArrayObject *__pyx_v_grad_phi, PyArrayObject *__pyx_v_velocity);
3325static PyObject *__pyx_pf_15cpostprocessing_102calculateElementResidualPWL(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_alpha, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_elementResidualPWL);
3326static PyObject *__pyx_pf_15cpostprocessing_104copyElementBoundaryVelocityToParVec(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_permutations, PyArrayObject *__pyx_v_ebq_v_par_local);
3327static PyObject *__pyx_pf_15cpostprocessing_106addAverageToParVec(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_ebq_velocityAverage, PyArrayObject *__pyx_v_permutations, PyArrayObject *__pyx_v_ebq_v_par_local);
3328static PyObject *__pyx_pf_15cpostprocessing_108copyParVecToElementBoundaryVelocity(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_permutations, PyArrayObject *__pyx_v_ebq_v_par_local);
3329static PyObject *__pyx_tp_new__initialisation_15cpostprocessing_NodeStarFactor(PyObject *o,
3330#
if CYTHON_VECTORCALL_TPNEW
3331 PyObject *
const *args, Py_ssize_t nargs, PyObject *kwnames
3333 PyObject *a, PyObject *k
3336static PyObject *__pyx_tp_new_vectorcall_15cpostprocessing_NodeStarFactor(PyTypeObject *t,
3337#
if CYTHON_VECTORCALL_TPNEW
3338 PyObject *
const *args, Py_ssize_t nargs, PyObject *kwnames
3340 PyObject *a, PyObject *k
3343#if CYTHON_VECTORCALL_TPNEW
3344static PyObject *__pyx_tp_new_15cpostprocessing_NodeStarFactor(PyTypeObject *t, PyObject *a, PyObject *k);
3346#if !CYTHON_VECTORCALL_TPNEW
3347#define __pyx_tp_new_15cpostprocessing_NodeStarFactor __pyx_tp_new_vectorcall_15cpostprocessing_NodeStarFactor
3349#if CYTHON_VECTORCALL_TPNEW
3350static PyObject *__pyx_tp_vectorcall_15cpostprocessing_NodeStarFactor(PyObject *t, PyObject *
const *args,
size_t nargsf, PyObject *kwnames);
3355#ifndef CYTHON_SMALL_CODE
3356#if defined(__clang__)
3357 #define CYTHON_SMALL_CODE
3358#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))
3359 #define CYTHON_SMALL_CODE __attribute__((cold))
3361 #define CYTHON_SMALL_CODE
3371 PyObject *__pyx_cython_runtime;
3372 PyObject *__pyx_empty_tuple;
3373 PyObject *__pyx_empty_bytes;
3374 PyObject *__pyx_empty_unicode;
3375 PyTypeObject *__pyx_ptype_7cpython_4type_type;
3376 PyTypeObject *__pyx_ptype_5numpy_dtype;
3377 PyTypeObject *__pyx_ptype_5numpy_flatiter;
3378 PyTypeObject *__pyx_ptype_5numpy_broadcast;
3379 PyTypeObject *__pyx_ptype_5numpy_ndarray;
3380 PyTypeObject *__pyx_ptype_5numpy_generic;
3381 PyTypeObject *__pyx_ptype_5numpy_number;
3382 PyTypeObject *__pyx_ptype_5numpy_integer;
3383 PyTypeObject *__pyx_ptype_5numpy_signedinteger;
3384 PyTypeObject *__pyx_ptype_5numpy_unsignedinteger;
3385 PyTypeObject *__pyx_ptype_5numpy_inexact;
3386 PyTypeObject *__pyx_ptype_5numpy_floating;
3387 PyTypeObject *__pyx_ptype_5numpy_complexfloating;
3388 PyTypeObject *__pyx_ptype_5numpy_flexible;
3389 PyTypeObject *__pyx_ptype_5numpy_character;
3390 PyTypeObject *__pyx_ptype_5numpy_ufunc;
3391 PyObject *__pyx_type_15cpostprocessing_NodeStarFactor;
3392 PyTypeObject *__pyx_ptype_15cpostprocessing_NodeStarFactor;
3393 __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_items;
3394 __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_pop;
3395 __Pyx_CachedCFunction __pyx_umethod_PyDict_Type_values;
3396 PyObject *__pyx_tuple[1];
3397 PyObject *__pyx_codeobj_tab[59];
3398 PyObject *__pyx_string_tab[287];
3401#if CYTHON_COMPILING_IN_LIMITED_API
3402PyObject *__Pyx_PyFrozenDictType;
3406PyTypeObject *__pyx_CommonTypesMetaclassType;
3409#if CYTHON_COMPILING_IN_LIMITED_API
3410PyObject *__Pyx_CachedMethodType;
3414PyTypeObject *__pyx_CyFunctionType;
3417struct __Pyx_CodeObjectCache __pyx_code_cache;
3425#if CYTHON_USE_MODULE_STATE
3428extern struct PyModuleDef __pyx_moduledef;
3431static struct PyModuleDef __pyx_moduledef;
3434#define __pyx_mstate_global (__Pyx_PyModule_GetState(__Pyx_State_FindModule(&__pyx_moduledef)))
3436#define __pyx_m (__Pyx_State_FindModule(&__pyx_moduledef))
3438static __pyx_mstatetype __pyx_mstate_global_static =
3444static __pyx_mstatetype *
const __pyx_mstate_global = &__pyx_mstate_global_static;
3447#define __pyx_kp_u_tree_fragment __pyx_string_tab[0]
3448#define __pyx_kp_u_ __pyx_string_tab[1]
3449#define __pyx_kp_u_Note_that_Cython_is_deliberately __pyx_string_tab[2]
3450#define __pyx_kp_u_add_note __pyx_string_tab[3]
3451#define __pyx_kp_u_disable __pyx_string_tab[4]
3452#define __pyx_kp_u_enable __pyx_string_tab[5]
3453#define __pyx_kp_u_gc __pyx_string_tab[6]
3454#define __pyx_kp_u_isenabled __pyx_string_tab[7]
3455#define __pyx_kp_u_no_default___reduce___due_to_non __pyx_string_tab[8]
3456#define __pyx_kp_u_numpy__core_multiarray_failed_to __pyx_string_tab[9]
3457#define __pyx_kp_u_numpy__core_umath_failed_to_impo __pyx_string_tab[10]
3458#define __pyx_kp_u_proteus_cpostprocessing_pyx __pyx_string_tab[11]
3459#define __pyx_n_u_BDMmatPivots_element __pyx_string_tab[12]
3460#define __pyx_n_u_BDMmat_element __pyx_string_tab[13]
3461#define __pyx_n_u_I __pyx_string_tab[14]
3462#define __pyx_n_u_NodeStarFactor __pyx_string_tab[15]
3463#define __pyx_n_u_NodeStarFactor___reduce_cython __pyx_string_tab[16]
3464#define __pyx_n_u_NodeStarFactor___setstate_cython __pyx_string_tab[17]
3465#define __pyx_n_u_NodeStarFactor_copyData __pyx_string_tab[18]
3466#define __pyx_n_u_NodeStarFactor_setU __pyx_string_tab[19]
3467#define __pyx_n_u_Pyx_PyDict_NextRef __pyx_string_tab[20]
3468#define __pyx_n_u_annotate __pyx_string_tab[21]
3469#define __pyx_n_u_class_getitem __pyx_string_tab[22]
3470#define __pyx_n_u_func __pyx_string_tab[23]
3471#define __pyx_n_u_getstate __pyx_string_tab[24]
3472#define __pyx_n_u_main __pyx_string_tab[25]
3473#define __pyx_n_u_module __pyx_string_tab[26]
3474#define __pyx_n_u_name __pyx_string_tab[27]
3475#define __pyx_n_u_pyx_state __pyx_string_tab[28]
3476#define __pyx_n_u_qualname __pyx_string_tab[29]
3477#define __pyx_n_u_reduce __pyx_string_tab[30]
3478#define __pyx_n_u_reduce_cython __pyx_string_tab[31]
3479#define __pyx_n_u_reduce_ex __pyx_string_tab[32]
3480#define __pyx_n_u_set_name __pyx_string_tab[33]
3481#define __pyx_n_u_setstate __pyx_string_tab[34]
3482#define __pyx_n_u_setstate_cython __pyx_string_tab[35]
3483#define __pyx_n_u_test __pyx_string_tab[36]
3484#define __pyx_n_u_is_coroutine __pyx_string_tab[37]
3485#define __pyx_n_u_subdomain_U_copy_global2local __pyx_string_tab[38]
3486#define __pyx_n_u_subdomain_U_copy_local2global __pyx_string_tab[39]
3487#define __pyx_n_u_a __pyx_string_tab[40]
3488#define __pyx_n_u_aElementQuadWeights __pyx_string_tab[41]
3489#define __pyx_n_u_abs_det_J __pyx_string_tab[42]
3490#define __pyx_n_u_addAverageToParVec __pyx_string_tab[43]
3491#define __pyx_n_u_advectiveVelocity __pyx_string_tab[44]
3492#define __pyx_n_u_alpha __pyx_string_tab[45]
3493#define __pyx_n_u_alphaFactor __pyx_string_tab[46]
3494#define __pyx_n_u_asyncio_coroutines __pyx_string_tab[47]
3495#define __pyx_n_u_buildBDM2rhs __pyx_string_tab[48]
3496#define __pyx_n_u_buildLocalBDM1projectionMatrices __pyx_string_tab[49]
3497#define __pyx_n_u_buildLocalBDM2projectionMatrices __pyx_string_tab[50]
3498#define __pyx_n_u_calculateConservationFluxPWL __pyx_string_tab[51]
3499#define __pyx_n_u_calculateConservationFluxPWL_noN __pyx_string_tab[52]
3500#define __pyx_n_u_calculateConservationFluxPWL_opt __pyx_string_tab[53]
3501#define __pyx_n_u_calculateConservationJacobianPWL __pyx_string_tab[54]
3502#define __pyx_n_u_calculateConservationJacobianPWL_3 __pyx_string_tab[55]
3503#define __pyx_n_u_calculateConservationJacobianPWL_2 __pyx_string_tab[56]
3504#define __pyx_n_u_calculateConservationResidualGlo __pyx_string_tab[57]
3505#define __pyx_n_u_calculateConservationResidualPWL __pyx_string_tab[58]
3506#define __pyx_n_u_calculateConservationResidualPWL_4 __pyx_string_tab[59]
3507#define __pyx_n_u_calculateConservationResidualPWL_2 __pyx_string_tab[60]
3508#define __pyx_n_u_calculateConservationResidualPWL_3 __pyx_string_tab[61]
3509#define __pyx_n_u_calculateElementResidualPWL __pyx_string_tab[62]
3510#define __pyx_n_u_cline_in_traceback __pyx_string_tab[63]
3511#define __pyx_n_u_colind __pyx_string_tab[64]
3512#define __pyx_n_u_computeFluxCorrectionPWC __pyx_string_tab[65]
3513#define __pyx_n_u_conservationResidual __pyx_string_tab[66]
3514#define __pyx_n_u_copyData __pyx_string_tab[67]
3515#define __pyx_n_u_copyElementBoundaryVelocityToPar __pyx_string_tab[68]
3516#define __pyx_n_u_copyParVecToElementBoundaryVeloc __pyx_string_tab[69]
3517#define __pyx_n_u_cpostprocessing __pyx_string_tab[70]
3518#define __pyx_n_u_dS __pyx_string_tab[71]
3519#define __pyx_n_u_degree __pyx_string_tab[72]
3520#define __pyx_n_u_detJ __pyx_string_tab[73]
3521#define __pyx_n_u_diffusionTensor __pyx_string_tab[74]
3522#define __pyx_n_u_dofMapl2g __pyx_string_tab[75]
3523#define __pyx_n_u_dofStarElementNeighbors __pyx_string_tab[76]
3524#define __pyx_n_u_dofStarElements __pyx_string_tab[77]
3525#define __pyx_n_u_dx __pyx_string_tab[78]
3526#define __pyx_n_u_ebN __pyx_string_tab[79]
3527#define __pyx_n_u_ebq_global_flux __pyx_string_tab[80]
3528#define __pyx_n_u_ebq_global_velocity __pyx_string_tab[81]
3529#define __pyx_n_u_ebq_n __pyx_string_tab[82]
3530#define __pyx_n_u_ebq_v __pyx_string_tab[83]
3531#define __pyx_n_u_ebq_v_par_local __pyx_string_tab[84]
3532#define __pyx_n_u_ebq_velocity __pyx_string_tab[85]
3533#define __pyx_n_u_ebq_velocityAverage __pyx_string_tab[86]
3534#define __pyx_n_u_ebqe_v __pyx_string_tab[87]
3535#define __pyx_n_u_ebqe_velocity __pyx_string_tab[88]
3536#define __pyx_n_u_edgeFlags __pyx_string_tab[89]
3537#define __pyx_n_u_elementBarycenters __pyx_string_tab[90]
3538#define __pyx_n_u_elementBoundariesArray __pyx_string_tab[91]
3539#define __pyx_n_u_elementBoundaryElements __pyx_string_tab[92]
3540#define __pyx_n_u_elementBoundaryElementsArray __pyx_string_tab[93]
3541#define __pyx_n_u_elementBoundaryLocalElementBound __pyx_string_tab[94]
3542#define __pyx_n_u_elementBoundaryQuadratureWeights __pyx_string_tab[95]
3543#define __pyx_n_u_elementNodes __pyx_string_tab[96]
3544#define __pyx_n_u_elementNodesArray __pyx_string_tab[97]
3545#define __pyx_n_u_elementResidual __pyx_string_tab[98]
3546#define __pyx_n_u_elementResidualPWL __pyx_string_tab[99]
3547#define __pyx_n_u_element_locations __pyx_string_tab[100]
3548#define __pyx_n_u_exteriorElementBoundaries __pyx_string_tab[101]
3549#define __pyx_n_u_exteriorElementBoundariesArray __pyx_string_tab[102]
3550#define __pyx_n_u_exteriorElementBoundariesToSkip __pyx_string_tab[103]
3551#define __pyx_n_u_f __pyx_string_tab[104]
3552#define __pyx_n_u_factorLocalBDM1projectionMatrice __pyx_string_tab[105]
3553#define __pyx_n_u_factorLocalBDM2projectionMatrice __pyx_string_tab[106]
3554#define __pyx_n_u_flux __pyx_string_tab[107]
3555#define __pyx_n_u_fluxBoundaryNodes __pyx_string_tab[108]
3556#define __pyx_n_u_fluxCorrection __pyx_string_tab[109]
3557#define __pyx_n_u_fluxCorrectionVelocityUpdate __pyx_string_tab[110]
3558#define __pyx_n_u_fluxElementBoundaries __pyx_string_tab[111]
3559#define __pyx_n_u_flux_elementBoundary __pyx_string_tab[112]
3560#define __pyx_n_u_freeLocal_element __pyx_string_tab[113]
3561#define __pyx_n_u_getElementBDM1velocityValuesLagr __pyx_string_tab[114]
3562#define __pyx_n_u_getElementBDM2velocityValuesLagr __pyx_string_tab[115]
3563#define __pyx_n_u_getElementBoundaryBDM1velocityVa __pyx_string_tab[116]
3564#define __pyx_n_u_getElementBoundaryRT0velocityVal __pyx_string_tab[117]
3565#define __pyx_n_u_getElementBoundaryRT0velocityVal_2 __pyx_string_tab[118]
3566#define __pyx_n_u_getElementLDGvelocityValuesLagra __pyx_string_tab[119]
3567#define __pyx_n_u_getElementRT0velocityValues __pyx_string_tab[120]
3568#define __pyx_n_u_getElementRT0velocityValuesFluxR __pyx_string_tab[121]
3569#define __pyx_n_u_getGlobalElementBoundaryBDM1velo __pyx_string_tab[122]
3570#define __pyx_n_u_getGlobalElementBoundaryRT0veloc __pyx_string_tab[123]
3571#define __pyx_n_u_getGlobalElementBoundaryRT0veloc_2 __pyx_string_tab[124]
3572#define __pyx_n_u_getGlobalExteriorElementBoundary_2 __pyx_string_tab[125]
3573#define __pyx_n_u_getGlobalExteriorElementBoundary __pyx_string_tab[126]
3574#define __pyx_n_u_getGlobalExteriorElementBoundary_3 __pyx_string_tab[127]
3575#define __pyx_n_u_getRT0velocityValuesFluxRep_arbi __pyx_string_tab[128]
3576#define __pyx_n_u_grad_phi __pyx_string_tab[129]
3577#define __pyx_n_u_gradphi __pyx_string_tab[130]
3578#define __pyx_n_u_gradu __pyx_string_tab[131]
3579#define __pyx_n_u_i __pyx_string_tab[132]
3580#define __pyx_n_u_interiorElementBoundaries __pyx_string_tab[133]
3581#define __pyx_n_u_internalNodes __pyx_string_tab[134]
3582#define __pyx_n_u_items __pyx_string_tab[135]
3583#define __pyx_n_u_k __pyx_string_tab[136]
3584#define __pyx_n_u_max_nN_owned __pyx_string_tab[137]
3585#define __pyx_n_u_mt __pyx_string_tab[138]
3586#define __pyx_n_u_n __pyx_string_tab[139]
3587#define __pyx_n_u_nDOF_trial_element __pyx_string_tab[140]
3588#define __pyx_n_u_nElementBoundaries __pyx_string_tab[141]
3589#define __pyx_n_u_nElements_dof __pyx_string_tab[142]
3590#define __pyx_n_u_nElements_node __pyx_string_tab[143]
3591#define __pyx_n_u_nFreeDOF_element __pyx_string_tab[144]
3592#define __pyx_n_u_nNodes_owned __pyx_string_tab[145]
3593#define __pyx_n_u_nPoints __pyx_string_tab[146]
3594#define __pyx_n_u_nQuadraturePoints __pyx_string_tab[147]
3595#define __pyx_n_u_nSpace __pyx_string_tab[148]
3596#define __pyx_n_u_nVDOF_element __pyx_string_tab[149]
3597#define __pyx_n_u_nVDOFs_element __pyx_string_tab[150]
3598#define __pyx_n_u_nodeArray __pyx_string_tab[151]
3599#define __pyx_n_u_nodeStarElementNeighbors __pyx_string_tab[152]
3600#define __pyx_n_u_nodeStarElements __pyx_string_tab[153]
3601#define __pyx_n_u_nodeStarElementsArray __pyx_string_tab[154]
3602#define __pyx_n_u_nodeStarElementsNeighborsArray __pyx_string_tab[155]
3603#define __pyx_n_u_nodeStarFactor __pyx_string_tab[156]
3604#define __pyx_n_u_np __pyx_string_tab[157]
3605#define __pyx_n_u_numpy __pyx_string_tab[158]
3606#define __pyx_n_u_other __pyx_string_tab[159]
3607#define __pyx_n_u_p1_vdofs __pyx_string_tab[160]
3608#define __pyx_n_u_permutations __pyx_string_tab[161]
3609#define __pyx_n_u_phi __pyx_string_tab[162]
3610#define __pyx_n_u_piola_trial_fun __pyx_string_tab[163]
3611#define __pyx_n_u_pop __pyx_string_tab[164]
3612#define __pyx_n_u_postProcessRT0potentialFromP1nc __pyx_string_tab[165]
3613#define __pyx_n_u_postProcessRT0potentialFromP1nc_2 __pyx_string_tab[166]
3614#define __pyx_n_u_postProcessRT0velocityFromP1nc __pyx_string_tab[167]
3615#define __pyx_n_u_postProcessRT0velocityFromP1nc_s __pyx_string_tab[168]
3616#define __pyx_n_u_projectElementBoundaryFluxToRT0f __pyx_string_tab[169]
3617#define __pyx_n_u_projectElementBoundaryVelocityTo __pyx_string_tab[170]
3618#define __pyx_n_u_pwcV __pyx_string_tab[171]
3619#define __pyx_n_u_pwcW __pyx_string_tab[172]
3620#define __pyx_n_u_q_basis_vals __pyx_string_tab[173]
3621#define __pyx_n_u_q_v __pyx_string_tab[174]
3622#define __pyx_n_u_q_vdofs __pyx_string_tab[175]
3623#define __pyx_n_u_q_velocity __pyx_string_tab[176]
3624#define __pyx_n_u_quad_a __pyx_string_tab[177]
3625#define __pyx_n_u_quad_f __pyx_string_tab[178]
3626#define __pyx_n_u_r __pyx_string_tab[179]
3627#define __pyx_n_u_residual __pyx_string_tab[180]
3628#define __pyx_n_u_rowptr __pyx_string_tab[181]
3629#define __pyx_n_u_rt0potential __pyx_string_tab[182]
3630#define __pyx_n_u_rt0vdofs __pyx_string_tab[183]
3631#define __pyx_n_u_rt0vdofs_element __pyx_string_tab[184]
3632#define __pyx_n_u_self __pyx_string_tab[185]
3633#define __pyx_n_u_setU __pyx_string_tab[186]
3634#define __pyx_n_u_setdefault __pyx_string_tab[187]
3635#define __pyx_n_u_skipflag_elementBoundaries __pyx_string_tab[188]
3636#define __pyx_n_u_solveLocalBDM1projection __pyx_string_tab[189]
3637#define __pyx_n_u_solveLocalBDM1projectionFromFlux __pyx_string_tab[190]
3638#define __pyx_n_u_solveLocalBDM2projection __pyx_string_tab[191]
3639#define __pyx_n_u_sqrt_det_g __pyx_string_tab[192]
3640#define __pyx_n_u_subdomain_U __pyx_string_tab[193]
3641#define __pyx_n_u_sunWheelerGSsweep __pyx_string_tab[194]
3642#define __pyx_n_u_u __pyx_string_tab[195]
3643#define __pyx_n_u_uQuadratureWeights_element __pyx_string_tab[196]
3644#define __pyx_n_u_uQuadratureWeights_elementBounda __pyx_string_tab[197]
3645#define __pyx_n_u_u_elementBoundary __pyx_string_tab[198]
3646#define __pyx_n_u_updateAdvectiveVelocityPointEval __pyx_string_tab[199]
3647#define __pyx_n_u_updateCoef __pyx_string_tab[200]
3648#define __pyx_n_u_updateDiffusiveVelocityPointEval __pyx_string_tab[201]
3649#define __pyx_n_u_updateDiffusiveVelocityPointEval_2 __pyx_string_tab[202]
3650#define __pyx_n_u_updateRT0velocityWithAveragedPot __pyx_string_tab[203]
3651#define __pyx_n_u_updateRT0velocityWithAveragedPot_2 __pyx_string_tab[204]
3652#define __pyx_n_u_updateSelectedExteriorElementBou __pyx_string_tab[205]
3653#define __pyx_n_u_vAverage __pyx_string_tab[206]
3654#define __pyx_n_u_vConservative __pyx_string_tab[207]
3655#define __pyx_n_u_vConservative_element __pyx_string_tab[208]
3656#define __pyx_n_u_v_ebqe __pyx_string_tab[209]
3657#define __pyx_n_u_v_element __pyx_string_tab[210]
3658#define __pyx_n_u_v_elementBoundary __pyx_string_tab[211]
3659#define __pyx_n_u_v_elementBoundary_global __pyx_string_tab[212]
3660#define __pyx_n_u_val __pyx_string_tab[213]
3661#define __pyx_n_u_values __pyx_string_tab[214]
3662#define __pyx_n_u_vdofs __pyx_string_tab[215]
3663#define __pyx_n_u_velocity __pyx_string_tab[216]
3664#define __pyx_n_u_velocity_element __pyx_string_tab[217]
3665#define __pyx_n_u_w __pyx_string_tab[218]
3666#define __pyx_n_u_w_dS_f __pyx_string_tab[219]
3667#define __pyx_n_u_w_dV_m __pyx_string_tab[220]
3668#define __pyx_n_u_w_dV_r __pyx_string_tab[221]
3669#define __pyx_n_u_w_int_div_free __pyx_string_tab[222]
3670#define __pyx_n_u_w_int_test_grads __pyx_string_tab[223]
3671#define __pyx_n_u_w_interior_divfree __pyx_string_tab[224]
3672#define __pyx_n_u_w_interior_gradients __pyx_string_tab[225]
3673#define __pyx_n_u_x __pyx_string_tab[226]
3674#define __pyx_n_u_x_ebqe __pyx_string_tab[227]
3675#define __pyx_n_u_x_element __pyx_string_tab[228]
3676#define __pyx_n_u_x_elementBoundary __pyx_string_tab[229]
3677#define __pyx_n_u_x_elementBoundary_global __pyx_string_tab[230]
3678#define __pyx_kp_b_iso88591_Q __pyx_string_tab[231]
3679#define __pyx_kp_b_iso88591_vQa_7vQa_3_00DA __pyx_string_tab[232]
3680#define __pyx_kp_b_iso88591_0_vQa18_a12 __pyx_string_tab[233]
3681#define __pyx_kp_b_iso88591_z_q_3a_6_S_xvRq_c_q_az_q_9_q_9 __pyx_string_tab[234]
3682#define __pyx_kp_b_iso88591_xuBhfAXU_1_AQ_5V1HE_77H_7xq __pyx_string_tab[235]
3683#define __pyx_kp_b_iso88591_E_q_6_V2Q_S_6_AZvQa_Qj_aq_8_aq __pyx_string_tab[236]
3684#define __pyx_kp_b_iso88591_j_ar_V1Baq_xvRq_c_q_az_q_6fAQ_6 __pyx_string_tab[237]
3685#define __pyx_kp_b_iso88591_9F_1_F_1_F_1_Ya_Q_Ya __pyx_string_tab[238]
3686#define __pyx_kp_b_iso88591_2_5V1A_U__A_q __pyx_string_tab[239]
3687#define __pyx_kp_b_iso88591_F_1_F_1_F_1_F_1_55Fa_55EQ_55Fa __pyx_string_tab[240]
3688#define __pyx_kp_b_iso88591_xuBhfAXU_1_AQ_5V1HE_7_a_7xq_7xq __pyx_string_tab[241]
3689#define __pyx_kp_b_iso88591_1N_1_q_A_1 __pyx_string_tab[242]
3690#define __pyx_kp_b_iso88591_q_V1A_V1A_V1A_V1A_fAQ_V1A_6fAQ __pyx_string_tab[243]
3691#define __pyx_kp_b_iso88591_1_1I_qPQ1I_qPQ1I_qPQ188TTU1_SST __pyx_string_tab[244]
3692#define __pyx_kp_b_iso88591_2_6_236_236_236_2_2_AQ2_MQ2_LA __pyx_string_tab[245]
3693#define __pyx_kp_b_iso88591_l_2_q_1_xvRq_c_q_vQa_GvQa_GvQa __pyx_string_tab[246]
3694#define __pyx_kp_b_iso88591_m6_Bm6_AQ_xvRq_c_q_DA_RXXYYZERR __pyx_string_tab[247]
3695#define __pyx_kp_b_iso88591_1_q_OvUVVXXYYZ_xvRq_c_q_DAV6QRR __pyx_string_tab[248]
3696#define __pyx_kp_b_iso88591_AQ_0_aq_0_aq_L_A_nA __pyx_string_tab[249]
3697#define __pyx_kp_b_iso88591_q_6fAQ_5V1A_Q_A_q __pyx_string_tab[250]
3698#define __pyx_kp_b_iso88591_Q_NfTUUV_NfTUUV_NfTUUV_fAQ_55QQ __pyx_string_tab[251]
3699#define __pyx_kp_b_iso88591_9_9WW__9QQWWXXY9QQWWXXY9_9__9CC __pyx_string_tab[252]
3700#define __pyx_kp_b_iso88591_xuBhfAXU_1_q_08_axuAQ0107vQ07vQ __pyx_string_tab[253]
3701#define __pyx_kp_b_iso88591_vQa_fAQ_O6_uAQ_E_aq_U_1_AU_U_1E __pyx_string_tab[254]
3702#define __pyx_kp_b_iso88591_vQa_fAQ_O6_uAQ_E_aq_U_1_q_L_S_b __pyx_string_tab[255]
3703#define __pyx_kp_b_iso88591_vQa_fAQ_O6_Qa_E_aq_U_1_q_d_SSTT __pyx_string_tab[256]
3704#define __pyx_kp_b_iso88591_q_V1A_V1A_V1A_V1A_fAQ_fAQ_1_q_a __pyx_string_tab[257]
3705#define __pyx_kp_b_iso88591_q_7vQa_9_q_9_q_a_a_a __pyx_string_tab[258]
3706#define __pyx_kp_b_iso88591_6_6_36_36_36_4IQ_11B_4IQ_4IQ_44 __pyx_string_tab[259]
3707#define __pyx_kp_b_iso88591_2_6_fAQ_4F_7_q_7t1_7vQ_7s_7wa_7 __pyx_string_tab[260]
3708#define __pyx_kp_b_iso88591_2_2C6_2C6_2C6_2C6_2_6_2_IQ299J __pyx_string_tab[261]
3709#define __pyx_kp_b_iso88591_q_Rq_aq_Qa_Q_OvUVVW_OvUVVW_GvQa __pyx_string_tab[262]
3710#define __pyx_kp_b_iso88591_q_fAQ_fAQ_fAQ_fAQ_6fAQ_2_C1_K1 __pyx_string_tab[263]
3711#define __pyx_kp_b_iso88591_1_1J_PQQR12_12_12_188QQR188Oq18 __pyx_string_tab[264]
3712#define __pyx_kp_b_iso88591_8q8PPVVWWX8PPVVWWX8PPVVWWX8A_q __pyx_string_tab[265]
3713#define __pyx_kp_b_iso88591_q_V1A_V1A_V1A_V1A_fAQ_fAQ_1_q_a_2 __pyx_string_tab[266]
3714#define __pyx_kp_b_iso88591_5AQfAQ56fAQ5_F_7_qPQ5_F_5_F_5_t __pyx_string_tab[267]
3715#define __pyx_kp_b_iso88591_q_fAQ_FfAQ_FfAQ_I_qPQ_J_ST_GGXX __pyx_string_tab[268]
3716#define __pyx_kp_b_iso88591_1BfAQ_F_1_V1A_V1A_fAQ_fAQ_F_1_D __pyx_string_tab[269]
3717#define __pyx_kp_b_iso88591_1E_q_q_q_fAQ_q_aq_nA_q_9A_fA_e1 __pyx_string_tab[270]
3718#define __pyx_kp_b_iso88591_V1A_0_aq_2_2_6_6_9_9_7q_EQ_2Q_1 __pyx_string_tab[271]
3719#define __pyx_kp_b_iso88591_q_V1A_V1A_V1A_4F_1_V1A_fAQ_V1A __pyx_string_tab[272]
3720#define __pyx_kp_b_iso88591_2_F_12K6QRRS2K6QRRS24F_124F_12A __pyx_string_tab[273]
3721#define __pyx_kp_b_iso88591_5A5I_qPQ5NfTUUV5NfTUUV57vQa57vQ __pyx_string_tab[274]
3722#define __pyx_kp_b_iso88591_as_RRXXYYZ_qPQ_F_1_TTZZ_TTZZ_F __pyx_string_tab[275]
3723#define __pyx_kp_b_iso88591_q_V1A_5V1A_q_A_q_A_q_q_q_q_1_q __pyx_string_tab[276]
3724#define __pyx_kp_b_iso88591_1A_9_q_V1A_EV1A_EV1A_V1A_V1A_V1 __pyx_string_tab[277]
3725#define __pyx_kp_b_iso88591_s_d_vQa_vQa_0_aq_6_6_vQa_11A_11 __pyx_string_tab[278]
3726#define __pyx_kp_b_iso88591_aq_aq_aq_aq_aq_aq_11K1_11C1_11D __pyx_string_tab[279]
3727#define __pyx_kp_b_iso88591_s_U_gWA_AU_2_36_fAQ_fAQ_2_4F_4F __pyx_string_tab[280]
3728#define __pyx_kp_b_iso88591_as_RRXXYYZ_1F_1_TTZZ_TTZZ_F_1_F __pyx_string_tab[281]
3729#define __pyx_kp_b_iso88591_6_6_6_6_6_1_q_1_q_44Na_44Fa_44G __pyx_string_tab[282]
3730#define __pyx_kp_b_iso88591_q_q_A_q_A_q_q_q_q_1_q_q_H_H_Fa __pyx_string_tab[283]
3731#define __pyx_kp_b_iso88591_1A_V1A_EV1A_EV1A_V1A_V1A_V1A_V1 __pyx_string_tab[284]
3732#define __pyx_kp_b_iso88591_A_d_d_d_d_d_d_d_d_d_d_d_d_d_d __pyx_string_tab[285]
3733#define __pyx_kp_b_iso88591_A_E_at4q_U_4t_D_ARq_Q __pyx_string_tab[286]
3735#if CYTHON_USE_MODULE_STATE
3736static CYTHON_SMALL_CODE
int __pyx_m_clear(PyObject *m) {
3737 __pyx_mstatetype *clear_module_state = __Pyx_PyModule_GetState(m);
3738 if (!clear_module_state)
return 0;
3739 Py_CLEAR(clear_module_state->__pyx_d);
3740 Py_CLEAR(clear_module_state->__pyx_b);
3741 Py_CLEAR(clear_module_state->__pyx_cython_runtime);
3742 Py_CLEAR(clear_module_state->__pyx_empty_tuple);
3743 Py_CLEAR(clear_module_state->__pyx_empty_bytes);
3744 Py_CLEAR(clear_module_state->__pyx_empty_unicode);
3745 #if CYTHON_PEP489_MULTI_PHASE_INIT
3746 __Pyx_State_RemoveModule(NULL);
3748 Py_CLEAR(clear_module_state->__pyx_ptype_7cpython_4type_type);
3749 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_dtype);
3750 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_flatiter);
3751 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_broadcast);
3752 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_ndarray);
3753 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_generic);
3754 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_number);
3755 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_integer);
3756 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_signedinteger);
3757 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_unsignedinteger);
3758 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_inexact);
3759 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_floating);
3760 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_complexfloating);
3761 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_flexible);
3762 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_character);
3763 Py_CLEAR(clear_module_state->__pyx_ptype_5numpy_ufunc);
3764 Py_CLEAR(clear_module_state->__pyx_ptype_15cpostprocessing_NodeStarFactor);
3765 Py_CLEAR(clear_module_state->__pyx_type_15cpostprocessing_NodeStarFactor);
3766 Py_CLEAR(clear_module_state->__pyx_umethod_PyDict_Type_items.method);
3767 Py_CLEAR(clear_module_state->__pyx_umethod_PyDict_Type_pop.method);
3768 Py_CLEAR(clear_module_state->__pyx_umethod_PyDict_Type_values.method);
3769 for (
int i=0; i<1; ++i) { Py_CLEAR(clear_module_state->__pyx_tuple[i]); }
3770 for (
int i=0; i<59; ++i) { Py_CLEAR(clear_module_state->__pyx_codeobj_tab[i]); }
3771 for (
int i=0; i<287; ++i) { Py_CLEAR(clear_module_state->__pyx_string_tab[i]); }
3774Py_CLEAR(clear_module_state->__pyx_CommonTypesMetaclassType);
3777Py_CLEAR(clear_module_state->__pyx_CyFunctionType);
3784#if CYTHON_USE_MODULE_STATE
3785static CYTHON_SMALL_CODE
int __pyx_m_traverse(PyObject *m, visitproc visit,
void *arg) {
3786 __pyx_mstatetype *traverse_module_state = __Pyx_PyModule_GetState(m);
3787 if (!traverse_module_state)
return 0;
3788 Py_VISIT(traverse_module_state->__pyx_d);
3789 Py_VISIT(traverse_module_state->__pyx_b);
3790 Py_VISIT(traverse_module_state->__pyx_cython_runtime);
3791 __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_tuple);
3792 __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_bytes);
3793 __Pyx_VISIT_CONST(traverse_module_state->__pyx_empty_unicode);
3794 Py_VISIT(traverse_module_state->__pyx_ptype_7cpython_4type_type);
3795 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_dtype);
3796 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_flatiter);
3797 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_broadcast);
3798 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_ndarray);
3799 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_generic);
3800 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_number);
3801 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_integer);
3802 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_signedinteger);
3803 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_unsignedinteger);
3804 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_inexact);
3805 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_floating);
3806 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_complexfloating);
3807 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_flexible);
3808 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_character);
3809 Py_VISIT(traverse_module_state->__pyx_ptype_5numpy_ufunc);
3810 Py_VISIT(traverse_module_state->__pyx_ptype_15cpostprocessing_NodeStarFactor);
3811 Py_VISIT(traverse_module_state->__pyx_type_15cpostprocessing_NodeStarFactor);
3812 Py_VISIT(traverse_module_state->__pyx_umethod_PyDict_Type_items.method);
3813 Py_VISIT(traverse_module_state->__pyx_umethod_PyDict_Type_pop.method);
3814 Py_VISIT(traverse_module_state->__pyx_umethod_PyDict_Type_values.method);
3815 for (
int i=0; i<1; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_tuple[i]); }
3816 for (
int i=0; i<59; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_codeobj_tab[i]); }
3817 for (
int i=0; i<287; ++i) { __Pyx_VISIT_CONST(traverse_module_state->__pyx_string_tab[i]); }
3820Py_VISIT(traverse_module_state->__pyx_CommonTypesMetaclassType);
3823Py_VISIT(traverse_module_state->__pyx_CyFunctionType);
3839static CYTHON_INLINE PyTypeObject *__pyx_f_5numpy_5dtype_7typeobj___get__(PyArray_Descr *__pyx_v_self) {
3840 PyTypeObject *__pyx_r;
3851 __pyx_r = PyDataType_TYPEOBJ(__pyx_v_self);
3876static CYTHON_INLINE
char __pyx_f_5numpy_5dtype_4kind___get__(PyArray_Descr *__pyx_v_self) {
3888 __pyx_r = PyDataType_KIND(__pyx_v_self);
3913static CYTHON_INLINE
char __pyx_f_5numpy_5dtype_4type___get__(PyArray_Descr *__pyx_v_self) {
3925 __pyx_r = PyDataType_TYPE(__pyx_v_self);
3950static CYTHON_INLINE
char __pyx_f_5numpy_5dtype_9byteorder___get__(PyArray_Descr *__pyx_v_self) {
3962 __pyx_r = PyDataType_BYTEORDER(__pyx_v_self);
3987static CYTHON_INLINE
int __pyx_f_5numpy_5dtype_8type_num___get__(PyArray_Descr *__pyx_v_self) {
3999 __pyx_r = PyDataType_TYPENUM(__pyx_v_self);
4024static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_8itemsize___get__(PyArray_Descr *__pyx_v_self) {
4036 __pyx_r = PyDataType_ELSIZE(__pyx_v_self);
4061static CYTHON_INLINE npy_intp __pyx_f_5numpy_5dtype_9alignment___get__(PyArray_Descr *__pyx_v_self) {
4073 __pyx_r = PyDataType_ALIGNMENT(__pyx_v_self);
4098static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_6fields___get__(PyArray_Descr *__pyx_v_self) {
4099 PyObject *__pyx_r = NULL;
4100 __Pyx_RefNannyDeclarations
4101 PyObject *__pyx_t_1;
4102 __Pyx_RefNannySetupContext(
"__get__", 0);
4111 __pyx_t_1 = PyDataType_FIELDS(__pyx_v_self);
4114 PyObject *__pyx_temp;
4116 __pyx_temp = __pyx_r;
4117 __Pyx_INCREF(((PyObject *)__pyx_t_1));
4118 __pyx_r = ((PyObject *)__pyx_t_1);
4120 __Pyx_XDECREF(__pyx_temp);
4135 __Pyx_XGIVEREF(__pyx_r);
4136 __Pyx_RefNannyFinishContext();
4148static CYTHON_INLINE PyObject *__pyx_f_5numpy_5dtype_5names___get__(PyArray_Descr *__pyx_v_self) {
4149 PyObject *__pyx_r = NULL;
4150 __Pyx_RefNannyDeclarations
4151 PyObject *__pyx_t_1;
4152 __Pyx_RefNannySetupContext(
"__get__", 0);
4161 __pyx_t_1 = PyDataType_NAMES(__pyx_v_self);
4164 PyObject *__pyx_temp;
4166 __pyx_temp = __pyx_r;
4167 __Pyx_INCREF(((PyObject*)__pyx_t_1));
4168 __pyx_r = ((PyObject*)__pyx_t_1);
4170 __Pyx_XDECREF(__pyx_temp);
4185 __Pyx_XGIVEREF(__pyx_r);
4186 __Pyx_RefNannyFinishContext();
4198static CYTHON_INLINE PyArray_ArrayDescr *__pyx_f_5numpy_5dtype_8subarray___get__(PyArray_Descr *__pyx_v_self) {
4199 PyArray_ArrayDescr *__pyx_r;
4210 __pyx_r = PyDataType_SUBARRAY(__pyx_v_self);
4235static CYTHON_INLINE npy_uint64 __pyx_f_5numpy_5dtype_5flags___get__(PyArray_Descr *__pyx_v_self) {
4247 __pyx_r = PyDataType_FLAGS(__pyx_v_self);
4272static CYTHON_INLINE
int __pyx_f_5numpy_9broadcast_7numiter___get__(PyArrayMultiIterObject *__pyx_v_self) {
4284 __pyx_r = PyArray_MultiIter_NUMITER(__pyx_v_self);
4309static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_4size___get__(PyArrayMultiIterObject *__pyx_v_self) {
4321 __pyx_r = PyArray_MultiIter_SIZE(__pyx_v_self);
4346static CYTHON_INLINE npy_intp __pyx_f_5numpy_9broadcast_5index___get__(PyArrayMultiIterObject *__pyx_v_self) {
4358 __pyx_r = PyArray_MultiIter_INDEX(__pyx_v_self);
4383static CYTHON_INLINE
int __pyx_f_5numpy_9broadcast_2nd___get__(PyArrayMultiIterObject *__pyx_v_self) {
4395 __pyx_r = PyArray_MultiIter_NDIM(__pyx_v_self);
4420static CYTHON_INLINE npy_intp *__pyx_f_5numpy_9broadcast_10dimensions___get__(PyArrayMultiIterObject *__pyx_v_self) {
4432 __pyx_r = PyArray_MultiIter_DIMS(__pyx_v_self);
4457static CYTHON_INLINE
void **__pyx_f_5numpy_9broadcast_5iters___get__(PyArrayMultiIterObject *__pyx_v_self) {
4469 __pyx_r = PyArray_MultiIter_ITERS(__pyx_v_self);
4494static CYTHON_INLINE PyObject *__pyx_f_5numpy_7ndarray_4base___get__(PyArrayObject *__pyx_v_self) {
4506 __pyx_r = PyArray_BASE(__pyx_v_self);
4531static CYTHON_INLINE PyArray_Descr *__pyx_f_5numpy_7ndarray_5descr___get__(PyArrayObject *__pyx_v_self) {
4532 PyArray_Descr *__pyx_r = NULL;
4533 __Pyx_RefNannyDeclarations
4534 PyArray_Descr *__pyx_t_1;
4535 __Pyx_RefNannySetupContext(
"__get__", 0);
4544 __pyx_t_1 = PyArray_DESCR(__pyx_v_self);
4547 PyArray_Descr *__pyx_temp;
4549 __pyx_temp = __pyx_r;
4550 __Pyx_INCREF((PyObject *)((PyArray_Descr *)__pyx_t_1));
4551 __pyx_r = ((PyArray_Descr *)__pyx_t_1);
4553 __Pyx_XDECREF((PyObject *)__pyx_temp);
4568 __Pyx_XGIVEREF((PyObject *)__pyx_r);
4569 __Pyx_RefNannyFinishContext();
4581static CYTHON_INLINE
int __pyx_f_5numpy_7ndarray_4ndim___get__(PyArrayObject *__pyx_v_self) {
4593 __pyx_r = PyArray_NDIM(__pyx_v_self);
4618static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_5shape___get__(PyArrayObject *__pyx_v_self) {
4630 __pyx_r = PyArray_DIMS(__pyx_v_self);
4655static CYTHON_INLINE npy_intp *__pyx_f_5numpy_7ndarray_7strides___get__(PyArrayObject *__pyx_v_self) {
4667 __pyx_r = PyArray_STRIDES(__pyx_v_self);
4692static CYTHON_INLINE npy_intp __pyx_f_5numpy_7ndarray_4size___get__(PyArrayObject *__pyx_v_self) {
4704 __pyx_r = PyArray_SIZE(__pyx_v_self);
4729static CYTHON_INLINE
char *__pyx_f_5numpy_7ndarray_4data___get__(PyArrayObject *__pyx_v_self) {
4741 __pyx_r = PyArray_BYTES(__pyx_v_self);
4766static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) {
4767 PyObject *__pyx_r = NULL;
4768 __Pyx_RefNannyDeclarations
4769 PyObject *__pyx_t_1 = NULL;
4770 int __pyx_lineno = 0;
4771 const char *__pyx_filename = NULL;
4772 int __pyx_clineno = 0;
4773 __Pyx_RefNannySetupContext(
"PyArray_MultiIterNew1", 0);
4782 __pyx_t_1 = PyArray_MultiIterNew(1, ((
void *)__pyx_v_a));
if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 795, __pyx_L1_error)
4783 __Pyx_GOTREF(__pyx_t_1);
4785 PyObject *__pyx_temp;
4787 __pyx_temp = __pyx_r;
4788 __pyx_r = __pyx_t_1;
4790 __Pyx_XDECREF(__pyx_temp);
4805 __Pyx_XDECREF(__pyx_t_1);
4806 __Pyx_AddTraceback(
"numpy.PyArray_MultiIterNew1", __pyx_clineno, __pyx_lineno, __pyx_filename);
4809 __Pyx_XGIVEREF(__pyx_r);
4810 __Pyx_RefNannyFinishContext();
4822static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyObject *__pyx_v_b) {
4823 PyObject *__pyx_r = NULL;
4824 __Pyx_RefNannyDeclarations
4825 PyObject *__pyx_t_1 = NULL;
4826 int __pyx_lineno = 0;
4827 const char *__pyx_filename = NULL;
4828 int __pyx_clineno = 0;
4829 __Pyx_RefNannySetupContext(
"PyArray_MultiIterNew2", 0);
4838 __pyx_t_1 = PyArray_MultiIterNew(2, ((
void *)__pyx_v_a), ((
void *)__pyx_v_b));
if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 798, __pyx_L1_error)
4839 __Pyx_GOTREF(__pyx_t_1);
4841 PyObject *__pyx_temp;
4843 __pyx_temp = __pyx_r;
4844 __pyx_r = __pyx_t_1;
4846 __Pyx_XDECREF(__pyx_temp);
4861 __Pyx_XDECREF(__pyx_t_1);
4862 __Pyx_AddTraceback(
"numpy.PyArray_MultiIterNew2", __pyx_clineno, __pyx_lineno, __pyx_filename);
4865 __Pyx_XGIVEREF(__pyx_r);
4866 __Pyx_RefNannyFinishContext();
4878static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c) {
4879 PyObject *__pyx_r = NULL;
4880 __Pyx_RefNannyDeclarations
4881 PyObject *__pyx_t_1 = NULL;
4882 int __pyx_lineno = 0;
4883 const char *__pyx_filename = NULL;
4884 int __pyx_clineno = 0;
4885 __Pyx_RefNannySetupContext(
"PyArray_MultiIterNew3", 0);
4894 __pyx_t_1 = PyArray_MultiIterNew(3, ((
void *)__pyx_v_a), ((
void *)__pyx_v_b), ((
void *)__pyx_v_c));
if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 801, __pyx_L1_error)
4895 __Pyx_GOTREF(__pyx_t_1);
4897 PyObject *__pyx_temp;
4899 __pyx_temp = __pyx_r;
4900 __pyx_r = __pyx_t_1;
4902 __Pyx_XDECREF(__pyx_temp);
4917 __Pyx_XDECREF(__pyx_t_1);
4918 __Pyx_AddTraceback(
"numpy.PyArray_MultiIterNew3", __pyx_clineno, __pyx_lineno, __pyx_filename);
4921 __Pyx_XGIVEREF(__pyx_r);
4922 __Pyx_RefNannyFinishContext();
4934static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d) {
4935 PyObject *__pyx_r = NULL;
4936 __Pyx_RefNannyDeclarations
4937 PyObject *__pyx_t_1 = NULL;
4938 int __pyx_lineno = 0;
4939 const char *__pyx_filename = NULL;
4940 int __pyx_clineno = 0;
4941 __Pyx_RefNannySetupContext(
"PyArray_MultiIterNew4", 0);
4950 __pyx_t_1 = PyArray_MultiIterNew(4, ((
void *)__pyx_v_a), ((
void *)__pyx_v_b), ((
void *)__pyx_v_c), ((
void *)__pyx_v_d));
if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 804, __pyx_L1_error)
4951 __Pyx_GOTREF(__pyx_t_1);
4953 PyObject *__pyx_temp;
4955 __pyx_temp = __pyx_r;
4956 __pyx_r = __pyx_t_1;
4958 __Pyx_XDECREF(__pyx_temp);
4973 __Pyx_XDECREF(__pyx_t_1);
4974 __Pyx_AddTraceback(
"numpy.PyArray_MultiIterNew4", __pyx_clineno, __pyx_lineno, __pyx_filename);
4977 __Pyx_XGIVEREF(__pyx_r);
4978 __Pyx_RefNannyFinishContext();
4990static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d, PyObject *__pyx_v_e) {
4991 PyObject *__pyx_r = NULL;
4992 __Pyx_RefNannyDeclarations
4993 PyObject *__pyx_t_1 = NULL;
4994 int __pyx_lineno = 0;
4995 const char *__pyx_filename = NULL;
4996 int __pyx_clineno = 0;
4997 __Pyx_RefNannySetupContext(
"PyArray_MultiIterNew5", 0);
5006 __pyx_t_1 = PyArray_MultiIterNew(5, ((
void *)__pyx_v_a), ((
void *)__pyx_v_b), ((
void *)__pyx_v_c), ((
void *)__pyx_v_d), ((
void *)__pyx_v_e));
if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 807, __pyx_L1_error)
5007 __Pyx_GOTREF(__pyx_t_1);
5009 PyObject *__pyx_temp;
5011 __pyx_temp = __pyx_r;
5012 __pyx_r = __pyx_t_1;
5014 __Pyx_XDECREF(__pyx_temp);
5029 __Pyx_XDECREF(__pyx_t_1);
5030 __Pyx_AddTraceback(
"numpy.PyArray_MultiIterNew5", __pyx_clineno, __pyx_lineno, __pyx_filename);
5033 __Pyx_XGIVEREF(__pyx_r);
5034 __Pyx_RefNannyFinishContext();
5046static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__pyx_v_d) {
5047 PyObject *__pyx_r = NULL;
5048 __Pyx_RefNannyDeclarations
5050 PyObject *__pyx_t_2;
5051 __Pyx_RefNannySetupContext(
"PyDataType_SHAPE", 0);
5060 __pyx_t_1 = PyDataType_HASSUBARRAY(__pyx_v_d);
5072 __pyx_t_2 = __pyx_f_5numpy_5dtype_8subarray___get__(__pyx_v_d)->shape;
5075 PyObject *__pyx_temp;
5077 __pyx_temp = __pyx_r;
5078 __Pyx_INCREF(((PyObject*)__pyx_t_2));
5079 __pyx_r = ((PyObject*)__pyx_t_2);
5081 __Pyx_XDECREF(__pyx_temp);
5104 PyObject *__pyx_temp;
5106 __pyx_temp = __pyx_r;
5107 __Pyx_INCREF(__pyx_mstate_global->__pyx_empty_tuple);
5108 __pyx_r = __pyx_mstate_global->__pyx_empty_tuple;
5110 __Pyx_XDECREF(__pyx_temp);
5125 __Pyx_XGIVEREF(__pyx_r);
5126 __Pyx_RefNannyFinishContext();
5138static CYTHON_INLINE
int __pyx_f_5numpy_5ufunc_3nin___get__(PyUFuncObject *__pyx_v_self) {
5150 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->nin;
5175static CYTHON_INLINE
int __pyx_f_5numpy_5ufunc_4nout___get__(PyUFuncObject *__pyx_v_self) {
5187 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->nout;
5212static CYTHON_INLINE
int __pyx_f_5numpy_5ufunc_5nargs___get__(PyUFuncObject *__pyx_v_self) {
5224 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->nargs;
5249static CYTHON_INLINE PyUFuncGenericFunction *__pyx_f_5numpy_5ufunc_9functions___get__(PyUFuncObject *__pyx_v_self) {
5250 PyUFuncGenericFunction *__pyx_r;
5261 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->functions;
5286static CYTHON_INLINE
void **__pyx_f_5numpy_5ufunc_4data___get__(PyUFuncObject *__pyx_v_self) {
5298 __pyx_r = ((
void **)_PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->data);
5323static CYTHON_INLINE
int __pyx_f_5numpy_5ufunc_6ntypes___get__(PyUFuncObject *__pyx_v_self) {
5335 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->ntypes;
5360static CYTHON_INLINE
char const *__pyx_f_5numpy_5ufunc_4name___get__(PyUFuncObject *__pyx_v_self) {
5361 char const *__pyx_r;
5372 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->name;
5397static CYTHON_INLINE
char const *__pyx_f_5numpy_5ufunc_3doc___get__(PyUFuncObject *__pyx_v_self) {
5398 char const *__pyx_r;
5409 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->doc;
5434static CYTHON_INLINE
void *__pyx_f_5numpy_5ufunc_3ptr___get__(PyUFuncObject *__pyx_v_self) {
5446 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->ptr;
5471static CYTHON_INLINE PyObject *__pyx_f_5numpy_5ufunc_3obj___get__(PyUFuncObject *__pyx_v_self) {
5483 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->obj;
5508static CYTHON_INLINE PyObject *__pyx_f_5numpy_5ufunc_9userloops___get__(PyUFuncObject *__pyx_v_self) {
5520 __pyx_r = _PyUFuncObject_GET_ITEM_DATA(__pyx_v_self)->userloops;
5545static CYTHON_INLINE
void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObject *__pyx_v_base) {
5547 int __pyx_lineno = 0;
5548 const char *__pyx_filename = NULL;
5549 int __pyx_clineno = 0;
5558 Py_INCREF(__pyx_v_base);
5567 __pyx_t_1 = PyArray_SetBaseObject(__pyx_v_arr, __pyx_v_base);
if (unlikely(__pyx_t_1 == ((
int)-1))) __PYX_ERR(1, 1067, __pyx_L1_error)
5581 __Pyx_AddTraceback(
"numpy.set_array_base", __pyx_clineno, __pyx_lineno, __pyx_filename);
5594static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) {
5595 PyObject *__pyx_v_base;
5596 PyObject *__pyx_r = NULL;
5597 __Pyx_RefNannyDeclarations
5599 __Pyx_RefNannySetupContext(
"get_array_base", 0);
5608 __pyx_v_base = PyArray_BASE(__pyx_v_arr);
5617 __pyx_t_1 = (__pyx_v_base == NULL);
5630 PyObject *__pyx_temp;
5632 __pyx_temp = __pyx_r;
5633 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
5635 __Pyx_XDECREF(__pyx_temp);
5656 PyObject *__pyx_temp;
5658 __pyx_temp = __pyx_r;
5659 __Pyx_INCREF(((PyObject *)__pyx_v_base));
5660 __pyx_r = ((PyObject *)__pyx_v_base);
5662 __Pyx_XDECREF(__pyx_temp);
5677 __Pyx_XGIVEREF(__pyx_r);
5678 __Pyx_RefNannyFinishContext();
5690static CYTHON_INLINE
int __pyx_f_5numpy_import_array(
void) {
5692 __Pyx_RefNannyDeclarations
5693 PyObject *__pyx_t_1 = NULL;
5694 PyObject *__pyx_t_2 = NULL;
5695 PyObject *__pyx_t_3 = NULL;
5697 PyObject *__pyx_t_5 = NULL;
5698 PyObject *__pyx_t_6 = NULL;
5699 PyObject *__pyx_t_7 = NULL;
5700 PyObject *__pyx_t_8 = NULL;
5701 PyObject *__pyx_t_9 = NULL;
5703 int __pyx_lineno = 0;
5704 const char *__pyx_filename = NULL;
5705 int __pyx_clineno = 0;
5706 __Pyx_RefNannySetupContext(
"import_array", 0);
5716 __Pyx_PyThreadState_declare
5717 __Pyx_PyThreadState_assign
5718 __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
5719 __Pyx_XGOTREF(__pyx_t_1);
5720 __Pyx_XGOTREF(__pyx_t_2);
5721 __Pyx_XGOTREF(__pyx_t_3);
5731 __pyx_t_4 = _import_array();
if (unlikely(__pyx_t_4 == ((
int)-1))) __PYX_ERR(1, 1079, __pyx_L3_error)
5742 __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
5743 __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
5744 __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
5745 goto __pyx_L8_try_end;
5755 __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception))));
5757 __Pyx_AddTraceback(
"numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename);
5758 if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 1080, __pyx_L5_except_error)
5759 __Pyx_XGOTREF(__pyx_t_5);
5760 __Pyx_XGOTREF(__pyx_t_6);
5761 __Pyx_XGOTREF(__pyx_t_7);
5773 PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_mstate_global->__pyx_kp_u_numpy__core_multiarray_failed_to};
5774 __pyx_t_8 = __Pyx_PyObject_FastCall((PyObject*)(((PyTypeObject*)PyExc_ImportError)), __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
5775 __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
5776 if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1081, __pyx_L5_except_error)
5777 __Pyx_GOTREF(__pyx_t_8);
5779 __Pyx_Raise(__pyx_t_8, 0, 0, 0);
5780 __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5781 __PYX_ERR(1, 1081, __pyx_L5_except_error)
5783 goto __pyx_L5_except_error;
5792 __pyx_L5_except_error:;
5793 __Pyx_XGIVEREF(__pyx_t_1);
5794 __Pyx_XGIVEREF(__pyx_t_2);
5795 __Pyx_XGIVEREF(__pyx_t_3);
5796 __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
5797 goto __pyx_L1_error;
5813 __Pyx_XDECREF(__pyx_t_5);
5814 __Pyx_XDECREF(__pyx_t_6);
5815 __Pyx_XDECREF(__pyx_t_7);
5816 __Pyx_XDECREF(__pyx_t_8);
5817 __Pyx_XDECREF(__pyx_t_9);
5818 __Pyx_AddTraceback(
"numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename);
5822 __Pyx_RefNannyFinishContext();
5834static CYTHON_INLINE
int __pyx_f_5numpy_import_umath(
void) {
5836 __Pyx_RefNannyDeclarations
5837 PyObject *__pyx_t_1 = NULL;
5838 PyObject *__pyx_t_2 = NULL;
5839 PyObject *__pyx_t_3 = NULL;
5841 PyObject *__pyx_t_5 = NULL;
5842 PyObject *__pyx_t_6 = NULL;
5843 PyObject *__pyx_t_7 = NULL;
5844 PyObject *__pyx_t_8 = NULL;
5845 PyObject *__pyx_t_9 = NULL;
5847 int __pyx_lineno = 0;
5848 const char *__pyx_filename = NULL;
5849 int __pyx_clineno = 0;
5850 __Pyx_RefNannySetupContext(
"import_umath", 0);
5860 __Pyx_PyThreadState_declare
5861 __Pyx_PyThreadState_assign
5862 __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
5863 __Pyx_XGOTREF(__pyx_t_1);
5864 __Pyx_XGOTREF(__pyx_t_2);
5865 __Pyx_XGOTREF(__pyx_t_3);
5875 __pyx_t_4 = _import_umath();
if (unlikely(__pyx_t_4 == ((
int)-1))) __PYX_ERR(1, 1085, __pyx_L3_error)
5886 __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
5887 __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
5888 __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
5889 goto __pyx_L8_try_end;
5899 __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception))));
5901 __Pyx_AddTraceback(
"numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename);
5902 if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 1086, __pyx_L5_except_error)
5903 __Pyx_XGOTREF(__pyx_t_5);
5904 __Pyx_XGOTREF(__pyx_t_6);
5905 __Pyx_XGOTREF(__pyx_t_7);
5917 PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_mstate_global->__pyx_kp_u_numpy__core_umath_failed_to_impo};
5918 __pyx_t_8 = __Pyx_PyObject_FastCall((PyObject*)(((PyTypeObject*)PyExc_ImportError)), __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
5919 __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
5920 if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1087, __pyx_L5_except_error)
5921 __Pyx_GOTREF(__pyx_t_8);
5923 __Pyx_Raise(__pyx_t_8, 0, 0, 0);
5924 __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
5925 __PYX_ERR(1, 1087, __pyx_L5_except_error)
5927 goto __pyx_L5_except_error;
5936 __pyx_L5_except_error:;
5937 __Pyx_XGIVEREF(__pyx_t_1);
5938 __Pyx_XGIVEREF(__pyx_t_2);
5939 __Pyx_XGIVEREF(__pyx_t_3);
5940 __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
5941 goto __pyx_L1_error;
5957 __Pyx_XDECREF(__pyx_t_5);
5958 __Pyx_XDECREF(__pyx_t_6);
5959 __Pyx_XDECREF(__pyx_t_7);
5960 __Pyx_XDECREF(__pyx_t_8);
5961 __Pyx_XDECREF(__pyx_t_9);
5962 __Pyx_AddTraceback(
"numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename);
5966 __Pyx_RefNannyFinishContext();
5978static CYTHON_INLINE
int __pyx_f_5numpy_import_ufunc(
void) {
5980 __Pyx_RefNannyDeclarations
5981 PyObject *__pyx_t_1 = NULL;
5982 PyObject *__pyx_t_2 = NULL;
5983 PyObject *__pyx_t_3 = NULL;
5985 PyObject *__pyx_t_5 = NULL;
5986 PyObject *__pyx_t_6 = NULL;
5987 PyObject *__pyx_t_7 = NULL;
5988 PyObject *__pyx_t_8 = NULL;
5989 PyObject *__pyx_t_9 = NULL;
5991 int __pyx_lineno = 0;
5992 const char *__pyx_filename = NULL;
5993 int __pyx_clineno = 0;
5994 __Pyx_RefNannySetupContext(
"import_ufunc", 0);
6004 __Pyx_PyThreadState_declare
6005 __Pyx_PyThreadState_assign
6006 __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
6007 __Pyx_XGOTREF(__pyx_t_1);
6008 __Pyx_XGOTREF(__pyx_t_2);
6009 __Pyx_XGOTREF(__pyx_t_3);
6019 __pyx_t_4 = _import_umath();
if (unlikely(__pyx_t_4 == ((
int)-1))) __PYX_ERR(1, 1091, __pyx_L3_error)
6030 __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
6031 __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
6032 __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
6033 goto __pyx_L8_try_end;
6043 __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(((PyTypeObject*)PyExc_Exception))));
6045 __Pyx_AddTraceback(
"numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename);
6046 if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 1092, __pyx_L5_except_error)
6047 __Pyx_XGOTREF(__pyx_t_5);
6048 __Pyx_XGOTREF(__pyx_t_6);
6049 __Pyx_XGOTREF(__pyx_t_7);
6061 PyObject *__pyx_callargs[2] = {__pyx_t_9, __pyx_mstate_global->__pyx_kp_u_numpy__core_umath_failed_to_impo};
6062 __pyx_t_8 = __Pyx_PyObject_FastCall((PyObject*)(((PyTypeObject*)PyExc_ImportError)), __pyx_callargs+__pyx_t_10, (2-__pyx_t_10) | (__pyx_t_10*__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET));
6063 __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
6064 if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1093, __pyx_L5_except_error)
6065 __Pyx_GOTREF(__pyx_t_8);
6067 __Pyx_Raise(__pyx_t_8, 0, 0, 0);
6068 __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
6069 __PYX_ERR(1, 1093, __pyx_L5_except_error)
6071 goto __pyx_L5_except_error;
6080 __pyx_L5_except_error:;
6081 __Pyx_XGIVEREF(__pyx_t_1);
6082 __Pyx_XGIVEREF(__pyx_t_2);
6083 __Pyx_XGIVEREF(__pyx_t_3);
6084 __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
6085 goto __pyx_L1_error;
6101 __Pyx_XDECREF(__pyx_t_5);
6102 __Pyx_XDECREF(__pyx_t_6);
6103 __Pyx_XDECREF(__pyx_t_7);
6104 __Pyx_XDECREF(__pyx_t_8);
6105 __Pyx_XDECREF(__pyx_t_9);
6106 __Pyx_AddTraceback(
"numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename);
6110 __Pyx_RefNannyFinishContext();
6122static CYTHON_INLINE
int __pyx_f_5numpy_is_timedelta64_object(PyObject *__pyx_v_obj) {
6134 __pyx_r = PyObject_TypeCheck(__pyx_v_obj, (&PyTimedeltaArrType_Type));
6160static CYTHON_INLINE
int __pyx_f_5numpy_is_datetime64_object(PyObject *__pyx_v_obj) {
6172 __pyx_r = PyObject_TypeCheck(__pyx_v_obj, (&PyDatetimeArrType_Type));
6198static CYTHON_INLINE npy_datetime __pyx_f_5numpy_get_datetime64_value(PyObject *__pyx_v_obj) {
6199 npy_datetime __pyx_r;
6210 __pyx_r = _PyDatetimeScalarObject_GetValue(__pyx_v_obj);
6235static CYTHON_INLINE npy_timedelta __pyx_f_5numpy_get_timedelta64_value(PyObject *__pyx_v_obj) {
6236 npy_timedelta __pyx_r;
6247 __pyx_r = _PyTimedeltaScalarObject_GetValue(__pyx_v_obj);
6272static CYTHON_INLINE NPY_DATETIMEUNIT __pyx_f_5numpy_get_datetime64_unit(PyObject *__pyx_v_obj) {
6273 NPY_DATETIMEUNIT __pyx_r;
6284 __pyx_r = _PyDatetimeScalarObject_GetMetadata(__pyx_v_obj).base;
6310static PyObject *__pyx_pw_15cpostprocessing_1postProcessRT0velocityFromP1nc(PyObject *__pyx_self,
6311#
if CYTHON_VECTORCALL
6312PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
6314PyObject *__pyx_args, PyObject *__pyx_kwds
6317static PyMethodDef __pyx_mdef_15cpostprocessing_1postProcessRT0velocityFromP1nc = {
"postProcessRT0velocityFromP1nc", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_1postProcessRT0velocityFromP1nc, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
6318static PyObject *__pyx_pw_15cpostprocessing_1postProcessRT0velocityFromP1nc(PyObject *__pyx_self,
6319#
if CYTHON_VECTORCALL
6320PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
6322PyObject *__pyx_args, PyObject *__pyx_kwds
6325 PyArrayObject *__pyx_v_nFreeDOF_element = 0;
6326 PyArrayObject *__pyx_v_freeLocal_element = 0;
6327 PyArrayObject *__pyx_v_detJ = 0;
6328 PyArrayObject *__pyx_v_sqrt_det_g = 0;
6329 PyArrayObject *__pyx_v_n = 0;
6330 PyArrayObject *__pyx_v_elementBarycenters = 0;
6331 PyArrayObject *__pyx_v_quad_a = 0;
6332 PyArrayObject *__pyx_v_quad_f = 0;
6333 PyArrayObject *__pyx_v_w_dV_r = 0;
6334 PyArrayObject *__pyx_v_u = 0;
6335 PyArrayObject *__pyx_v_gradu = 0;
6336 PyArrayObject *__pyx_v_a = 0;
6337 PyArrayObject *__pyx_v_f = 0;
6338 PyArrayObject *__pyx_v_r = 0;
6339 PyArrayObject *__pyx_v_rt0vdofs = 0;
6340 PyArrayObject *__pyx_v_w_dV_m = 0;
6341 PyArrayObject *__pyx_v_mt = 0;
6342 #if !CYTHON_VECTORCALL
6343 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
6345 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
6346 PyObject* values[17] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
6347 int __pyx_lineno = 0;
6348 const char *__pyx_filename = NULL;
6349 int __pyx_clineno = 0;
6350 PyObject *__pyx_r = 0;
6351 __Pyx_RefNannyDeclarations
6352 __Pyx_RefNannySetupContext(
"postProcessRT0velocityFromP1nc (wrapper)", 0);
6353 #if !CYTHON_VECTORCALL
6354 #if CYTHON_ASSUME_SAFE_SIZE
6355 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
6357 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
6360 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
6362 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nFreeDOF_element,&__pyx_mstate_global->__pyx_n_u_freeLocal_element,&__pyx_mstate_global->__pyx_n_u_detJ,&__pyx_mstate_global->__pyx_n_u_sqrt_det_g,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_elementBarycenters,&__pyx_mstate_global->__pyx_n_u_quad_a,&__pyx_mstate_global->__pyx_n_u_quad_f,&__pyx_mstate_global->__pyx_n_u_w_dV_r,&__pyx_mstate_global->__pyx_n_u_u,&__pyx_mstate_global->__pyx_n_u_gradu,&__pyx_mstate_global->__pyx_n_u_a,&__pyx_mstate_global->__pyx_n_u_f,&__pyx_mstate_global->__pyx_n_u_r,&__pyx_mstate_global->__pyx_n_u_rt0vdofs,&__pyx_mstate_global->__pyx_n_u_w_dV_m,&__pyx_mstate_global->__pyx_n_u_mt,0};
6363 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
6364 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 7, __pyx_L3_error)
6365 if (__pyx_kwds_len > 0) {
6366 switch (__pyx_nargs) {
6368 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
6369 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 7, __pyx_L3_error)
6372 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
6373 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 7, __pyx_L3_error)
6376 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
6377 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 7, __pyx_L3_error)
6380 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
6381 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 7, __pyx_L3_error)
6384 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
6385 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 7, __pyx_L3_error)
6388 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
6389 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 7, __pyx_L3_error)
6392 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
6393 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 7, __pyx_L3_error)
6396 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
6397 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 7, __pyx_L3_error)
6400 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
6401 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 7, __pyx_L3_error)
6404 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
6405 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 7, __pyx_L3_error)
6408 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
6409 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 7, __pyx_L3_error)
6412 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
6413 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 7, __pyx_L3_error)
6416 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
6417 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 7, __pyx_L3_error)
6420 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
6421 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 7, __pyx_L3_error)
6424 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
6425 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 7, __pyx_L3_error)
6428 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
6429 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 7, __pyx_L3_error)
6432 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
6433 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7, __pyx_L3_error)
6436 default:
goto __pyx_L5_argtuple_error;
6438 const Py_ssize_t kwd_pos_args = __pyx_nargs;
6439 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"postProcessRT0velocityFromP1nc", 0) < (0)) __PYX_ERR(0, 7, __pyx_L3_error)
6448 if (!values[15]) values[15] = __Pyx_NewRef((PyObject *)((PyArrayObject *)Py_None));
6457 if (!values[16]) values[16] = __Pyx_NewRef((PyObject *)((PyArrayObject *)Py_None));
6458 for (Py_ssize_t i = __pyx_nargs; i < 15; i++) {
6459 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"postProcessRT0velocityFromP1nc", 0, 15, 17, i); __PYX_ERR(0, 7, __pyx_L3_error) }
6462 switch (__pyx_nargs) {
6464 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
6465 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 7, __pyx_L3_error)
6468 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
6469 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 7, __pyx_L3_error)
6472 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
6473 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 7, __pyx_L3_error)
6474 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
6475 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 7, __pyx_L3_error)
6476 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
6477 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 7, __pyx_L3_error)
6478 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
6479 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 7, __pyx_L3_error)
6480 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
6481 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 7, __pyx_L3_error)
6482 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
6483 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 7, __pyx_L3_error)
6484 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
6485 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 7, __pyx_L3_error)
6486 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
6487 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 7, __pyx_L3_error)
6488 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
6489 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 7, __pyx_L3_error)
6490 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
6491 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 7, __pyx_L3_error)
6492 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
6493 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 7, __pyx_L3_error)
6494 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
6495 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 7, __pyx_L3_error)
6496 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
6497 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 7, __pyx_L3_error)
6498 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
6499 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 7, __pyx_L3_error)
6500 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
6501 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 7, __pyx_L3_error)
6503 default:
goto __pyx_L5_argtuple_error;
6513 if (!values[15]) values[15] = __Pyx_NewRef((PyObject *)((PyArrayObject *)Py_None));
6522 if (!values[16]) values[16] = __Pyx_NewRef((PyObject *)((PyArrayObject *)Py_None));
6524 __pyx_v_nFreeDOF_element = ((PyArrayObject *)values[0]);
6525 __pyx_v_freeLocal_element = ((PyArrayObject *)values[1]);
6526 __pyx_v_detJ = ((PyArrayObject *)values[2]);
6527 __pyx_v_sqrt_det_g = ((PyArrayObject *)values[3]);
6528 __pyx_v_n = ((PyArrayObject *)values[4]);
6529 __pyx_v_elementBarycenters = ((PyArrayObject *)values[5]);
6530 __pyx_v_quad_a = ((PyArrayObject *)values[6]);
6531 __pyx_v_quad_f = ((PyArrayObject *)values[7]);
6532 __pyx_v_w_dV_r = ((PyArrayObject *)values[8]);
6533 __pyx_v_u = ((PyArrayObject *)values[9]);
6534 __pyx_v_gradu = ((PyArrayObject *)values[10]);
6535 __pyx_v_a = ((PyArrayObject *)values[11]);
6536 __pyx_v_f = ((PyArrayObject *)values[12]);
6537 __pyx_v_r = ((PyArrayObject *)values[13]);
6538 __pyx_v_rt0vdofs = ((PyArrayObject *)values[14]);
6539 __pyx_v_w_dV_m = ((PyArrayObject *)values[15]);
6540 __pyx_v_mt = ((PyArrayObject *)values[16]);
6543 __pyx_L5_argtuple_error:;
6544 __Pyx_RaiseArgtupleInvalid(
"postProcessRT0velocityFromP1nc", 0, 15, 17, __pyx_nargs); __PYX_ERR(0, 7, __pyx_L3_error)
6546 goto __pyx_L4_argument_unpacking_done;
6548 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
6549 Py_XDECREF(values[__pyx_temp]);
6551 __Pyx_AddTraceback(
"cpostprocessing.postProcessRT0velocityFromP1nc", __pyx_clineno, __pyx_lineno, __pyx_filename);
6552 __Pyx_RefNannyFinishContext();
6554 __pyx_L4_argument_unpacking_done:;
6555 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nFreeDOF_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nFreeDOF_element", 0))) __PYX_ERR(0, 7, __pyx_L1_error)
6556 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_freeLocal_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"freeLocal_element", 0))) __PYX_ERR(0, 8, __pyx_L1_error)
6557 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_detJ), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"detJ", 0))) __PYX_ERR(0, 9, __pyx_L1_error)
6558 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sqrt_det_g), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"sqrt_det_g", 0))) __PYX_ERR(0, 10, __pyx_L1_error)
6559 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 11, __pyx_L1_error)
6560 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBarycenters), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBarycenters", 0))) __PYX_ERR(0, 12, __pyx_L1_error)
6561 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_quad_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"quad_a", 0))) __PYX_ERR(0, 13, __pyx_L1_error)
6562 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_quad_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"quad_f", 0))) __PYX_ERR(0, 14, __pyx_L1_error)
6563 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dV_r), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dV_r", 0))) __PYX_ERR(0, 15, __pyx_L1_error)
6564 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"u", 0))) __PYX_ERR(0, 16, __pyx_L1_error)
6565 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gradu), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"gradu", 0))) __PYX_ERR(0, 17, __pyx_L1_error)
6566 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"a", 0))) __PYX_ERR(0, 18, __pyx_L1_error)
6567 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"f", 0))) __PYX_ERR(0, 19, __pyx_L1_error)
6568 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_r), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"r", 0))) __PYX_ERR(0, 20, __pyx_L1_error)
6569 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs", 0))) __PYX_ERR(0, 21, __pyx_L1_error)
6570 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dV_m), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dV_m", 0))) __PYX_ERR(0, 22, __pyx_L1_error)
6571 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mt), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"mt", 0))) __PYX_ERR(0, 23, __pyx_L1_error)
6572 __pyx_r = __pyx_pf_15cpostprocessing_postProcessRT0velocityFromP1nc(__pyx_self, __pyx_v_nFreeDOF_element, __pyx_v_freeLocal_element, __pyx_v_detJ, __pyx_v_sqrt_det_g, __pyx_v_n, __pyx_v_elementBarycenters, __pyx_v_quad_a, __pyx_v_quad_f, __pyx_v_w_dV_r, __pyx_v_u, __pyx_v_gradu, __pyx_v_a, __pyx_v_f, __pyx_v_r, __pyx_v_rt0vdofs, __pyx_v_w_dV_m, __pyx_v_mt);
6586 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
6587 Py_XDECREF(values[__pyx_temp]);
6589 goto __pyx_L7_cleaned_up;
6591 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
6592 Py_XDECREF(values[__pyx_temp]);
6594 __pyx_L7_cleaned_up:;
6595 __Pyx_RefNannyFinishContext();
6599static PyObject *__pyx_pf_15cpostprocessing_postProcessRT0velocityFromP1nc(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nFreeDOF_element, PyArrayObject *__pyx_v_freeLocal_element, PyArrayObject *__pyx_v_detJ, PyArrayObject *__pyx_v_sqrt_det_g, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_elementBarycenters, PyArrayObject *__pyx_v_quad_a, PyArrayObject *__pyx_v_quad_f, PyArrayObject *__pyx_v_w_dV_r, PyArrayObject *__pyx_v_u, PyArrayObject *__pyx_v_gradu, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_f, PyArrayObject *__pyx_v_r, PyArrayObject *__pyx_v_rt0vdofs, PyArrayObject *__pyx_v_w_dV_m, PyArrayObject *__pyx_v_mt) {
6600 PyObject *__pyx_r = NULL;
6601 __Pyx_RefNannyDeclarations
6604 __Pyx_RefNannySetupContext(
"postProcessRT0velocityFromP1nc", 0);
6613 __pyx_t_2 = (((PyObject *)__pyx_v_mt) != Py_None);
6618 __pyx_t_1 = __pyx_t_2;
6620 goto __pyx_L4_bool_binop_done;
6622 __pyx_t_2 = (((PyObject *)__pyx_v_w_dV_m) != Py_None);
6624 __pyx_t_1 = __pyx_t_2;
6626 __pyx_L4_bool_binop_done:;
6637 postProcessRT0velocityFromP1nc((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dV_r)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nFreeDOF_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_freeLocal_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_detJ)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_sqrt_det_g)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBarycenters)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dV_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dV_m)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_u)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_gradu)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_mt)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs)));
6665 postProcessRT0velocityFromP1ncNoMass((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dV_r)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nFreeDOF_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_freeLocal_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_detJ)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_sqrt_det_g)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBarycenters)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dV_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_u)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_gradu)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs)));
6678 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
6679 __Pyx_XGIVEREF(__pyx_r);
6680 __Pyx_RefNannyFinishContext();
6693static PyObject *__pyx_pw_15cpostprocessing_3postProcessRT0velocityFromP1nc_sd(PyObject *__pyx_self,
6694#
if CYTHON_VECTORCALL
6695PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
6697PyObject *__pyx_args, PyObject *__pyx_kwds
6700static PyMethodDef __pyx_mdef_15cpostprocessing_3postProcessRT0velocityFromP1nc_sd = {
"postProcessRT0velocityFromP1nc_sd", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_3postProcessRT0velocityFromP1nc_sd, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
6701static PyObject *__pyx_pw_15cpostprocessing_3postProcessRT0velocityFromP1nc_sd(PyObject *__pyx_self,
6702#
if CYTHON_VECTORCALL
6703PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
6705PyObject *__pyx_args, PyObject *__pyx_kwds
6708 PyArrayObject *__pyx_v_rowptr = 0;
6709 PyArrayObject *__pyx_v_colind = 0;
6710 PyArrayObject *__pyx_v_nFreeDOF_element = 0;
6711 PyArrayObject *__pyx_v_freeLocal_element = 0;
6712 PyArrayObject *__pyx_v_detJ = 0;
6713 PyArrayObject *__pyx_v_sqrt_det_g = 0;
6714 PyArrayObject *__pyx_v_n = 0;
6715 PyArrayObject *__pyx_v_elementBarycenters = 0;
6716 PyArrayObject *__pyx_v_quad_a = 0;
6717 PyArrayObject *__pyx_v_quad_f = 0;
6718 PyArrayObject *__pyx_v_w_dV_r = 0;
6719 PyArrayObject *__pyx_v_u = 0;
6720 PyArrayObject *__pyx_v_gradu = 0;
6721 PyArrayObject *__pyx_v_a = 0;
6722 PyArrayObject *__pyx_v_f = 0;
6723 PyArrayObject *__pyx_v_r = 0;
6724 PyArrayObject *__pyx_v_rt0vdofs = 0;
6725 PyArrayObject *__pyx_v_w_dV_m = 0;
6726 PyArrayObject *__pyx_v_mt = 0;
6727 #if !CYTHON_VECTORCALL
6728 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
6730 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
6731 PyObject* values[19] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
6732 int __pyx_lineno = 0;
6733 const char *__pyx_filename = NULL;
6734 int __pyx_clineno = 0;
6735 PyObject *__pyx_r = 0;
6736 __Pyx_RefNannyDeclarations
6737 __Pyx_RefNannySetupContext(
"postProcessRT0velocityFromP1nc_sd (wrapper)", 0);
6738 #if !CYTHON_VECTORCALL
6739 #if CYTHON_ASSUME_SAFE_SIZE
6740 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
6742 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
6745 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
6747 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_rowptr,&__pyx_mstate_global->__pyx_n_u_colind,&__pyx_mstate_global->__pyx_n_u_nFreeDOF_element,&__pyx_mstate_global->__pyx_n_u_freeLocal_element,&__pyx_mstate_global->__pyx_n_u_detJ,&__pyx_mstate_global->__pyx_n_u_sqrt_det_g,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_elementBarycenters,&__pyx_mstate_global->__pyx_n_u_quad_a,&__pyx_mstate_global->__pyx_n_u_quad_f,&__pyx_mstate_global->__pyx_n_u_w_dV_r,&__pyx_mstate_global->__pyx_n_u_u,&__pyx_mstate_global->__pyx_n_u_gradu,&__pyx_mstate_global->__pyx_n_u_a,&__pyx_mstate_global->__pyx_n_u_f,&__pyx_mstate_global->__pyx_n_u_r,&__pyx_mstate_global->__pyx_n_u_rt0vdofs,&__pyx_mstate_global->__pyx_n_u_w_dV_m,&__pyx_mstate_global->__pyx_n_u_mt,0};
6748 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
6749 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 71, __pyx_L3_error)
6750 if (__pyx_kwds_len > 0) {
6751 switch (__pyx_nargs) {
6753 values[18] = __Pyx_ArgRef_FASTCALL(__pyx_args, 18);
6754 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[18])) __PYX_ERR(0, 71, __pyx_L3_error)
6757 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
6758 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 71, __pyx_L3_error)
6761 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
6762 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 71, __pyx_L3_error)
6765 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
6766 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 71, __pyx_L3_error)
6769 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
6770 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 71, __pyx_L3_error)
6773 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
6774 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 71, __pyx_L3_error)
6777 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
6778 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 71, __pyx_L3_error)
6781 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
6782 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 71, __pyx_L3_error)
6785 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
6786 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 71, __pyx_L3_error)
6789 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
6790 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 71, __pyx_L3_error)
6793 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
6794 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 71, __pyx_L3_error)
6797 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
6798 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 71, __pyx_L3_error)
6801 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
6802 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 71, __pyx_L3_error)
6805 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
6806 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 71, __pyx_L3_error)
6809 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
6810 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 71, __pyx_L3_error)
6813 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
6814 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 71, __pyx_L3_error)
6817 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
6818 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 71, __pyx_L3_error)
6821 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
6822 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 71, __pyx_L3_error)
6825 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
6826 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 71, __pyx_L3_error)
6829 default:
goto __pyx_L5_argtuple_error;
6831 const Py_ssize_t kwd_pos_args = __pyx_nargs;
6832 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"postProcessRT0velocityFromP1nc_sd", 0) < (0)) __PYX_ERR(0, 71, __pyx_L3_error)
6841 if (!values[17]) values[17] = __Pyx_NewRef((PyObject *)((PyArrayObject *)Py_None));
6850 if (!values[18]) values[18] = __Pyx_NewRef((PyObject *)((PyArrayObject *)Py_None));
6851 for (Py_ssize_t i = __pyx_nargs; i < 17; i++) {
6852 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"postProcessRT0velocityFromP1nc_sd", 0, 17, 19, i); __PYX_ERR(0, 71, __pyx_L3_error) }
6855 switch (__pyx_nargs) {
6857 values[18] = __Pyx_ArgRef_FASTCALL(__pyx_args, 18);
6858 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[18])) __PYX_ERR(0, 71, __pyx_L3_error)
6861 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
6862 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 71, __pyx_L3_error)
6865 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
6866 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 71, __pyx_L3_error)
6867 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
6868 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 71, __pyx_L3_error)
6869 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
6870 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 71, __pyx_L3_error)
6871 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
6872 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 71, __pyx_L3_error)
6873 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
6874 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 71, __pyx_L3_error)
6875 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
6876 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 71, __pyx_L3_error)
6877 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
6878 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 71, __pyx_L3_error)
6879 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
6880 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 71, __pyx_L3_error)
6881 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
6882 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 71, __pyx_L3_error)
6883 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
6884 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 71, __pyx_L3_error)
6885 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
6886 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 71, __pyx_L3_error)
6887 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
6888 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 71, __pyx_L3_error)
6889 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
6890 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 71, __pyx_L3_error)
6891 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
6892 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 71, __pyx_L3_error)
6893 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
6894 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 71, __pyx_L3_error)
6895 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
6896 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 71, __pyx_L3_error)
6897 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
6898 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 71, __pyx_L3_error)
6900 default:
goto __pyx_L5_argtuple_error;
6910 if (!values[17]) values[17] = __Pyx_NewRef((PyObject *)((PyArrayObject *)Py_None));
6919 if (!values[18]) values[18] = __Pyx_NewRef((PyObject *)((PyArrayObject *)Py_None));
6921 __pyx_v_rowptr = ((PyArrayObject *)values[0]);
6922 __pyx_v_colind = ((PyArrayObject *)values[1]);
6923 __pyx_v_nFreeDOF_element = ((PyArrayObject *)values[2]);
6924 __pyx_v_freeLocal_element = ((PyArrayObject *)values[3]);
6925 __pyx_v_detJ = ((PyArrayObject *)values[4]);
6926 __pyx_v_sqrt_det_g = ((PyArrayObject *)values[5]);
6927 __pyx_v_n = ((PyArrayObject *)values[6]);
6928 __pyx_v_elementBarycenters = ((PyArrayObject *)values[7]);
6929 __pyx_v_quad_a = ((PyArrayObject *)values[8]);
6930 __pyx_v_quad_f = ((PyArrayObject *)values[9]);
6931 __pyx_v_w_dV_r = ((PyArrayObject *)values[10]);
6932 __pyx_v_u = ((PyArrayObject *)values[11]);
6933 __pyx_v_gradu = ((PyArrayObject *)values[12]);
6934 __pyx_v_a = ((PyArrayObject *)values[13]);
6935 __pyx_v_f = ((PyArrayObject *)values[14]);
6936 __pyx_v_r = ((PyArrayObject *)values[15]);
6937 __pyx_v_rt0vdofs = ((PyArrayObject *)values[16]);
6938 __pyx_v_w_dV_m = ((PyArrayObject *)values[17]);
6939 __pyx_v_mt = ((PyArrayObject *)values[18]);
6942 __pyx_L5_argtuple_error:;
6943 __Pyx_RaiseArgtupleInvalid(
"postProcessRT0velocityFromP1nc_sd", 0, 17, 19, __pyx_nargs); __PYX_ERR(0, 71, __pyx_L3_error)
6945 goto __pyx_L4_argument_unpacking_done;
6947 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
6948 Py_XDECREF(values[__pyx_temp]);
6950 __Pyx_AddTraceback(
"cpostprocessing.postProcessRT0velocityFromP1nc_sd", __pyx_clineno, __pyx_lineno, __pyx_filename);
6951 __Pyx_RefNannyFinishContext();
6953 __pyx_L4_argument_unpacking_done:;
6954 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rowptr), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rowptr", 0))) __PYX_ERR(0, 71, __pyx_L1_error)
6955 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_colind), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"colind", 0))) __PYX_ERR(0, 72, __pyx_L1_error)
6956 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nFreeDOF_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nFreeDOF_element", 0))) __PYX_ERR(0, 73, __pyx_L1_error)
6957 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_freeLocal_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"freeLocal_element", 0))) __PYX_ERR(0, 74, __pyx_L1_error)
6958 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_detJ), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"detJ", 0))) __PYX_ERR(0, 75, __pyx_L1_error)
6959 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sqrt_det_g), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"sqrt_det_g", 0))) __PYX_ERR(0, 76, __pyx_L1_error)
6960 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 77, __pyx_L1_error)
6961 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBarycenters), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBarycenters", 0))) __PYX_ERR(0, 78, __pyx_L1_error)
6962 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_quad_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"quad_a", 0))) __PYX_ERR(0, 79, __pyx_L1_error)
6963 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_quad_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"quad_f", 0))) __PYX_ERR(0, 80, __pyx_L1_error)
6964 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dV_r), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dV_r", 0))) __PYX_ERR(0, 81, __pyx_L1_error)
6965 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"u", 0))) __PYX_ERR(0, 82, __pyx_L1_error)
6966 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gradu), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"gradu", 0))) __PYX_ERR(0, 83, __pyx_L1_error)
6967 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"a", 0))) __PYX_ERR(0, 84, __pyx_L1_error)
6968 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"f", 0))) __PYX_ERR(0, 85, __pyx_L1_error)
6969 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_r), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"r", 0))) __PYX_ERR(0, 86, __pyx_L1_error)
6970 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs", 0))) __PYX_ERR(0, 87, __pyx_L1_error)
6971 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dV_m), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dV_m", 0))) __PYX_ERR(0, 88, __pyx_L1_error)
6972 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_mt), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"mt", 0))) __PYX_ERR(0, 89, __pyx_L1_error)
6973 __pyx_r = __pyx_pf_15cpostprocessing_2postProcessRT0velocityFromP1nc_sd(__pyx_self, __pyx_v_rowptr, __pyx_v_colind, __pyx_v_nFreeDOF_element, __pyx_v_freeLocal_element, __pyx_v_detJ, __pyx_v_sqrt_det_g, __pyx_v_n, __pyx_v_elementBarycenters, __pyx_v_quad_a, __pyx_v_quad_f, __pyx_v_w_dV_r, __pyx_v_u, __pyx_v_gradu, __pyx_v_a, __pyx_v_f, __pyx_v_r, __pyx_v_rt0vdofs, __pyx_v_w_dV_m, __pyx_v_mt);
6987 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
6988 Py_XDECREF(values[__pyx_temp]);
6990 goto __pyx_L7_cleaned_up;
6992 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
6993 Py_XDECREF(values[__pyx_temp]);
6995 __pyx_L7_cleaned_up:;
6996 __Pyx_RefNannyFinishContext();
7000static PyObject *__pyx_pf_15cpostprocessing_2postProcessRT0velocityFromP1nc_sd(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_rowptr, PyArrayObject *__pyx_v_colind, PyArrayObject *__pyx_v_nFreeDOF_element, PyArrayObject *__pyx_v_freeLocal_element, PyArrayObject *__pyx_v_detJ, PyArrayObject *__pyx_v_sqrt_det_g, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_elementBarycenters, PyArrayObject *__pyx_v_quad_a, PyArrayObject *__pyx_v_quad_f, PyArrayObject *__pyx_v_w_dV_r, PyArrayObject *__pyx_v_u, PyArrayObject *__pyx_v_gradu, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_f, PyArrayObject *__pyx_v_r, PyArrayObject *__pyx_v_rt0vdofs, PyArrayObject *__pyx_v_w_dV_m, PyArrayObject *__pyx_v_mt) {
7001 PyObject *__pyx_r = NULL;
7002 __Pyx_RefNannyDeclarations
7005 __Pyx_RefNannySetupContext(
"postProcessRT0velocityFromP1nc_sd", 0);
7014 __pyx_t_2 = (((PyObject *)__pyx_v_mt) == Py_None);
7019 __pyx_t_1 = __pyx_t_2;
7021 goto __pyx_L4_bool_binop_done;
7023 __pyx_t_2 = (((PyObject *)__pyx_v_w_dV_m) != Py_None);
7025 __pyx_t_1 = __pyx_t_2;
7027 __pyx_L4_bool_binop_done:;
7038 postProcessRT0velocityFromP1nc_sd((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dV_r)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rowptr)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_colind)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nFreeDOF_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_freeLocal_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_detJ)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_sqrt_det_g)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBarycenters)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dV_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dV_m)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_u)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_gradu)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_mt)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs)));
7066 postProcessRT0velocityFromP1ncNoMass_sd((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dV_r)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradu)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rowptr)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_colind)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nFreeDOF_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_freeLocal_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_detJ)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_sqrt_det_g)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBarycenters)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dV_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_u)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_gradu)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs)));
7079 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
7080 __Pyx_XGIVEREF(__pyx_r);
7081 __Pyx_RefNannyFinishContext();
7094static PyObject *__pyx_pw_15cpostprocessing_5updateRT0velocityWithAveragedPotentialP1nc(PyObject *__pyx_self,
7095#
if CYTHON_VECTORCALL
7096PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7098PyObject *__pyx_args, PyObject *__pyx_kwds
7101static PyMethodDef __pyx_mdef_15cpostprocessing_5updateRT0velocityWithAveragedPotentialP1nc = {
"updateRT0velocityWithAveragedPotentialP1nc", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_5updateRT0velocityWithAveragedPotentialP1nc, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
7102static PyObject *__pyx_pw_15cpostprocessing_5updateRT0velocityWithAveragedPotentialP1nc(PyObject *__pyx_self,
7103#
if CYTHON_VECTORCALL
7104PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7106PyObject *__pyx_args, PyObject *__pyx_kwds
7109 PyArrayObject *__pyx_v_detJ = 0;
7110 PyArrayObject *__pyx_v_quad_a = 0;
7111 PyArrayObject *__pyx_v_phi = 0;
7112 PyArrayObject *__pyx_v_gradphi = 0;
7113 PyArrayObject *__pyx_v_a = 0;
7114 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
7115 #if !CYTHON_VECTORCALL
7116 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
7118 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
7119 PyObject* values[6] = {0,0,0,0,0,0};
7120 int __pyx_lineno = 0;
7121 const char *__pyx_filename = NULL;
7122 int __pyx_clineno = 0;
7123 PyObject *__pyx_r = 0;
7124 __Pyx_RefNannyDeclarations
7125 __Pyx_RefNannySetupContext(
"updateRT0velocityWithAveragedPotentialP1nc (wrapper)", 0);
7126 #if !CYTHON_VECTORCALL
7127 #if CYTHON_ASSUME_SAFE_SIZE
7128 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
7130 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
7133 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
7135 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_detJ,&__pyx_mstate_global->__pyx_n_u_quad_a,&__pyx_mstate_global->__pyx_n_u_phi,&__pyx_mstate_global->__pyx_n_u_gradphi,&__pyx_mstate_global->__pyx_n_u_a,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,0};
7136 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
7137 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 141, __pyx_L3_error)
7138 if (__pyx_kwds_len > 0) {
7139 switch (__pyx_nargs) {
7141 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
7142 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 141, __pyx_L3_error)
7145 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
7146 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 141, __pyx_L3_error)
7149 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
7150 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 141, __pyx_L3_error)
7153 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7154 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 141, __pyx_L3_error)
7157 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7158 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 141, __pyx_L3_error)
7161 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7162 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 141, __pyx_L3_error)
7165 default:
goto __pyx_L5_argtuple_error;
7167 const Py_ssize_t kwd_pos_args = __pyx_nargs;
7168 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"updateRT0velocityWithAveragedPotentialP1nc", 0) < (0)) __PYX_ERR(0, 141, __pyx_L3_error)
7169 for (Py_ssize_t i = __pyx_nargs; i < 6; i++) {
7170 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"updateRT0velocityWithAveragedPotentialP1nc", 1, 6, 6, i); __PYX_ERR(0, 141, __pyx_L3_error) }
7172 }
else if (unlikely(__pyx_nargs != 6)) {
7173 goto __pyx_L5_argtuple_error;
7175 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7176 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 141, __pyx_L3_error)
7177 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7178 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 141, __pyx_L3_error)
7179 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7180 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 141, __pyx_L3_error)
7181 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
7182 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 141, __pyx_L3_error)
7183 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
7184 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 141, __pyx_L3_error)
7185 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
7186 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 141, __pyx_L3_error)
7188 __pyx_v_detJ = ((PyArrayObject *)values[0]);
7189 __pyx_v_quad_a = ((PyArrayObject *)values[1]);
7190 __pyx_v_phi = ((PyArrayObject *)values[2]);
7191 __pyx_v_gradphi = ((PyArrayObject *)values[3]);
7192 __pyx_v_a = ((PyArrayObject *)values[4]);
7193 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[5]);
7196 __pyx_L5_argtuple_error:;
7197 __Pyx_RaiseArgtupleInvalid(
"updateRT0velocityWithAveragedPotentialP1nc", 1, 6, 6, __pyx_nargs); __PYX_ERR(0, 141, __pyx_L3_error)
7199 goto __pyx_L4_argument_unpacking_done;
7201 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7202 Py_XDECREF(values[__pyx_temp]);
7204 __Pyx_AddTraceback(
"cpostprocessing.updateRT0velocityWithAveragedPotentialP1nc", __pyx_clineno, __pyx_lineno, __pyx_filename);
7205 __Pyx_RefNannyFinishContext();
7207 __pyx_L4_argument_unpacking_done:;
7208 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_detJ), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"detJ", 0))) __PYX_ERR(0, 141, __pyx_L1_error)
7209 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_quad_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"quad_a", 0))) __PYX_ERR(0, 142, __pyx_L1_error)
7210 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_phi), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"phi", 0))) __PYX_ERR(0, 143, __pyx_L1_error)
7211 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gradphi), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"gradphi", 0))) __PYX_ERR(0, 144, __pyx_L1_error)
7212 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"a", 0))) __PYX_ERR(0, 145, __pyx_L1_error)
7213 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 146, __pyx_L1_error)
7214 __pyx_r = __pyx_pf_15cpostprocessing_4updateRT0velocityWithAveragedPotentialP1nc(__pyx_self, __pyx_v_detJ, __pyx_v_quad_a, __pyx_v_phi, __pyx_v_gradphi, __pyx_v_a, __pyx_v_rt0vdofs_element);
7220 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7221 Py_XDECREF(values[__pyx_temp]);
7223 goto __pyx_L7_cleaned_up;
7225 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7226 Py_XDECREF(values[__pyx_temp]);
7228 __pyx_L7_cleaned_up:;
7229 __Pyx_RefNannyFinishContext();
7233static PyObject *__pyx_pf_15cpostprocessing_4updateRT0velocityWithAveragedPotentialP1nc(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_detJ, PyArrayObject *__pyx_v_quad_a, PyArrayObject *__pyx_v_phi, PyArrayObject *__pyx_v_gradphi, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_rt0vdofs_element) {
7234 PyObject *__pyx_r = NULL;
7235 __Pyx_RefNannyDeclarations
7236 __Pyx_RefNannySetupContext(
"updateRT0velocityWithAveragedPotentialP1nc", 0);
7245 updateRT0velocityWithAveragedPotentialP1nc((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_a)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_a)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradphi)[(__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_gradphi) - 1)]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_detJ)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_phi)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_gradphi)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)));
7256 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
7257 __Pyx_XGIVEREF(__pyx_r);
7258 __Pyx_RefNannyFinishContext();
7271static PyObject *__pyx_pw_15cpostprocessing_7updateRT0velocityWithAveragedPotentialP1nc_sd(PyObject *__pyx_self,
7272#
if CYTHON_VECTORCALL
7273PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7275PyObject *__pyx_args, PyObject *__pyx_kwds
7278static PyMethodDef __pyx_mdef_15cpostprocessing_7updateRT0velocityWithAveragedPotentialP1nc_sd = {
"updateRT0velocityWithAveragedPotentialP1nc_sd", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_7updateRT0velocityWithAveragedPotentialP1nc_sd, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
7279static PyObject *__pyx_pw_15cpostprocessing_7updateRT0velocityWithAveragedPotentialP1nc_sd(PyObject *__pyx_self,
7280#
if CYTHON_VECTORCALL
7281PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7283PyObject *__pyx_args, PyObject *__pyx_kwds
7286 PyArrayObject *__pyx_v_rowptr = 0;
7287 PyArrayObject *__pyx_v_colind = 0;
7288 PyArrayObject *__pyx_v_detJ = 0;
7289 PyArrayObject *__pyx_v_quad_a = 0;
7290 PyArrayObject *__pyx_v_phi = 0;
7291 PyArrayObject *__pyx_v_gradphi = 0;
7292 PyArrayObject *__pyx_v_a = 0;
7293 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
7294 #if !CYTHON_VECTORCALL
7295 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
7297 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
7298 PyObject* values[8] = {0,0,0,0,0,0,0,0};
7299 int __pyx_lineno = 0;
7300 const char *__pyx_filename = NULL;
7301 int __pyx_clineno = 0;
7302 PyObject *__pyx_r = 0;
7303 __Pyx_RefNannyDeclarations
7304 __Pyx_RefNannySetupContext(
"updateRT0velocityWithAveragedPotentialP1nc_sd (wrapper)", 0);
7305 #if !CYTHON_VECTORCALL
7306 #if CYTHON_ASSUME_SAFE_SIZE
7307 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
7309 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
7312 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
7314 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_rowptr,&__pyx_mstate_global->__pyx_n_u_colind,&__pyx_mstate_global->__pyx_n_u_detJ,&__pyx_mstate_global->__pyx_n_u_quad_a,&__pyx_mstate_global->__pyx_n_u_phi,&__pyx_mstate_global->__pyx_n_u_gradphi,&__pyx_mstate_global->__pyx_n_u_a,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,0};
7315 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
7316 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 157, __pyx_L3_error)
7317 if (__pyx_kwds_len > 0) {
7318 switch (__pyx_nargs) {
7320 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
7321 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 157, __pyx_L3_error)
7324 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
7325 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 157, __pyx_L3_error)
7328 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
7329 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 157, __pyx_L3_error)
7332 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
7333 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 157, __pyx_L3_error)
7336 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
7337 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 157, __pyx_L3_error)
7340 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7341 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 157, __pyx_L3_error)
7344 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7345 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 157, __pyx_L3_error)
7348 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7349 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 157, __pyx_L3_error)
7352 default:
goto __pyx_L5_argtuple_error;
7354 const Py_ssize_t kwd_pos_args = __pyx_nargs;
7355 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"updateRT0velocityWithAveragedPotentialP1nc_sd", 0) < (0)) __PYX_ERR(0, 157, __pyx_L3_error)
7356 for (Py_ssize_t i = __pyx_nargs; i < 8; i++) {
7357 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"updateRT0velocityWithAveragedPotentialP1nc_sd", 1, 8, 8, i); __PYX_ERR(0, 157, __pyx_L3_error) }
7359 }
else if (unlikely(__pyx_nargs != 8)) {
7360 goto __pyx_L5_argtuple_error;
7362 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7363 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 157, __pyx_L3_error)
7364 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7365 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 157, __pyx_L3_error)
7366 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7367 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 157, __pyx_L3_error)
7368 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
7369 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 157, __pyx_L3_error)
7370 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
7371 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 157, __pyx_L3_error)
7372 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
7373 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 157, __pyx_L3_error)
7374 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
7375 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 157, __pyx_L3_error)
7376 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
7377 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 157, __pyx_L3_error)
7379 __pyx_v_rowptr = ((PyArrayObject *)values[0]);
7380 __pyx_v_colind = ((PyArrayObject *)values[1]);
7381 __pyx_v_detJ = ((PyArrayObject *)values[2]);
7382 __pyx_v_quad_a = ((PyArrayObject *)values[3]);
7383 __pyx_v_phi = ((PyArrayObject *)values[4]);
7384 __pyx_v_gradphi = ((PyArrayObject *)values[5]);
7385 __pyx_v_a = ((PyArrayObject *)values[6]);
7386 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[7]);
7389 __pyx_L5_argtuple_error:;
7390 __Pyx_RaiseArgtupleInvalid(
"updateRT0velocityWithAveragedPotentialP1nc_sd", 1, 8, 8, __pyx_nargs); __PYX_ERR(0, 157, __pyx_L3_error)
7392 goto __pyx_L4_argument_unpacking_done;
7394 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7395 Py_XDECREF(values[__pyx_temp]);
7397 __Pyx_AddTraceback(
"cpostprocessing.updateRT0velocityWithAveragedPotentialP1nc_sd", __pyx_clineno, __pyx_lineno, __pyx_filename);
7398 __Pyx_RefNannyFinishContext();
7400 __pyx_L4_argument_unpacking_done:;
7401 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rowptr), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rowptr", 0))) __PYX_ERR(0, 157, __pyx_L1_error)
7402 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_colind), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"colind", 0))) __PYX_ERR(0, 158, __pyx_L1_error)
7403 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_detJ), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"detJ", 0))) __PYX_ERR(0, 159, __pyx_L1_error)
7404 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_quad_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"quad_a", 0))) __PYX_ERR(0, 160, __pyx_L1_error)
7405 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_phi), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"phi", 0))) __PYX_ERR(0, 161, __pyx_L1_error)
7406 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gradphi), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"gradphi", 0))) __PYX_ERR(0, 162, __pyx_L1_error)
7407 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"a", 0))) __PYX_ERR(0, 163, __pyx_L1_error)
7408 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 164, __pyx_L1_error)
7409 __pyx_r = __pyx_pf_15cpostprocessing_6updateRT0velocityWithAveragedPotentialP1nc_sd(__pyx_self, __pyx_v_rowptr, __pyx_v_colind, __pyx_v_detJ, __pyx_v_quad_a, __pyx_v_phi, __pyx_v_gradphi, __pyx_v_a, __pyx_v_rt0vdofs_element);
7415 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7416 Py_XDECREF(values[__pyx_temp]);
7418 goto __pyx_L7_cleaned_up;
7420 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7421 Py_XDECREF(values[__pyx_temp]);
7423 __pyx_L7_cleaned_up:;
7424 __Pyx_RefNannyFinishContext();
7428static PyObject *__pyx_pf_15cpostprocessing_6updateRT0velocityWithAveragedPotentialP1nc_sd(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_rowptr, PyArrayObject *__pyx_v_colind, PyArrayObject *__pyx_v_detJ, PyArrayObject *__pyx_v_quad_a, PyArrayObject *__pyx_v_phi, PyArrayObject *__pyx_v_gradphi, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_rt0vdofs_element) {
7429 PyObject *__pyx_r = NULL;
7430 __Pyx_RefNannyDeclarations
7431 __Pyx_RefNannySetupContext(
"updateRT0velocityWithAveragedPotentialP1nc_sd", 0);
7440 updateRT0velocityWithAveragedPotentialP1nc_sd((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_a)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_a)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_gradphi)[(__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_gradphi) - 1)]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rowptr)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_colind)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_detJ)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_quad_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_phi)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_gradphi)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)));
7451 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
7452 __Pyx_XGIVEREF(__pyx_r);
7453 __Pyx_RefNannyFinishContext();
7466static PyObject *__pyx_pw_15cpostprocessing_9getElementRT0velocityValues(PyObject *__pyx_self,
7467#
if CYTHON_VECTORCALL
7468PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7470PyObject *__pyx_args, PyObject *__pyx_kwds
7473static PyMethodDef __pyx_mdef_15cpostprocessing_9getElementRT0velocityValues = {
"getElementRT0velocityValues", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_9getElementRT0velocityValues, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
7474static PyObject *__pyx_pw_15cpostprocessing_9getElementRT0velocityValues(PyObject *__pyx_self,
7475#
if CYTHON_VECTORCALL
7476PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7478PyObject *__pyx_args, PyObject *__pyx_kwds
7481 PyArrayObject *__pyx_v_x_element = 0;
7482 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
7483 PyArrayObject *__pyx_v_v_element = 0;
7484 #if !CYTHON_VECTORCALL
7485 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
7487 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
7488 PyObject* values[3] = {0,0,0};
7489 int __pyx_lineno = 0;
7490 const char *__pyx_filename = NULL;
7491 int __pyx_clineno = 0;
7492 PyObject *__pyx_r = 0;
7493 __Pyx_RefNannyDeclarations
7494 __Pyx_RefNannySetupContext(
"getElementRT0velocityValues (wrapper)", 0);
7495 #if !CYTHON_VECTORCALL
7496 #if CYTHON_ASSUME_SAFE_SIZE
7497 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
7499 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
7502 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
7504 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_x_element,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,&__pyx_mstate_global->__pyx_n_u_v_element,0};
7505 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
7506 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 177, __pyx_L3_error)
7507 if (__pyx_kwds_len > 0) {
7508 switch (__pyx_nargs) {
7510 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7511 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 177, __pyx_L3_error)
7514 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7515 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 177, __pyx_L3_error)
7518 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7519 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 177, __pyx_L3_error)
7522 default:
goto __pyx_L5_argtuple_error;
7524 const Py_ssize_t kwd_pos_args = __pyx_nargs;
7525 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getElementRT0velocityValues", 0) < (0)) __PYX_ERR(0, 177, __pyx_L3_error)
7526 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
7527 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getElementRT0velocityValues", 1, 3, 3, i); __PYX_ERR(0, 177, __pyx_L3_error) }
7529 }
else if (unlikely(__pyx_nargs != 3)) {
7530 goto __pyx_L5_argtuple_error;
7532 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7533 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 177, __pyx_L3_error)
7534 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7535 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 177, __pyx_L3_error)
7536 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7537 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 177, __pyx_L3_error)
7539 __pyx_v_x_element = ((PyArrayObject *)values[0]);
7540 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[1]);
7541 __pyx_v_v_element = ((PyArrayObject *)values[2]);
7544 __pyx_L5_argtuple_error:;
7545 __Pyx_RaiseArgtupleInvalid(
"getElementRT0velocityValues", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 177, __pyx_L3_error)
7547 goto __pyx_L4_argument_unpacking_done;
7549 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7550 Py_XDECREF(values[__pyx_temp]);
7552 __Pyx_AddTraceback(
"cpostprocessing.getElementRT0velocityValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
7553 __Pyx_RefNannyFinishContext();
7555 __pyx_L4_argument_unpacking_done:;
7556 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_element", 0))) __PYX_ERR(0, 177, __pyx_L1_error)
7557 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 178, __pyx_L1_error)
7558 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_element", 0))) __PYX_ERR(0, 179, __pyx_L1_error)
7559 __pyx_r = __pyx_pf_15cpostprocessing_8getElementRT0velocityValues(__pyx_self, __pyx_v_x_element, __pyx_v_rt0vdofs_element, __pyx_v_v_element);
7565 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7566 Py_XDECREF(values[__pyx_temp]);
7568 goto __pyx_L7_cleaned_up;
7570 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7571 Py_XDECREF(values[__pyx_temp]);
7573 __pyx_L7_cleaned_up:;
7574 __Pyx_RefNannyFinishContext();
7578static PyObject *__pyx_pf_15cpostprocessing_8getElementRT0velocityValues(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_x_element, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_element) {
7579 PyObject *__pyx_r = NULL;
7580 __Pyx_RefNannyDeclarations
7581 __Pyx_RefNannySetupContext(
"getElementRT0velocityValues", 0);
7590 getElementRT0velocityValues((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_element)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_element)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_element)[2]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_element)));
7601 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
7602 __Pyx_XGIVEREF(__pyx_r);
7603 __Pyx_RefNannyFinishContext();
7616static PyObject *__pyx_pw_15cpostprocessing_11getElementBoundaryRT0velocityValues(PyObject *__pyx_self,
7617#
if CYTHON_VECTORCALL
7618PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7620PyObject *__pyx_args, PyObject *__pyx_kwds
7623static PyMethodDef __pyx_mdef_15cpostprocessing_11getElementBoundaryRT0velocityValues = {
"getElementBoundaryRT0velocityValues", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_11getElementBoundaryRT0velocityValues, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
7624static PyObject *__pyx_pw_15cpostprocessing_11getElementBoundaryRT0velocityValues(PyObject *__pyx_self,
7625#
if CYTHON_VECTORCALL
7626PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7628PyObject *__pyx_args, PyObject *__pyx_kwds
7631 PyArrayObject *__pyx_v_x_elementBoundary = 0;
7632 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
7633 PyArrayObject *__pyx_v_v_elementBoundary = 0;
7634 #if !CYTHON_VECTORCALL
7635 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
7637 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
7638 PyObject* values[3] = {0,0,0};
7639 int __pyx_lineno = 0;
7640 const char *__pyx_filename = NULL;
7641 int __pyx_clineno = 0;
7642 PyObject *__pyx_r = 0;
7643 __Pyx_RefNannyDeclarations
7644 __Pyx_RefNannySetupContext(
"getElementBoundaryRT0velocityValues (wrapper)", 0);
7645 #if !CYTHON_VECTORCALL
7646 #if CYTHON_ASSUME_SAFE_SIZE
7647 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
7649 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
7652 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
7654 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_x_elementBoundary,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,&__pyx_mstate_global->__pyx_n_u_v_elementBoundary,0};
7655 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
7656 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 187, __pyx_L3_error)
7657 if (__pyx_kwds_len > 0) {
7658 switch (__pyx_nargs) {
7660 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7661 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 187, __pyx_L3_error)
7664 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7665 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 187, __pyx_L3_error)
7668 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7669 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 187, __pyx_L3_error)
7672 default:
goto __pyx_L5_argtuple_error;
7674 const Py_ssize_t kwd_pos_args = __pyx_nargs;
7675 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getElementBoundaryRT0velocityValues", 0) < (0)) __PYX_ERR(0, 187, __pyx_L3_error)
7676 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
7677 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getElementBoundaryRT0velocityValues", 1, 3, 3, i); __PYX_ERR(0, 187, __pyx_L3_error) }
7679 }
else if (unlikely(__pyx_nargs != 3)) {
7680 goto __pyx_L5_argtuple_error;
7682 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7683 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 187, __pyx_L3_error)
7684 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7685 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 187, __pyx_L3_error)
7686 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7687 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 187, __pyx_L3_error)
7689 __pyx_v_x_elementBoundary = ((PyArrayObject *)values[0]);
7690 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[1]);
7691 __pyx_v_v_elementBoundary = ((PyArrayObject *)values[2]);
7694 __pyx_L5_argtuple_error:;
7695 __Pyx_RaiseArgtupleInvalid(
"getElementBoundaryRT0velocityValues", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 187, __pyx_L3_error)
7697 goto __pyx_L4_argument_unpacking_done;
7699 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7700 Py_XDECREF(values[__pyx_temp]);
7702 __Pyx_AddTraceback(
"cpostprocessing.getElementBoundaryRT0velocityValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
7703 __Pyx_RefNannyFinishContext();
7705 __pyx_L4_argument_unpacking_done:;
7706 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_elementBoundary", 0))) __PYX_ERR(0, 187, __pyx_L1_error)
7707 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 188, __pyx_L1_error)
7708 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_elementBoundary", 0))) __PYX_ERR(0, 189, __pyx_L1_error)
7709 __pyx_r = __pyx_pf_15cpostprocessing_10getElementBoundaryRT0velocityValues(__pyx_self, __pyx_v_x_elementBoundary, __pyx_v_rt0vdofs_element, __pyx_v_v_elementBoundary);
7715 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7716 Py_XDECREF(values[__pyx_temp]);
7718 goto __pyx_L7_cleaned_up;
7720 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7721 Py_XDECREF(values[__pyx_temp]);
7723 __pyx_L7_cleaned_up:;
7724 __Pyx_RefNannyFinishContext();
7728static PyObject *__pyx_pf_15cpostprocessing_10getElementBoundaryRT0velocityValues(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_x_elementBoundary, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary) {
7729 PyObject *__pyx_r = NULL;
7730 __Pyx_RefNannyDeclarations
7731 __Pyx_RefNannySetupContext(
"getElementBoundaryRT0velocityValues", 0);
7740 getElementBoundaryRT0velocityValues((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary)[3]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_elementBoundary)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_elementBoundary)));
7751 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
7752 __Pyx_XGIVEREF(__pyx_r);
7753 __Pyx_RefNannyFinishContext();
7766static PyObject *__pyx_pw_15cpostprocessing_13getGlobalElementBoundaryRT0velocityValues(PyObject *__pyx_self,
7767#
if CYTHON_VECTORCALL
7768PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7770PyObject *__pyx_args, PyObject *__pyx_kwds
7773static PyMethodDef __pyx_mdef_15cpostprocessing_13getGlobalElementBoundaryRT0velocityValues = {
"getGlobalElementBoundaryRT0velocityValues", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_13getGlobalElementBoundaryRT0velocityValues, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
7774static PyObject *__pyx_pw_15cpostprocessing_13getGlobalElementBoundaryRT0velocityValues(PyObject *__pyx_self,
7775#
if CYTHON_VECTORCALL
7776PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7778PyObject *__pyx_args, PyObject *__pyx_kwds
7781 PyArrayObject *__pyx_v_elementBoundaryElementsArray = 0;
7782 PyArrayObject *__pyx_v_x_elementBoundary_global = 0;
7783 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
7784 PyArrayObject *__pyx_v_v_elementBoundary_global = 0;
7785 #if !CYTHON_VECTORCALL
7786 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
7788 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
7789 PyObject* values[4] = {0,0,0,0};
7790 int __pyx_lineno = 0;
7791 const char *__pyx_filename = NULL;
7792 int __pyx_clineno = 0;
7793 PyObject *__pyx_r = 0;
7794 __Pyx_RefNannyDeclarations
7795 __Pyx_RefNannySetupContext(
"getGlobalElementBoundaryRT0velocityValues (wrapper)", 0);
7796 #if !CYTHON_VECTORCALL
7797 #if CYTHON_ASSUME_SAFE_SIZE
7798 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
7800 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
7803 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
7805 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_elementBoundaryElementsArray,&__pyx_mstate_global->__pyx_n_u_x_elementBoundary_global,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,&__pyx_mstate_global->__pyx_n_u_v_elementBoundary_global,0};
7806 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
7807 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 198, __pyx_L3_error)
7808 if (__pyx_kwds_len > 0) {
7809 switch (__pyx_nargs) {
7811 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
7812 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 198, __pyx_L3_error)
7815 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7816 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 198, __pyx_L3_error)
7819 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7820 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 198, __pyx_L3_error)
7823 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7824 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 198, __pyx_L3_error)
7827 default:
goto __pyx_L5_argtuple_error;
7829 const Py_ssize_t kwd_pos_args = __pyx_nargs;
7830 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getGlobalElementBoundaryRT0velocityValues", 0) < (0)) __PYX_ERR(0, 198, __pyx_L3_error)
7831 for (Py_ssize_t i = __pyx_nargs; i < 4; i++) {
7832 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getGlobalElementBoundaryRT0velocityValues", 1, 4, 4, i); __PYX_ERR(0, 198, __pyx_L3_error) }
7834 }
else if (unlikely(__pyx_nargs != 4)) {
7835 goto __pyx_L5_argtuple_error;
7837 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7838 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 198, __pyx_L3_error)
7839 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7840 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 198, __pyx_L3_error)
7841 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7842 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 198, __pyx_L3_error)
7843 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
7844 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 198, __pyx_L3_error)
7846 __pyx_v_elementBoundaryElementsArray = ((PyArrayObject *)values[0]);
7847 __pyx_v_x_elementBoundary_global = ((PyArrayObject *)values[1]);
7848 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[2]);
7849 __pyx_v_v_elementBoundary_global = ((PyArrayObject *)values[3]);
7852 __pyx_L5_argtuple_error:;
7853 __Pyx_RaiseArgtupleInvalid(
"getGlobalElementBoundaryRT0velocityValues", 1, 4, 4, __pyx_nargs); __PYX_ERR(0, 198, __pyx_L3_error)
7855 goto __pyx_L4_argument_unpacking_done;
7857 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7858 Py_XDECREF(values[__pyx_temp]);
7860 __Pyx_AddTraceback(
"cpostprocessing.getGlobalElementBoundaryRT0velocityValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
7861 __Pyx_RefNannyFinishContext();
7863 __pyx_L4_argument_unpacking_done:;
7864 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElementsArray", 0))) __PYX_ERR(0, 198, __pyx_L1_error)
7865 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_elementBoundary_global), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_elementBoundary_global", 0))) __PYX_ERR(0, 199, __pyx_L1_error)
7866 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 200, __pyx_L1_error)
7867 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_elementBoundary_global), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_elementBoundary_global", 0))) __PYX_ERR(0, 201, __pyx_L1_error)
7868 __pyx_r = __pyx_pf_15cpostprocessing_12getGlobalElementBoundaryRT0velocityValues(__pyx_self, __pyx_v_elementBoundaryElementsArray, __pyx_v_x_elementBoundary_global, __pyx_v_rt0vdofs_element, __pyx_v_v_elementBoundary_global);
7874 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7875 Py_XDECREF(values[__pyx_temp]);
7877 goto __pyx_L7_cleaned_up;
7879 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
7880 Py_XDECREF(values[__pyx_temp]);
7882 __pyx_L7_cleaned_up:;
7883 __Pyx_RefNannyFinishContext();
7887static PyObject *__pyx_pf_15cpostprocessing_12getGlobalElementBoundaryRT0velocityValues(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_x_elementBoundary_global, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary_global) {
7888 PyObject *__pyx_r = NULL;
7889 __Pyx_RefNannyDeclarations
7890 __Pyx_RefNannySetupContext(
"getGlobalElementBoundaryRT0velocityValues", 0);
7899 getGlobalElementBoundaryRT0velocityValues((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary_global)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary_global)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary_global)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElementsArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_elementBoundary_global)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_elementBoundary_global)));
7910 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
7911 __Pyx_XGIVEREF(__pyx_r);
7912 __Pyx_RefNannyFinishContext();
7925static PyObject *__pyx_pw_15cpostprocessing_15getGlobalExteriorElementBoundaryRT0velocityValues(PyObject *__pyx_self,
7926#
if CYTHON_VECTORCALL
7927PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7929PyObject *__pyx_args, PyObject *__pyx_kwds
7932static PyMethodDef __pyx_mdef_15cpostprocessing_15getGlobalExteriorElementBoundaryRT0velocityValues = {
"getGlobalExteriorElementBoundaryRT0velocityValues", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_15getGlobalExteriorElementBoundaryRT0velocityValues, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
7933static PyObject *__pyx_pw_15cpostprocessing_15getGlobalExteriorElementBoundaryRT0velocityValues(PyObject *__pyx_self,
7934#
if CYTHON_VECTORCALL
7935PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
7937PyObject *__pyx_args, PyObject *__pyx_kwds
7940 PyArrayObject *__pyx_v_exteriorElementBoundariesArray = 0;
7941 PyArrayObject *__pyx_v_elementBoundaryElementsArray = 0;
7942 PyArrayObject *__pyx_v_x_elementBoundary_global = 0;
7943 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
7944 PyArrayObject *__pyx_v_v_elementBoundary_global = 0;
7945 #if !CYTHON_VECTORCALL
7946 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
7948 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
7949 PyObject* values[5] = {0,0,0,0,0};
7950 int __pyx_lineno = 0;
7951 const char *__pyx_filename = NULL;
7952 int __pyx_clineno = 0;
7953 PyObject *__pyx_r = 0;
7954 __Pyx_RefNannyDeclarations
7955 __Pyx_RefNannySetupContext(
"getGlobalExteriorElementBoundaryRT0velocityValues (wrapper)", 0);
7956 #if !CYTHON_VECTORCALL
7957 #if CYTHON_ASSUME_SAFE_SIZE
7958 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
7960 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
7963 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
7965 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundariesArray,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElementsArray,&__pyx_mstate_global->__pyx_n_u_x_elementBoundary_global,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,&__pyx_mstate_global->__pyx_n_u_v_elementBoundary_global,0};
7966 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
7967 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 210, __pyx_L3_error)
7968 if (__pyx_kwds_len > 0) {
7969 switch (__pyx_nargs) {
7971 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
7972 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 210, __pyx_L3_error)
7975 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
7976 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 210, __pyx_L3_error)
7979 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
7980 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 210, __pyx_L3_error)
7983 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
7984 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 210, __pyx_L3_error)
7987 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
7988 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 210, __pyx_L3_error)
7991 default:
goto __pyx_L5_argtuple_error;
7993 const Py_ssize_t kwd_pos_args = __pyx_nargs;
7994 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getGlobalExteriorElementBoundaryRT0velocityValues", 0) < (0)) __PYX_ERR(0, 210, __pyx_L3_error)
7995 for (Py_ssize_t i = __pyx_nargs; i < 5; i++) {
7996 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getGlobalExteriorElementBoundaryRT0velocityValues", 1, 5, 5, i); __PYX_ERR(0, 210, __pyx_L3_error) }
7998 }
else if (unlikely(__pyx_nargs != 5)) {
7999 goto __pyx_L5_argtuple_error;
8001 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
8002 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 210, __pyx_L3_error)
8003 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
8004 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 210, __pyx_L3_error)
8005 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
8006 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 210, __pyx_L3_error)
8007 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
8008 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 210, __pyx_L3_error)
8009 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
8010 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 210, __pyx_L3_error)
8012 __pyx_v_exteriorElementBoundariesArray = ((PyArrayObject *)values[0]);
8013 __pyx_v_elementBoundaryElementsArray = ((PyArrayObject *)values[1]);
8014 __pyx_v_x_elementBoundary_global = ((PyArrayObject *)values[2]);
8015 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[3]);
8016 __pyx_v_v_elementBoundary_global = ((PyArrayObject *)values[4]);
8019 __pyx_L5_argtuple_error:;
8020 __Pyx_RaiseArgtupleInvalid(
"getGlobalExteriorElementBoundaryRT0velocityValues", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 210, __pyx_L3_error)
8022 goto __pyx_L4_argument_unpacking_done;
8024 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8025 Py_XDECREF(values[__pyx_temp]);
8027 __Pyx_AddTraceback(
"cpostprocessing.getGlobalExteriorElementBoundaryRT0velocityValues", __pyx_clineno, __pyx_lineno, __pyx_filename);
8028 __Pyx_RefNannyFinishContext();
8030 __pyx_L4_argument_unpacking_done:;
8031 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundariesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundariesArray", 0))) __PYX_ERR(0, 210, __pyx_L1_error)
8032 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElementsArray", 0))) __PYX_ERR(0, 211, __pyx_L1_error)
8033 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_elementBoundary_global), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_elementBoundary_global", 0))) __PYX_ERR(0, 212, __pyx_L1_error)
8034 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 213, __pyx_L1_error)
8035 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_elementBoundary_global), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_elementBoundary_global", 0))) __PYX_ERR(0, 214, __pyx_L1_error)
8036 __pyx_r = __pyx_pf_15cpostprocessing_14getGlobalExteriorElementBoundaryRT0velocityValues(__pyx_self, __pyx_v_exteriorElementBoundariesArray, __pyx_v_elementBoundaryElementsArray, __pyx_v_x_elementBoundary_global, __pyx_v_rt0vdofs_element, __pyx_v_v_elementBoundary_global);
8042 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8043 Py_XDECREF(values[__pyx_temp]);
8045 goto __pyx_L7_cleaned_up;
8047 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8048 Py_XDECREF(values[__pyx_temp]);
8050 __pyx_L7_cleaned_up:;
8051 __Pyx_RefNannyFinishContext();
8055static PyObject *__pyx_pf_15cpostprocessing_14getGlobalExteriorElementBoundaryRT0velocityValues(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_x_elementBoundary_global, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary_global) {
8056 PyObject *__pyx_r = NULL;
8057 __Pyx_RefNannyDeclarations
8058 __Pyx_RefNannySetupContext(
"getGlobalExteriorElementBoundaryRT0velocityValues", 0);
8067 getGlobalExteriorElementBoundaryRT0velocityValues((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundariesArray)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary_global)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary_global)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElementsArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundariesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_elementBoundary_global)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_elementBoundary_global)));
8078 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
8079 __Pyx_XGIVEREF(__pyx_r);
8080 __Pyx_RefNannyFinishContext();
8093static PyObject *__pyx_pw_15cpostprocessing_17postProcessRT0potentialFromP1nc(PyObject *__pyx_self,
8094#
if CYTHON_VECTORCALL
8095PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
8097PyObject *__pyx_args, PyObject *__pyx_kwds
8100static PyMethodDef __pyx_mdef_15cpostprocessing_17postProcessRT0potentialFromP1nc = {
"postProcessRT0potentialFromP1nc", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_17postProcessRT0potentialFromP1nc, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
8101static PyObject *__pyx_pw_15cpostprocessing_17postProcessRT0potentialFromP1nc(PyObject *__pyx_self,
8102#
if CYTHON_VECTORCALL
8103PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
8105PyObject *__pyx_args, PyObject *__pyx_kwds
8108 PyArrayObject *__pyx_v_uQuadratureWeights_element = 0;
8109 PyArrayObject *__pyx_v_elementBarycenters = 0;
8110 PyArrayObject *__pyx_v_aElementQuadWeights = 0;
8111 PyArrayObject *__pyx_v_detJ = 0;
8112 CYTHON_UNUSED PyArrayObject *__pyx_v_uQuadratureWeights_elementBoundary = 0;
8113 PyArrayObject *__pyx_v_x = 0;
8114 PyArrayObject *__pyx_v_u = 0;
8115 PyArrayObject *__pyx_v_gradu = 0;
8116 PyArrayObject *__pyx_v_x_elementBoundary = 0;
8117 PyArrayObject *__pyx_v_u_elementBoundary = 0;
8118 PyArrayObject *__pyx_v_n = 0;
8119 PyArrayObject *__pyx_v_a = 0;
8120 PyArrayObject *__pyx_v_f = 0;
8121 PyArrayObject *__pyx_v_r = 0;
8122 PyArrayObject *__pyx_v_rt0vdofs = 0;
8123 PyArrayObject *__pyx_v_rt0potential = 0;
8124 #if !CYTHON_VECTORCALL
8125 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
8127 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
8128 PyObject* values[16] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
8129 int __pyx_lineno = 0;
8130 const char *__pyx_filename = NULL;
8131 int __pyx_clineno = 0;
8132 PyObject *__pyx_r = 0;
8133 __Pyx_RefNannyDeclarations
8134 __Pyx_RefNannySetupContext(
"postProcessRT0potentialFromP1nc (wrapper)", 0);
8135 #if !CYTHON_VECTORCALL
8136 #if CYTHON_ASSUME_SAFE_SIZE
8137 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
8139 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
8142 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
8144 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_uQuadratureWeights_element,&__pyx_mstate_global->__pyx_n_u_elementBarycenters,&__pyx_mstate_global->__pyx_n_u_aElementQuadWeights,&__pyx_mstate_global->__pyx_n_u_detJ,&__pyx_mstate_global->__pyx_n_u_uQuadratureWeights_elementBounda,&__pyx_mstate_global->__pyx_n_u_x,&__pyx_mstate_global->__pyx_n_u_u,&__pyx_mstate_global->__pyx_n_u_gradu,&__pyx_mstate_global->__pyx_n_u_x_elementBoundary,&__pyx_mstate_global->__pyx_n_u_u_elementBoundary,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_a,&__pyx_mstate_global->__pyx_n_u_f,&__pyx_mstate_global->__pyx_n_u_r,&__pyx_mstate_global->__pyx_n_u_rt0vdofs,&__pyx_mstate_global->__pyx_n_u_rt0potential,0};
8145 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
8146 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 224, __pyx_L3_error)
8147 if (__pyx_kwds_len > 0) {
8148 switch (__pyx_nargs) {
8150 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
8151 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 224, __pyx_L3_error)
8154 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
8155 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 224, __pyx_L3_error)
8158 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
8159 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 224, __pyx_L3_error)
8162 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
8163 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 224, __pyx_L3_error)
8166 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
8167 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 224, __pyx_L3_error)
8170 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
8171 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 224, __pyx_L3_error)
8174 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
8175 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 224, __pyx_L3_error)
8178 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
8179 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 224, __pyx_L3_error)
8182 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
8183 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 224, __pyx_L3_error)
8186 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
8187 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 224, __pyx_L3_error)
8190 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
8191 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 224, __pyx_L3_error)
8194 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
8195 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 224, __pyx_L3_error)
8198 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
8199 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 224, __pyx_L3_error)
8202 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
8203 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 224, __pyx_L3_error)
8206 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
8207 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 224, __pyx_L3_error)
8210 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
8211 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 224, __pyx_L3_error)
8214 default:
goto __pyx_L5_argtuple_error;
8216 const Py_ssize_t kwd_pos_args = __pyx_nargs;
8217 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"postProcessRT0potentialFromP1nc", 0) < (0)) __PYX_ERR(0, 224, __pyx_L3_error)
8218 for (Py_ssize_t i = __pyx_nargs; i < 16; i++) {
8219 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"postProcessRT0potentialFromP1nc", 1, 16, 16, i); __PYX_ERR(0, 224, __pyx_L3_error) }
8221 }
else if (unlikely(__pyx_nargs != 16)) {
8222 goto __pyx_L5_argtuple_error;
8224 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
8225 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 224, __pyx_L3_error)
8226 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
8227 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 224, __pyx_L3_error)
8228 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
8229 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 224, __pyx_L3_error)
8230 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
8231 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 224, __pyx_L3_error)
8232 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
8233 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 224, __pyx_L3_error)
8234 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
8235 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 224, __pyx_L3_error)
8236 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
8237 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 224, __pyx_L3_error)
8238 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
8239 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 224, __pyx_L3_error)
8240 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
8241 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 224, __pyx_L3_error)
8242 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
8243 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 224, __pyx_L3_error)
8244 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
8245 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 224, __pyx_L3_error)
8246 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
8247 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 224, __pyx_L3_error)
8248 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
8249 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 224, __pyx_L3_error)
8250 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
8251 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 224, __pyx_L3_error)
8252 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
8253 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 224, __pyx_L3_error)
8254 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
8255 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 224, __pyx_L3_error)
8257 __pyx_v_uQuadratureWeights_element = ((PyArrayObject *)values[0]);
8258 __pyx_v_elementBarycenters = ((PyArrayObject *)values[1]);
8259 __pyx_v_aElementQuadWeights = ((PyArrayObject *)values[2]);
8260 __pyx_v_detJ = ((PyArrayObject *)values[3]);
8261 __pyx_v_uQuadratureWeights_elementBoundary = ((PyArrayObject *)values[4]);
8262 __pyx_v_x = ((PyArrayObject *)values[5]);
8263 __pyx_v_u = ((PyArrayObject *)values[6]);
8264 __pyx_v_gradu = ((PyArrayObject *)values[7]);
8265 __pyx_v_x_elementBoundary = ((PyArrayObject *)values[8]);
8266 __pyx_v_u_elementBoundary = ((PyArrayObject *)values[9]);
8267 __pyx_v_n = ((PyArrayObject *)values[10]);
8268 __pyx_v_a = ((PyArrayObject *)values[11]);
8269 __pyx_v_f = ((PyArrayObject *)values[12]);
8270 __pyx_v_r = ((PyArrayObject *)values[13]);
8271 __pyx_v_rt0vdofs = ((PyArrayObject *)values[14]);
8272 __pyx_v_rt0potential = ((PyArrayObject *)values[15]);
8275 __pyx_L5_argtuple_error:;
8276 __Pyx_RaiseArgtupleInvalid(
"postProcessRT0potentialFromP1nc", 1, 16, 16, __pyx_nargs); __PYX_ERR(0, 224, __pyx_L3_error)
8278 goto __pyx_L4_argument_unpacking_done;
8280 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8281 Py_XDECREF(values[__pyx_temp]);
8283 __Pyx_AddTraceback(
"cpostprocessing.postProcessRT0potentialFromP1nc", __pyx_clineno, __pyx_lineno, __pyx_filename);
8284 __Pyx_RefNannyFinishContext();
8286 __pyx_L4_argument_unpacking_done:;
8287 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_uQuadratureWeights_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"uQuadratureWeights_element", 0))) __PYX_ERR(0, 224, __pyx_L1_error)
8288 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBarycenters), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBarycenters", 0))) __PYX_ERR(0, 225, __pyx_L1_error)
8289 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_aElementQuadWeights), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"aElementQuadWeights", 0))) __PYX_ERR(0, 226, __pyx_L1_error)
8290 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_detJ), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"detJ", 0))) __PYX_ERR(0, 227, __pyx_L1_error)
8291 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_uQuadratureWeights_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"uQuadratureWeights_elementBoundary", 0))) __PYX_ERR(0, 228, __pyx_L1_error)
8292 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x", 0))) __PYX_ERR(0, 229, __pyx_L1_error)
8293 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"u", 0))) __PYX_ERR(0, 230, __pyx_L1_error)
8294 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gradu), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"gradu", 0))) __PYX_ERR(0, 231, __pyx_L1_error)
8295 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_elementBoundary", 0))) __PYX_ERR(0, 232, __pyx_L1_error)
8296 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"u_elementBoundary", 0))) __PYX_ERR(0, 233, __pyx_L1_error)
8297 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 234, __pyx_L1_error)
8298 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"a", 0))) __PYX_ERR(0, 235, __pyx_L1_error)
8299 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"f", 0))) __PYX_ERR(0, 236, __pyx_L1_error)
8300 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_r), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"r", 0))) __PYX_ERR(0, 237, __pyx_L1_error)
8301 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs", 0))) __PYX_ERR(0, 238, __pyx_L1_error)
8302 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0potential), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0potential", 0))) __PYX_ERR(0, 239, __pyx_L1_error)
8303 __pyx_r = __pyx_pf_15cpostprocessing_16postProcessRT0potentialFromP1nc(__pyx_self, __pyx_v_uQuadratureWeights_element, __pyx_v_elementBarycenters, __pyx_v_aElementQuadWeights, __pyx_v_detJ, __pyx_v_uQuadratureWeights_elementBoundary, __pyx_v_x, __pyx_v_u, __pyx_v_gradu, __pyx_v_x_elementBoundary, __pyx_v_u_elementBoundary, __pyx_v_n, __pyx_v_a, __pyx_v_f, __pyx_v_r, __pyx_v_rt0vdofs, __pyx_v_rt0potential);
8309 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8310 Py_XDECREF(values[__pyx_temp]);
8312 goto __pyx_L7_cleaned_up;
8314 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8315 Py_XDECREF(values[__pyx_temp]);
8317 __pyx_L7_cleaned_up:;
8318 __Pyx_RefNannyFinishContext();
8322static PyObject *__pyx_pf_15cpostprocessing_16postProcessRT0potentialFromP1nc(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_uQuadratureWeights_element, PyArrayObject *__pyx_v_elementBarycenters, PyArrayObject *__pyx_v_aElementQuadWeights, PyArrayObject *__pyx_v_detJ, CYTHON_UNUSED PyArrayObject *__pyx_v_uQuadratureWeights_elementBoundary, PyArrayObject *__pyx_v_x, PyArrayObject *__pyx_v_u, PyArrayObject *__pyx_v_gradu, PyArrayObject *__pyx_v_x_elementBoundary, PyArrayObject *__pyx_v_u_elementBoundary, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_f, PyArrayObject *__pyx_v_r, PyArrayObject *__pyx_v_rt0vdofs, PyArrayObject *__pyx_v_rt0potential) {
8323 PyObject *__pyx_r = NULL;
8324 __Pyx_RefNannyDeclarations
8325 __Pyx_RefNannySetupContext(
"postProcessRT0potentialFromP1nc", 0);
8334 postProcessRT0potentialFromP1nc((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_u)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_u)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[3]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_uQuadratureWeights_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBarycenters)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_aElementQuadWeights)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_detJ)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_uQuadratureWeights_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_u)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_gradu)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_elementBoundary)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_u_elementBoundary)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0potential)));
8345 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
8346 __Pyx_XGIVEREF(__pyx_r);
8347 __Pyx_RefNannyFinishContext();
8360static PyObject *__pyx_pw_15cpostprocessing_19postProcessRT0potentialFromP1nc_sd(PyObject *__pyx_self,
8361#
if CYTHON_VECTORCALL
8362PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
8364PyObject *__pyx_args, PyObject *__pyx_kwds
8367static PyMethodDef __pyx_mdef_15cpostprocessing_19postProcessRT0potentialFromP1nc_sd = {
"postProcessRT0potentialFromP1nc_sd", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_19postProcessRT0potentialFromP1nc_sd, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
8368static PyObject *__pyx_pw_15cpostprocessing_19postProcessRT0potentialFromP1nc_sd(PyObject *__pyx_self,
8369#
if CYTHON_VECTORCALL
8370PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
8372PyObject *__pyx_args, PyObject *__pyx_kwds
8375 PyArrayObject *__pyx_v_rowptr = 0;
8376 PyArrayObject *__pyx_v_colind = 0;
8377 PyArrayObject *__pyx_v_uQuadratureWeights_element = 0;
8378 PyArrayObject *__pyx_v_elementBarycenters = 0;
8379 PyArrayObject *__pyx_v_aElementQuadWeights = 0;
8380 PyArrayObject *__pyx_v_detJ = 0;
8381 CYTHON_UNUSED PyArrayObject *__pyx_v_uQuadratureWeights_elementBoundary = 0;
8382 PyArrayObject *__pyx_v_x = 0;
8383 PyArrayObject *__pyx_v_u = 0;
8384 PyArrayObject *__pyx_v_gradu = 0;
8385 PyArrayObject *__pyx_v_x_elementBoundary = 0;
8386 PyArrayObject *__pyx_v_u_elementBoundary = 0;
8387 PyArrayObject *__pyx_v_n = 0;
8388 PyArrayObject *__pyx_v_a = 0;
8389 PyArrayObject *__pyx_v_f = 0;
8390 PyArrayObject *__pyx_v_r = 0;
8391 PyArrayObject *__pyx_v_rt0vdofs = 0;
8392 PyArrayObject *__pyx_v_rt0potential = 0;
8393 #if !CYTHON_VECTORCALL
8394 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
8396 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
8397 PyObject* values[18] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
8398 int __pyx_lineno = 0;
8399 const char *__pyx_filename = NULL;
8400 int __pyx_clineno = 0;
8401 PyObject *__pyx_r = 0;
8402 __Pyx_RefNannyDeclarations
8403 __Pyx_RefNannySetupContext(
"postProcessRT0potentialFromP1nc_sd (wrapper)", 0);
8404 #if !CYTHON_VECTORCALL
8405 #if CYTHON_ASSUME_SAFE_SIZE
8406 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
8408 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
8411 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
8413 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_rowptr,&__pyx_mstate_global->__pyx_n_u_colind,&__pyx_mstate_global->__pyx_n_u_uQuadratureWeights_element,&__pyx_mstate_global->__pyx_n_u_elementBarycenters,&__pyx_mstate_global->__pyx_n_u_aElementQuadWeights,&__pyx_mstate_global->__pyx_n_u_detJ,&__pyx_mstate_global->__pyx_n_u_uQuadratureWeights_elementBounda,&__pyx_mstate_global->__pyx_n_u_x,&__pyx_mstate_global->__pyx_n_u_u,&__pyx_mstate_global->__pyx_n_u_gradu,&__pyx_mstate_global->__pyx_n_u_x_elementBoundary,&__pyx_mstate_global->__pyx_n_u_u_elementBoundary,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_a,&__pyx_mstate_global->__pyx_n_u_f,&__pyx_mstate_global->__pyx_n_u_r,&__pyx_mstate_global->__pyx_n_u_rt0vdofs,&__pyx_mstate_global->__pyx_n_u_rt0potential,0};
8414 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
8415 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 262, __pyx_L3_error)
8416 if (__pyx_kwds_len > 0) {
8417 switch (__pyx_nargs) {
8419 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
8420 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 262, __pyx_L3_error)
8423 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
8424 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 262, __pyx_L3_error)
8427 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
8428 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 262, __pyx_L3_error)
8431 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
8432 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 262, __pyx_L3_error)
8435 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
8436 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 262, __pyx_L3_error)
8439 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
8440 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 262, __pyx_L3_error)
8443 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
8444 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 262, __pyx_L3_error)
8447 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
8448 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 262, __pyx_L3_error)
8451 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
8452 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 262, __pyx_L3_error)
8455 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
8456 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 262, __pyx_L3_error)
8459 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
8460 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 262, __pyx_L3_error)
8463 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
8464 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 262, __pyx_L3_error)
8467 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
8468 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 262, __pyx_L3_error)
8471 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
8472 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 262, __pyx_L3_error)
8475 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
8476 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 262, __pyx_L3_error)
8479 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
8480 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 262, __pyx_L3_error)
8483 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
8484 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 262, __pyx_L3_error)
8487 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
8488 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 262, __pyx_L3_error)
8491 default:
goto __pyx_L5_argtuple_error;
8493 const Py_ssize_t kwd_pos_args = __pyx_nargs;
8494 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"postProcessRT0potentialFromP1nc_sd", 0) < (0)) __PYX_ERR(0, 262, __pyx_L3_error)
8495 for (Py_ssize_t i = __pyx_nargs; i < 18; i++) {
8496 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"postProcessRT0potentialFromP1nc_sd", 1, 18, 18, i); __PYX_ERR(0, 262, __pyx_L3_error) }
8498 }
else if (unlikely(__pyx_nargs != 18)) {
8499 goto __pyx_L5_argtuple_error;
8501 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
8502 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 262, __pyx_L3_error)
8503 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
8504 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 262, __pyx_L3_error)
8505 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
8506 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 262, __pyx_L3_error)
8507 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
8508 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 262, __pyx_L3_error)
8509 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
8510 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 262, __pyx_L3_error)
8511 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
8512 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 262, __pyx_L3_error)
8513 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
8514 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 262, __pyx_L3_error)
8515 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
8516 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 262, __pyx_L3_error)
8517 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
8518 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 262, __pyx_L3_error)
8519 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
8520 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 262, __pyx_L3_error)
8521 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
8522 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 262, __pyx_L3_error)
8523 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
8524 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 262, __pyx_L3_error)
8525 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
8526 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 262, __pyx_L3_error)
8527 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
8528 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 262, __pyx_L3_error)
8529 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
8530 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 262, __pyx_L3_error)
8531 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
8532 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 262, __pyx_L3_error)
8533 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
8534 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 262, __pyx_L3_error)
8535 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
8536 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 262, __pyx_L3_error)
8538 __pyx_v_rowptr = ((PyArrayObject *)values[0]);
8539 __pyx_v_colind = ((PyArrayObject *)values[1]);
8540 __pyx_v_uQuadratureWeights_element = ((PyArrayObject *)values[2]);
8541 __pyx_v_elementBarycenters = ((PyArrayObject *)values[3]);
8542 __pyx_v_aElementQuadWeights = ((PyArrayObject *)values[4]);
8543 __pyx_v_detJ = ((PyArrayObject *)values[5]);
8544 __pyx_v_uQuadratureWeights_elementBoundary = ((PyArrayObject *)values[6]);
8545 __pyx_v_x = ((PyArrayObject *)values[7]);
8546 __pyx_v_u = ((PyArrayObject *)values[8]);
8547 __pyx_v_gradu = ((PyArrayObject *)values[9]);
8548 __pyx_v_x_elementBoundary = ((PyArrayObject *)values[10]);
8549 __pyx_v_u_elementBoundary = ((PyArrayObject *)values[11]);
8550 __pyx_v_n = ((PyArrayObject *)values[12]);
8551 __pyx_v_a = ((PyArrayObject *)values[13]);
8552 __pyx_v_f = ((PyArrayObject *)values[14]);
8553 __pyx_v_r = ((PyArrayObject *)values[15]);
8554 __pyx_v_rt0vdofs = ((PyArrayObject *)values[16]);
8555 __pyx_v_rt0potential = ((PyArrayObject *)values[17]);
8558 __pyx_L5_argtuple_error:;
8559 __Pyx_RaiseArgtupleInvalid(
"postProcessRT0potentialFromP1nc_sd", 1, 18, 18, __pyx_nargs); __PYX_ERR(0, 262, __pyx_L3_error)
8561 goto __pyx_L4_argument_unpacking_done;
8563 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8564 Py_XDECREF(values[__pyx_temp]);
8566 __Pyx_AddTraceback(
"cpostprocessing.postProcessRT0potentialFromP1nc_sd", __pyx_clineno, __pyx_lineno, __pyx_filename);
8567 __Pyx_RefNannyFinishContext();
8569 __pyx_L4_argument_unpacking_done:;
8570 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rowptr), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rowptr", 0))) __PYX_ERR(0, 262, __pyx_L1_error)
8571 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_colind), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"colind", 0))) __PYX_ERR(0, 263, __pyx_L1_error)
8572 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_uQuadratureWeights_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"uQuadratureWeights_element", 0))) __PYX_ERR(0, 264, __pyx_L1_error)
8573 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBarycenters), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBarycenters", 0))) __PYX_ERR(0, 265, __pyx_L1_error)
8574 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_aElementQuadWeights), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"aElementQuadWeights", 0))) __PYX_ERR(0, 266, __pyx_L1_error)
8575 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_detJ), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"detJ", 0))) __PYX_ERR(0, 267, __pyx_L1_error)
8576 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_uQuadratureWeights_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"uQuadratureWeights_elementBoundary", 0))) __PYX_ERR(0, 268, __pyx_L1_error)
8577 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x", 0))) __PYX_ERR(0, 269, __pyx_L1_error)
8578 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"u", 0))) __PYX_ERR(0, 270, __pyx_L1_error)
8579 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_gradu), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"gradu", 0))) __PYX_ERR(0, 271, __pyx_L1_error)
8580 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_elementBoundary", 0))) __PYX_ERR(0, 272, __pyx_L1_error)
8581 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_u_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"u_elementBoundary", 0))) __PYX_ERR(0, 273, __pyx_L1_error)
8582 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 274, __pyx_L1_error)
8583 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_a), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"a", 0))) __PYX_ERR(0, 275, __pyx_L1_error)
8584 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"f", 0))) __PYX_ERR(0, 276, __pyx_L1_error)
8585 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_r), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"r", 0))) __PYX_ERR(0, 277, __pyx_L1_error)
8586 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs", 0))) __PYX_ERR(0, 278, __pyx_L1_error)
8587 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0potential), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0potential", 0))) __PYX_ERR(0, 279, __pyx_L1_error)
8588 __pyx_r = __pyx_pf_15cpostprocessing_18postProcessRT0potentialFromP1nc_sd(__pyx_self, __pyx_v_rowptr, __pyx_v_colind, __pyx_v_uQuadratureWeights_element, __pyx_v_elementBarycenters, __pyx_v_aElementQuadWeights, __pyx_v_detJ, __pyx_v_uQuadratureWeights_elementBoundary, __pyx_v_x, __pyx_v_u, __pyx_v_gradu, __pyx_v_x_elementBoundary, __pyx_v_u_elementBoundary, __pyx_v_n, __pyx_v_a, __pyx_v_f, __pyx_v_r, __pyx_v_rt0vdofs, __pyx_v_rt0potential);
8594 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8595 Py_XDECREF(values[__pyx_temp]);
8597 goto __pyx_L7_cleaned_up;
8599 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8600 Py_XDECREF(values[__pyx_temp]);
8602 __pyx_L7_cleaned_up:;
8603 __Pyx_RefNannyFinishContext();
8607static PyObject *__pyx_pf_15cpostprocessing_18postProcessRT0potentialFromP1nc_sd(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_rowptr, PyArrayObject *__pyx_v_colind, PyArrayObject *__pyx_v_uQuadratureWeights_element, PyArrayObject *__pyx_v_elementBarycenters, PyArrayObject *__pyx_v_aElementQuadWeights, PyArrayObject *__pyx_v_detJ, CYTHON_UNUSED PyArrayObject *__pyx_v_uQuadratureWeights_elementBoundary, PyArrayObject *__pyx_v_x, PyArrayObject *__pyx_v_u, PyArrayObject *__pyx_v_gradu, PyArrayObject *__pyx_v_x_elementBoundary, PyArrayObject *__pyx_v_u_elementBoundary, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_a, PyArrayObject *__pyx_v_f, PyArrayObject *__pyx_v_r, PyArrayObject *__pyx_v_rt0vdofs, PyArrayObject *__pyx_v_rt0potential) {
8608 PyObject *__pyx_r = NULL;
8609 __Pyx_RefNannyDeclarations
8610 __Pyx_RefNannySetupContext(
"postProcessRT0potentialFromP1nc_sd", 0);
8619 postProcessRT0potentialFromP1nc_sd((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_u)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_u)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[3]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rowptr)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_colind)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_uQuadratureWeights_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBarycenters)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_aElementQuadWeights)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_detJ)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_uQuadratureWeights_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_u)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_gradu)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_elementBoundary)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_u_elementBoundary)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_a)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_r)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0potential)));
8630 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
8631 __Pyx_XGIVEREF(__pyx_r);
8632 __Pyx_RefNannyFinishContext();
8645static PyObject *__pyx_pw_15cpostprocessing_21buildLocalBDM1projectionMatrices(PyObject *__pyx_self,
8646#
if CYTHON_VECTORCALL
8647PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
8649PyObject *__pyx_args, PyObject *__pyx_kwds
8652static PyMethodDef __pyx_mdef_15cpostprocessing_21buildLocalBDM1projectionMatrices = {
"buildLocalBDM1projectionMatrices", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_21buildLocalBDM1projectionMatrices, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
8653static PyObject *__pyx_pw_15cpostprocessing_21buildLocalBDM1projectionMatrices(PyObject *__pyx_self,
8654#
if CYTHON_VECTORCALL
8655PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
8657PyObject *__pyx_args, PyObject *__pyx_kwds
8660 PyArrayObject *__pyx_v_w_dS_f = 0;
8661 PyArrayObject *__pyx_v_ebq_n = 0;
8662 PyArrayObject *__pyx_v_ebq_v = 0;
8663 PyArrayObject *__pyx_v_BDMmat_element = 0;
8664 #if !CYTHON_VECTORCALL
8665 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
8667 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
8668 PyObject* values[4] = {0,0,0,0};
8669 int __pyx_lineno = 0;
8670 const char *__pyx_filename = NULL;
8671 int __pyx_clineno = 0;
8672 PyObject *__pyx_r = 0;
8673 __Pyx_RefNannyDeclarations
8674 __Pyx_RefNannySetupContext(
"buildLocalBDM1projectionMatrices (wrapper)", 0);
8675 #if !CYTHON_VECTORCALL
8676 #if CYTHON_ASSUME_SAFE_SIZE
8677 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
8679 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
8682 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
8684 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_w_dS_f,&__pyx_mstate_global->__pyx_n_u_ebq_n,&__pyx_mstate_global->__pyx_n_u_ebq_v,&__pyx_mstate_global->__pyx_n_u_BDMmat_element,0};
8685 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
8686 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 304, __pyx_L3_error)
8687 if (__pyx_kwds_len > 0) {
8688 switch (__pyx_nargs) {
8690 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
8691 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 304, __pyx_L3_error)
8694 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
8695 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 304, __pyx_L3_error)
8698 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
8699 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 304, __pyx_L3_error)
8702 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
8703 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 304, __pyx_L3_error)
8706 default:
goto __pyx_L5_argtuple_error;
8708 const Py_ssize_t kwd_pos_args = __pyx_nargs;
8709 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"buildLocalBDM1projectionMatrices", 0) < (0)) __PYX_ERR(0, 304, __pyx_L3_error)
8710 for (Py_ssize_t i = __pyx_nargs; i < 4; i++) {
8711 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"buildLocalBDM1projectionMatrices", 1, 4, 4, i); __PYX_ERR(0, 304, __pyx_L3_error) }
8713 }
else if (unlikely(__pyx_nargs != 4)) {
8714 goto __pyx_L5_argtuple_error;
8716 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
8717 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 304, __pyx_L3_error)
8718 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
8719 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 304, __pyx_L3_error)
8720 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
8721 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 304, __pyx_L3_error)
8722 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
8723 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 304, __pyx_L3_error)
8725 __pyx_v_w_dS_f = ((PyArrayObject *)values[0]);
8726 __pyx_v_ebq_n = ((PyArrayObject *)values[1]);
8727 __pyx_v_ebq_v = ((PyArrayObject *)values[2]);
8728 __pyx_v_BDMmat_element = ((PyArrayObject *)values[3]);
8731 __pyx_L5_argtuple_error:;
8732 __Pyx_RaiseArgtupleInvalid(
"buildLocalBDM1projectionMatrices", 1, 4, 4, __pyx_nargs); __PYX_ERR(0, 304, __pyx_L3_error)
8734 goto __pyx_L4_argument_unpacking_done;
8736 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8737 Py_XDECREF(values[__pyx_temp]);
8739 __Pyx_AddTraceback(
"cpostprocessing.buildLocalBDM1projectionMatrices", __pyx_clineno, __pyx_lineno, __pyx_filename);
8740 __Pyx_RefNannyFinishContext();
8742 __pyx_L4_argument_unpacking_done:;
8743 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dS_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dS_f", 0))) __PYX_ERR(0, 304, __pyx_L1_error)
8744 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_n", 0))) __PYX_ERR(0, 305, __pyx_L1_error)
8745 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_v), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_v", 0))) __PYX_ERR(0, 306, __pyx_L1_error)
8746 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmat_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmat_element", 0))) __PYX_ERR(0, 307, __pyx_L1_error)
8747 __pyx_r = __pyx_pf_15cpostprocessing_20buildLocalBDM1projectionMatrices(__pyx_self, __pyx_v_w_dS_f, __pyx_v_ebq_n, __pyx_v_ebq_v, __pyx_v_BDMmat_element);
8753 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8754 Py_XDECREF(values[__pyx_temp]);
8756 goto __pyx_L7_cleaned_up;
8758 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8759 Py_XDECREF(values[__pyx_temp]);
8761 __pyx_L7_cleaned_up:;
8762 __Pyx_RefNannyFinishContext();
8766static PyObject *__pyx_pf_15cpostprocessing_20buildLocalBDM1projectionMatrices(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_ebq_v, PyArrayObject *__pyx_v_BDMmat_element) {
8767 PyObject *__pyx_r = NULL;
8768 __Pyx_RefNannyDeclarations
8769 __Pyx_RefNannySetupContext(
"buildLocalBDM1projectionMatrices", 0);
8778 buildLocalBDM1projectionMatrices((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dS_f)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dS_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_v)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmat_element)));
8789 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
8790 __Pyx_XGIVEREF(__pyx_r);
8791 __Pyx_RefNannyFinishContext();
8804static PyObject *__pyx_pw_15cpostprocessing_23buildLocalBDM2projectionMatrices(PyObject *__pyx_self,
8805#
if CYTHON_VECTORCALL
8806PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
8808PyObject *__pyx_args, PyObject *__pyx_kwds
8811static PyMethodDef __pyx_mdef_15cpostprocessing_23buildLocalBDM2projectionMatrices = {
"buildLocalBDM2projectionMatrices", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_23buildLocalBDM2projectionMatrices, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
8812static PyObject *__pyx_pw_15cpostprocessing_23buildLocalBDM2projectionMatrices(PyObject *__pyx_self,
8813#
if CYTHON_VECTORCALL
8814PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
8816PyObject *__pyx_args, PyObject *__pyx_kwds
8820 PyArrayObject *__pyx_v_w_dS_f = 0;
8821 PyArrayObject *__pyx_v_ebq_n = 0;
8822 PyArrayObject *__pyx_v_ebq_v = 0;
8823 PyArrayObject *__pyx_v_q_basis_vals = 0;
8824 PyArrayObject *__pyx_v_w_int_test_grads = 0;
8825 PyArrayObject *__pyx_v_w_int_div_free = 0;
8826 PyArrayObject *__pyx_v_piola_trial_fun = 0;
8827 PyArrayObject *__pyx_v_edgeFlags = 0;
8828 PyArrayObject *__pyx_v_BDMmat_element = 0;
8829 #if !CYTHON_VECTORCALL
8830 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
8832 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
8833 PyObject* values[10] = {0,0,0,0,0,0,0,0,0,0};
8834 int __pyx_lineno = 0;
8835 const char *__pyx_filename = NULL;
8836 int __pyx_clineno = 0;
8837 PyObject *__pyx_r = 0;
8838 __Pyx_RefNannyDeclarations
8839 __Pyx_RefNannySetupContext(
"buildLocalBDM2projectionMatrices (wrapper)", 0);
8840 #if !CYTHON_VECTORCALL
8841 #if CYTHON_ASSUME_SAFE_SIZE
8842 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
8844 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
8847 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
8849 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_degree,&__pyx_mstate_global->__pyx_n_u_w_dS_f,&__pyx_mstate_global->__pyx_n_u_ebq_n,&__pyx_mstate_global->__pyx_n_u_ebq_v,&__pyx_mstate_global->__pyx_n_u_q_basis_vals,&__pyx_mstate_global->__pyx_n_u_w_int_test_grads,&__pyx_mstate_global->__pyx_n_u_w_int_div_free,&__pyx_mstate_global->__pyx_n_u_piola_trial_fun,&__pyx_mstate_global->__pyx_n_u_edgeFlags,&__pyx_mstate_global->__pyx_n_u_BDMmat_element,0};
8850 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
8851 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 320, __pyx_L3_error)
8852 if (__pyx_kwds_len > 0) {
8853 switch (__pyx_nargs) {
8855 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
8856 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 320, __pyx_L3_error)
8859 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
8860 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 320, __pyx_L3_error)
8863 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
8864 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 320, __pyx_L3_error)
8867 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
8868 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 320, __pyx_L3_error)
8871 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
8872 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 320, __pyx_L3_error)
8875 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
8876 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 320, __pyx_L3_error)
8879 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
8880 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 320, __pyx_L3_error)
8883 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
8884 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 320, __pyx_L3_error)
8887 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
8888 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 320, __pyx_L3_error)
8891 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
8892 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 320, __pyx_L3_error)
8895 default:
goto __pyx_L5_argtuple_error;
8897 const Py_ssize_t kwd_pos_args = __pyx_nargs;
8898 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"buildLocalBDM2projectionMatrices", 0) < (0)) __PYX_ERR(0, 320, __pyx_L3_error)
8899 for (Py_ssize_t i = __pyx_nargs; i < 10; i++) {
8900 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"buildLocalBDM2projectionMatrices", 1, 10, 10, i); __PYX_ERR(0, 320, __pyx_L3_error) }
8902 }
else if (unlikely(__pyx_nargs != 10)) {
8903 goto __pyx_L5_argtuple_error;
8905 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
8906 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 320, __pyx_L3_error)
8907 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
8908 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 320, __pyx_L3_error)
8909 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
8910 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 320, __pyx_L3_error)
8911 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
8912 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 320, __pyx_L3_error)
8913 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
8914 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 320, __pyx_L3_error)
8915 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
8916 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 320, __pyx_L3_error)
8917 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
8918 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 320, __pyx_L3_error)
8919 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
8920 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 320, __pyx_L3_error)
8921 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
8922 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 320, __pyx_L3_error)
8923 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
8924 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 320, __pyx_L3_error)
8926 __pyx_v_degree = __Pyx_PyLong_As_int(values[0]);
if (unlikely((__pyx_v_degree == (
int)-1) && PyErr_Occurred())) __PYX_ERR(0, 320, __pyx_L3_error)
8927 __pyx_v_w_dS_f = ((PyArrayObject *)values[1]);
8928 __pyx_v_ebq_n = ((PyArrayObject *)values[2]);
8929 __pyx_v_ebq_v = ((PyArrayObject *)values[3]);
8930 __pyx_v_q_basis_vals = ((PyArrayObject *)values[4]);
8931 __pyx_v_w_int_test_grads = ((PyArrayObject *)values[5]);
8932 __pyx_v_w_int_div_free = ((PyArrayObject *)values[6]);
8933 __pyx_v_piola_trial_fun = ((PyArrayObject *)values[7]);
8934 __pyx_v_edgeFlags = ((PyArrayObject *)values[8]);
8935 __pyx_v_BDMmat_element = ((PyArrayObject *)values[9]);
8938 __pyx_L5_argtuple_error:;
8939 __Pyx_RaiseArgtupleInvalid(
"buildLocalBDM2projectionMatrices", 1, 10, 10, __pyx_nargs); __PYX_ERR(0, 320, __pyx_L3_error)
8941 goto __pyx_L4_argument_unpacking_done;
8943 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8944 Py_XDECREF(values[__pyx_temp]);
8946 __Pyx_AddTraceback(
"cpostprocessing.buildLocalBDM2projectionMatrices", __pyx_clineno, __pyx_lineno, __pyx_filename);
8947 __Pyx_RefNannyFinishContext();
8949 __pyx_L4_argument_unpacking_done:;
8950 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dS_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dS_f", 0))) __PYX_ERR(0, 321, __pyx_L1_error)
8951 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_n", 0))) __PYX_ERR(0, 322, __pyx_L1_error)
8952 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_v), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_v", 0))) __PYX_ERR(0, 323, __pyx_L1_error)
8953 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_basis_vals), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_basis_vals", 0))) __PYX_ERR(0, 324, __pyx_L1_error)
8954 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_int_test_grads), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_int_test_grads", 0))) __PYX_ERR(0, 325, __pyx_L1_error)
8955 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_int_div_free), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_int_div_free", 0))) __PYX_ERR(0, 326, __pyx_L1_error)
8956 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_piola_trial_fun), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"piola_trial_fun", 0))) __PYX_ERR(0, 327, __pyx_L1_error)
8957 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_edgeFlags), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"edgeFlags", 0))) __PYX_ERR(0, 328, __pyx_L1_error)
8958 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmat_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmat_element", 0))) __PYX_ERR(0, 329, __pyx_L1_error)
8959 __pyx_r = __pyx_pf_15cpostprocessing_22buildLocalBDM2projectionMatrices(__pyx_self, __pyx_v_degree, __pyx_v_w_dS_f, __pyx_v_ebq_n, __pyx_v_ebq_v, __pyx_v_q_basis_vals, __pyx_v_w_int_test_grads, __pyx_v_w_int_div_free, __pyx_v_piola_trial_fun, __pyx_v_edgeFlags, __pyx_v_BDMmat_element);
8965 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8966 Py_XDECREF(values[__pyx_temp]);
8968 goto __pyx_L7_cleaned_up;
8970 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
8971 Py_XDECREF(values[__pyx_temp]);
8973 __pyx_L7_cleaned_up:;
8975 __Pyx_RefNannyFinishContext();
8979static PyObject *__pyx_pf_15cpostprocessing_22buildLocalBDM2projectionMatrices(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_degree, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_ebq_v, PyArrayObject *__pyx_v_q_basis_vals, PyArrayObject *__pyx_v_w_int_test_grads, PyArrayObject *__pyx_v_w_int_div_free, PyArrayObject *__pyx_v_piola_trial_fun, PyArrayObject *__pyx_v_edgeFlags, PyArrayObject *__pyx_v_BDMmat_element) {
8980 PyObject *__pyx_r = NULL;
8981 __Pyx_RefNannyDeclarations
8982 __Pyx_RefNannySetupContext(
"buildLocalBDM2projectionMatrices", 0);
8991 buildLocalBDM2projectionMatrices(__pyx_v_degree, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_basis_vals)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dS_f)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_int_test_grads)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[1]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_edgeFlags)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dS_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_v)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmat_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_basis_vals)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_int_test_grads)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_int_div_free)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_piola_trial_fun)));
9002 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
9003 __Pyx_XGIVEREF(__pyx_r);
9004 __Pyx_RefNannyFinishContext();
9017static PyObject *__pyx_pw_15cpostprocessing_25factorLocalBDM1projectionMatrices(PyObject *__pyx_self,
9018#
if CYTHON_VECTORCALL
9019PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9021PyObject *__pyx_args, PyObject *__pyx_kwds
9024static PyMethodDef __pyx_mdef_15cpostprocessing_25factorLocalBDM1projectionMatrices = {
"factorLocalBDM1projectionMatrices", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_25factorLocalBDM1projectionMatrices, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
9025static PyObject *__pyx_pw_15cpostprocessing_25factorLocalBDM1projectionMatrices(PyObject *__pyx_self,
9026#
if CYTHON_VECTORCALL
9027PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9029PyObject *__pyx_args, PyObject *__pyx_kwds
9032 PyArrayObject *__pyx_v_BDMmat_element = 0;
9033 PyArrayObject *__pyx_v_BDMmatPivots_element = 0;
9034 #if !CYTHON_VECTORCALL
9035 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
9037 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
9038 PyObject* values[2] = {0,0};
9039 int __pyx_lineno = 0;
9040 const char *__pyx_filename = NULL;
9041 int __pyx_clineno = 0;
9042 PyObject *__pyx_r = 0;
9043 __Pyx_RefNannyDeclarations
9044 __Pyx_RefNannySetupContext(
"factorLocalBDM1projectionMatrices (wrapper)", 0);
9045 #if !CYTHON_VECTORCALL
9046 #if CYTHON_ASSUME_SAFE_SIZE
9047 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
9049 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
9052 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
9054 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_BDMmat_element,&__pyx_mstate_global->__pyx_n_u_BDMmatPivots_element,0};
9055 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
9056 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 350, __pyx_L3_error)
9057 if (__pyx_kwds_len > 0) {
9058 switch (__pyx_nargs) {
9060 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9061 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 350, __pyx_L3_error)
9064 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9065 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 350, __pyx_L3_error)
9068 default:
goto __pyx_L5_argtuple_error;
9070 const Py_ssize_t kwd_pos_args = __pyx_nargs;
9071 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"factorLocalBDM1projectionMatrices", 0) < (0)) __PYX_ERR(0, 350, __pyx_L3_error)
9072 for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
9073 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"factorLocalBDM1projectionMatrices", 1, 2, 2, i); __PYX_ERR(0, 350, __pyx_L3_error) }
9075 }
else if (unlikely(__pyx_nargs != 2)) {
9076 goto __pyx_L5_argtuple_error;
9078 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9079 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 350, __pyx_L3_error)
9080 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9081 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 350, __pyx_L3_error)
9083 __pyx_v_BDMmat_element = ((PyArrayObject *)values[0]);
9084 __pyx_v_BDMmatPivots_element = ((PyArrayObject *)values[1]);
9087 __pyx_L5_argtuple_error:;
9088 __Pyx_RaiseArgtupleInvalid(
"factorLocalBDM1projectionMatrices", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 350, __pyx_L3_error)
9090 goto __pyx_L4_argument_unpacking_done;
9092 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9093 Py_XDECREF(values[__pyx_temp]);
9095 __Pyx_AddTraceback(
"cpostprocessing.factorLocalBDM1projectionMatrices", __pyx_clineno, __pyx_lineno, __pyx_filename);
9096 __Pyx_RefNannyFinishContext();
9098 __pyx_L4_argument_unpacking_done:;
9099 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmat_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmat_element", 0))) __PYX_ERR(0, 350, __pyx_L1_error)
9100 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmatPivots_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmatPivots_element", 0))) __PYX_ERR(0, 351, __pyx_L1_error)
9101 __pyx_r = __pyx_pf_15cpostprocessing_24factorLocalBDM1projectionMatrices(__pyx_self, __pyx_v_BDMmat_element, __pyx_v_BDMmatPivots_element);
9107 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9108 Py_XDECREF(values[__pyx_temp]);
9110 goto __pyx_L7_cleaned_up;
9112 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9113 Py_XDECREF(values[__pyx_temp]);
9115 __pyx_L7_cleaned_up:;
9116 __Pyx_RefNannyFinishContext();
9120static PyObject *__pyx_pf_15cpostprocessing_24factorLocalBDM1projectionMatrices(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element) {
9121 PyObject *__pyx_r = NULL;
9122 __Pyx_RefNannyDeclarations
9123 __Pyx_RefNannySetupContext(
"factorLocalBDM1projectionMatrices", 0);
9132 factorLocalBDM1projectionMatrices((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmat_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmatPivots_element)));
9143 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
9144 __Pyx_XGIVEREF(__pyx_r);
9145 __Pyx_RefNannyFinishContext();
9158static PyObject *__pyx_pw_15cpostprocessing_27factorLocalBDM2projectionMatrices(PyObject *__pyx_self,
9159#
if CYTHON_VECTORCALL
9160PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9162PyObject *__pyx_args, PyObject *__pyx_kwds
9165static PyMethodDef __pyx_mdef_15cpostprocessing_27factorLocalBDM2projectionMatrices = {
"factorLocalBDM2projectionMatrices", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_27factorLocalBDM2projectionMatrices, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
9166static PyObject *__pyx_pw_15cpostprocessing_27factorLocalBDM2projectionMatrices(PyObject *__pyx_self,
9167#
if CYTHON_VECTORCALL
9168PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9170PyObject *__pyx_args, PyObject *__pyx_kwds
9173 PyArrayObject *__pyx_v_BDMmat_element = 0;
9174 PyArrayObject *__pyx_v_BDMmatPivots_element = 0;
9175 #if !CYTHON_VECTORCALL
9176 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
9178 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
9179 PyObject* values[2] = {0,0};
9180 int __pyx_lineno = 0;
9181 const char *__pyx_filename = NULL;
9182 int __pyx_clineno = 0;
9183 PyObject *__pyx_r = 0;
9184 __Pyx_RefNannyDeclarations
9185 __Pyx_RefNannySetupContext(
"factorLocalBDM2projectionMatrices (wrapper)", 0);
9186 #if !CYTHON_VECTORCALL
9187 #if CYTHON_ASSUME_SAFE_SIZE
9188 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
9190 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
9193 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
9195 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_BDMmat_element,&__pyx_mstate_global->__pyx_n_u_BDMmatPivots_element,0};
9196 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
9197 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 357, __pyx_L3_error)
9198 if (__pyx_kwds_len > 0) {
9199 switch (__pyx_nargs) {
9201 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9202 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 357, __pyx_L3_error)
9205 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9206 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 357, __pyx_L3_error)
9209 default:
goto __pyx_L5_argtuple_error;
9211 const Py_ssize_t kwd_pos_args = __pyx_nargs;
9212 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"factorLocalBDM2projectionMatrices", 0) < (0)) __PYX_ERR(0, 357, __pyx_L3_error)
9213 for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
9214 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"factorLocalBDM2projectionMatrices", 1, 2, 2, i); __PYX_ERR(0, 357, __pyx_L3_error) }
9216 }
else if (unlikely(__pyx_nargs != 2)) {
9217 goto __pyx_L5_argtuple_error;
9219 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9220 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 357, __pyx_L3_error)
9221 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9222 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 357, __pyx_L3_error)
9224 __pyx_v_BDMmat_element = ((PyArrayObject *)values[0]);
9225 __pyx_v_BDMmatPivots_element = ((PyArrayObject *)values[1]);
9228 __pyx_L5_argtuple_error:;
9229 __Pyx_RaiseArgtupleInvalid(
"factorLocalBDM2projectionMatrices", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 357, __pyx_L3_error)
9231 goto __pyx_L4_argument_unpacking_done;
9233 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9234 Py_XDECREF(values[__pyx_temp]);
9236 __Pyx_AddTraceback(
"cpostprocessing.factorLocalBDM2projectionMatrices", __pyx_clineno, __pyx_lineno, __pyx_filename);
9237 __Pyx_RefNannyFinishContext();
9239 __pyx_L4_argument_unpacking_done:;
9240 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmat_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmat_element", 0))) __PYX_ERR(0, 357, __pyx_L1_error)
9241 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmatPivots_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmatPivots_element", 0))) __PYX_ERR(0, 358, __pyx_L1_error)
9242 __pyx_r = __pyx_pf_15cpostprocessing_26factorLocalBDM2projectionMatrices(__pyx_self, __pyx_v_BDMmat_element, __pyx_v_BDMmatPivots_element);
9248 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9249 Py_XDECREF(values[__pyx_temp]);
9251 goto __pyx_L7_cleaned_up;
9253 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9254 Py_XDECREF(values[__pyx_temp]);
9256 __pyx_L7_cleaned_up:;
9257 __Pyx_RefNannyFinishContext();
9261static PyObject *__pyx_pf_15cpostprocessing_26factorLocalBDM2projectionMatrices(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element) {
9262 PyObject *__pyx_r = NULL;
9263 __Pyx_RefNannyDeclarations
9264 __Pyx_RefNannySetupContext(
"factorLocalBDM2projectionMatrices", 0);
9273 factorLocalBDM2projectionMatrices((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmat_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmatPivots_element)));
9284 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
9285 __Pyx_XGIVEREF(__pyx_r);
9286 __Pyx_RefNannyFinishContext();
9299static PyObject *__pyx_pw_15cpostprocessing_29solveLocalBDM1projection(PyObject *__pyx_self,
9300#
if CYTHON_VECTORCALL
9301PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9303PyObject *__pyx_args, PyObject *__pyx_kwds
9306static PyMethodDef __pyx_mdef_15cpostprocessing_29solveLocalBDM1projection = {
"solveLocalBDM1projection", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_29solveLocalBDM1projection, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
9307static PyObject *__pyx_pw_15cpostprocessing_29solveLocalBDM1projection(PyObject *__pyx_self,
9308#
if CYTHON_VECTORCALL
9309PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9311PyObject *__pyx_args, PyObject *__pyx_kwds
9314 PyArrayObject *__pyx_v_BDMmat_element = 0;
9315 PyArrayObject *__pyx_v_BDMmatPivots_element = 0;
9316 PyArrayObject *__pyx_v_w_dS_f = 0;
9317 PyArrayObject *__pyx_v_ebq_n = 0;
9318 PyArrayObject *__pyx_v_ebq_velocity = 0;
9319 PyArrayObject *__pyx_v_q_vdofs = 0;
9320 #if !CYTHON_VECTORCALL
9321 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
9323 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
9324 PyObject* values[6] = {0,0,0,0,0,0};
9325 int __pyx_lineno = 0;
9326 const char *__pyx_filename = NULL;
9327 int __pyx_clineno = 0;
9328 PyObject *__pyx_r = 0;
9329 __Pyx_RefNannyDeclarations
9330 __Pyx_RefNannySetupContext(
"solveLocalBDM1projection (wrapper)", 0);
9331 #if !CYTHON_VECTORCALL
9332 #if CYTHON_ASSUME_SAFE_SIZE
9333 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
9335 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
9338 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
9340 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_BDMmat_element,&__pyx_mstate_global->__pyx_n_u_BDMmatPivots_element,&__pyx_mstate_global->__pyx_n_u_w_dS_f,&__pyx_mstate_global->__pyx_n_u_ebq_n,&__pyx_mstate_global->__pyx_n_u_ebq_velocity,&__pyx_mstate_global->__pyx_n_u_q_vdofs,0};
9341 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
9342 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 364, __pyx_L3_error)
9343 if (__pyx_kwds_len > 0) {
9344 switch (__pyx_nargs) {
9346 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
9347 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 364, __pyx_L3_error)
9350 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
9351 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 364, __pyx_L3_error)
9354 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
9355 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 364, __pyx_L3_error)
9358 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
9359 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 364, __pyx_L3_error)
9362 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9363 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 364, __pyx_L3_error)
9366 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9367 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 364, __pyx_L3_error)
9370 default:
goto __pyx_L5_argtuple_error;
9372 const Py_ssize_t kwd_pos_args = __pyx_nargs;
9373 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"solveLocalBDM1projection", 0) < (0)) __PYX_ERR(0, 364, __pyx_L3_error)
9374 for (Py_ssize_t i = __pyx_nargs; i < 6; i++) {
9375 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"solveLocalBDM1projection", 1, 6, 6, i); __PYX_ERR(0, 364, __pyx_L3_error) }
9377 }
else if (unlikely(__pyx_nargs != 6)) {
9378 goto __pyx_L5_argtuple_error;
9380 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9381 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 364, __pyx_L3_error)
9382 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9383 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 364, __pyx_L3_error)
9384 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
9385 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 364, __pyx_L3_error)
9386 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
9387 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 364, __pyx_L3_error)
9388 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
9389 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 364, __pyx_L3_error)
9390 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
9391 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 364, __pyx_L3_error)
9393 __pyx_v_BDMmat_element = ((PyArrayObject *)values[0]);
9394 __pyx_v_BDMmatPivots_element = ((PyArrayObject *)values[1]);
9395 __pyx_v_w_dS_f = ((PyArrayObject *)values[2]);
9396 __pyx_v_ebq_n = ((PyArrayObject *)values[3]);
9397 __pyx_v_ebq_velocity = ((PyArrayObject *)values[4]);
9398 __pyx_v_q_vdofs = ((PyArrayObject *)values[5]);
9401 __pyx_L5_argtuple_error:;
9402 __Pyx_RaiseArgtupleInvalid(
"solveLocalBDM1projection", 1, 6, 6, __pyx_nargs); __PYX_ERR(0, 364, __pyx_L3_error)
9404 goto __pyx_L4_argument_unpacking_done;
9406 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9407 Py_XDECREF(values[__pyx_temp]);
9409 __Pyx_AddTraceback(
"cpostprocessing.solveLocalBDM1projection", __pyx_clineno, __pyx_lineno, __pyx_filename);
9410 __Pyx_RefNannyFinishContext();
9412 __pyx_L4_argument_unpacking_done:;
9413 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmat_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmat_element", 0))) __PYX_ERR(0, 364, __pyx_L1_error)
9414 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmatPivots_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmatPivots_element", 0))) __PYX_ERR(0, 365, __pyx_L1_error)
9415 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dS_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dS_f", 0))) __PYX_ERR(0, 366, __pyx_L1_error)
9416 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_n", 0))) __PYX_ERR(0, 367, __pyx_L1_error)
9417 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_velocity", 0))) __PYX_ERR(0, 368, __pyx_L1_error)
9418 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_vdofs", 0))) __PYX_ERR(0, 369, __pyx_L1_error)
9419 __pyx_r = __pyx_pf_15cpostprocessing_28solveLocalBDM1projection(__pyx_self, __pyx_v_BDMmat_element, __pyx_v_BDMmatPivots_element, __pyx_v_w_dS_f, __pyx_v_ebq_n, __pyx_v_ebq_velocity, __pyx_v_q_vdofs);
9425 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9426 Py_XDECREF(values[__pyx_temp]);
9428 goto __pyx_L7_cleaned_up;
9430 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9431 Py_XDECREF(values[__pyx_temp]);
9433 __pyx_L7_cleaned_up:;
9434 __Pyx_RefNannyFinishContext();
9438static PyObject *__pyx_pf_15cpostprocessing_28solveLocalBDM1projection(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_q_vdofs) {
9439 PyObject *__pyx_r = NULL;
9440 __Pyx_RefNannyDeclarations
9441 __Pyx_RefNannySetupContext(
"solveLocalBDM1projection", 0);
9450 solveLocalBDM1projection((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dS_f)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmat_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmatPivots_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dS_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_velocity)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_vdofs)));
9461 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
9462 __Pyx_XGIVEREF(__pyx_r);
9463 __Pyx_RefNannyFinishContext();
9476static PyObject *__pyx_pw_15cpostprocessing_31solveLocalBDM2projection(PyObject *__pyx_self,
9477#
if CYTHON_VECTORCALL
9478PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9480PyObject *__pyx_args, PyObject *__pyx_kwds
9483static PyMethodDef __pyx_mdef_15cpostprocessing_31solveLocalBDM2projection = {
"solveLocalBDM2projection", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_31solveLocalBDM2projection, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
9484static PyObject *__pyx_pw_15cpostprocessing_31solveLocalBDM2projection(PyObject *__pyx_self,
9485#
if CYTHON_VECTORCALL
9486PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9488PyObject *__pyx_args, PyObject *__pyx_kwds
9491 PyArrayObject *__pyx_v_BDMmat_element = 0;
9492 PyArrayObject *__pyx_v_BDMmatPivots_element = 0;
9493 PyArrayObject *__pyx_v_w_dS_f = 0;
9494 PyArrayObject *__pyx_v_ebq_n = 0;
9495 PyArrayObject *__pyx_v_w_interior_gradients = 0;
9496 PyArrayObject *__pyx_v_ebq_velocity = 0;
9497 PyArrayObject *__pyx_v_q_velocity = 0;
9498 PyArrayObject *__pyx_v_q_vdofs = 0;
9499 #if !CYTHON_VECTORCALL
9500 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
9502 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
9503 PyObject* values[8] = {0,0,0,0,0,0,0,0};
9504 int __pyx_lineno = 0;
9505 const char *__pyx_filename = NULL;
9506 int __pyx_clineno = 0;
9507 PyObject *__pyx_r = 0;
9508 __Pyx_RefNannyDeclarations
9509 __Pyx_RefNannySetupContext(
"solveLocalBDM2projection (wrapper)", 0);
9510 #if !CYTHON_VECTORCALL
9511 #if CYTHON_ASSUME_SAFE_SIZE
9512 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
9514 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
9517 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
9519 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_BDMmat_element,&__pyx_mstate_global->__pyx_n_u_BDMmatPivots_element,&__pyx_mstate_global->__pyx_n_u_w_dS_f,&__pyx_mstate_global->__pyx_n_u_ebq_n,&__pyx_mstate_global->__pyx_n_u_w_interior_gradients,&__pyx_mstate_global->__pyx_n_u_ebq_velocity,&__pyx_mstate_global->__pyx_n_u_q_velocity,&__pyx_mstate_global->__pyx_n_u_q_vdofs,0};
9520 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
9521 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 383, __pyx_L3_error)
9522 if (__pyx_kwds_len > 0) {
9523 switch (__pyx_nargs) {
9525 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
9526 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 383, __pyx_L3_error)
9529 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
9530 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 383, __pyx_L3_error)
9533 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
9534 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 383, __pyx_L3_error)
9537 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
9538 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 383, __pyx_L3_error)
9541 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
9542 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 383, __pyx_L3_error)
9545 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
9546 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 383, __pyx_L3_error)
9549 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9550 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 383, __pyx_L3_error)
9553 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9554 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 383, __pyx_L3_error)
9557 default:
goto __pyx_L5_argtuple_error;
9559 const Py_ssize_t kwd_pos_args = __pyx_nargs;
9560 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"solveLocalBDM2projection", 0) < (0)) __PYX_ERR(0, 383, __pyx_L3_error)
9561 for (Py_ssize_t i = __pyx_nargs; i < 8; i++) {
9562 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"solveLocalBDM2projection", 1, 8, 8, i); __PYX_ERR(0, 383, __pyx_L3_error) }
9564 }
else if (unlikely(__pyx_nargs != 8)) {
9565 goto __pyx_L5_argtuple_error;
9567 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9568 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 383, __pyx_L3_error)
9569 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9570 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 383, __pyx_L3_error)
9571 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
9572 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 383, __pyx_L3_error)
9573 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
9574 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 383, __pyx_L3_error)
9575 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
9576 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 383, __pyx_L3_error)
9577 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
9578 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 383, __pyx_L3_error)
9579 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
9580 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 383, __pyx_L3_error)
9581 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
9582 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 383, __pyx_L3_error)
9584 __pyx_v_BDMmat_element = ((PyArrayObject *)values[0]);
9585 __pyx_v_BDMmatPivots_element = ((PyArrayObject *)values[1]);
9586 __pyx_v_w_dS_f = ((PyArrayObject *)values[2]);
9587 __pyx_v_ebq_n = ((PyArrayObject *)values[3]);
9588 __pyx_v_w_interior_gradients = ((PyArrayObject *)values[4]);
9589 __pyx_v_ebq_velocity = ((PyArrayObject *)values[5]);
9590 __pyx_v_q_velocity = ((PyArrayObject *)values[6]);
9591 __pyx_v_q_vdofs = ((PyArrayObject *)values[7]);
9594 __pyx_L5_argtuple_error:;
9595 __Pyx_RaiseArgtupleInvalid(
"solveLocalBDM2projection", 1, 8, 8, __pyx_nargs); __PYX_ERR(0, 383, __pyx_L3_error)
9597 goto __pyx_L4_argument_unpacking_done;
9599 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9600 Py_XDECREF(values[__pyx_temp]);
9602 __Pyx_AddTraceback(
"cpostprocessing.solveLocalBDM2projection", __pyx_clineno, __pyx_lineno, __pyx_filename);
9603 __Pyx_RefNannyFinishContext();
9605 __pyx_L4_argument_unpacking_done:;
9606 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmat_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmat_element", 0))) __PYX_ERR(0, 383, __pyx_L1_error)
9607 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmatPivots_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmatPivots_element", 0))) __PYX_ERR(0, 384, __pyx_L1_error)
9608 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dS_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dS_f", 0))) __PYX_ERR(0, 385, __pyx_L1_error)
9609 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_n", 0))) __PYX_ERR(0, 386, __pyx_L1_error)
9610 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_interior_gradients), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_interior_gradients", 0))) __PYX_ERR(0, 387, __pyx_L1_error)
9611 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_velocity", 0))) __PYX_ERR(0, 388, __pyx_L1_error)
9612 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_velocity", 0))) __PYX_ERR(0, 389, __pyx_L1_error)
9613 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_vdofs", 0))) __PYX_ERR(0, 390, __pyx_L1_error)
9614 __pyx_r = __pyx_pf_15cpostprocessing_30solveLocalBDM2projection(__pyx_self, __pyx_v_BDMmat_element, __pyx_v_BDMmatPivots_element, __pyx_v_w_dS_f, __pyx_v_ebq_n, __pyx_v_w_interior_gradients, __pyx_v_ebq_velocity, __pyx_v_q_velocity, __pyx_v_q_vdofs);
9620 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9621 Py_XDECREF(values[__pyx_temp]);
9623 goto __pyx_L7_cleaned_up;
9625 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9626 Py_XDECREF(values[__pyx_temp]);
9628 __pyx_L7_cleaned_up:;
9629 __Pyx_RefNannyFinishContext();
9633static PyObject *__pyx_pf_15cpostprocessing_30solveLocalBDM2projection(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_w_interior_gradients, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_q_velocity, PyArrayObject *__pyx_v_q_vdofs) {
9634 PyObject *__pyx_r = NULL;
9635 __Pyx_RefNannyDeclarations
9636 __Pyx_RefNannySetupContext(
"solveLocalBDM2projection", 0);
9645 solveLocalBDM2projection((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dS_f)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmat_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmatPivots_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dS_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_interior_gradients)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_velocity)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_velocity)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_vdofs)));
9656 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
9657 __Pyx_XGIVEREF(__pyx_r);
9658 __Pyx_RefNannyFinishContext();
9671static PyObject *__pyx_pw_15cpostprocessing_33buildBDM2rhs(PyObject *__pyx_self,
9672#
if CYTHON_VECTORCALL
9673PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9675PyObject *__pyx_args, PyObject *__pyx_kwds
9678static PyMethodDef __pyx_mdef_15cpostprocessing_33buildBDM2rhs = {
"buildBDM2rhs", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_33buildBDM2rhs, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
9679static PyObject *__pyx_pw_15cpostprocessing_33buildBDM2rhs(PyObject *__pyx_self,
9680#
if CYTHON_VECTORCALL
9681PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9683PyObject *__pyx_args, PyObject *__pyx_kwds
9686 PyArrayObject *__pyx_v_BDMmat_element = 0;
9687 PyArrayObject *__pyx_v_BDMmatPivots_element = 0;
9688 PyArrayObject *__pyx_v_w_dS_f = 0;
9689 PyArrayObject *__pyx_v_ebq_n = 0;
9690 PyArrayObject *__pyx_v_w_interior_gradients = 0;
9691 PyArrayObject *__pyx_v_w_interior_divfree = 0;
9692 PyArrayObject *__pyx_v_ebq_velocity = 0;
9693 PyArrayObject *__pyx_v_q_velocity = 0;
9694 PyArrayObject *__pyx_v_q_vdofs = 0;
9695 PyArrayObject *__pyx_v_edgeFlags = 0;
9696 #if !CYTHON_VECTORCALL
9697 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
9699 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
9700 PyObject* values[10] = {0,0,0,0,0,0,0,0,0,0};
9701 int __pyx_lineno = 0;
9702 const char *__pyx_filename = NULL;
9703 int __pyx_clineno = 0;
9704 PyObject *__pyx_r = 0;
9705 __Pyx_RefNannyDeclarations
9706 __Pyx_RefNannySetupContext(
"buildBDM2rhs (wrapper)", 0);
9707 #if !CYTHON_VECTORCALL
9708 #if CYTHON_ASSUME_SAFE_SIZE
9709 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
9711 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
9714 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
9716 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_BDMmat_element,&__pyx_mstate_global->__pyx_n_u_BDMmatPivots_element,&__pyx_mstate_global->__pyx_n_u_w_dS_f,&__pyx_mstate_global->__pyx_n_u_ebq_n,&__pyx_mstate_global->__pyx_n_u_w_interior_gradients,&__pyx_mstate_global->__pyx_n_u_w_interior_divfree,&__pyx_mstate_global->__pyx_n_u_ebq_velocity,&__pyx_mstate_global->__pyx_n_u_q_velocity,&__pyx_mstate_global->__pyx_n_u_q_vdofs,&__pyx_mstate_global->__pyx_n_u_edgeFlags,0};
9717 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
9718 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 406, __pyx_L3_error)
9719 if (__pyx_kwds_len > 0) {
9720 switch (__pyx_nargs) {
9722 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
9723 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 406, __pyx_L3_error)
9726 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
9727 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 406, __pyx_L3_error)
9730 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
9731 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 406, __pyx_L3_error)
9734 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
9735 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 406, __pyx_L3_error)
9738 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
9739 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 406, __pyx_L3_error)
9742 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
9743 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 406, __pyx_L3_error)
9746 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
9747 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 406, __pyx_L3_error)
9750 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
9751 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 406, __pyx_L3_error)
9754 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9755 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 406, __pyx_L3_error)
9758 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9759 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 406, __pyx_L3_error)
9762 default:
goto __pyx_L5_argtuple_error;
9764 const Py_ssize_t kwd_pos_args = __pyx_nargs;
9765 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"buildBDM2rhs", 0) < (0)) __PYX_ERR(0, 406, __pyx_L3_error)
9766 for (Py_ssize_t i = __pyx_nargs; i < 10; i++) {
9767 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"buildBDM2rhs", 1, 10, 10, i); __PYX_ERR(0, 406, __pyx_L3_error) }
9769 }
else if (unlikely(__pyx_nargs != 10)) {
9770 goto __pyx_L5_argtuple_error;
9772 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9773 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 406, __pyx_L3_error)
9774 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9775 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 406, __pyx_L3_error)
9776 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
9777 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 406, __pyx_L3_error)
9778 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
9779 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 406, __pyx_L3_error)
9780 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
9781 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 406, __pyx_L3_error)
9782 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
9783 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 406, __pyx_L3_error)
9784 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
9785 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 406, __pyx_L3_error)
9786 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
9787 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 406, __pyx_L3_error)
9788 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
9789 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 406, __pyx_L3_error)
9790 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
9791 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 406, __pyx_L3_error)
9793 __pyx_v_BDMmat_element = ((PyArrayObject *)values[0]);
9794 __pyx_v_BDMmatPivots_element = ((PyArrayObject *)values[1]);
9795 __pyx_v_w_dS_f = ((PyArrayObject *)values[2]);
9796 __pyx_v_ebq_n = ((PyArrayObject *)values[3]);
9797 __pyx_v_w_interior_gradients = ((PyArrayObject *)values[4]);
9798 __pyx_v_w_interior_divfree = ((PyArrayObject *)values[5]);
9799 __pyx_v_ebq_velocity = ((PyArrayObject *)values[6]);
9800 __pyx_v_q_velocity = ((PyArrayObject *)values[7]);
9801 __pyx_v_q_vdofs = ((PyArrayObject *)values[8]);
9802 __pyx_v_edgeFlags = ((PyArrayObject *)values[9]);
9805 __pyx_L5_argtuple_error:;
9806 __Pyx_RaiseArgtupleInvalid(
"buildBDM2rhs", 1, 10, 10, __pyx_nargs); __PYX_ERR(0, 406, __pyx_L3_error)
9808 goto __pyx_L4_argument_unpacking_done;
9810 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9811 Py_XDECREF(values[__pyx_temp]);
9813 __Pyx_AddTraceback(
"cpostprocessing.buildBDM2rhs", __pyx_clineno, __pyx_lineno, __pyx_filename);
9814 __Pyx_RefNannyFinishContext();
9816 __pyx_L4_argument_unpacking_done:;
9817 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmat_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmat_element", 0))) __PYX_ERR(0, 406, __pyx_L1_error)
9818 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmatPivots_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmatPivots_element", 0))) __PYX_ERR(0, 407, __pyx_L1_error)
9819 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dS_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dS_f", 0))) __PYX_ERR(0, 408, __pyx_L1_error)
9820 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_n", 0))) __PYX_ERR(0, 409, __pyx_L1_error)
9821 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_interior_gradients), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_interior_gradients", 0))) __PYX_ERR(0, 410, __pyx_L1_error)
9822 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_interior_divfree), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_interior_divfree", 0))) __PYX_ERR(0, 411, __pyx_L1_error)
9823 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_velocity", 0))) __PYX_ERR(0, 412, __pyx_L1_error)
9824 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_velocity", 0))) __PYX_ERR(0, 413, __pyx_L1_error)
9825 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_vdofs", 0))) __PYX_ERR(0, 414, __pyx_L1_error)
9826 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_edgeFlags), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"edgeFlags", 0))) __PYX_ERR(0, 415, __pyx_L1_error)
9827 __pyx_r = __pyx_pf_15cpostprocessing_32buildBDM2rhs(__pyx_self, __pyx_v_BDMmat_element, __pyx_v_BDMmatPivots_element, __pyx_v_w_dS_f, __pyx_v_ebq_n, __pyx_v_w_interior_gradients, __pyx_v_w_interior_divfree, __pyx_v_ebq_velocity, __pyx_v_q_velocity, __pyx_v_q_vdofs, __pyx_v_edgeFlags);
9833 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9834 Py_XDECREF(values[__pyx_temp]);
9836 goto __pyx_L7_cleaned_up;
9838 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
9839 Py_XDECREF(values[__pyx_temp]);
9841 __pyx_L7_cleaned_up:;
9842 __Pyx_RefNannyFinishContext();
9846static PyObject *__pyx_pf_15cpostprocessing_32buildBDM2rhs(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_n, PyArrayObject *__pyx_v_w_interior_gradients, PyArrayObject *__pyx_v_w_interior_divfree, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_q_velocity, PyArrayObject *__pyx_v_q_vdofs, PyArrayObject *__pyx_v_edgeFlags) {
9847 PyObject *__pyx_r = NULL;
9848 __Pyx_RefNannyDeclarations
9849 __Pyx_RefNannySetupContext(
"buildBDM2rhs", 0);
9858 buildBDM2rhs((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_n)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dS_f)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_interior_gradients)[2]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmat_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmatPivots_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_edgeFlags)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dS_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_interior_gradients)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_interior_divfree)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_velocity)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_velocity)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_vdofs)));
9869 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
9870 __Pyx_XGIVEREF(__pyx_r);
9871 __Pyx_RefNannyFinishContext();
9884static PyObject *__pyx_pw_15cpostprocessing_35solveLocalBDM1projectionFromFlux(PyObject *__pyx_self,
9885#
if CYTHON_VECTORCALL
9886PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9888PyObject *__pyx_args, PyObject *__pyx_kwds
9891static PyMethodDef __pyx_mdef_15cpostprocessing_35solveLocalBDM1projectionFromFlux = {
"solveLocalBDM1projectionFromFlux", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_35solveLocalBDM1projectionFromFlux, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
9892static PyObject *__pyx_pw_15cpostprocessing_35solveLocalBDM1projectionFromFlux(PyObject *__pyx_self,
9893#
if CYTHON_VECTORCALL
9894PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
9896PyObject *__pyx_args, PyObject *__pyx_kwds
9899 PyArrayObject *__pyx_v_BDMmat_element = 0;
9900 PyArrayObject *__pyx_v_BDMmatPivots_element = 0;
9901 PyArrayObject *__pyx_v_elementBoundaryElementsArray = 0;
9902 PyArrayObject *__pyx_v_elementBoundariesArray = 0;
9903 PyArrayObject *__pyx_v_w_dS_f = 0;
9904 PyArrayObject *__pyx_v_ebq_global_flux = 0;
9905 PyArrayObject *__pyx_v_q_vdofs = 0;
9906 #if !CYTHON_VECTORCALL
9907 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
9909 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
9910 PyObject* values[7] = {0,0,0,0,0,0,0};
9911 int __pyx_lineno = 0;
9912 const char *__pyx_filename = NULL;
9913 int __pyx_clineno = 0;
9914 PyObject *__pyx_r = 0;
9915 __Pyx_RefNannyDeclarations
9916 __Pyx_RefNannySetupContext(
"solveLocalBDM1projectionFromFlux (wrapper)", 0);
9917 #if !CYTHON_VECTORCALL
9918 #if CYTHON_ASSUME_SAFE_SIZE
9919 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
9921 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
9924 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
9926 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_BDMmat_element,&__pyx_mstate_global->__pyx_n_u_BDMmatPivots_element,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElementsArray,&__pyx_mstate_global->__pyx_n_u_elementBoundariesArray,&__pyx_mstate_global->__pyx_n_u_w_dS_f,&__pyx_mstate_global->__pyx_n_u_ebq_global_flux,&__pyx_mstate_global->__pyx_n_u_q_vdofs,0};
9927 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
9928 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 435, __pyx_L3_error)
9929 if (__pyx_kwds_len > 0) {
9930 switch (__pyx_nargs) {
9932 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
9933 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 435, __pyx_L3_error)
9936 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
9937 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 435, __pyx_L3_error)
9940 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
9941 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 435, __pyx_L3_error)
9944 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
9945 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 435, __pyx_L3_error)
9948 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
9949 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 435, __pyx_L3_error)
9952 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9953 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 435, __pyx_L3_error)
9956 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9957 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 435, __pyx_L3_error)
9960 default:
goto __pyx_L5_argtuple_error;
9962 const Py_ssize_t kwd_pos_args = __pyx_nargs;
9963 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"solveLocalBDM1projectionFromFlux", 0) < (0)) __PYX_ERR(0, 435, __pyx_L3_error)
9964 for (Py_ssize_t i = __pyx_nargs; i < 7; i++) {
9965 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"solveLocalBDM1projectionFromFlux", 1, 7, 7, i); __PYX_ERR(0, 435, __pyx_L3_error) }
9967 }
else if (unlikely(__pyx_nargs != 7)) {
9968 goto __pyx_L5_argtuple_error;
9970 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
9971 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 435, __pyx_L3_error)
9972 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
9973 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 435, __pyx_L3_error)
9974 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
9975 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 435, __pyx_L3_error)
9976 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
9977 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 435, __pyx_L3_error)
9978 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
9979 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 435, __pyx_L3_error)
9980 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
9981 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 435, __pyx_L3_error)
9982 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
9983 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 435, __pyx_L3_error)
9985 __pyx_v_BDMmat_element = ((PyArrayObject *)values[0]);
9986 __pyx_v_BDMmatPivots_element = ((PyArrayObject *)values[1]);
9987 __pyx_v_elementBoundaryElementsArray = ((PyArrayObject *)values[2]);
9988 __pyx_v_elementBoundariesArray = ((PyArrayObject *)values[3]);
9989 __pyx_v_w_dS_f = ((PyArrayObject *)values[4]);
9990 __pyx_v_ebq_global_flux = ((PyArrayObject *)values[5]);
9991 __pyx_v_q_vdofs = ((PyArrayObject *)values[6]);
9994 __pyx_L5_argtuple_error:;
9995 __Pyx_RaiseArgtupleInvalid(
"solveLocalBDM1projectionFromFlux", 1, 7, 7, __pyx_nargs); __PYX_ERR(0, 435, __pyx_L3_error)
9997 goto __pyx_L4_argument_unpacking_done;
9999 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10000 Py_XDECREF(values[__pyx_temp]);
10002 __Pyx_AddTraceback(
"cpostprocessing.solveLocalBDM1projectionFromFlux", __pyx_clineno, __pyx_lineno, __pyx_filename);
10003 __Pyx_RefNannyFinishContext();
10005 __pyx_L4_argument_unpacking_done:;
10006 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmat_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmat_element", 0))) __PYX_ERR(0, 435, __pyx_L1_error)
10007 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_BDMmatPivots_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"BDMmatPivots_element", 0))) __PYX_ERR(0, 436, __pyx_L1_error)
10008 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElementsArray", 0))) __PYX_ERR(0, 437, __pyx_L1_error)
10009 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundariesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundariesArray", 0))) __PYX_ERR(0, 438, __pyx_L1_error)
10010 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w_dS_f), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w_dS_f", 0))) __PYX_ERR(0, 439, __pyx_L1_error)
10011 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_global_flux), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_global_flux", 0))) __PYX_ERR(0, 440, __pyx_L1_error)
10012 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_vdofs", 0))) __PYX_ERR(0, 441, __pyx_L1_error)
10013 __pyx_r = __pyx_pf_15cpostprocessing_34solveLocalBDM1projectionFromFlux(__pyx_self, __pyx_v_BDMmat_element, __pyx_v_BDMmatPivots_element, __pyx_v_elementBoundaryElementsArray, __pyx_v_elementBoundariesArray, __pyx_v_w_dS_f, __pyx_v_ebq_global_flux, __pyx_v_q_vdofs);
10019 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10020 Py_XDECREF(values[__pyx_temp]);
10022 goto __pyx_L7_cleaned_up;
10024 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10025 Py_XDECREF(values[__pyx_temp]);
10027 __pyx_L7_cleaned_up:;
10028 __Pyx_RefNannyFinishContext();
10032static PyObject *__pyx_pf_15cpostprocessing_34solveLocalBDM1projectionFromFlux(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_BDMmat_element, PyArrayObject *__pyx_v_BDMmatPivots_element, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_elementBoundariesArray, PyArrayObject *__pyx_v_w_dS_f, PyArrayObject *__pyx_v_ebq_global_flux, PyArrayObject *__pyx_v_q_vdofs) {
10033 PyObject *__pyx_r = NULL;
10034 __Pyx_RefNannyDeclarations
10035 __Pyx_RefNannySetupContext(
"solveLocalBDM1projectionFromFlux", 0);
10044 solveLocalBDM1projectionFromFlux((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dS_f)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dS_f)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dS_f)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w_dS_f)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_BDMmat_element)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmat_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_BDMmatPivots_element)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElementsArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundariesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w_dS_f)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_global_flux)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_vdofs)));
10055 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
10056 __Pyx_XGIVEREF(__pyx_r);
10057 __Pyx_RefNannyFinishContext();
10070static PyObject *__pyx_pw_15cpostprocessing_37getElementBDM1velocityValuesLagrangeRep(PyObject *__pyx_self,
10071#
if CYTHON_VECTORCALL
10072PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
10074PyObject *__pyx_args, PyObject *__pyx_kwds
10077static PyMethodDef __pyx_mdef_15cpostprocessing_37getElementBDM1velocityValuesLagrangeRep = {
"getElementBDM1velocityValuesLagrangeRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_37getElementBDM1velocityValuesLagrangeRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
10078static PyObject *__pyx_pw_15cpostprocessing_37getElementBDM1velocityValuesLagrangeRep(PyObject *__pyx_self,
10079#
if CYTHON_VECTORCALL
10080PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
10082PyObject *__pyx_args, PyObject *__pyx_kwds
10085 PyArrayObject *__pyx_v_q_v = 0;
10086 PyArrayObject *__pyx_v_p1_vdofs = 0;
10087 PyArrayObject *__pyx_v_q_velocity = 0;
10088 #if !CYTHON_VECTORCALL
10089 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
10091 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
10092 PyObject* values[3] = {0,0,0};
10093 int __pyx_lineno = 0;
10094 const char *__pyx_filename = NULL;
10095 int __pyx_clineno = 0;
10096 PyObject *__pyx_r = 0;
10097 __Pyx_RefNannyDeclarations
10098 __Pyx_RefNannySetupContext(
"getElementBDM1velocityValuesLagrangeRep (wrapper)", 0);
10099 #if !CYTHON_VECTORCALL
10100 #if CYTHON_ASSUME_SAFE_SIZE
10101 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
10103 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
10106 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
10108 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_q_v,&__pyx_mstate_global->__pyx_n_u_p1_vdofs,&__pyx_mstate_global->__pyx_n_u_q_velocity,0};
10109 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
10110 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 455, __pyx_L3_error)
10111 if (__pyx_kwds_len > 0) {
10112 switch (__pyx_nargs) {
10114 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
10115 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 455, __pyx_L3_error)
10116 CYTHON_FALLTHROUGH;
10118 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
10119 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 455, __pyx_L3_error)
10120 CYTHON_FALLTHROUGH;
10122 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
10123 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 455, __pyx_L3_error)
10124 CYTHON_FALLTHROUGH;
10126 default:
goto __pyx_L5_argtuple_error;
10128 const Py_ssize_t kwd_pos_args = __pyx_nargs;
10129 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getElementBDM1velocityValuesLagrangeRep", 0) < (0)) __PYX_ERR(0, 455, __pyx_L3_error)
10130 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
10131 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getElementBDM1velocityValuesLagrangeRep", 1, 3, 3, i); __PYX_ERR(0, 455, __pyx_L3_error) }
10133 }
else if (unlikely(__pyx_nargs != 3)) {
10134 goto __pyx_L5_argtuple_error;
10136 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
10137 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 455, __pyx_L3_error)
10138 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
10139 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 455, __pyx_L3_error)
10140 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
10141 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 455, __pyx_L3_error)
10143 __pyx_v_q_v = ((PyArrayObject *)values[0]);
10144 __pyx_v_p1_vdofs = ((PyArrayObject *)values[1]);
10145 __pyx_v_q_velocity = ((PyArrayObject *)values[2]);
10147 goto __pyx_L6_skip;
10148 __pyx_L5_argtuple_error:;
10149 __Pyx_RaiseArgtupleInvalid(
"getElementBDM1velocityValuesLagrangeRep", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 455, __pyx_L3_error)
10151 goto __pyx_L4_argument_unpacking_done;
10153 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10154 Py_XDECREF(values[__pyx_temp]);
10156 __Pyx_AddTraceback(
"cpostprocessing.getElementBDM1velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
10157 __Pyx_RefNannyFinishContext();
10159 __pyx_L4_argument_unpacking_done:;
10160 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_v), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_v", 0))) __PYX_ERR(0, 455, __pyx_L1_error)
10161 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_p1_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"p1_vdofs", 0))) __PYX_ERR(0, 456, __pyx_L1_error)
10162 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_velocity", 0))) __PYX_ERR(0, 457, __pyx_L1_error)
10163 __pyx_r = __pyx_pf_15cpostprocessing_36getElementBDM1velocityValuesLagrangeRep(__pyx_self, __pyx_v_q_v, __pyx_v_p1_vdofs, __pyx_v_q_velocity);
10169 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10170 Py_XDECREF(values[__pyx_temp]);
10172 goto __pyx_L7_cleaned_up;
10174 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10175 Py_XDECREF(values[__pyx_temp]);
10177 __pyx_L7_cleaned_up:;
10178 __Pyx_RefNannyFinishContext();
10182static PyObject *__pyx_pf_15cpostprocessing_36getElementBDM1velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_q_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_q_velocity) {
10183 int __pyx_v_nVDOFs_element;
10184 PyObject *__pyx_r = NULL;
10185 __Pyx_RefNannyDeclarations
10187 int __pyx_lineno = 0;
10188 const char *__pyx_filename = NULL;
10189 int __pyx_clineno = 0;
10190 __Pyx_RefNannySetupContext(
"getElementBDM1velocityValuesLagrangeRep", 0);
10199 __pyx_v_nVDOFs_element = ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[2]) * ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[2]) + 1));
10208 __pyx_t_1 = (__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_p1_vdofs) > 1);
10220 #ifndef CYTHON_WITHOUT_ASSERTIONS
10221 if (unlikely(__pyx_assertions_enabled())) {
10222 __pyx_t_1 = (__pyx_v_nVDOFs_element == (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_p1_vdofs)[1]));
10224 if (unlikely(!__pyx_t_1)) {
10225 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_AssertionError))), 0, 0, 0);
10226 __PYX_ERR(0, 461, __pyx_L1_error)
10231 if ((1));
else __PYX_ERR(0, 461, __pyx_L1_error)
10250 getElementBDM1velocityValuesLagrangeRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_v)[2]), __pyx_v_nVDOFs_element, ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_v)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_p1_vdofs)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_velocity)));
10261 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
10264 __Pyx_AddTraceback(
"cpostprocessing.getElementBDM1velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
10268 __Pyx_XGIVEREF(__pyx_r);
10269 __Pyx_RefNannyFinishContext();
10282static PyObject *__pyx_pw_15cpostprocessing_39getElementBDM2velocityValuesLagrangeRep(PyObject *__pyx_self,
10283#
if CYTHON_VECTORCALL
10284PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
10286PyObject *__pyx_args, PyObject *__pyx_kwds
10289static PyMethodDef __pyx_mdef_15cpostprocessing_39getElementBDM2velocityValuesLagrangeRep = {
"getElementBDM2velocityValuesLagrangeRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_39getElementBDM2velocityValuesLagrangeRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
10290static PyObject *__pyx_pw_15cpostprocessing_39getElementBDM2velocityValuesLagrangeRep(PyObject *__pyx_self,
10291#
if CYTHON_VECTORCALL
10292PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
10294PyObject *__pyx_args, PyObject *__pyx_kwds
10297 PyArrayObject *__pyx_v_q_v = 0;
10298 PyArrayObject *__pyx_v_p1_vdofs = 0;
10299 PyArrayObject *__pyx_v_q_velocity = 0;
10300 #if !CYTHON_VECTORCALL
10301 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
10303 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
10304 PyObject* values[3] = {0,0,0};
10305 int __pyx_lineno = 0;
10306 const char *__pyx_filename = NULL;
10307 int __pyx_clineno = 0;
10308 PyObject *__pyx_r = 0;
10309 __Pyx_RefNannyDeclarations
10310 __Pyx_RefNannySetupContext(
"getElementBDM2velocityValuesLagrangeRep (wrapper)", 0);
10311 #if !CYTHON_VECTORCALL
10312 #if CYTHON_ASSUME_SAFE_SIZE
10313 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
10315 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
10318 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
10320 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_q_v,&__pyx_mstate_global->__pyx_n_u_p1_vdofs,&__pyx_mstate_global->__pyx_n_u_q_velocity,0};
10321 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
10322 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 471, __pyx_L3_error)
10323 if (__pyx_kwds_len > 0) {
10324 switch (__pyx_nargs) {
10326 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
10327 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 471, __pyx_L3_error)
10328 CYTHON_FALLTHROUGH;
10330 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
10331 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 471, __pyx_L3_error)
10332 CYTHON_FALLTHROUGH;
10334 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
10335 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 471, __pyx_L3_error)
10336 CYTHON_FALLTHROUGH;
10338 default:
goto __pyx_L5_argtuple_error;
10340 const Py_ssize_t kwd_pos_args = __pyx_nargs;
10341 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getElementBDM2velocityValuesLagrangeRep", 0) < (0)) __PYX_ERR(0, 471, __pyx_L3_error)
10342 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
10343 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getElementBDM2velocityValuesLagrangeRep", 1, 3, 3, i); __PYX_ERR(0, 471, __pyx_L3_error) }
10345 }
else if (unlikely(__pyx_nargs != 3)) {
10346 goto __pyx_L5_argtuple_error;
10348 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
10349 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 471, __pyx_L3_error)
10350 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
10351 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 471, __pyx_L3_error)
10352 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
10353 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 471, __pyx_L3_error)
10355 __pyx_v_q_v = ((PyArrayObject *)values[0]);
10356 __pyx_v_p1_vdofs = ((PyArrayObject *)values[1]);
10357 __pyx_v_q_velocity = ((PyArrayObject *)values[2]);
10359 goto __pyx_L6_skip;
10360 __pyx_L5_argtuple_error:;
10361 __Pyx_RaiseArgtupleInvalid(
"getElementBDM2velocityValuesLagrangeRep", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 471, __pyx_L3_error)
10363 goto __pyx_L4_argument_unpacking_done;
10365 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10366 Py_XDECREF(values[__pyx_temp]);
10368 __Pyx_AddTraceback(
"cpostprocessing.getElementBDM2velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
10369 __Pyx_RefNannyFinishContext();
10371 __pyx_L4_argument_unpacking_done:;
10372 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_v), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_v", 0))) __PYX_ERR(0, 471, __pyx_L1_error)
10373 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_p1_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"p1_vdofs", 0))) __PYX_ERR(0, 472, __pyx_L1_error)
10374 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_velocity", 0))) __PYX_ERR(0, 473, __pyx_L1_error)
10375 __pyx_r = __pyx_pf_15cpostprocessing_38getElementBDM2velocityValuesLagrangeRep(__pyx_self, __pyx_v_q_v, __pyx_v_p1_vdofs, __pyx_v_q_velocity);
10381 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10382 Py_XDECREF(values[__pyx_temp]);
10384 goto __pyx_L7_cleaned_up;
10386 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10387 Py_XDECREF(values[__pyx_temp]);
10389 __pyx_L7_cleaned_up:;
10390 __Pyx_RefNannyFinishContext();
10394static PyObject *__pyx_pf_15cpostprocessing_38getElementBDM2velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_q_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_q_velocity) {
10395 long __pyx_v_nVDOFs_element;
10396 PyObject *__pyx_r = NULL;
10397 __Pyx_RefNannyDeclarations
10399 int __pyx_lineno = 0;
10400 const char *__pyx_filename = NULL;
10401 int __pyx_clineno = 0;
10402 __Pyx_RefNannySetupContext(
"getElementBDM2velocityValuesLagrangeRep", 0);
10411 __pyx_t_1 = ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[2]) == 2);
10423 __pyx_v_nVDOFs_element = 12;
10442 __pyx_t_1 = ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[2]) == 3);
10454 __pyx_v_nVDOFs_element = 30;
10473 __pyx_t_1 = (__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_p1_vdofs) > 1);
10485 #ifndef CYTHON_WITHOUT_ASSERTIONS
10486 if (unlikely(__pyx_assertions_enabled())) {
10487 __pyx_t_1 = (__pyx_v_nVDOFs_element == (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_p1_vdofs)[1]));
10489 if (unlikely(!__pyx_t_1)) {
10490 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_AssertionError))), 0, 0, 0);
10491 __PYX_ERR(0, 482, __pyx_L1_error)
10496 if ((1));
else __PYX_ERR(0, 482, __pyx_L1_error)
10515 getElementBDM2velocityValuesLagrangeRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_v)[2]), __pyx_v_nVDOFs_element, ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_v)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_p1_vdofs)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_velocity)));
10526 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
10529 __Pyx_AddTraceback(
"cpostprocessing.getElementBDM2velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
10533 __Pyx_XGIVEREF(__pyx_r);
10534 __Pyx_RefNannyFinishContext();
10547static PyObject *__pyx_pw_15cpostprocessing_41getElementLDGvelocityValuesLagrangeRep(PyObject *__pyx_self,
10548#
if CYTHON_VECTORCALL
10549PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
10551PyObject *__pyx_args, PyObject *__pyx_kwds
10554static PyMethodDef __pyx_mdef_15cpostprocessing_41getElementLDGvelocityValuesLagrangeRep = {
"getElementLDGvelocityValuesLagrangeRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_41getElementLDGvelocityValuesLagrangeRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
10555static PyObject *__pyx_pw_15cpostprocessing_41getElementLDGvelocityValuesLagrangeRep(PyObject *__pyx_self,
10556#
if CYTHON_VECTORCALL
10557PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
10559PyObject *__pyx_args, PyObject *__pyx_kwds
10562 PyArrayObject *__pyx_v_q_v = 0;
10563 PyArrayObject *__pyx_v_vdofs = 0;
10564 PyArrayObject *__pyx_v_q_velocity = 0;
10565 #if !CYTHON_VECTORCALL
10566 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
10568 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
10569 PyObject* values[3] = {0,0,0};
10570 int __pyx_lineno = 0;
10571 const char *__pyx_filename = NULL;
10572 int __pyx_clineno = 0;
10573 PyObject *__pyx_r = 0;
10574 __Pyx_RefNannyDeclarations
10575 __Pyx_RefNannySetupContext(
"getElementLDGvelocityValuesLagrangeRep (wrapper)", 0);
10576 #if !CYTHON_VECTORCALL
10577 #if CYTHON_ASSUME_SAFE_SIZE
10578 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
10580 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
10583 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
10585 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_q_v,&__pyx_mstate_global->__pyx_n_u_vdofs,&__pyx_mstate_global->__pyx_n_u_q_velocity,0};
10586 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
10587 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 493, __pyx_L3_error)
10588 if (__pyx_kwds_len > 0) {
10589 switch (__pyx_nargs) {
10591 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
10592 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 493, __pyx_L3_error)
10593 CYTHON_FALLTHROUGH;
10595 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
10596 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 493, __pyx_L3_error)
10597 CYTHON_FALLTHROUGH;
10599 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
10600 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 493, __pyx_L3_error)
10601 CYTHON_FALLTHROUGH;
10603 default:
goto __pyx_L5_argtuple_error;
10605 const Py_ssize_t kwd_pos_args = __pyx_nargs;
10606 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getElementLDGvelocityValuesLagrangeRep", 0) < (0)) __PYX_ERR(0, 493, __pyx_L3_error)
10607 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
10608 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getElementLDGvelocityValuesLagrangeRep", 1, 3, 3, i); __PYX_ERR(0, 493, __pyx_L3_error) }
10610 }
else if (unlikely(__pyx_nargs != 3)) {
10611 goto __pyx_L5_argtuple_error;
10613 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
10614 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 493, __pyx_L3_error)
10615 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
10616 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 493, __pyx_L3_error)
10617 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
10618 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 493, __pyx_L3_error)
10620 __pyx_v_q_v = ((PyArrayObject *)values[0]);
10621 __pyx_v_vdofs = ((PyArrayObject *)values[1]);
10622 __pyx_v_q_velocity = ((PyArrayObject *)values[2]);
10624 goto __pyx_L6_skip;
10625 __pyx_L5_argtuple_error:;
10626 __Pyx_RaiseArgtupleInvalid(
"getElementLDGvelocityValuesLagrangeRep", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 493, __pyx_L3_error)
10628 goto __pyx_L4_argument_unpacking_done;
10630 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10631 Py_XDECREF(values[__pyx_temp]);
10633 __Pyx_AddTraceback(
"cpostprocessing.getElementLDGvelocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
10634 __Pyx_RefNannyFinishContext();
10636 __pyx_L4_argument_unpacking_done:;
10637 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_v), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_v", 0))) __PYX_ERR(0, 493, __pyx_L1_error)
10638 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vdofs", 0))) __PYX_ERR(0, 494, __pyx_L1_error)
10639 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_q_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"q_velocity", 0))) __PYX_ERR(0, 495, __pyx_L1_error)
10640 __pyx_r = __pyx_pf_15cpostprocessing_40getElementLDGvelocityValuesLagrangeRep(__pyx_self, __pyx_v_q_v, __pyx_v_vdofs, __pyx_v_q_velocity);
10646 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10647 Py_XDECREF(values[__pyx_temp]);
10649 goto __pyx_L7_cleaned_up;
10651 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10652 Py_XDECREF(values[__pyx_temp]);
10654 __pyx_L7_cleaned_up:;
10655 __Pyx_RefNannyFinishContext();
10659static PyObject *__pyx_pf_15cpostprocessing_40getElementLDGvelocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_q_v, PyArrayObject *__pyx_v_vdofs, PyArrayObject *__pyx_v_q_velocity) {
10660 int __pyx_v_nVDOF_element;
10661 int __pyx_v_nDOF_trial_element;
10662 PyObject *__pyx_r = NULL;
10663 __Pyx_RefNannyDeclarations
10665 int __pyx_lineno = 0;
10666 const char *__pyx_filename = NULL;
10667 int __pyx_clineno = 0;
10668 __Pyx_RefNannySetupContext(
"getElementLDGvelocityValuesLagrangeRep", 0);
10677 __pyx_v_nVDOF_element = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_vdofs)[1]);
10686 __pyx_v_nDOF_trial_element = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_v)[2]);
10695 __pyx_t_1 = (__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_vdofs) > 1);
10707 #ifndef CYTHON_WITHOUT_ASSERTIONS
10708 if (unlikely(__pyx_assertions_enabled())) {
10709 __pyx_t_1 = (__pyx_v_nVDOF_element == ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_v)[2]) * (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[2])));
10711 if (unlikely(!__pyx_t_1)) {
10712 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_AssertionError))), 0, 0, 0);
10713 __PYX_ERR(0, 499, __pyx_L1_error)
10718 if ((1));
else __PYX_ERR(0, 499, __pyx_L1_error)
10737 getElementLDGvelocityValuesLagrangeRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_q_velocity)[2]), __pyx_v_nDOF_trial_element, __pyx_v_nVDOF_element, ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_v)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vdofs)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_q_velocity)));
10748 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
10751 __Pyx_AddTraceback(
"cpostprocessing.getElementLDGvelocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
10756 __Pyx_XGIVEREF(__pyx_r);
10757 __Pyx_RefNannyFinishContext();
10770static PyObject *__pyx_pw_15cpostprocessing_43getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep(PyObject *__pyx_self,
10771#
if CYTHON_VECTORCALL
10772PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
10774PyObject *__pyx_args, PyObject *__pyx_kwds
10777static PyMethodDef __pyx_mdef_15cpostprocessing_43getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep = {
"getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_43getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
10778static PyObject *__pyx_pw_15cpostprocessing_43getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep(PyObject *__pyx_self,
10779#
if CYTHON_VECTORCALL
10780PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
10782PyObject *__pyx_args, PyObject *__pyx_kwds
10785 PyArrayObject *__pyx_v_elementBoundaryElementsArray = 0;
10786 PyArrayObject *__pyx_v_exteriorElementBoundariesArray = 0;
10787 PyArrayObject *__pyx_v_ebqe_v = 0;
10788 PyArrayObject *__pyx_v_p1_vdofs = 0;
10789 PyArrayObject *__pyx_v_ebqe_velocity = 0;
10790 #if !CYTHON_VECTORCALL
10791 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
10793 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
10794 PyObject* values[5] = {0,0,0,0,0};
10795 int __pyx_lineno = 0;
10796 const char *__pyx_filename = NULL;
10797 int __pyx_clineno = 0;
10798 PyObject *__pyx_r = 0;
10799 __Pyx_RefNannyDeclarations
10800 __Pyx_RefNannySetupContext(
"getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep (wrapper)", 0);
10801 #if !CYTHON_VECTORCALL
10802 #if CYTHON_ASSUME_SAFE_SIZE
10803 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
10805 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
10808 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
10810 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_elementBoundaryElementsArray,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundariesArray,&__pyx_mstate_global->__pyx_n_u_ebqe_v,&__pyx_mstate_global->__pyx_n_u_p1_vdofs,&__pyx_mstate_global->__pyx_n_u_ebqe_velocity,0};
10811 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
10812 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 509, __pyx_L3_error)
10813 if (__pyx_kwds_len > 0) {
10814 switch (__pyx_nargs) {
10816 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
10817 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 509, __pyx_L3_error)
10818 CYTHON_FALLTHROUGH;
10820 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
10821 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 509, __pyx_L3_error)
10822 CYTHON_FALLTHROUGH;
10824 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
10825 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 509, __pyx_L3_error)
10826 CYTHON_FALLTHROUGH;
10828 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
10829 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 509, __pyx_L3_error)
10830 CYTHON_FALLTHROUGH;
10832 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
10833 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 509, __pyx_L3_error)
10834 CYTHON_FALLTHROUGH;
10836 default:
goto __pyx_L5_argtuple_error;
10838 const Py_ssize_t kwd_pos_args = __pyx_nargs;
10839 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep", 0) < (0)) __PYX_ERR(0, 509, __pyx_L3_error)
10840 for (Py_ssize_t i = __pyx_nargs; i < 5; i++) {
10841 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep", 1, 5, 5, i); __PYX_ERR(0, 509, __pyx_L3_error) }
10843 }
else if (unlikely(__pyx_nargs != 5)) {
10844 goto __pyx_L5_argtuple_error;
10846 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
10847 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 509, __pyx_L3_error)
10848 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
10849 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 509, __pyx_L3_error)
10850 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
10851 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 509, __pyx_L3_error)
10852 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
10853 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 509, __pyx_L3_error)
10854 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
10855 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 509, __pyx_L3_error)
10857 __pyx_v_elementBoundaryElementsArray = ((PyArrayObject *)values[0]);
10858 __pyx_v_exteriorElementBoundariesArray = ((PyArrayObject *)values[1]);
10859 __pyx_v_ebqe_v = ((PyArrayObject *)values[2]);
10860 __pyx_v_p1_vdofs = ((PyArrayObject *)values[3]);
10861 __pyx_v_ebqe_velocity = ((PyArrayObject *)values[4]);
10863 goto __pyx_L6_skip;
10864 __pyx_L5_argtuple_error:;
10865 __Pyx_RaiseArgtupleInvalid(
"getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 509, __pyx_L3_error)
10867 goto __pyx_L4_argument_unpacking_done;
10869 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10870 Py_XDECREF(values[__pyx_temp]);
10872 __Pyx_AddTraceback(
"cpostprocessing.getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
10873 __Pyx_RefNannyFinishContext();
10875 __pyx_L4_argument_unpacking_done:;
10876 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElementsArray", 0))) __PYX_ERR(0, 509, __pyx_L1_error)
10877 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundariesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundariesArray", 0))) __PYX_ERR(0, 510, __pyx_L1_error)
10878 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebqe_v), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebqe_v", 0))) __PYX_ERR(0, 511, __pyx_L1_error)
10879 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_p1_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"p1_vdofs", 0))) __PYX_ERR(0, 512, __pyx_L1_error)
10880 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebqe_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebqe_velocity", 0))) __PYX_ERR(0, 513, __pyx_L1_error)
10881 __pyx_r = __pyx_pf_15cpostprocessing_42getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep(__pyx_self, __pyx_v_elementBoundaryElementsArray, __pyx_v_exteriorElementBoundariesArray, __pyx_v_ebqe_v, __pyx_v_p1_vdofs, __pyx_v_ebqe_velocity);
10887 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10888 Py_XDECREF(values[__pyx_temp]);
10890 goto __pyx_L7_cleaned_up;
10892 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
10893 Py_XDECREF(values[__pyx_temp]);
10895 __pyx_L7_cleaned_up:;
10896 __Pyx_RefNannyFinishContext();
10900static PyObject *__pyx_pf_15cpostprocessing_42getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_ebqe_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_ebqe_velocity) {
10901 int __pyx_v_nVDOFs_element;
10902 PyObject *__pyx_r = NULL;
10903 __Pyx_RefNannyDeclarations
10905 int __pyx_lineno = 0;
10906 const char *__pyx_filename = NULL;
10907 int __pyx_clineno = 0;
10908 __Pyx_RefNannySetupContext(
"getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep", 0);
10917 __pyx_v_nVDOFs_element = ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebqe_velocity)[2]) * ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebqe_velocity)[2]) + 1));
10926 __pyx_t_1 = (__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_p1_vdofs) > 1);
10938 #ifndef CYTHON_WITHOUT_ASSERTIONS
10939 if (unlikely(__pyx_assertions_enabled())) {
10940 __pyx_t_1 = (__pyx_v_nVDOFs_element == (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_p1_vdofs)[1]));
10942 if (unlikely(!__pyx_t_1)) {
10943 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_AssertionError))), 0, 0, 0);
10944 __PYX_ERR(0, 516, __pyx_L1_error)
10949 if ((1));
else __PYX_ERR(0, 516, __pyx_L1_error)
10968 getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebqe_velocity)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebqe_velocity)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebqe_velocity)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebqe_v)[2]), __pyx_v_nVDOFs_element, ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElementsArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundariesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebqe_v)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_p1_vdofs)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebqe_velocity)));
10979 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
10982 __Pyx_AddTraceback(
"cpostprocessing.getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
10986 __Pyx_XGIVEREF(__pyx_r);
10987 __Pyx_RefNannyFinishContext();
11000static PyObject *__pyx_pw_15cpostprocessing_45getGlobalElementBoundaryBDM1velocityValuesLagrangeRep(PyObject *__pyx_self,
11001#
if CYTHON_VECTORCALL
11002PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11004PyObject *__pyx_args, PyObject *__pyx_kwds
11007static PyMethodDef __pyx_mdef_15cpostprocessing_45getGlobalElementBoundaryBDM1velocityValuesLagrangeRep = {
"getGlobalElementBoundaryBDM1velocityValuesLagrangeRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_45getGlobalElementBoundaryBDM1velocityValuesLagrangeRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
11008static PyObject *__pyx_pw_15cpostprocessing_45getGlobalElementBoundaryBDM1velocityValuesLagrangeRep(PyObject *__pyx_self,
11009#
if CYTHON_VECTORCALL
11010PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11012PyObject *__pyx_args, PyObject *__pyx_kwds
11015 PyArrayObject *__pyx_v_elementBoundaryElementsArray = 0;
11016 PyArrayObject *__pyx_v_exteriorElementBoundariesArray = 0;
11017 PyArrayObject *__pyx_v_ebqe_v = 0;
11018 PyArrayObject *__pyx_v_p1_vdofs = 0;
11019 PyArrayObject *__pyx_v_ebq_global_velocity = 0;
11020 #if !CYTHON_VECTORCALL
11021 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
11023 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
11024 PyObject* values[5] = {0,0,0,0,0};
11025 int __pyx_lineno = 0;
11026 const char *__pyx_filename = NULL;
11027 int __pyx_clineno = 0;
11028 PyObject *__pyx_r = 0;
11029 __Pyx_RefNannyDeclarations
11030 __Pyx_RefNannySetupContext(
"getGlobalElementBoundaryBDM1velocityValuesLagrangeRep (wrapper)", 0);
11031 #if !CYTHON_VECTORCALL
11032 #if CYTHON_ASSUME_SAFE_SIZE
11033 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
11035 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
11038 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
11040 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_elementBoundaryElementsArray,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundariesArray,&__pyx_mstate_global->__pyx_n_u_ebqe_v,&__pyx_mstate_global->__pyx_n_u_p1_vdofs,&__pyx_mstate_global->__pyx_n_u_ebq_global_velocity,0};
11041 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
11042 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 528, __pyx_L3_error)
11043 if (__pyx_kwds_len > 0) {
11044 switch (__pyx_nargs) {
11046 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
11047 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 528, __pyx_L3_error)
11048 CYTHON_FALLTHROUGH;
11050 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11051 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 528, __pyx_L3_error)
11052 CYTHON_FALLTHROUGH;
11054 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11055 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 528, __pyx_L3_error)
11056 CYTHON_FALLTHROUGH;
11058 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11059 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 528, __pyx_L3_error)
11060 CYTHON_FALLTHROUGH;
11062 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11063 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 528, __pyx_L3_error)
11064 CYTHON_FALLTHROUGH;
11066 default:
goto __pyx_L5_argtuple_error;
11068 const Py_ssize_t kwd_pos_args = __pyx_nargs;
11069 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getGlobalElementBoundaryBDM1velocityValuesLagrangeRep", 0) < (0)) __PYX_ERR(0, 528, __pyx_L3_error)
11070 for (Py_ssize_t i = __pyx_nargs; i < 5; i++) {
11071 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getGlobalElementBoundaryBDM1velocityValuesLagrangeRep", 1, 5, 5, i); __PYX_ERR(0, 528, __pyx_L3_error) }
11073 }
else if (unlikely(__pyx_nargs != 5)) {
11074 goto __pyx_L5_argtuple_error;
11076 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11077 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 528, __pyx_L3_error)
11078 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11079 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 528, __pyx_L3_error)
11080 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11081 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 528, __pyx_L3_error)
11082 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11083 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 528, __pyx_L3_error)
11084 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
11085 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 528, __pyx_L3_error)
11087 __pyx_v_elementBoundaryElementsArray = ((PyArrayObject *)values[0]);
11088 __pyx_v_exteriorElementBoundariesArray = ((PyArrayObject *)values[1]);
11089 __pyx_v_ebqe_v = ((PyArrayObject *)values[2]);
11090 __pyx_v_p1_vdofs = ((PyArrayObject *)values[3]);
11091 __pyx_v_ebq_global_velocity = ((PyArrayObject *)values[4]);
11093 goto __pyx_L6_skip;
11094 __pyx_L5_argtuple_error:;
11095 __Pyx_RaiseArgtupleInvalid(
"getGlobalElementBoundaryBDM1velocityValuesLagrangeRep", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 528, __pyx_L3_error)
11097 goto __pyx_L4_argument_unpacking_done;
11099 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11100 Py_XDECREF(values[__pyx_temp]);
11102 __Pyx_AddTraceback(
"cpostprocessing.getGlobalElementBoundaryBDM1velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
11103 __Pyx_RefNannyFinishContext();
11105 __pyx_L4_argument_unpacking_done:;
11106 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElementsArray", 0))) __PYX_ERR(0, 528, __pyx_L1_error)
11107 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundariesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundariesArray", 0))) __PYX_ERR(0, 529, __pyx_L1_error)
11108 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebqe_v), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebqe_v", 0))) __PYX_ERR(0, 530, __pyx_L1_error)
11109 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_p1_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"p1_vdofs", 0))) __PYX_ERR(0, 531, __pyx_L1_error)
11110 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_global_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_global_velocity", 0))) __PYX_ERR(0, 532, __pyx_L1_error)
11111 __pyx_r = __pyx_pf_15cpostprocessing_44getGlobalElementBoundaryBDM1velocityValuesLagrangeRep(__pyx_self, __pyx_v_elementBoundaryElementsArray, __pyx_v_exteriorElementBoundariesArray, __pyx_v_ebqe_v, __pyx_v_p1_vdofs, __pyx_v_ebq_global_velocity);
11117 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11118 Py_XDECREF(values[__pyx_temp]);
11120 goto __pyx_L7_cleaned_up;
11122 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11123 Py_XDECREF(values[__pyx_temp]);
11125 __pyx_L7_cleaned_up:;
11126 __Pyx_RefNannyFinishContext();
11130static PyObject *__pyx_pf_15cpostprocessing_44getGlobalElementBoundaryBDM1velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_ebqe_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_ebq_global_velocity) {
11131 int __pyx_v_nVDOFs_element;
11132 PyObject *__pyx_r = NULL;
11133 __Pyx_RefNannyDeclarations
11135 int __pyx_lineno = 0;
11136 const char *__pyx_filename = NULL;
11137 int __pyx_clineno = 0;
11138 __Pyx_RefNannySetupContext(
"getGlobalElementBoundaryBDM1velocityValuesLagrangeRep", 0);
11147 __pyx_v_nVDOFs_element = ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_global_velocity)[2]) * ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_global_velocity)[2]) + 1));
11156 __pyx_t_1 = (__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_p1_vdofs) > 1);
11168 #ifndef CYTHON_WITHOUT_ASSERTIONS
11169 if (unlikely(__pyx_assertions_enabled())) {
11170 __pyx_t_1 = (__pyx_v_nVDOFs_element == (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_p1_vdofs)[1]));
11172 if (unlikely(!__pyx_t_1)) {
11173 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_AssertionError))), 0, 0, 0);
11174 __PYX_ERR(0, 535, __pyx_L1_error)
11179 if ((1));
else __PYX_ERR(0, 535, __pyx_L1_error)
11198 getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebqe_v)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_global_velocity)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_global_velocity)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebqe_v)[2]), __pyx_v_nVDOFs_element, ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElementsArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundariesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebqe_v)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_p1_vdofs)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_global_velocity)));
11209 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
11212 __Pyx_AddTraceback(
"cpostprocessing.getGlobalElementBoundaryBDM1velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
11216 __Pyx_XGIVEREF(__pyx_r);
11217 __Pyx_RefNannyFinishContext();
11230static PyObject *__pyx_pw_15cpostprocessing_47getElementBoundaryBDM1velocityValuesLagrangeRep(PyObject *__pyx_self,
11231#
if CYTHON_VECTORCALL
11232PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11234PyObject *__pyx_args, PyObject *__pyx_kwds
11237static PyMethodDef __pyx_mdef_15cpostprocessing_47getElementBoundaryBDM1velocityValuesLagrangeRep = {
"getElementBoundaryBDM1velocityValuesLagrangeRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_47getElementBoundaryBDM1velocityValuesLagrangeRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
11238static PyObject *__pyx_pw_15cpostprocessing_47getElementBoundaryBDM1velocityValuesLagrangeRep(PyObject *__pyx_self,
11239#
if CYTHON_VECTORCALL
11240PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11242PyObject *__pyx_args, PyObject *__pyx_kwds
11245 PyArrayObject *__pyx_v_elementBoundaryElementsArray = 0;
11246 PyArrayObject *__pyx_v_exteriorElementBoundariesArray = 0;
11247 PyArrayObject *__pyx_v_ebq_v = 0;
11248 PyArrayObject *__pyx_v_p1_vdofs = 0;
11249 PyArrayObject *__pyx_v_ebq_velocity = 0;
11250 #if !CYTHON_VECTORCALL
11251 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
11253 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
11254 PyObject* values[5] = {0,0,0,0,0};
11255 int __pyx_lineno = 0;
11256 const char *__pyx_filename = NULL;
11257 int __pyx_clineno = 0;
11258 PyObject *__pyx_r = 0;
11259 __Pyx_RefNannyDeclarations
11260 __Pyx_RefNannySetupContext(
"getElementBoundaryBDM1velocityValuesLagrangeRep (wrapper)", 0);
11261 #if !CYTHON_VECTORCALL
11262 #if CYTHON_ASSUME_SAFE_SIZE
11263 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
11265 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
11268 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
11270 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_elementBoundaryElementsArray,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundariesArray,&__pyx_mstate_global->__pyx_n_u_ebq_v,&__pyx_mstate_global->__pyx_n_u_p1_vdofs,&__pyx_mstate_global->__pyx_n_u_ebq_velocity,0};
11271 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
11272 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 547, __pyx_L3_error)
11273 if (__pyx_kwds_len > 0) {
11274 switch (__pyx_nargs) {
11276 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
11277 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 547, __pyx_L3_error)
11278 CYTHON_FALLTHROUGH;
11280 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11281 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 547, __pyx_L3_error)
11282 CYTHON_FALLTHROUGH;
11284 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11285 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 547, __pyx_L3_error)
11286 CYTHON_FALLTHROUGH;
11288 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11289 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 547, __pyx_L3_error)
11290 CYTHON_FALLTHROUGH;
11292 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11293 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 547, __pyx_L3_error)
11294 CYTHON_FALLTHROUGH;
11296 default:
goto __pyx_L5_argtuple_error;
11298 const Py_ssize_t kwd_pos_args = __pyx_nargs;
11299 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getElementBoundaryBDM1velocityValuesLagrangeRep", 0) < (0)) __PYX_ERR(0, 547, __pyx_L3_error)
11300 for (Py_ssize_t i = __pyx_nargs; i < 5; i++) {
11301 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getElementBoundaryBDM1velocityValuesLagrangeRep", 1, 5, 5, i); __PYX_ERR(0, 547, __pyx_L3_error) }
11303 }
else if (unlikely(__pyx_nargs != 5)) {
11304 goto __pyx_L5_argtuple_error;
11306 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11307 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 547, __pyx_L3_error)
11308 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11309 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 547, __pyx_L3_error)
11310 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11311 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 547, __pyx_L3_error)
11312 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11313 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 547, __pyx_L3_error)
11314 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
11315 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 547, __pyx_L3_error)
11317 __pyx_v_elementBoundaryElementsArray = ((PyArrayObject *)values[0]);
11318 __pyx_v_exteriorElementBoundariesArray = ((PyArrayObject *)values[1]);
11319 __pyx_v_ebq_v = ((PyArrayObject *)values[2]);
11320 __pyx_v_p1_vdofs = ((PyArrayObject *)values[3]);
11321 __pyx_v_ebq_velocity = ((PyArrayObject *)values[4]);
11323 goto __pyx_L6_skip;
11324 __pyx_L5_argtuple_error:;
11325 __Pyx_RaiseArgtupleInvalid(
"getElementBoundaryBDM1velocityValuesLagrangeRep", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 547, __pyx_L3_error)
11327 goto __pyx_L4_argument_unpacking_done;
11329 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11330 Py_XDECREF(values[__pyx_temp]);
11332 __Pyx_AddTraceback(
"cpostprocessing.getElementBoundaryBDM1velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
11333 __Pyx_RefNannyFinishContext();
11335 __pyx_L4_argument_unpacking_done:;
11336 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElementsArray", 0))) __PYX_ERR(0, 547, __pyx_L1_error)
11337 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundariesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundariesArray", 0))) __PYX_ERR(0, 548, __pyx_L1_error)
11338 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_v), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_v", 0))) __PYX_ERR(0, 549, __pyx_L1_error)
11339 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_p1_vdofs), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"p1_vdofs", 0))) __PYX_ERR(0, 550, __pyx_L1_error)
11340 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_velocity", 0))) __PYX_ERR(0, 551, __pyx_L1_error)
11341 __pyx_r = __pyx_pf_15cpostprocessing_46getElementBoundaryBDM1velocityValuesLagrangeRep(__pyx_self, __pyx_v_elementBoundaryElementsArray, __pyx_v_exteriorElementBoundariesArray, __pyx_v_ebq_v, __pyx_v_p1_vdofs, __pyx_v_ebq_velocity);
11347 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11348 Py_XDECREF(values[__pyx_temp]);
11350 goto __pyx_L7_cleaned_up;
11352 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11353 Py_XDECREF(values[__pyx_temp]);
11355 __pyx_L7_cleaned_up:;
11356 __Pyx_RefNannyFinishContext();
11360static PyObject *__pyx_pf_15cpostprocessing_46getElementBoundaryBDM1velocityValuesLagrangeRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_ebq_v, PyArrayObject *__pyx_v_p1_vdofs, PyArrayObject *__pyx_v_ebq_velocity) {
11361 int __pyx_v_nVDOFs_element;
11362 PyObject *__pyx_r = NULL;
11363 __Pyx_RefNannyDeclarations
11365 int __pyx_lineno = 0;
11366 const char *__pyx_filename = NULL;
11367 int __pyx_clineno = 0;
11368 __Pyx_RefNannySetupContext(
"getElementBoundaryBDM1velocityValuesLagrangeRep", 0);
11377 __pyx_v_nVDOFs_element = ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_velocity)[3]) * ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_velocity)[3]) + 1));
11386 __pyx_t_1 = (__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_p1_vdofs) > 1);
11398 #ifndef CYTHON_WITHOUT_ASSERTIONS
11399 if (unlikely(__pyx_assertions_enabled())) {
11400 __pyx_t_1 = (__pyx_v_nVDOFs_element == (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_p1_vdofs)[1]));
11402 if (unlikely(!__pyx_t_1)) {
11403 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_AssertionError))), 0, 0, 0);
11404 __PYX_ERR(0, 554, __pyx_L1_error)
11409 if ((1));
else __PYX_ERR(0, 554, __pyx_L1_error)
11419 getElementBoundaryBDM1velocityValuesLagrangeRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_velocity)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_velocity)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_velocity)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_velocity)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v)[2]), __pyx_v_nVDOFs_element, ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElementsArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundariesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_v)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_p1_vdofs)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_ebq_velocity)));
11439 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
11442 __Pyx_AddTraceback(
"cpostprocessing.getElementBoundaryBDM1velocityValuesLagrangeRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
11446 __Pyx_XGIVEREF(__pyx_r);
11447 __Pyx_RefNannyFinishContext();
11460static PyObject *__pyx_pw_15cpostprocessing_49projectElementBoundaryVelocityToRT0fluxRep(PyObject *__pyx_self,
11461#
if CYTHON_VECTORCALL
11462PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11464PyObject *__pyx_args, PyObject *__pyx_kwds
11467static PyMethodDef __pyx_mdef_15cpostprocessing_49projectElementBoundaryVelocityToRT0fluxRep = {
"projectElementBoundaryVelocityToRT0fluxRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_49projectElementBoundaryVelocityToRT0fluxRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
11468static PyObject *__pyx_pw_15cpostprocessing_49projectElementBoundaryVelocityToRT0fluxRep(PyObject *__pyx_self,
11469#
if CYTHON_VECTORCALL
11470PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11472PyObject *__pyx_args, PyObject *__pyx_kwds
11475 PyArrayObject *__pyx_v_elementBoundaryQuadratureWeights = 0;
11476 PyArrayObject *__pyx_v_n = 0;
11477 PyArrayObject *__pyx_v_v_elementBoundary = 0;
11478 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
11479 #if !CYTHON_VECTORCALL
11480 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
11482 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
11483 PyObject* values[4] = {0,0,0,0};
11484 int __pyx_lineno = 0;
11485 const char *__pyx_filename = NULL;
11486 int __pyx_clineno = 0;
11487 PyObject *__pyx_r = 0;
11488 __Pyx_RefNannyDeclarations
11489 __Pyx_RefNannySetupContext(
"projectElementBoundaryVelocityToRT0fluxRep (wrapper)", 0);
11490 #if !CYTHON_VECTORCALL
11491 #if CYTHON_ASSUME_SAFE_SIZE
11492 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
11494 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
11497 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
11499 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_elementBoundaryQuadratureWeights,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_v_elementBoundary,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,0};
11500 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
11501 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 567, __pyx_L3_error)
11502 if (__pyx_kwds_len > 0) {
11503 switch (__pyx_nargs) {
11505 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11506 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 567, __pyx_L3_error)
11507 CYTHON_FALLTHROUGH;
11509 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11510 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 567, __pyx_L3_error)
11511 CYTHON_FALLTHROUGH;
11513 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11514 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 567, __pyx_L3_error)
11515 CYTHON_FALLTHROUGH;
11517 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11518 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 567, __pyx_L3_error)
11519 CYTHON_FALLTHROUGH;
11521 default:
goto __pyx_L5_argtuple_error;
11523 const Py_ssize_t kwd_pos_args = __pyx_nargs;
11524 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"projectElementBoundaryVelocityToRT0fluxRep", 0) < (0)) __PYX_ERR(0, 567, __pyx_L3_error)
11525 for (Py_ssize_t i = __pyx_nargs; i < 4; i++) {
11526 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"projectElementBoundaryVelocityToRT0fluxRep", 1, 4, 4, i); __PYX_ERR(0, 567, __pyx_L3_error) }
11528 }
else if (unlikely(__pyx_nargs != 4)) {
11529 goto __pyx_L5_argtuple_error;
11531 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11532 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 567, __pyx_L3_error)
11533 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11534 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 567, __pyx_L3_error)
11535 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11536 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 567, __pyx_L3_error)
11537 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11538 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 567, __pyx_L3_error)
11540 __pyx_v_elementBoundaryQuadratureWeights = ((PyArrayObject *)values[0]);
11541 __pyx_v_n = ((PyArrayObject *)values[1]);
11542 __pyx_v_v_elementBoundary = ((PyArrayObject *)values[2]);
11543 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[3]);
11545 goto __pyx_L6_skip;
11546 __pyx_L5_argtuple_error:;
11547 __Pyx_RaiseArgtupleInvalid(
"projectElementBoundaryVelocityToRT0fluxRep", 1, 4, 4, __pyx_nargs); __PYX_ERR(0, 567, __pyx_L3_error)
11549 goto __pyx_L4_argument_unpacking_done;
11551 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11552 Py_XDECREF(values[__pyx_temp]);
11554 __Pyx_AddTraceback(
"cpostprocessing.projectElementBoundaryVelocityToRT0fluxRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
11555 __Pyx_RefNannyFinishContext();
11557 __pyx_L4_argument_unpacking_done:;
11558 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryQuadratureWeights), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryQuadratureWeights", 0))) __PYX_ERR(0, 567, __pyx_L1_error)
11559 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 568, __pyx_L1_error)
11560 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_elementBoundary", 0))) __PYX_ERR(0, 569, __pyx_L1_error)
11561 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 570, __pyx_L1_error)
11562 __pyx_r = __pyx_pf_15cpostprocessing_48projectElementBoundaryVelocityToRT0fluxRep(__pyx_self, __pyx_v_elementBoundaryQuadratureWeights, __pyx_v_n, __pyx_v_v_elementBoundary, __pyx_v_rt0vdofs_element);
11568 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11569 Py_XDECREF(values[__pyx_temp]);
11571 goto __pyx_L7_cleaned_up;
11573 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11574 Py_XDECREF(values[__pyx_temp]);
11576 __pyx_L7_cleaned_up:;
11577 __Pyx_RefNannyFinishContext();
11581static PyObject *__pyx_pf_15cpostprocessing_48projectElementBoundaryVelocityToRT0fluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryQuadratureWeights, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_v_elementBoundary, PyArrayObject *__pyx_v_rt0vdofs_element) {
11582 PyObject *__pyx_r = NULL;
11583 __Pyx_RefNannyDeclarations
11584 __Pyx_RefNannySetupContext(
"projectElementBoundaryVelocityToRT0fluxRep", 0);
11593 projectElementBoundaryVelocityToRT0fluxRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[3]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryQuadratureWeights)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_elementBoundary)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)));
11604 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
11605 __Pyx_XGIVEREF(__pyx_r);
11606 __Pyx_RefNannyFinishContext();
11619static PyObject *__pyx_pw_15cpostprocessing_51projectElementBoundaryFluxToRT0fluxRep(PyObject *__pyx_self,
11620#
if CYTHON_VECTORCALL
11621PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11623PyObject *__pyx_args, PyObject *__pyx_kwds
11626static PyMethodDef __pyx_mdef_15cpostprocessing_51projectElementBoundaryFluxToRT0fluxRep = {
"projectElementBoundaryFluxToRT0fluxRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_51projectElementBoundaryFluxToRT0fluxRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
11627static PyObject *__pyx_pw_15cpostprocessing_51projectElementBoundaryFluxToRT0fluxRep(PyObject *__pyx_self,
11628#
if CYTHON_VECTORCALL
11629PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11631PyObject *__pyx_args, PyObject *__pyx_kwds
11634 PyArrayObject *__pyx_v_elementBoundaryElementsArray = 0;
11635 PyArrayObject *__pyx_v_elementBoundariesArray = 0;
11636 PyArrayObject *__pyx_v_elementBoundaryQuadratureWeights = 0;
11637 PyArrayObject *__pyx_v_flux_elementBoundary = 0;
11638 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
11639 #if !CYTHON_VECTORCALL
11640 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
11642 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
11643 PyObject* values[5] = {0,0,0,0,0};
11644 int __pyx_lineno = 0;
11645 const char *__pyx_filename = NULL;
11646 int __pyx_clineno = 0;
11647 PyObject *__pyx_r = 0;
11648 __Pyx_RefNannyDeclarations
11649 __Pyx_RefNannySetupContext(
"projectElementBoundaryFluxToRT0fluxRep (wrapper)", 0);
11650 #if !CYTHON_VECTORCALL
11651 #if CYTHON_ASSUME_SAFE_SIZE
11652 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
11654 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
11657 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
11659 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_elementBoundaryElementsArray,&__pyx_mstate_global->__pyx_n_u_elementBoundariesArray,&__pyx_mstate_global->__pyx_n_u_elementBoundaryQuadratureWeights,&__pyx_mstate_global->__pyx_n_u_flux_elementBoundary,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,0};
11660 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
11661 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 580, __pyx_L3_error)
11662 if (__pyx_kwds_len > 0) {
11663 switch (__pyx_nargs) {
11665 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
11666 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 580, __pyx_L3_error)
11667 CYTHON_FALLTHROUGH;
11669 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11670 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 580, __pyx_L3_error)
11671 CYTHON_FALLTHROUGH;
11673 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11674 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 580, __pyx_L3_error)
11675 CYTHON_FALLTHROUGH;
11677 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11678 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 580, __pyx_L3_error)
11679 CYTHON_FALLTHROUGH;
11681 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11682 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 580, __pyx_L3_error)
11683 CYTHON_FALLTHROUGH;
11685 default:
goto __pyx_L5_argtuple_error;
11687 const Py_ssize_t kwd_pos_args = __pyx_nargs;
11688 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"projectElementBoundaryFluxToRT0fluxRep", 0) < (0)) __PYX_ERR(0, 580, __pyx_L3_error)
11689 for (Py_ssize_t i = __pyx_nargs; i < 5; i++) {
11690 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"projectElementBoundaryFluxToRT0fluxRep", 1, 5, 5, i); __PYX_ERR(0, 580, __pyx_L3_error) }
11692 }
else if (unlikely(__pyx_nargs != 5)) {
11693 goto __pyx_L5_argtuple_error;
11695 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11696 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 580, __pyx_L3_error)
11697 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11698 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 580, __pyx_L3_error)
11699 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11700 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 580, __pyx_L3_error)
11701 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11702 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 580, __pyx_L3_error)
11703 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
11704 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 580, __pyx_L3_error)
11706 __pyx_v_elementBoundaryElementsArray = ((PyArrayObject *)values[0]);
11707 __pyx_v_elementBoundariesArray = ((PyArrayObject *)values[1]);
11708 __pyx_v_elementBoundaryQuadratureWeights = ((PyArrayObject *)values[2]);
11709 __pyx_v_flux_elementBoundary = ((PyArrayObject *)values[3]);
11710 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[4]);
11712 goto __pyx_L6_skip;
11713 __pyx_L5_argtuple_error:;
11714 __Pyx_RaiseArgtupleInvalid(
"projectElementBoundaryFluxToRT0fluxRep", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 580, __pyx_L3_error)
11716 goto __pyx_L4_argument_unpacking_done;
11718 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11719 Py_XDECREF(values[__pyx_temp]);
11721 __Pyx_AddTraceback(
"cpostprocessing.projectElementBoundaryFluxToRT0fluxRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
11722 __Pyx_RefNannyFinishContext();
11724 __pyx_L4_argument_unpacking_done:;
11725 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElementsArray", 0))) __PYX_ERR(0, 580, __pyx_L1_error)
11726 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundariesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundariesArray", 0))) __PYX_ERR(0, 581, __pyx_L1_error)
11727 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryQuadratureWeights), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryQuadratureWeights", 0))) __PYX_ERR(0, 582, __pyx_L1_error)
11728 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_flux_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"flux_elementBoundary", 0))) __PYX_ERR(0, 583, __pyx_L1_error)
11729 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 584, __pyx_L1_error)
11730 __pyx_r = __pyx_pf_15cpostprocessing_50projectElementBoundaryFluxToRT0fluxRep(__pyx_self, __pyx_v_elementBoundaryElementsArray, __pyx_v_elementBoundariesArray, __pyx_v_elementBoundaryQuadratureWeights, __pyx_v_flux_elementBoundary, __pyx_v_rt0vdofs_element);
11736 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11737 Py_XDECREF(values[__pyx_temp]);
11739 goto __pyx_L7_cleaned_up;
11741 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11742 Py_XDECREF(values[__pyx_temp]);
11744 __pyx_L7_cleaned_up:;
11745 __Pyx_RefNannyFinishContext();
11749static PyObject *__pyx_pf_15cpostprocessing_50projectElementBoundaryFluxToRT0fluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_elementBoundariesArray, PyArrayObject *__pyx_v_elementBoundaryQuadratureWeights, PyArrayObject *__pyx_v_flux_elementBoundary, PyArrayObject *__pyx_v_rt0vdofs_element) {
11750 PyObject *__pyx_r = NULL;
11751 __Pyx_RefNannyDeclarations
11752 __Pyx_RefNannySetupContext(
"projectElementBoundaryFluxToRT0fluxRep", 0);
11761 projectElementBoundaryFluxToRT0fluxRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementBoundaryQuadratureWeights)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementBoundaryQuadratureWeights)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementBoundaryQuadratureWeights)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_rt0vdofs_element)[1]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElementsArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundariesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryQuadratureWeights)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_flux_elementBoundary)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)));
11772 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
11773 __Pyx_XGIVEREF(__pyx_r);
11774 __Pyx_RefNannyFinishContext();
11787static PyObject *__pyx_pw_15cpostprocessing_53getElementRT0velocityValuesFluxRep(PyObject *__pyx_self,
11788#
if CYTHON_VECTORCALL
11789PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11791PyObject *__pyx_args, PyObject *__pyx_kwds
11794static PyMethodDef __pyx_mdef_15cpostprocessing_53getElementRT0velocityValuesFluxRep = {
"getElementRT0velocityValuesFluxRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_53getElementRT0velocityValuesFluxRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
11795static PyObject *__pyx_pw_15cpostprocessing_53getElementRT0velocityValuesFluxRep(PyObject *__pyx_self,
11796#
if CYTHON_VECTORCALL
11797PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11799PyObject *__pyx_args, PyObject *__pyx_kwds
11802 PyArrayObject *__pyx_v_nodeArray = 0;
11803 PyArrayObject *__pyx_v_elementNodesArray = 0;
11804 PyArrayObject *__pyx_v_abs_det_J = 0;
11805 PyArrayObject *__pyx_v_x_element = 0;
11806 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
11807 PyArrayObject *__pyx_v_v_element = 0;
11808 #if !CYTHON_VECTORCALL
11809 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
11811 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
11812 PyObject* values[6] = {0,0,0,0,0,0};
11813 int __pyx_lineno = 0;
11814 const char *__pyx_filename = NULL;
11815 int __pyx_clineno = 0;
11816 PyObject *__pyx_r = 0;
11817 __Pyx_RefNannyDeclarations
11818 __Pyx_RefNannySetupContext(
"getElementRT0velocityValuesFluxRep (wrapper)", 0);
11819 #if !CYTHON_VECTORCALL
11820 #if CYTHON_ASSUME_SAFE_SIZE
11821 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
11823 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
11826 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
11828 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nodeArray,&__pyx_mstate_global->__pyx_n_u_elementNodesArray,&__pyx_mstate_global->__pyx_n_u_abs_det_J,&__pyx_mstate_global->__pyx_n_u_x_element,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,&__pyx_mstate_global->__pyx_n_u_v_element,0};
11829 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
11830 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 595, __pyx_L3_error)
11831 if (__pyx_kwds_len > 0) {
11832 switch (__pyx_nargs) {
11834 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
11835 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 595, __pyx_L3_error)
11836 CYTHON_FALLTHROUGH;
11838 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
11839 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 595, __pyx_L3_error)
11840 CYTHON_FALLTHROUGH;
11842 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11843 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 595, __pyx_L3_error)
11844 CYTHON_FALLTHROUGH;
11846 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11847 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 595, __pyx_L3_error)
11848 CYTHON_FALLTHROUGH;
11850 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11851 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 595, __pyx_L3_error)
11852 CYTHON_FALLTHROUGH;
11854 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11855 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 595, __pyx_L3_error)
11856 CYTHON_FALLTHROUGH;
11858 default:
goto __pyx_L5_argtuple_error;
11860 const Py_ssize_t kwd_pos_args = __pyx_nargs;
11861 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getElementRT0velocityValuesFluxRep", 0) < (0)) __PYX_ERR(0, 595, __pyx_L3_error)
11862 for (Py_ssize_t i = __pyx_nargs; i < 6; i++) {
11863 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getElementRT0velocityValuesFluxRep", 1, 6, 6, i); __PYX_ERR(0, 595, __pyx_L3_error) }
11865 }
else if (unlikely(__pyx_nargs != 6)) {
11866 goto __pyx_L5_argtuple_error;
11868 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
11869 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 595, __pyx_L3_error)
11870 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
11871 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 595, __pyx_L3_error)
11872 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
11873 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 595, __pyx_L3_error)
11874 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
11875 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 595, __pyx_L3_error)
11876 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
11877 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 595, __pyx_L3_error)
11878 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
11879 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 595, __pyx_L3_error)
11881 __pyx_v_nodeArray = ((PyArrayObject *)values[0]);
11882 __pyx_v_elementNodesArray = ((PyArrayObject *)values[1]);
11883 __pyx_v_abs_det_J = ((PyArrayObject *)values[2]);
11884 __pyx_v_x_element = ((PyArrayObject *)values[3]);
11885 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[4]);
11886 __pyx_v_v_element = ((PyArrayObject *)values[5]);
11888 goto __pyx_L6_skip;
11889 __pyx_L5_argtuple_error:;
11890 __Pyx_RaiseArgtupleInvalid(
"getElementRT0velocityValuesFluxRep", 1, 6, 6, __pyx_nargs); __PYX_ERR(0, 595, __pyx_L3_error)
11892 goto __pyx_L4_argument_unpacking_done;
11894 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11895 Py_XDECREF(values[__pyx_temp]);
11897 __Pyx_AddTraceback(
"cpostprocessing.getElementRT0velocityValuesFluxRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
11898 __Pyx_RefNannyFinishContext();
11900 __pyx_L4_argument_unpacking_done:;
11901 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeArray", 0))) __PYX_ERR(0, 595, __pyx_L1_error)
11902 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodesArray", 0))) __PYX_ERR(0, 596, __pyx_L1_error)
11903 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_abs_det_J), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"abs_det_J", 0))) __PYX_ERR(0, 597, __pyx_L1_error)
11904 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_element", 0))) __PYX_ERR(0, 598, __pyx_L1_error)
11905 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 599, __pyx_L1_error)
11906 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_element", 0))) __PYX_ERR(0, 600, __pyx_L1_error)
11907 __pyx_r = __pyx_pf_15cpostprocessing_52getElementRT0velocityValuesFluxRep(__pyx_self, __pyx_v_nodeArray, __pyx_v_elementNodesArray, __pyx_v_abs_det_J, __pyx_v_x_element, __pyx_v_rt0vdofs_element, __pyx_v_v_element);
11913 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11914 Py_XDECREF(values[__pyx_temp]);
11916 goto __pyx_L7_cleaned_up;
11918 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
11919 Py_XDECREF(values[__pyx_temp]);
11921 __pyx_L7_cleaned_up:;
11922 __Pyx_RefNannyFinishContext();
11926static PyObject *__pyx_pf_15cpostprocessing_52getElementRT0velocityValuesFluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x_element, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_element) {
11927 PyObject *__pyx_r = NULL;
11928 __Pyx_RefNannyDeclarations
11929 __Pyx_RefNannySetupContext(
"getElementRT0velocityValuesFluxRep", 0);
11938 getElementRT0velocityValuesFluxRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_element)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementNodesArray)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_element)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_element)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_abs_det_J)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_abs_det_J)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_element)));
11949 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
11950 __Pyx_XGIVEREF(__pyx_r);
11951 __Pyx_RefNannyFinishContext();
11964static PyObject *__pyx_pw_15cpostprocessing_55getElementBoundaryRT0velocityValuesFluxRep(PyObject *__pyx_self,
11965#
if CYTHON_VECTORCALL
11966PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11968PyObject *__pyx_args, PyObject *__pyx_kwds
11971static PyMethodDef __pyx_mdef_15cpostprocessing_55getElementBoundaryRT0velocityValuesFluxRep = {
"getElementBoundaryRT0velocityValuesFluxRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_55getElementBoundaryRT0velocityValuesFluxRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
11972static PyObject *__pyx_pw_15cpostprocessing_55getElementBoundaryRT0velocityValuesFluxRep(PyObject *__pyx_self,
11973#
if CYTHON_VECTORCALL
11974PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
11976PyObject *__pyx_args, PyObject *__pyx_kwds
11979 PyArrayObject *__pyx_v_nodeArray = 0;
11980 PyArrayObject *__pyx_v_elementNodesArray = 0;
11981 PyArrayObject *__pyx_v_abs_det_J = 0;
11982 PyArrayObject *__pyx_v_x_elementBoundary = 0;
11983 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
11984 PyArrayObject *__pyx_v_v_elementBoundary = 0;
11985 #if !CYTHON_VECTORCALL
11986 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
11988 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
11989 PyObject* values[6] = {0,0,0,0,0,0};
11990 int __pyx_lineno = 0;
11991 const char *__pyx_filename = NULL;
11992 int __pyx_clineno = 0;
11993 PyObject *__pyx_r = 0;
11994 __Pyx_RefNannyDeclarations
11995 __Pyx_RefNannySetupContext(
"getElementBoundaryRT0velocityValuesFluxRep (wrapper)", 0);
11996 #if !CYTHON_VECTORCALL
11997 #if CYTHON_ASSUME_SAFE_SIZE
11998 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
12000 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
12003 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
12005 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nodeArray,&__pyx_mstate_global->__pyx_n_u_elementNodesArray,&__pyx_mstate_global->__pyx_n_u_abs_det_J,&__pyx_mstate_global->__pyx_n_u_x_elementBoundary,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,&__pyx_mstate_global->__pyx_n_u_v_elementBoundary,0};
12006 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
12007 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 613, __pyx_L3_error)
12008 if (__pyx_kwds_len > 0) {
12009 switch (__pyx_nargs) {
12011 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12012 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 613, __pyx_L3_error)
12013 CYTHON_FALLTHROUGH;
12015 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12016 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 613, __pyx_L3_error)
12017 CYTHON_FALLTHROUGH;
12019 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12020 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 613, __pyx_L3_error)
12021 CYTHON_FALLTHROUGH;
12023 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12024 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 613, __pyx_L3_error)
12025 CYTHON_FALLTHROUGH;
12027 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12028 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 613, __pyx_L3_error)
12029 CYTHON_FALLTHROUGH;
12031 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12032 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 613, __pyx_L3_error)
12033 CYTHON_FALLTHROUGH;
12035 default:
goto __pyx_L5_argtuple_error;
12037 const Py_ssize_t kwd_pos_args = __pyx_nargs;
12038 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getElementBoundaryRT0velocityValuesFluxRep", 0) < (0)) __PYX_ERR(0, 613, __pyx_L3_error)
12039 for (Py_ssize_t i = __pyx_nargs; i < 6; i++) {
12040 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getElementBoundaryRT0velocityValuesFluxRep", 1, 6, 6, i); __PYX_ERR(0, 613, __pyx_L3_error) }
12042 }
else if (unlikely(__pyx_nargs != 6)) {
12043 goto __pyx_L5_argtuple_error;
12045 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12046 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 613, __pyx_L3_error)
12047 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12048 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 613, __pyx_L3_error)
12049 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12050 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 613, __pyx_L3_error)
12051 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12052 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 613, __pyx_L3_error)
12053 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12054 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 613, __pyx_L3_error)
12055 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12056 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 613, __pyx_L3_error)
12058 __pyx_v_nodeArray = ((PyArrayObject *)values[0]);
12059 __pyx_v_elementNodesArray = ((PyArrayObject *)values[1]);
12060 __pyx_v_abs_det_J = ((PyArrayObject *)values[2]);
12061 __pyx_v_x_elementBoundary = ((PyArrayObject *)values[3]);
12062 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[4]);
12063 __pyx_v_v_elementBoundary = ((PyArrayObject *)values[5]);
12065 goto __pyx_L6_skip;
12066 __pyx_L5_argtuple_error:;
12067 __Pyx_RaiseArgtupleInvalid(
"getElementBoundaryRT0velocityValuesFluxRep", 1, 6, 6, __pyx_nargs); __PYX_ERR(0, 613, __pyx_L3_error)
12069 goto __pyx_L4_argument_unpacking_done;
12071 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12072 Py_XDECREF(values[__pyx_temp]);
12074 __Pyx_AddTraceback(
"cpostprocessing.getElementBoundaryRT0velocityValuesFluxRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
12075 __Pyx_RefNannyFinishContext();
12077 __pyx_L4_argument_unpacking_done:;
12078 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeArray", 0))) __PYX_ERR(0, 613, __pyx_L1_error)
12079 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodesArray", 0))) __PYX_ERR(0, 614, __pyx_L1_error)
12080 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_abs_det_J), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"abs_det_J", 0))) __PYX_ERR(0, 615, __pyx_L1_error)
12081 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_elementBoundary", 0))) __PYX_ERR(0, 616, __pyx_L1_error)
12082 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 617, __pyx_L1_error)
12083 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_elementBoundary), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_elementBoundary", 0))) __PYX_ERR(0, 618, __pyx_L1_error)
12084 __pyx_r = __pyx_pf_15cpostprocessing_54getElementBoundaryRT0velocityValuesFluxRep(__pyx_self, __pyx_v_nodeArray, __pyx_v_elementNodesArray, __pyx_v_abs_det_J, __pyx_v_x_elementBoundary, __pyx_v_rt0vdofs_element, __pyx_v_v_elementBoundary);
12090 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12091 Py_XDECREF(values[__pyx_temp]);
12093 goto __pyx_L7_cleaned_up;
12095 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12096 Py_XDECREF(values[__pyx_temp]);
12098 __pyx_L7_cleaned_up:;
12099 __Pyx_RefNannyFinishContext();
12103static PyObject *__pyx_pf_15cpostprocessing_54getElementBoundaryRT0velocityValuesFluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x_elementBoundary, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary) {
12104 PyObject *__pyx_r = NULL;
12105 __Pyx_RefNannyDeclarations
12106 __Pyx_RefNannySetupContext(
"getElementBoundaryRT0velocityValuesFluxRep", 0);
12115 getElementBoundaryRT0velocityValuesFluxRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_abs_det_J)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_abs_det_J)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_elementBoundary)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_elementBoundary)));
12126 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
12127 __Pyx_XGIVEREF(__pyx_r);
12128 __Pyx_RefNannyFinishContext();
12141static PyObject *__pyx_pw_15cpostprocessing_57getGlobalElementBoundaryRT0velocityValuesFluxRep(PyObject *__pyx_self,
12142#
if CYTHON_VECTORCALL
12143PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12145PyObject *__pyx_args, PyObject *__pyx_kwds
12148static PyMethodDef __pyx_mdef_15cpostprocessing_57getGlobalElementBoundaryRT0velocityValuesFluxRep = {
"getGlobalElementBoundaryRT0velocityValuesFluxRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_57getGlobalElementBoundaryRT0velocityValuesFluxRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
12149static PyObject *__pyx_pw_15cpostprocessing_57getGlobalElementBoundaryRT0velocityValuesFluxRep(PyObject *__pyx_self,
12150#
if CYTHON_VECTORCALL
12151PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12153PyObject *__pyx_args, PyObject *__pyx_kwds
12156 PyArrayObject *__pyx_v_nodeArray = 0;
12157 PyArrayObject *__pyx_v_elementNodesArray = 0;
12158 PyArrayObject *__pyx_v_elementBoundaryElementsArray = 0;
12159 PyArrayObject *__pyx_v_abs_det_J = 0;
12160 PyArrayObject *__pyx_v_x_elementBoundary_global = 0;
12161 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
12162 PyArrayObject *__pyx_v_v_elementBoundary_global = 0;
12163 #if !CYTHON_VECTORCALL
12164 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
12166 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
12167 PyObject* values[7] = {0,0,0,0,0,0,0};
12168 int __pyx_lineno = 0;
12169 const char *__pyx_filename = NULL;
12170 int __pyx_clineno = 0;
12171 PyObject *__pyx_r = 0;
12172 __Pyx_RefNannyDeclarations
12173 __Pyx_RefNannySetupContext(
"getGlobalElementBoundaryRT0velocityValuesFluxRep (wrapper)", 0);
12174 #if !CYTHON_VECTORCALL
12175 #if CYTHON_ASSUME_SAFE_SIZE
12176 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
12178 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
12181 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
12183 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nodeArray,&__pyx_mstate_global->__pyx_n_u_elementNodesArray,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElementsArray,&__pyx_mstate_global->__pyx_n_u_abs_det_J,&__pyx_mstate_global->__pyx_n_u_x_elementBoundary_global,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,&__pyx_mstate_global->__pyx_n_u_v_elementBoundary_global,0};
12184 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
12185 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 631, __pyx_L3_error)
12186 if (__pyx_kwds_len > 0) {
12187 switch (__pyx_nargs) {
12189 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
12190 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 631, __pyx_L3_error)
12191 CYTHON_FALLTHROUGH;
12193 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12194 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 631, __pyx_L3_error)
12195 CYTHON_FALLTHROUGH;
12197 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12198 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 631, __pyx_L3_error)
12199 CYTHON_FALLTHROUGH;
12201 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12202 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 631, __pyx_L3_error)
12203 CYTHON_FALLTHROUGH;
12205 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12206 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 631, __pyx_L3_error)
12207 CYTHON_FALLTHROUGH;
12209 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12210 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 631, __pyx_L3_error)
12211 CYTHON_FALLTHROUGH;
12213 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12214 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 631, __pyx_L3_error)
12215 CYTHON_FALLTHROUGH;
12217 default:
goto __pyx_L5_argtuple_error;
12219 const Py_ssize_t kwd_pos_args = __pyx_nargs;
12220 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getGlobalElementBoundaryRT0velocityValuesFluxRep", 0) < (0)) __PYX_ERR(0, 631, __pyx_L3_error)
12221 for (Py_ssize_t i = __pyx_nargs; i < 7; i++) {
12222 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getGlobalElementBoundaryRT0velocityValuesFluxRep", 1, 7, 7, i); __PYX_ERR(0, 631, __pyx_L3_error) }
12224 }
else if (unlikely(__pyx_nargs != 7)) {
12225 goto __pyx_L5_argtuple_error;
12227 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12228 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 631, __pyx_L3_error)
12229 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12230 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 631, __pyx_L3_error)
12231 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12232 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 631, __pyx_L3_error)
12233 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12234 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 631, __pyx_L3_error)
12235 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12236 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 631, __pyx_L3_error)
12237 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12238 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 631, __pyx_L3_error)
12239 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
12240 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 631, __pyx_L3_error)
12242 __pyx_v_nodeArray = ((PyArrayObject *)values[0]);
12243 __pyx_v_elementNodesArray = ((PyArrayObject *)values[1]);
12244 __pyx_v_elementBoundaryElementsArray = ((PyArrayObject *)values[2]);
12245 __pyx_v_abs_det_J = ((PyArrayObject *)values[3]);
12246 __pyx_v_x_elementBoundary_global = ((PyArrayObject *)values[4]);
12247 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[5]);
12248 __pyx_v_v_elementBoundary_global = ((PyArrayObject *)values[6]);
12250 goto __pyx_L6_skip;
12251 __pyx_L5_argtuple_error:;
12252 __Pyx_RaiseArgtupleInvalid(
"getGlobalElementBoundaryRT0velocityValuesFluxRep", 1, 7, 7, __pyx_nargs); __PYX_ERR(0, 631, __pyx_L3_error)
12254 goto __pyx_L4_argument_unpacking_done;
12256 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12257 Py_XDECREF(values[__pyx_temp]);
12259 __Pyx_AddTraceback(
"cpostprocessing.getGlobalElementBoundaryRT0velocityValuesFluxRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
12260 __Pyx_RefNannyFinishContext();
12262 __pyx_L4_argument_unpacking_done:;
12263 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeArray", 0))) __PYX_ERR(0, 631, __pyx_L1_error)
12264 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodesArray", 0))) __PYX_ERR(0, 632, __pyx_L1_error)
12265 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElementsArray", 0))) __PYX_ERR(0, 633, __pyx_L1_error)
12266 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_abs_det_J), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"abs_det_J", 0))) __PYX_ERR(0, 634, __pyx_L1_error)
12267 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_elementBoundary_global), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_elementBoundary_global", 0))) __PYX_ERR(0, 635, __pyx_L1_error)
12268 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 636, __pyx_L1_error)
12269 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_elementBoundary_global), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_elementBoundary_global", 0))) __PYX_ERR(0, 637, __pyx_L1_error)
12270 __pyx_r = __pyx_pf_15cpostprocessing_56getGlobalElementBoundaryRT0velocityValuesFluxRep(__pyx_self, __pyx_v_nodeArray, __pyx_v_elementNodesArray, __pyx_v_elementBoundaryElementsArray, __pyx_v_abs_det_J, __pyx_v_x_elementBoundary_global, __pyx_v_rt0vdofs_element, __pyx_v_v_elementBoundary_global);
12276 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12277 Py_XDECREF(values[__pyx_temp]);
12279 goto __pyx_L7_cleaned_up;
12281 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12282 Py_XDECREF(values[__pyx_temp]);
12284 __pyx_L7_cleaned_up:;
12285 __Pyx_RefNannyFinishContext();
12289static PyObject *__pyx_pf_15cpostprocessing_56getGlobalElementBoundaryRT0velocityValuesFluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x_elementBoundary_global, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_elementBoundary_global) {
12290 PyObject *__pyx_r = NULL;
12291 __Pyx_RefNannyDeclarations
12292 __Pyx_RefNannySetupContext(
"getGlobalElementBoundaryRT0velocityValuesFluxRep", 0);
12301 getGlobalElementBoundaryRT0velocityValuesFluxRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary_global)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary_global)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_elementBoundary_global)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_abs_det_J)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodesArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElementsArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_abs_det_J)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_elementBoundary_global)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_elementBoundary_global)));
12312 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
12313 __Pyx_XGIVEREF(__pyx_r);
12314 __Pyx_RefNannyFinishContext();
12327static PyObject *__pyx_pw_15cpostprocessing_59getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep(PyObject *__pyx_self,
12328#
if CYTHON_VECTORCALL
12329PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12331PyObject *__pyx_args, PyObject *__pyx_kwds
12334static PyMethodDef __pyx_mdef_15cpostprocessing_59getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep = {
"getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_59getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
12335static PyObject *__pyx_pw_15cpostprocessing_59getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep(PyObject *__pyx_self,
12336#
if CYTHON_VECTORCALL
12337PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12339PyObject *__pyx_args, PyObject *__pyx_kwds
12342 PyArrayObject *__pyx_v_nodeArray = 0;
12343 PyArrayObject *__pyx_v_elementNodesArray = 0;
12344 PyArrayObject *__pyx_v_elementBoundaryElementsArray = 0;
12345 PyArrayObject *__pyx_v_exteriorElementBoundariesArray = 0;
12346 PyArrayObject *__pyx_v_abs_det_J = 0;
12347 PyArrayObject *__pyx_v_x_ebqe = 0;
12348 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
12349 PyArrayObject *__pyx_v_v_ebqe = 0;
12350 #if !CYTHON_VECTORCALL
12351 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
12353 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
12354 PyObject* values[8] = {0,0,0,0,0,0,0,0};
12355 int __pyx_lineno = 0;
12356 const char *__pyx_filename = NULL;
12357 int __pyx_clineno = 0;
12358 PyObject *__pyx_r = 0;
12359 __Pyx_RefNannyDeclarations
12360 __Pyx_RefNannySetupContext(
"getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep (wrapper)", 0);
12361 #if !CYTHON_VECTORCALL
12362 #if CYTHON_ASSUME_SAFE_SIZE
12363 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
12365 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
12368 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
12370 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nodeArray,&__pyx_mstate_global->__pyx_n_u_elementNodesArray,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElementsArray,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundariesArray,&__pyx_mstate_global->__pyx_n_u_abs_det_J,&__pyx_mstate_global->__pyx_n_u_x_ebqe,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,&__pyx_mstate_global->__pyx_n_u_v_ebqe,0};
12371 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
12372 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 650, __pyx_L3_error)
12373 if (__pyx_kwds_len > 0) {
12374 switch (__pyx_nargs) {
12376 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
12377 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 650, __pyx_L3_error)
12378 CYTHON_FALLTHROUGH;
12380 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
12381 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 650, __pyx_L3_error)
12382 CYTHON_FALLTHROUGH;
12384 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12385 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 650, __pyx_L3_error)
12386 CYTHON_FALLTHROUGH;
12388 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12389 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 650, __pyx_L3_error)
12390 CYTHON_FALLTHROUGH;
12392 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12393 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 650, __pyx_L3_error)
12394 CYTHON_FALLTHROUGH;
12396 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12397 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 650, __pyx_L3_error)
12398 CYTHON_FALLTHROUGH;
12400 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12401 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 650, __pyx_L3_error)
12402 CYTHON_FALLTHROUGH;
12404 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12405 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 650, __pyx_L3_error)
12406 CYTHON_FALLTHROUGH;
12408 default:
goto __pyx_L5_argtuple_error;
12410 const Py_ssize_t kwd_pos_args = __pyx_nargs;
12411 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep", 0) < (0)) __PYX_ERR(0, 650, __pyx_L3_error)
12412 for (Py_ssize_t i = __pyx_nargs; i < 8; i++) {
12413 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep", 1, 8, 8, i); __PYX_ERR(0, 650, __pyx_L3_error) }
12415 }
else if (unlikely(__pyx_nargs != 8)) {
12416 goto __pyx_L5_argtuple_error;
12418 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12419 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 650, __pyx_L3_error)
12420 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12421 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 650, __pyx_L3_error)
12422 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12423 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 650, __pyx_L3_error)
12424 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12425 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 650, __pyx_L3_error)
12426 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12427 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 650, __pyx_L3_error)
12428 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12429 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 650, __pyx_L3_error)
12430 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
12431 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 650, __pyx_L3_error)
12432 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
12433 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 650, __pyx_L3_error)
12435 __pyx_v_nodeArray = ((PyArrayObject *)values[0]);
12436 __pyx_v_elementNodesArray = ((PyArrayObject *)values[1]);
12437 __pyx_v_elementBoundaryElementsArray = ((PyArrayObject *)values[2]);
12438 __pyx_v_exteriorElementBoundariesArray = ((PyArrayObject *)values[3]);
12439 __pyx_v_abs_det_J = ((PyArrayObject *)values[4]);
12440 __pyx_v_x_ebqe = ((PyArrayObject *)values[5]);
12441 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[6]);
12442 __pyx_v_v_ebqe = ((PyArrayObject *)values[7]);
12444 goto __pyx_L6_skip;
12445 __pyx_L5_argtuple_error:;
12446 __Pyx_RaiseArgtupleInvalid(
"getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep", 1, 8, 8, __pyx_nargs); __PYX_ERR(0, 650, __pyx_L3_error)
12448 goto __pyx_L4_argument_unpacking_done;
12450 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12451 Py_XDECREF(values[__pyx_temp]);
12453 __Pyx_AddTraceback(
"cpostprocessing.getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep", __pyx_clineno, __pyx_lineno, __pyx_filename);
12454 __Pyx_RefNannyFinishContext();
12456 __pyx_L4_argument_unpacking_done:;
12457 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeArray", 0))) __PYX_ERR(0, 650, __pyx_L1_error)
12458 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodesArray", 0))) __PYX_ERR(0, 651, __pyx_L1_error)
12459 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElementsArray", 0))) __PYX_ERR(0, 652, __pyx_L1_error)
12460 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundariesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundariesArray", 0))) __PYX_ERR(0, 653, __pyx_L1_error)
12461 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_abs_det_J), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"abs_det_J", 0))) __PYX_ERR(0, 654, __pyx_L1_error)
12462 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x_ebqe), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x_ebqe", 0))) __PYX_ERR(0, 655, __pyx_L1_error)
12463 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 656, __pyx_L1_error)
12464 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_ebqe), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_ebqe", 0))) __PYX_ERR(0, 657, __pyx_L1_error)
12465 __pyx_r = __pyx_pf_15cpostprocessing_58getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep(__pyx_self, __pyx_v_nodeArray, __pyx_v_elementNodesArray, __pyx_v_elementBoundaryElementsArray, __pyx_v_exteriorElementBoundariesArray, __pyx_v_abs_det_J, __pyx_v_x_ebqe, __pyx_v_rt0vdofs_element, __pyx_v_v_ebqe);
12471 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12472 Py_XDECREF(values[__pyx_temp]);
12474 goto __pyx_L7_cleaned_up;
12476 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12477 Py_XDECREF(values[__pyx_temp]);
12479 __pyx_L7_cleaned_up:;
12480 __Pyx_RefNannyFinishContext();
12484static PyObject *__pyx_pf_15cpostprocessing_58getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_elementBoundaryElementsArray, PyArrayObject *__pyx_v_exteriorElementBoundariesArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x_ebqe, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_ebqe) {
12485 PyObject *__pyx_r = NULL;
12486 __Pyx_RefNannyDeclarations
12487 __Pyx_RefNannySetupContext(
"getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep", 0);
12496 getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_ebqe)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_ebqe)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_ebqe)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_abs_det_J)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodesArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElementsArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundariesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_abs_det_J)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x_ebqe)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_ebqe)));
12507 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
12508 __Pyx_XGIVEREF(__pyx_r);
12509 __Pyx_RefNannyFinishContext();
12522static PyObject *__pyx_pw_15cpostprocessing_61getRT0velocityValuesFluxRep_arbitraryElementMembership(PyObject *__pyx_self,
12523#
if CYTHON_VECTORCALL
12524PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12526PyObject *__pyx_args, PyObject *__pyx_kwds
12529static PyMethodDef __pyx_mdef_15cpostprocessing_61getRT0velocityValuesFluxRep_arbitraryElementMembership = {
"getRT0velocityValuesFluxRep_arbitraryElementMembership", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_61getRT0velocityValuesFluxRep_arbitraryElementMembership, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
12530static PyObject *__pyx_pw_15cpostprocessing_61getRT0velocityValuesFluxRep_arbitraryElementMembership(PyObject *__pyx_self,
12531#
if CYTHON_VECTORCALL
12532PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12534PyObject *__pyx_args, PyObject *__pyx_kwds
12537 PyArrayObject *__pyx_v_nodeArray = 0;
12538 PyArrayObject *__pyx_v_elementNodesArray = 0;
12539 PyArrayObject *__pyx_v_abs_det_J = 0;
12540 PyArrayObject *__pyx_v_x = 0;
12541 PyArrayObject *__pyx_v_element_locations = 0;
12542 PyArrayObject *__pyx_v_rt0vdofs_element = 0;
12543 PyArrayObject *__pyx_v_v_element = 0;
12544 #if !CYTHON_VECTORCALL
12545 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
12547 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
12548 PyObject* values[7] = {0,0,0,0,0,0,0};
12549 int __pyx_lineno = 0;
12550 const char *__pyx_filename = NULL;
12551 int __pyx_clineno = 0;
12552 PyObject *__pyx_r = 0;
12553 __Pyx_RefNannyDeclarations
12554 __Pyx_RefNannySetupContext(
"getRT0velocityValuesFluxRep_arbitraryElementMembership (wrapper)", 0);
12555 #if !CYTHON_VECTORCALL
12556 #if CYTHON_ASSUME_SAFE_SIZE
12557 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
12559 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
12562 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
12564 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nodeArray,&__pyx_mstate_global->__pyx_n_u_elementNodesArray,&__pyx_mstate_global->__pyx_n_u_abs_det_J,&__pyx_mstate_global->__pyx_n_u_x,&__pyx_mstate_global->__pyx_n_u_element_locations,&__pyx_mstate_global->__pyx_n_u_rt0vdofs_element,&__pyx_mstate_global->__pyx_n_u_v_element,0};
12565 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
12566 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 671, __pyx_L3_error)
12567 if (__pyx_kwds_len > 0) {
12568 switch (__pyx_nargs) {
12570 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
12571 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 671, __pyx_L3_error)
12572 CYTHON_FALLTHROUGH;
12574 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12575 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 671, __pyx_L3_error)
12576 CYTHON_FALLTHROUGH;
12578 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12579 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 671, __pyx_L3_error)
12580 CYTHON_FALLTHROUGH;
12582 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12583 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 671, __pyx_L3_error)
12584 CYTHON_FALLTHROUGH;
12586 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12587 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 671, __pyx_L3_error)
12588 CYTHON_FALLTHROUGH;
12590 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12591 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 671, __pyx_L3_error)
12592 CYTHON_FALLTHROUGH;
12594 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12595 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 671, __pyx_L3_error)
12596 CYTHON_FALLTHROUGH;
12598 default:
goto __pyx_L5_argtuple_error;
12600 const Py_ssize_t kwd_pos_args = __pyx_nargs;
12601 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"getRT0velocityValuesFluxRep_arbitraryElementMembership", 0) < (0)) __PYX_ERR(0, 671, __pyx_L3_error)
12602 for (Py_ssize_t i = __pyx_nargs; i < 7; i++) {
12603 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"getRT0velocityValuesFluxRep_arbitraryElementMembership", 1, 7, 7, i); __PYX_ERR(0, 671, __pyx_L3_error) }
12605 }
else if (unlikely(__pyx_nargs != 7)) {
12606 goto __pyx_L5_argtuple_error;
12608 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12609 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 671, __pyx_L3_error)
12610 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12611 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 671, __pyx_L3_error)
12612 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12613 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 671, __pyx_L3_error)
12614 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12615 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 671, __pyx_L3_error)
12616 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12617 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 671, __pyx_L3_error)
12618 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12619 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 671, __pyx_L3_error)
12620 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
12621 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 671, __pyx_L3_error)
12623 __pyx_v_nodeArray = ((PyArrayObject *)values[0]);
12624 __pyx_v_elementNodesArray = ((PyArrayObject *)values[1]);
12625 __pyx_v_abs_det_J = ((PyArrayObject *)values[2]);
12626 __pyx_v_x = ((PyArrayObject *)values[3]);
12627 __pyx_v_element_locations = ((PyArrayObject *)values[4]);
12628 __pyx_v_rt0vdofs_element = ((PyArrayObject *)values[5]);
12629 __pyx_v_v_element = ((PyArrayObject *)values[6]);
12631 goto __pyx_L6_skip;
12632 __pyx_L5_argtuple_error:;
12633 __Pyx_RaiseArgtupleInvalid(
"getRT0velocityValuesFluxRep_arbitraryElementMembership", 1, 7, 7, __pyx_nargs); __PYX_ERR(0, 671, __pyx_L3_error)
12635 goto __pyx_L4_argument_unpacking_done;
12637 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12638 Py_XDECREF(values[__pyx_temp]);
12640 __Pyx_AddTraceback(
"cpostprocessing.getRT0velocityValuesFluxRep_arbitraryElementMembership", __pyx_clineno, __pyx_lineno, __pyx_filename);
12641 __Pyx_RefNannyFinishContext();
12643 __pyx_L4_argument_unpacking_done:;
12644 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeArray", 0))) __PYX_ERR(0, 671, __pyx_L1_error)
12645 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodesArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodesArray", 0))) __PYX_ERR(0, 672, __pyx_L1_error)
12646 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_abs_det_J), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"abs_det_J", 0))) __PYX_ERR(0, 673, __pyx_L1_error)
12647 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_x), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"x", 0))) __PYX_ERR(0, 674, __pyx_L1_error)
12648 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_element_locations), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"element_locations", 0))) __PYX_ERR(0, 675, __pyx_L1_error)
12649 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rt0vdofs_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rt0vdofs_element", 0))) __PYX_ERR(0, 676, __pyx_L1_error)
12650 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_v_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"v_element", 0))) __PYX_ERR(0, 677, __pyx_L1_error)
12651 __pyx_r = __pyx_pf_15cpostprocessing_60getRT0velocityValuesFluxRep_arbitraryElementMembership(__pyx_self, __pyx_v_nodeArray, __pyx_v_elementNodesArray, __pyx_v_abs_det_J, __pyx_v_x, __pyx_v_element_locations, __pyx_v_rt0vdofs_element, __pyx_v_v_element);
12657 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12658 Py_XDECREF(values[__pyx_temp]);
12660 goto __pyx_L7_cleaned_up;
12662 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12663 Py_XDECREF(values[__pyx_temp]);
12665 __pyx_L7_cleaned_up:;
12666 __Pyx_RefNannyFinishContext();
12670static PyObject *__pyx_pf_15cpostprocessing_60getRT0velocityValuesFluxRep_arbitraryElementMembership(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nodeArray, PyArrayObject *__pyx_v_elementNodesArray, PyArrayObject *__pyx_v_abs_det_J, PyArrayObject *__pyx_v_x, PyArrayObject *__pyx_v_element_locations, PyArrayObject *__pyx_v_rt0vdofs_element, PyArrayObject *__pyx_v_v_element) {
12671 int __pyx_v_nPoints;
12672 PyObject *__pyx_r = NULL;
12673 __Pyx_RefNannyDeclarations
12674 npy_intp __pyx_t_1;
12675 npy_intp __pyx_t_2;
12676 int __pyx_lineno = 0;
12677 const char *__pyx_filename = NULL;
12678 int __pyx_clineno = 0;
12679 __Pyx_RefNannySetupContext(
"getRT0velocityValuesFluxRep_arbitraryElementMembership", 0);
12688 __pyx_t_1 = __pyx_f_5numpy_7ndarray_4size___get__(__pyx_v_x);
12690 __pyx_t_2 = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_x)[(__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_x) - 1)]);
12692 if (unlikely(__pyx_t_2 == 0)) {
12693 PyErr_SetString(PyExc_ZeroDivisionError,
"integer division or modulo by zero");
12694 __PYX_ERR(0, 678, __pyx_L1_error)
12696 else if (
sizeof(npy_intp) ==
sizeof(
long) && (!(((npy_intp)-1) > 0)) && unlikely(__pyx_t_2 == (npy_intp)-1) && unlikely(__Pyx_UNARY_NEG_WOULD_OVERFLOW(__pyx_t_1))) {
12697 PyErr_SetString(PyExc_OverflowError,
"value too large to perform division");
12698 __PYX_ERR(0, 678, __pyx_L1_error)
12700 __pyx_v_nPoints = __Pyx_div_npy_intp(__pyx_t_1, __pyx_t_2, 0);
12711 getRT0velocityValuesFluxRep_arbitraryElementMembership((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementNodesArray)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementNodesArray)[1]), __pyx_v_nPoints, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_v_element)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_abs_det_J)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodesArray)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_abs_det_J)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_x)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_element_locations)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rt0vdofs_element)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_v_element)));
12722 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
12725 __Pyx_AddTraceback(
"cpostprocessing.getRT0velocityValuesFluxRep_arbitraryElementMembership", __pyx_clineno, __pyx_lineno, __pyx_filename);
12729 __Pyx_XGIVEREF(__pyx_r);
12730 __Pyx_RefNannyFinishContext();
12743static PyObject *__pyx_pw_15cpostprocessing_63fluxCorrectionVelocityUpdate(PyObject *__pyx_self,
12744#
if CYTHON_VECTORCALL
12745PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12747PyObject *__pyx_args, PyObject *__pyx_kwds
12750static PyMethodDef __pyx_mdef_15cpostprocessing_63fluxCorrectionVelocityUpdate = {
"fluxCorrectionVelocityUpdate", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_63fluxCorrectionVelocityUpdate, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
12751static PyObject *__pyx_pw_15cpostprocessing_63fluxCorrectionVelocityUpdate(PyObject *__pyx_self,
12752#
if CYTHON_VECTORCALL
12753PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12755PyObject *__pyx_args, PyObject *__pyx_kwds
12758 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
12759 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
12760 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
12761 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
12762 PyArrayObject *__pyx_v_dS = 0;
12763 PyArrayObject *__pyx_v_n = 0;
12764 PyArrayObject *__pyx_v_fluxCorrection = 0;
12765 PyArrayObject *__pyx_v_velocity = 0;
12766 PyArrayObject *__pyx_v_velocity_element = 0;
12767 #if !CYTHON_VECTORCALL
12768 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
12770 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
12771 PyObject* values[9] = {0,0,0,0,0,0,0,0,0};
12772 int __pyx_lineno = 0;
12773 const char *__pyx_filename = NULL;
12774 int __pyx_clineno = 0;
12775 PyObject *__pyx_r = 0;
12776 __Pyx_RefNannyDeclarations
12777 __Pyx_RefNannySetupContext(
"fluxCorrectionVelocityUpdate (wrapper)", 0);
12778 #if !CYTHON_VECTORCALL
12779 #if CYTHON_ASSUME_SAFE_SIZE
12780 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
12782 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
12785 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
12787 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_dS,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_fluxCorrection,&__pyx_mstate_global->__pyx_n_u_velocity,&__pyx_mstate_global->__pyx_n_u_velocity_element,0};
12788 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
12789 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 692, __pyx_L3_error)
12790 if (__pyx_kwds_len > 0) {
12791 switch (__pyx_nargs) {
12793 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
12794 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 692, __pyx_L3_error)
12795 CYTHON_FALLTHROUGH;
12797 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
12798 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 692, __pyx_L3_error)
12799 CYTHON_FALLTHROUGH;
12801 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
12802 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 692, __pyx_L3_error)
12803 CYTHON_FALLTHROUGH;
12805 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12806 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 692, __pyx_L3_error)
12807 CYTHON_FALLTHROUGH;
12809 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12810 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 692, __pyx_L3_error)
12811 CYTHON_FALLTHROUGH;
12813 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12814 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 692, __pyx_L3_error)
12815 CYTHON_FALLTHROUGH;
12817 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12818 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 692, __pyx_L3_error)
12819 CYTHON_FALLTHROUGH;
12821 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12822 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 692, __pyx_L3_error)
12823 CYTHON_FALLTHROUGH;
12825 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12826 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 692, __pyx_L3_error)
12827 CYTHON_FALLTHROUGH;
12829 default:
goto __pyx_L5_argtuple_error;
12831 const Py_ssize_t kwd_pos_args = __pyx_nargs;
12832 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"fluxCorrectionVelocityUpdate", 0) < (0)) __PYX_ERR(0, 692, __pyx_L3_error)
12833 for (Py_ssize_t i = __pyx_nargs; i < 9; i++) {
12834 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"fluxCorrectionVelocityUpdate", 1, 9, 9, i); __PYX_ERR(0, 692, __pyx_L3_error) }
12836 }
else if (unlikely(__pyx_nargs != 9)) {
12837 goto __pyx_L5_argtuple_error;
12839 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
12840 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 692, __pyx_L3_error)
12841 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
12842 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 692, __pyx_L3_error)
12843 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
12844 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 692, __pyx_L3_error)
12845 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
12846 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 692, __pyx_L3_error)
12847 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12848 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 692, __pyx_L3_error)
12849 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12850 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 692, __pyx_L3_error)
12851 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
12852 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 692, __pyx_L3_error)
12853 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
12854 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 692, __pyx_L3_error)
12855 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
12856 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 692, __pyx_L3_error)
12858 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[0]);
12859 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[1]);
12860 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[2]);
12861 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[3]);
12862 __pyx_v_dS = ((PyArrayObject *)values[4]);
12863 __pyx_v_n = ((PyArrayObject *)values[5]);
12864 __pyx_v_fluxCorrection = ((PyArrayObject *)values[6]);
12865 __pyx_v_velocity = ((PyArrayObject *)values[7]);
12866 __pyx_v_velocity_element = ((PyArrayObject *)values[8]);
12868 goto __pyx_L6_skip;
12869 __pyx_L5_argtuple_error:;
12870 __Pyx_RaiseArgtupleInvalid(
"fluxCorrectionVelocityUpdate", 1, 9, 9, __pyx_nargs); __PYX_ERR(0, 692, __pyx_L3_error)
12872 goto __pyx_L4_argument_unpacking_done;
12874 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12875 Py_XDECREF(values[__pyx_temp]);
12877 __Pyx_AddTraceback(
"cpostprocessing.fluxCorrectionVelocityUpdate", __pyx_clineno, __pyx_lineno, __pyx_filename);
12878 __Pyx_RefNannyFinishContext();
12880 __pyx_L4_argument_unpacking_done:;
12881 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 692, __pyx_L1_error)
12882 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 693, __pyx_L1_error)
12883 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 694, __pyx_L1_error)
12884 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 695, __pyx_L1_error)
12885 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dS), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dS", 0))) __PYX_ERR(0, 696, __pyx_L1_error)
12886 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 697, __pyx_L1_error)
12887 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxCorrection), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxCorrection", 0))) __PYX_ERR(0, 698, __pyx_L1_error)
12888 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"velocity", 0))) __PYX_ERR(0, 699, __pyx_L1_error)
12889 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_velocity_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"velocity_element", 0))) __PYX_ERR(0, 700, __pyx_L1_error)
12890 __pyx_r = __pyx_pf_15cpostprocessing_62fluxCorrectionVelocityUpdate(__pyx_self, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_dS, __pyx_v_n, __pyx_v_fluxCorrection, __pyx_v_velocity, __pyx_v_velocity_element);
12896 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12897 Py_XDECREF(values[__pyx_temp]);
12899 goto __pyx_L7_cleaned_up;
12901 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
12902 Py_XDECREF(values[__pyx_temp]);
12904 __pyx_L7_cleaned_up:;
12905 __Pyx_RefNannyFinishContext();
12909static PyObject *__pyx_pf_15cpostprocessing_62fluxCorrectionVelocityUpdate(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_dS, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_fluxCorrection, PyArrayObject *__pyx_v_velocity, PyArrayObject *__pyx_v_velocity_element) {
12910 PyObject *__pyx_r = NULL;
12911 __Pyx_RefNannyDeclarations
12912 __Pyx_RefNannySetupContext(
"fluxCorrectionVelocityUpdate", 0);
12921 fluxCorrectionVelocityUpdate((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dS)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_velocity)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dS)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dS)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_velocity)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dS)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxCorrection)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_velocity)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_velocity_element)));
12932 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
12933 __Pyx_XGIVEREF(__pyx_r);
12934 __Pyx_RefNannyFinishContext();
12947static PyObject *__pyx_pw_15cpostprocessing_65computeFluxCorrectionPWC(PyObject *__pyx_self,
12948#
if CYTHON_VECTORCALL
12949PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12951PyObject *__pyx_args, PyObject *__pyx_kwds
12954static PyMethodDef __pyx_mdef_15cpostprocessing_65computeFluxCorrectionPWC = {
"computeFluxCorrectionPWC", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_65computeFluxCorrectionPWC, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
12955static PyObject *__pyx_pw_15cpostprocessing_65computeFluxCorrectionPWC(PyObject *__pyx_self,
12956#
if CYTHON_VECTORCALL
12957PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
12959PyObject *__pyx_args, PyObject *__pyx_kwds
12962 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
12963 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
12964 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
12965 PyArrayObject *__pyx_v_pwcW = 0;
12966 PyArrayObject *__pyx_v_pwcV = 0;
12967 PyArrayObject *__pyx_v_fluxCorrection = 0;
12968 #if !CYTHON_VECTORCALL
12969 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
12971 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
12972 PyObject* values[6] = {0,0,0,0,0,0};
12973 int __pyx_lineno = 0;
12974 const char *__pyx_filename = NULL;
12975 int __pyx_clineno = 0;
12976 PyObject *__pyx_r = 0;
12977 __Pyx_RefNannyDeclarations
12978 __Pyx_RefNannySetupContext(
"computeFluxCorrectionPWC (wrapper)", 0);
12979 #if !CYTHON_VECTORCALL
12980 #if CYTHON_ASSUME_SAFE_SIZE
12981 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
12983 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
12986 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
12988 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_pwcW,&__pyx_mstate_global->__pyx_n_u_pwcV,&__pyx_mstate_global->__pyx_n_u_fluxCorrection,0};
12989 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
12990 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 718, __pyx_L3_error)
12991 if (__pyx_kwds_len > 0) {
12992 switch (__pyx_nargs) {
12994 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
12995 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 718, __pyx_L3_error)
12996 CYTHON_FALLTHROUGH;
12998 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
12999 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 718, __pyx_L3_error)
13000 CYTHON_FALLTHROUGH;
13002 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
13003 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 718, __pyx_L3_error)
13004 CYTHON_FALLTHROUGH;
13006 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
13007 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 718, __pyx_L3_error)
13008 CYTHON_FALLTHROUGH;
13010 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
13011 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 718, __pyx_L3_error)
13012 CYTHON_FALLTHROUGH;
13014 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
13015 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 718, __pyx_L3_error)
13016 CYTHON_FALLTHROUGH;
13018 default:
goto __pyx_L5_argtuple_error;
13020 const Py_ssize_t kwd_pos_args = __pyx_nargs;
13021 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"computeFluxCorrectionPWC", 0) < (0)) __PYX_ERR(0, 718, __pyx_L3_error)
13022 for (Py_ssize_t i = __pyx_nargs; i < 6; i++) {
13023 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"computeFluxCorrectionPWC", 1, 6, 6, i); __PYX_ERR(0, 718, __pyx_L3_error) }
13025 }
else if (unlikely(__pyx_nargs != 6)) {
13026 goto __pyx_L5_argtuple_error;
13028 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
13029 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 718, __pyx_L3_error)
13030 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
13031 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 718, __pyx_L3_error)
13032 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
13033 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 718, __pyx_L3_error)
13034 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
13035 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 718, __pyx_L3_error)
13036 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
13037 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 718, __pyx_L3_error)
13038 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
13039 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 718, __pyx_L3_error)
13041 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[0]);
13042 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[1]);
13043 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[2]);
13044 __pyx_v_pwcW = ((PyArrayObject *)values[3]);
13045 __pyx_v_pwcV = ((PyArrayObject *)values[4]);
13046 __pyx_v_fluxCorrection = ((PyArrayObject *)values[5]);
13048 goto __pyx_L6_skip;
13049 __pyx_L5_argtuple_error:;
13050 __Pyx_RaiseArgtupleInvalid(
"computeFluxCorrectionPWC", 1, 6, 6, __pyx_nargs); __PYX_ERR(0, 718, __pyx_L3_error)
13052 goto __pyx_L4_argument_unpacking_done;
13054 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13055 Py_XDECREF(values[__pyx_temp]);
13057 __Pyx_AddTraceback(
"cpostprocessing.computeFluxCorrectionPWC", __pyx_clineno, __pyx_lineno, __pyx_filename);
13058 __Pyx_RefNannyFinishContext();
13060 __pyx_L4_argument_unpacking_done:;
13061 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 718, __pyx_L1_error)
13062 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 719, __pyx_L1_error)
13063 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 720, __pyx_L1_error)
13064 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pwcW), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"pwcW", 0))) __PYX_ERR(0, 721, __pyx_L1_error)
13065 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_pwcV), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"pwcV", 0))) __PYX_ERR(0, 722, __pyx_L1_error)
13066 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxCorrection), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxCorrection", 0))) __PYX_ERR(0, 723, __pyx_L1_error)
13067 __pyx_r = __pyx_pf_15cpostprocessing_64computeFluxCorrectionPWC(__pyx_self, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_pwcW, __pyx_v_pwcV, __pyx_v_fluxCorrection);
13073 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13074 Py_XDECREF(values[__pyx_temp]);
13076 goto __pyx_L7_cleaned_up;
13078 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13079 Py_XDECREF(values[__pyx_temp]);
13081 __pyx_L7_cleaned_up:;
13082 __Pyx_RefNannyFinishContext();
13086static PyObject *__pyx_pf_15cpostprocessing_64computeFluxCorrectionPWC(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_pwcW, PyArrayObject *__pyx_v_pwcV, PyArrayObject *__pyx_v_fluxCorrection) {
13087 PyObject *__pyx_r = NULL;
13088 __Pyx_RefNannyDeclarations
13089 __Pyx_RefNannySetupContext(
"computeFluxCorrectionPWC", 0);
13098 computeFluxCorrectionPWC((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementBoundaryElements)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_pwcW)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_pwcV)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxCorrection)));
13109 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
13110 __Pyx_XGIVEREF(__pyx_r);
13111 __Pyx_RefNannyFinishContext();
13124static PyObject *__pyx_pw_15cpostprocessing_67sunWheelerGSsweep(PyObject *__pyx_self,
13125#
if CYTHON_VECTORCALL
13126PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13128PyObject *__pyx_args, PyObject *__pyx_kwds
13131static PyMethodDef __pyx_mdef_15cpostprocessing_67sunWheelerGSsweep = {
"sunWheelerGSsweep", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_67sunWheelerGSsweep, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
13132static PyObject *__pyx_pw_15cpostprocessing_67sunWheelerGSsweep(PyObject *__pyx_self,
13133#
if CYTHON_VECTORCALL
13134PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13136PyObject *__pyx_args, PyObject *__pyx_kwds
13139 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
13140 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
13141 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
13142 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
13143 PyArrayObject *__pyx_v_dS = 0;
13144 PyArrayObject *__pyx_v_n = 0;
13145 PyArrayObject *__pyx_v_sqrt_det_g = 0;
13146 PyArrayObject *__pyx_v_alphaFactor = 0;
13147 PyArrayObject *__pyx_v_fluxCorrection = 0;
13148 PyArrayObject *__pyx_v_conservationResidual = 0;
13149 #if !CYTHON_VECTORCALL
13150 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
13152 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
13153 PyObject* values[10] = {0,0,0,0,0,0,0,0,0,0};
13154 int __pyx_lineno = 0;
13155 const char *__pyx_filename = NULL;
13156 int __pyx_clineno = 0;
13157 PyObject *__pyx_r = 0;
13158 __Pyx_RefNannyDeclarations
13159 __Pyx_RefNannySetupContext(
"sunWheelerGSsweep (wrapper)", 0);
13160 #if !CYTHON_VECTORCALL
13161 #if CYTHON_ASSUME_SAFE_SIZE
13162 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
13164 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
13167 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
13169 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_dS,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_sqrt_det_g,&__pyx_mstate_global->__pyx_n_u_alphaFactor,&__pyx_mstate_global->__pyx_n_u_fluxCorrection,&__pyx_mstate_global->__pyx_n_u_conservationResidual,0};
13170 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
13171 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 734, __pyx_L3_error)
13172 if (__pyx_kwds_len > 0) {
13173 switch (__pyx_nargs) {
13175 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
13176 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 734, __pyx_L3_error)
13177 CYTHON_FALLTHROUGH;
13179 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
13180 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 734, __pyx_L3_error)
13181 CYTHON_FALLTHROUGH;
13183 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
13184 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 734, __pyx_L3_error)
13185 CYTHON_FALLTHROUGH;
13187 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
13188 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 734, __pyx_L3_error)
13189 CYTHON_FALLTHROUGH;
13191 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
13192 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 734, __pyx_L3_error)
13193 CYTHON_FALLTHROUGH;
13195 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
13196 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 734, __pyx_L3_error)
13197 CYTHON_FALLTHROUGH;
13199 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
13200 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 734, __pyx_L3_error)
13201 CYTHON_FALLTHROUGH;
13203 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
13204 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 734, __pyx_L3_error)
13205 CYTHON_FALLTHROUGH;
13207 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
13208 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 734, __pyx_L3_error)
13209 CYTHON_FALLTHROUGH;
13211 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
13212 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 734, __pyx_L3_error)
13213 CYTHON_FALLTHROUGH;
13215 default:
goto __pyx_L5_argtuple_error;
13217 const Py_ssize_t kwd_pos_args = __pyx_nargs;
13218 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"sunWheelerGSsweep", 0) < (0)) __PYX_ERR(0, 734, __pyx_L3_error)
13219 for (Py_ssize_t i = __pyx_nargs; i < 10; i++) {
13220 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"sunWheelerGSsweep", 1, 10, 10, i); __PYX_ERR(0, 734, __pyx_L3_error) }
13222 }
else if (unlikely(__pyx_nargs != 10)) {
13223 goto __pyx_L5_argtuple_error;
13225 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
13226 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 734, __pyx_L3_error)
13227 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
13228 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 734, __pyx_L3_error)
13229 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
13230 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 734, __pyx_L3_error)
13231 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
13232 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 734, __pyx_L3_error)
13233 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
13234 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 734, __pyx_L3_error)
13235 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
13236 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 734, __pyx_L3_error)
13237 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
13238 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 734, __pyx_L3_error)
13239 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
13240 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 734, __pyx_L3_error)
13241 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
13242 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 734, __pyx_L3_error)
13243 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
13244 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 734, __pyx_L3_error)
13246 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[0]);
13247 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[1]);
13248 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[2]);
13249 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[3]);
13250 __pyx_v_dS = ((PyArrayObject *)values[4]);
13251 __pyx_v_n = ((PyArrayObject *)values[5]);
13252 __pyx_v_sqrt_det_g = ((PyArrayObject *)values[6]);
13253 __pyx_v_alphaFactor = ((PyArrayObject *)values[7]);
13254 __pyx_v_fluxCorrection = ((PyArrayObject *)values[8]);
13255 __pyx_v_conservationResidual = ((PyArrayObject *)values[9]);
13257 goto __pyx_L6_skip;
13258 __pyx_L5_argtuple_error:;
13259 __Pyx_RaiseArgtupleInvalid(
"sunWheelerGSsweep", 1, 10, 10, __pyx_nargs); __PYX_ERR(0, 734, __pyx_L3_error)
13261 goto __pyx_L4_argument_unpacking_done;
13263 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13264 Py_XDECREF(values[__pyx_temp]);
13266 __Pyx_AddTraceback(
"cpostprocessing.sunWheelerGSsweep", __pyx_clineno, __pyx_lineno, __pyx_filename);
13267 __Pyx_RefNannyFinishContext();
13269 __pyx_L4_argument_unpacking_done:;
13270 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 734, __pyx_L1_error)
13271 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 735, __pyx_L1_error)
13272 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 736, __pyx_L1_error)
13273 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 737, __pyx_L1_error)
13274 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dS), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dS", 0))) __PYX_ERR(0, 738, __pyx_L1_error)
13275 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 739, __pyx_L1_error)
13276 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_sqrt_det_g), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"sqrt_det_g", 0))) __PYX_ERR(0, 740, __pyx_L1_error)
13277 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_alphaFactor), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"alphaFactor", 0))) __PYX_ERR(0, 741, __pyx_L1_error)
13278 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxCorrection), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxCorrection", 0))) __PYX_ERR(0, 742, __pyx_L1_error)
13279 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_conservationResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"conservationResidual", 0))) __PYX_ERR(0, 743, __pyx_L1_error)
13280 __pyx_r = __pyx_pf_15cpostprocessing_66sunWheelerGSsweep(__pyx_self, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_dS, __pyx_v_n, __pyx_v_sqrt_det_g, __pyx_v_alphaFactor, __pyx_v_fluxCorrection, __pyx_v_conservationResidual);
13286 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13287 Py_XDECREF(values[__pyx_temp]);
13289 goto __pyx_L7_cleaned_up;
13291 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13292 Py_XDECREF(values[__pyx_temp]);
13294 __pyx_L7_cleaned_up:;
13295 __Pyx_RefNannyFinishContext();
13299static PyObject *__pyx_pf_15cpostprocessing_66sunWheelerGSsweep(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_dS, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_sqrt_det_g, PyArrayObject *__pyx_v_alphaFactor, PyArrayObject *__pyx_v_fluxCorrection, PyArrayObject *__pyx_v_conservationResidual) {
13300 PyObject *__pyx_r = NULL;
13301 __Pyx_RefNannyDeclarations
13302 __Pyx_RefNannySetupContext(
"sunWheelerGSsweep", 0);
13311 sunWheelerGSsweep((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_conservationResidual)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementBoundaryElements)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dS)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dS)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dS)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_sqrt_det_g)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_alphaFactor)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxCorrection)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_conservationResidual)));
13322 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
13323 __Pyx_XGIVEREF(__pyx_r);
13324 __Pyx_RefNannyFinishContext();
13337static int __pyx_pw_15cpostprocessing_14NodeStarFactor_1__cinit__(PyObject *__pyx_v_self,
13338#
if CYTHON_VECTORCALL_TPNEW
13339PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13341PyObject *__pyx_args, PyObject *__pyx_kwds
13344static int __pyx_pw_15cpostprocessing_14NodeStarFactor_1__cinit__(PyObject *__pyx_v_self,
13345#
if CYTHON_VECTORCALL_TPNEW
13346PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13348PyObject *__pyx_args, PyObject *__pyx_kwds
13351 PyArrayObject *__pyx_v_nElements_node = 0;
13352 PyArrayObject *__pyx_v_nodeStarElementsArray = 0;
13353 PyArrayObject *__pyx_v_nodeStarElementsNeighborsArray = 0;
13354 #if !CYTHON_VECTORCALL_TPNEW
13355 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
13357 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
13358 PyObject* values[3] = {0,0,0};
13359 int __pyx_lineno = 0;
13360 const char *__pyx_filename = NULL;
13361 int __pyx_clineno = 0;
13363 __Pyx_RefNannyDeclarations
13364 __Pyx_RefNannySetupContext(
"__cinit__ (wrapper)", 0);
13365 #if !CYTHON_VECTORCALL_TPNEW
13366 #if CYTHON_ASSUME_SAFE_SIZE
13367 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
13369 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return -1;
13372 __pyx_kwvalues = __Pyx_KwValues_FASTCALL_TPNEW(__pyx_args, __pyx_nargs);
13374 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nElements_node,&__pyx_mstate_global->__pyx_n_u_nodeStarElementsArray,&__pyx_mstate_global->__pyx_n_u_nodeStarElementsNeighborsArray,0};
13375 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL_TPNEW(__pyx_kwds) : 0;
13376 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 765, __pyx_L3_error)
13377 if (__pyx_kwds_len > 0) {
13378 switch (__pyx_nargs) {
13380 values[2] = __Pyx_ArgRef_FASTCALL_TPNEW(__pyx_args, 2);
13381 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 765, __pyx_L3_error)
13382 CYTHON_FALLTHROUGH;
13384 values[1] = __Pyx_ArgRef_FASTCALL_TPNEW(__pyx_args, 1);
13385 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 765, __pyx_L3_error)
13386 CYTHON_FALLTHROUGH;
13388 values[0] = __Pyx_ArgRef_FASTCALL_TPNEW(__pyx_args, 0);
13389 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 765, __pyx_L3_error)
13390 CYTHON_FALLTHROUGH;
13392 default:
goto __pyx_L5_argtuple_error;
13394 const Py_ssize_t kwd_pos_args = __pyx_nargs;
13395 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"__cinit__", 0) < (0)) __PYX_ERR(0, 765, __pyx_L3_error)
13396 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
13397 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"__cinit__", 1, 3, 3, i); __PYX_ERR(0, 765, __pyx_L3_error) }
13399 }
else if (unlikely(__pyx_nargs != 3)) {
13400 goto __pyx_L5_argtuple_error;
13402 values[0] = __Pyx_ArgRef_FASTCALL_TPNEW(__pyx_args, 0);
13403 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 765, __pyx_L3_error)
13404 values[1] = __Pyx_ArgRef_FASTCALL_TPNEW(__pyx_args, 1);
13405 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 765, __pyx_L3_error)
13406 values[2] = __Pyx_ArgRef_FASTCALL_TPNEW(__pyx_args, 2);
13407 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 765, __pyx_L3_error)
13409 __pyx_v_nElements_node = ((PyArrayObject *)values[0]);
13410 __pyx_v_nodeStarElementsArray = ((PyArrayObject *)values[1]);
13411 __pyx_v_nodeStarElementsNeighborsArray = ((PyArrayObject *)values[2]);
13413 goto __pyx_L6_skip;
13414 __pyx_L5_argtuple_error:;
13415 __Pyx_RaiseArgtupleInvalid(
"__cinit__", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 765, __pyx_L3_error)
13417 goto __pyx_L4_argument_unpacking_done;
13419 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13420 Py_XDECREF(values[__pyx_temp]);
13422 __Pyx_AddTraceback(
"cpostprocessing.NodeStarFactor.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename);
13423 __Pyx_RefNannyFinishContext();
13425 __pyx_L4_argument_unpacking_done:;
13426 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_node), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_node", 0))) __PYX_ERR(0, 766, __pyx_L1_error)
13427 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElementsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElementsArray", 0))) __PYX_ERR(0, 767, __pyx_L1_error)
13428 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElementsNeighborsArray), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElementsNeighborsArray", 0))) __PYX_ERR(0, 768, __pyx_L1_error)
13429 __pyx_r = __pyx_pf_15cpostprocessing_14NodeStarFactor___cinit__(((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)__pyx_v_self), __pyx_v_nElements_node, __pyx_v_nodeStarElementsArray, __pyx_v_nodeStarElementsNeighborsArray);
13435 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13436 Py_XDECREF(values[__pyx_temp]);
13438 goto __pyx_L7_cleaned_up;
13440 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13441 Py_XDECREF(values[__pyx_temp]);
13443 __pyx_L7_cleaned_up:;
13444 __Pyx_RefNannyFinishContext();
13448static int __pyx_pf_15cpostprocessing_14NodeStarFactor___cinit__(
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_nodeStarElementsArray, PyArrayObject *__pyx_v_nodeStarElementsNeighborsArray) {
13452 int __pyx_lineno = 0;
13453 const char *__pyx_filename = NULL;
13454 int __pyx_clineno = 0;
13472 __pyx_v_rval =
nodeStar_init((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_nodeStarElementsArray)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_nodeStarElementsArray)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_nElements_node)[0]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_node)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElementsArray)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElementsNeighborsArray)), (&__pyx_v_self->nsf.N), (&__pyx_v_self->nsf.subdomain_dim), (&__pyx_v_self->nsf.subdomain_L), (&__pyx_v_self->nsf.subdomain_R), (&__pyx_v_self->nsf.subdomain_U), (&__pyx_v_self->nsf.subdomain_pivots), (&__pyx_v_self->nsf.subdomain_column_pivots));
13481 #ifndef CYTHON_WITHOUT_ASSERTIONS
13482 if (unlikely(__pyx_assertions_enabled())) {
13483 __pyx_t_1 = (__pyx_v_rval == 0);
13485 if (unlikely(!__pyx_t_1)) {
13486 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_AssertionError))), 0, 0, 0);
13487 __PYX_ERR(0, 783, __pyx_L1_error)
13492 if ((1));
else __PYX_ERR(0, 783, __pyx_L1_error)
13507 __Pyx_AddTraceback(
"cpostprocessing.NodeStarFactor.__cinit__", __pyx_clineno, __pyx_lineno, __pyx_filename);
13524static void __pyx_pw_15cpostprocessing_14NodeStarFactor_3__dealloc__(PyObject *__pyx_v_self);
13525static void __pyx_pw_15cpostprocessing_14NodeStarFactor_3__dealloc__(PyObject *__pyx_v_self) {
13526 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
13527 __Pyx_RefNannyDeclarations
13528 __Pyx_RefNannySetupContext(
"__dealloc__ (wrapper)", 0);
13529 __pyx_kwvalues = __Pyx_KwValues_VARARGS(__pyx_args, __pyx_nargs);
13530 __pyx_pf_15cpostprocessing_14NodeStarFactor_2__dealloc__(((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)__pyx_v_self));
13533 __Pyx_RefNannyFinishContext();
13536static void __pyx_pf_15cpostprocessing_14NodeStarFactor_2__dealloc__(
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self) {
13545 (void)(
nodeStar_free(__pyx_v_self->nsf.N, __pyx_v_self->nsf.subdomain_dim, __pyx_v_self->nsf.subdomain_L, __pyx_v_self->nsf.subdomain_R, __pyx_v_self->nsf.subdomain_U, __pyx_v_self->nsf.subdomain_pivots, __pyx_v_self->nsf.subdomain_column_pivots));
13568static PyObject *__pyx_pw_15cpostprocessing_14NodeStarFactor_5setU(PyObject *__pyx_v_self,
13569#
if CYTHON_VECTORCALL
13570PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13572PyObject *__pyx_args, PyObject *__pyx_kwds
13575static PyMethodDef __pyx_mdef_15cpostprocessing_14NodeStarFactor_5setU = {
"setU", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_14NodeStarFactor_5setU, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
13576static PyObject *__pyx_pw_15cpostprocessing_14NodeStarFactor_5setU(PyObject *__pyx_v_self,
13577#
if CYTHON_VECTORCALL
13578PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13580PyObject *__pyx_args, PyObject *__pyx_kwds
13583 double __pyx_v_val;
13584 #if !CYTHON_VECTORCALL
13585 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
13587 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
13588 PyObject* values[1] = {0};
13589 int __pyx_lineno = 0;
13590 const char *__pyx_filename = NULL;
13591 int __pyx_clineno = 0;
13592 PyObject *__pyx_r = 0;
13593 __Pyx_RefNannyDeclarations
13594 __Pyx_RefNannySetupContext(
"setU (wrapper)", 0);
13595 #if !CYTHON_VECTORCALL
13596 #if CYTHON_ASSUME_SAFE_SIZE
13597 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
13599 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
13602 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
13604 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_val,0};
13605 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
13606 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 794, __pyx_L3_error)
13607 if (__pyx_kwds_len > 0) {
13608 switch (__pyx_nargs) {
13610 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
13611 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 794, __pyx_L3_error)
13612 CYTHON_FALLTHROUGH;
13614 default:
goto __pyx_L5_argtuple_error;
13616 const Py_ssize_t kwd_pos_args = __pyx_nargs;
13617 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"setU", 0) < (0)) __PYX_ERR(0, 794, __pyx_L3_error)
13618 for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
13619 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"setU", 1, 1, 1, i); __PYX_ERR(0, 794, __pyx_L3_error) }
13621 }
else if (unlikely(__pyx_nargs != 1)) {
13622 goto __pyx_L5_argtuple_error;
13624 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
13625 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 794, __pyx_L3_error)
13627 __pyx_v_val = __Pyx_PyFloat_AsDouble(values[0]);
if (unlikely((__pyx_v_val == (
double)-1) && PyErr_Occurred())) __PYX_ERR(0, 795, __pyx_L3_error)
13629 goto __pyx_L6_skip;
13630 __pyx_L5_argtuple_error:;
13631 __Pyx_RaiseArgtupleInvalid(
"setU", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 794, __pyx_L3_error)
13633 goto __pyx_L4_argument_unpacking_done;
13635 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13636 Py_XDECREF(values[__pyx_temp]);
13638 __Pyx_AddTraceback(
"cpostprocessing.NodeStarFactor.setU", __pyx_clineno, __pyx_lineno, __pyx_filename);
13639 __Pyx_RefNannyFinishContext();
13641 __pyx_L4_argument_unpacking_done:;
13642 __pyx_r = __pyx_pf_15cpostprocessing_14NodeStarFactor_4setU(((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)__pyx_v_self), __pyx_v_val);
13645 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13646 Py_XDECREF(values[__pyx_temp]);
13649 __Pyx_RefNannyFinishContext();
13653static PyObject *__pyx_pf_15cpostprocessing_14NodeStarFactor_4setU(
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self,
double __pyx_v_val) {
13656 PyObject *__pyx_r = NULL;
13657 __Pyx_RefNannyDeclarations
13664 __Pyx_RefNannySetupContext(
"setU", 0);
13674 __pyx_t_1 = __pyx_v_self->nsf.N;
13675 __pyx_t_2 = __pyx_t_1;
13677 for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
13678 __pyx_v_I = __pyx_t_3;
13688 __pyx_t_4 = (__pyx_v_self->nsf.subdomain_dim[__pyx_v_I]);
13689 __pyx_t_5 = __pyx_t_4;
13691 for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
13692 __pyx_v_i = __pyx_t_6;
13701 ((__pyx_v_self->nsf.subdomain_U[__pyx_v_I])[__pyx_v_i]) = __pyx_v_val;
13716 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
13719 __Pyx_XGIVEREF(__pyx_r);
13720 __Pyx_RefNannyFinishContext();
13733static PyObject *__pyx_pw_15cpostprocessing_14NodeStarFactor_7copyData(PyObject *__pyx_v_self,
13734#
if CYTHON_VECTORCALL
13735PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13737PyObject *__pyx_args, PyObject *__pyx_kwds
13740static PyMethodDef __pyx_mdef_15cpostprocessing_14NodeStarFactor_7copyData = {
"copyData", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_14NodeStarFactor_7copyData, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
13741static PyObject *__pyx_pw_15cpostprocessing_14NodeStarFactor_7copyData(PyObject *__pyx_v_self,
13742#
if CYTHON_VECTORCALL
13743PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13745PyObject *__pyx_args, PyObject *__pyx_kwds
13748 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_other = 0;
13749 #if !CYTHON_VECTORCALL
13750 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
13752 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
13753 PyObject* values[1] = {0};
13754 int __pyx_lineno = 0;
13755 const char *__pyx_filename = NULL;
13756 int __pyx_clineno = 0;
13757 PyObject *__pyx_r = 0;
13758 __Pyx_RefNannyDeclarations
13759 __Pyx_RefNannySetupContext(
"copyData (wrapper)", 0);
13760 #if !CYTHON_VECTORCALL
13761 #if CYTHON_ASSUME_SAFE_SIZE
13762 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
13764 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
13767 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
13769 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_other,0};
13770 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
13771 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 802, __pyx_L3_error)
13772 if (__pyx_kwds_len > 0) {
13773 switch (__pyx_nargs) {
13775 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
13776 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 802, __pyx_L3_error)
13777 CYTHON_FALLTHROUGH;
13779 default:
goto __pyx_L5_argtuple_error;
13781 const Py_ssize_t kwd_pos_args = __pyx_nargs;
13782 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"copyData", 0) < (0)) __PYX_ERR(0, 802, __pyx_L3_error)
13783 for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
13784 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"copyData", 1, 1, 1, i); __PYX_ERR(0, 802, __pyx_L3_error) }
13786 }
else if (unlikely(__pyx_nargs != 1)) {
13787 goto __pyx_L5_argtuple_error;
13789 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
13790 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 802, __pyx_L3_error)
13792 __pyx_v_other = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[0]);
13794 goto __pyx_L6_skip;
13795 __pyx_L5_argtuple_error:;
13796 __Pyx_RaiseArgtupleInvalid(
"copyData", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 802, __pyx_L3_error)
13798 goto __pyx_L4_argument_unpacking_done;
13800 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13801 Py_XDECREF(values[__pyx_temp]);
13803 __Pyx_AddTraceback(
"cpostprocessing.NodeStarFactor.copyData", __pyx_clineno, __pyx_lineno, __pyx_filename);
13804 __Pyx_RefNannyFinishContext();
13806 __pyx_L4_argument_unpacking_done:;
13807 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_other), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"other", 0))) __PYX_ERR(0, 803, __pyx_L1_error)
13808 __pyx_r = __pyx_pf_15cpostprocessing_14NodeStarFactor_6copyData(((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)__pyx_v_self), __pyx_v_other);
13814 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13815 Py_XDECREF(values[__pyx_temp]);
13817 goto __pyx_L7_cleaned_up;
13819 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
13820 Py_XDECREF(values[__pyx_temp]);
13822 __pyx_L7_cleaned_up:;
13823 __Pyx_RefNannyFinishContext();
13827static PyObject *__pyx_pf_15cpostprocessing_14NodeStarFactor_6copyData(
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_other) {
13828 PyObject *__pyx_r = NULL;
13829 __Pyx_RefNannyDeclarations
13830 __Pyx_RefNannySetupContext(
"copyData", 0);
13839 (void)(
nodeStar_copy(__pyx_v_other->nsf.N, __pyx_v_other->nsf.subdomain_dim, __pyx_v_other->nsf.subdomain_L, __pyx_v_other->nsf.subdomain_R, __pyx_v_other->nsf.subdomain_U, __pyx_v_other->nsf.subdomain_pivots, __pyx_v_other->nsf.subdomain_column_pivots, (&__pyx_v_self->nsf.N), (&__pyx_v_self->nsf.subdomain_dim), (&__pyx_v_self->nsf.subdomain_L), (&__pyx_v_self->nsf.subdomain_R), (&__pyx_v_self->nsf.subdomain_U), (&__pyx_v_self->nsf.subdomain_pivots), (&__pyx_v_self->nsf.subdomain_column_pivots)));
13850 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
13851 __Pyx_XGIVEREF(__pyx_r);
13852 __Pyx_RefNannyFinishContext();
13863static PyObject *__pyx_pw_15cpostprocessing_14NodeStarFactor_9__reduce_cython__(PyObject *__pyx_v_self,
13864#
if CYTHON_VECTORCALL
13865PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13867PyObject *__pyx_args, PyObject *__pyx_kwds
13870static PyMethodDef __pyx_mdef_15cpostprocessing_14NodeStarFactor_9__reduce_cython__ = {
"__reduce_cython__", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_14NodeStarFactor_9__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
13871static PyObject *__pyx_pw_15cpostprocessing_14NodeStarFactor_9__reduce_cython__(PyObject *__pyx_v_self,
13872#
if CYTHON_VECTORCALL
13873PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13875PyObject *__pyx_args, PyObject *__pyx_kwds
13878 #if !CYTHON_VECTORCALL
13879 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
13881 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
13882 PyObject *__pyx_r = 0;
13883 __Pyx_RefNannyDeclarations
13884 __Pyx_RefNannySetupContext(
"__reduce_cython__ (wrapper)", 0);
13885 #if !CYTHON_VECTORCALL
13886 #if CYTHON_ASSUME_SAFE_SIZE
13887 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
13889 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
13892 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
13893 if (unlikely(__pyx_nargs > 0)) { __Pyx_RaiseArgtupleInvalid(
"__reduce_cython__", 1, 0, 0, __pyx_nargs);
return NULL; }
13894 const Py_ssize_t __pyx_kwds_len = unlikely(__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
13895 if (unlikely(__pyx_kwds_len < 0))
return NULL;
13896 if (unlikely(__pyx_kwds_len > 0)) {__Pyx_RejectKeywords(
"__reduce_cython__", __pyx_kwds);
return NULL;}
13897 __pyx_r = __pyx_pf_15cpostprocessing_14NodeStarFactor_8__reduce_cython__(((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)__pyx_v_self));
13900 __Pyx_RefNannyFinishContext();
13904static PyObject *__pyx_pf_15cpostprocessing_14NodeStarFactor_8__reduce_cython__(CYTHON_UNUSED
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self) {
13905 PyObject *__pyx_r = NULL;
13906 __Pyx_RefNannyDeclarations
13907 int __pyx_lineno = 0;
13908 const char *__pyx_filename = NULL;
13909 int __pyx_clineno = 0;
13910 __Pyx_RefNannySetupContext(
"__reduce_cython__", 0);
13918 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_TypeError))), __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0);
13919 __PYX_ERR(2, 2, __pyx_L1_error)
13929 __Pyx_AddTraceback(
"cpostprocessing.NodeStarFactor.__reduce_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
13931 __Pyx_XGIVEREF(__pyx_r);
13932 __Pyx_RefNannyFinishContext();
13944static PyObject *__pyx_pw_15cpostprocessing_14NodeStarFactor_11__setstate_cython__(PyObject *__pyx_v_self,
13945#
if CYTHON_VECTORCALL
13946PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13948PyObject *__pyx_args, PyObject *__pyx_kwds
13951static PyMethodDef __pyx_mdef_15cpostprocessing_14NodeStarFactor_11__setstate_cython__ = {
"__setstate_cython__", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_14NodeStarFactor_11__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
13952static PyObject *__pyx_pw_15cpostprocessing_14NodeStarFactor_11__setstate_cython__(PyObject *__pyx_v_self,
13953#
if CYTHON_VECTORCALL
13954PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
13956PyObject *__pyx_args, PyObject *__pyx_kwds
13959 CYTHON_UNUSED PyObject *__pyx_v___pyx_state = 0;
13960 #if !CYTHON_VECTORCALL
13961 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
13963 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
13964 PyObject* values[1] = {0};
13965 int __pyx_lineno = 0;
13966 const char *__pyx_filename = NULL;
13967 int __pyx_clineno = 0;
13968 PyObject *__pyx_r = 0;
13969 __Pyx_RefNannyDeclarations
13970 __Pyx_RefNannySetupContext(
"__setstate_cython__ (wrapper)", 0);
13971 #if !CYTHON_VECTORCALL
13972 #if CYTHON_ASSUME_SAFE_SIZE
13973 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
13975 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
13978 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
13980 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_pyx_state,0};
13981 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
13982 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(2, 3, __pyx_L3_error)
13983 if (__pyx_kwds_len > 0) {
13984 switch (__pyx_nargs) {
13986 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
13987 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 3, __pyx_L3_error)
13988 CYTHON_FALLTHROUGH;
13990 default:
goto __pyx_L5_argtuple_error;
13992 const Py_ssize_t kwd_pos_args = __pyx_nargs;
13993 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"__setstate_cython__", 0) < (0)) __PYX_ERR(2, 3, __pyx_L3_error)
13994 for (Py_ssize_t i = __pyx_nargs; i < 1; i++) {
13995 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"__setstate_cython__", 1, 1, 1, i); __PYX_ERR(2, 3, __pyx_L3_error) }
13997 }
else if (unlikely(__pyx_nargs != 1)) {
13998 goto __pyx_L5_argtuple_error;
14000 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
14001 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(2, 3, __pyx_L3_error)
14003 __pyx_v___pyx_state = values[0];
14005 goto __pyx_L6_skip;
14006 __pyx_L5_argtuple_error:;
14007 __Pyx_RaiseArgtupleInvalid(
"__setstate_cython__", 1, 1, 1, __pyx_nargs); __PYX_ERR(2, 3, __pyx_L3_error)
14009 goto __pyx_L4_argument_unpacking_done;
14011 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14012 Py_XDECREF(values[__pyx_temp]);
14014 __Pyx_AddTraceback(
"cpostprocessing.NodeStarFactor.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
14015 __Pyx_RefNannyFinishContext();
14017 __pyx_L4_argument_unpacking_done:;
14018 __pyx_r = __pyx_pf_15cpostprocessing_14NodeStarFactor_10__setstate_cython__(((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)__pyx_v_self), __pyx_v___pyx_state);
14021 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14022 Py_XDECREF(values[__pyx_temp]);
14024 __Pyx_RefNannyFinishContext();
14028static PyObject *__pyx_pf_15cpostprocessing_14NodeStarFactor_10__setstate_cython__(CYTHON_UNUSED
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v___pyx_state) {
14029 PyObject *__pyx_r = NULL;
14030 __Pyx_RefNannyDeclarations
14031 int __pyx_lineno = 0;
14032 const char *__pyx_filename = NULL;
14033 int __pyx_clineno = 0;
14034 __Pyx_RefNannySetupContext(
"__setstate_cython__", 0);
14041 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_TypeError))), __pyx_mstate_global->__pyx_kp_u_no_default___reduce___due_to_non, 0, 0);
14042 __PYX_ERR(2, 4, __pyx_L1_error)
14053 __Pyx_AddTraceback(
"cpostprocessing.NodeStarFactor.__setstate_cython__", __pyx_clineno, __pyx_lineno, __pyx_filename);
14055 __Pyx_XGIVEREF(__pyx_r);
14056 __Pyx_RefNannyFinishContext();
14069static PyObject *__pyx_pw_15cpostprocessing_69calculateConservationResidualPWL(PyObject *__pyx_self,
14070#
if CYTHON_VECTORCALL
14071PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14073PyObject *__pyx_args, PyObject *__pyx_kwds
14076static PyMethodDef __pyx_mdef_15cpostprocessing_69calculateConservationResidualPWL = {
"calculateConservationResidualPWL", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_69calculateConservationResidualPWL, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
14077static PyObject *__pyx_pw_15cpostprocessing_69calculateConservationResidualPWL(PyObject *__pyx_self,
14078#
if CYTHON_VECTORCALL
14079PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14081PyObject *__pyx_args, PyObject *__pyx_kwds
14084 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
14085 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
14086 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
14087 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
14088 PyArrayObject *__pyx_v_elementNodes = 0;
14089 PyArrayObject *__pyx_v_dofMapl2g = 0;
14090 PyArrayObject *__pyx_v_nodeStarElements = 0;
14091 PyArrayObject *__pyx_v_nodeStarElementNeighbors = 0;
14092 PyArrayObject *__pyx_v_nElements_node = 0;
14093 PyArrayObject *__pyx_v_fluxElementBoundaries = 0;
14094 PyArrayObject *__pyx_v_elementResidual = 0;
14095 PyArrayObject *__pyx_v_vAverage = 0;
14096 PyArrayObject *__pyx_v_dx = 0;
14097 PyArrayObject *__pyx_v_w = 0;
14098 PyArrayObject *__pyx_v_n = 0;
14099 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
14100 PyArrayObject *__pyx_v_conservationResidual = 0;
14101 PyArrayObject *__pyx_v_vConservative = 0;
14102 PyArrayObject *__pyx_v_vConservative_element = 0;
14103 #if !CYTHON_VECTORCALL
14104 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
14106 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
14107 PyObject* values[19] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
14108 int __pyx_lineno = 0;
14109 const char *__pyx_filename = NULL;
14110 int __pyx_clineno = 0;
14111 PyObject *__pyx_r = 0;
14112 __Pyx_RefNannyDeclarations
14113 __Pyx_RefNannySetupContext(
"calculateConservationResidualPWL (wrapper)", 0);
14114 #if !CYTHON_VECTORCALL
14115 #if CYTHON_ASSUME_SAFE_SIZE
14116 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
14118 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
14121 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
14123 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_elementNodes,&__pyx_mstate_global->__pyx_n_u_dofMapl2g,&__pyx_mstate_global->__pyx_n_u_nodeStarElements,&__pyx_mstate_global->__pyx_n_u_nodeStarElementNeighbors,&__pyx_mstate_global->__pyx_n_u_nElements_node,&__pyx_mstate_global->__pyx_n_u_fluxElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementResidual,&__pyx_mstate_global->__pyx_n_u_vAverage,&__pyx_mstate_global->__pyx_n_u_dx,&__pyx_mstate_global->__pyx_n_u_w,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,&__pyx_mstate_global->__pyx_n_u_conservationResidual,&__pyx_mstate_global->__pyx_n_u_vConservative,&__pyx_mstate_global->__pyx_n_u_vConservative_element,0};
14124 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
14125 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 819, __pyx_L3_error)
14126 if (__pyx_kwds_len > 0) {
14127 switch (__pyx_nargs) {
14129 values[18] = __Pyx_ArgRef_FASTCALL(__pyx_args, 18);
14130 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[18])) __PYX_ERR(0, 819, __pyx_L3_error)
14131 CYTHON_FALLTHROUGH;
14133 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
14134 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 819, __pyx_L3_error)
14135 CYTHON_FALLTHROUGH;
14137 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
14138 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 819, __pyx_L3_error)
14139 CYTHON_FALLTHROUGH;
14141 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
14142 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 819, __pyx_L3_error)
14143 CYTHON_FALLTHROUGH;
14145 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
14146 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 819, __pyx_L3_error)
14147 CYTHON_FALLTHROUGH;
14149 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
14150 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 819, __pyx_L3_error)
14151 CYTHON_FALLTHROUGH;
14153 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
14154 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 819, __pyx_L3_error)
14155 CYTHON_FALLTHROUGH;
14157 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
14158 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 819, __pyx_L3_error)
14159 CYTHON_FALLTHROUGH;
14161 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
14162 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 819, __pyx_L3_error)
14163 CYTHON_FALLTHROUGH;
14165 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
14166 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 819, __pyx_L3_error)
14167 CYTHON_FALLTHROUGH;
14169 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
14170 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 819, __pyx_L3_error)
14171 CYTHON_FALLTHROUGH;
14173 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
14174 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 819, __pyx_L3_error)
14175 CYTHON_FALLTHROUGH;
14177 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
14178 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 819, __pyx_L3_error)
14179 CYTHON_FALLTHROUGH;
14181 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
14182 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 819, __pyx_L3_error)
14183 CYTHON_FALLTHROUGH;
14185 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
14186 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 819, __pyx_L3_error)
14187 CYTHON_FALLTHROUGH;
14189 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
14190 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 819, __pyx_L3_error)
14191 CYTHON_FALLTHROUGH;
14193 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
14194 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 819, __pyx_L3_error)
14195 CYTHON_FALLTHROUGH;
14197 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
14198 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 819, __pyx_L3_error)
14199 CYTHON_FALLTHROUGH;
14201 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
14202 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 819, __pyx_L3_error)
14203 CYTHON_FALLTHROUGH;
14205 default:
goto __pyx_L5_argtuple_error;
14207 const Py_ssize_t kwd_pos_args = __pyx_nargs;
14208 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationResidualPWL", 0) < (0)) __PYX_ERR(0, 819, __pyx_L3_error)
14209 for (Py_ssize_t i = __pyx_nargs; i < 19; i++) {
14210 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualPWL", 1, 19, 19, i); __PYX_ERR(0, 819, __pyx_L3_error) }
14212 }
else if (unlikely(__pyx_nargs != 19)) {
14213 goto __pyx_L5_argtuple_error;
14215 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
14216 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 819, __pyx_L3_error)
14217 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
14218 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 819, __pyx_L3_error)
14219 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
14220 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 819, __pyx_L3_error)
14221 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
14222 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 819, __pyx_L3_error)
14223 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
14224 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 819, __pyx_L3_error)
14225 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
14226 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 819, __pyx_L3_error)
14227 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
14228 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 819, __pyx_L3_error)
14229 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
14230 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 819, __pyx_L3_error)
14231 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
14232 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 819, __pyx_L3_error)
14233 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
14234 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 819, __pyx_L3_error)
14235 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
14236 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 819, __pyx_L3_error)
14237 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
14238 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 819, __pyx_L3_error)
14239 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
14240 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 819, __pyx_L3_error)
14241 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
14242 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 819, __pyx_L3_error)
14243 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
14244 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 819, __pyx_L3_error)
14245 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
14246 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 819, __pyx_L3_error)
14247 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
14248 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 819, __pyx_L3_error)
14249 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
14250 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 819, __pyx_L3_error)
14251 values[18] = __Pyx_ArgRef_FASTCALL(__pyx_args, 18);
14252 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[18])) __PYX_ERR(0, 819, __pyx_L3_error)
14254 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[0]);
14255 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[1]);
14256 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[2]);
14257 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[3]);
14258 __pyx_v_elementNodes = ((PyArrayObject *)values[4]);
14259 __pyx_v_dofMapl2g = ((PyArrayObject *)values[5]);
14260 __pyx_v_nodeStarElements = ((PyArrayObject *)values[6]);
14261 __pyx_v_nodeStarElementNeighbors = ((PyArrayObject *)values[7]);
14262 __pyx_v_nElements_node = ((PyArrayObject *)values[8]);
14263 __pyx_v_fluxElementBoundaries = ((PyArrayObject *)values[9]);
14264 __pyx_v_elementResidual = ((PyArrayObject *)values[10]);
14265 __pyx_v_vAverage = ((PyArrayObject *)values[11]);
14266 __pyx_v_dx = ((PyArrayObject *)values[12]);
14267 __pyx_v_w = ((PyArrayObject *)values[13]);
14268 __pyx_v_n = ((PyArrayObject *)values[14]);
14269 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[15]);
14270 __pyx_v_conservationResidual = ((PyArrayObject *)values[16]);
14271 __pyx_v_vConservative = ((PyArrayObject *)values[17]);
14272 __pyx_v_vConservative_element = ((PyArrayObject *)values[18]);
14274 goto __pyx_L6_skip;
14275 __pyx_L5_argtuple_error:;
14276 __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualPWL", 1, 19, 19, __pyx_nargs); __PYX_ERR(0, 819, __pyx_L3_error)
14278 goto __pyx_L4_argument_unpacking_done;
14280 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14281 Py_XDECREF(values[__pyx_temp]);
14283 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationResidualPWL", __pyx_clineno, __pyx_lineno, __pyx_filename);
14284 __Pyx_RefNannyFinishContext();
14286 __pyx_L4_argument_unpacking_done:;
14287 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 819, __pyx_L1_error)
14288 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 820, __pyx_L1_error)
14289 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 821, __pyx_L1_error)
14290 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 822, __pyx_L1_error)
14291 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodes", 0))) __PYX_ERR(0, 823, __pyx_L1_error)
14292 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dofMapl2g), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dofMapl2g", 0))) __PYX_ERR(0, 824, __pyx_L1_error)
14293 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElements", 0))) __PYX_ERR(0, 825, __pyx_L1_error)
14294 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElementNeighbors), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElementNeighbors", 0))) __PYX_ERR(0, 826, __pyx_L1_error)
14295 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_node), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_node", 0))) __PYX_ERR(0, 827, __pyx_L1_error)
14296 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxElementBoundaries", 0))) __PYX_ERR(0, 828, __pyx_L1_error)
14297 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementResidual", 0))) __PYX_ERR(0, 829, __pyx_L1_error)
14298 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vAverage), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vAverage", 0))) __PYX_ERR(0, 830, __pyx_L1_error)
14299 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dx), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dx", 0))) __PYX_ERR(0, 831, __pyx_L1_error)
14300 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w", 0))) __PYX_ERR(0, 832, __pyx_L1_error)
14301 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 833, __pyx_L1_error)
14302 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 834, __pyx_L1_error)
14303 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_conservationResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"conservationResidual", 0))) __PYX_ERR(0, 835, __pyx_L1_error)
14304 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vConservative), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vConservative", 0))) __PYX_ERR(0, 836, __pyx_L1_error)
14305 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vConservative_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vConservative_element", 0))) __PYX_ERR(0, 837, __pyx_L1_error)
14306 __pyx_r = __pyx_pf_15cpostprocessing_68calculateConservationResidualPWL(__pyx_self, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_elementNodes, __pyx_v_dofMapl2g, __pyx_v_nodeStarElements, __pyx_v_nodeStarElementNeighbors, __pyx_v_nElements_node, __pyx_v_fluxElementBoundaries, __pyx_v_elementResidual, __pyx_v_vAverage, __pyx_v_dx, __pyx_v_w, __pyx_v_n, __pyx_v_nodeStarFactor, __pyx_v_conservationResidual, __pyx_v_vConservative, __pyx_v_vConservative_element);
14312 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14313 Py_XDECREF(values[__pyx_temp]);
14315 goto __pyx_L7_cleaned_up;
14317 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14318 Py_XDECREF(values[__pyx_temp]);
14320 __pyx_L7_cleaned_up:;
14321 __Pyx_RefNannyFinishContext();
14325static PyObject *__pyx_pf_15cpostprocessing_68calculateConservationResidualPWL(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_dofMapl2g, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_vAverage, PyArrayObject *__pyx_v_dx, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_conservationResidual, PyArrayObject *__pyx_v_vConservative, PyArrayObject *__pyx_v_vConservative_element) {
14326 PyObject *__pyx_r = NULL;
14327 __Pyx_RefNannyDeclarations
14328 __Pyx_RefNannySetupContext(
"calculateConservationResidualPWL", 0);
14337 calculateConservationResidualPWL((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dofMapl2g)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dofMapl2g)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElementNeighbors)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_node)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxElementBoundaries)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vAverage)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dx)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), (&__pyx_v_nodeStarFactor->nsf), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_conservationResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vConservative)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vConservative_element)));
14348 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
14349 __Pyx_XGIVEREF(__pyx_r);
14350 __Pyx_RefNannyFinishContext();
14363static PyObject *__pyx_pw_15cpostprocessing_71calculateConservationJacobianPWL(PyObject *__pyx_self,
14364#
if CYTHON_VECTORCALL
14365PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14367PyObject *__pyx_args, PyObject *__pyx_kwds
14370static PyMethodDef __pyx_mdef_15cpostprocessing_71calculateConservationJacobianPWL = {
"calculateConservationJacobianPWL", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_71calculateConservationJacobianPWL, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
14371static PyObject *__pyx_pw_15cpostprocessing_71calculateConservationJacobianPWL(PyObject *__pyx_self,
14372#
if CYTHON_VECTORCALL
14373PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14375PyObject *__pyx_args, PyObject *__pyx_kwds
14378 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
14379 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
14380 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
14381 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
14382 PyArrayObject *__pyx_v_elementNodes = 0;
14383 PyArrayObject *__pyx_v_dofMapl2g = 0;
14384 PyArrayObject *__pyx_v_dofStarElements = 0;
14385 PyArrayObject *__pyx_v_dofStarElementNeighbors = 0;
14386 PyArrayObject *__pyx_v_nElements_dof = 0;
14387 PyArrayObject *__pyx_v_internalNodes = 0;
14388 PyArrayObject *__pyx_v_fluxElementBoundaries = 0;
14389 PyArrayObject *__pyx_v_fluxBoundaryNodes = 0;
14390 PyArrayObject *__pyx_v_w = 0;
14391 PyArrayObject *__pyx_v_n = 0;
14392 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
14393 #if !CYTHON_VECTORCALL
14394 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
14396 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
14397 PyObject* values[15] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
14398 int __pyx_lineno = 0;
14399 const char *__pyx_filename = NULL;
14400 int __pyx_clineno = 0;
14401 PyObject *__pyx_r = 0;
14402 __Pyx_RefNannyDeclarations
14403 __Pyx_RefNannySetupContext(
"calculateConservationJacobianPWL (wrapper)", 0);
14404 #if !CYTHON_VECTORCALL
14405 #if CYTHON_ASSUME_SAFE_SIZE
14406 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
14408 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
14411 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
14413 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_elementNodes,&__pyx_mstate_global->__pyx_n_u_dofMapl2g,&__pyx_mstate_global->__pyx_n_u_dofStarElements,&__pyx_mstate_global->__pyx_n_u_dofStarElementNeighbors,&__pyx_mstate_global->__pyx_n_u_nElements_dof,&__pyx_mstate_global->__pyx_n_u_internalNodes,&__pyx_mstate_global->__pyx_n_u_fluxElementBoundaries,&__pyx_mstate_global->__pyx_n_u_fluxBoundaryNodes,&__pyx_mstate_global->__pyx_n_u_w,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,0};
14414 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
14415 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 874, __pyx_L3_error)
14416 if (__pyx_kwds_len > 0) {
14417 switch (__pyx_nargs) {
14419 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
14420 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 874, __pyx_L3_error)
14421 CYTHON_FALLTHROUGH;
14423 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
14424 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 874, __pyx_L3_error)
14425 CYTHON_FALLTHROUGH;
14427 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
14428 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 874, __pyx_L3_error)
14429 CYTHON_FALLTHROUGH;
14431 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
14432 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 874, __pyx_L3_error)
14433 CYTHON_FALLTHROUGH;
14435 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
14436 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 874, __pyx_L3_error)
14437 CYTHON_FALLTHROUGH;
14439 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
14440 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 874, __pyx_L3_error)
14441 CYTHON_FALLTHROUGH;
14443 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
14444 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 874, __pyx_L3_error)
14445 CYTHON_FALLTHROUGH;
14447 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
14448 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 874, __pyx_L3_error)
14449 CYTHON_FALLTHROUGH;
14451 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
14452 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 874, __pyx_L3_error)
14453 CYTHON_FALLTHROUGH;
14455 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
14456 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 874, __pyx_L3_error)
14457 CYTHON_FALLTHROUGH;
14459 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
14460 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 874, __pyx_L3_error)
14461 CYTHON_FALLTHROUGH;
14463 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
14464 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 874, __pyx_L3_error)
14465 CYTHON_FALLTHROUGH;
14467 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
14468 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 874, __pyx_L3_error)
14469 CYTHON_FALLTHROUGH;
14471 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
14472 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 874, __pyx_L3_error)
14473 CYTHON_FALLTHROUGH;
14475 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
14476 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 874, __pyx_L3_error)
14477 CYTHON_FALLTHROUGH;
14479 default:
goto __pyx_L5_argtuple_error;
14481 const Py_ssize_t kwd_pos_args = __pyx_nargs;
14482 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationJacobianPWL", 0) < (0)) __PYX_ERR(0, 874, __pyx_L3_error)
14483 for (Py_ssize_t i = __pyx_nargs; i < 15; i++) {
14484 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationJacobianPWL", 1, 15, 15, i); __PYX_ERR(0, 874, __pyx_L3_error) }
14486 }
else if (unlikely(__pyx_nargs != 15)) {
14487 goto __pyx_L5_argtuple_error;
14489 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
14490 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 874, __pyx_L3_error)
14491 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
14492 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 874, __pyx_L3_error)
14493 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
14494 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 874, __pyx_L3_error)
14495 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
14496 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 874, __pyx_L3_error)
14497 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
14498 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 874, __pyx_L3_error)
14499 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
14500 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 874, __pyx_L3_error)
14501 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
14502 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 874, __pyx_L3_error)
14503 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
14504 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 874, __pyx_L3_error)
14505 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
14506 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 874, __pyx_L3_error)
14507 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
14508 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 874, __pyx_L3_error)
14509 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
14510 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 874, __pyx_L3_error)
14511 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
14512 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 874, __pyx_L3_error)
14513 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
14514 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 874, __pyx_L3_error)
14515 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
14516 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 874, __pyx_L3_error)
14517 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
14518 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 874, __pyx_L3_error)
14520 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[0]);
14521 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[1]);
14522 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[2]);
14523 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[3]);
14524 __pyx_v_elementNodes = ((PyArrayObject *)values[4]);
14525 __pyx_v_dofMapl2g = ((PyArrayObject *)values[5]);
14526 __pyx_v_dofStarElements = ((PyArrayObject *)values[6]);
14527 __pyx_v_dofStarElementNeighbors = ((PyArrayObject *)values[7]);
14528 __pyx_v_nElements_dof = ((PyArrayObject *)values[8]);
14529 __pyx_v_internalNodes = ((PyArrayObject *)values[9]);
14530 __pyx_v_fluxElementBoundaries = ((PyArrayObject *)values[10]);
14531 __pyx_v_fluxBoundaryNodes = ((PyArrayObject *)values[11]);
14532 __pyx_v_w = ((PyArrayObject *)values[12]);
14533 __pyx_v_n = ((PyArrayObject *)values[13]);
14534 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[14]);
14536 goto __pyx_L6_skip;
14537 __pyx_L5_argtuple_error:;
14538 __Pyx_RaiseArgtupleInvalid(
"calculateConservationJacobianPWL", 1, 15, 15, __pyx_nargs); __PYX_ERR(0, 874, __pyx_L3_error)
14540 goto __pyx_L4_argument_unpacking_done;
14542 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14543 Py_XDECREF(values[__pyx_temp]);
14545 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationJacobianPWL", __pyx_clineno, __pyx_lineno, __pyx_filename);
14546 __Pyx_RefNannyFinishContext();
14548 __pyx_L4_argument_unpacking_done:;
14549 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 874, __pyx_L1_error)
14550 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 875, __pyx_L1_error)
14551 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 876, __pyx_L1_error)
14552 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 877, __pyx_L1_error)
14553 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodes", 0))) __PYX_ERR(0, 878, __pyx_L1_error)
14554 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dofMapl2g), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dofMapl2g", 0))) __PYX_ERR(0, 879, __pyx_L1_error)
14555 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dofStarElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dofStarElements", 0))) __PYX_ERR(0, 880, __pyx_L1_error)
14556 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dofStarElementNeighbors), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dofStarElementNeighbors", 0))) __PYX_ERR(0, 881, __pyx_L1_error)
14557 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_dof), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_dof", 0))) __PYX_ERR(0, 882, __pyx_L1_error)
14558 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_internalNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"internalNodes", 0))) __PYX_ERR(0, 883, __pyx_L1_error)
14559 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxElementBoundaries", 0))) __PYX_ERR(0, 884, __pyx_L1_error)
14560 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxBoundaryNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxBoundaryNodes", 0))) __PYX_ERR(0, 885, __pyx_L1_error)
14561 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w", 0))) __PYX_ERR(0, 886, __pyx_L1_error)
14562 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 887, __pyx_L1_error)
14563 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 888, __pyx_L1_error)
14564 __pyx_r = __pyx_pf_15cpostprocessing_70calculateConservationJacobianPWL(__pyx_self, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_elementNodes, __pyx_v_dofMapl2g, __pyx_v_dofStarElements, __pyx_v_dofStarElementNeighbors, __pyx_v_nElements_dof, __pyx_v_internalNodes, __pyx_v_fluxElementBoundaries, __pyx_v_fluxBoundaryNodes, __pyx_v_w, __pyx_v_n, __pyx_v_nodeStarFactor);
14570 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14571 Py_XDECREF(values[__pyx_temp]);
14573 goto __pyx_L7_cleaned_up;
14575 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14576 Py_XDECREF(values[__pyx_temp]);
14578 __pyx_L7_cleaned_up:;
14579 __Pyx_RefNannyFinishContext();
14583static PyObject *__pyx_pf_15cpostprocessing_70calculateConservationJacobianPWL(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_dofMapl2g, PyArrayObject *__pyx_v_dofStarElements, PyArrayObject *__pyx_v_dofStarElementNeighbors, PyArrayObject *__pyx_v_nElements_dof, PyArrayObject *__pyx_v_internalNodes, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_fluxBoundaryNodes, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor) {
14584 PyObject *__pyx_r = NULL;
14585 __Pyx_RefNannyDeclarations
14586 __Pyx_RefNannySetupContext(
"calculateConservationJacobianPWL", 0);
14595 calculateConservationJacobianPWL((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_nElements_dof)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_internalNodes)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dofMapl2g)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dofMapl2g)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dofStarElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dofStarElementNeighbors)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_dof)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_internalNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxBoundaryNodes)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), (&__pyx_v_nodeStarFactor->nsf));
14606 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
14607 __Pyx_XGIVEREF(__pyx_r);
14608 __Pyx_RefNannyFinishContext();
14621static PyObject *__pyx_pw_15cpostprocessing_73calculateConservationFluxPWL(PyObject *__pyx_self,
14622#
if CYTHON_VECTORCALL
14623PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14625PyObject *__pyx_args, PyObject *__pyx_kwds
14628static PyMethodDef __pyx_mdef_15cpostprocessing_73calculateConservationFluxPWL = {
"calculateConservationFluxPWL", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_73calculateConservationFluxPWL, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
14629static PyObject *__pyx_pw_15cpostprocessing_73calculateConservationFluxPWL(PyObject *__pyx_self,
14630#
if CYTHON_VECTORCALL
14631PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14633PyObject *__pyx_args, PyObject *__pyx_kwds
14636 PyArrayObject *__pyx_v_nElements_node = 0;
14637 PyArrayObject *__pyx_v_internalNodes = 0;
14638 PyArrayObject *__pyx_v_fluxBoundaryNodes = 0;
14639 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
14640 #if !CYTHON_VECTORCALL
14641 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
14643 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
14644 PyObject* values[4] = {0,0,0,0};
14645 int __pyx_lineno = 0;
14646 const char *__pyx_filename = NULL;
14647 int __pyx_clineno = 0;
14648 PyObject *__pyx_r = 0;
14649 __Pyx_RefNannyDeclarations
14650 __Pyx_RefNannySetupContext(
"calculateConservationFluxPWL (wrapper)", 0);
14651 #if !CYTHON_VECTORCALL
14652 #if CYTHON_ASSUME_SAFE_SIZE
14653 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
14655 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
14658 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
14660 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nElements_node,&__pyx_mstate_global->__pyx_n_u_internalNodes,&__pyx_mstate_global->__pyx_n_u_fluxBoundaryNodes,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,0};
14661 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
14662 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 915, __pyx_L3_error)
14663 if (__pyx_kwds_len > 0) {
14664 switch (__pyx_nargs) {
14666 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
14667 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 915, __pyx_L3_error)
14668 CYTHON_FALLTHROUGH;
14670 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
14671 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 915, __pyx_L3_error)
14672 CYTHON_FALLTHROUGH;
14674 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
14675 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 915, __pyx_L3_error)
14676 CYTHON_FALLTHROUGH;
14678 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
14679 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 915, __pyx_L3_error)
14680 CYTHON_FALLTHROUGH;
14682 default:
goto __pyx_L5_argtuple_error;
14684 const Py_ssize_t kwd_pos_args = __pyx_nargs;
14685 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationFluxPWL", 0) < (0)) __PYX_ERR(0, 915, __pyx_L3_error)
14686 for (Py_ssize_t i = __pyx_nargs; i < 4; i++) {
14687 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationFluxPWL", 1, 4, 4, i); __PYX_ERR(0, 915, __pyx_L3_error) }
14689 }
else if (unlikely(__pyx_nargs != 4)) {
14690 goto __pyx_L5_argtuple_error;
14692 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
14693 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 915, __pyx_L3_error)
14694 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
14695 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 915, __pyx_L3_error)
14696 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
14697 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 915, __pyx_L3_error)
14698 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
14699 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 915, __pyx_L3_error)
14701 __pyx_v_nElements_node = ((PyArrayObject *)values[0]);
14702 __pyx_v_internalNodes = ((PyArrayObject *)values[1]);
14703 __pyx_v_fluxBoundaryNodes = ((PyArrayObject *)values[2]);
14704 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[3]);
14706 goto __pyx_L6_skip;
14707 __pyx_L5_argtuple_error:;
14708 __Pyx_RaiseArgtupleInvalid(
"calculateConservationFluxPWL", 1, 4, 4, __pyx_nargs); __PYX_ERR(0, 915, __pyx_L3_error)
14710 goto __pyx_L4_argument_unpacking_done;
14712 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14713 Py_XDECREF(values[__pyx_temp]);
14715 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationFluxPWL", __pyx_clineno, __pyx_lineno, __pyx_filename);
14716 __Pyx_RefNannyFinishContext();
14718 __pyx_L4_argument_unpacking_done:;
14719 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_node), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_node", 0))) __PYX_ERR(0, 915, __pyx_L1_error)
14720 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_internalNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"internalNodes", 0))) __PYX_ERR(0, 916, __pyx_L1_error)
14721 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxBoundaryNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxBoundaryNodes", 0))) __PYX_ERR(0, 917, __pyx_L1_error)
14722 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 918, __pyx_L1_error)
14723 __pyx_r = __pyx_pf_15cpostprocessing_72calculateConservationFluxPWL(__pyx_self, __pyx_v_nElements_node, __pyx_v_internalNodes, __pyx_v_fluxBoundaryNodes, __pyx_v_nodeStarFactor);
14729 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14730 Py_XDECREF(values[__pyx_temp]);
14732 goto __pyx_L7_cleaned_up;
14734 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14735 Py_XDECREF(values[__pyx_temp]);
14737 __pyx_L7_cleaned_up:;
14738 __Pyx_RefNannyFinishContext();
14742static PyObject *__pyx_pf_15cpostprocessing_72calculateConservationFluxPWL(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_internalNodes, PyArrayObject *__pyx_v_fluxBoundaryNodes,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor) {
14743 PyObject *__pyx_r = NULL;
14744 __Pyx_RefNannyDeclarations
14745 __Pyx_RefNannySetupContext(
"calculateConservationFluxPWL", 0);
14754 calculateConservationFluxPWL((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_nElements_node)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_internalNodes)[0]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_node)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_internalNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxBoundaryNodes)), (&__pyx_v_nodeStarFactor->nsf));
14765 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
14766 __Pyx_XGIVEREF(__pyx_r);
14767 __Pyx_RefNannyFinishContext();
14780static PyObject *__pyx_pw_15cpostprocessing_75calculateConservationFluxPWL_noNeumannFix(PyObject *__pyx_self,
14781#
if CYTHON_VECTORCALL
14782PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14784PyObject *__pyx_args, PyObject *__pyx_kwds
14787static PyMethodDef __pyx_mdef_15cpostprocessing_75calculateConservationFluxPWL_noNeumannFix = {
"calculateConservationFluxPWL_noNeumannFix", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_75calculateConservationFluxPWL_noNeumannFix, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
14788static PyObject *__pyx_pw_15cpostprocessing_75calculateConservationFluxPWL_noNeumannFix(PyObject *__pyx_self,
14789#
if CYTHON_VECTORCALL
14790PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14792PyObject *__pyx_args, PyObject *__pyx_kwds
14795 PyArrayObject *__pyx_v_nElements_node = 0;
14796 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
14797 #if !CYTHON_VECTORCALL
14798 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
14800 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
14801 PyObject* values[2] = {0,0};
14802 int __pyx_lineno = 0;
14803 const char *__pyx_filename = NULL;
14804 int __pyx_clineno = 0;
14805 PyObject *__pyx_r = 0;
14806 __Pyx_RefNannyDeclarations
14807 __Pyx_RefNannySetupContext(
"calculateConservationFluxPWL_noNeumannFix (wrapper)", 0);
14808 #if !CYTHON_VECTORCALL
14809 #if CYTHON_ASSUME_SAFE_SIZE
14810 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
14812 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
14815 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
14817 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nElements_node,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,0};
14818 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
14819 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 926, __pyx_L3_error)
14820 if (__pyx_kwds_len > 0) {
14821 switch (__pyx_nargs) {
14823 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
14824 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 926, __pyx_L3_error)
14825 CYTHON_FALLTHROUGH;
14827 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
14828 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 926, __pyx_L3_error)
14829 CYTHON_FALLTHROUGH;
14831 default:
goto __pyx_L5_argtuple_error;
14833 const Py_ssize_t kwd_pos_args = __pyx_nargs;
14834 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationFluxPWL_noNeumannFix", 0) < (0)) __PYX_ERR(0, 926, __pyx_L3_error)
14835 for (Py_ssize_t i = __pyx_nargs; i < 2; i++) {
14836 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationFluxPWL_noNeumannFix", 1, 2, 2, i); __PYX_ERR(0, 926, __pyx_L3_error) }
14838 }
else if (unlikely(__pyx_nargs != 2)) {
14839 goto __pyx_L5_argtuple_error;
14841 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
14842 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 926, __pyx_L3_error)
14843 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
14844 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 926, __pyx_L3_error)
14846 __pyx_v_nElements_node = ((PyArrayObject *)values[0]);
14847 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[1]);
14849 goto __pyx_L6_skip;
14850 __pyx_L5_argtuple_error:;
14851 __Pyx_RaiseArgtupleInvalid(
"calculateConservationFluxPWL_noNeumannFix", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 926, __pyx_L3_error)
14853 goto __pyx_L4_argument_unpacking_done;
14855 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14856 Py_XDECREF(values[__pyx_temp]);
14858 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationFluxPWL_noNeumannFix", __pyx_clineno, __pyx_lineno, __pyx_filename);
14859 __Pyx_RefNannyFinishContext();
14861 __pyx_L4_argument_unpacking_done:;
14862 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_node), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_node", 0))) __PYX_ERR(0, 926, __pyx_L1_error)
14863 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 927, __pyx_L1_error)
14864 __pyx_r = __pyx_pf_15cpostprocessing_74calculateConservationFluxPWL_noNeumannFix(__pyx_self, __pyx_v_nElements_node, __pyx_v_nodeStarFactor);
14870 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14871 Py_XDECREF(values[__pyx_temp]);
14873 goto __pyx_L7_cleaned_up;
14875 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
14876 Py_XDECREF(values[__pyx_temp]);
14878 __pyx_L7_cleaned_up:;
14879 __Pyx_RefNannyFinishContext();
14883static PyObject *__pyx_pf_15cpostprocessing_74calculateConservationFluxPWL_noNeumannFix(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_nElements_node,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor) {
14884 PyObject *__pyx_r = NULL;
14885 __Pyx_RefNannyDeclarations
14886 __Pyx_RefNannySetupContext(
"calculateConservationFluxPWL_noNeumannFix", 0);
14895 calculateConservationFluxPWL_noNeumannFix((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_nElements_node)[0]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_node)), (&__pyx_v_nodeStarFactor->nsf));
14906 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
14907 __Pyx_XGIVEREF(__pyx_r);
14908 __Pyx_RefNannyFinishContext();
14921static PyObject *__pyx_pw_15cpostprocessing_77calculateConservationResidualPWL_opt(PyObject *__pyx_self,
14922#
if CYTHON_VECTORCALL
14923PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14925PyObject *__pyx_args, PyObject *__pyx_kwds
14928static PyMethodDef __pyx_mdef_15cpostprocessing_77calculateConservationResidualPWL_opt = {
"calculateConservationResidualPWL_opt", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_77calculateConservationResidualPWL_opt, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
14929static PyObject *__pyx_pw_15cpostprocessing_77calculateConservationResidualPWL_opt(PyObject *__pyx_self,
14930#
if CYTHON_VECTORCALL
14931PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
14933PyObject *__pyx_args, PyObject *__pyx_kwds
14936 int __pyx_v_nNodes_owned;
14937 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
14938 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
14939 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
14940 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
14941 PyArrayObject *__pyx_v_elementNodes = 0;
14942 PyArrayObject *__pyx_v_nodeStarElements = 0;
14943 PyArrayObject *__pyx_v_nodeStarElementNeighbors = 0;
14944 PyArrayObject *__pyx_v_nElements_node = 0;
14945 PyArrayObject *__pyx_v_fluxElementBoundaries = 0;
14946 PyArrayObject *__pyx_v_elementResidual = 0;
14947 PyArrayObject *__pyx_v_vAverage = 0;
14948 PyArrayObject *__pyx_v_dx = 0;
14949 PyArrayObject *__pyx_v_w = 0;
14950 PyArrayObject *__pyx_v_n = 0;
14951 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
14952 PyArrayObject *__pyx_v_conservationResidual = 0;
14953 PyArrayObject *__pyx_v_vConservative = 0;
14954 PyArrayObject *__pyx_v_vConservative_element = 0;
14955 #if !CYTHON_VECTORCALL
14956 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
14958 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
14959 PyObject* values[19] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
14960 int __pyx_lineno = 0;
14961 const char *__pyx_filename = NULL;
14962 int __pyx_clineno = 0;
14963 PyObject *__pyx_r = 0;
14964 __Pyx_RefNannyDeclarations
14965 __Pyx_RefNannySetupContext(
"calculateConservationResidualPWL_opt (wrapper)", 0);
14966 #if !CYTHON_VECTORCALL
14967 #if CYTHON_ASSUME_SAFE_SIZE
14968 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
14970 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
14973 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
14975 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nNodes_owned,&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_elementNodes,&__pyx_mstate_global->__pyx_n_u_nodeStarElements,&__pyx_mstate_global->__pyx_n_u_nodeStarElementNeighbors,&__pyx_mstate_global->__pyx_n_u_nElements_node,&__pyx_mstate_global->__pyx_n_u_fluxElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementResidual,&__pyx_mstate_global->__pyx_n_u_vAverage,&__pyx_mstate_global->__pyx_n_u_dx,&__pyx_mstate_global->__pyx_n_u_w,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,&__pyx_mstate_global->__pyx_n_u_conservationResidual,&__pyx_mstate_global->__pyx_n_u_vConservative,&__pyx_mstate_global->__pyx_n_u_vConservative_element,0};
14976 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
14977 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 932, __pyx_L3_error)
14978 if (__pyx_kwds_len > 0) {
14979 switch (__pyx_nargs) {
14981 values[18] = __Pyx_ArgRef_FASTCALL(__pyx_args, 18);
14982 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[18])) __PYX_ERR(0, 932, __pyx_L3_error)
14983 CYTHON_FALLTHROUGH;
14985 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
14986 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 932, __pyx_L3_error)
14987 CYTHON_FALLTHROUGH;
14989 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
14990 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 932, __pyx_L3_error)
14991 CYTHON_FALLTHROUGH;
14993 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
14994 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 932, __pyx_L3_error)
14995 CYTHON_FALLTHROUGH;
14997 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
14998 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 932, __pyx_L3_error)
14999 CYTHON_FALLTHROUGH;
15001 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
15002 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 932, __pyx_L3_error)
15003 CYTHON_FALLTHROUGH;
15005 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
15006 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 932, __pyx_L3_error)
15007 CYTHON_FALLTHROUGH;
15009 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
15010 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 932, __pyx_L3_error)
15011 CYTHON_FALLTHROUGH;
15013 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
15014 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 932, __pyx_L3_error)
15015 CYTHON_FALLTHROUGH;
15017 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
15018 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 932, __pyx_L3_error)
15019 CYTHON_FALLTHROUGH;
15021 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
15022 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 932, __pyx_L3_error)
15023 CYTHON_FALLTHROUGH;
15025 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
15026 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 932, __pyx_L3_error)
15027 CYTHON_FALLTHROUGH;
15029 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
15030 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 932, __pyx_L3_error)
15031 CYTHON_FALLTHROUGH;
15033 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
15034 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 932, __pyx_L3_error)
15035 CYTHON_FALLTHROUGH;
15037 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
15038 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 932, __pyx_L3_error)
15039 CYTHON_FALLTHROUGH;
15041 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
15042 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 932, __pyx_L3_error)
15043 CYTHON_FALLTHROUGH;
15045 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
15046 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 932, __pyx_L3_error)
15047 CYTHON_FALLTHROUGH;
15049 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15050 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 932, __pyx_L3_error)
15051 CYTHON_FALLTHROUGH;
15053 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15054 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 932, __pyx_L3_error)
15055 CYTHON_FALLTHROUGH;
15057 default:
goto __pyx_L5_argtuple_error;
15059 const Py_ssize_t kwd_pos_args = __pyx_nargs;
15060 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationResidualPWL_opt", 0) < (0)) __PYX_ERR(0, 932, __pyx_L3_error)
15061 for (Py_ssize_t i = __pyx_nargs; i < 19; i++) {
15062 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualPWL_opt", 1, 19, 19, i); __PYX_ERR(0, 932, __pyx_L3_error) }
15064 }
else if (unlikely(__pyx_nargs != 19)) {
15065 goto __pyx_L5_argtuple_error;
15067 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15068 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 932, __pyx_L3_error)
15069 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15070 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 932, __pyx_L3_error)
15071 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
15072 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 932, __pyx_L3_error)
15073 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
15074 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 932, __pyx_L3_error)
15075 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
15076 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 932, __pyx_L3_error)
15077 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
15078 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 932, __pyx_L3_error)
15079 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
15080 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 932, __pyx_L3_error)
15081 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
15082 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 932, __pyx_L3_error)
15083 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
15084 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 932, __pyx_L3_error)
15085 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
15086 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 932, __pyx_L3_error)
15087 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
15088 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 932, __pyx_L3_error)
15089 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
15090 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 932, __pyx_L3_error)
15091 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
15092 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 932, __pyx_L3_error)
15093 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
15094 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 932, __pyx_L3_error)
15095 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
15096 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 932, __pyx_L3_error)
15097 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
15098 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 932, __pyx_L3_error)
15099 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
15100 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 932, __pyx_L3_error)
15101 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
15102 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 932, __pyx_L3_error)
15103 values[18] = __Pyx_ArgRef_FASTCALL(__pyx_args, 18);
15104 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[18])) __PYX_ERR(0, 932, __pyx_L3_error)
15106 __pyx_v_nNodes_owned = __Pyx_PyLong_As_int(values[0]);
if (unlikely((__pyx_v_nNodes_owned == (
int)-1) && PyErr_Occurred())) __PYX_ERR(0, 932, __pyx_L3_error)
15107 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[1]);
15108 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[2]);
15109 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[3]);
15110 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[4]);
15111 __pyx_v_elementNodes = ((PyArrayObject *)values[5]);
15112 __pyx_v_nodeStarElements = ((PyArrayObject *)values[6]);
15113 __pyx_v_nodeStarElementNeighbors = ((PyArrayObject *)values[7]);
15114 __pyx_v_nElements_node = ((PyArrayObject *)values[8]);
15115 __pyx_v_fluxElementBoundaries = ((PyArrayObject *)values[9]);
15116 __pyx_v_elementResidual = ((PyArrayObject *)values[10]);
15117 __pyx_v_vAverage = ((PyArrayObject *)values[11]);
15118 __pyx_v_dx = ((PyArrayObject *)values[12]);
15119 __pyx_v_w = ((PyArrayObject *)values[13]);
15120 __pyx_v_n = ((PyArrayObject *)values[14]);
15121 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[15]);
15122 __pyx_v_conservationResidual = ((PyArrayObject *)values[16]);
15123 __pyx_v_vConservative = ((PyArrayObject *)values[17]);
15124 __pyx_v_vConservative_element = ((PyArrayObject *)values[18]);
15126 goto __pyx_L6_skip;
15127 __pyx_L5_argtuple_error:;
15128 __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualPWL_opt", 1, 19, 19, __pyx_nargs); __PYX_ERR(0, 932, __pyx_L3_error)
15130 goto __pyx_L4_argument_unpacking_done;
15132 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15133 Py_XDECREF(values[__pyx_temp]);
15135 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationResidualPWL_opt", __pyx_clineno, __pyx_lineno, __pyx_filename);
15136 __Pyx_RefNannyFinishContext();
15138 __pyx_L4_argument_unpacking_done:;
15139 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 933, __pyx_L1_error)
15140 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 934, __pyx_L1_error)
15141 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 935, __pyx_L1_error)
15142 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 936, __pyx_L1_error)
15143 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodes", 0))) __PYX_ERR(0, 937, __pyx_L1_error)
15144 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElements", 0))) __PYX_ERR(0, 938, __pyx_L1_error)
15145 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElementNeighbors), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElementNeighbors", 0))) __PYX_ERR(0, 939, __pyx_L1_error)
15146 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_node), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_node", 0))) __PYX_ERR(0, 940, __pyx_L1_error)
15147 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxElementBoundaries", 0))) __PYX_ERR(0, 941, __pyx_L1_error)
15148 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementResidual", 0))) __PYX_ERR(0, 942, __pyx_L1_error)
15149 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vAverage), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vAverage", 0))) __PYX_ERR(0, 943, __pyx_L1_error)
15150 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dx), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dx", 0))) __PYX_ERR(0, 944, __pyx_L1_error)
15151 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w", 0))) __PYX_ERR(0, 945, __pyx_L1_error)
15152 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 946, __pyx_L1_error)
15153 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 947, __pyx_L1_error)
15154 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_conservationResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"conservationResidual", 0))) __PYX_ERR(0, 948, __pyx_L1_error)
15155 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vConservative), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vConservative", 0))) __PYX_ERR(0, 949, __pyx_L1_error)
15156 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vConservative_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vConservative_element", 0))) __PYX_ERR(0, 950, __pyx_L1_error)
15157 __pyx_r = __pyx_pf_15cpostprocessing_76calculateConservationResidualPWL_opt(__pyx_self, __pyx_v_nNodes_owned, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_elementNodes, __pyx_v_nodeStarElements, __pyx_v_nodeStarElementNeighbors, __pyx_v_nElements_node, __pyx_v_fluxElementBoundaries, __pyx_v_elementResidual, __pyx_v_vAverage, __pyx_v_dx, __pyx_v_w, __pyx_v_n, __pyx_v_nodeStarFactor, __pyx_v_conservationResidual, __pyx_v_vConservative, __pyx_v_vConservative_element);
15163 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15164 Py_XDECREF(values[__pyx_temp]);
15166 goto __pyx_L7_cleaned_up;
15168 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15169 Py_XDECREF(values[__pyx_temp]);
15171 __pyx_L7_cleaned_up:;
15173 __Pyx_RefNannyFinishContext();
15177static PyObject *__pyx_pf_15cpostprocessing_76calculateConservationResidualPWL_opt(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_nNodes_owned, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_vAverage, PyArrayObject *__pyx_v_dx, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_conservationResidual, PyArrayObject *__pyx_v_vConservative, PyArrayObject *__pyx_v_vConservative_element) {
15178 PyObject *__pyx_r = NULL;
15179 __Pyx_RefNannyDeclarations
15180 __Pyx_RefNannySetupContext(
"calculateConservationResidualPWL_opt", 0);
15189 calculateConservationResidualPWL_opt(__pyx_v_nNodes_owned, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElementNeighbors)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_node)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxElementBoundaries)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vAverage)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dx)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), (&__pyx_v_nodeStarFactor->nsf), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_conservationResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vConservative)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vConservative_element)));
15200 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
15201 __Pyx_XGIVEREF(__pyx_r);
15202 __Pyx_RefNannyFinishContext();
15215static PyObject *__pyx_pw_15cpostprocessing_79calculateConservationResidualPWL_primative(PyObject *__pyx_self,
15216#
if CYTHON_VECTORCALL
15217PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
15219PyObject *__pyx_args, PyObject *__pyx_kwds
15222static PyMethodDef __pyx_mdef_15cpostprocessing_79calculateConservationResidualPWL_primative = {
"calculateConservationResidualPWL_primative", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_79calculateConservationResidualPWL_primative, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
15223static PyObject *__pyx_pw_15cpostprocessing_79calculateConservationResidualPWL_primative(PyObject *__pyx_self,
15224#
if CYTHON_VECTORCALL
15225PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
15227PyObject *__pyx_args, PyObject *__pyx_kwds
15230 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
15231 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
15232 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
15233 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
15234 PyArrayObject *__pyx_v_skipflag_elementBoundaries = 0;
15235 PyArrayObject *__pyx_v_elementResidual = 0;
15236 PyArrayObject *__pyx_v_dx = 0;
15237 PyArrayObject *__pyx_v_n = 0;
15238 PyArrayObject *__pyx_v_conservationResidual = 0;
15239 PyArrayObject *__pyx_v_vConservative = 0;
15240 #if !CYTHON_VECTORCALL
15241 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
15243 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
15244 PyObject* values[10] = {0,0,0,0,0,0,0,0,0,0};
15245 int __pyx_lineno = 0;
15246 const char *__pyx_filename = NULL;
15247 int __pyx_clineno = 0;
15248 PyObject *__pyx_r = 0;
15249 __Pyx_RefNannyDeclarations
15250 __Pyx_RefNannySetupContext(
"calculateConservationResidualPWL_primative (wrapper)", 0);
15251 #if !CYTHON_VECTORCALL
15252 #if CYTHON_ASSUME_SAFE_SIZE
15253 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
15255 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
15258 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
15260 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_skipflag_elementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementResidual,&__pyx_mstate_global->__pyx_n_u_dx,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_conservationResidual,&__pyx_mstate_global->__pyx_n_u_vConservative,0};
15261 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
15262 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 978, __pyx_L3_error)
15263 if (__pyx_kwds_len > 0) {
15264 switch (__pyx_nargs) {
15266 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
15267 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 978, __pyx_L3_error)
15268 CYTHON_FALLTHROUGH;
15270 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
15271 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 978, __pyx_L3_error)
15272 CYTHON_FALLTHROUGH;
15274 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
15275 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 978, __pyx_L3_error)
15276 CYTHON_FALLTHROUGH;
15278 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
15279 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 978, __pyx_L3_error)
15280 CYTHON_FALLTHROUGH;
15282 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
15283 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 978, __pyx_L3_error)
15284 CYTHON_FALLTHROUGH;
15286 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
15287 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 978, __pyx_L3_error)
15288 CYTHON_FALLTHROUGH;
15290 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
15291 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 978, __pyx_L3_error)
15292 CYTHON_FALLTHROUGH;
15294 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
15295 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 978, __pyx_L3_error)
15296 CYTHON_FALLTHROUGH;
15298 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15299 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 978, __pyx_L3_error)
15300 CYTHON_FALLTHROUGH;
15302 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15303 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 978, __pyx_L3_error)
15304 CYTHON_FALLTHROUGH;
15306 default:
goto __pyx_L5_argtuple_error;
15308 const Py_ssize_t kwd_pos_args = __pyx_nargs;
15309 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationResidualPWL_primative", 0) < (0)) __PYX_ERR(0, 978, __pyx_L3_error)
15310 for (Py_ssize_t i = __pyx_nargs; i < 10; i++) {
15311 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualPWL_primative", 1, 10, 10, i); __PYX_ERR(0, 978, __pyx_L3_error) }
15313 }
else if (unlikely(__pyx_nargs != 10)) {
15314 goto __pyx_L5_argtuple_error;
15316 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15317 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 978, __pyx_L3_error)
15318 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15319 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 978, __pyx_L3_error)
15320 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
15321 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 978, __pyx_L3_error)
15322 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
15323 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 978, __pyx_L3_error)
15324 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
15325 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 978, __pyx_L3_error)
15326 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
15327 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 978, __pyx_L3_error)
15328 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
15329 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 978, __pyx_L3_error)
15330 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
15331 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 978, __pyx_L3_error)
15332 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
15333 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 978, __pyx_L3_error)
15334 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
15335 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 978, __pyx_L3_error)
15337 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[0]);
15338 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[1]);
15339 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[2]);
15340 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[3]);
15341 __pyx_v_skipflag_elementBoundaries = ((PyArrayObject *)values[4]);
15342 __pyx_v_elementResidual = ((PyArrayObject *)values[5]);
15343 __pyx_v_dx = ((PyArrayObject *)values[6]);
15344 __pyx_v_n = ((PyArrayObject *)values[7]);
15345 __pyx_v_conservationResidual = ((PyArrayObject *)values[8]);
15346 __pyx_v_vConservative = ((PyArrayObject *)values[9]);
15348 goto __pyx_L6_skip;
15349 __pyx_L5_argtuple_error:;
15350 __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualPWL_primative", 1, 10, 10, __pyx_nargs); __PYX_ERR(0, 978, __pyx_L3_error)
15352 goto __pyx_L4_argument_unpacking_done;
15354 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15355 Py_XDECREF(values[__pyx_temp]);
15357 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationResidualPWL_primative", __pyx_clineno, __pyx_lineno, __pyx_filename);
15358 __Pyx_RefNannyFinishContext();
15360 __pyx_L4_argument_unpacking_done:;
15361 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 978, __pyx_L1_error)
15362 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 979, __pyx_L1_error)
15363 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 980, __pyx_L1_error)
15364 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 981, __pyx_L1_error)
15365 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_skipflag_elementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"skipflag_elementBoundaries", 0))) __PYX_ERR(0, 982, __pyx_L1_error)
15366 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementResidual", 0))) __PYX_ERR(0, 983, __pyx_L1_error)
15367 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dx), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dx", 0))) __PYX_ERR(0, 984, __pyx_L1_error)
15368 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 985, __pyx_L1_error)
15369 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_conservationResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"conservationResidual", 0))) __PYX_ERR(0, 986, __pyx_L1_error)
15370 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vConservative), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vConservative", 0))) __PYX_ERR(0, 987, __pyx_L1_error)
15371 __pyx_r = __pyx_pf_15cpostprocessing_78calculateConservationResidualPWL_primative(__pyx_self, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_skipflag_elementBoundaries, __pyx_v_elementResidual, __pyx_v_dx, __pyx_v_n, __pyx_v_conservationResidual, __pyx_v_vConservative);
15377 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15378 Py_XDECREF(values[__pyx_temp]);
15380 goto __pyx_L7_cleaned_up;
15382 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15383 Py_XDECREF(values[__pyx_temp]);
15385 __pyx_L7_cleaned_up:;
15386 __Pyx_RefNannyFinishContext();
15390static PyObject *__pyx_pf_15cpostprocessing_78calculateConservationResidualPWL_primative(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_skipflag_elementBoundaries, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_dx, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_conservationResidual, PyArrayObject *__pyx_v_vConservative) {
15391 PyObject *__pyx_r = NULL;
15392 __Pyx_RefNannyDeclarations
15393 __Pyx_RefNannySetupContext(
"calculateConservationResidualPWL_primative", 0);
15402 calculateConservationResidualPWL_primative((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dx)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dx)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dx)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementResidual)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_skipflag_elementBoundaries)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dx)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_conservationResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vConservative)));
15413 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
15414 __Pyx_XGIVEREF(__pyx_r);
15415 __Pyx_RefNannyFinishContext();
15428static PyObject *__pyx_pw_15cpostprocessing_81calculateConservationJacobianPWL_opt(PyObject *__pyx_self,
15429#
if CYTHON_VECTORCALL
15430PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
15432PyObject *__pyx_args, PyObject *__pyx_kwds
15435static PyMethodDef __pyx_mdef_15cpostprocessing_81calculateConservationJacobianPWL_opt = {
"calculateConservationJacobianPWL_opt", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_81calculateConservationJacobianPWL_opt, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
15436static PyObject *__pyx_pw_15cpostprocessing_81calculateConservationJacobianPWL_opt(PyObject *__pyx_self,
15437#
if CYTHON_VECTORCALL
15438PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
15440PyObject *__pyx_args, PyObject *__pyx_kwds
15443 int __pyx_v_nNodes_owned;
15444 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
15445 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
15446 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
15447 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
15448 PyArrayObject *__pyx_v_elementNodes = 0;
15449 PyArrayObject *__pyx_v_nodeStarElements = 0;
15450 PyArrayObject *__pyx_v_nodeStarElementNeighbors = 0;
15451 PyArrayObject *__pyx_v_nElements_node = 0;
15452 PyArrayObject *__pyx_v_internalNodes = 0;
15453 PyArrayObject *__pyx_v_fluxElementBoundaries = 0;
15454 PyArrayObject *__pyx_v_fluxBoundaryNodes = 0;
15455 PyArrayObject *__pyx_v_w = 0;
15456 PyArrayObject *__pyx_v_n = 0;
15457 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
15458 #if !CYTHON_VECTORCALL
15459 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
15461 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
15462 PyObject* values[15] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
15463 int __pyx_lineno = 0;
15464 const char *__pyx_filename = NULL;
15465 int __pyx_clineno = 0;
15466 PyObject *__pyx_r = 0;
15467 __Pyx_RefNannyDeclarations
15468 __Pyx_RefNannySetupContext(
"calculateConservationJacobianPWL_opt (wrapper)", 0);
15469 #if !CYTHON_VECTORCALL
15470 #if CYTHON_ASSUME_SAFE_SIZE
15471 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
15473 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
15476 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
15478 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nNodes_owned,&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_elementNodes,&__pyx_mstate_global->__pyx_n_u_nodeStarElements,&__pyx_mstate_global->__pyx_n_u_nodeStarElementNeighbors,&__pyx_mstate_global->__pyx_n_u_nElements_node,&__pyx_mstate_global->__pyx_n_u_internalNodes,&__pyx_mstate_global->__pyx_n_u_fluxElementBoundaries,&__pyx_mstate_global->__pyx_n_u_fluxBoundaryNodes,&__pyx_mstate_global->__pyx_n_u_w,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,0};
15479 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
15480 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1006, __pyx_L3_error)
15481 if (__pyx_kwds_len > 0) {
15482 switch (__pyx_nargs) {
15484 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
15485 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 1006, __pyx_L3_error)
15486 CYTHON_FALLTHROUGH;
15488 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
15489 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 1006, __pyx_L3_error)
15490 CYTHON_FALLTHROUGH;
15492 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
15493 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 1006, __pyx_L3_error)
15494 CYTHON_FALLTHROUGH;
15496 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
15497 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 1006, __pyx_L3_error)
15498 CYTHON_FALLTHROUGH;
15500 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
15501 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 1006, __pyx_L3_error)
15502 CYTHON_FALLTHROUGH;
15504 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
15505 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 1006, __pyx_L3_error)
15506 CYTHON_FALLTHROUGH;
15508 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
15509 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 1006, __pyx_L3_error)
15510 CYTHON_FALLTHROUGH;
15512 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
15513 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 1006, __pyx_L3_error)
15514 CYTHON_FALLTHROUGH;
15516 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
15517 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1006, __pyx_L3_error)
15518 CYTHON_FALLTHROUGH;
15520 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
15521 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1006, __pyx_L3_error)
15522 CYTHON_FALLTHROUGH;
15524 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
15525 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1006, __pyx_L3_error)
15526 CYTHON_FALLTHROUGH;
15528 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
15529 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1006, __pyx_L3_error)
15530 CYTHON_FALLTHROUGH;
15532 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
15533 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1006, __pyx_L3_error)
15534 CYTHON_FALLTHROUGH;
15536 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15537 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1006, __pyx_L3_error)
15538 CYTHON_FALLTHROUGH;
15540 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15541 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1006, __pyx_L3_error)
15542 CYTHON_FALLTHROUGH;
15544 default:
goto __pyx_L5_argtuple_error;
15546 const Py_ssize_t kwd_pos_args = __pyx_nargs;
15547 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationJacobianPWL_opt", 0) < (0)) __PYX_ERR(0, 1006, __pyx_L3_error)
15548 for (Py_ssize_t i = __pyx_nargs; i < 15; i++) {
15549 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationJacobianPWL_opt", 1, 15, 15, i); __PYX_ERR(0, 1006, __pyx_L3_error) }
15551 }
else if (unlikely(__pyx_nargs != 15)) {
15552 goto __pyx_L5_argtuple_error;
15554 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15555 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1006, __pyx_L3_error)
15556 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15557 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1006, __pyx_L3_error)
15558 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
15559 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1006, __pyx_L3_error)
15560 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
15561 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1006, __pyx_L3_error)
15562 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
15563 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1006, __pyx_L3_error)
15564 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
15565 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1006, __pyx_L3_error)
15566 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
15567 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1006, __pyx_L3_error)
15568 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
15569 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 1006, __pyx_L3_error)
15570 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
15571 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 1006, __pyx_L3_error)
15572 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
15573 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 1006, __pyx_L3_error)
15574 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
15575 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 1006, __pyx_L3_error)
15576 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
15577 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 1006, __pyx_L3_error)
15578 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
15579 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 1006, __pyx_L3_error)
15580 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
15581 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 1006, __pyx_L3_error)
15582 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
15583 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 1006, __pyx_L3_error)
15585 __pyx_v_nNodes_owned = __Pyx_PyLong_As_int(values[0]);
if (unlikely((__pyx_v_nNodes_owned == (
int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1006, __pyx_L3_error)
15586 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[1]);
15587 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[2]);
15588 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[3]);
15589 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[4]);
15590 __pyx_v_elementNodes = ((PyArrayObject *)values[5]);
15591 __pyx_v_nodeStarElements = ((PyArrayObject *)values[6]);
15592 __pyx_v_nodeStarElementNeighbors = ((PyArrayObject *)values[7]);
15593 __pyx_v_nElements_node = ((PyArrayObject *)values[8]);
15594 __pyx_v_internalNodes = ((PyArrayObject *)values[9]);
15595 __pyx_v_fluxElementBoundaries = ((PyArrayObject *)values[10]);
15596 __pyx_v_fluxBoundaryNodes = ((PyArrayObject *)values[11]);
15597 __pyx_v_w = ((PyArrayObject *)values[12]);
15598 __pyx_v_n = ((PyArrayObject *)values[13]);
15599 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[14]);
15601 goto __pyx_L6_skip;
15602 __pyx_L5_argtuple_error:;
15603 __Pyx_RaiseArgtupleInvalid(
"calculateConservationJacobianPWL_opt", 1, 15, 15, __pyx_nargs); __PYX_ERR(0, 1006, __pyx_L3_error)
15605 goto __pyx_L4_argument_unpacking_done;
15607 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15608 Py_XDECREF(values[__pyx_temp]);
15610 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationJacobianPWL_opt", __pyx_clineno, __pyx_lineno, __pyx_filename);
15611 __Pyx_RefNannyFinishContext();
15613 __pyx_L4_argument_unpacking_done:;
15614 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 1007, __pyx_L1_error)
15615 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 1008, __pyx_L1_error)
15616 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 1009, __pyx_L1_error)
15617 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 1010, __pyx_L1_error)
15618 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodes", 0))) __PYX_ERR(0, 1011, __pyx_L1_error)
15619 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElements", 0))) __PYX_ERR(0, 1012, __pyx_L1_error)
15620 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElementNeighbors), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElementNeighbors", 0))) __PYX_ERR(0, 1013, __pyx_L1_error)
15621 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_node), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_node", 0))) __PYX_ERR(0, 1014, __pyx_L1_error)
15622 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_internalNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"internalNodes", 0))) __PYX_ERR(0, 1015, __pyx_L1_error)
15623 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxElementBoundaries", 0))) __PYX_ERR(0, 1016, __pyx_L1_error)
15624 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxBoundaryNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxBoundaryNodes", 0))) __PYX_ERR(0, 1017, __pyx_L1_error)
15625 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w", 0))) __PYX_ERR(0, 1018, __pyx_L1_error)
15626 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 1019, __pyx_L1_error)
15627 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 1020, __pyx_L1_error)
15628 __pyx_r = __pyx_pf_15cpostprocessing_80calculateConservationJacobianPWL_opt(__pyx_self, __pyx_v_nNodes_owned, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_elementNodes, __pyx_v_nodeStarElements, __pyx_v_nodeStarElementNeighbors, __pyx_v_nElements_node, __pyx_v_internalNodes, __pyx_v_fluxElementBoundaries, __pyx_v_fluxBoundaryNodes, __pyx_v_w, __pyx_v_n, __pyx_v_nodeStarFactor);
15634 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15635 Py_XDECREF(values[__pyx_temp]);
15637 goto __pyx_L7_cleaned_up;
15639 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15640 Py_XDECREF(values[__pyx_temp]);
15642 __pyx_L7_cleaned_up:;
15644 __Pyx_RefNannyFinishContext();
15648static PyObject *__pyx_pf_15cpostprocessing_80calculateConservationJacobianPWL_opt(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_nNodes_owned, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_internalNodes, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_fluxBoundaryNodes, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor) {
15649 PyObject *__pyx_r = NULL;
15650 __Pyx_RefNannyDeclarations
15651 __Pyx_RefNannySetupContext(
"calculateConservationJacobianPWL_opt", 0);
15660 calculateConservationJacobianPWL_opt(__pyx_v_nNodes_owned, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_nElements_node)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_internalNodes)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElementNeighbors)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_node)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_internalNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxBoundaryNodes)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), (&__pyx_v_nodeStarFactor->nsf));
15671 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
15672 __Pyx_XGIVEREF(__pyx_r);
15673 __Pyx_RefNannyFinishContext();
15686static PyObject *__pyx_pw_15cpostprocessing_83calculateConservationFluxPWL_opt(PyObject *__pyx_self,
15687#
if CYTHON_VECTORCALL
15688PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
15690PyObject *__pyx_args, PyObject *__pyx_kwds
15693static PyMethodDef __pyx_mdef_15cpostprocessing_83calculateConservationFluxPWL_opt = {
"calculateConservationFluxPWL_opt", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_83calculateConservationFluxPWL_opt, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
15694static PyObject *__pyx_pw_15cpostprocessing_83calculateConservationFluxPWL_opt(PyObject *__pyx_self,
15695#
if CYTHON_VECTORCALL
15696PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
15698PyObject *__pyx_args, PyObject *__pyx_kwds
15701 int __pyx_v_nNodes_owned;
15702 PyArrayObject *__pyx_v_nElements_node = 0;
15703 PyArrayObject *__pyx_v_internalNodes = 0;
15704 PyArrayObject *__pyx_v_fluxBoundaryNodes = 0;
15705 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
15706 #if !CYTHON_VECTORCALL
15707 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
15709 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
15710 PyObject* values[5] = {0,0,0,0,0};
15711 int __pyx_lineno = 0;
15712 const char *__pyx_filename = NULL;
15713 int __pyx_clineno = 0;
15714 PyObject *__pyx_r = 0;
15715 __Pyx_RefNannyDeclarations
15716 __Pyx_RefNannySetupContext(
"calculateConservationFluxPWL_opt (wrapper)", 0);
15717 #if !CYTHON_VECTORCALL
15718 #if CYTHON_ASSUME_SAFE_SIZE
15719 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
15721 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
15724 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
15726 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_nNodes_owned,&__pyx_mstate_global->__pyx_n_u_nElements_node,&__pyx_mstate_global->__pyx_n_u_internalNodes,&__pyx_mstate_global->__pyx_n_u_fluxBoundaryNodes,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,0};
15727 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
15728 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1046, __pyx_L3_error)
15729 if (__pyx_kwds_len > 0) {
15730 switch (__pyx_nargs) {
15732 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
15733 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1046, __pyx_L3_error)
15734 CYTHON_FALLTHROUGH;
15736 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
15737 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1046, __pyx_L3_error)
15738 CYTHON_FALLTHROUGH;
15740 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
15741 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1046, __pyx_L3_error)
15742 CYTHON_FALLTHROUGH;
15744 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15745 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1046, __pyx_L3_error)
15746 CYTHON_FALLTHROUGH;
15748 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15749 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1046, __pyx_L3_error)
15750 CYTHON_FALLTHROUGH;
15752 default:
goto __pyx_L5_argtuple_error;
15754 const Py_ssize_t kwd_pos_args = __pyx_nargs;
15755 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationFluxPWL_opt", 0) < (0)) __PYX_ERR(0, 1046, __pyx_L3_error)
15756 for (Py_ssize_t i = __pyx_nargs; i < 5; i++) {
15757 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationFluxPWL_opt", 1, 5, 5, i); __PYX_ERR(0, 1046, __pyx_L3_error) }
15759 }
else if (unlikely(__pyx_nargs != 5)) {
15760 goto __pyx_L5_argtuple_error;
15762 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15763 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1046, __pyx_L3_error)
15764 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15765 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1046, __pyx_L3_error)
15766 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
15767 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1046, __pyx_L3_error)
15768 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
15769 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1046, __pyx_L3_error)
15770 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
15771 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1046, __pyx_L3_error)
15773 __pyx_v_nNodes_owned = __Pyx_PyLong_As_int(values[0]);
if (unlikely((__pyx_v_nNodes_owned == (
int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1046, __pyx_L3_error)
15774 __pyx_v_nElements_node = ((PyArrayObject *)values[1]);
15775 __pyx_v_internalNodes = ((PyArrayObject *)values[2]);
15776 __pyx_v_fluxBoundaryNodes = ((PyArrayObject *)values[3]);
15777 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[4]);
15779 goto __pyx_L6_skip;
15780 __pyx_L5_argtuple_error:;
15781 __Pyx_RaiseArgtupleInvalid(
"calculateConservationFluxPWL_opt", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 1046, __pyx_L3_error)
15783 goto __pyx_L4_argument_unpacking_done;
15785 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15786 Py_XDECREF(values[__pyx_temp]);
15788 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationFluxPWL_opt", __pyx_clineno, __pyx_lineno, __pyx_filename);
15789 __Pyx_RefNannyFinishContext();
15791 __pyx_L4_argument_unpacking_done:;
15792 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_node), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_node", 0))) __PYX_ERR(0, 1047, __pyx_L1_error)
15793 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_internalNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"internalNodes", 0))) __PYX_ERR(0, 1048, __pyx_L1_error)
15794 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxBoundaryNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxBoundaryNodes", 0))) __PYX_ERR(0, 1049, __pyx_L1_error)
15795 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 1050, __pyx_L1_error)
15796 __pyx_r = __pyx_pf_15cpostprocessing_82calculateConservationFluxPWL_opt(__pyx_self, __pyx_v_nNodes_owned, __pyx_v_nElements_node, __pyx_v_internalNodes, __pyx_v_fluxBoundaryNodes, __pyx_v_nodeStarFactor);
15802 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15803 Py_XDECREF(values[__pyx_temp]);
15805 goto __pyx_L7_cleaned_up;
15807 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
15808 Py_XDECREF(values[__pyx_temp]);
15810 __pyx_L7_cleaned_up:;
15812 __Pyx_RefNannyFinishContext();
15816static PyObject *__pyx_pf_15cpostprocessing_82calculateConservationFluxPWL_opt(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_nNodes_owned, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_internalNodes, PyArrayObject *__pyx_v_fluxBoundaryNodes,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor) {
15817 PyObject *__pyx_r = NULL;
15818 __Pyx_RefNannyDeclarations
15819 __Pyx_RefNannySetupContext(
"calculateConservationFluxPWL_opt", 0);
15828 calculateConservationFluxPWL_opt(__pyx_v_nNodes_owned, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_nElements_node)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_internalNodes)[0]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_node)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_internalNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxBoundaryNodes)), (&__pyx_v_nodeStarFactor->nsf));
15839 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
15840 __Pyx_XGIVEREF(__pyx_r);
15841 __Pyx_RefNannyFinishContext();
15854static PyObject *__pyx_pw_15cpostprocessing_85calculateConservationResidualPWL_interiorBoundaries(PyObject *__pyx_self,
15855#
if CYTHON_VECTORCALL
15856PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
15858PyObject *__pyx_args, PyObject *__pyx_kwds
15861static PyMethodDef __pyx_mdef_15cpostprocessing_85calculateConservationResidualPWL_interiorBoundaries = {
"calculateConservationResidualPWL_interiorBoundaries", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_85calculateConservationResidualPWL_interiorBoundaries, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
15862static PyObject *__pyx_pw_15cpostprocessing_85calculateConservationResidualPWL_interiorBoundaries(PyObject *__pyx_self,
15863#
if CYTHON_VECTORCALL
15864PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
15866PyObject *__pyx_args, PyObject *__pyx_kwds
15869 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
15870 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
15871 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
15872 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
15873 PyArrayObject *__pyx_v_elementNodes = 0;
15874 PyArrayObject *__pyx_v_nodeStarElements = 0;
15875 PyArrayObject *__pyx_v_nodeStarElementNeighbors = 0;
15876 PyArrayObject *__pyx_v_nElements_node = 0;
15877 PyArrayObject *__pyx_v_fluxElementBoundaries = 0;
15878 PyArrayObject *__pyx_v_elementResidual = 0;
15879 PyArrayObject *__pyx_v_vAverage = 0;
15880 PyArrayObject *__pyx_v_dx = 0;
15881 PyArrayObject *__pyx_v_w = 0;
15882 PyArrayObject *__pyx_v_n = 0;
15883 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
15884 PyArrayObject *__pyx_v_conservationResidual = 0;
15885 PyArrayObject *__pyx_v_vConservative = 0;
15886 PyArrayObject *__pyx_v_vConservative_element = 0;
15887 #if !CYTHON_VECTORCALL
15888 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
15890 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
15891 PyObject* values[18] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
15892 int __pyx_lineno = 0;
15893 const char *__pyx_filename = NULL;
15894 int __pyx_clineno = 0;
15895 PyObject *__pyx_r = 0;
15896 __Pyx_RefNannyDeclarations
15897 __Pyx_RefNannySetupContext(
"calculateConservationResidualPWL_interiorBoundaries (wrapper)", 0);
15898 #if !CYTHON_VECTORCALL
15899 #if CYTHON_ASSUME_SAFE_SIZE
15900 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
15902 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
15905 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
15907 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_elementNodes,&__pyx_mstate_global->__pyx_n_u_nodeStarElements,&__pyx_mstate_global->__pyx_n_u_nodeStarElementNeighbors,&__pyx_mstate_global->__pyx_n_u_nElements_node,&__pyx_mstate_global->__pyx_n_u_fluxElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementResidual,&__pyx_mstate_global->__pyx_n_u_vAverage,&__pyx_mstate_global->__pyx_n_u_dx,&__pyx_mstate_global->__pyx_n_u_w,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,&__pyx_mstate_global->__pyx_n_u_conservationResidual,&__pyx_mstate_global->__pyx_n_u_vConservative,&__pyx_mstate_global->__pyx_n_u_vConservative_element,0};
15908 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
15909 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1059, __pyx_L3_error)
15910 if (__pyx_kwds_len > 0) {
15911 switch (__pyx_nargs) {
15913 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
15914 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 1059, __pyx_L3_error)
15915 CYTHON_FALLTHROUGH;
15917 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
15918 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 1059, __pyx_L3_error)
15919 CYTHON_FALLTHROUGH;
15921 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
15922 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 1059, __pyx_L3_error)
15923 CYTHON_FALLTHROUGH;
15925 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
15926 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 1059, __pyx_L3_error)
15927 CYTHON_FALLTHROUGH;
15929 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
15930 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 1059, __pyx_L3_error)
15931 CYTHON_FALLTHROUGH;
15933 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
15934 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 1059, __pyx_L3_error)
15935 CYTHON_FALLTHROUGH;
15937 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
15938 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 1059, __pyx_L3_error)
15939 CYTHON_FALLTHROUGH;
15941 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
15942 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 1059, __pyx_L3_error)
15943 CYTHON_FALLTHROUGH;
15945 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
15946 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 1059, __pyx_L3_error)
15947 CYTHON_FALLTHROUGH;
15949 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
15950 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 1059, __pyx_L3_error)
15951 CYTHON_FALLTHROUGH;
15953 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
15954 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 1059, __pyx_L3_error)
15955 CYTHON_FALLTHROUGH;
15957 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
15958 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1059, __pyx_L3_error)
15959 CYTHON_FALLTHROUGH;
15961 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
15962 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1059, __pyx_L3_error)
15963 CYTHON_FALLTHROUGH;
15965 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
15966 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1059, __pyx_L3_error)
15967 CYTHON_FALLTHROUGH;
15969 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
15970 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1059, __pyx_L3_error)
15971 CYTHON_FALLTHROUGH;
15973 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
15974 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1059, __pyx_L3_error)
15975 CYTHON_FALLTHROUGH;
15977 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15978 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1059, __pyx_L3_error)
15979 CYTHON_FALLTHROUGH;
15981 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15982 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1059, __pyx_L3_error)
15983 CYTHON_FALLTHROUGH;
15985 default:
goto __pyx_L5_argtuple_error;
15987 const Py_ssize_t kwd_pos_args = __pyx_nargs;
15988 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationResidualPWL_interiorBoundaries", 0) < (0)) __PYX_ERR(0, 1059, __pyx_L3_error)
15989 for (Py_ssize_t i = __pyx_nargs; i < 18; i++) {
15990 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualPWL_interiorBoundaries", 1, 18, 18, i); __PYX_ERR(0, 1059, __pyx_L3_error) }
15992 }
else if (unlikely(__pyx_nargs != 18)) {
15993 goto __pyx_L5_argtuple_error;
15995 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
15996 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1059, __pyx_L3_error)
15997 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
15998 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1059, __pyx_L3_error)
15999 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
16000 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1059, __pyx_L3_error)
16001 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
16002 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1059, __pyx_L3_error)
16003 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
16004 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1059, __pyx_L3_error)
16005 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
16006 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1059, __pyx_L3_error)
16007 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
16008 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1059, __pyx_L3_error)
16009 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
16010 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 1059, __pyx_L3_error)
16011 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
16012 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 1059, __pyx_L3_error)
16013 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
16014 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 1059, __pyx_L3_error)
16015 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
16016 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 1059, __pyx_L3_error)
16017 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
16018 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 1059, __pyx_L3_error)
16019 values[12] = __Pyx_ArgRef_FASTCALL(__pyx_args, 12);
16020 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[12])) __PYX_ERR(0, 1059, __pyx_L3_error)
16021 values[13] = __Pyx_ArgRef_FASTCALL(__pyx_args, 13);
16022 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[13])) __PYX_ERR(0, 1059, __pyx_L3_error)
16023 values[14] = __Pyx_ArgRef_FASTCALL(__pyx_args, 14);
16024 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[14])) __PYX_ERR(0, 1059, __pyx_L3_error)
16025 values[15] = __Pyx_ArgRef_FASTCALL(__pyx_args, 15);
16026 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[15])) __PYX_ERR(0, 1059, __pyx_L3_error)
16027 values[16] = __Pyx_ArgRef_FASTCALL(__pyx_args, 16);
16028 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[16])) __PYX_ERR(0, 1059, __pyx_L3_error)
16029 values[17] = __Pyx_ArgRef_FASTCALL(__pyx_args, 17);
16030 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[17])) __PYX_ERR(0, 1059, __pyx_L3_error)
16032 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[0]);
16033 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[1]);
16034 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[2]);
16035 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[3]);
16036 __pyx_v_elementNodes = ((PyArrayObject *)values[4]);
16037 __pyx_v_nodeStarElements = ((PyArrayObject *)values[5]);
16038 __pyx_v_nodeStarElementNeighbors = ((PyArrayObject *)values[6]);
16039 __pyx_v_nElements_node = ((PyArrayObject *)values[7]);
16040 __pyx_v_fluxElementBoundaries = ((PyArrayObject *)values[8]);
16041 __pyx_v_elementResidual = ((PyArrayObject *)values[9]);
16042 __pyx_v_vAverage = ((PyArrayObject *)values[10]);
16043 __pyx_v_dx = ((PyArrayObject *)values[11]);
16044 __pyx_v_w = ((PyArrayObject *)values[12]);
16045 __pyx_v_n = ((PyArrayObject *)values[13]);
16046 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[14]);
16047 __pyx_v_conservationResidual = ((PyArrayObject *)values[15]);
16048 __pyx_v_vConservative = ((PyArrayObject *)values[16]);
16049 __pyx_v_vConservative_element = ((PyArrayObject *)values[17]);
16051 goto __pyx_L6_skip;
16052 __pyx_L5_argtuple_error:;
16053 __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualPWL_interiorBoundaries", 1, 18, 18, __pyx_nargs); __PYX_ERR(0, 1059, __pyx_L3_error)
16055 goto __pyx_L4_argument_unpacking_done;
16057 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16058 Py_XDECREF(values[__pyx_temp]);
16060 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationResidualPWL_interiorBoundaries", __pyx_clineno, __pyx_lineno, __pyx_filename);
16061 __Pyx_RefNannyFinishContext();
16063 __pyx_L4_argument_unpacking_done:;
16064 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 1059, __pyx_L1_error)
16065 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 1060, __pyx_L1_error)
16066 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 1061, __pyx_L1_error)
16067 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 1062, __pyx_L1_error)
16068 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodes", 0))) __PYX_ERR(0, 1063, __pyx_L1_error)
16069 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElements", 0))) __PYX_ERR(0, 1064, __pyx_L1_error)
16070 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElementNeighbors), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElementNeighbors", 0))) __PYX_ERR(0, 1065, __pyx_L1_error)
16071 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_node), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_node", 0))) __PYX_ERR(0, 1066, __pyx_L1_error)
16072 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxElementBoundaries", 0))) __PYX_ERR(0, 1067, __pyx_L1_error)
16073 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementResidual", 0))) __PYX_ERR(0, 1068, __pyx_L1_error)
16074 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vAverage), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vAverage", 0))) __PYX_ERR(0, 1069, __pyx_L1_error)
16075 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dx), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dx", 0))) __PYX_ERR(0, 1070, __pyx_L1_error)
16076 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w", 0))) __PYX_ERR(0, 1071, __pyx_L1_error)
16077 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 1072, __pyx_L1_error)
16078 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 1073, __pyx_L1_error)
16079 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_conservationResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"conservationResidual", 0))) __PYX_ERR(0, 1074, __pyx_L1_error)
16080 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vConservative), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vConservative", 0))) __PYX_ERR(0, 1075, __pyx_L1_error)
16081 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_vConservative_element), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"vConservative_element", 0))) __PYX_ERR(0, 1076, __pyx_L1_error)
16082 __pyx_r = __pyx_pf_15cpostprocessing_84calculateConservationResidualPWL_interiorBoundaries(__pyx_self, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_elementNodes, __pyx_v_nodeStarElements, __pyx_v_nodeStarElementNeighbors, __pyx_v_nElements_node, __pyx_v_fluxElementBoundaries, __pyx_v_elementResidual, __pyx_v_vAverage, __pyx_v_dx, __pyx_v_w, __pyx_v_n, __pyx_v_nodeStarFactor, __pyx_v_conservationResidual, __pyx_v_vConservative, __pyx_v_vConservative_element);
16088 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16089 Py_XDECREF(values[__pyx_temp]);
16091 goto __pyx_L7_cleaned_up;
16093 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16094 Py_XDECREF(values[__pyx_temp]);
16096 __pyx_L7_cleaned_up:;
16097 __Pyx_RefNannyFinishContext();
16101static PyObject *__pyx_pf_15cpostprocessing_84calculateConservationResidualPWL_interiorBoundaries(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_vAverage, PyArrayObject *__pyx_v_dx, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_conservationResidual, PyArrayObject *__pyx_v_vConservative, PyArrayObject *__pyx_v_vConservative_element) {
16102 PyObject *__pyx_r = NULL;
16103 __Pyx_RefNannyDeclarations
16105 int __pyx_lineno = 0;
16106 const char *__pyx_filename = NULL;
16107 int __pyx_clineno = 0;
16108 __Pyx_RefNannySetupContext(
"calculateConservationResidualPWL_interiorBoundaries", 0);
16117 #ifndef CYTHON_WITHOUT_ASSERTIONS
16118 if (unlikely(__pyx_assertions_enabled())) {
16119 __pyx_t_1 = ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_fluxElementBoundaries)[0]) == (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementBoundaryLocalElementBoundaries)[0]));
16121 if (unlikely(!__pyx_t_1)) {
16122 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_AssertionError))), 0, 0, 0);
16123 __PYX_ERR(0, 1077, __pyx_L1_error)
16128 if ((1));
else __PYX_ERR(0, 1077, __pyx_L1_error)
16138 calculateConservationResidualPWL_interiorBoundaries((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElementNeighbors)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_node)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxElementBoundaries)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vAverage)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dx)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), (&__pyx_v_nodeStarFactor->nsf), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_conservationResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vConservative)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_vConservative_element)));
16149 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
16152 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationResidualPWL_interiorBoundaries", __pyx_clineno, __pyx_lineno, __pyx_filename);
16155 __Pyx_XGIVEREF(__pyx_r);
16156 __Pyx_RefNannyFinishContext();
16169static PyObject *__pyx_pw_15cpostprocessing_87calculateConservationJacobianPWL_interiorBoundaries(PyObject *__pyx_self,
16170#
if CYTHON_VECTORCALL
16171PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16173PyObject *__pyx_args, PyObject *__pyx_kwds
16176static PyMethodDef __pyx_mdef_15cpostprocessing_87calculateConservationJacobianPWL_interiorBoundaries = {
"calculateConservationJacobianPWL_interiorBoundaries", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_87calculateConservationJacobianPWL_interiorBoundaries, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
16177static PyObject *__pyx_pw_15cpostprocessing_87calculateConservationJacobianPWL_interiorBoundaries(PyObject *__pyx_self,
16178#
if CYTHON_VECTORCALL
16179PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16181PyObject *__pyx_args, PyObject *__pyx_kwds
16184 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
16185 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
16186 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
16187 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
16188 PyArrayObject *__pyx_v_elementNodes = 0;
16189 PyArrayObject *__pyx_v_nodeStarElements = 0;
16190 PyArrayObject *__pyx_v_nodeStarElementNeighbors = 0;
16191 PyArrayObject *__pyx_v_nElements_node = 0;
16192 PyArrayObject *__pyx_v_fluxElementBoundaries = 0;
16193 PyArrayObject *__pyx_v_w = 0;
16194 PyArrayObject *__pyx_v_n = 0;
16195 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
16196 #if !CYTHON_VECTORCALL
16197 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
16199 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
16200 PyObject* values[12] = {0,0,0,0,0,0,0,0,0,0,0,0};
16201 int __pyx_lineno = 0;
16202 const char *__pyx_filename = NULL;
16203 int __pyx_clineno = 0;
16204 PyObject *__pyx_r = 0;
16205 __Pyx_RefNannyDeclarations
16206 __Pyx_RefNannySetupContext(
"calculateConservationJacobianPWL_interiorBoundaries (wrapper)", 0);
16207 #if !CYTHON_VECTORCALL
16208 #if CYTHON_ASSUME_SAFE_SIZE
16209 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
16211 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
16214 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
16216 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_elementNodes,&__pyx_mstate_global->__pyx_n_u_nodeStarElements,&__pyx_mstate_global->__pyx_n_u_nodeStarElementNeighbors,&__pyx_mstate_global->__pyx_n_u_nElements_node,&__pyx_mstate_global->__pyx_n_u_fluxElementBoundaries,&__pyx_mstate_global->__pyx_n_u_w,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,0};
16217 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
16218 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1104, __pyx_L3_error)
16219 if (__pyx_kwds_len > 0) {
16220 switch (__pyx_nargs) {
16222 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
16223 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 1104, __pyx_L3_error)
16224 CYTHON_FALLTHROUGH;
16226 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
16227 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 1104, __pyx_L3_error)
16228 CYTHON_FALLTHROUGH;
16230 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
16231 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 1104, __pyx_L3_error)
16232 CYTHON_FALLTHROUGH;
16234 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
16235 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 1104, __pyx_L3_error)
16236 CYTHON_FALLTHROUGH;
16238 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
16239 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 1104, __pyx_L3_error)
16240 CYTHON_FALLTHROUGH;
16242 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
16243 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1104, __pyx_L3_error)
16244 CYTHON_FALLTHROUGH;
16246 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
16247 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1104, __pyx_L3_error)
16248 CYTHON_FALLTHROUGH;
16250 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
16251 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1104, __pyx_L3_error)
16252 CYTHON_FALLTHROUGH;
16254 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
16255 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1104, __pyx_L3_error)
16256 CYTHON_FALLTHROUGH;
16258 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
16259 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1104, __pyx_L3_error)
16260 CYTHON_FALLTHROUGH;
16262 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
16263 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1104, __pyx_L3_error)
16264 CYTHON_FALLTHROUGH;
16266 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
16267 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1104, __pyx_L3_error)
16268 CYTHON_FALLTHROUGH;
16270 default:
goto __pyx_L5_argtuple_error;
16272 const Py_ssize_t kwd_pos_args = __pyx_nargs;
16273 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationJacobianPWL_interiorBoundaries", 0) < (0)) __PYX_ERR(0, 1104, __pyx_L3_error)
16274 for (Py_ssize_t i = __pyx_nargs; i < 12; i++) {
16275 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationJacobianPWL_interiorBoundaries", 1, 12, 12, i); __PYX_ERR(0, 1104, __pyx_L3_error) }
16277 }
else if (unlikely(__pyx_nargs != 12)) {
16278 goto __pyx_L5_argtuple_error;
16280 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
16281 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1104, __pyx_L3_error)
16282 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
16283 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1104, __pyx_L3_error)
16284 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
16285 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1104, __pyx_L3_error)
16286 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
16287 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1104, __pyx_L3_error)
16288 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
16289 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1104, __pyx_L3_error)
16290 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
16291 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1104, __pyx_L3_error)
16292 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
16293 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1104, __pyx_L3_error)
16294 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
16295 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 1104, __pyx_L3_error)
16296 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
16297 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 1104, __pyx_L3_error)
16298 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
16299 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 1104, __pyx_L3_error)
16300 values[10] = __Pyx_ArgRef_FASTCALL(__pyx_args, 10);
16301 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[10])) __PYX_ERR(0, 1104, __pyx_L3_error)
16302 values[11] = __Pyx_ArgRef_FASTCALL(__pyx_args, 11);
16303 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[11])) __PYX_ERR(0, 1104, __pyx_L3_error)
16305 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[0]);
16306 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[1]);
16307 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[2]);
16308 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[3]);
16309 __pyx_v_elementNodes = ((PyArrayObject *)values[4]);
16310 __pyx_v_nodeStarElements = ((PyArrayObject *)values[5]);
16311 __pyx_v_nodeStarElementNeighbors = ((PyArrayObject *)values[6]);
16312 __pyx_v_nElements_node = ((PyArrayObject *)values[7]);
16313 __pyx_v_fluxElementBoundaries = ((PyArrayObject *)values[8]);
16314 __pyx_v_w = ((PyArrayObject *)values[9]);
16315 __pyx_v_n = ((PyArrayObject *)values[10]);
16316 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[11]);
16318 goto __pyx_L6_skip;
16319 __pyx_L5_argtuple_error:;
16320 __Pyx_RaiseArgtupleInvalid(
"calculateConservationJacobianPWL_interiorBoundaries", 1, 12, 12, __pyx_nargs); __PYX_ERR(0, 1104, __pyx_L3_error)
16322 goto __pyx_L4_argument_unpacking_done;
16324 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16325 Py_XDECREF(values[__pyx_temp]);
16327 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationJacobianPWL_interiorBoundaries", __pyx_clineno, __pyx_lineno, __pyx_filename);
16328 __Pyx_RefNannyFinishContext();
16330 __pyx_L4_argument_unpacking_done:;
16331 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 1104, __pyx_L1_error)
16332 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 1105, __pyx_L1_error)
16333 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 1106, __pyx_L1_error)
16334 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 1107, __pyx_L1_error)
16335 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodes", 0))) __PYX_ERR(0, 1108, __pyx_L1_error)
16336 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElements", 0))) __PYX_ERR(0, 1109, __pyx_L1_error)
16337 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElementNeighbors), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElementNeighbors", 0))) __PYX_ERR(0, 1110, __pyx_L1_error)
16338 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nElements_node), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nElements_node", 0))) __PYX_ERR(0, 1111, __pyx_L1_error)
16339 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_fluxElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"fluxElementBoundaries", 0))) __PYX_ERR(0, 1112, __pyx_L1_error)
16340 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w", 0))) __PYX_ERR(0, 1113, __pyx_L1_error)
16341 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 1114, __pyx_L1_error)
16342 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 1115, __pyx_L1_error)
16343 __pyx_r = __pyx_pf_15cpostprocessing_86calculateConservationJacobianPWL_interiorBoundaries(__pyx_self, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_elementNodes, __pyx_v_nodeStarElements, __pyx_v_nodeStarElementNeighbors, __pyx_v_nElements_node, __pyx_v_fluxElementBoundaries, __pyx_v_w, __pyx_v_n, __pyx_v_nodeStarFactor);
16349 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16350 Py_XDECREF(values[__pyx_temp]);
16352 goto __pyx_L7_cleaned_up;
16354 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16355 Py_XDECREF(values[__pyx_temp]);
16357 __pyx_L7_cleaned_up:;
16358 __Pyx_RefNannyFinishContext();
16362static PyObject *__pyx_pf_15cpostprocessing_86calculateConservationJacobianPWL_interiorBoundaries(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements, PyArrayObject *__pyx_v_nodeStarElementNeighbors, PyArrayObject *__pyx_v_nElements_node, PyArrayObject *__pyx_v_fluxElementBoundaries, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_n,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor) {
16363 PyObject *__pyx_r = NULL;
16364 __Pyx_RefNannyDeclarations
16366 int __pyx_lineno = 0;
16367 const char *__pyx_filename = NULL;
16368 int __pyx_clineno = 0;
16369 __Pyx_RefNannySetupContext(
"calculateConservationJacobianPWL_interiorBoundaries", 0);
16378 #ifndef CYTHON_WITHOUT_ASSERTIONS
16379 if (unlikely(__pyx_assertions_enabled())) {
16380 __pyx_t_1 = ((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_fluxElementBoundaries)[0]) == (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementBoundaryLocalElementBoundaries)[0]));
16382 if (unlikely(!__pyx_t_1)) {
16383 __Pyx_Raise(((PyObject *)(((PyTypeObject*)PyExc_AssertionError))), 0, 0, 0);
16384 __PYX_ERR(0, 1116, __pyx_L1_error)
16389 if ((1));
else __PYX_ERR(0, 1116, __pyx_L1_error)
16399 calculateConservationJacobianPWL_interiorBoundaries((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_nElements_node)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[3]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_n)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElementNeighbors)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nElements_node)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_fluxElementBoundaries)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), (&__pyx_v_nodeStarFactor->nsf));
16410 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
16413 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationJacobianPWL_interiorBoundaries", __pyx_clineno, __pyx_lineno, __pyx_filename);
16416 __Pyx_XGIVEREF(__pyx_r);
16417 __Pyx_RefNannyFinishContext();
16430static PyObject *__pyx_pw_15cpostprocessing_89_subdomain_U_copy_global2local(PyObject *__pyx_self,
16431#
if CYTHON_VECTORCALL
16432PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16434PyObject *__pyx_args, PyObject *__pyx_kwds
16437static PyMethodDef __pyx_mdef_15cpostprocessing_89_subdomain_U_copy_global2local = {
"_subdomain_U_copy_global2local", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_89_subdomain_U_copy_global2local, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
16438static PyObject *__pyx_pw_15cpostprocessing_89_subdomain_U_copy_global2local(PyObject *__pyx_self,
16439#
if CYTHON_VECTORCALL
16440PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16442PyObject *__pyx_args, PyObject *__pyx_kwds
16445 int __pyx_v_max_nN_owned;
16446 PyArrayObject *__pyx_v_elementNodes = 0;
16447 PyArrayObject *__pyx_v_nodeStarElements = 0;
16448 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
16449 PyArrayObject *__pyx_v_subdomain_U = 0;
16450 #if !CYTHON_VECTORCALL
16451 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
16453 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
16454 PyObject* values[5] = {0,0,0,0,0};
16455 int __pyx_lineno = 0;
16456 const char *__pyx_filename = NULL;
16457 int __pyx_clineno = 0;
16458 PyObject *__pyx_r = 0;
16459 __Pyx_RefNannyDeclarations
16460 __Pyx_RefNannySetupContext(
"_subdomain_U_copy_global2local (wrapper)", 0);
16461 #if !CYTHON_VECTORCALL
16462 #if CYTHON_ASSUME_SAFE_SIZE
16463 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
16465 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
16468 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
16470 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_max_nN_owned,&__pyx_mstate_global->__pyx_n_u_elementNodes,&__pyx_mstate_global->__pyx_n_u_nodeStarElements,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,&__pyx_mstate_global->__pyx_n_u_subdomain_U,0};
16471 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
16472 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1138, __pyx_L3_error)
16473 if (__pyx_kwds_len > 0) {
16474 switch (__pyx_nargs) {
16476 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
16477 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1138, __pyx_L3_error)
16478 CYTHON_FALLTHROUGH;
16480 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
16481 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1138, __pyx_L3_error)
16482 CYTHON_FALLTHROUGH;
16484 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
16485 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1138, __pyx_L3_error)
16486 CYTHON_FALLTHROUGH;
16488 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
16489 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1138, __pyx_L3_error)
16490 CYTHON_FALLTHROUGH;
16492 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
16493 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1138, __pyx_L3_error)
16494 CYTHON_FALLTHROUGH;
16496 default:
goto __pyx_L5_argtuple_error;
16498 const Py_ssize_t kwd_pos_args = __pyx_nargs;
16499 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"_subdomain_U_copy_global2local", 0) < (0)) __PYX_ERR(0, 1138, __pyx_L3_error)
16500 for (Py_ssize_t i = __pyx_nargs; i < 5; i++) {
16501 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"_subdomain_U_copy_global2local", 1, 5, 5, i); __PYX_ERR(0, 1138, __pyx_L3_error) }
16503 }
else if (unlikely(__pyx_nargs != 5)) {
16504 goto __pyx_L5_argtuple_error;
16506 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
16507 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1138, __pyx_L3_error)
16508 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
16509 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1138, __pyx_L3_error)
16510 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
16511 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1138, __pyx_L3_error)
16512 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
16513 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1138, __pyx_L3_error)
16514 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
16515 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1138, __pyx_L3_error)
16517 __pyx_v_max_nN_owned = __Pyx_PyLong_As_int(values[0]);
if (unlikely((__pyx_v_max_nN_owned == (
int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1138, __pyx_L3_error)
16518 __pyx_v_elementNodes = ((PyArrayObject *)values[1]);
16519 __pyx_v_nodeStarElements = ((PyArrayObject *)values[2]);
16520 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[3]);
16521 __pyx_v_subdomain_U = ((PyArrayObject *)values[4]);
16523 goto __pyx_L6_skip;
16524 __pyx_L5_argtuple_error:;
16525 __Pyx_RaiseArgtupleInvalid(
"_subdomain_U_copy_global2local", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 1138, __pyx_L3_error)
16527 goto __pyx_L4_argument_unpacking_done;
16529 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16530 Py_XDECREF(values[__pyx_temp]);
16532 __Pyx_AddTraceback(
"cpostprocessing._subdomain_U_copy_global2local", __pyx_clineno, __pyx_lineno, __pyx_filename);
16533 __Pyx_RefNannyFinishContext();
16535 __pyx_L4_argument_unpacking_done:;
16536 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodes", 0))) __PYX_ERR(0, 1139, __pyx_L1_error)
16537 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElements", 0))) __PYX_ERR(0, 1140, __pyx_L1_error)
16538 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 1141, __pyx_L1_error)
16539 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_subdomain_U), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"subdomain_U", 0))) __PYX_ERR(0, 1142, __pyx_L1_error)
16540 __pyx_r = __pyx_pf_15cpostprocessing_88_subdomain_U_copy_global2local(__pyx_self, __pyx_v_max_nN_owned, __pyx_v_elementNodes, __pyx_v_nodeStarElements, __pyx_v_nodeStarFactor, __pyx_v_subdomain_U);
16546 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16547 Py_XDECREF(values[__pyx_temp]);
16549 goto __pyx_L7_cleaned_up;
16551 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16552 Py_XDECREF(values[__pyx_temp]);
16554 __pyx_L7_cleaned_up:;
16556 __Pyx_RefNannyFinishContext();
16560static PyObject *__pyx_pf_15cpostprocessing_88_subdomain_U_copy_global2local(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_max_nN_owned, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_subdomain_U) {
16561 PyObject *__pyx_r = NULL;
16562 __Pyx_RefNannyDeclarations
16563 __Pyx_RefNannySetupContext(
"_subdomain_U_copy_global2local", 0);
16572 subdomain_U_copy_global2local(__pyx_v_max_nN_owned, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_subdomain_U)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_subdomain_U)[1]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElements)), (&__pyx_v_nodeStarFactor->nsf), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_subdomain_U)));
16583 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
16584 __Pyx_XGIVEREF(__pyx_r);
16585 __Pyx_RefNannyFinishContext();
16598static PyObject *__pyx_pw_15cpostprocessing_91_subdomain_U_copy_local2global(PyObject *__pyx_self,
16599#
if CYTHON_VECTORCALL
16600PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16602PyObject *__pyx_args, PyObject *__pyx_kwds
16605static PyMethodDef __pyx_mdef_15cpostprocessing_91_subdomain_U_copy_local2global = {
"_subdomain_U_copy_local2global", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_91_subdomain_U_copy_local2global, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
16606static PyObject *__pyx_pw_15cpostprocessing_91_subdomain_U_copy_local2global(PyObject *__pyx_self,
16607#
if CYTHON_VECTORCALL
16608PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16610PyObject *__pyx_args, PyObject *__pyx_kwds
16613 int __pyx_v_max_nN_owned;
16614 PyArrayObject *__pyx_v_elementNodes = 0;
16615 PyArrayObject *__pyx_v_nodeStarElements = 0;
16616 struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor = 0;
16617 PyArrayObject *__pyx_v_subdomain_U = 0;
16618 #if !CYTHON_VECTORCALL
16619 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
16621 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
16622 PyObject* values[5] = {0,0,0,0,0};
16623 int __pyx_lineno = 0;
16624 const char *__pyx_filename = NULL;
16625 int __pyx_clineno = 0;
16626 PyObject *__pyx_r = 0;
16627 __Pyx_RefNannyDeclarations
16628 __Pyx_RefNannySetupContext(
"_subdomain_U_copy_local2global (wrapper)", 0);
16629 #if !CYTHON_VECTORCALL
16630 #if CYTHON_ASSUME_SAFE_SIZE
16631 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
16633 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
16636 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
16638 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_max_nN_owned,&__pyx_mstate_global->__pyx_n_u_elementNodes,&__pyx_mstate_global->__pyx_n_u_nodeStarElements,&__pyx_mstate_global->__pyx_n_u_nodeStarFactor,&__pyx_mstate_global->__pyx_n_u_subdomain_U,0};
16639 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
16640 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1151, __pyx_L3_error)
16641 if (__pyx_kwds_len > 0) {
16642 switch (__pyx_nargs) {
16644 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
16645 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1151, __pyx_L3_error)
16646 CYTHON_FALLTHROUGH;
16648 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
16649 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1151, __pyx_L3_error)
16650 CYTHON_FALLTHROUGH;
16652 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
16653 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1151, __pyx_L3_error)
16654 CYTHON_FALLTHROUGH;
16656 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
16657 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1151, __pyx_L3_error)
16658 CYTHON_FALLTHROUGH;
16660 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
16661 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1151, __pyx_L3_error)
16662 CYTHON_FALLTHROUGH;
16664 default:
goto __pyx_L5_argtuple_error;
16666 const Py_ssize_t kwd_pos_args = __pyx_nargs;
16667 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"_subdomain_U_copy_local2global", 0) < (0)) __PYX_ERR(0, 1151, __pyx_L3_error)
16668 for (Py_ssize_t i = __pyx_nargs; i < 5; i++) {
16669 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"_subdomain_U_copy_local2global", 1, 5, 5, i); __PYX_ERR(0, 1151, __pyx_L3_error) }
16671 }
else if (unlikely(__pyx_nargs != 5)) {
16672 goto __pyx_L5_argtuple_error;
16674 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
16675 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1151, __pyx_L3_error)
16676 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
16677 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1151, __pyx_L3_error)
16678 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
16679 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1151, __pyx_L3_error)
16680 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
16681 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1151, __pyx_L3_error)
16682 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
16683 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1151, __pyx_L3_error)
16685 __pyx_v_max_nN_owned = __Pyx_PyLong_As_int(values[0]);
if (unlikely((__pyx_v_max_nN_owned == (
int)-1) && PyErr_Occurred())) __PYX_ERR(0, 1151, __pyx_L3_error)
16686 __pyx_v_elementNodes = ((PyArrayObject *)values[1]);
16687 __pyx_v_nodeStarElements = ((PyArrayObject *)values[2]);
16688 __pyx_v_nodeStarFactor = ((
struct __pyx_obj_15cpostprocessing_NodeStarFactor *)values[3]);
16689 __pyx_v_subdomain_U = ((PyArrayObject *)values[4]);
16691 goto __pyx_L6_skip;
16692 __pyx_L5_argtuple_error:;
16693 __Pyx_RaiseArgtupleInvalid(
"_subdomain_U_copy_local2global", 1, 5, 5, __pyx_nargs); __PYX_ERR(0, 1151, __pyx_L3_error)
16695 goto __pyx_L4_argument_unpacking_done;
16697 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16698 Py_XDECREF(values[__pyx_temp]);
16700 __Pyx_AddTraceback(
"cpostprocessing._subdomain_U_copy_local2global", __pyx_clineno, __pyx_lineno, __pyx_filename);
16701 __Pyx_RefNannyFinishContext();
16703 __pyx_L4_argument_unpacking_done:;
16704 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementNodes), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementNodes", 0))) __PYX_ERR(0, 1152, __pyx_L1_error)
16705 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"nodeStarElements", 0))) __PYX_ERR(0, 1153, __pyx_L1_error)
16706 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_nodeStarFactor), __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, 1,
"nodeStarFactor", 0))) __PYX_ERR(0, 1154, __pyx_L1_error)
16707 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_subdomain_U), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"subdomain_U", 0))) __PYX_ERR(0, 1155, __pyx_L1_error)
16708 __pyx_r = __pyx_pf_15cpostprocessing_90_subdomain_U_copy_local2global(__pyx_self, __pyx_v_max_nN_owned, __pyx_v_elementNodes, __pyx_v_nodeStarElements, __pyx_v_nodeStarFactor, __pyx_v_subdomain_U);
16714 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16715 Py_XDECREF(values[__pyx_temp]);
16717 goto __pyx_L7_cleaned_up;
16719 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16720 Py_XDECREF(values[__pyx_temp]);
16722 __pyx_L7_cleaned_up:;
16724 __Pyx_RefNannyFinishContext();
16728static PyObject *__pyx_pf_15cpostprocessing_90_subdomain_U_copy_local2global(CYTHON_UNUSED PyObject *__pyx_self,
int __pyx_v_max_nN_owned, PyArrayObject *__pyx_v_elementNodes, PyArrayObject *__pyx_v_nodeStarElements,
struct __pyx_obj_15cpostprocessing_NodeStarFactor *__pyx_v_nodeStarFactor, PyArrayObject *__pyx_v_subdomain_U) {
16729 PyObject *__pyx_r = NULL;
16730 __Pyx_RefNannyDeclarations
16731 __Pyx_RefNannySetupContext(
"_subdomain_U_copy_local2global", 0);
16740 subdomain_U_copy_local2global(__pyx_v_max_nN_owned, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_subdomain_U)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_subdomain_U)[1]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementNodes)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_nodeStarElements)), (&__pyx_v_nodeStarFactor->nsf), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_subdomain_U)));
16751 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
16752 __Pyx_XGIVEREF(__pyx_r);
16753 __Pyx_RefNannyFinishContext();
16766static PyObject *__pyx_pw_15cpostprocessing_93calculateConservationResidualGlobalBoundaries(PyObject *__pyx_self,
16767#
if CYTHON_VECTORCALL
16768PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16770PyObject *__pyx_args, PyObject *__pyx_kwds
16773static PyMethodDef __pyx_mdef_15cpostprocessing_93calculateConservationResidualGlobalBoundaries = {
"calculateConservationResidualGlobalBoundaries", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_93calculateConservationResidualGlobalBoundaries, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
16774static PyObject *__pyx_pw_15cpostprocessing_93calculateConservationResidualGlobalBoundaries(PyObject *__pyx_self,
16775#
if CYTHON_VECTORCALL
16776PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16778PyObject *__pyx_args, PyObject *__pyx_kwds
16781 PyArrayObject *__pyx_v_interiorElementBoundaries = 0;
16782 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
16783 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
16784 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
16785 PyArrayObject *__pyx_v_exteriorElementBoundariesToSkip = 0;
16786 PyArrayObject *__pyx_v_dS = 0;
16787 PyArrayObject *__pyx_v_n = 0;
16788 PyArrayObject *__pyx_v_elementResidual = 0;
16789 PyArrayObject *__pyx_v_velocity = 0;
16790 PyArrayObject *__pyx_v_conservationResidual = 0;
16791 #if !CYTHON_VECTORCALL
16792 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
16794 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
16795 PyObject* values[10] = {0,0,0,0,0,0,0,0,0,0};
16796 int __pyx_lineno = 0;
16797 const char *__pyx_filename = NULL;
16798 int __pyx_clineno = 0;
16799 PyObject *__pyx_r = 0;
16800 __Pyx_RefNannyDeclarations
16801 __Pyx_RefNannySetupContext(
"calculateConservationResidualGlobalBoundaries (wrapper)", 0);
16802 #if !CYTHON_VECTORCALL
16803 #if CYTHON_ASSUME_SAFE_SIZE
16804 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
16806 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
16809 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
16811 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_interiorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundariesToSkip,&__pyx_mstate_global->__pyx_n_u_dS,&__pyx_mstate_global->__pyx_n_u_n,&__pyx_mstate_global->__pyx_n_u_elementResidual,&__pyx_mstate_global->__pyx_n_u_velocity,&__pyx_mstate_global->__pyx_n_u_conservationResidual,0};
16812 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
16813 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1164, __pyx_L3_error)
16814 if (__pyx_kwds_len > 0) {
16815 switch (__pyx_nargs) {
16817 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
16818 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 1164, __pyx_L3_error)
16819 CYTHON_FALLTHROUGH;
16821 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
16822 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 1164, __pyx_L3_error)
16823 CYTHON_FALLTHROUGH;
16825 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
16826 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 1164, __pyx_L3_error)
16827 CYTHON_FALLTHROUGH;
16829 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
16830 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1164, __pyx_L3_error)
16831 CYTHON_FALLTHROUGH;
16833 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
16834 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1164, __pyx_L3_error)
16835 CYTHON_FALLTHROUGH;
16837 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
16838 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1164, __pyx_L3_error)
16839 CYTHON_FALLTHROUGH;
16841 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
16842 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1164, __pyx_L3_error)
16843 CYTHON_FALLTHROUGH;
16845 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
16846 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1164, __pyx_L3_error)
16847 CYTHON_FALLTHROUGH;
16849 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
16850 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1164, __pyx_L3_error)
16851 CYTHON_FALLTHROUGH;
16853 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
16854 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1164, __pyx_L3_error)
16855 CYTHON_FALLTHROUGH;
16857 default:
goto __pyx_L5_argtuple_error;
16859 const Py_ssize_t kwd_pos_args = __pyx_nargs;
16860 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateConservationResidualGlobalBoundaries", 0) < (0)) __PYX_ERR(0, 1164, __pyx_L3_error)
16861 for (Py_ssize_t i = __pyx_nargs; i < 10; i++) {
16862 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualGlobalBoundaries", 1, 10, 10, i); __PYX_ERR(0, 1164, __pyx_L3_error) }
16864 }
else if (unlikely(__pyx_nargs != 10)) {
16865 goto __pyx_L5_argtuple_error;
16867 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
16868 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1164, __pyx_L3_error)
16869 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
16870 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1164, __pyx_L3_error)
16871 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
16872 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1164, __pyx_L3_error)
16873 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
16874 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1164, __pyx_L3_error)
16875 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
16876 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1164, __pyx_L3_error)
16877 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
16878 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1164, __pyx_L3_error)
16879 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
16880 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1164, __pyx_L3_error)
16881 values[7] = __Pyx_ArgRef_FASTCALL(__pyx_args, 7);
16882 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[7])) __PYX_ERR(0, 1164, __pyx_L3_error)
16883 values[8] = __Pyx_ArgRef_FASTCALL(__pyx_args, 8);
16884 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[8])) __PYX_ERR(0, 1164, __pyx_L3_error)
16885 values[9] = __Pyx_ArgRef_FASTCALL(__pyx_args, 9);
16886 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[9])) __PYX_ERR(0, 1164, __pyx_L3_error)
16888 __pyx_v_interiorElementBoundaries = ((PyArrayObject *)values[0]);
16889 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[1]);
16890 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[2]);
16891 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[3]);
16892 __pyx_v_exteriorElementBoundariesToSkip = ((PyArrayObject *)values[4]);
16893 __pyx_v_dS = ((PyArrayObject *)values[5]);
16894 __pyx_v_n = ((PyArrayObject *)values[6]);
16895 __pyx_v_elementResidual = ((PyArrayObject *)values[7]);
16896 __pyx_v_velocity = ((PyArrayObject *)values[8]);
16897 __pyx_v_conservationResidual = ((PyArrayObject *)values[9]);
16899 goto __pyx_L6_skip;
16900 __pyx_L5_argtuple_error:;
16901 __Pyx_RaiseArgtupleInvalid(
"calculateConservationResidualGlobalBoundaries", 1, 10, 10, __pyx_nargs); __PYX_ERR(0, 1164, __pyx_L3_error)
16903 goto __pyx_L4_argument_unpacking_done;
16905 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16906 Py_XDECREF(values[__pyx_temp]);
16908 __Pyx_AddTraceback(
"cpostprocessing.calculateConservationResidualGlobalBoundaries", __pyx_clineno, __pyx_lineno, __pyx_filename);
16909 __Pyx_RefNannyFinishContext();
16911 __pyx_L4_argument_unpacking_done:;
16912 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_interiorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"interiorElementBoundaries", 0))) __PYX_ERR(0, 1164, __pyx_L1_error)
16913 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 1165, __pyx_L1_error)
16914 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 1166, __pyx_L1_error)
16915 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 1167, __pyx_L1_error)
16916 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundariesToSkip), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundariesToSkip", 0))) __PYX_ERR(0, 1168, __pyx_L1_error)
16917 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dS), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"dS", 0))) __PYX_ERR(0, 1169, __pyx_L1_error)
16918 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_n), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"n", 0))) __PYX_ERR(0, 1170, __pyx_L1_error)
16919 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementResidual", 0))) __PYX_ERR(0, 1171, __pyx_L1_error)
16920 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"velocity", 0))) __PYX_ERR(0, 1172, __pyx_L1_error)
16921 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_conservationResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"conservationResidual", 0))) __PYX_ERR(0, 1173, __pyx_L1_error)
16922 __pyx_r = __pyx_pf_15cpostprocessing_92calculateConservationResidualGlobalBoundaries(__pyx_self, __pyx_v_interiorElementBoundaries, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_exteriorElementBoundariesToSkip, __pyx_v_dS, __pyx_v_n, __pyx_v_elementResidual, __pyx_v_velocity, __pyx_v_conservationResidual);
16928 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16929 Py_XDECREF(values[__pyx_temp]);
16931 goto __pyx_L7_cleaned_up;
16933 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
16934 Py_XDECREF(values[__pyx_temp]);
16936 __pyx_L7_cleaned_up:;
16937 __Pyx_RefNannyFinishContext();
16941static PyObject *__pyx_pf_15cpostprocessing_92calculateConservationResidualGlobalBoundaries(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_interiorElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_exteriorElementBoundariesToSkip, PyArrayObject *__pyx_v_dS, PyArrayObject *__pyx_v_n, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_velocity, PyArrayObject *__pyx_v_conservationResidual) {
16942 PyObject *__pyx_r = NULL;
16943 __Pyx_RefNannyDeclarations
16944 __Pyx_RefNannySetupContext(
"calculateConservationResidualGlobalBoundaries", 0);
16953 calculateConservationResidualGlobalBoundaries((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_conservationResidual)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_interiorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dS)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_dS)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementResidual)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_velocity)[2]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_interiorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundariesToSkip)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_dS)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_n)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_velocity)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_conservationResidual)));
16964 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
16965 __Pyx_XGIVEREF(__pyx_r);
16966 __Pyx_RefNannyFinishContext();
16979static PyObject *__pyx_pw_15cpostprocessing_95updateSelectedExteriorElementBoundaryFlux(PyObject *__pyx_self,
16980#
if CYTHON_VECTORCALL
16981PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16983PyObject *__pyx_args, PyObject *__pyx_kwds
16986static PyMethodDef __pyx_mdef_15cpostprocessing_95updateSelectedExteriorElementBoundaryFlux = {
"updateSelectedExteriorElementBoundaryFlux", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_95updateSelectedExteriorElementBoundaryFlux, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
16987static PyObject *__pyx_pw_15cpostprocessing_95updateSelectedExteriorElementBoundaryFlux(PyObject *__pyx_self,
16988#
if CYTHON_VECTORCALL
16989PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
16991PyObject *__pyx_args, PyObject *__pyx_kwds
16994 PyArrayObject *__pyx_v_exteriorElementBoundaries = 0;
16995 PyArrayObject *__pyx_v_elementBoundaryElements = 0;
16996 PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries = 0;
16997 PyArrayObject *__pyx_v_skipflag_elementBoundaries = 0;
16998 PyArrayObject *__pyx_v_flux = 0;
16999 PyArrayObject *__pyx_v_w = 0;
17000 PyArrayObject *__pyx_v_residual = 0;
17001 #if !CYTHON_VECTORCALL
17002 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
17004 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
17005 PyObject* values[7] = {0,0,0,0,0,0,0};
17006 int __pyx_lineno = 0;
17007 const char *__pyx_filename = NULL;
17008 int __pyx_clineno = 0;
17009 PyObject *__pyx_r = 0;
17010 __Pyx_RefNannyDeclarations
17011 __Pyx_RefNannySetupContext(
"updateSelectedExteriorElementBoundaryFlux (wrapper)", 0);
17012 #if !CYTHON_VECTORCALL
17013 #if CYTHON_ASSUME_SAFE_SIZE
17014 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
17016 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
17019 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
17021 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_exteriorElementBoundaries,&__pyx_mstate_global->__pyx_n_u_elementBoundaryElements,&__pyx_mstate_global->__pyx_n_u_elementBoundaryLocalElementBound,&__pyx_mstate_global->__pyx_n_u_skipflag_elementBoundaries,&__pyx_mstate_global->__pyx_n_u_flux,&__pyx_mstate_global->__pyx_n_u_w,&__pyx_mstate_global->__pyx_n_u_residual,0};
17022 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
17023 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1192, __pyx_L3_error)
17024 if (__pyx_kwds_len > 0) {
17025 switch (__pyx_nargs) {
17027 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
17028 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1192, __pyx_L3_error)
17029 CYTHON_FALLTHROUGH;
17031 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
17032 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1192, __pyx_L3_error)
17033 CYTHON_FALLTHROUGH;
17035 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
17036 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1192, __pyx_L3_error)
17037 CYTHON_FALLTHROUGH;
17039 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
17040 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1192, __pyx_L3_error)
17041 CYTHON_FALLTHROUGH;
17043 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17044 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1192, __pyx_L3_error)
17045 CYTHON_FALLTHROUGH;
17047 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17048 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1192, __pyx_L3_error)
17049 CYTHON_FALLTHROUGH;
17051 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17052 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1192, __pyx_L3_error)
17053 CYTHON_FALLTHROUGH;
17055 default:
goto __pyx_L5_argtuple_error;
17057 const Py_ssize_t kwd_pos_args = __pyx_nargs;
17058 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"updateSelectedExteriorElementBoundaryFlux", 0) < (0)) __PYX_ERR(0, 1192, __pyx_L3_error)
17059 for (Py_ssize_t i = __pyx_nargs; i < 7; i++) {
17060 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"updateSelectedExteriorElementBoundaryFlux", 1, 7, 7, i); __PYX_ERR(0, 1192, __pyx_L3_error) }
17062 }
else if (unlikely(__pyx_nargs != 7)) {
17063 goto __pyx_L5_argtuple_error;
17065 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17066 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1192, __pyx_L3_error)
17067 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17068 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1192, __pyx_L3_error)
17069 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17070 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1192, __pyx_L3_error)
17071 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
17072 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1192, __pyx_L3_error)
17073 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
17074 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1192, __pyx_L3_error)
17075 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
17076 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1192, __pyx_L3_error)
17077 values[6] = __Pyx_ArgRef_FASTCALL(__pyx_args, 6);
17078 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[6])) __PYX_ERR(0, 1192, __pyx_L3_error)
17080 __pyx_v_exteriorElementBoundaries = ((PyArrayObject *)values[0]);
17081 __pyx_v_elementBoundaryElements = ((PyArrayObject *)values[1]);
17082 __pyx_v_elementBoundaryLocalElementBoundaries = ((PyArrayObject *)values[2]);
17083 __pyx_v_skipflag_elementBoundaries = ((PyArrayObject *)values[3]);
17084 __pyx_v_flux = ((PyArrayObject *)values[4]);
17085 __pyx_v_w = ((PyArrayObject *)values[5]);
17086 __pyx_v_residual = ((PyArrayObject *)values[6]);
17088 goto __pyx_L6_skip;
17089 __pyx_L5_argtuple_error:;
17090 __Pyx_RaiseArgtupleInvalid(
"updateSelectedExteriorElementBoundaryFlux", 1, 7, 7, __pyx_nargs); __PYX_ERR(0, 1192, __pyx_L3_error)
17092 goto __pyx_L4_argument_unpacking_done;
17094 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17095 Py_XDECREF(values[__pyx_temp]);
17097 __Pyx_AddTraceback(
"cpostprocessing.updateSelectedExteriorElementBoundaryFlux", __pyx_clineno, __pyx_lineno, __pyx_filename);
17098 __Pyx_RefNannyFinishContext();
17100 __pyx_L4_argument_unpacking_done:;
17101 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_exteriorElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"exteriorElementBoundaries", 0))) __PYX_ERR(0, 1192, __pyx_L1_error)
17102 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryElements), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryElements", 0))) __PYX_ERR(0, 1193, __pyx_L1_error)
17103 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementBoundaryLocalElementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementBoundaryLocalElementBoundaries", 0))) __PYX_ERR(0, 1194, __pyx_L1_error)
17104 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_skipflag_elementBoundaries), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"skipflag_elementBoundaries", 0))) __PYX_ERR(0, 1195, __pyx_L1_error)
17105 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_flux), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"flux", 0))) __PYX_ERR(0, 1196, __pyx_L1_error)
17106 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_w), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"w", 0))) __PYX_ERR(0, 1197, __pyx_L1_error)
17107 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_residual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"residual", 0))) __PYX_ERR(0, 1198, __pyx_L1_error)
17108 __pyx_r = __pyx_pf_15cpostprocessing_94updateSelectedExteriorElementBoundaryFlux(__pyx_self, __pyx_v_exteriorElementBoundaries, __pyx_v_elementBoundaryElements, __pyx_v_elementBoundaryLocalElementBoundaries, __pyx_v_skipflag_elementBoundaries, __pyx_v_flux, __pyx_v_w, __pyx_v_residual);
17114 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17115 Py_XDECREF(values[__pyx_temp]);
17117 goto __pyx_L7_cleaned_up;
17119 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17120 Py_XDECREF(values[__pyx_temp]);
17122 __pyx_L7_cleaned_up:;
17123 __Pyx_RefNannyFinishContext();
17127static PyObject *__pyx_pf_15cpostprocessing_94updateSelectedExteriorElementBoundaryFlux(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_exteriorElementBoundaries, PyArrayObject *__pyx_v_elementBoundaryElements, PyArrayObject *__pyx_v_elementBoundaryLocalElementBoundaries, PyArrayObject *__pyx_v_skipflag_elementBoundaries, PyArrayObject *__pyx_v_flux, PyArrayObject *__pyx_v_w, PyArrayObject *__pyx_v_residual) {
17128 PyObject *__pyx_r = NULL;
17129 __Pyx_RefNannyDeclarations
17130 __Pyx_RefNannySetupContext(
"updateSelectedExteriorElementBoundaryFlux", 0);
17139 updateSelectedExteriorElementBoundaryFlux((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_exteriorElementBoundaries)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[2]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_w)[3]), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_exteriorElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryElements)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementBoundaryLocalElementBoundaries)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_skipflag_elementBoundaries)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_flux)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_w)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_residual)));
17150 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
17151 __Pyx_XGIVEREF(__pyx_r);
17152 __Pyx_RefNannyFinishContext();
17165static PyObject *__pyx_pw_15cpostprocessing_97updateAdvectiveVelocityPointEval(PyObject *__pyx_self,
17166#
if CYTHON_VECTORCALL
17167PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17169PyObject *__pyx_args, PyObject *__pyx_kwds
17172static PyMethodDef __pyx_mdef_15cpostprocessing_97updateAdvectiveVelocityPointEval = {
"updateAdvectiveVelocityPointEval", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_97updateAdvectiveVelocityPointEval, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
17173static PyObject *__pyx_pw_15cpostprocessing_97updateAdvectiveVelocityPointEval(PyObject *__pyx_self,
17174#
if CYTHON_VECTORCALL
17175PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17177PyObject *__pyx_args, PyObject *__pyx_kwds
17180 double __pyx_v_updateCoef;
17181 PyArrayObject *__pyx_v_advectiveVelocity = 0;
17182 PyArrayObject *__pyx_v_velocity = 0;
17183 #if !CYTHON_VECTORCALL
17184 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
17186 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
17187 PyObject* values[3] = {0,0,0};
17188 int __pyx_lineno = 0;
17189 const char *__pyx_filename = NULL;
17190 int __pyx_clineno = 0;
17191 PyObject *__pyx_r = 0;
17192 __Pyx_RefNannyDeclarations
17193 __Pyx_RefNannySetupContext(
"updateAdvectiveVelocityPointEval (wrapper)", 0);
17194 #if !CYTHON_VECTORCALL
17195 #if CYTHON_ASSUME_SAFE_SIZE
17196 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
17198 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
17201 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
17203 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_updateCoef,&__pyx_mstate_global->__pyx_n_u_advectiveVelocity,&__pyx_mstate_global->__pyx_n_u_velocity,0};
17204 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
17205 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1211, __pyx_L3_error)
17206 if (__pyx_kwds_len > 0) {
17207 switch (__pyx_nargs) {
17209 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17210 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1211, __pyx_L3_error)
17211 CYTHON_FALLTHROUGH;
17213 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17214 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1211, __pyx_L3_error)
17215 CYTHON_FALLTHROUGH;
17217 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17218 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1211, __pyx_L3_error)
17219 CYTHON_FALLTHROUGH;
17221 default:
goto __pyx_L5_argtuple_error;
17223 const Py_ssize_t kwd_pos_args = __pyx_nargs;
17224 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"updateAdvectiveVelocityPointEval", 0) < (0)) __PYX_ERR(0, 1211, __pyx_L3_error)
17225 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
17226 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"updateAdvectiveVelocityPointEval", 1, 3, 3, i); __PYX_ERR(0, 1211, __pyx_L3_error) }
17228 }
else if (unlikely(__pyx_nargs != 3)) {
17229 goto __pyx_L5_argtuple_error;
17231 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17232 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1211, __pyx_L3_error)
17233 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17234 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1211, __pyx_L3_error)
17235 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17236 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1211, __pyx_L3_error)
17238 __pyx_v_updateCoef = __Pyx_PyFloat_AsDouble(values[0]);
if (unlikely((__pyx_v_updateCoef == (
double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1211, __pyx_L3_error)
17239 __pyx_v_advectiveVelocity = ((PyArrayObject *)values[1]);
17240 __pyx_v_velocity = ((PyArrayObject *)values[2]);
17242 goto __pyx_L6_skip;
17243 __pyx_L5_argtuple_error:;
17244 __Pyx_RaiseArgtupleInvalid(
"updateAdvectiveVelocityPointEval", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1211, __pyx_L3_error)
17246 goto __pyx_L4_argument_unpacking_done;
17248 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17249 Py_XDECREF(values[__pyx_temp]);
17251 __Pyx_AddTraceback(
"cpostprocessing.updateAdvectiveVelocityPointEval", __pyx_clineno, __pyx_lineno, __pyx_filename);
17252 __Pyx_RefNannyFinishContext();
17254 __pyx_L4_argument_unpacking_done:;
17255 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_advectiveVelocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"advectiveVelocity", 0))) __PYX_ERR(0, 1212, __pyx_L1_error)
17256 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"velocity", 0))) __PYX_ERR(0, 1213, __pyx_L1_error)
17257 __pyx_r = __pyx_pf_15cpostprocessing_96updateAdvectiveVelocityPointEval(__pyx_self, __pyx_v_updateCoef, __pyx_v_advectiveVelocity, __pyx_v_velocity);
17263 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17264 Py_XDECREF(values[__pyx_temp]);
17266 goto __pyx_L7_cleaned_up;
17268 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17269 Py_XDECREF(values[__pyx_temp]);
17271 __pyx_L7_cleaned_up:;
17273 __Pyx_RefNannyFinishContext();
17277static PyObject *__pyx_pf_15cpostprocessing_96updateAdvectiveVelocityPointEval(CYTHON_UNUSED PyObject *__pyx_self,
double __pyx_v_updateCoef, PyArrayObject *__pyx_v_advectiveVelocity, PyArrayObject *__pyx_v_velocity) {
17278 int __pyx_v_nPoints;
17279 PyObject *__pyx_r = NULL;
17280 __Pyx_RefNannyDeclarations
17281 npy_intp __pyx_t_1;
17282 npy_intp __pyx_t_2;
17283 int __pyx_lineno = 0;
17284 const char *__pyx_filename = NULL;
17285 int __pyx_clineno = 0;
17286 __Pyx_RefNannySetupContext(
"updateAdvectiveVelocityPointEval", 0);
17295 __pyx_t_1 = __pyx_f_5numpy_7ndarray_4size___get__(__pyx_v_velocity);
17297 __pyx_t_2 = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_velocity)[(__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_velocity) - 1)]);
17299 if (unlikely(__pyx_t_2 == 0)) {
17300 PyErr_SetString(PyExc_ZeroDivisionError,
"integer division or modulo by zero");
17301 __PYX_ERR(0, 1214, __pyx_L1_error)
17303 else if (
sizeof(npy_intp) ==
sizeof(
long) && (!(((npy_intp)-1) > 0)) && unlikely(__pyx_t_2 == (npy_intp)-1) && unlikely(__Pyx_UNARY_NEG_WOULD_OVERFLOW(__pyx_t_1))) {
17304 PyErr_SetString(PyExc_OverflowError,
"value too large to perform division");
17305 __PYX_ERR(0, 1214, __pyx_L1_error)
17307 __pyx_v_nPoints = __Pyx_div_npy_intp(__pyx_t_1, __pyx_t_2, 0);
17318 postprocessAdvectiveVelocityPointEval(__pyx_v_nPoints, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_velocity)[(__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_velocity) - 1)]), __pyx_v_updateCoef, ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_advectiveVelocity)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_velocity)));
17329 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
17332 __Pyx_AddTraceback(
"cpostprocessing.updateAdvectiveVelocityPointEval", __pyx_clineno, __pyx_lineno, __pyx_filename);
17336 __Pyx_XGIVEREF(__pyx_r);
17337 __Pyx_RefNannyFinishContext();
17350static PyObject *__pyx_pw_15cpostprocessing_99updateDiffusiveVelocityPointEval(PyObject *__pyx_self,
17351#
if CYTHON_VECTORCALL
17352PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17354PyObject *__pyx_args, PyObject *__pyx_kwds
17357static PyMethodDef __pyx_mdef_15cpostprocessing_99updateDiffusiveVelocityPointEval = {
"updateDiffusiveVelocityPointEval", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_99updateDiffusiveVelocityPointEval, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
17358static PyObject *__pyx_pw_15cpostprocessing_99updateDiffusiveVelocityPointEval(PyObject *__pyx_self,
17359#
if CYTHON_VECTORCALL
17360PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17362PyObject *__pyx_args, PyObject *__pyx_kwds
17365 double __pyx_v_updateCoef;
17366 PyArrayObject *__pyx_v_diffusionTensor = 0;
17367 PyArrayObject *__pyx_v_grad_phi = 0;
17368 PyArrayObject *__pyx_v_velocity = 0;
17369 #if !CYTHON_VECTORCALL
17370 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
17372 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
17373 PyObject* values[4] = {0,0,0,0};
17374 int __pyx_lineno = 0;
17375 const char *__pyx_filename = NULL;
17376 int __pyx_clineno = 0;
17377 PyObject *__pyx_r = 0;
17378 __Pyx_RefNannyDeclarations
17379 __Pyx_RefNannySetupContext(
"updateDiffusiveVelocityPointEval (wrapper)", 0);
17380 #if !CYTHON_VECTORCALL
17381 #if CYTHON_ASSUME_SAFE_SIZE
17382 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
17384 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
17387 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
17389 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_updateCoef,&__pyx_mstate_global->__pyx_n_u_diffusionTensor,&__pyx_mstate_global->__pyx_n_u_grad_phi,&__pyx_mstate_global->__pyx_n_u_velocity,0};
17390 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
17391 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1221, __pyx_L3_error)
17392 if (__pyx_kwds_len > 0) {
17393 switch (__pyx_nargs) {
17395 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
17396 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1221, __pyx_L3_error)
17397 CYTHON_FALLTHROUGH;
17399 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17400 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1221, __pyx_L3_error)
17401 CYTHON_FALLTHROUGH;
17403 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17404 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1221, __pyx_L3_error)
17405 CYTHON_FALLTHROUGH;
17407 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17408 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1221, __pyx_L3_error)
17409 CYTHON_FALLTHROUGH;
17411 default:
goto __pyx_L5_argtuple_error;
17413 const Py_ssize_t kwd_pos_args = __pyx_nargs;
17414 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"updateDiffusiveVelocityPointEval", 0) < (0)) __PYX_ERR(0, 1221, __pyx_L3_error)
17415 for (Py_ssize_t i = __pyx_nargs; i < 4; i++) {
17416 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"updateDiffusiveVelocityPointEval", 1, 4, 4, i); __PYX_ERR(0, 1221, __pyx_L3_error) }
17418 }
else if (unlikely(__pyx_nargs != 4)) {
17419 goto __pyx_L5_argtuple_error;
17421 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17422 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1221, __pyx_L3_error)
17423 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17424 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1221, __pyx_L3_error)
17425 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17426 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1221, __pyx_L3_error)
17427 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
17428 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1221, __pyx_L3_error)
17430 __pyx_v_updateCoef = __Pyx_PyFloat_AsDouble(values[0]);
if (unlikely((__pyx_v_updateCoef == (
double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1221, __pyx_L3_error)
17431 __pyx_v_diffusionTensor = ((PyArrayObject *)values[1]);
17432 __pyx_v_grad_phi = ((PyArrayObject *)values[2]);
17433 __pyx_v_velocity = ((PyArrayObject *)values[3]);
17435 goto __pyx_L6_skip;
17436 __pyx_L5_argtuple_error:;
17437 __Pyx_RaiseArgtupleInvalid(
"updateDiffusiveVelocityPointEval", 1, 4, 4, __pyx_nargs); __PYX_ERR(0, 1221, __pyx_L3_error)
17439 goto __pyx_L4_argument_unpacking_done;
17441 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17442 Py_XDECREF(values[__pyx_temp]);
17444 __Pyx_AddTraceback(
"cpostprocessing.updateDiffusiveVelocityPointEval", __pyx_clineno, __pyx_lineno, __pyx_filename);
17445 __Pyx_RefNannyFinishContext();
17447 __pyx_L4_argument_unpacking_done:;
17448 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_diffusionTensor), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"diffusionTensor", 0))) __PYX_ERR(0, 1222, __pyx_L1_error)
17449 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_grad_phi), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"grad_phi", 0))) __PYX_ERR(0, 1223, __pyx_L1_error)
17450 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"velocity", 0))) __PYX_ERR(0, 1224, __pyx_L1_error)
17451 __pyx_r = __pyx_pf_15cpostprocessing_98updateDiffusiveVelocityPointEval(__pyx_self, __pyx_v_updateCoef, __pyx_v_diffusionTensor, __pyx_v_grad_phi, __pyx_v_velocity);
17457 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17458 Py_XDECREF(values[__pyx_temp]);
17460 goto __pyx_L7_cleaned_up;
17462 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17463 Py_XDECREF(values[__pyx_temp]);
17465 __pyx_L7_cleaned_up:;
17467 __Pyx_RefNannyFinishContext();
17471static PyObject *__pyx_pf_15cpostprocessing_98updateDiffusiveVelocityPointEval(CYTHON_UNUSED PyObject *__pyx_self,
double __pyx_v_updateCoef, PyArrayObject *__pyx_v_diffusionTensor, PyArrayObject *__pyx_v_grad_phi, PyArrayObject *__pyx_v_velocity) {
17472 int __pyx_v_nPoints;
17473 PyObject *__pyx_r = NULL;
17474 __Pyx_RefNannyDeclarations
17475 npy_intp __pyx_t_1;
17476 npy_intp __pyx_t_2;
17477 int __pyx_lineno = 0;
17478 const char *__pyx_filename = NULL;
17479 int __pyx_clineno = 0;
17480 __Pyx_RefNannySetupContext(
"updateDiffusiveVelocityPointEval", 0);
17489 __pyx_t_1 = __pyx_f_5numpy_7ndarray_4size___get__(__pyx_v_velocity);
17491 __pyx_t_2 = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_velocity)[(__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_velocity) - 1)]);
17493 if (unlikely(__pyx_t_2 == 0)) {
17494 PyErr_SetString(PyExc_ZeroDivisionError,
"integer division or modulo by zero");
17495 __PYX_ERR(0, 1225, __pyx_L1_error)
17497 else if (
sizeof(npy_intp) ==
sizeof(
long) && (!(((npy_intp)-1) > 0)) && unlikely(__pyx_t_2 == (npy_intp)-1) && unlikely(__Pyx_UNARY_NEG_WOULD_OVERFLOW(__pyx_t_1))) {
17498 PyErr_SetString(PyExc_OverflowError,
"value too large to perform division");
17499 __PYX_ERR(0, 1225, __pyx_L1_error)
17501 __pyx_v_nPoints = __Pyx_div_npy_intp(__pyx_t_1, __pyx_t_2, 0);
17512 postprocessDiffusiveVelocityPointEval(__pyx_v_nPoints, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_velocity)[(__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_velocity) - 1)]), __pyx_v_updateCoef, ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_diffusionTensor)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_grad_phi)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_velocity)));
17523 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
17526 __Pyx_AddTraceback(
"cpostprocessing.updateDiffusiveVelocityPointEval", __pyx_clineno, __pyx_lineno, __pyx_filename);
17530 __Pyx_XGIVEREF(__pyx_r);
17531 __Pyx_RefNannyFinishContext();
17544static PyObject *__pyx_pw_15cpostprocessing_101updateDiffusiveVelocityPointEval_sd(PyObject *__pyx_self,
17545#
if CYTHON_VECTORCALL
17546PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17548PyObject *__pyx_args, PyObject *__pyx_kwds
17551static PyMethodDef __pyx_mdef_15cpostprocessing_101updateDiffusiveVelocityPointEval_sd = {
"updateDiffusiveVelocityPointEval_sd", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_101updateDiffusiveVelocityPointEval_sd, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
17552static PyObject *__pyx_pw_15cpostprocessing_101updateDiffusiveVelocityPointEval_sd(PyObject *__pyx_self,
17553#
if CYTHON_VECTORCALL
17554PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17556PyObject *__pyx_args, PyObject *__pyx_kwds
17559 double __pyx_v_updateCoef;
17560 PyArrayObject *__pyx_v_rowptr = 0;
17561 PyArrayObject *__pyx_v_colind = 0;
17562 PyArrayObject *__pyx_v_diffusionTensor = 0;
17563 PyArrayObject *__pyx_v_grad_phi = 0;
17564 PyArrayObject *__pyx_v_velocity = 0;
17565 #if !CYTHON_VECTORCALL
17566 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
17568 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
17569 PyObject* values[6] = {0,0,0,0,0,0};
17570 int __pyx_lineno = 0;
17571 const char *__pyx_filename = NULL;
17572 int __pyx_clineno = 0;
17573 PyObject *__pyx_r = 0;
17574 __Pyx_RefNannyDeclarations
17575 __Pyx_RefNannySetupContext(
"updateDiffusiveVelocityPointEval_sd (wrapper)", 0);
17576 #if !CYTHON_VECTORCALL
17577 #if CYTHON_ASSUME_SAFE_SIZE
17578 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
17580 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
17583 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
17585 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_updateCoef,&__pyx_mstate_global->__pyx_n_u_rowptr,&__pyx_mstate_global->__pyx_n_u_colind,&__pyx_mstate_global->__pyx_n_u_diffusionTensor,&__pyx_mstate_global->__pyx_n_u_grad_phi,&__pyx_mstate_global->__pyx_n_u_velocity,0};
17586 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
17587 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1233, __pyx_L3_error)
17588 if (__pyx_kwds_len > 0) {
17589 switch (__pyx_nargs) {
17591 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
17592 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1233, __pyx_L3_error)
17593 CYTHON_FALLTHROUGH;
17595 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
17596 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1233, __pyx_L3_error)
17597 CYTHON_FALLTHROUGH;
17599 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
17600 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1233, __pyx_L3_error)
17601 CYTHON_FALLTHROUGH;
17603 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17604 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1233, __pyx_L3_error)
17605 CYTHON_FALLTHROUGH;
17607 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17608 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1233, __pyx_L3_error)
17609 CYTHON_FALLTHROUGH;
17611 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17612 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1233, __pyx_L3_error)
17613 CYTHON_FALLTHROUGH;
17615 default:
goto __pyx_L5_argtuple_error;
17617 const Py_ssize_t kwd_pos_args = __pyx_nargs;
17618 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"updateDiffusiveVelocityPointEval_sd", 0) < (0)) __PYX_ERR(0, 1233, __pyx_L3_error)
17619 for (Py_ssize_t i = __pyx_nargs; i < 6; i++) {
17620 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"updateDiffusiveVelocityPointEval_sd", 1, 6, 6, i); __PYX_ERR(0, 1233, __pyx_L3_error) }
17622 }
else if (unlikely(__pyx_nargs != 6)) {
17623 goto __pyx_L5_argtuple_error;
17625 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17626 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1233, __pyx_L3_error)
17627 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17628 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1233, __pyx_L3_error)
17629 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17630 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1233, __pyx_L3_error)
17631 values[3] = __Pyx_ArgRef_FASTCALL(__pyx_args, 3);
17632 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[3])) __PYX_ERR(0, 1233, __pyx_L3_error)
17633 values[4] = __Pyx_ArgRef_FASTCALL(__pyx_args, 4);
17634 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[4])) __PYX_ERR(0, 1233, __pyx_L3_error)
17635 values[5] = __Pyx_ArgRef_FASTCALL(__pyx_args, 5);
17636 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[5])) __PYX_ERR(0, 1233, __pyx_L3_error)
17638 __pyx_v_updateCoef = __Pyx_PyFloat_AsDouble(values[0]);
if (unlikely((__pyx_v_updateCoef == (
double)-1) && PyErr_Occurred())) __PYX_ERR(0, 1233, __pyx_L3_error)
17639 __pyx_v_rowptr = ((PyArrayObject *)values[1]);
17640 __pyx_v_colind = ((PyArrayObject *)values[2]);
17641 __pyx_v_diffusionTensor = ((PyArrayObject *)values[3]);
17642 __pyx_v_grad_phi = ((PyArrayObject *)values[4]);
17643 __pyx_v_velocity = ((PyArrayObject *)values[5]);
17645 goto __pyx_L6_skip;
17646 __pyx_L5_argtuple_error:;
17647 __Pyx_RaiseArgtupleInvalid(
"updateDiffusiveVelocityPointEval_sd", 1, 6, 6, __pyx_nargs); __PYX_ERR(0, 1233, __pyx_L3_error)
17649 goto __pyx_L4_argument_unpacking_done;
17651 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17652 Py_XDECREF(values[__pyx_temp]);
17654 __Pyx_AddTraceback(
"cpostprocessing.updateDiffusiveVelocityPointEval_sd", __pyx_clineno, __pyx_lineno, __pyx_filename);
17655 __Pyx_RefNannyFinishContext();
17657 __pyx_L4_argument_unpacking_done:;
17658 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_rowptr), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"rowptr", 0))) __PYX_ERR(0, 1234, __pyx_L1_error)
17659 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_colind), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"colind", 0))) __PYX_ERR(0, 1235, __pyx_L1_error)
17660 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_diffusionTensor), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"diffusionTensor", 0))) __PYX_ERR(0, 1236, __pyx_L1_error)
17661 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_grad_phi), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"grad_phi", 0))) __PYX_ERR(0, 1237, __pyx_L1_error)
17662 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"velocity", 0))) __PYX_ERR(0, 1238, __pyx_L1_error)
17663 __pyx_r = __pyx_pf_15cpostprocessing_100updateDiffusiveVelocityPointEval_sd(__pyx_self, __pyx_v_updateCoef, __pyx_v_rowptr, __pyx_v_colind, __pyx_v_diffusionTensor, __pyx_v_grad_phi, __pyx_v_velocity);
17669 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17670 Py_XDECREF(values[__pyx_temp]);
17672 goto __pyx_L7_cleaned_up;
17674 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17675 Py_XDECREF(values[__pyx_temp]);
17677 __pyx_L7_cleaned_up:;
17679 __Pyx_RefNannyFinishContext();
17683static PyObject *__pyx_pf_15cpostprocessing_100updateDiffusiveVelocityPointEval_sd(CYTHON_UNUSED PyObject *__pyx_self,
double __pyx_v_updateCoef, PyArrayObject *__pyx_v_rowptr, PyArrayObject *__pyx_v_colind, PyArrayObject *__pyx_v_diffusionTensor, PyArrayObject *__pyx_v_grad_phi, PyArrayObject *__pyx_v_velocity) {
17684 int __pyx_v_nPoints;
17685 PyObject *__pyx_r = NULL;
17686 __Pyx_RefNannyDeclarations
17687 npy_intp __pyx_t_1;
17688 npy_intp __pyx_t_2;
17689 int __pyx_lineno = 0;
17690 const char *__pyx_filename = NULL;
17691 int __pyx_clineno = 0;
17692 __Pyx_RefNannySetupContext(
"updateDiffusiveVelocityPointEval_sd", 0);
17701 __pyx_t_1 = __pyx_f_5numpy_7ndarray_4size___get__(__pyx_v_velocity);
17703 __pyx_t_2 = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_velocity)[(__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_velocity) - 1)]);
17705 if (unlikely(__pyx_t_2 == 0)) {
17706 PyErr_SetString(PyExc_ZeroDivisionError,
"integer division or modulo by zero");
17707 __PYX_ERR(0, 1239, __pyx_L1_error)
17709 else if (
sizeof(npy_intp) ==
sizeof(
long) && (!(((npy_intp)-1) > 0)) && unlikely(__pyx_t_2 == (npy_intp)-1) && unlikely(__Pyx_UNARY_NEG_WOULD_OVERFLOW(__pyx_t_1))) {
17710 PyErr_SetString(PyExc_OverflowError,
"value too large to perform division");
17711 __PYX_ERR(0, 1239, __pyx_L1_error)
17713 __pyx_v_nPoints = __Pyx_div_npy_intp(__pyx_t_1, __pyx_t_2, 0);
17724 postprocessDiffusiveVelocityPointEval_sd(__pyx_v_nPoints, (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_velocity)[(__pyx_f_5numpy_7ndarray_4ndim___get__(__pyx_v_velocity) - 1)]), __pyx_v_updateCoef, ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_rowptr)), ((
int *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_colind)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_diffusionTensor)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_grad_phi)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_velocity)));
17735 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
17738 __Pyx_AddTraceback(
"cpostprocessing.updateDiffusiveVelocityPointEval_sd", __pyx_clineno, __pyx_lineno, __pyx_filename);
17742 __Pyx_XGIVEREF(__pyx_r);
17743 __Pyx_RefNannyFinishContext();
17756static PyObject *__pyx_pw_15cpostprocessing_103calculateElementResidualPWL(PyObject *__pyx_self,
17757#
if CYTHON_VECTORCALL
17758PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17760PyObject *__pyx_args, PyObject *__pyx_kwds
17763static PyMethodDef __pyx_mdef_15cpostprocessing_103calculateElementResidualPWL = {
"calculateElementResidualPWL", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_103calculateElementResidualPWL, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
17764static PyObject *__pyx_pw_15cpostprocessing_103calculateElementResidualPWL(PyObject *__pyx_self,
17765#
if CYTHON_VECTORCALL
17766PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17768PyObject *__pyx_args, PyObject *__pyx_kwds
17771 PyArrayObject *__pyx_v_alpha = 0;
17772 PyArrayObject *__pyx_v_elementResidual = 0;
17773 PyArrayObject *__pyx_v_elementResidualPWL = 0;
17774 #if !CYTHON_VECTORCALL
17775 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
17777 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
17778 PyObject* values[3] = {0,0,0};
17779 int __pyx_lineno = 0;
17780 const char *__pyx_filename = NULL;
17781 int __pyx_clineno = 0;
17782 PyObject *__pyx_r = 0;
17783 __Pyx_RefNannyDeclarations
17784 __Pyx_RefNannySetupContext(
"calculateElementResidualPWL (wrapper)", 0);
17785 #if !CYTHON_VECTORCALL
17786 #if CYTHON_ASSUME_SAFE_SIZE
17787 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
17789 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
17792 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
17794 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_alpha,&__pyx_mstate_global->__pyx_n_u_elementResidual,&__pyx_mstate_global->__pyx_n_u_elementResidualPWL,0};
17795 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
17796 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1249, __pyx_L3_error)
17797 if (__pyx_kwds_len > 0) {
17798 switch (__pyx_nargs) {
17800 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17801 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1249, __pyx_L3_error)
17802 CYTHON_FALLTHROUGH;
17804 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17805 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1249, __pyx_L3_error)
17806 CYTHON_FALLTHROUGH;
17808 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17809 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1249, __pyx_L3_error)
17810 CYTHON_FALLTHROUGH;
17812 default:
goto __pyx_L5_argtuple_error;
17814 const Py_ssize_t kwd_pos_args = __pyx_nargs;
17815 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"calculateElementResidualPWL", 0) < (0)) __PYX_ERR(0, 1249, __pyx_L3_error)
17816 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
17817 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"calculateElementResidualPWL", 1, 3, 3, i); __PYX_ERR(0, 1249, __pyx_L3_error) }
17819 }
else if (unlikely(__pyx_nargs != 3)) {
17820 goto __pyx_L5_argtuple_error;
17822 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17823 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1249, __pyx_L3_error)
17824 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17825 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1249, __pyx_L3_error)
17826 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17827 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1249, __pyx_L3_error)
17829 __pyx_v_alpha = ((PyArrayObject *)values[0]);
17830 __pyx_v_elementResidual = ((PyArrayObject *)values[1]);
17831 __pyx_v_elementResidualPWL = ((PyArrayObject *)values[2]);
17833 goto __pyx_L6_skip;
17834 __pyx_L5_argtuple_error:;
17835 __Pyx_RaiseArgtupleInvalid(
"calculateElementResidualPWL", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1249, __pyx_L3_error)
17837 goto __pyx_L4_argument_unpacking_done;
17839 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17840 Py_XDECREF(values[__pyx_temp]);
17842 __Pyx_AddTraceback(
"cpostprocessing.calculateElementResidualPWL", __pyx_clineno, __pyx_lineno, __pyx_filename);
17843 __Pyx_RefNannyFinishContext();
17845 __pyx_L4_argument_unpacking_done:;
17846 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_alpha), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"alpha", 0))) __PYX_ERR(0, 1249, __pyx_L1_error)
17847 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementResidual), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementResidual", 0))) __PYX_ERR(0, 1250, __pyx_L1_error)
17848 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_elementResidualPWL), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"elementResidualPWL", 0))) __PYX_ERR(0, 1251, __pyx_L1_error)
17849 __pyx_r = __pyx_pf_15cpostprocessing_102calculateElementResidualPWL(__pyx_self, __pyx_v_alpha, __pyx_v_elementResidual, __pyx_v_elementResidualPWL);
17855 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17856 Py_XDECREF(values[__pyx_temp]);
17858 goto __pyx_L7_cleaned_up;
17860 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17861 Py_XDECREF(values[__pyx_temp]);
17863 __pyx_L7_cleaned_up:;
17864 __Pyx_RefNannyFinishContext();
17868static PyObject *__pyx_pf_15cpostprocessing_102calculateElementResidualPWL(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_alpha, PyArrayObject *__pyx_v_elementResidual, PyArrayObject *__pyx_v_elementResidualPWL) {
17869 PyObject *__pyx_r = NULL;
17870 __Pyx_RefNannyDeclarations
17871 __Pyx_RefNannySetupContext(
"calculateElementResidualPWL", 0);
17880 calculateElementResidualPWL((__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementResidual)[0]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementResidual)[1]), (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_elementResidualPWL)[1]), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_alpha)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementResidual)), ((
double *)__pyx_f_5numpy_7ndarray_4data___get__(__pyx_v_elementResidualPWL)));
17891 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
17892 __Pyx_XGIVEREF(__pyx_r);
17893 __Pyx_RefNannyFinishContext();
17906static PyObject *__pyx_pw_15cpostprocessing_105copyElementBoundaryVelocityToParVec(PyObject *__pyx_self,
17907#
if CYTHON_VECTORCALL
17908PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17910PyObject *__pyx_args, PyObject *__pyx_kwds
17913static PyMethodDef __pyx_mdef_15cpostprocessing_105copyElementBoundaryVelocityToParVec = {
"copyElementBoundaryVelocityToParVec", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_105copyElementBoundaryVelocityToParVec, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
17914static PyObject *__pyx_pw_15cpostprocessing_105copyElementBoundaryVelocityToParVec(PyObject *__pyx_self,
17915#
if CYTHON_VECTORCALL
17916PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
17918PyObject *__pyx_args, PyObject *__pyx_kwds
17921 PyArrayObject *__pyx_v_ebq_velocity = 0;
17922 PyArrayObject *__pyx_v_permutations = 0;
17923 PyArrayObject *__pyx_v_ebq_v_par_local = 0;
17924 #if !CYTHON_VECTORCALL
17925 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
17927 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
17928 PyObject* values[3] = {0,0,0};
17929 int __pyx_lineno = 0;
17930 const char *__pyx_filename = NULL;
17931 int __pyx_clineno = 0;
17932 PyObject *__pyx_r = 0;
17933 __Pyx_RefNannyDeclarations
17934 __Pyx_RefNannySetupContext(
"copyElementBoundaryVelocityToParVec (wrapper)", 0);
17935 #if !CYTHON_VECTORCALL
17936 #if CYTHON_ASSUME_SAFE_SIZE
17937 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
17939 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
17942 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
17944 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_ebq_velocity,&__pyx_mstate_global->__pyx_n_u_permutations,&__pyx_mstate_global->__pyx_n_u_ebq_v_par_local,0};
17945 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
17946 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1259, __pyx_L3_error)
17947 if (__pyx_kwds_len > 0) {
17948 switch (__pyx_nargs) {
17950 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17951 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1259, __pyx_L3_error)
17952 CYTHON_FALLTHROUGH;
17954 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17955 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1259, __pyx_L3_error)
17956 CYTHON_FALLTHROUGH;
17958 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17959 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1259, __pyx_L3_error)
17960 CYTHON_FALLTHROUGH;
17962 default:
goto __pyx_L5_argtuple_error;
17964 const Py_ssize_t kwd_pos_args = __pyx_nargs;
17965 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"copyElementBoundaryVelocityToParVec", 0) < (0)) __PYX_ERR(0, 1259, __pyx_L3_error)
17966 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
17967 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"copyElementBoundaryVelocityToParVec", 1, 3, 3, i); __PYX_ERR(0, 1259, __pyx_L3_error) }
17969 }
else if (unlikely(__pyx_nargs != 3)) {
17970 goto __pyx_L5_argtuple_error;
17972 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
17973 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1259, __pyx_L3_error)
17974 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
17975 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1259, __pyx_L3_error)
17976 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
17977 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1259, __pyx_L3_error)
17979 __pyx_v_ebq_velocity = ((PyArrayObject *)values[0]);
17980 __pyx_v_permutations = ((PyArrayObject *)values[1]);
17981 __pyx_v_ebq_v_par_local = ((PyArrayObject *)values[2]);
17983 goto __pyx_L6_skip;
17984 __pyx_L5_argtuple_error:;
17985 __Pyx_RaiseArgtupleInvalid(
"copyElementBoundaryVelocityToParVec", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1259, __pyx_L3_error)
17987 goto __pyx_L4_argument_unpacking_done;
17989 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
17990 Py_XDECREF(values[__pyx_temp]);
17992 __Pyx_AddTraceback(
"cpostprocessing.copyElementBoundaryVelocityToParVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
17993 __Pyx_RefNannyFinishContext();
17995 __pyx_L4_argument_unpacking_done:;
17996 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_velocity", 0))) __PYX_ERR(0, 1259, __pyx_L1_error)
17997 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_permutations), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"permutations", 0))) __PYX_ERR(0, 1260, __pyx_L1_error)
17998 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_v_par_local), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_v_par_local", 0))) __PYX_ERR(0, 1261, __pyx_L1_error)
17999 __pyx_r = __pyx_pf_15cpostprocessing_104copyElementBoundaryVelocityToParVec(__pyx_self, __pyx_v_ebq_velocity, __pyx_v_permutations, __pyx_v_ebq_v_par_local);
18005 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
18006 Py_XDECREF(values[__pyx_temp]);
18008 goto __pyx_L7_cleaned_up;
18010 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
18011 Py_XDECREF(values[__pyx_temp]);
18013 __pyx_L7_cleaned_up:;
18014 __Pyx_RefNannyFinishContext();
18018static PyObject *__pyx_pf_15cpostprocessing_104copyElementBoundaryVelocityToParVec(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_permutations, PyArrayObject *__pyx_v_ebq_v_par_local) {
18022 int __pyx_v_nElementBoundaries;
18023 int __pyx_v_nQuadraturePoints;
18024 int __pyx_v_nSpace;
18025 __Pyx_LocalBuf_ND __pyx_pybuffernd_permutations;
18026 __Pyx_Buffer __pyx_pybuffer_permutations;
18027 PyObject *__pyx_r = NULL;
18028 __Pyx_RefNannyDeclarations
18038 PyObject *__pyx_t_10 = NULL;
18039 PyObject *__pyx_t_11 = NULL;
18040 PyObject *__pyx_t_12 = NULL;
18041 PyObject *__pyx_t_13 = NULL;
18042 Py_ssize_t __pyx_t_14;
18043 Py_ssize_t __pyx_t_15;
18045 PyObject *__pyx_t_17 = NULL;
18046 int __pyx_lineno = 0;
18047 const char *__pyx_filename = NULL;
18048 int __pyx_clineno = 0;
18049 __Pyx_RefNannySetupContext(
"copyElementBoundaryVelocityToParVec", 0);
18050 __pyx_pybuffer_permutations.pybuffer.buf = NULL;
18051 __pyx_pybuffer_permutations.refcount = 0;
18052 __pyx_pybuffernd_permutations.data = NULL;
18053 __pyx_pybuffernd_permutations.rcbuffer = &__pyx_pybuffer_permutations;
18055 __Pyx_BufFmt_StackElem __pyx_stack[1];
18056 if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_permutations.rcbuffer->pybuffer, (PyObject*)__pyx_v_permutations, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 1259, __pyx_L1_error)
18058 __pyx_pybuffernd_permutations.diminfo[0].strides = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_permutations.diminfo[0].shape = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_permutations.diminfo[1].strides = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_permutations.diminfo[1].shape = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.shape[1];
18067 __pyx_v_nElementBoundaries = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v_par_local)[0]);
18076 __pyx_v_nQuadraturePoints = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v_par_local)[1]);
18085 __pyx_v_nSpace = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v_par_local)[2]);
18095 __pyx_t_1 = __pyx_v_nElementBoundaries;
18096 __pyx_t_2 = __pyx_t_1;
18098 for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
18099 __pyx_v_ebN = __pyx_t_3;
18109 __pyx_t_4 = __pyx_v_nQuadraturePoints;
18110 __pyx_t_5 = __pyx_t_4;
18112 for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
18113 __pyx_v_k = __pyx_t_6;
18123 __pyx_t_7 = __pyx_v_nSpace;
18124 __pyx_t_8 = __pyx_t_7;
18126 for (__pyx_t_9 = 0; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
18127 __pyx_v_I = __pyx_t_9;
18136 __pyx_t_10 = __Pyx_PyLong_From_int(__pyx_v_ebN);
if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1271, __pyx_L1_error)
18137 __Pyx_GOTREF(__pyx_t_10);
18138 __pyx_t_11 = __Pyx_PyLong_From_int(__pyx_v_k);
if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1271, __pyx_L1_error)
18139 __Pyx_GOTREF(__pyx_t_11);
18140 __pyx_t_12 = __Pyx_PyLong_From_int(__pyx_v_I);
if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1271, __pyx_L1_error)
18141 __Pyx_GOTREF(__pyx_t_12);
18142 __pyx_t_13 = PyTuple_New(3);
if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1271, __pyx_L1_error)
18143 __Pyx_GOTREF(__pyx_t_13);
18144 __Pyx_GIVEREF(__pyx_t_10);
18145 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_10) != (0)) __PYX_ERR(0, 1271, __pyx_L1_error);
18146 __Pyx_GIVEREF(__pyx_t_11);
18147 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_t_11) != (0)) __PYX_ERR(0, 1271, __pyx_L1_error);
18148 __Pyx_GIVEREF(__pyx_t_12);
18149 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_13, 2, __pyx_t_12) != (0)) __PYX_ERR(0, 1271, __pyx_L1_error);
18153 __pyx_t_12 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ebq_velocity), __pyx_t_13);
if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 1271, __pyx_L1_error)
18154 __Pyx_GOTREF(__pyx_t_12);
18155 __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
18156 __pyx_t_13 = __Pyx_PyLong_From_int(__pyx_v_ebN);
if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 1271, __pyx_L1_error)
18157 __Pyx_GOTREF(__pyx_t_13);
18158 __pyx_t_14 = __pyx_v_ebN;
18159 __pyx_t_15 = __pyx_v_k;
18161 if (__pyx_t_14 < 0) {
18162 __pyx_t_14 += __pyx_pybuffernd_permutations.diminfo[0].shape;
18163 if (unlikely(__pyx_t_14 < 0)) __pyx_t_16 = 0;
18164 }
else if (unlikely(__pyx_t_14 >= __pyx_pybuffernd_permutations.diminfo[0].shape)) __pyx_t_16 = 0;
18165 if (__pyx_t_15 < 0) {
18166 __pyx_t_15 += __pyx_pybuffernd_permutations.diminfo[1].shape;
18167 if (unlikely(__pyx_t_15 < 0)) __pyx_t_16 = 1;
18168 }
else if (unlikely(__pyx_t_15 >= __pyx_pybuffernd_permutations.diminfo[1].shape)) __pyx_t_16 = 1;
18169 if (unlikely(__pyx_t_16 != -1)) {
18170 __Pyx_RaiseBufferIndexError(__pyx_t_16);
18171 __PYX_ERR(0, 1271, __pyx_L1_error)
18173 __pyx_t_11 = __Pyx_PyLong_From_int((*__Pyx_BufPtrStrided2d(
int *, __pyx_pybuffernd_permutations.rcbuffer->pybuffer.buf, __pyx_t_14, __pyx_pybuffernd_permutations.diminfo[0].strides, __pyx_t_15, __pyx_pybuffernd_permutations.diminfo[1].strides)));
if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 1271, __pyx_L1_error)
18174 __Pyx_GOTREF(__pyx_t_11);
18175 __pyx_t_10 = __Pyx_PyLong_From_int(__pyx_v_I);
if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1271, __pyx_L1_error)
18176 __Pyx_GOTREF(__pyx_t_10);
18177 __pyx_t_17 = PyTuple_New(3);
if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1271, __pyx_L1_error)
18178 __Pyx_GOTREF(__pyx_t_17);
18179 __Pyx_GIVEREF(__pyx_t_13);
18180 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_13) != (0)) __PYX_ERR(0, 1271, __pyx_L1_error);
18181 __Pyx_GIVEREF(__pyx_t_11);
18182 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_17, 1, __pyx_t_11) != (0)) __PYX_ERR(0, 1271, __pyx_L1_error);
18183 __Pyx_GIVEREF(__pyx_t_10);
18184 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_17, 2, __pyx_t_10) != (0)) __PYX_ERR(0, 1271, __pyx_L1_error);
18188 if (unlikely((PyObject_SetItem(((PyObject *)__pyx_v_ebq_v_par_local), __pyx_t_17, __pyx_t_12) < 0))) __PYX_ERR(0, 1271, __pyx_L1_error)
18189 __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
18190 __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
18207 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
18210 __Pyx_XDECREF(__pyx_t_10);
18211 __Pyx_XDECREF(__pyx_t_11);
18212 __Pyx_XDECREF(__pyx_t_12);
18213 __Pyx_XDECREF(__pyx_t_13);
18214 __Pyx_XDECREF(__pyx_t_17);
18215 { PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
18216 __Pyx_PyThreadState_declare
18217 __Pyx_PyThreadState_assign
18218 __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
18219 __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_permutations.rcbuffer->pybuffer);
18220 __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
18221 __Pyx_AddTraceback(
"cpostprocessing.copyElementBoundaryVelocityToParVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
18225 __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_permutations.rcbuffer->pybuffer);
18235 __Pyx_XGIVEREF(__pyx_r);
18236 __Pyx_RefNannyFinishContext();
18249static PyObject *__pyx_pw_15cpostprocessing_107addAverageToParVec(PyObject *__pyx_self,
18250#
if CYTHON_VECTORCALL
18251PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
18253PyObject *__pyx_args, PyObject *__pyx_kwds
18256static PyMethodDef __pyx_mdef_15cpostprocessing_107addAverageToParVec = {
"addAverageToParVec", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_107addAverageToParVec, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
18257static PyObject *__pyx_pw_15cpostprocessing_107addAverageToParVec(PyObject *__pyx_self,
18258#
if CYTHON_VECTORCALL
18259PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
18261PyObject *__pyx_args, PyObject *__pyx_kwds
18264 PyArrayObject *__pyx_v_ebq_velocityAverage = 0;
18265 PyArrayObject *__pyx_v_permutations = 0;
18266 PyArrayObject *__pyx_v_ebq_v_par_local = 0;
18267 #if !CYTHON_VECTORCALL
18268 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
18270 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
18271 PyObject* values[3] = {0,0,0};
18272 int __pyx_lineno = 0;
18273 const char *__pyx_filename = NULL;
18274 int __pyx_clineno = 0;
18275 PyObject *__pyx_r = 0;
18276 __Pyx_RefNannyDeclarations
18277 __Pyx_RefNannySetupContext(
"addAverageToParVec (wrapper)", 0);
18278 #if !CYTHON_VECTORCALL
18279 #if CYTHON_ASSUME_SAFE_SIZE
18280 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
18282 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
18285 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
18287 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_ebq_velocityAverage,&__pyx_mstate_global->__pyx_n_u_permutations,&__pyx_mstate_global->__pyx_n_u_ebq_v_par_local,0};
18288 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
18289 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1273, __pyx_L3_error)
18290 if (__pyx_kwds_len > 0) {
18291 switch (__pyx_nargs) {
18293 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
18294 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1273, __pyx_L3_error)
18295 CYTHON_FALLTHROUGH;
18297 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
18298 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1273, __pyx_L3_error)
18299 CYTHON_FALLTHROUGH;
18301 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
18302 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1273, __pyx_L3_error)
18303 CYTHON_FALLTHROUGH;
18305 default:
goto __pyx_L5_argtuple_error;
18307 const Py_ssize_t kwd_pos_args = __pyx_nargs;
18308 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"addAverageToParVec", 0) < (0)) __PYX_ERR(0, 1273, __pyx_L3_error)
18309 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
18310 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"addAverageToParVec", 1, 3, 3, i); __PYX_ERR(0, 1273, __pyx_L3_error) }
18312 }
else if (unlikely(__pyx_nargs != 3)) {
18313 goto __pyx_L5_argtuple_error;
18315 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
18316 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1273, __pyx_L3_error)
18317 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
18318 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1273, __pyx_L3_error)
18319 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
18320 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1273, __pyx_L3_error)
18322 __pyx_v_ebq_velocityAverage = ((PyArrayObject *)values[0]);
18323 __pyx_v_permutations = ((PyArrayObject *)values[1]);
18324 __pyx_v_ebq_v_par_local = ((PyArrayObject *)values[2]);
18326 goto __pyx_L6_skip;
18327 __pyx_L5_argtuple_error:;
18328 __Pyx_RaiseArgtupleInvalid(
"addAverageToParVec", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1273, __pyx_L3_error)
18330 goto __pyx_L4_argument_unpacking_done;
18332 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
18333 Py_XDECREF(values[__pyx_temp]);
18335 __Pyx_AddTraceback(
"cpostprocessing.addAverageToParVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
18336 __Pyx_RefNannyFinishContext();
18338 __pyx_L4_argument_unpacking_done:;
18339 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_velocityAverage), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_velocityAverage", 0))) __PYX_ERR(0, 1273, __pyx_L1_error)
18340 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_permutations), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"permutations", 0))) __PYX_ERR(0, 1274, __pyx_L1_error)
18341 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_v_par_local), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_v_par_local", 0))) __PYX_ERR(0, 1275, __pyx_L1_error)
18342 __pyx_r = __pyx_pf_15cpostprocessing_106addAverageToParVec(__pyx_self, __pyx_v_ebq_velocityAverage, __pyx_v_permutations, __pyx_v_ebq_v_par_local);
18348 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
18349 Py_XDECREF(values[__pyx_temp]);
18351 goto __pyx_L7_cleaned_up;
18353 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
18354 Py_XDECREF(values[__pyx_temp]);
18356 __pyx_L7_cleaned_up:;
18357 __Pyx_RefNannyFinishContext();
18361static PyObject *__pyx_pf_15cpostprocessing_106addAverageToParVec(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_ebq_velocityAverage, PyArrayObject *__pyx_v_permutations, PyArrayObject *__pyx_v_ebq_v_par_local) {
18365 int __pyx_v_nElementBoundaries;
18366 int __pyx_v_nQuadraturePoints;
18367 int __pyx_v_nSpace;
18368 __Pyx_LocalBuf_ND __pyx_pybuffernd_permutations;
18369 __Pyx_Buffer __pyx_pybuffer_permutations;
18370 PyObject *__pyx_r = NULL;
18371 __Pyx_RefNannyDeclarations
18381 PyObject *__pyx_t_10 = NULL;
18382 Py_ssize_t __pyx_t_11;
18383 Py_ssize_t __pyx_t_12;
18385 PyObject *__pyx_t_14 = NULL;
18386 PyObject *__pyx_t_15 = NULL;
18387 PyObject *__pyx_t_16 = NULL;
18388 PyObject *__pyx_t_17 = NULL;
18389 PyObject *__pyx_t_18 = NULL;
18390 int __pyx_lineno = 0;
18391 const char *__pyx_filename = NULL;
18392 int __pyx_clineno = 0;
18393 __Pyx_RefNannySetupContext(
"addAverageToParVec", 0);
18394 __pyx_pybuffer_permutations.pybuffer.buf = NULL;
18395 __pyx_pybuffer_permutations.refcount = 0;
18396 __pyx_pybuffernd_permutations.data = NULL;
18397 __pyx_pybuffernd_permutations.rcbuffer = &__pyx_pybuffer_permutations;
18399 __Pyx_BufFmt_StackElem __pyx_stack[1];
18400 if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_permutations.rcbuffer->pybuffer, (PyObject*)__pyx_v_permutations, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 1273, __pyx_L1_error)
18402 __pyx_pybuffernd_permutations.diminfo[0].strides = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_permutations.diminfo[0].shape = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_permutations.diminfo[1].strides = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_permutations.diminfo[1].shape = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.shape[1];
18411 __pyx_v_nElementBoundaries = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v_par_local)[0]);
18420 __pyx_v_nQuadraturePoints = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v_par_local)[1]);
18429 __pyx_v_nSpace = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v_par_local)[2]);
18439 __pyx_t_1 = __pyx_v_nElementBoundaries;
18440 __pyx_t_2 = __pyx_t_1;
18442 for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
18443 __pyx_v_ebN = __pyx_t_3;
18453 __pyx_t_4 = __pyx_v_nQuadraturePoints;
18454 __pyx_t_5 = __pyx_t_4;
18456 for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
18457 __pyx_v_k = __pyx_t_6;
18467 __pyx_t_7 = __pyx_v_nSpace;
18468 __pyx_t_8 = __pyx_t_7;
18470 for (__pyx_t_9 = 0; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
18471 __pyx_v_I = __pyx_t_9;
18480 __pyx_t_10 = __Pyx_PyLong_From_int(__pyx_v_ebN);
if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1285, __pyx_L1_error)
18481 __Pyx_GOTREF(__pyx_t_10);
18482 __pyx_t_11 = __pyx_v_ebN;
18483 __pyx_t_12 = __pyx_v_k;
18485 if (__pyx_t_11 < 0) {
18486 __pyx_t_11 += __pyx_pybuffernd_permutations.diminfo[0].shape;
18487 if (unlikely(__pyx_t_11 < 0)) __pyx_t_13 = 0;
18488 }
else if (unlikely(__pyx_t_11 >= __pyx_pybuffernd_permutations.diminfo[0].shape)) __pyx_t_13 = 0;
18489 if (__pyx_t_12 < 0) {
18490 __pyx_t_12 += __pyx_pybuffernd_permutations.diminfo[1].shape;
18491 if (unlikely(__pyx_t_12 < 0)) __pyx_t_13 = 1;
18492 }
else if (unlikely(__pyx_t_12 >= __pyx_pybuffernd_permutations.diminfo[1].shape)) __pyx_t_13 = 1;
18493 if (unlikely(__pyx_t_13 != -1)) {
18494 __Pyx_RaiseBufferIndexError(__pyx_t_13);
18495 __PYX_ERR(0, 1285, __pyx_L1_error)
18497 __pyx_t_14 = __Pyx_PyLong_From_int((*__Pyx_BufPtrStrided2d(
int *, __pyx_pybuffernd_permutations.rcbuffer->pybuffer.buf, __pyx_t_11, __pyx_pybuffernd_permutations.diminfo[0].strides, __pyx_t_12, __pyx_pybuffernd_permutations.diminfo[1].strides)));
if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1285, __pyx_L1_error)
18498 __Pyx_GOTREF(__pyx_t_14);
18499 __pyx_t_15 = __Pyx_PyLong_From_int(__pyx_v_I);
if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1285, __pyx_L1_error)
18500 __Pyx_GOTREF(__pyx_t_15);
18501 __pyx_t_16 = PyTuple_New(3);
if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1285, __pyx_L1_error)
18502 __Pyx_GOTREF(__pyx_t_16);
18503 __Pyx_GIVEREF(__pyx_t_10);
18504 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_10) != (0)) __PYX_ERR(0, 1285, __pyx_L1_error);
18505 __Pyx_GIVEREF(__pyx_t_14);
18506 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_16, 1, __pyx_t_14) != (0)) __PYX_ERR(0, 1285, __pyx_L1_error);
18507 __Pyx_GIVEREF(__pyx_t_15);
18508 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_16, 2, __pyx_t_15) != (0)) __PYX_ERR(0, 1285, __pyx_L1_error);
18512 __pyx_t_15 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ebq_v_par_local), __pyx_t_16);
if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1285, __pyx_L1_error)
18513 __Pyx_GOTREF(__pyx_t_15);
18514 __pyx_t_14 = __Pyx_PyLong_From_int(__pyx_v_ebN);
if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1285, __pyx_L1_error)
18515 __Pyx_GOTREF(__pyx_t_14);
18516 __pyx_t_10 = __Pyx_PyLong_From_int(__pyx_v_k);
if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1285, __pyx_L1_error)
18517 __Pyx_GOTREF(__pyx_t_10);
18518 __pyx_t_17 = __Pyx_PyLong_From_int(__pyx_v_I);
if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1285, __pyx_L1_error)
18519 __Pyx_GOTREF(__pyx_t_17);
18520 __pyx_t_18 = PyTuple_New(3);
if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 1285, __pyx_L1_error)
18521 __Pyx_GOTREF(__pyx_t_18);
18522 __Pyx_GIVEREF(__pyx_t_14);
18523 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_14) != (0)) __PYX_ERR(0, 1285, __pyx_L1_error);
18524 __Pyx_GIVEREF(__pyx_t_10);
18525 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_18, 1, __pyx_t_10) != (0)) __PYX_ERR(0, 1285, __pyx_L1_error);
18526 __Pyx_GIVEREF(__pyx_t_17);
18527 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_18, 2, __pyx_t_17) != (0)) __PYX_ERR(0, 1285, __pyx_L1_error);
18531 __pyx_t_17 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ebq_velocityAverage), __pyx_t_18);
if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1285, __pyx_L1_error)
18532 __Pyx_GOTREF(__pyx_t_17);
18533 __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
18534 __pyx_t_18 = __Pyx_PyNumber_InPlaceAdd_object_object(__pyx_t_15, __pyx_t_17);
if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 1285, __pyx_L1_error)
18535 __Pyx_GOTREF(__pyx_t_18);
18536 __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
18537 __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
18538 if (unlikely((PyObject_SetItem(((PyObject *)__pyx_v_ebq_v_par_local), __pyx_t_16, __pyx_t_18) < 0))) __PYX_ERR(0, 1285, __pyx_L1_error)
18539 __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0;
18540 __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
18557 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
18560 __Pyx_XDECREF(__pyx_t_10);
18561 __Pyx_XDECREF(__pyx_t_14);
18562 __Pyx_XDECREF(__pyx_t_15);
18563 __Pyx_XDECREF(__pyx_t_16);
18564 __Pyx_XDECREF(__pyx_t_17);
18565 __Pyx_XDECREF(__pyx_t_18);
18566 { PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
18567 __Pyx_PyThreadState_declare
18568 __Pyx_PyThreadState_assign
18569 __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
18570 __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_permutations.rcbuffer->pybuffer);
18571 __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
18572 __Pyx_AddTraceback(
"cpostprocessing.addAverageToParVec", __pyx_clineno, __pyx_lineno, __pyx_filename);
18576 __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_permutations.rcbuffer->pybuffer);
18586 __Pyx_XGIVEREF(__pyx_r);
18587 __Pyx_RefNannyFinishContext();
18600static PyObject *__pyx_pw_15cpostprocessing_109copyParVecToElementBoundaryVelocity(PyObject *__pyx_self,
18601#
if CYTHON_VECTORCALL
18602PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
18604PyObject *__pyx_args, PyObject *__pyx_kwds
18607static PyMethodDef __pyx_mdef_15cpostprocessing_109copyParVecToElementBoundaryVelocity = {
"copyParVecToElementBoundaryVelocity", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_109copyParVecToElementBoundaryVelocity, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0};
18608static PyObject *__pyx_pw_15cpostprocessing_109copyParVecToElementBoundaryVelocity(PyObject *__pyx_self,
18609#
if CYTHON_VECTORCALL
18610PyObject *
const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds
18612PyObject *__pyx_args, PyObject *__pyx_kwds
18615 PyArrayObject *__pyx_v_ebq_velocity = 0;
18616 PyArrayObject *__pyx_v_permutations = 0;
18617 PyArrayObject *__pyx_v_ebq_v_par_local = 0;
18618 #if !CYTHON_VECTORCALL
18619 CYTHON_UNUSED Py_ssize_t __pyx_nargs;
18621 CYTHON_UNUSED PyObject *
const *__pyx_kwvalues;
18622 PyObject* values[3] = {0,0,0};
18623 int __pyx_lineno = 0;
18624 const char *__pyx_filename = NULL;
18625 int __pyx_clineno = 0;
18626 PyObject *__pyx_r = 0;
18627 __Pyx_RefNannyDeclarations
18628 __Pyx_RefNannySetupContext(
"copyParVecToElementBoundaryVelocity (wrapper)", 0);
18629 #if !CYTHON_VECTORCALL
18630 #if CYTHON_ASSUME_SAFE_SIZE
18631 __pyx_nargs = PyTuple_GET_SIZE(__pyx_args);
18633 __pyx_nargs = PyTuple_Size(__pyx_args);
if (unlikely(__pyx_nargs < 0))
return NULL;
18636 __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs);
18638 PyObject **
const __pyx_pyargnames[] = {&__pyx_mstate_global->__pyx_n_u_ebq_velocity,&__pyx_mstate_global->__pyx_n_u_permutations,&__pyx_mstate_global->__pyx_n_u_ebq_v_par_local,0};
18639 const Py_ssize_t __pyx_kwds_len = (__pyx_kwds) ? __Pyx_NumKwargs_FASTCALL(__pyx_kwds) : 0;
18640 if (unlikely(__pyx_kwds_len < 0)) __PYX_ERR(0, 1287, __pyx_L3_error)
18641 if (__pyx_kwds_len > 0) {
18642 switch (__pyx_nargs) {
18644 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
18645 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1287, __pyx_L3_error)
18646 CYTHON_FALLTHROUGH;
18648 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
18649 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1287, __pyx_L3_error)
18650 CYTHON_FALLTHROUGH;
18652 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
18653 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1287, __pyx_L3_error)
18654 CYTHON_FALLTHROUGH;
18656 default:
goto __pyx_L5_argtuple_error;
18658 const Py_ssize_t kwd_pos_args = __pyx_nargs;
18659 if (__Pyx_ParseKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values, kwd_pos_args, __pyx_kwds_len,
"copyParVecToElementBoundaryVelocity", 0) < (0)) __PYX_ERR(0, 1287, __pyx_L3_error)
18660 for (Py_ssize_t i = __pyx_nargs; i < 3; i++) {
18661 if (unlikely(!values[i])) { __Pyx_RaiseArgtupleInvalid(
"copyParVecToElementBoundaryVelocity", 1, 3, 3, i); __PYX_ERR(0, 1287, __pyx_L3_error) }
18663 }
else if (unlikely(__pyx_nargs != 3)) {
18664 goto __pyx_L5_argtuple_error;
18666 values[0] = __Pyx_ArgRef_FASTCALL(__pyx_args, 0);
18667 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[0])) __PYX_ERR(0, 1287, __pyx_L3_error)
18668 values[1] = __Pyx_ArgRef_FASTCALL(__pyx_args, 1);
18669 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[1])) __PYX_ERR(0, 1287, __pyx_L3_error)
18670 values[2] = __Pyx_ArgRef_FASTCALL(__pyx_args, 2);
18671 if (!CYTHON_ASSUME_SAFE_MACROS && unlikely(!values[2])) __PYX_ERR(0, 1287, __pyx_L3_error)
18673 __pyx_v_ebq_velocity = ((PyArrayObject *)values[0]);
18674 __pyx_v_permutations = ((PyArrayObject *)values[1]);
18675 __pyx_v_ebq_v_par_local = ((PyArrayObject *)values[2]);
18677 goto __pyx_L6_skip;
18678 __pyx_L5_argtuple_error:;
18679 __Pyx_RaiseArgtupleInvalid(
"copyParVecToElementBoundaryVelocity", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 1287, __pyx_L3_error)
18681 goto __pyx_L4_argument_unpacking_done;
18683 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
18684 Py_XDECREF(values[__pyx_temp]);
18686 __Pyx_AddTraceback(
"cpostprocessing.copyParVecToElementBoundaryVelocity", __pyx_clineno, __pyx_lineno, __pyx_filename);
18687 __Pyx_RefNannyFinishContext();
18689 __pyx_L4_argument_unpacking_done:;
18690 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_velocity), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_velocity", 0))) __PYX_ERR(0, 1287, __pyx_L1_error)
18691 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_permutations), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"permutations", 0))) __PYX_ERR(0, 1288, __pyx_L1_error)
18692 if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_ebq_v_par_local), __pyx_mstate_global->__pyx_ptype_5numpy_ndarray, 1,
"ebq_v_par_local", 0))) __PYX_ERR(0, 1289, __pyx_L1_error)
18693 __pyx_r = __pyx_pf_15cpostprocessing_108copyParVecToElementBoundaryVelocity(__pyx_self, __pyx_v_ebq_velocity, __pyx_v_permutations, __pyx_v_ebq_v_par_local);
18699 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
18700 Py_XDECREF(values[__pyx_temp]);
18702 goto __pyx_L7_cleaned_up;
18704 for (Py_ssize_t __pyx_temp=0; __pyx_temp < (Py_ssize_t)(
sizeof(values)/
sizeof(values[0])); ++__pyx_temp) {
18705 Py_XDECREF(values[__pyx_temp]);
18707 __pyx_L7_cleaned_up:;
18708 __Pyx_RefNannyFinishContext();
18712static PyObject *__pyx_pf_15cpostprocessing_108copyParVecToElementBoundaryVelocity(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_ebq_velocity, PyArrayObject *__pyx_v_permutations, PyArrayObject *__pyx_v_ebq_v_par_local) {
18716 int __pyx_v_nElementBoundaries;
18717 int __pyx_v_nQuadraturePoints;
18718 int __pyx_v_nSpace;
18719 __Pyx_LocalBuf_ND __pyx_pybuffernd_permutations;
18720 __Pyx_Buffer __pyx_pybuffer_permutations;
18721 PyObject *__pyx_r = NULL;
18722 __Pyx_RefNannyDeclarations
18732 PyObject *__pyx_t_10 = NULL;
18733 Py_ssize_t __pyx_t_11;
18734 Py_ssize_t __pyx_t_12;
18736 PyObject *__pyx_t_14 = NULL;
18737 PyObject *__pyx_t_15 = NULL;
18738 PyObject *__pyx_t_16 = NULL;
18739 PyObject *__pyx_t_17 = NULL;
18740 int __pyx_lineno = 0;
18741 const char *__pyx_filename = NULL;
18742 int __pyx_clineno = 0;
18743 __Pyx_RefNannySetupContext(
"copyParVecToElementBoundaryVelocity", 0);
18744 __pyx_pybuffer_permutations.pybuffer.buf = NULL;
18745 __pyx_pybuffer_permutations.refcount = 0;
18746 __pyx_pybuffernd_permutations.data = NULL;
18747 __pyx_pybuffernd_permutations.rcbuffer = &__pyx_pybuffer_permutations;
18749 __Pyx_BufFmt_StackElem __pyx_stack[1];
18750 if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_permutations.rcbuffer->pybuffer, (PyObject*)__pyx_v_permutations, &__Pyx_TypeInfo_int, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 1287, __pyx_L1_error)
18752 __pyx_pybuffernd_permutations.diminfo[0].strides = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_permutations.diminfo[0].shape = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_permutations.diminfo[1].strides = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_permutations.diminfo[1].shape = __pyx_pybuffernd_permutations.rcbuffer->pybuffer.shape[1];
18761 __pyx_v_nElementBoundaries = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v_par_local)[0]);
18770 __pyx_v_nQuadraturePoints = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v_par_local)[1]);
18779 __pyx_v_nSpace = (__pyx_f_5numpy_7ndarray_5shape___get__(__pyx_v_ebq_v_par_local)[2]);
18789 __pyx_t_1 = __pyx_v_nElementBoundaries;
18790 __pyx_t_2 = __pyx_t_1;
18792 for (__pyx_t_3 = 0; __pyx_t_3 < __pyx_t_2; __pyx_t_3+=1) {
18793 __pyx_v_ebN = __pyx_t_3;
18803 __pyx_t_4 = __pyx_v_nQuadraturePoints;
18804 __pyx_t_5 = __pyx_t_4;
18806 for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
18807 __pyx_v_k = __pyx_t_6;
18816 __pyx_t_7 = __pyx_v_nSpace;
18817 __pyx_t_8 = __pyx_t_7;
18819 for (__pyx_t_9 = 0; __pyx_t_9 < __pyx_t_8; __pyx_t_9+=1) {
18820 __pyx_v_I = __pyx_t_9;
18827 __pyx_t_10 = __Pyx_PyLong_From_int(__pyx_v_ebN);
if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1299, __pyx_L1_error)
18828 __Pyx_GOTREF(__pyx_t_10);
18829 __pyx_t_11 = __pyx_v_ebN;
18830 __pyx_t_12 = __pyx_v_k;
18832 if (__pyx_t_11 < 0) {
18833 __pyx_t_11 += __pyx_pybuffernd_permutations.diminfo[0].shape;
18834 if (unlikely(__pyx_t_11 < 0)) __pyx_t_13 = 0;
18835 }
else if (unlikely(__pyx_t_11 >= __pyx_pybuffernd_permutations.diminfo[0].shape)) __pyx_t_13 = 0;
18836 if (__pyx_t_12 < 0) {
18837 __pyx_t_12 += __pyx_pybuffernd_permutations.diminfo[1].shape;
18838 if (unlikely(__pyx_t_12 < 0)) __pyx_t_13 = 1;
18839 }
else if (unlikely(__pyx_t_12 >= __pyx_pybuffernd_permutations.diminfo[1].shape)) __pyx_t_13 = 1;
18840 if (unlikely(__pyx_t_13 != -1)) {
18841 __Pyx_RaiseBufferIndexError(__pyx_t_13);
18842 __PYX_ERR(0, 1299, __pyx_L1_error)
18844 __pyx_t_14 = __Pyx_PyLong_From_int((*__Pyx_BufPtrStrided2d(
int *, __pyx_pybuffernd_permutations.rcbuffer->pybuffer.buf, __pyx_t_11, __pyx_pybuffernd_permutations.diminfo[0].strides, __pyx_t_12, __pyx_pybuffernd_permutations.diminfo[1].strides)));
if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1299, __pyx_L1_error)
18845 __Pyx_GOTREF(__pyx_t_14);
18846 __pyx_t_15 = __Pyx_PyLong_From_int(__pyx_v_I);
if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1299, __pyx_L1_error)
18847 __Pyx_GOTREF(__pyx_t_15);
18848 __pyx_t_16 = PyTuple_New(3);
if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1299, __pyx_L1_error)
18849 __Pyx_GOTREF(__pyx_t_16);
18850 __Pyx_GIVEREF(__pyx_t_10);
18851 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_10) != (0)) __PYX_ERR(0, 1299, __pyx_L1_error);
18852 __Pyx_GIVEREF(__pyx_t_14);
18853 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_16, 1, __pyx_t_14) != (0)) __PYX_ERR(0, 1299, __pyx_L1_error);
18854 __Pyx_GIVEREF(__pyx_t_15);
18855 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_16, 2, __pyx_t_15) != (0)) __PYX_ERR(0, 1299, __pyx_L1_error);
18859 __pyx_t_15 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_ebq_v_par_local), __pyx_t_16);
if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 1299, __pyx_L1_error)
18860 __Pyx_GOTREF(__pyx_t_15);
18861 __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
18862 __pyx_t_16 = __Pyx_PyLong_From_int(__pyx_v_ebN);
if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 1299, __pyx_L1_error)
18863 __Pyx_GOTREF(__pyx_t_16);
18864 __pyx_t_14 = __Pyx_PyLong_From_int(__pyx_v_k);
if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 1299, __pyx_L1_error)
18865 __Pyx_GOTREF(__pyx_t_14);
18866 __pyx_t_10 = __Pyx_PyLong_From_int(__pyx_v_I);
if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 1299, __pyx_L1_error)
18867 __Pyx_GOTREF(__pyx_t_10);
18868 __pyx_t_17 = PyTuple_New(3);
if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 1299, __pyx_L1_error)
18869 __Pyx_GOTREF(__pyx_t_17);
18870 __Pyx_GIVEREF(__pyx_t_16);
18871 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_16) != (0)) __PYX_ERR(0, 1299, __pyx_L1_error);
18872 __Pyx_GIVEREF(__pyx_t_14);
18873 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_17, 1, __pyx_t_14) != (0)) __PYX_ERR(0, 1299, __pyx_L1_error);
18874 __Pyx_GIVEREF(__pyx_t_10);
18875 if (__Pyx_PyTuple_SET_ITEM(__pyx_t_17, 2, __pyx_t_10) != (0)) __PYX_ERR(0, 1299, __pyx_L1_error);
18879 if (unlikely((PyObject_SetItem(((PyObject *)__pyx_v_ebq_velocity), __pyx_t_17, __pyx_t_15) < 0))) __PYX_ERR(0, 1299, __pyx_L1_error)
18880 __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
18881 __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
18898 __pyx_r = Py_None; __Pyx_INCREF(Py_None);
18901 __Pyx_XDECREF(__pyx_t_10);
18902 __Pyx_XDECREF(__pyx_t_14);
18903 __Pyx_XDECREF(__pyx_t_15);
18904 __Pyx_XDECREF(__pyx_t_16);
18905 __Pyx_XDECREF(__pyx_t_17);
18906 { PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
18907 __Pyx_PyThreadState_declare
18908 __Pyx_PyThreadState_assign
18909 __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
18910 __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_permutations.rcbuffer->pybuffer);
18911 __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
18912 __Pyx_AddTraceback(
"cpostprocessing.copyParVecToElementBoundaryVelocity", __pyx_clineno, __pyx_lineno, __pyx_filename);
18916 __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_permutations.rcbuffer->pybuffer);
18926 __Pyx_XGIVEREF(__pyx_r);
18927 __Pyx_RefNannyFinishContext();
18932static PyObject *__pyx_tp_new__initialisation_15cpostprocessing_NodeStarFactor(PyObject *o,
18933#
if CYTHON_VECTORCALL_TPNEW
18934 PyObject *
const *args, Py_ssize_t nargs, PyObject *kwnames
18936 PyObject *a, PyObject *k
18940 int cinit_result = __pyx_pw_15cpostprocessing_14NodeStarFactor_1__cinit__(o,
18941#
if CYTHON_VECTORCALL_TPNEW
18942 args, nargs, kwnames
18947 if (unlikely(cinit_result))
goto bad;
18951 Py_DECREF(o); o = 0;
18955static PyObject *__pyx_tp_new_vectorcall_15cpostprocessing_NodeStarFactor(PyTypeObject *t,
18956#
if CYTHON_VECTORCALL_TPNEW
18957 PyObject *
const *args, Py_ssize_t nargs, PyObject *kwnames
18959 PyObject *a, PyObject *k
18963 o = __Pyx_AllocateExtensionType(t, 0);
18964 if (unlikely(!o))
return 0;
18965 return __pyx_tp_new__initialisation_15cpostprocessing_NodeStarFactor(o,
18966#
if CYTHON_VECTORCALL_TPNEW
18967 args, nargs, kwnames
18974#if CYTHON_VECTORCALL_TPNEW
18975static PyObject *__pyx_tp_new_15cpostprocessing_NodeStarFactor(PyTypeObject *t, PyObject *a, PyObject *k) {
18976 return __Pyx_CallTpnewAsVectorcall(__pyx_tp_new_vectorcall_15cpostprocessing_NodeStarFactor, t, a, k);
18980#if CYTHON_VECTORCALL_TPNEW
18981static PyObject *__pyx_tp_vectorcall_15cpostprocessing_NodeStarFactor(PyObject *t, PyObject *
const *args,
size_t nargsf, PyObject *kwnames) {
18982 if (unlikely((PyTypeObject*)t != __pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor || __Pyx_PyType_HasFeature((PyTypeObject*)t, Py_TPFLAGS_IS_ABSTRACT))) {
18983 return __Pyx_CallNewInitFromVectorcall((PyTypeObject*)t, args, nargsf, kwnames);
18985 Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
18986 PyObject *o = __pyx_tp_new_vectorcall_15cpostprocessing_NodeStarFactor((PyTypeObject*)t, args, nargs, kwnames);
18991static void __pyx_tp_dealloc_15cpostprocessing_NodeStarFactor(PyObject *o) {
18992 #if CYTHON_USE_TP_FINALIZE
18993 if (unlikely(__Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && (!PyType_IS_GC(Py_TYPE(o)) || !__Pyx_PyObject_GC_IsFinalized(o))) {
18994 if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_15cpostprocessing_NodeStarFactor) {
18995 if (PyObject_CallFinalizerFromDealloc(o))
return;
19000 PyObject *etype, *eval, *etb;
19001 __Pyx_PyErr_FetchException(&etype, &eval, &etb);
19002 __Pyx_DeallocKeepAliveBegin(o);
19003 __pyx_pw_15cpostprocessing_14NodeStarFactor_3__dealloc__(o);
19004 __Pyx_DeallocKeepAliveEnd(o);
19005 __Pyx_PyErr_RestoreException(etype, eval, etb);
19007 PyTypeObject *tp = Py_TYPE(o);
19008 #if CYTHON_USE_TYPE_SLOTS
19012 freefunc tp_free = (freefunc)PyType_GetSlot(tp, Py_tp_free);
19013 if (tp_free) tp_free(o);
19016 #if CYTHON_USE_TYPE_SPECS
19021static PyMethodDef __pyx_methods_15cpostprocessing_NodeStarFactor[] = {
19022 {
"setU", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_14NodeStarFactor_5setU, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0},
19023 {
"copyData", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_14NodeStarFactor_7copyData, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0},
19024 {
"__reduce_cython__", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_14NodeStarFactor_9__reduce_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0},
19025 {
"__setstate_cython__", (PyCFunction)(
void(*)(
void))(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_15cpostprocessing_14NodeStarFactor_11__setstate_cython__, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0},
19028#if CYTHON_USE_TYPE_SPECS
19029static PyType_Slot __pyx_type_15cpostprocessing_NodeStarFactor_slots[] = {
19030 {Py_tp_dealloc, (
void *)__pyx_tp_dealloc_15cpostprocessing_NodeStarFactor},
19031 {Py_tp_methods, (
void *)__pyx_methods_15cpostprocessing_NodeStarFactor},
19032 {Py_tp_new, (
void *)__pyx_tp_new_15cpostprocessing_NodeStarFactor},
19033 #if (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) && (!CYTHON_COMPILING_IN_LIMITED_API || __PYX_LIMITED_VERSION_HEX >= 0x030E0000)
19034 #if CYTHON_VECTORCALL_TPNEW
19035 {Py_tp_vectorcall, (
void *)__pyx_tp_vectorcall_15cpostprocessing_NodeStarFactor},
19040static PyType_Spec __pyx_type_15cpostprocessing_NodeStarFactor_spec = {
19041 "cpostprocessing.NodeStarFactor",
19042 sizeof(
struct __pyx_obj_15cpostprocessing_NodeStarFactor),
19044 Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_BASETYPE,
19045 __pyx_type_15cpostprocessing_NodeStarFactor_slots,
19049static PyTypeObject __pyx_type_15cpostprocessing_NodeStarFactor = {
19050 PyVarObject_HEAD_INIT(0, 0)
19051 "cpostprocessing.""NodeStarFactor",
19052 sizeof(
struct __pyx_obj_15cpostprocessing_NodeStarFactor),
19054 __pyx_tp_dealloc_15cpostprocessing_NodeStarFactor,
19069 Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_BASETYPE,
19077 __pyx_methods_15cpostprocessing_NodeStarFactor,
19084 #if !CYTHON_USE_TYPE_SPECS
19089 __pyx_tp_new_15cpostprocessing_NodeStarFactor,
19099 #if CYTHON_USE_TP_FINALIZE
19104 #if (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) && (!CYTHON_COMPILING_IN_LIMITED_API || __PYX_LIMITED_VERSION_HEX >= 0x030E0000)
19105 #if CYTHON_VECTORCALL_TPNEW
19106 __pyx_tp_vectorcall_15cpostprocessing_NodeStarFactor,
19111 #if __PYX_NEED_TP_PRINT_SLOT == 1
19114 #if PY_VERSION_HEX >= 0x030C0000
19117 #if PY_VERSION_HEX >= 0x030d00A4
19120 #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x030a0000
19126static PyMethodDef __pyx_methods[] = {
19130static CYTHON_SMALL_CODE
int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate);
19131static CYTHON_SMALL_CODE
int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate);
19132static CYTHON_SMALL_CODE
int __Pyx_InitGlobals(
void);
19133static CYTHON_SMALL_CODE
int __Pyx_InitAfterSharedUtility(
void);
19134static CYTHON_SMALL_CODE
int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate);
19135static CYTHON_SMALL_CODE
int __Pyx_modinit_Global_init_code(__pyx_mstatetype *__pyx_mstate);
19136static CYTHON_SMALL_CODE
int __Pyx_modinit_Variable_export_code(__pyx_mstatetype *__pyx_mstate);
19137static CYTHON_SMALL_CODE
int __Pyx_modinit_Function_export_code(__pyx_mstatetype *__pyx_mstate);
19138static CYTHON_SMALL_CODE
int __Pyx_modinit_Exttype___pyx_obj_15cpostprocessing_NodeStarFactor(__pyx_mstatetype *__pyx_mstate);
19139static CYTHON_SMALL_CODE
int __Pyx_modinit_Type_import_code(__pyx_mstatetype *__pyx_mstate);
19140static CYTHON_SMALL_CODE
int __Pyx_modinit_Variable_import_code(__pyx_mstatetype *__pyx_mstate);
19141static CYTHON_SMALL_CODE
int __Pyx_modinit_Function_import_code(__pyx_mstatetype *__pyx_mstate);
19142static CYTHON_SMALL_CODE
int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate);
19145static int __Pyx_modinit_Global_init_code(__pyx_mstatetype *__pyx_mstate) {
19146 __Pyx_RefNannyDeclarations
19147 CYTHON_UNUSED_VAR(__pyx_mstate);
19148 __Pyx_RefNannySetupContext(
"__Pyx_modinit_Global_init_code", 0);
19150 __Pyx_RefNannyFinishContext();
19154static int __Pyx_modinit_Variable_export_code(__pyx_mstatetype *__pyx_mstate) {
19155 __Pyx_RefNannyDeclarations
19156 CYTHON_UNUSED_VAR(__pyx_mstate);
19157 __Pyx_RefNannySetupContext(
"__Pyx_modinit_Variable_export_code", 0);
19159 __Pyx_RefNannyFinishContext();
19163static int __Pyx_modinit_Function_export_code(__pyx_mstatetype *__pyx_mstate) {
19164 __Pyx_RefNannyDeclarations
19165 CYTHON_UNUSED_VAR(__pyx_mstate);
19166 __Pyx_RefNannySetupContext(
"__Pyx_modinit_Function_export_code", 0);
19168 __Pyx_RefNannyFinishContext();
19172static int __Pyx_modinit_Exttype___pyx_obj_15cpostprocessing_NodeStarFactor(__pyx_mstatetype *__pyx_mstate) {
19173 __Pyx_RefNannyDeclarations
19174 int __pyx_lineno = 0;
19175 const char *__pyx_filename = NULL;
19176 int __pyx_clineno = 0;
19177 CYTHON_UNUSED_VAR(__pyx_mstate);
19178 __Pyx_RefNannySetupContext(
"__Pyx_modinit_Exttype___pyx_obj_15cpostprocessing_NodeStarFactor", 0);
19180 #if CYTHON_USE_TYPE_SPECS
19181 __pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_15cpostprocessing_NodeStarFactor_spec, NULL);
if (unlikely(!__pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor)) __PYX_ERR(0, 763, __pyx_L1_error)
19183 __pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor = &__pyx_type_15cpostprocessing_NodeStarFactor;
19185 #if !CYTHON_COMPILING_IN_LIMITED_API
19187 #if !CYTHON_USE_TYPE_SPECS
19188 if (__Pyx_PyType_Ready(__pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor) < (0)) __PYX_ERR(0, 763, __pyx_L1_error)
19190 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19191 PyUnstable_Object_EnableDeferredRefcount((PyObject*)__pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor);
19193 #if !CYTHON_COMPILING_IN_LIMITED_API
19194 if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor->tp_dictoffset && __pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor->tp_getattro == PyObject_GenericGetAttr)) {
19195 __pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor->tp_getattro = PyObject_GenericGetAttr;
19198 if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_NodeStarFactor, (PyObject *) __pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor) < (0)) __PYX_ERR(0, 763, __pyx_L1_error)
19199 if (__Pyx_setup_reduce((PyObject *) __pyx_mstate->__pyx_ptype_15cpostprocessing_NodeStarFactor) < (0)) __PYX_ERR(0, 763, __pyx_L1_error)
19200 __Pyx_RefNannyFinishContext();
19203 __Pyx_RefNannyFinishContext();
19207static int __Pyx_modinit_Type_import_code(__pyx_mstatetype *__pyx_mstate) {
19208 __Pyx_RefNannyDeclarations
19209 PyObject *__pyx_t_1 = NULL;
19210 int __pyx_lineno = 0;
19211 const char *__pyx_filename = NULL;
19212 int __pyx_clineno = 0;
19213 CYTHON_UNUSED_VAR(__pyx_mstate);
19214 __Pyx_RefNannySetupContext(
"__Pyx_modinit_Type_import_code", 0);
19216 __pyx_t_1 = PyImport_ImportModule(__Pyx_BUILTIN_MODULE_NAME);
if (unlikely(!__pyx_t_1)) __PYX_ERR(3, 9, __pyx_L1_error)
19217 __Pyx_GOTREF(__pyx_t_1);
19218 __pyx_mstate->__pyx_ptype_7cpython_4type_type = __Pyx_ImportType_3_3_0(__pyx_t_1, __Pyx_BUILTIN_MODULE_NAME,
"type",
19219 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19220 sizeof(PyTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyTypeObject),
19221 #elif CYTHON_COMPILING_IN_LIMITED_API
19224 sizeof(PyHeapTypeObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyHeapTypeObject),
19226 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_7cpython_4type_type) __PYX_ERR(3, 9, __pyx_L1_error)
19227 __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
19228 __pyx_t_1 = PyImport_ImportModule(
"numpy");
if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 229, __pyx_L1_error)
19229 __Pyx_GOTREF(__pyx_t_1);
19230 __pyx_mstate->__pyx_ptype_5numpy_dtype = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"dtype",
19231 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19232 sizeof(PyArray_Descr), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArray_Descr),
19233 #elif CYTHON_COMPILING_IN_LIMITED_API
19234 sizeof(PyArray_Descr), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArray_Descr),
19236 sizeof(PyArray_Descr), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArray_Descr),
19238 __Pyx_ImportType_CheckSize_Ignore_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_dtype) __PYX_ERR(1, 229, __pyx_L1_error)
19239 __pyx_mstate->__pyx_ptype_5numpy_flatiter = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"flatiter",
19240 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19241 sizeof(PyArrayIterObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArrayIterObject),
19242 #elif CYTHON_COMPILING_IN_LIMITED_API
19243 sizeof(PyArrayIterObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArrayIterObject),
19245 sizeof(PyArrayIterObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArrayIterObject),
19247 __Pyx_ImportType_CheckSize_Ignore_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_flatiter) __PYX_ERR(1, 286, __pyx_L1_error)
19248 __pyx_mstate->__pyx_ptype_5numpy_broadcast = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"broadcast",
19249 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19250 sizeof(PyArrayMultiIterObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArrayMultiIterObject),
19251 #elif CYTHON_COMPILING_IN_LIMITED_API
19252 sizeof(PyArrayMultiIterObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArrayMultiIterObject),
19254 sizeof(PyArrayMultiIterObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArrayMultiIterObject),
19256 __Pyx_ImportType_CheckSize_Ignore_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_broadcast) __PYX_ERR(1, 290, __pyx_L1_error)
19257 __pyx_mstate->__pyx_ptype_5numpy_ndarray = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"ndarray",
19258 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19259 sizeof(PyArrayObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArrayObject),
19260 #elif CYTHON_COMPILING_IN_LIMITED_API
19261 sizeof(PyArrayObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArrayObject),
19263 sizeof(PyArrayObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyArrayObject),
19265 __Pyx_ImportType_CheckSize_Ignore_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_ndarray) __PYX_ERR(1, 329, __pyx_L1_error)
19266 __pyx_mstate->__pyx_ptype_5numpy_generic = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"generic",
19267 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19268 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19269 #elif CYTHON_COMPILING_IN_LIMITED_API
19270 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19272 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19274 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_generic) __PYX_ERR(1, 847, __pyx_L1_error)
19275 __pyx_mstate->__pyx_ptype_5numpy_number = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"number",
19276 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19277 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19278 #elif CYTHON_COMPILING_IN_LIMITED_API
19279 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19281 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19283 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_number) __PYX_ERR(1, 849, __pyx_L1_error)
19284 __pyx_mstate->__pyx_ptype_5numpy_integer = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"integer",
19285 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19286 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19287 #elif CYTHON_COMPILING_IN_LIMITED_API
19288 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19290 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19292 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_integer) __PYX_ERR(1, 851, __pyx_L1_error)
19293 __pyx_mstate->__pyx_ptype_5numpy_signedinteger = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"signedinteger",
19294 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19295 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19296 #elif CYTHON_COMPILING_IN_LIMITED_API
19297 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19299 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19301 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_signedinteger) __PYX_ERR(1, 853, __pyx_L1_error)
19302 __pyx_mstate->__pyx_ptype_5numpy_unsignedinteger = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"unsignedinteger",
19303 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19304 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19305 #elif CYTHON_COMPILING_IN_LIMITED_API
19306 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19308 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19310 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_unsignedinteger) __PYX_ERR(1, 855, __pyx_L1_error)
19311 __pyx_mstate->__pyx_ptype_5numpy_inexact = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"inexact",
19312 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19313 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19314 #elif CYTHON_COMPILING_IN_LIMITED_API
19315 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19317 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19319 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_inexact) __PYX_ERR(1, 857, __pyx_L1_error)
19320 __pyx_mstate->__pyx_ptype_5numpy_floating = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"floating",
19321 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19322 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19323 #elif CYTHON_COMPILING_IN_LIMITED_API
19324 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19326 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19328 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_floating) __PYX_ERR(1, 859, __pyx_L1_error)
19329 __pyx_mstate->__pyx_ptype_5numpy_complexfloating = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"complexfloating",
19330 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19331 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19332 #elif CYTHON_COMPILING_IN_LIMITED_API
19333 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19335 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19337 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_complexfloating) __PYX_ERR(1, 861, __pyx_L1_error)
19338 __pyx_mstate->__pyx_ptype_5numpy_flexible = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"flexible",
19339 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19340 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19341 #elif CYTHON_COMPILING_IN_LIMITED_API
19342 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19344 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19346 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_flexible) __PYX_ERR(1, 863, __pyx_L1_error)
19347 __pyx_mstate->__pyx_ptype_5numpy_character = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"character",
19348 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19349 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19350 #elif CYTHON_COMPILING_IN_LIMITED_API
19351 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19353 sizeof(PyObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyObject),
19355 __Pyx_ImportType_CheckSize_Warn_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_character) __PYX_ERR(1, 865, __pyx_L1_error)
19356 __pyx_mstate->__pyx_ptype_5numpy_ufunc = __Pyx_ImportType_3_3_0(__pyx_t_1,
"numpy",
"ufunc",
19357 #
if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
19358 sizeof(PyUFuncObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyUFuncObject),
19359 #elif CYTHON_COMPILING_IN_LIMITED_API
19360 sizeof(PyUFuncObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyUFuncObject),
19362 sizeof(PyUFuncObject), __PYX_GET_STRUCT_ALIGNMENT_3_3_0(PyUFuncObject),
19364 __Pyx_ImportType_CheckSize_Ignore_3_3_0);
if (!__pyx_mstate->__pyx_ptype_5numpy_ufunc) __PYX_ERR(1, 946, __pyx_L1_error)
19365 __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
19366 __Pyx_RefNannyFinishContext();
19369 __Pyx_XDECREF(__pyx_t_1);
19370 __Pyx_RefNannyFinishContext();
19374static int __Pyx_modinit_Variable_import_code(__pyx_mstatetype *__pyx_mstate) {
19375 __Pyx_RefNannyDeclarations
19376 CYTHON_UNUSED_VAR(__pyx_mstate);
19377 __Pyx_RefNannySetupContext(
"__Pyx_modinit_Variable_import_code", 0);
19379 __Pyx_RefNannyFinishContext();
19383static int __Pyx_modinit_Function_import_code(__pyx_mstatetype *__pyx_mstate) {
19384 __Pyx_RefNannyDeclarations
19385 CYTHON_UNUSED_VAR(__pyx_mstate);
19386 __Pyx_RefNannySetupContext(
"__Pyx_modinit_Function_import_code", 0);
19388 __Pyx_RefNannyFinishContext();
19392#if CYTHON_PEP489_MULTI_PHASE_INIT
19393static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def);
19394static int __pyx_pymod_exec_cpostprocessing(PyObject* module);
19395static PyModuleDef_Slot __pyx_moduledef_slots[] = {
19396 {Py_mod_create, (
void*)__pyx_pymod_create},
19397 {Py_mod_exec, (
void*)__pyx_pymod_exec_cpostprocessing},
19398 #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
19399 {Py_mod_gil, __Pyx_FREETHREADING_COMPATIBLE},
19401 #if PY_VERSION_HEX >= 0x030C0000 && CYTHON_USE_MODULE_STATE
19402 {Py_mod_multiple_interpreters, Py_MOD_MULTIPLE_INTERPRETERS_NOT_SUPPORTED},
19410 struct PyModuleDef __pyx_moduledef =
19412 static struct PyModuleDef __pyx_moduledef =
19415 PyModuleDef_HEAD_INIT,
19418 #if CYTHON_USE_MODULE_STATE
19419 sizeof(__pyx_mstatetype),
19421 (CYTHON_PEP489_MULTI_PHASE_INIT) ? 0 : -1,
19424 #if CYTHON_PEP489_MULTI_PHASE_INIT
19425 __pyx_moduledef_slots,
19429 #if CYTHON_USE_MODULE_STATE
19444#ifndef CYTHON_NO_PYINIT_EXPORT
19445 #define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC
19448 #define __Pyx_PyMODINIT_FUNC extern "C" PyObject *
19450 #define __Pyx_PyMODINIT_FUNC PyObject *
19454__Pyx_PyMODINIT_FUNC PyInit_cpostprocessing(
void) CYTHON_SMALL_CODE;
19455__Pyx_PyMODINIT_FUNC PyInit_cpostprocessing(
void)
19456#if CYTHON_PEP489_MULTI_PHASE_INIT
19458 return PyModuleDef_Init(&__pyx_moduledef);
19461#if CYTHON_COMPILING_IN_LIMITED_API && (__PYX_LIMITED_VERSION_HEX < 0x030A0000 &&\
19462 (defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS)))
19463static PY_INT64_T __Pyx_GetCurrentInterpreterId(
void) {
19465 PyObject *module = PyImport_ImportModule(
"_interpreters");
19467 if (!PyErr_ExceptionMatches(PyExc_Exception)) {
19471 module = PyImport_ImportModule("_xxsubinterpreters");
19472 if (!module)
goto bad;
19474 PyObject *current = PyObject_CallMethod(module,
"get_current", NULL);
19476 if (!current)
goto bad;
19477 if (PyTuple_Check(current)) {
19478 PyObject *new_current = PySequence_GetItem(current, 0);
19479 Py_DECREF(current);
19480 current = new_current;
19481 if (!new_current)
goto bad;
19483 long long as_c_int = PyLong_AsLongLong(current);
19484 Py_DECREF(current);
19488 PySys_WriteStderr(
"__Pyx_GetCurrentInterpreterId failed. Try setting the C define CYTHON_PEP489_MULTI_PHASE_INIT=0\n");
19492#if !CYTHON_USE_MODULE_STATE
19493static CYTHON_SMALL_CODE
int __Pyx_check_single_interpreter(
void) {
19494 static PY_INT64_T main_interpreter_id = -1;
19495#if CYTHON_COMPILING_IN_GRAAL && defined(GRAALPY_VERSION_NUM) && GRAALPY_VERSION_NUM > 0x19000000
19496 PY_INT64_T current_id = GraalPyInterpreterState_GetIDFromThreadState(PyThreadState_Get());
19497#elif CYTHON_COMPILING_IN_GRAAL
19498 PY_INT64_T current_id = PyInterpreterState_GetIDFromThreadState(PyThreadState_Get());
19499#elif CYTHON_COMPILING_IN_LIMITED_API && (__PYX_LIMITED_VERSION_HEX < 0x030A0000 &&\
19500 (defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS)))
19501 PY_INT64_T current_id = __Pyx_GetCurrentInterpreterId();
19502#elif CYTHON_COMPILING_IN_LIMITED_API
19503 PY_INT64_T current_id = PyInterpreterState_GetID(PyInterpreterState_Get());
19505 PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp);
19507 if (unlikely(current_id == -1)) {
19510 if (main_interpreter_id == -1) {
19511 main_interpreter_id = current_id;
19513 }
else if (unlikely(main_interpreter_id != current_id)) {
19516 "Interpreter change detected - this module can only be loaded into one interpreter per process.");
19522static CYTHON_SMALL_CODE
int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict,
const char* from_name,
const char* to_name,
int allow_none)
19524 PyObject *value = PyObject_GetAttrString(spec, from_name);
19526 if (likely(value)) {
19527 if (allow_none || value != Py_None) {
19528 result = PyDict_SetItemString(moddict, to_name, value);
19531 }
else if (PyErr_ExceptionMatches(PyExc_AttributeError)) {
19538static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def) {
19539 PyObject *module = NULL, *moddict, *modname;
19540 CYTHON_UNUSED_VAR(def);
19541 #if !CYTHON_USE_MODULE_STATE
19542 if (__Pyx_check_single_interpreter())
19546 return __Pyx_NewRef(__pyx_m);
19547 modname = PyObject_GetAttrString(spec,
"name");
19548 if (unlikely(!modname))
goto bad;
19549 module = PyModule_NewObject(modname);
19550 Py_DECREF(modname);
19551 if (unlikely(!module))
goto bad;
19552 moddict = PyModule_GetDict(module);
19553 if (unlikely(!moddict))
goto bad;
19554 if (unlikely(__Pyx_copy_spec_to_module(spec, moddict,
"loader",
"__loader__", 1) < 0))
goto bad;
19555 if (unlikely(__Pyx_copy_spec_to_module(spec, moddict,
"origin",
"__file__", 1) < 0))
goto bad;
19556 if (unlikely(__Pyx_copy_spec_to_module(spec, moddict,
"parent",
"__package__", 1) < 0))
goto bad;
19557 if (unlikely(__Pyx_copy_spec_to_module(spec, moddict,
"submodule_search_locations",
"__path__", 0) < 0))
goto bad;
19560 Py_XDECREF(module);
19565static CYTHON_SMALL_CODE
int __pyx_pymod_exec_cpostprocessing(PyObject *__pyx_pyinit_module)
19568 int stringtab_initialized = 0;
19569 #if CYTHON_USE_MODULE_STATE
19570 int pystate_addmodule_run = 0;
19572 __pyx_mstatetype *__pyx_mstate = NULL;
19573 PyObject *__pyx_t_1 = NULL;
19574 PyObject *__pyx_t_2 = NULL;
19575 int __pyx_lineno = 0;
19576 const char *__pyx_filename = NULL;
19577 int __pyx_clineno = 0;
19578 __Pyx_RefNannyDeclarations
19579 #if CYTHON_PEP489_MULTI_PHASE_INIT
19581 if (__pyx_m == __pyx_pyinit_module)
return 0;
19582 PyErr_SetString(PyExc_RuntimeError,
"Module 'cpostprocessing' has already been imported. Re-initialisation is not supported.");
19586 if (__pyx_m)
return __Pyx_NewRef(__pyx_m);
19589 #if CYTHON_PEP489_MULTI_PHASE_INIT
19590 __pyx_t_1 = __pyx_pyinit_module;
19591 Py_INCREF(__pyx_t_1);
19593 __pyx_t_1 = PyModule_Create(&__pyx_moduledef);
if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error)
19595 #if CYTHON_USE_MODULE_STATE
19597 int add_module_result = __Pyx_State_AddModule(__pyx_t_1, &__pyx_moduledef);
19599 if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
19600 pystate_addmodule_run = 1;
19603 __pyx_m = __pyx_t_1;
19605 #if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
19606 PyUnstable_Module_SetGIL(__pyx_m, Py_MOD_GIL_USED);
19608 __pyx_mstate = __pyx_mstate_global;
19609 CYTHON_UNUSED_VAR(__pyx_t_1);
19610 __pyx_mstate->__pyx_d = PyModule_GetDict(__pyx_m);
if (unlikely(!__pyx_mstate->__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error)
19611 Py_INCREF(__pyx_mstate->__pyx_d);
19612 __pyx_mstate->__pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME);
if (unlikely(!__pyx_mstate->__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error)
19613 __pyx_mstate->__pyx_cython_runtime = __Pyx_PyImport_AddModuleRef(
"cython_runtime");
if (unlikely(!__pyx_mstate->__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error)
19614 if (PyObject_SetAttrString(__pyx_m,
"__builtins__", __pyx_mstate->__pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
19616 #if CYTHON_REFNANNY
19617 __Pyx_RefNanny = __Pyx_RefNannyImportAPI(
"refnanny");
19618 if (!__Pyx_RefNanny) {
19619 if (PyErr_ExceptionMatches(PyExc_Exception)) {
19621 __Pyx_RefNanny = __Pyx_RefNannyImportAPI(
"Cython.Runtime.refnanny");
19623 if (!__Pyx_RefNanny)
19624 Py_FatalError(
"failed to import 'refnanny' module");
19628__Pyx_RefNannySetupContext(
"PyInit_cpostprocessing", 0);
19629 __Pyx_init_runtime_version();
19630 if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
19631 __pyx_mstate->__pyx_empty_tuple = PyTuple_New(0);
if (unlikely(!__pyx_mstate->__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error)
19632 __pyx_mstate->__pyx_empty_bytes = PyBytes_FromStringAndSize(
"", 0);
if (unlikely(!__pyx_mstate->__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error)
19633 __pyx_mstate->__pyx_empty_unicode = PyUnicode_FromStringAndSize(
"", 0);
if (unlikely(!__pyx_mstate->__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error)
19636 if (__Pyx_InitConstants(__pyx_mstate) < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
19637 stringtab_initialized = 1;
19638 if (__Pyx_InitGlobals() < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
19639 if (__pyx_module_is_main_cpostprocessing) {
19640 if (PyObject_SetAttr(__pyx_m, __pyx_mstate_global->__pyx_n_u_name, __pyx_mstate_global->__pyx_n_u_main) < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
19643 PyObject *modules = PyImport_GetModuleDict();
if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error)
19644 if (!PyDict_GetItemString(modules,
"cpostprocessing")) {
19645 if (unlikely((PyDict_SetItemString(modules,
"cpostprocessing", __pyx_m) < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
19649 if (__Pyx_InitCachedBuiltins(__pyx_mstate) < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
19651 if (__Pyx_InitCachedConstants(__pyx_mstate) < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
19652 if (__Pyx_CreateCodeObjects(__pyx_mstate) < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
19654 (void)__Pyx_modinit_Global_init_code(__pyx_mstate);
19655 (void)__Pyx_modinit_Variable_export_code(__pyx_mstate);
19656 (void)__Pyx_modinit_Function_export_code(__pyx_mstate);
19658 if (unlikely((__Pyx_modinit_Exttype___pyx_obj_15cpostprocessing_NodeStarFactor(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
19659 if (unlikely((__Pyx_modinit_Type_import_code(__pyx_mstate) < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
19660 (void)__Pyx_modinit_Variable_import_code(__pyx_mstate);
19661 (void)__Pyx_modinit_Function_import_code(__pyx_mstate);
19662 if (__Pyx_InitAfterSharedUtility() < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
19672 __pyx_t_1 = __Pyx_Import(__pyx_mstate_global->__pyx_n_u_numpy, 0, 0, NULL, 0);
if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 3, __pyx_L1_error)
19673 __pyx_t_2 = __pyx_t_1;
19674 __Pyx_GOTREF(__pyx_t_2);
19675 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_np, __pyx_t_2) < (0)) __PYX_ERR(0, 3, __pyx_L1_error)
19676 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19685 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_1postProcessRT0velocityFromP1nc, 0, __pyx_mstate_global->__pyx_n_u_postProcessRT0velocityFromP1nc, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[0]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error)
19686 __Pyx_GOTREF(__pyx_t_2);
19687 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19688 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19690 __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_mstate_global->__pyx_tuple[0]);
19691 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_postProcessRT0velocityFromP1nc, __pyx_t_2) < (0)) __PYX_ERR(0, 7, __pyx_L1_error)
19692 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19701 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_3postProcessRT0velocityFromP1nc_sd, 0, __pyx_mstate_global->__pyx_n_u_postProcessRT0velocityFromP1nc_s, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[1]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 71, __pyx_L1_error)
19702 __Pyx_GOTREF(__pyx_t_2);
19703 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19704 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19706 __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_mstate_global->__pyx_tuple[0]);
19707 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_postProcessRT0velocityFromP1nc_s, __pyx_t_2) < (0)) __PYX_ERR(0, 71, __pyx_L1_error)
19708 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19717 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_5updateRT0velocityWithAveragedPotentialP1nc, 0, __pyx_mstate_global->__pyx_n_u_updateRT0velocityWithAveragedPot, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[2]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L1_error)
19718 __Pyx_GOTREF(__pyx_t_2);
19719 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19720 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19722 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_updateRT0velocityWithAveragedPot, __pyx_t_2) < (0)) __PYX_ERR(0, 141, __pyx_L1_error)
19723 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19732 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_7updateRT0velocityWithAveragedPotentialP1nc_sd, 0, __pyx_mstate_global->__pyx_n_u_updateRT0velocityWithAveragedPot_2, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[3]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 157, __pyx_L1_error)
19733 __Pyx_GOTREF(__pyx_t_2);
19734 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19735 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19737 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_updateRT0velocityWithAveragedPot_2, __pyx_t_2) < (0)) __PYX_ERR(0, 157, __pyx_L1_error)
19738 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19747 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_9getElementRT0velocityValues, 0, __pyx_mstate_global->__pyx_n_u_getElementRT0velocityValues, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[4]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 177, __pyx_L1_error)
19748 __Pyx_GOTREF(__pyx_t_2);
19749 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19750 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19752 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getElementRT0velocityValues, __pyx_t_2) < (0)) __PYX_ERR(0, 177, __pyx_L1_error)
19753 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19762 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_11getElementBoundaryRT0velocityValues, 0, __pyx_mstate_global->__pyx_n_u_getElementBoundaryRT0velocityVal, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[5]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 187, __pyx_L1_error)
19763 __Pyx_GOTREF(__pyx_t_2);
19764 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19765 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19767 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getElementBoundaryRT0velocityVal, __pyx_t_2) < (0)) __PYX_ERR(0, 187, __pyx_L1_error)
19768 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19777 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_13getGlobalElementBoundaryRT0velocityValues, 0, __pyx_mstate_global->__pyx_n_u_getGlobalElementBoundaryRT0veloc, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[6]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 198, __pyx_L1_error)
19778 __Pyx_GOTREF(__pyx_t_2);
19779 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19780 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19782 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getGlobalElementBoundaryRT0veloc, __pyx_t_2) < (0)) __PYX_ERR(0, 198, __pyx_L1_error)
19783 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19792 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_15getGlobalExteriorElementBoundaryRT0velocityValues, 0, __pyx_mstate_global->__pyx_n_u_getGlobalExteriorElementBoundary, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[7]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 210, __pyx_L1_error)
19793 __Pyx_GOTREF(__pyx_t_2);
19794 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19795 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19797 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getGlobalExteriorElementBoundary, __pyx_t_2) < (0)) __PYX_ERR(0, 210, __pyx_L1_error)
19798 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19807 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_17postProcessRT0potentialFromP1nc, 0, __pyx_mstate_global->__pyx_n_u_postProcessRT0potentialFromP1nc, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[8]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 224, __pyx_L1_error)
19808 __Pyx_GOTREF(__pyx_t_2);
19809 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19810 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19812 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_postProcessRT0potentialFromP1nc, __pyx_t_2) < (0)) __PYX_ERR(0, 224, __pyx_L1_error)
19813 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19822 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_19postProcessRT0potentialFromP1nc_sd, 0, __pyx_mstate_global->__pyx_n_u_postProcessRT0potentialFromP1nc_2, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[9]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 262, __pyx_L1_error)
19823 __Pyx_GOTREF(__pyx_t_2);
19824 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19825 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19827 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_postProcessRT0potentialFromP1nc_2, __pyx_t_2) < (0)) __PYX_ERR(0, 262, __pyx_L1_error)
19828 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19837 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_21buildLocalBDM1projectionMatrices, 0, __pyx_mstate_global->__pyx_n_u_buildLocalBDM1projectionMatrices, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[10]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 304, __pyx_L1_error)
19838 __Pyx_GOTREF(__pyx_t_2);
19839 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19840 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19842 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_buildLocalBDM1projectionMatrices, __pyx_t_2) < (0)) __PYX_ERR(0, 304, __pyx_L1_error)
19843 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19852 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_23buildLocalBDM2projectionMatrices, 0, __pyx_mstate_global->__pyx_n_u_buildLocalBDM2projectionMatrices, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[11]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 320, __pyx_L1_error)
19853 __Pyx_GOTREF(__pyx_t_2);
19854 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19855 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19857 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_buildLocalBDM2projectionMatrices, __pyx_t_2) < (0)) __PYX_ERR(0, 320, __pyx_L1_error)
19858 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19867 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_25factorLocalBDM1projectionMatrices, 0, __pyx_mstate_global->__pyx_n_u_factorLocalBDM1projectionMatrice, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[12]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 350, __pyx_L1_error)
19868 __Pyx_GOTREF(__pyx_t_2);
19869 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19870 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19872 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_factorLocalBDM1projectionMatrice, __pyx_t_2) < (0)) __PYX_ERR(0, 350, __pyx_L1_error)
19873 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19882 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_27factorLocalBDM2projectionMatrices, 0, __pyx_mstate_global->__pyx_n_u_factorLocalBDM2projectionMatrice, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[13]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 357, __pyx_L1_error)
19883 __Pyx_GOTREF(__pyx_t_2);
19884 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19885 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19887 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_factorLocalBDM2projectionMatrice, __pyx_t_2) < (0)) __PYX_ERR(0, 357, __pyx_L1_error)
19888 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19897 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_29solveLocalBDM1projection, 0, __pyx_mstate_global->__pyx_n_u_solveLocalBDM1projection, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[14]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 364, __pyx_L1_error)
19898 __Pyx_GOTREF(__pyx_t_2);
19899 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19900 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19902 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_solveLocalBDM1projection, __pyx_t_2) < (0)) __PYX_ERR(0, 364, __pyx_L1_error)
19903 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19912 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_31solveLocalBDM2projection, 0, __pyx_mstate_global->__pyx_n_u_solveLocalBDM2projection, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[15]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 383, __pyx_L1_error)
19913 __Pyx_GOTREF(__pyx_t_2);
19914 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19915 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19917 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_solveLocalBDM2projection, __pyx_t_2) < (0)) __PYX_ERR(0, 383, __pyx_L1_error)
19918 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19927 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_33buildBDM2rhs, 0, __pyx_mstate_global->__pyx_n_u_buildBDM2rhs, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[16]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 406, __pyx_L1_error)
19928 __Pyx_GOTREF(__pyx_t_2);
19929 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19930 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19932 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_buildBDM2rhs, __pyx_t_2) < (0)) __PYX_ERR(0, 406, __pyx_L1_error)
19933 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19942 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_35solveLocalBDM1projectionFromFlux, 0, __pyx_mstate_global->__pyx_n_u_solveLocalBDM1projectionFromFlux, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[17]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 435, __pyx_L1_error)
19943 __Pyx_GOTREF(__pyx_t_2);
19944 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19945 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19947 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_solveLocalBDM1projectionFromFlux, __pyx_t_2) < (0)) __PYX_ERR(0, 435, __pyx_L1_error)
19948 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19957 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_37getElementBDM1velocityValuesLagrangeRep, 0, __pyx_mstate_global->__pyx_n_u_getElementBDM1velocityValuesLagr, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[18]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 455, __pyx_L1_error)
19958 __Pyx_GOTREF(__pyx_t_2);
19959 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19960 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19962 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getElementBDM1velocityValuesLagr, __pyx_t_2) < (0)) __PYX_ERR(0, 455, __pyx_L1_error)
19963 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19972 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_39getElementBDM2velocityValuesLagrangeRep, 0, __pyx_mstate_global->__pyx_n_u_getElementBDM2velocityValuesLagr, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[19]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 471, __pyx_L1_error)
19973 __Pyx_GOTREF(__pyx_t_2);
19974 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19975 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19977 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getElementBDM2velocityValuesLagr, __pyx_t_2) < (0)) __PYX_ERR(0, 471, __pyx_L1_error)
19978 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
19987 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_41getElementLDGvelocityValuesLagrangeRep, 0, __pyx_mstate_global->__pyx_n_u_getElementLDGvelocityValuesLagra, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[20]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 493, __pyx_L1_error)
19988 __Pyx_GOTREF(__pyx_t_2);
19989 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
19990 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
19992 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getElementLDGvelocityValuesLagra, __pyx_t_2) < (0)) __PYX_ERR(0, 493, __pyx_L1_error)
19993 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20002 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_43getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep, 0, __pyx_mstate_global->__pyx_n_u_getGlobalExteriorElementBoundary_2, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[21]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 509, __pyx_L1_error)
20003 __Pyx_GOTREF(__pyx_t_2);
20004 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20005 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20007 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getGlobalExteriorElementBoundary_2, __pyx_t_2) < (0)) __PYX_ERR(0, 509, __pyx_L1_error)
20008 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20017 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_45getGlobalElementBoundaryBDM1velocityValuesLagrangeRep, 0, __pyx_mstate_global->__pyx_n_u_getGlobalElementBoundaryBDM1velo, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[22]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 528, __pyx_L1_error)
20018 __Pyx_GOTREF(__pyx_t_2);
20019 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20020 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20022 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getGlobalElementBoundaryBDM1velo, __pyx_t_2) < (0)) __PYX_ERR(0, 528, __pyx_L1_error)
20023 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20032 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_47getElementBoundaryBDM1velocityValuesLagrangeRep, 0, __pyx_mstate_global->__pyx_n_u_getElementBoundaryBDM1velocityVa, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[23]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 547, __pyx_L1_error)
20033 __Pyx_GOTREF(__pyx_t_2);
20034 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20035 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20037 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getElementBoundaryBDM1velocityVa, __pyx_t_2) < (0)) __PYX_ERR(0, 547, __pyx_L1_error)
20038 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20047 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_49projectElementBoundaryVelocityToRT0fluxRep, 0, __pyx_mstate_global->__pyx_n_u_projectElementBoundaryVelocityTo, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[24]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 567, __pyx_L1_error)
20048 __Pyx_GOTREF(__pyx_t_2);
20049 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20050 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20052 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_projectElementBoundaryVelocityTo, __pyx_t_2) < (0)) __PYX_ERR(0, 567, __pyx_L1_error)
20053 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20062 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_51projectElementBoundaryFluxToRT0fluxRep, 0, __pyx_mstate_global->__pyx_n_u_projectElementBoundaryFluxToRT0f, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[25]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 580, __pyx_L1_error)
20063 __Pyx_GOTREF(__pyx_t_2);
20064 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20065 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20067 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_projectElementBoundaryFluxToRT0f, __pyx_t_2) < (0)) __PYX_ERR(0, 580, __pyx_L1_error)
20068 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20077 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_53getElementRT0velocityValuesFluxRep, 0, __pyx_mstate_global->__pyx_n_u_getElementRT0velocityValuesFluxR, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[26]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 595, __pyx_L1_error)
20078 __Pyx_GOTREF(__pyx_t_2);
20079 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20080 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20082 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getElementRT0velocityValuesFluxR, __pyx_t_2) < (0)) __PYX_ERR(0, 595, __pyx_L1_error)
20083 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20092 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_55getElementBoundaryRT0velocityValuesFluxRep, 0, __pyx_mstate_global->__pyx_n_u_getElementBoundaryRT0velocityVal_2, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[27]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 613, __pyx_L1_error)
20093 __Pyx_GOTREF(__pyx_t_2);
20094 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20095 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20097 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getElementBoundaryRT0velocityVal_2, __pyx_t_2) < (0)) __PYX_ERR(0, 613, __pyx_L1_error)
20098 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20107 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_57getGlobalElementBoundaryRT0velocityValuesFluxRep, 0, __pyx_mstate_global->__pyx_n_u_getGlobalElementBoundaryRT0veloc_2, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[28]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 631, __pyx_L1_error)
20108 __Pyx_GOTREF(__pyx_t_2);
20109 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20110 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20112 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getGlobalElementBoundaryRT0veloc_2, __pyx_t_2) < (0)) __PYX_ERR(0, 631, __pyx_L1_error)
20113 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20122 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_59getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep, 0, __pyx_mstate_global->__pyx_n_u_getGlobalExteriorElementBoundary_3, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[29]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 650, __pyx_L1_error)
20123 __Pyx_GOTREF(__pyx_t_2);
20124 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20125 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20127 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getGlobalExteriorElementBoundary_3, __pyx_t_2) < (0)) __PYX_ERR(0, 650, __pyx_L1_error)
20128 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20137 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_61getRT0velocityValuesFluxRep_arbitraryElementMembership, 0, __pyx_mstate_global->__pyx_n_u_getRT0velocityValuesFluxRep_arbi, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[30]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 671, __pyx_L1_error)
20138 __Pyx_GOTREF(__pyx_t_2);
20139 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20140 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20142 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_getRT0velocityValuesFluxRep_arbi, __pyx_t_2) < (0)) __PYX_ERR(0, 671, __pyx_L1_error)
20143 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20152 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_63fluxCorrectionVelocityUpdate, 0, __pyx_mstate_global->__pyx_n_u_fluxCorrectionVelocityUpdate, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[31]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 692, __pyx_L1_error)
20153 __Pyx_GOTREF(__pyx_t_2);
20154 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20155 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20157 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_fluxCorrectionVelocityUpdate, __pyx_t_2) < (0)) __PYX_ERR(0, 692, __pyx_L1_error)
20158 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20167 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_65computeFluxCorrectionPWC, 0, __pyx_mstate_global->__pyx_n_u_computeFluxCorrectionPWC, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[32]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 718, __pyx_L1_error)
20168 __Pyx_GOTREF(__pyx_t_2);
20169 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20170 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20172 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_computeFluxCorrectionPWC, __pyx_t_2) < (0)) __PYX_ERR(0, 718, __pyx_L1_error)
20173 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20182 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_67sunWheelerGSsweep, 0, __pyx_mstate_global->__pyx_n_u_sunWheelerGSsweep, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[33]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 734, __pyx_L1_error)
20183 __Pyx_GOTREF(__pyx_t_2);
20184 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20185 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20187 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_sunWheelerGSsweep, __pyx_t_2) < (0)) __PYX_ERR(0, 734, __pyx_L1_error)
20188 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20197 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_14NodeStarFactor_5setU, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_NodeStarFactor_setU, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[34]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 794, __pyx_L1_error)
20198 __Pyx_GOTREF(__pyx_t_2);
20199 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20200 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20202 if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, __pyx_mstate_global->__pyx_n_u_setU, __pyx_t_2) < (0)) __PYX_ERR(0, 794, __pyx_L1_error)
20203 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20212 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_14NodeStarFactor_7copyData, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_NodeStarFactor_copyData, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[35]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 802, __pyx_L1_error)
20213 __Pyx_GOTREF(__pyx_t_2);
20214 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20215 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20217 if (__Pyx_SetItemOnTypeDict(__pyx_mstate_global->__pyx_ptype_15cpostprocessing_NodeStarFactor, __pyx_mstate_global->__pyx_n_u_copyData, __pyx_t_2) < (0)) __PYX_ERR(0, 802, __pyx_L1_error)
20218 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20225 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_14NodeStarFactor_9__reduce_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_NodeStarFactor___reduce_cython, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[36]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 1, __pyx_L1_error)
20226 __Pyx_GOTREF(__pyx_t_2);
20227 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20228 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20230 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_reduce_cython, __pyx_t_2) < (0)) __PYX_ERR(2, 1, __pyx_L1_error)
20231 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20239 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_14NodeStarFactor_11__setstate_cython__, __Pyx_CYFUNCTION_CCLASS, __pyx_mstate_global->__pyx_n_u_NodeStarFactor___setstate_cython, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[37]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(2, 3, __pyx_L1_error)
20240 __Pyx_GOTREF(__pyx_t_2);
20241 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20242 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20244 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_setstate_cython, __pyx_t_2) < (0)) __PYX_ERR(2, 3, __pyx_L1_error)
20245 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20254 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_69calculateConservationResidualPWL, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualPWL, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[38]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 819, __pyx_L1_error)
20255 __Pyx_GOTREF(__pyx_t_2);
20256 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20257 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20259 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualPWL, __pyx_t_2) < (0)) __PYX_ERR(0, 819, __pyx_L1_error)
20260 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20269 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_71calculateConservationJacobianPWL, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationJacobianPWL, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[39]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 874, __pyx_L1_error)
20270 __Pyx_GOTREF(__pyx_t_2);
20271 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20272 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20274 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationJacobianPWL, __pyx_t_2) < (0)) __PYX_ERR(0, 874, __pyx_L1_error)
20275 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20284 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_73calculateConservationFluxPWL, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationFluxPWL, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[40]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 915, __pyx_L1_error)
20285 __Pyx_GOTREF(__pyx_t_2);
20286 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20287 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20289 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationFluxPWL, __pyx_t_2) < (0)) __PYX_ERR(0, 915, __pyx_L1_error)
20290 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20299 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_75calculateConservationFluxPWL_noNeumannFix, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationFluxPWL_noN, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[41]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 926, __pyx_L1_error)
20300 __Pyx_GOTREF(__pyx_t_2);
20301 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20302 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20304 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationFluxPWL_noN, __pyx_t_2) < (0)) __PYX_ERR(0, 926, __pyx_L1_error)
20305 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20314 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_77calculateConservationResidualPWL_opt, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualPWL_2, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[42]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 932, __pyx_L1_error)
20315 __Pyx_GOTREF(__pyx_t_2);
20316 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20317 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20319 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualPWL_2, __pyx_t_2) < (0)) __PYX_ERR(0, 932, __pyx_L1_error)
20320 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20329 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_79calculateConservationResidualPWL_primative, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualPWL_3, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[43]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 978, __pyx_L1_error)
20330 __Pyx_GOTREF(__pyx_t_2);
20331 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20332 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20334 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualPWL_3, __pyx_t_2) < (0)) __PYX_ERR(0, 978, __pyx_L1_error)
20335 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20344 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_81calculateConservationJacobianPWL_opt, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationJacobianPWL_2, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[44]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1006, __pyx_L1_error)
20345 __Pyx_GOTREF(__pyx_t_2);
20346 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20347 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20349 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationJacobianPWL_2, __pyx_t_2) < (0)) __PYX_ERR(0, 1006, __pyx_L1_error)
20350 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20359 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_83calculateConservationFluxPWL_opt, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationFluxPWL_opt, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[45]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1046, __pyx_L1_error)
20360 __Pyx_GOTREF(__pyx_t_2);
20361 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20362 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20364 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationFluxPWL_opt, __pyx_t_2) < (0)) __PYX_ERR(0, 1046, __pyx_L1_error)
20365 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20374 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_85calculateConservationResidualPWL_interiorBoundaries, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualPWL_4, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[46]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1059, __pyx_L1_error)
20375 __Pyx_GOTREF(__pyx_t_2);
20376 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20377 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20379 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualPWL_4, __pyx_t_2) < (0)) __PYX_ERR(0, 1059, __pyx_L1_error)
20380 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20389 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_87calculateConservationJacobianPWL_interiorBoundaries, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationJacobianPWL_3, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[47]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1104, __pyx_L1_error)
20390 __Pyx_GOTREF(__pyx_t_2);
20391 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20392 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20394 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationJacobianPWL_3, __pyx_t_2) < (0)) __PYX_ERR(0, 1104, __pyx_L1_error)
20395 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20404 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_89_subdomain_U_copy_global2local, 0, __pyx_mstate_global->__pyx_n_u_subdomain_U_copy_global2local, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[48]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1138, __pyx_L1_error)
20405 __Pyx_GOTREF(__pyx_t_2);
20406 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20407 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20409 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_subdomain_U_copy_global2local, __pyx_t_2) < (0)) __PYX_ERR(0, 1138, __pyx_L1_error)
20410 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20419 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_91_subdomain_U_copy_local2global, 0, __pyx_mstate_global->__pyx_n_u_subdomain_U_copy_local2global, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[49]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1151, __pyx_L1_error)
20420 __Pyx_GOTREF(__pyx_t_2);
20421 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20422 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20424 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_subdomain_U_copy_local2global, __pyx_t_2) < (0)) __PYX_ERR(0, 1151, __pyx_L1_error)
20425 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20434 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_93calculateConservationResidualGlobalBoundaries, 0, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualGlo, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[50]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1164, __pyx_L1_error)
20435 __Pyx_GOTREF(__pyx_t_2);
20436 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20437 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20439 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateConservationResidualGlo, __pyx_t_2) < (0)) __PYX_ERR(0, 1164, __pyx_L1_error)
20440 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20449 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_95updateSelectedExteriorElementBoundaryFlux, 0, __pyx_mstate_global->__pyx_n_u_updateSelectedExteriorElementBou, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[51]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1192, __pyx_L1_error)
20450 __Pyx_GOTREF(__pyx_t_2);
20451 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20452 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20454 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_updateSelectedExteriorElementBou, __pyx_t_2) < (0)) __PYX_ERR(0, 1192, __pyx_L1_error)
20455 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20464 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_97updateAdvectiveVelocityPointEval, 0, __pyx_mstate_global->__pyx_n_u_updateAdvectiveVelocityPointEval, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[52]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1211, __pyx_L1_error)
20465 __Pyx_GOTREF(__pyx_t_2);
20466 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20467 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20469 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_updateAdvectiveVelocityPointEval, __pyx_t_2) < (0)) __PYX_ERR(0, 1211, __pyx_L1_error)
20470 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20479 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_99updateDiffusiveVelocityPointEval, 0, __pyx_mstate_global->__pyx_n_u_updateDiffusiveVelocityPointEval, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[53]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1221, __pyx_L1_error)
20480 __Pyx_GOTREF(__pyx_t_2);
20481 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20482 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20484 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_updateDiffusiveVelocityPointEval, __pyx_t_2) < (0)) __PYX_ERR(0, 1221, __pyx_L1_error)
20485 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20494 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_101updateDiffusiveVelocityPointEval_sd, 0, __pyx_mstate_global->__pyx_n_u_updateDiffusiveVelocityPointEval_2, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[54]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1233, __pyx_L1_error)
20495 __Pyx_GOTREF(__pyx_t_2);
20496 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20497 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20499 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_updateDiffusiveVelocityPointEval_2, __pyx_t_2) < (0)) __PYX_ERR(0, 1233, __pyx_L1_error)
20500 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20509 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_103calculateElementResidualPWL, 0, __pyx_mstate_global->__pyx_n_u_calculateElementResidualPWL, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[55]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1249, __pyx_L1_error)
20510 __Pyx_GOTREF(__pyx_t_2);
20511 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20512 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20514 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_calculateElementResidualPWL, __pyx_t_2) < (0)) __PYX_ERR(0, 1249, __pyx_L1_error)
20515 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20524 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_105copyElementBoundaryVelocityToParVec, 0, __pyx_mstate_global->__pyx_n_u_copyElementBoundaryVelocityToPar, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[56]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1259, __pyx_L1_error)
20525 __Pyx_GOTREF(__pyx_t_2);
20526 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20527 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20529 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_copyElementBoundaryVelocityToPar, __pyx_t_2) < (0)) __PYX_ERR(0, 1259, __pyx_L1_error)
20530 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20539 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_107addAverageToParVec, 0, __pyx_mstate_global->__pyx_n_u_addAverageToParVec, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[57]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1273, __pyx_L1_error)
20540 __Pyx_GOTREF(__pyx_t_2);
20541 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20542 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20544 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_addAverageToParVec, __pyx_t_2) < (0)) __PYX_ERR(0, 1273, __pyx_L1_error)
20545 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20554 __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_15cpostprocessing_109copyParVecToElementBoundaryVelocity, 0, __pyx_mstate_global->__pyx_n_u_copyParVecToElementBoundaryVeloc, NULL, __pyx_mstate_global->__pyx_n_u_cpostprocessing, __pyx_mstate_global->__pyx_d, ((PyObject *)__pyx_mstate_global->__pyx_codeobj_tab[58]));
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1287, __pyx_L1_error)
20555 __Pyx_GOTREF(__pyx_t_2);
20556 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030E0000
20557 PyUnstable_Object_EnableDeferredRefcount(__pyx_t_2);
20559 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_copyParVecToElementBoundaryVeloc, __pyx_t_2) < (0)) __PYX_ERR(0, 1287, __pyx_L1_error)
20560 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20567 __pyx_t_2 = __Pyx_PyDict_NewPresized(0);
if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error)
20568 __Pyx_GOTREF(__pyx_t_2);
20569 if (PyDict_SetItem(__pyx_mstate_global->__pyx_d, __pyx_mstate_global->__pyx_n_u_test, __pyx_t_2) < (0)) __PYX_ERR(0, 1, __pyx_L1_error)
20570 __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
20576 __Pyx_XDECREF(__pyx_t_2);
20578 if (__pyx_mstate->__pyx_d && stringtab_initialized) {
20579 __Pyx_AddTraceback(
"init cpostprocessing", __pyx_clineno, __pyx_lineno, __pyx_filename);
20581 #if !CYTHON_USE_MODULE_STATE
20584 Py_DECREF(__pyx_m);
20585 if (pystate_addmodule_run) {
20586 PyObject *tp, *value, *tb;
20587 __Pyx_PyErr_FetchException(&tp, &value, &tb);
20588 __Pyx_State_RemoveModule(&__pyx_moduledef);
20589 __Pyx_PyErr_RestoreException(tp, value, tb);
20592 }
else if (!PyErr_Occurred()) {
20593 PyErr_SetString(PyExc_ImportError,
"init cpostprocessing");
20596 __Pyx_RefNannyFinishContext();
20597 #if CYTHON_PEP489_MULTI_PHASE_INIT
20598 return (__pyx_m != NULL) ? 0 : -1;
20606static int __Pyx_InitCachedBuiltins(__pyx_mstatetype *__pyx_mstate) {
20607 CYTHON_UNUSED_VAR(__pyx_mstate);
20610 __pyx_mstate->__pyx_umethod_PyDict_Type_items.type = (PyObject*)&PyDict_Type;
20611 __pyx_mstate->__pyx_umethod_PyDict_Type_items.method_name = &__pyx_mstate->__pyx_n_u_items;
20612 __pyx_mstate->__pyx_umethod_PyDict_Type_pop.type = (PyObject*)&PyDict_Type;
20613 __pyx_mstate->__pyx_umethod_PyDict_Type_pop.method_name = &__pyx_mstate->__pyx_n_u_pop;
20614 __pyx_mstate->__pyx_umethod_PyDict_Type_values.type = (PyObject*)&PyDict_Type;
20615 __pyx_mstate->__pyx_umethod_PyDict_Type_values.method_name = &__pyx_mstate->__pyx_n_u_values;
20620static int __Pyx_InitCachedConstants(__pyx_mstatetype *__pyx_mstate) {
20621 __Pyx_RefNannyDeclarations
20622 int __pyx_lineno = 0;
20623 const char *__pyx_filename = NULL;
20624 int __pyx_clineno = 0;
20625 CYTHON_UNUSED_VAR(__pyx_mstate);
20626 __Pyx_RefNannySetupContext(
"__Pyx_InitCachedConstants", 0);
20636 PyObject* __pyx_temp[2] = {Py_None, Py_None};
20637 __pyx_mstate_global->__pyx_tuple[0] = __Pyx_PyTuple_FromArray(__pyx_temp, 2);
if (unlikely(!__pyx_mstate_global->__pyx_tuple[0])) __PYX_ERR(0, 7, __pyx_L1_error)
20638 __Pyx_GOTREF(__pyx_mstate_global->__pyx_tuple[0]);
20640 __Pyx_GIVEREF(__pyx_mstate_global->__pyx_tuple[0]);
20641 #if CYTHON_IMMORTAL_CONSTANTS
20643 PyObject **table = __pyx_mstate->__pyx_tuple;
20644 for (Py_ssize_t i=0; i<1; ++i) {
20645 #if PY_VERSION_HEX >= 0x030F0000
20646 PyUnstable_SetImmortal(table[i]);
20647 #elif CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
20648 if ((PY_SSIZE_T_MAX <= _Py_IMMORTAL_REFCNT_LOCAL))
break;
20649 #if PY_VERSION_HEX < 0x030E0000
20650 if (_Py_IsOwnedByCurrentThread(table[i]) && Py_REFCNT(table[i]) == 1)
20652 if (PyUnstable_Object_IsUniquelyReferenced(table[i]))
20655 Py_SET_REFCNT(table[i], ((Py_ssize_t)_Py_IMMORTAL_REFCNT_LOCAL + 1));
20658 if ((PY_SSIZE_T_MAX < _Py_IMMORTAL_INITIAL_REFCNT))
break;
20659 Py_SET_REFCNT(table[i], _Py_IMMORTAL_INITIAL_REFCNT);
20664 __Pyx_RefNannyFinishContext();
20667 __Pyx_RefNannyFinishContext();
20672static int __Pyx_InitConstants(__pyx_mstatetype *__pyx_mstate) {
20673 int __pyx_lineno = 0;
20674 const char *__pyx_filename = NULL;
20675 int __pyx_clineno = 0;
20676 CYTHON_UNUSED_VAR(__pyx_mstate);
20678 const struct {
const unsigned int length: 8; } str_length_index[] = {{15},{1},{179},{8},{7},{6},{2},{9},{50},{39},{34},{27},{20},{14},{1},{14},{32},{34},{23},{19},{20},{12},{17},{8},{12},{8},{10},{8},{11},{12},{10},{17},{13},{12},{12},{19},{8},{13},{30},{30},{1},{19},{9},{18},{17},{5},{11},{18},{12},{32},{32},{28},{41},{32},{32},{51},{36},{45},{32},{51},{36},{42},{27},{18},{6},{24},{20},{8},{35},{35},{15},{2},{6},{4},{15},{9},{23},{15},{2},{3},{15},{19},{5},{5},{15},{12},{19},{6},{13},{9},{18},{22},{23},{28},{37},{32},{12},{17},{15},{18},{17},{25},{30},{31},{1},{33},{33},{4},{17},{14},{28},{21},{20},{17},{39},{39},{47},{35},{42},{38},{27},{34},{53},{41},{48},{61},{49},{56},{54},{8},{7},{5},{1},{25},{13},{5},{1},{12},{2},{1},{18},{18},{13},{14},{16},{12},{7},{17},{6},{13},{14},{9},{24},{16},{21},{30},{14},{2},{5},{5},{8},{12},{3},{15},{3},{31},{34},{30},{33},{38},{42},{4},{4},{12},{3},{7},{10},{6},{6},{1},{8},{6},{12},{8},{16},{4},{4},{10},{26},{24},{32},{24},{10},{11},{17},{1},{26},{34},{17},{32},{10},{32},{35},{42},{45},{41},{8},{13},{21},{6},{9},{17},{24},{3},{6},{5},{8},{16},{1},{6},{6},{6},{14},{16},{18},{20},{1},{6},{9},{17},{24}};
20679 const struct {
const unsigned int length: 9; } bytes_length_index[] = {{9},{39},{29},{132},{67},{120},{119},{57},{57},{69},{73},{55},{99},{74},{76},{147},{151},{157},{58},{58},{93},{90},{87},{99},{98},{102},{105},{81},{97},{84},{100},{133},{105},{103},{113},{120},{99},{114},{140},{153},{147},{156},{157},{159},{212},{211},{199},{373},{171},{401},{250},{185},{223},{210},{118},{55}};
20680 #ifndef CYTHON_COMPRESS_STRINGS
20681 #define CYTHON_COMPRESS_STRINGS 90
20683 #if (CYTHON_COMPRESS_STRINGS) == 3 && __PYX_LIMITED_VERSION_HEX >= 0x030e0000
20684static const char cstring[] =
"(\265/\375`\245+U\204\000*\222\024\037G\360\356\346\001\314\300r\202\244\014r\214\262\360A>a4\n\246\030aki\241\n\310\315\356\rW\210\311\205\3326\264\213\367\251\002\376`\207h\232!=((~\354\314\322\217e\017z\254\263\034P\340\247\314\255\002\035\337C\212\301\001\333\001\356\001\352\331\322As\207\361\024\325s\233\372g\263\343H\2128Z\253.-\372\210\347\017QH\243\252\047\215^Y\024v\206\342\031\232\010sK\207Y]\313\014#U\364F$\267\356\331\232T\263h\262\347\214z\222&\t\232\231l\235a\306Y\321SF\332\300X\255\223\023\304#cK\233\034S\3656O\232\222\rS:w\350r^jJ\334\250\223\014M\242\235\363\013-3\321JjVL\314\241f\251\231\347\374\321:\346\211b\306\001W-\202\273\225\367\372r\221:H\314\354\267\3129U\346\360,Sen\235\245\013\004\201N\021\324&\271\262\347&\327\255W\231.3\233\242\260l\226\254x\232d\206\355\320dG\230^\311U\273@\020\034u\317*\323:`\215\214\210\007\004\201\362\232k\210\3203\\\363\272A0D\251\347\032f\0335\257>Z<u6\350R\203{=c$O\207\232\031\031\021\212\332[\207\373D\303\223\315\252\350k\3150vUO\024F\226d\0369\242\254\252\231\204\241\264z\206 \212\010\205\261&\010\256\244I\206e&c\047\3634Y\221\003A\035\262\242VA\220[K6\217\247)n2t\231Z\227\255\274IQ\203\242\230Qz\227\331F\307H\225\024\271\021\227I\202\346I\256y=M3\217p\253\336\234\251wF\271s\345D\255M\216=\211\270q\003\207\332\032%Z9\223\\K\222mq\343\311m\275w.\303\026\273\271\275\206\272\204V9\321\314\234\n\213\312\211g\305\303\231\252^CR]7GT\3525\253\272E\226Z\3446\311\231\347k%\242\341\326\374Z9\275\236:1%\253\251a\256\254\216\234\326\352J\022%\332\n$\257\361u\214\256\0138aA\305i\317}\324K\274\337{\032\201\370X\361\315R3V\021F\021\201\0011\351\335^\225+\300\345\336\324\345pW-\205\264\313\270\006k\270\360/\234b\324)&\301\033\274\362\032z\327Y|\345\024\177\257\367\232Fq\347I\036\250{\340\036\037\337\227;\343\262\255l\006\241\363\0216\017\301\353\rPN\342\255k]\204\247ZNb\315\247\235\243\237x\363\213\342\351\313\361Bp\303\226E\221\002\002q:\353\231\305\212d-2\006\270\320\\\237\026\244\335Z\325\254A\201xk;\010\270\310mJ+\240Mg""\034\263\023-\010`\000\030\275\320Zh\036\305S\t:K\027g\377\371X\367\340\032G\361|\r\312G)\2117\017\303S.\224\304\271\177=\306=^\355%\031\271\320Z|3\013E\032\003b\255\205L&\223\221\033\214\221\"8\244\302@\326\010\372\210\340\320P,\006\306b\261\230\250K\355\303#\276V2\250f\324\047\315\312cY\026\325zh\373\334\250\372\025d\262\333\265\252\351\326\261\362\334\340\036WU]\321\241SU\3251\203i\272\313\034\0037\271s\013L\203X\341\320x\376\210\033\014\315\216\007v\2526\353\211\362\240\047\232\313\223DW\026\246jt\307\300\016U\365k=QsoVF}L\362\3441\265VmL\023\334&\251\256\240\315N\215i\2560Q\233C\047\250c\202\262\0143\261\313l\232$\311\222/\024\024Q\362\265U\335\202\351\016\352J\266\324\014\336\324\344\240\374\364\244P\335\243]fV]9gk\266\314,\255\325\021\324k\026Q\240q\034Q\322\204\317\371#\323[k\225]\263\272\332\236\016\267+\273D\255\325\214\202136\202iK\353\264\264L\334;\335\357L6p\025\277yUw1)1yK\035F\206\343\376\306G27\245oH\327]F\376\010\207zM8ntEB\270\330{\273\227\305e|\370\037~\276\314\027\351\"/\t\271\030y\366=(*\320\202KB>|#\307\035\340\246m\205\357\257\340\016N\321CN^ \027\304\005j\275v\302\202\270kI-\320\014c\266\340@\2369\230\255\212\016x3\266(cg\2661\200E[a\200\002\227D\362$\033|\3221\240\304\035\n\353e(\047\007\204B\374\0204\237F\346\313\264\210\370\"\202~P\313\327z\013\352\033;\314\010\353\240\376\367\242\322\022/s\362U\254xOH4RG\361\236p\323\025\t1}\255\347\274\246\224g>\342(!\361\347znHF\330\372\255\235O\002\374,\326\177\371\037=\200\307W\341!\350\313X@?\006\357\254b\023%~\t\362\365_9?g\025\333\254b\237\357\253`\016=\253\030\304\207\377\301\303\367\320\363Ex\017\376Py\030\237\341\037\252\027\326\363}\241\017\366@\202\201\374\212\304\047\001\216\370#f\376\214K\374\342\022\217\274\314\215K\234\341\017\216\371\227N\352\0304Hp\0008\365\034^\210\2474.\362\226\032\036\234\003w\020!\364\205^\376KJ*&\365\255\2536\236\352`\016?>\337\307\345\273t1\320\317\377a\371,\361\307\363S\230\003\336\320}\215w)\017\371P\047\222\330\343\035g\275\030$\035\037\341\206\2242\300\274\026J""\261\326S\316\301\273\222\216\333\271\245\214\354Yp\002\237_eo\263\362Wl\372\213\205Oz-\244=\006$q /\005\022\223\341\3643\377\360\236L q\307I\334\346mqI.HF\211\334_[\017O\2468\363\217\307\336\223\257{}\344*S\234\372\354g|\347Y\035\003g\300\325\321\033\337\213\361\246n\317\201\266f\266\261\000\306][\225vEP\300kQ\362\020[\007\255\326Bh\341a\252\257\365\326\347O\256\352\047\217\177\220:\211HN\206uH\"V?\365=`W\362\036\340\235\014?\365 6\377\3233\244\244\260\244\254h\270\330\272\352uv\2037l\376DJ\352\004\244\021\324\272f\245\031P\021\310\210HL2\002\340c\302\326!d\356\340\343\033\234dd$\003\000\227\3029\030\276\347Mr/\241\254\240`h\270\360\272\206\314g\266\276\312\035G\3535\233\367H\026LNLBJ\336\007\356H+\216\024\355\022H\034R\352\372\010\225I\363\031\322\376\302\341\234\224\237\302\362+\223\311\244y\221\216\301dJ\345\316\242\353)`\r$%+\010<`\235\354?\224\311\277\\\337\345\342\0023:}\220ws\006\376\001\014\000\020R/\3130\213\276y\265\225\177^Y\261\3615++\037\356\220\373L\007\357\244>R?w\223\326\211:\220\277q\230\374\272\274\030:7\345\202t|\256\203\344n\256\252\225\320\321\321\361\265\266\343s]$\236\362\370\235\253=\267\245\225\360%l\230\243\227\344\325^\021\367c#\336\\\315\025i#\214\255G\307F\254q\264\253Y7\333\310\000\260\3613\177y\335L\337\254\361\326\213*y\031J\245\031\0068\177\324_\213\341\017o\376\215L\t\214c#3\372\221&\023\363\263\037\332\235_{L\010|A\265\262\342q\023\223\277 \004\210\017\342\213\3711,%~\206\205\303{<\237\207\345\247\234\245\363,iW\351)\274\323\211\3008[\037\331\374\211_u\236\0065\322\3607X[\375\025L\001X\003L\034\023\007\301\374\321\227\335QO\213\321\246\t`\234\226\337\3427\250<M\352\247\376&\367\241\335\3655\365!\376\202\rW9\235T\276\237\t\204L\250#H\202\272\006\021S2\"\243I\222J\007Sq\030\230d4\225I\245\225\374C\203\263\2014!\0021E\230!\220\020b\004$3\"\025\244\244 \005)\244\003\005-H\255\202,sX\271j\263JW\2209\205}f\246/\204\222\341\370\335\322\222\371\211\267\262K\264\311+\360h\300\346\307\320\341\235\336q\346\373N\033^\212k\223Y\313\337YS\336""\023\021\355\265,Tm\\Nw\032\230\351\301\227\353\3520\326/\200\235:\276[W-*\3716\327I\311\341k\255QDUu\246\"9S\301\300\230\266\250\005\201PJ\241\027xR2\374M\213\362\207~G\\-\366\276\304\211\347\203\000\333\202~\304#n\331\240\033\250\303\330\006]\214\245\242\221 \346`D0l\227E,\225r\033\215CR\376\336\3435\273\217% v\366c=S\025{x\0149:\247\241\254=\373k\216cT25M\276\210\026\005\270\330\352\177,\342\264\2335\372\220{\245\3263q#A\241\047\033\252\007c\033\363b^\220\205\223\235\016\243V\020:\342ro\002\246\227\257\031\352L\031\321\215}?\211\255u`\354\002c\211\302\272>6G\3211k{\247\370\305H\364|(\0228\256\254\312\302\237$:\254\031m\213^\242\321\234\353\252\3277\222 K\224$Q9eJ\230\343\214N\242\026<\303\001\267c\274M\031\004\321\227\021w\224}\210\006\204\335t\213\021\342\177L\364WU\351\023\204j+\322\301I;#\371\217\351\276\253\374f\356\023\023\3535\333JD2\373\317\365\244\3143\030\326\245r\004\363\3422\213[\212,\300\301q\216J\2423z\007<\027\004\31021?\006b\0038\202\213\331\247\353w\363\202\216\331\360Z\035l\314\316\215\214\231=+v\026\333\332\224\303\361\022U\306\3008\3042\017%\245\251\360\355\026X\353U\375\340#\276\245\346\262\2603p0\217\223\252\277\006\253~w\373\310\223L\264C\321W\007\361\024F\003\024\027\322\301xh24\034\334\246\010\351\330p\225\302\252 \026\027&\024$\265\302\207\"\302\353\325\351\226\235H\027\256g\255\310n\0025\217\207\014\222\356P3s\212\234\200\322\310\374\354\047\357\373n\236\002\263\205\250I\031r\000\303U$P\0359R\0309\027\233\362\201\206\315R\235\344\310\004*g\232\304\303\211\265\322\003$}\337\243%\305=\252\222?Wx\341n\313AD\010\326\361\025\264\2109E\243M\006\226ED|\226\203$g&\352\225cyAUHd\n\020\016\007\0257\242\006a$s2\002k)\002\266$\324\006\217\3676r-\224z\224\267\362\273\234P\231sV\335\233Ie\304\301+\205\206\313\2050=\315\t\234\272\230.\352\024\"M\321\2054\327\357\337\216\362}\003\261\3556s\036\350\241\014\251\365H\301\325e\010\371O\270,N\211\355\343\337\204\314\311\3301%\214\227\252\022\375\315$\341\305\252\276\241?\002\225p|\213\003\315\021NsXLiT\252FS""\346\220\266\311\032\230\211\006o\"\204\320\0142\216\243U!f|\261\272v\354\037IS\261\035\300\024/\207\325\3704\021\263|VK0xB2\313#dx\004f\031\204\336\035ou@im\211\2163\237\216V6 \267\314\006\256`\265C?\204\275\010\204x\356\016h\375\265\217\047\330/\251f!\275\000e\372\336\214\257a\3605{\233\036\307Y[\177\203\310\311\244\t\325\260\023\330y\371\331\2511X\375\013\343\204\304\266\3370\206\276yg>\262\022\351.\316\324\021B\242\250\000\366u\375\361\251a\242l\002j\252oQt\2700\227(\321\240\226\217\271\247\303\307m\200\365\346$\316L!\245U\004\340\316\230N\335\025\006\027\350\026\177Y\030R\241w\355\244\034.\025\271*\"\252p\014z\027\302\372\275\336a\223\214\273\366A,\252R\322\230c\223,\350\n\022\026\022\213?\001\033\225\036.Ym5\360\317t\226\223\320\371\241M\202@+\366\247!\203\002_\362D\236\212v#\257\\\003\352\357Q:\347:4\251\331PH*\234\251\006D\243iT\032\001\010\020\330l\266ni~k,S\014+\301\024\017\277\321\013^b\000;iV\205\371G\333\3268d)\263\353E\242\235l\007)\361\246\300\346r7(;\310\362\047\265\250\361m@\366C\367\352%\372\213\216\257c\340q\032d\203\023W\232\224\316-(z\274\377\0327\325\220\013\371\334\217\216\014\330\340\002\307\333j\305\330}\273\014{m\020\265\310N\267\376\340Rv\327\217\310.\347B\335\336~\302>d\276\000\0257?\271=\221\303V\345\317\333\033\220\376<i\274\225i\312t\rl\242-\023\334N\013ANW\343\376VcJz>F-\272\357\275\231\024\226\212\311H0\020\005\004\272\336\232@bE\373\234\032OT)T\301\364,;\3509J\026\305\252\314}\242\375\032\337\225\250\004\202\216^\375\3462\225\032~\264\274\t;$jr\315b\304\234\221\025%\254`\272\221\014\316\206EF\2520p\\\360\016\223\254\351\272~\016\002\373&\"u\346`@C\301\346y\342\334?\254\307H\2517\"fT\223\366\313D\362HYb\215\324n-\2457\327T]\360\003\216 >\271\317\226\254\361\205\201|\357x\010\272H\r3{MNi\"\3450;k\232|\323\351.\211\211\014\273\331\246\241\203\270\025\371\261hi!\377\237\010\246S\331\013\372\320\n4w\325\323\266\230\356_+W\332\027\345]\274_\033LY\272\231\216\n\036\341n\360\342}\201p\207\271\271B\306\324\001\003IX\370\227<Q\247\371\361""\227\210\216TV\326\341KU\004C\301\377\312\265UE\312\007\207\330Y\364xD-\2357\035\221\310<C\021y\220\237\241\233\t/\020\031\302mF\332${\nm$\234\t<\274e\373\027\307\350\207\350\332\025\327m\365\270\024\345\266C\177\030\314\236\311?\247!K\2501H\260\013!\315\215\277\022\362)f\367\361\356s\261\300b\211q\020\026\001\037\333\303\227\2158\371\200S6\323\261L2\242\247\023\005\335X\t\312\270\371]\036B\3434\375L\232\343\023\250u\333H\n\344t\301\364\021\224\r\r\022\331\000\213\312~\276B\037\300\246\034\263L\356\344+\201\013\030n\231\265\231\222Hq\334u\241\300\213s\272,\301\341`(\000c\347\332\333\225*\n\254\212Aq\017\006\022\366Qs^u\231\034\375\0139\313r(j\r\201\214\031\3121\023\340\305h\254\"\227D`0~D\236\361\221\263\302\371S\305\t\337\320\304\341\212\243\361\020\346\236\376T\362Tf\241\343\201\214K\206&\212Q\021Y\231Z\226i\341\224\217\3766\353_\231\331\302U\313\331V\004\212\035\270<F\013\306\013!\t2\341i\372\314\271\301jl\004P\257\303{^\203\374\365\n\270\214l\300\024\200\022\341\217\230\354E\360\347\034\032t\207A\206}\366&\263%D\366\263\026\364\305\346\323B\230u@F\260\370\376i\241\r\205\024\367\232\333G\300\361\030cP~\014\233d,\004h\234b\224\r\302J@s\263\021\302\232\205\302@\355%W\tvV\277^\047\340#\324\302\r;\265\310\301\251\314\033\266\355\314\023~@ca&\324sy\204b\305\035\360&\343\372\n (\363\252\364\316\323%\2733*\332\335@s\333\177\370\301\314J\263u\235WeC`\013k\247\246\233,%3\314\367\t\207\367\003R\232\372\377\332(\021\231W\222\373-\006\177p\212\201`3o\304\346NX\256\366\270N$\214F\316\360fJ\026,\260Q\371F\235 \234u8\305\020\200\246\363\300\r\226\301\004\322\313M}\300\360\203\014\202P\354\370\217\252\2311cb\210\304nYL\"\035\345&H\363\341\r\266\320D\212\004*\224\323*\340\047Y{\220E,|\232\310\320\035\236\210\2168\022\310\231\300T\020\017\3510e\225\021\321\334\177]T\315;f/d\017/!\000\316\010\245A\243\251\334\242\261\302\277\344eW\320\302z\211\330\324\234\326a\362T#\225\034\300\335\007\354H\323)\324#\250|*9\310\200e\365\000;\037\320T\342\337Y\210\340\005Y\257(+\017\273l\004I\351""\373\246\004,\272\307\234}<\320\277\252\237hHW\014Y\2110`k\345\006>\014\215C\002\346H\303\316\206\0244\332\225\350\300I7";
20685 PyObject *data = __Pyx_DecompressString(cstring, 4244, 3);
20686 #define __Pyx_DecompressString_LZSS_UNUSED
20687 if (unlikely(!data)) __PYX_ERR(0, 1, __pyx_L1_error)
20688 const char*
const bytes = __Pyx_PyBytes_AsString(data);
20689 #if !CYTHON_ASSUME_SAFE_MACROS
20690 if (likely(bytes));
else { Py_DECREF(data); __PYX_ERR(0, 1, __pyx_L1_error) }
20692 #elif (CYTHON_COMPRESS_STRINGS) == 1
20693static const char cstring[] =
"x\332\3159K[\033G\266\326\304`\307\3273\0232\304c\0473\2160\342i$\2200\030\033?\020F\3701\030#\236\216\343\244\323\250[\320\216\350\226\272[\0022\017{\311RK-\265\354e/{\251\245\226\265\354\245\177B~\302\234S\325\325\335B\022&\363\315\375\356\315gtNU\235\252:u\336\2473j\352\262\034\315\353\342\336\201\254\232c\217W5S\216\232\373\242\031}rl\356kjT1\242\222\\Pve]4\345\302q\3240u%g\312:\022\251\321\265\314Z\374\316\334\235\250\250JQ]~\047\347L#j\224ws\005\3210d#\252\345\243\273e\245`*j\324<.\312F\"\372<\037=\326\312QU\226\245\250\251E\213@\027\336`\356\313j\324\220MD\242#\242\252j\246h*\232*\300vE\335\033\211J\212\016\227(\025\031w/\213\005CN\210\222$\000\235,)\206\270[\220e\025\177\367r\212\3010I\325\340\005y\261\\0\243\202\240\313R9\047\013BT*\323#TM\215\303\213*\212X\200\325\234\242*\246 \250\345\203\342qB\310i\272\2348\200}\212\250\353\342q4/*\005\306\266rP\324t3LV>\020\315\3756\212\242\016|\225\215\311\\Q3p\220\223\r\003\236\221(\036\037-.\275\204-kJE3\rA.\310(~6\307G\317W5I\3360E}Y\314\231\232\336:J\370O\311Q=\tB\333:\210\321\000\351u\245\310i\305\343%\321\024OM\303\266-AX;>\202\277%P\265\260*\037\231\353r^\020<u\200\364@R\2500aO6\025S>\300\211|Y\315!\334\343\267\302\177\007\242\242R\250I\345\002\235Q\305\003\nA\000\202GV*\213\005>\315\265\323\3668\177B>\302\001\360\350\037e\204.l{\262 \230\262\001\032\025\024\003\365\244\225\301\024e\001\014N\322(s[\002JA\330+h\273b!U\320rb\241}\225N\247\030\215(f\230v\262eQ\332\221\225\275}\023\254\316\020$\340\350\005Xb\272\002\216\262\047ojk\242\276-\347D\251\302\314u[\206S\024\363X,\024\367E\372\303\304-\032\307jN\321\022>s\006:\214\004\226\220\322\367\031\276\202\327\303D\022\014\010=\014\334\341\245\210^(\267\256\247\332\327a!W.\200@\236h\252!\353\025\352K\313\205\362\321\332\316\312Yk\340O\2532\230\264\252.+Gg\022jE\263\343\372\0131\247\355*\242\332\355\242\320\272\240\250\020O\024M_\324\312\252$\352J\027\276\303[\272]\273.\033\212\004\006\365\224*\353\023\007r\342n<\206\326\317\313cx\313\247xD\232\242\256\200\307\203}""\370\224\236y\205y+\240\315\2029\232\272\230\223w\305\334\3179\r\246\244\234vP,\2332j\342\211\246\353L\363k;Or\035\356\342\276\216\320\273\301{\3111\267Ln\262H\302\260M\255\013\351\251p&mH\362\036\244\021\360\201\027\222\222\317\227\r\270ySV\rM\227\264\374K\261\010\316\003\010\306\030\357\300Ut\234]M7Z\247\r\351H\336]\225wK\236C\nyx[hX\361\356\307)\025\177*\364G(\212:sR6\027\020q\334\363J\230\222\351\0369\240\222\366@\202\342\236\301C0<3\047\243\262\375\031_\343i\314\002\255\263\\\230F\227\351N[\250\277fN\037~\212\010\303\013d\334\262.{A\306[\307`\335\202\207o\340\332\226\333l\310\233\241RB\2730 \246S{n\347\243\333\002\273\250\333\352\246\266\361\263R\314\347iP;#b\265\022t\010Y\250r\374\343\202\240\217\314\267\330x\353\210\033\345VQ\002\367\301\2656\346pR8%\340<\030,e\203/@\342\312\370i8\311\355c[,\224ecE\334\323EuO^\227\213-d\251\363\220y\027\236\367T\217|}s\252\225\372\034$\030\nZ\016[Yzz\216+\317\270\352\214+X\210\375\215\217\354\270\251\323\375\347#l\343\246\243y\236\227\253\316\233\317\340\356\234\033\002.\273-\t\242\276\253@x\367\003\307K\371\000*nc_)\002\237\222P\334W\020z\240\254\360l\324f\351tA\025\013\324k\26043~>\020\217\004uU\320\016UY:0Uu\351\3252d\022%0|\265\355\024>\003e\215\226\017\006*\034\252.\203\337\340\021|3\275\211\235\256\256ip\277\241\006\261\313\233\330(B\342R\267\303\333p\340\327\275x0\r/\252W\212\236N\023\247\346\333\306\2356\033\376\356\226UVv\251EZ\274k\320f\350\305\244P\201w\032EY?(\263v\303\000I\027\025\255 z\222\202\342\266\250\0251\353\255\261\254\007\212,Bi\257BkPX\326\265\203\265\244\232\373\304\262`H\255\024\334\022:\357?\275\212\333Y\260<enhB\233\032\354\3103[\352L\025d\371\020\345an\033\376vJ\302\256h@\201\\\201v\nrf\211\211#\310\236P\241K\202H\177\363\020uYR\321\265\303\242\251\353f\360P\300\351F\016\271v!]\345\261\251\200?\257\01730U@\322\025\332R\254\241\025*r\207\364\321m\036\245\203\002hY\017e\025\243\244\233\2646\337\013U\365FY\335\331\227\341n\375\351\206q(\313\305r\271-\335r\326\272\257p\311\226\333&h\"J\237\256\374\251/""d@\306l\375\211&\347\031\266\304J\246\256\224\335\327\301&\030I\310^v\024s\337+w\2445\256\0324\240\363S\372\307n\300\313\240\327\227\272\004:\024|\305;\241\022T\270\225\326\001\027OE\300\302\253\022\032\266\236\3266\341U}\025\372\017b%5*\316<\207|\323\341\241 m\010y\370\335\026\016\350\257~\210E\273 )\025\001s=\033\321n\020c\250q\350\227\364H\342S\260\031\244P\320t\217\216(\327~\365\320VF\034u\341\372C\304\275x\345\344v5\373!\362\261w\324\212X7\355\212\223uDw\354.G\246\355G\215>wl\212L-5\322H6eG\354\233N\245\221m\210nr\316\371\003\202\224\235hD>D~\355\275\320s\371\303/\325k\325R\355\263\332tM\374x\371F\255\317\375\374O\325\331Z_m\260\266Q\217\320\231\217\027/}8:\251T\327\253%\367\362\037O\336\327r\365\353\3265\253d\303\361\tK\264~q\2569\245F\304\235\274\327\206\244\354a\047\342\364\271\223S8\371\047\047\215\340:p\010\340\353F\222\361p\275zT+\327\027\353\373V\336N\333\257\235\255\306@#\351\366NXi+\353\306g\354m\047\351<kd\232}\315\0017\236p\343w\311\335g\315\010@\373\310)\261#\376Z\313\324\257\325K\026\010(Z\377\254>k\365Y\003\356\305\313\047=\047\333\325T5\213l\377\013\336\303Vn\301\301o<\201\365\306\255\254\365\316\351uD\247\344&\346\332\220I\372o\316\371\314I\"\350q\262\010\2564\006\330\275\337\326\336Y\275 \002\335\376\322\276\357l7\222\215\305\206\330(u\227\230\333\"\261\211Y;\357\244\341\314\000\231\264*v\326\026\335\2118N\346@v\000\366\201S\000\357<\255]\032\254\017\324\357Y\313\366\200\235t\007\047\332\220\270\365\035\2340\030\047\361\207p$\033\006\033\037{:\031\344\312\031d\"N#\345\226=\200@\240#\022\177\354\t\370\322mk\200\334~\340,S\325\234\205\314\220\231e\2601\204\231F\226\217\341\220\313\377\201\242\355\367p\024\323s\240\356\313\027.\305\352\311\372\252\307},i_\263KN\304\215\335\266\036\341\370\266\365\220\216\220\337\264\033\033\252\377h\047\331\266Q\260\220\036k\333N\332iw4\336\035IP\376\262\241\031\256\236Q*3\004Cv)\004\230?\301\025I;B\222\317\233\327\232%\262\226u;bsdn\223ln\271\311y2\277A66)\362\267f\322\237`\047\245\354>\320\346\254\323\347\014""\270\251\351\356\310\003\362\340-y\373\003 \224C\034\277l2\270\322\204\020\360\353\0254\323\2025\014\201\340K;e\277m\\k\224\232\277k\016\300\215\335\315\364\312}g\300y\320\2504\263M\321\235\177\332\035Yh\364\242\305\273\363\017\334\371E\262\370#\371Q\240\310O\344\047X\3154\266@\227\000^\003K\000\336\222\354:g\351\300\232\205\047\336\262\027\355\203\306,\350\374V3\rDgx\016D\264\306\017d\3755y\375\035\371\356\215\233Y\357\202\377\2559\013\327\220\365\r7\263\354fV\310\312>\331W(\362\216\274\373\331\315\274jV\310\3266\302#\262\363\032\341?A\200\036[\344&\263\247\3379\267\310\003FI\266\371\321\237`n;\270\030v\240(\210\360S+\376\233y#\257v\311n\2162wi\250\236\256g\335\241)\273\327\026\301\356\002d\302Z\001\253\034\232 \023h\362C\303u\025\214vh\322\372\2733\300v\216\322\330\030\2301\367\370\321I\353_8\236\264\376IGdr\001\302\322\350\030d\226\022\333\231\260\262$\261\332\314\203\305\"c]\320GN\036\336\017\261\021\334=\013\017\244\010\332t\002\254\035\245G\021\260G\n!z\263\303\3579\021ro\207\354\374@~\240\206s\017\366\302\220nh\301\027\310\0025rD\030\345\023\362\344{\362\375[\212P/\3423p\362\325\256\241f\222*k\212\205\367\243F\231\232\334T\322\235\242\t\324\007\367\235\311f\037\202\321\306\200\007\330\261\003\365?z\361\371\342\267\265\367^\230\270\330_}\025\244\234K\047\345j\032S\316\325\223L\365\253\252\010\266r\365\213jOu\2536PK\272_\374\245\226\256m\325\007\353[\326$\370\357\220\363\217f\262\231!Y\024\343\177\353\212ok\245\372\305\372\n\370{\277\275\001)\353-8W\254\271\013\301\347\2347|~\362g8-[\025\317\272\241\247\376\026\3347fK\3160Y@\r\220M\360\221\267\314\223\256^\270\024\2454\333V\322J\273\321\241\356\310p=O\343\177\224G\335\350\270\225\000k\216\216\220\221y\310\2720\204\320\205`\310*!\230\000\306\001\214\330}\376E$\312\013\240(/=\002\004\316Y8\005\0379\364\210\230\025\006p);p\034\2440\346\205\327\361yg\266\321\007V0\316\003n\007\344\216\375\034\254f<I\222\213\215`\310\001\271\003\261\301\033\262\013\302\241=\316\237\035\277c/C\314\275\333\030\202\360L\253\033\023^""\037g\026\t\300@\342\273\366\241C3\"&<,\204\2366J\376\231$\365\204\006RH\ng \374A\220/\236\203\307\246\356\221{/\232\301\2605}\3601\334\361\007t\252R\255\247\266\016\212\355\255\2134\227fAt\275Pd\220G<T\356\270a\364\261\373\210g\212\000y\326\374\034C\304\243\014\3110*>\001q\001\334.4O\236Q\367\367\010(\0234\224\365\362\004\235\350\216\204Rv\002c\032\304\266\047\020\002\020b`B\210\005J\220\321\047\241,\0050\342\364\261\213h*\177\321\034\006\277A\356\222\274\\\352\200@Lc4\200\274j\226(\304\230F\021\032\355\223\363\316\035(b\000`\330\0050G\253_\270f\316.\221\2715\262\206O\306\220\337\025O\323\304\035q\347\026\033c\360\200\271\307\344\361\032\026\024\210\320P\310\027 \373\276!o\276\247\010\275\234\317\300\205_\374\3579&\031\367\334j\034\222\317i?\205{g\360\020O)3\\;3\254p\274\333\034b\325\021\033\373\340\261c\202\316\000@\003\203\300`\223\207P\026\002@\367\236\201\327\203\310\331\025\013\021\230\353m\344iX_XnC\374\"l\341Es\014\223\306\302S\362\224\232\030\"9\222\223(\"\0239\037\2200\023\000H^P\261z\023p\343\227\254\022]\364\004\025\343\005x\354!m\005\322!\204\0133@|b(T1@\204!\206\021\204T\277\261\204\265\013r\216a\343PB\240bY\233\260\366A\276\261\004\201\334\213\345u\377\205K\375\325d5S\273\006\352\215\270\3757\332\220\233\265<\255\037\202\231\257k\303\365H\275\317\355\277U\037\206n\022\220Q\332\315\224\220X\005\033\350\377\206|3\211\303oj\367\352i\357\010\004r=\t\200\334LA\273\200\020\272L\234.X8\204\236\210\216\366\352Y\306\330\215Z\204\334\340\265\364\r^\265\334\340\356\023 \337\324f\353}\365\201\020\302Y\274\021%\020\321[\341]<\004 \272\361\215\301z\252NA\0228\004p\337\242\243y\010P\000\036\331\260e\220\014\336\245eM\277_\020\235\321\004\260p\234<\263-\340mb\020l&\255c\026M\272\265\t\010&\300OFS$\205j\016f!\3760\336R\264,f\267\247\202\2021\214r\346\002\204G\207\2401\200\300\316\210\303\010\265(Dh\025\205\010-\236 \372\277\202\320\001`\021x\013\265\022\214\376\201\363\262\3511\007^Lf|?\232\tj\3000\312\263q\200,5\226i\3071\303=b\006\016g\304a\2042\203\210H\304]\212""\320\310\006\276\256Ct\366]\336y\337\244\001\340\010\032\017\014\000^\327t\375B\317U\362?Q\232\235\014k\220\304C]A/64\2178\337\363\274_\235\207\262\005\275\032oi\301}\2023\020\010\253\2148\214\320\333\020\331#{\373\2004&\260M\342\241x\236\007gXHPN`\202\306w\350\216\360\033\r\007\017\234\325&\026\2357\231\255\376\236\027\354~\345>\346u\036\243\\\363\001\342/\265#\274Y\016f \017\342\327\2240\304\006\036!mS\301\244\377\201n\340Y\366\244\365\336\021CT^\343\340\367\017\030\302\374>\"E#\034\007\274\253\200\047M\320\0243q\337\031nD@\261\023\274X\233\340\2565\221\201n*\331\014#\376\322\031\3104\231\306\252%\014\261\270AH\303\374\304\264\375\000\374\025\307X\014 \304b`\202}6\003\360\020\231\200Y\024\005B|\316\304,\215W\034\304\255\037\235$}Fl\310\035\214aSh\234\214@\225,\325F\352\177\206\250re\014\n\310!\257\304\036\347\037t\306y\334\033\277M\033\337\201\020\342\323@\t\231\006FB\245\344\022\010\035\300\013\020:\000\014?XQ\242\354\307\251\357w\005\214\324\316@\260\014F\255`\321\246\247<s\322\037\257`g\324\343\331\326\0247\262)\036\327\246\270\335\004\210O\303\252P\nQj\320.\305\200Y\000\343 \273\251\3734<M\335\047\367Q!ST\343\355\200\321@;T\n\215Z\001\353\301\242\027.\215\320\332\223\345\251\221\321s LT2BT:BT\353H\022\372\243lh\231\352\"\000_\201tF<E\004\360\024Q+\270\016\302\006\360\027Z\350\337\27202\352\016\2170\373\030<\331\252\306\252{\265\035\310NW\360\203\327\226\227\363\342<\371\305\247\333:\002\037\361i\230v}\300Z\013\204\230\003\203\226\341\027\260\241P\223\360\274\331\027j$:\002Fj\227A\241\301\250\025\350N\237\367\021\356\343\025\364\350\031/\371M\363,8\315\275x\232g\245\000\361i\230\312}@\356\243\177\"D\035L?t6\201u\000o\300\242\000`\356\230~H\036bQ=MSG;`4\330\341\207F\255\340u\003\025\022\373TzH\376\177L\n\002\006\341\340\013\332:~k\353\220*`D2\354\232\014~%\333\240\023^\325\037cM\355@[\3409\003\241\216\356\0030\261\325\246\030\212=\344\016:\275\037\240\370\362\251\010\303\242\0173\317\000v\216F\036\200h\204`\205~Q\035\366*5\357\1777\360\024\027B\306\370R;\342""\205\252\320\314o\315ud\3621Vw\000\361\261\376\3072/\313\371-\343\250C\353\270[v\272c\312\243\265\036\275\047e\307\0356d}\373\260\237\t\377\217\363\236\227\360fm\255\221\r\375\017\207]\047\3221\373\301\210\314\322\013f\355\203\006\033\302y\037 \217\\\257Ej_\325$\254\335o\236\033|]\213\375\347\310\207\364\257\227/|\376{\357C\225Y\273S\013}\254\272S3\261\370\007\203\376\242\277\272T\273\n\035\320:\373r\361o\326Z\322u";
20694 PyObject *data = __Pyx_DecompressString(cstring, 4321, 1);
20695 #define __Pyx_DecompressString_LZSS_UNUSED
20696 if (unlikely(!data)) __PYX_ERR(0, 1, __pyx_L1_error)
20697 const char*
const bytes = __Pyx_PyBytes_AsString(data);
20698 #if !CYTHON_ASSUME_SAFE_MACROS
20699 if (likely(bytes));
else { Py_DECREF(data); __PYX_ERR(0, 1, __pyx_L1_error) }
20701 #elif (CYTHON_COMPRESS_STRINGS) > 0 && (CYTHON_COMPRESS_STRINGS) <= 90
20702static const char cstring[] =
"\377(tree fr\377agment)?\377Note tha\377t Cython\377 is deli\377berately\377 stricte\375r!\001n PEP-\377484 and \377rejects \377subclass\377es of bu\377iltin ty\377pes. If \377you need\237 to p%\000%\tt\177hen set\200\000\377e \047annot\277ation_<\000i\177ng\047 dirb\000\373iv\242\000o Fal\177se.add_%\000\377edisable{en\002\001gcis\004\003\367dno\277\000faul\377t __redu\177ce__ du>\002\357non-\317\000via\375l\033\000cinit_\377_numpy._\277core.m5\000i\377array fa\373il\261\003impor}t\033\tumath\021\016\373pr\314 us/cp\367ost\n\000cess\376\304\000.pyxBDM\3760\000Pivots_\307ele\373!\016\003\006\005IN\377odeStarF_actor\000\013.\302\006Mc\243B__\017\016\304 s\273 \373e_\013\024copyD\347ataJ\014\373 U__\327Pyx\001\000D\350@_N\377extRef__\354\210D\273 __\335B_ge\377titem___\037_func\004\001\020\000p\003\336\022\000main\030\001mowdul2\002nam:\002z\376\000_ \004qual\017\005\230\226E\314\016\260Fexi\001\237`_\360C\005\336\006\203\000\342\016__te\335s\317@_is\313Aou\377tine_sub\353do\230\002U\342@py_\377global2lOocal\014\017\022\0022\036\003\367aaE\246CQuad\277Weight\363`s\377_det_Jad\377dAverage\377ToParVec\267adv\251\204\003VeZ\000i\177tyalpha\000\002\376\320Casyncio\251.\351`\227\003s\255\205\001d\233`2Krh\006\003L\222\001\254`1\313`\276\336\205\001ionMa\202\206\001e\362\022\0132\016\017\314\000cula\377teConser\375v\307\205\002FluxPW\375L\000\031_noNeu\177mannFix\014\032\367optP\022Jaco\317bianQ\025\025\010_i\377nteriorB\377oundarie\365s3\035__\025Resi\005d\316`G\314B2\034%\005\365\025\025\010\360|%\047\t\204\035\201@_priomati\242`al\244C\364\330d\220\tl\260\204\001in_t\377raceback\373co\020\000dcompwute\313ACor\222\211\002\ro\355 Cc\341H\210%\344\206\005\360\206\001\204\272\204\004\347$y\222\204\005\253\204\005\223\207\001\267\204\003T\371o\024\024\300\210\014dSdeg\377reedetJd\377iffusion\377Tensordo\177fMapl2g\006\000\364\307\210\001\266\205\004N\265\205\001bors\376\t\013sdxebNe\373bq\212\206\004_fluxR\004\010v\276\205\004\036\001n#\001v\000\002\037_par_\267\206\002\016""\003\344\205\003\030\000\t\217\206\004W\000e_0\001\002\001\037\004\273dg\277 ags\373\211\005a\217ryce\215\204\001\t\006\215\204\006A(\202\213\001\243\212\005\246\204\003y\207\207\004s\000\024\037\021\314\313\206\002\367+ie1\r\333\207\001ra\217ture\336\207\004\234\213\004\220\213\001s\000\000\t\211\t\366\204\005\310\213\004\325\204\010\332\213\004\241\"\314\215\001\007sex\356\205\003v\017\001\025\370\003\037\025\377ToSkipff\000\246\214\002\227\210\030\023\013\240\210\020\357A\363A\227\204\005\354\002\360\204a\332\204\007\000\013\322\211\005Upda\243te\256a\313.\303a_\252Lf\347ree\325\211\002\365\215\005get\356\222\205\005DM1\343eVal\377uesLagra\277ngeRep\032\n2\344\003!\243dB/$\322dRT0\340v\013\225\010\013\025\326\212\001\226\nLDG\000\246\200 P\030u\016Y\007\335\211\003\276\207\014\305\035 \022\020\327\021\003#}\016\301\204\022yo$\047\023\203\030\370\n$\215G\2675_arbi\357trar\310\207\005Mem\177bership\366`\237d_phi\004\001\000\004uqi\252\215\005\265\207\016\306\215\002nal\242\207\002\376\227\222\001skmax_n\377N_ownedm\377tnnDOF_t/rial\356\223\005n\373\207\016\n\005\337s_dof\003\007no\177denFree?\001\362\254\224\004n\214\210\002X\003nPoi\317ntsn\262\210\007\n\004Sp\037acenV+\t\t\001\357\224\006DU\001\330\211\002n\353\224\004\227\213\r\t\014s\000\rb)\021s\334\213\006N\n\307\225\003np\337\226\002\377otherp1_\377vdofsper\353mu\351\227\003s\356 pio\373la\243$funpo\335p\301\226\001Pro\301\226\001RT\3770potenti\377alFromP1;nc\000\034_sd3\013\306\214\005\030*\023\016\r;\001ro\336\231\001\261\216\014\313\222\001\337ToRT0\251\215\001Re\343pp\021\022\334\216\007\037\010wcV\377pwcWq_ba\377sis_vals\217q_vq\211#\007\000\255\224\004q\337uad_a\001\002fr\375r\333\221\004rowptr\203rt\376\007\t\000\303\"\000\005\316\230\005s\367elf\321\227\001setdue\203\232\002s\247\213\001lag\205\212\014\377iessolve\300\336\224\020\000\025\370!\314\224\001+\n\376\224\010sq\353rt\227\226\002g\351\226\010sun\377WheelerG\377SsweepuuP\336\215\016\213\232\005\000\027\270\221\005u\312\213\ru\204\214\002\311A""\352\226\r\230\205\002E\341 \032\003Cokef$\003D\255\221\003ve\234\227\005\340\033\014\006\027\320`g\003\242\213\010Wit\rh\376\227\004dP\233\204\005\233\204\001\000\047N\006\377Selected\251E\301\211\023\305\227\001v\352\230\004v\330\227\007vYe\000\n\325\234\005v_\373\221\001v\004\010\344\356\234\004\303\221\004v\222\216\r\217\232\004val\206\261!es\240\206\002\373\222\005\203\223\005\263\235\005w\277w_dS_f\003\000V\333_m\001\002rw\325\227\001_d\207iv_\350\216\001\010\003\211\233\002\317\211\001s\241w\356\227\006\037\001\031\006\204\230\002_\361\211\001i\277entsxx\261\002x\352\232\236\005x\267\217\rx\237\024\200\001\330\377\004\n\210+\220Q\200\001\377\340\006(\250\001\250\036\260\377v\270Q\270a\330)7\376\001\0053\260>\300\021\330)\2770\3200D\300A#\0010\377\260\001\260\036\270v\300Q\177\300a\33018\270\016\003\001\3772\260.\300\001\200\001\360\377\006\000\005\010\200z\220\026\377\220q\230\003\2303\230a\377\340\010\031\230\021\330\t\023\377\2206\230\021\230#\230S\373\240\001\r\002\340\004\007\200x\377\210v\220R\220q\330\010\377\017\210\177\230c\240\030\250\357\026\250q\260\203\000.\250a\377\250z\270\026\270q\300\001\347\330/9\000\006\n\0052\260&\177\270\001\270\021\330/0\032\001\227\023\270A!\001\030\237\000)\000\032\373\3001~\003\030\220x\230u\377\240B\240h\250f\260A\377\260X\270U\300!\3001\377\330\006,\250A\250Q\330\377-5\260V\2701\270H\377\300E\310\021\310!\330-\377.\330-7\3207H\310\275\001\005\000\260x\270q\301\003\035\177\230E\240\026\240q\250\236 \377 \240\003\2406\250\021\250\377!\330\004\010\210\005\210V/\2202\220Q\263\001~\315\000\024\003\365\"V\000Z\263$\006-\250Q\377\250j\270\006\270a\270q\347\330.8\000\006\n\005/\330.\276\000\0008\270\003\2701\033\001\005\273\270Q\"\001\n\300!\271#\037\357\230j\250\006\200 r\260\022\377\260:\270V\3001\300Bo\300a\300q\2307\330\006\246)?,6\260f\270AQ\000\000\006\377,/\250v\260Q\260a/\330,-\330\033\000c\271 \"\000\351h\341@)\000j\257D\007#\240\377!\2409\250F\260!\260\3171\330#,\000\006\n\005-\250}Y?\000#-\320-=\255\000Q#\n\002""\352B4\002?\215D#\225E\355#\335#A\330\047\000U\260!\322\003\001_\247@<\001?\332$\007+\177\250!\320+<\270F\226B|\000\006\000\017+5\3205F\350`\236\004\001E\300Q\330\t\004\352`\010{\000\005\270\202.\260\177\300a\341D\376\345G\010\000\007$\2401\240\375N\324d$1\260\026\260q\177\270\001\330$+\250>\350`\362\004\000=\t\002\254\001A\330$%\247\240^\260\345a4\000(\237`\005\377\250V\2601\260A\330()-\000\006\001\016.\204\204\002Q\031\010\240Eu(\314\204\002\330\004\000%\260q\000\004\370\n\001\312\205\003\227\0001\260\001\3201\377I\310\026\310q\320PQ\371\330\000\007\t\0108\3208T\320\377TU\3301;\320;Sw\320ST\004\002K\3101\010\006\336\250\"\0072\260\021\335@6\270\177\021\270!\33023\260\000\006\376\002\r<\320<\\\320\\]\327\3302<\305b2\r\000M\310\375Q\014\000\320<L\310A\200\377\001\360\n\000\005\037\230l\377\250&\260\001\260\022\2602\377\260\\\300\026\300q\310\002\363\310!o\000\300\206\026\330\n:\270\377!\270<\300v\310Q\310\317a\330;G\000\006\001\016@\300\375\006\356\204\001\330;<\330;B\277\320B^\320^_\004\002`\373\320`6\000E\300U\310!\237\330;E\300X\220\000\004\000\\w\320QR\213\005m\2506\340\000\377\"\260B\260m\3006\310\237\021\310\"\310A\265\000y\027\006\377D\300A\300]\320RX\377\320XY\320YZ\330E\271R\000\t\r\010K\3106d\000\320\377RS\330EF\330EL\277\320Lh\320hi\004\002j\377\320jk\330EO\310v\367\320UV\004\001x\320WX\262\014\001}\276 \243$\320\036\312c\002o\270\"\320<$\003\320Vk\005\342~\034Vo\007\242\000\207!\320_`\363\330E\000\tk.\320Ob\320\373bc\302B\007%\240A\240\377Q\330%0\260\006\260a\374\374`\000\006%,\250L\270\001\337\330%,\320,\202`\330%\377&\240n\260A\330%/\317\250{\270!4\003\366\204\001\001\330\371(\276\204\006\352\206\005(/\250~\270\273Q\330\004\000}\270A\004\000\320\367/@\300%\000)\250\036\260\375qn\003.\250Q\320.N\037\310f\320TU\261!\000\010\n\t\367>\270f\232@Q\330.5\307\3205Q\341@\004\002\320\204\001.8\353\3208\255A\330\005\001L\310A\356\003\002H\310\001\313\0039\270\001\377\3209W\320W]\320]\302\264b99\000\014\000,\002\000\t9@\343\320@\340\204\002\005\001$\003C\320C?[""\320[\\\3309\006\000\301\205\002\2759\013\004\200\001\360\014\322\207\026/v\262\214\001\3300\342\212\003x\300u\356b\31701\3300\274\215\002\000\004\3300\337:\270/\310\021\003\001(\300\271!\000\004Q\003!\240\017\231\212\004\004\367\037\230\177\240\207\004\004\024\220O\276\351\213\007\007\210u\220A\357\213\001\014\377\210E\220\025\220a\220q\377\330\014\020\220\005\220U\230\377!\2301\330\020\034\230A\377\230U\240#\240U\250/\377\270\021\270%\270|\3101\317\310E\320Q\331!\033E\037\230\377q\240\004\240L\260\001\260\377\024\260S\270\005\270\\\310\377\021\310$\310b\320PQ\356\236\200$\t\210\027\256\000Q\220a\363\330\010\257\023^\001\005\240\\\260\377\021\260$\260d\270&\320\375@\304\210\001\320TY\320Y\\\336\304\205\003\014\000\007 \203\000\005\240\377V\2501\250A\330 %\\\000\006\001\016&\240f\344\216\002 \356\211\005\377 *\250.\270\001\330 \177\047\320\047;\2701\330\014\000\373&\260\014\000*\250%\250q\356\n\001,\260a\021\001\047\260\021,\346Be\001\320 \371\220\005 \374\217\005\000\006\260D\001\321\204\001\000\005T\001>\270>\002$\341\250\000\004L\002r\000K\003*\250\021\373\250)\352\211\004*;\2706\300\305\021\203`*\373\211\005\000\006\010\0074\260\377I\270Q\330*1\3201\361B&\001\010\004\017\0044\3204D\217\300A\330* \002\254\003\317\212\t-\376\345\213\005-4\260F\270!\270\3377\300%\300q\330\220\003t\270\3351\341\220\001v\270Q\350\220\001s\270\215!\357\220\001w\270\215\215\002\355\214\001\205\221\001G\273\300qK\006\3202C\304\211\002!\351\330\000\006\000\0172\311\0052<\270\377I\300Q\33029\3209OJ\310!\330\007\005\261\213\013\330\310\213\004\357\200\001\360\016\274\216\001q\230\005\273\230R\334`\006\240a\307\215\002Q~\277 \006=\270Q\320>\243\211\005{W\330\000\010>?\330>\264\213\005\336\000\006>H\310\t\237\207\001>E\237\320EV\320V.\000\t\005H\337\310\001\310\021\330\r\010\320H(\267\207\002+\004\200\002\007\301\216\001\006\231\216\005\241\216\006\351.\001\016\250\216\010.\320\210\001/\320/\047C\3001\337\210\002\351\215\001(\r\000\235\220\001\356\310\216\007/\300\021\325\216\001\047\270""\021|c\003\306\216\002J\310&\320P\315\210\002q1\304\224\005\000\006\010\0078\3208\036\003\3778\3208O\310q\3301\2478\3208\320\210\001\004\002R\206\214\0011\357;\2704\270\026\000;\2701\327\270A\330\013\0008\371\224\002\016\000\377\0078\260q\3208P\320\241P\207!\213\214\001\000\t\013\nA\264\216\002\001\377\3308B\300)\3101\330/8?\320?4\000Q\004\002\206\211\002\376\021\005B\320BZ\320Z[\326&\000\320Bx\0028\013\004\200\001\333\360\020\277\205W\320*\320\205\004*\260\371A\227\206\016u\0005\260A\260Q\352\351\224\0045\361\224\0055\316\223\0037\310%\364\254\221\003\n\003\330\000\0045?\270tw\3001\330\004\000v\300Q\003\001ws\300!\n\001w\300a\021\001\342\361\227\0015\204 \360 \325\003@\001\270\337q\300\006\300f\305\217\002@Fx\000\006\n\005\220\222\006@J\310)\367\221\001\317@G\320G\232\214\002\005\001c\320\367cd\330\016\001e\320ef\261\330\032\006\375C\r\000\320J\322\"@^\216c\200\001\360\022\204\224\003B\273\210\004m$\202\226\005$=\206\227\002A\330\000\006q$\336\210\005\000\006#\007+\320+\235\207\001\301$\000\005\r\000\303\207\001\014\001\333B$.\337\250b\260\001\330\004\000a\250\335q\003\001n\270A\n\001h\260\375a\022\000\320.>\270a\200\377\001\360\024\000\007\024\2201\377\220E\230\026\230q\240\001\347\330\024\031\000\006\n\005\036\230f\374\273\217\002\021\007\032\230&\240\001\240\377\021\330\024\"\240&\250\001\365\250\006\000(\311\230\002q\330\024\036\377\230n\250A\330\024\033\320\367\033/\250\014\000\033\2309\240\270\014\000>\002\031\001e\2401!\000\320o\0362\260!\003\0020\260p\000\357\036\230l\250\013\001\230j\250\356\t\002g\240Q\223\003\031\230\001+\320\031\350\225\005\031\267\220\005\031\225\233\005\000\006\377\031\033\2306\240\021\240!\365\330\000\006\031\233\005\031 \320 \3179\270\021\330\000\005\014\0017\260\371q\013\002\344\227\001\031#\2402\240\313Q\330\004\0001\246\000\013\000:\250n\t\002;\250a\021\001>\2608\000\017#\320#7\322\220\002\251 \212\221\004\352\226\030\302\211\212\0031\236\227\010\205\227\017\250\233\005\317\221\007/\250\317y\270\001\330\214\227\030\270\227\001,""\270\277a\330(2\3202\252\213\001(\234\210\236\002\316\227\001/\300\021\302C\366\226\001\"N\210\213\0021\3302\303\224\007\000\0102\225\005r\000\0062\226\207\005\241\227\0079\3209\366\207\002\0352\000\0069\3209\255\207\002\360\212\001\244\226\002|\371\212\001\376\227\0022<\270O\310k\000\237<\270B\270a\277\227\t*\003<\367\270M\310\226\0045\260A\320%5\330\230\0065\220\223\007\000\0105\207\240\005\000\006\2575D\300F\355\227\0025\223\205\0055\007<\320<\315\223\002\000\006\016\001\213\231\002\027\001\237a\320ab\330 \001\340\222\0025\337?\270r\300\021\351\206\007\270\177=\310\374\206\002x\300q\330\375\206\001\303\231\001\377\200\001\360\030\000\005\014\320\367\013 \240\232\214\001s\250#\320U-\227\227\010\006\315\230\001>\221\232\005;\303\234\005\017;T\320T\251\211\001\307\223\001\000\t\027\007\270!\006*\0063\006B\320B\377\223\002;\316\000\006B\320B\227\230\002\207\231\001g\320\177gh\330;B\300,\276\231\001%B\204\212\004;\225\212\005\026\000.\237\233\001\261\231\001\230\357\224\001\241\231\001\240\242\001;E\246\242\002\236\000N\255\310\341\237\001\036\000\355\214\002\r\201\241\002Ak\330(\261\226\006)\375\241\003\330(\220\213\005\202\000\006(\022\006\033\006$\006\245\235\005\032\007/\353\320/\312\241\001(\000\005/\320/\370\275\236\001\234\215\001\242\234\002(/\250|\270\234\264\215\001\324\204\003/\250\177\272\204\001\035\006\250\214\263\227\003\000\004\320/\350\220\001\330\215\001\303\227\0022\242\235\240\002(\000\004\316\227\005\320\000,\222\223\002,\377:\270&\300\001\300\021\330\365,\262\243\005,\216\236\005,E\300V\037\3101\310A\330\000\006\021\007\033\006\\$\006-\0063\3203\341\227\001,\000\005\360\r\000\331\220\001\014\001\201\230\002,3\260<\207\270q\330\034\001\211\217\001$\001\366\235\001,\034\261\245\003\033\000=\300\001\031\002\335\243\001B\001\306\267\222\001,6\352\231\002\000\004\240\000^\270\376\266\244\001\036\000$%\330#$\377\330\004\007\200s\210\047\220\377\025\220d\230\047\240\027\250\377\001\330\n)\250\021\250%j\301\242\004*\311\242\005*\257\232\005*+\364\234""\002\363!\330\000\006\032\0071\3201A\273\300\021\277\223\tD\270\001\270\223\001J\373\270a\277\223\001A\260Q\330*W4\3204\337\241\001*\254\223\002\330\000\004\356\000\013*4\260%\003\260E\270\261\021/\007\r\005\025\004B\260P\002H\257\270A\340\n\226\231\001\005\336d0\212\211\243\0050\230\244\0050\335\241\005\000\006\032\0077\177\3207G\300q\3300\220\246\004\2770:\270$\270a\300\231\001*\373\300A\307\231\001!\2701\3300W:\320:\372\232\0010\355B\330\000\004\274\004\007\036\003\270%\270q(\007\270\364\016\004\025\004(\357\245\002 \000\007\047\034\367\223\002\362\245\001q\330\047\251\214\005\000\006\000\017\017\0471\3201\333\241\001\004\001\376\222\001\014\001\036\216\226\001\0471\260\024\314 \025\007\355\241\001\335\330\023\000\021\260!\003\001\025\260\ta\013\000\316\226\003\047\325\226\004\024\007\036\004%\004n,\004\030\270\021=\001\034\270\346\231\001\177\"\000\047(\330&\047\232c\377#\210U\220$\220g\230_W\240A\330\n\326\250\001U\223\251\004\005-\233\251\005-\334\242\005\210\227\007\222\227\006\033\006\355C\306\245\227\003\330-\324\227\004\004\001\350\245\001-7\235\260\254\227\004z\300\021\233\251\001\235\227\005I\203\310\021\276\227\010\311\227\004\320\227\004\327\227\004\312\227\003\260\227u\270A/\007\260\016\004\025\004r[\270\021\355\251\004\340\n\325\206\0015\257\251\004\0253\256\251\0053\370\252\0053\264\215\005\000\006\032\007\"\373C3\000\004\224`\371\227\0013\234`\376\244\001\1773=\270T\300\021\330\004\000\347Z\300q\003\001\331\254\0013=\320\025=\321\225\0013\321\221\002\330\000\004\004\007\036\003d\262\253\001(\007\270\016\004\025\004X\300\367\234\001%$\377\212\0351\331\250\004\210\212\212_\250\247\001\270\245\007\367R\300q\226\213\022\330;E\320\225E\366\213\003E\242\245\001S\014\002\204\227\001\200_\001\360$\000\007\321\234\001!\350\207\016\330\371\207\017\224\210\006\322\251\002\330*\000\0044\320o4N\310a\361\207\010\3204\361\206\001\207*4\260\233\210\003\027\005\323\207\014\370\207\003\320\2014\207\253\001\264\210\001\002\003\370\207\014\243\210\004\252\210\004HU""\270\250\235\002L\235\260\002&\370\214\003\001\350\257\004\022\344\214\005\340\000\006\344\214\005\340\000\006\010\007\222\253\004|\020\010\274\214-\320/?\270q\222\245\002\330\336\210\001\244\245\006\337\214\0042\260\254\233\004(\270\205!\217\253\001\"\323\253\001\340\214\020\347\222\002\317\215\0022;\260-L\0012\3202\262\236\003\334\000\354\203\215\004\371\213|\3203\354\214\0026\260o\367\300Q\330\347\257\007b\270\001\330\276\352\214\021\330,6\3206\324\215\0026\357\260m\3001\n\002K\3101\377\200A\340\n\030\230\001\230\027\025\230d\301\226\001\036\000\004\000\013\010\021\207\032\230$-\003\000\006\000\017\013\026\200\277A\360\010\000\t\r\347\245\004t\367\2304\230\347\245\0104\230t\240\375>\324\212\002\020\024\220D\230\014\017\240A\240R\264\240\003";
20703 PyObject *data = __Pyx_DecompressString_LZSS(cstring, 5961, 11429);
20704 #define __Pyx_DecompressString_UNUSED
20705 if (unlikely(!data)) __PYX_ERR(0, 1, __pyx_L1_error)
20706 const char*
const bytes = __Pyx_PyBytes_AsString(data);
20707 #if !CYTHON_ASSUME_SAFE_MACROS
20708 if (likely(bytes));
else { Py_DECREF(data); __PYX_ERR(0, 1, __pyx_L1_error) }
20711static const char bytes[] =
"(tree fragment)?Note that Cython is deliberately stricter than PEP-484 and rejects subclasses of builtin types. If you need to pass subclasses then set the \047annotation_typing\047 directive to False.add_notedisableenablegcisenabledno default __reduce__ due to non-trivial __cinit__numpy._core.multiarray failed to importnumpy._core.umath failed to importproteus/cpostprocessing.pyxBDMmatPivots_elementBDMmat_elementINodeStarFactorNodeStarFactor.__reduce_cython__NodeStarFactor.__setstate_cython__NodeStarFactor.copyDataNodeStarFactor.setU__Pyx_PyDict_NextRef__annotate____class_getitem____func____getstate____main____module____name____pyx_state__qualname____reduce____reduce_cython____reduce_ex____set_name____setstate____setstate_cython____test___is_coroutine_subdomain_U_copy_global2local_subdomain_U_copy_local2globalaaElementQuadWeightsabs_det_JaddAverageToParVecadvectiveVelocityalphaalphaFactorasyncio.coroutinesbuildBDM2rhsbuildLocalBDM1projectionMatricesbuildLocalBDM2projectionMatricescalculateConservationFluxPWLcalculateConservationFluxPWL_noNeumannFixcalculateConservationFluxPWL_optcalculateConservationJacobianPWLcalculateConservationJacobianPWL_interiorBoundariescalculateConservationJacobianPWL_optcalculateConservationResidualGlobalBoundariescalculateConservationResidualPWLcalculateConservationResidualPWL_interiorBoundariescalculateConservationResidualPWL_optcalculateConservationResidualPWL_primativecalculateElementResidualPWLcline_in_tracebackcolindcomputeFluxCorrectionPWCconservationResidualcopyDatacopyElementBoundaryVelocityToParVeccopyParVecToElementBoundaryVelocitycpostprocessingdSdegreedetJdiffusionTensordofMapl2gdofStarElementNeighborsdofStarElementsdxebNebq_global_fluxebq_global_velocityebq_nebq_vebq_v_par_localebq_velocityebq_velocityAverageebqe_vebqe_velocityedgeFlagselementBarycenterselementBoundariesArrayelementBoundaryElementselementBoundaryElementsArrayelementBoundaryLocalElementBoundarieselementBoundaryQuadratureWeightselementNodeselementNodesArrayelem""entResidualelementResidualPWLelement_locationsexteriorElementBoundariesexteriorElementBoundariesArrayexteriorElementBoundariesToSkipffactorLocalBDM1projectionMatricesfactorLocalBDM2projectionMatricesfluxfluxBoundaryNodesfluxCorrectionfluxCorrectionVelocityUpdatefluxElementBoundariesflux_elementBoundaryfreeLocal_elementgetElementBDM1velocityValuesLagrangeRepgetElementBDM2velocityValuesLagrangeRepgetElementBoundaryBDM1velocityValuesLagrangeRepgetElementBoundaryRT0velocityValuesgetElementBoundaryRT0velocityValuesFluxRepgetElementLDGvelocityValuesLagrangeRepgetElementRT0velocityValuesgetElementRT0velocityValuesFluxRepgetGlobalElementBoundaryBDM1velocityValuesLagrangeRepgetGlobalElementBoundaryRT0velocityValuesgetGlobalElementBoundaryRT0velocityValuesFluxRepgetGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRepgetGlobalExteriorElementBoundaryRT0velocityValuesgetGlobalExteriorElementBoundaryRT0velocityValuesFluxRepgetRT0velocityValuesFluxRep_arbitraryElementMembershipgrad_phigradphigraduiinteriorElementBoundariesinternalNodesitemskmax_nN_ownedmtnnDOF_trial_elementnElementBoundariesnElements_dofnElements_nodenFreeDOF_elementnNodes_ownednPointsnQuadraturePointsnSpacenVDOF_elementnVDOFs_elementnodeArraynodeStarElementNeighborsnodeStarElementsnodeStarElementsArraynodeStarElementsNeighborsArraynodeStarFactornpnumpyotherp1_vdofspermutationsphipiola_trial_funpoppostProcessRT0potentialFromP1ncpostProcessRT0potentialFromP1nc_sdpostProcessRT0velocityFromP1ncpostProcessRT0velocityFromP1nc_sdprojectElementBoundaryFluxToRT0fluxRepprojectElementBoundaryVelocityToRT0fluxReppwcVpwcWq_basis_valsq_vq_vdofsq_velocityquad_aquad_frresidualrowptrrt0potentialrt0vdofsrt0vdofs_elementselfsetUsetdefaultskipflag_elementBoundariessolveLocalBDM1projectionsolveLocalBDM1projectionFromFluxsolveLocalBDM2projectionsqrt_det_gsubdomain_UsunWheelerGSsweepuuQuadratureWeights_elementuQuadratureWeights_elementBoundaryu_elementBoundaryupdateAdvectiveVelocityPointEvalupdateCoefupdateDiffusiveVelocityPointE""valupdateDiffusiveVelocityPointEval_sdupdateRT0velocityWithAveragedPotentialP1ncupdateRT0velocityWithAveragedPotentialP1nc_sdupdateSelectedExteriorElementBoundaryFluxvAveragevConservativevConservative_elementv_ebqev_elementv_elementBoundaryv_elementBoundary_globalvalvaluesvdofsvelocityvelocity_elementww_dS_fw_dV_mw_dV_rw_int_div_freew_int_test_gradsw_interior_divfreew_interior_gradientsxx_ebqex_elementx_elementBoundaryx_elementBoundary_global\200\001\330\004\n\210+\220Q\200\001\340\006(\250\001\250\036\260v\270Q\270a\330)7\260v\270Q\270a\330)3\260>\300\021\330)0\3200D\300A\200\001\340\0060\260\001\260\036\270v\300Q\300a\33018\270\016\300a\33012\260.\300\001\200\001\360\006\000\005\010\200z\220\026\220q\230\003\2303\230a\340\010\031\230\021\330\t\023\2206\230\021\230#\230S\240\001\340\010\031\230\021\340\004\007\200x\210v\220R\220q\330\010\017\210\177\230c\240\030\250\026\250q\260\001\340\006.\250a\250z\270\026\270q\300\001\330/9\270\026\270q\300\001\330/9\270\026\270q\300\001\330/2\260&\270\001\270\021\330/0\330/9\270\023\270A\330/9\270\030\300\021\330/9\270\032\3001\200\001\360\006\000\005\030\220x\230u\240B\240h\250f\260A\260X\270U\300!\3001\330\006,\250A\250Q\330-5\260V\2701\270H\300E\310\021\310!\330-.\330-7\3207H\310\001\330-7\260x\270q\200\001\360\006\000\005\035\230E\240\026\240q\250\001\330\004 \240\003\2406\250\021\250!\330\004\010\210\005\210V\2202\220Q\330\010\017\210~\230S\240\003\2406\250\021\250\"\250A\250Z\260v\270Q\270a\330\006-\250Q\250j\270\006\270a\270q\330.8\270\006\270a\270q\330.8\270\006\270a\270q\330./\330./\330.8\270\003\2701\330.8\270\005\270Q\330.8\270\n\300!\200\001\360\006\000\005\037\230j\250\006\250a\250r\260\022\260:\270V\3001\300B\300a\300q\340\004\007\200x\210v\220R\220q\330\010\017\210\177\230c\240\030\250\026\250q\260\001\330\006.\250a\250z\270\026\270q\300\001\330,6\260f\270A\270Q\330,6\260f\270A\270Q\330,/\250v\260Q\260a\330,-\330,6\260c\270\021\330,6\260h\270a\330,6\260j\300\001\200\001\360\006\000\007#\240!\2409\250F\260!\2601""\330#,\250F\260!\2601\330#,\250F\260!\2601\330#-\250Y\260a\330#-\320-=\270Q\330#-\250Y\260a\200\001\360\006\000\007#\240!\240?\260&\270\001\270\021\330#2\260&\270\001\270\021\330#5\260V\2701\270A\330#-\250U\260!\330#-\250_\270A\330#-\320-?\270q\200\001\360\006\000\007+\250!\320+<\270F\300!\3001\330+<\270F\300!\3001\330+<\270F\300!\3001\330+<\270F\300!\3001\330+5\3205F\300a\330+5\3205E\300Q\330+5\3205F\300a\200\001\360\010\000\005\030\220x\230u\240B\240h\250f\260A\260X\270U\300!\3001\330\006,\250A\250Q\330-5\260V\2701\270H\300E\310\021\310!\330-.\330-7\260\177\300a\330-7\260x\270q\330-7\260x\270q\200\001\360\010\000\007$\2401\240N\260&\270\001\270\021\330$1\260\026\260q\270\001\330$+\250>\270\021\330$+\250=\270\001\330$+\320+<\270A\330$%\240^\2601\200\001\360\010\000\007(\240q\250\005\250V\2601\260A\330(-\250V\2601\260A\330(-\250V\2601\260A\330(-\250V\2601\260A\330(.\250f\260A\260Q\330(-\250V\2601\260A\330(6\260f\270A\270Q\330(2\260&\270\001\330(2\260%\260q\330(2\260%\260q\330(2\260.\300\001\200\001\360\010\000\0071\260\001\3201I\310\026\310q\320PQ\3301I\310\026\310q\320PQ\3301I\310\026\310q\320PQ\33018\3208T\320TU\3301;\320;S\320ST\3301;\320;K\3101\3301;\320;S\320ST\200\001\360\010\000\0072\260\021\260!\2606\270\021\270!\33023\2606\270\021\270!\33023\2606\270\021\270!\33023\2606\270\021\270!\3302<\320<\\\320\\]\3302<\270A\270Q\3302<\320<M\310Q\3302<\320<L\310A\200\001\360\n\000\005\037\230l\250&\260\001\260\022\2602\260\\\300\026\300q\310\002\310!\3101\330\004\007\200x\210v\220R\220q\330\010\017\210\177\230c\240\030\250\026\250q\260\001\330\n:\270!\270<\300v\310Q\310a\330;G\300v\310Q\310a\330;G\300v\310Q\310a\330;G\300v\310Q\310a\330;@\300\006\300a\300q\330;<\330;B\320B^\320^_\330;B\320B`\320`a\330;E\300U\310!\330;E\300X\310Q\330;E\300\\\320QR\200\001\360\n\000\005\037\230m\2506\260\021\260\"\260B\260m\3006\310\021\310\"\310A\310Q\330\004\007\200x\210v\220R\220q\330\010\017\210\177\230c\240\030\250\026\250q\260\001\330\006D\300A\300]\320RX\320XY\320YZ\330ER\320RX""\320XY\320YZ\330ER\320RX\320XY\320YZ\330EK\3106\320QR\320RS\330EF\330EL\320Lh\320hi\330EL\320Lj\320jk\330EO\310v\320UV\330EO\310x\320WX\330EO\310}\320\\]\200\001\360\n\000\005\037\320\0361\260\026\260q\270\002\270\"\320<O\310v\320UV\320VX\320XY\320YZ\330\004\007\200x\210v\220R\220q\330\010\017\210\177\230c\240\030\250\026\250q\260\001\330\006D\300A\300V\3106\320QR\320RS\330EX\320X^\320^_\320_`\330EX\320X^\320^_\320_`\330EK\3106\320QR\320RS\330EF\330EL\320Lh\320hi\330EL\320Lj\320jk\330EO\310v\320UV\330EO\310x\320WX\330EO\320Ob\320bc\200\001\360\n\000\007%\240A\240Q\330%0\260\006\260a\260q\330%0\260\006\260a\260q\330%,\250L\270\001\330%,\320,<\270A\330%&\240n\260A\330%/\250{\270!\200\001\360\n\000\007(\240q\250\001\330(6\260f\270A\270Q\330(5\260V\2701\270A\330(/\250~\270Q\330(/\250}\270A\330(/\320/@\300\001\330()\250\036\260q\200\001\360\n\000\007.\250Q\320.N\310f\320TU\320UV\330.N\310f\320TU\320UV\330.N\310f\320TU\320UV\330.>\270f\300A\300Q\330.5\3205Q\320QR\330.5\3205K\3101\330.8\3208X\320XY\330.8\3208L\310A\330.8\3208H\310\001\200\001\360\n\000\0079\270\001\3209W\320W]\320]^\320^_\3309Q\320QW\320WX\320XY\3309Q\320QW\320WX\320XY\3309@\320@\\\320\\]\3309@\320@^\320^_\3309C\320C[\320[\\\3309C\320CS\320ST\3309C\320C[\320[\\\200\001\360\014\000\005\030\220x\230u\240B\240h\250f\260A\260X\270U\300!\3001\330\006/\250q\260\001\33008\270\006\270a\270x\300u\310A\310Q\33001\33007\260v\270Q\33007\260v\270Q\3300:\270/\310\021\3300:\270(\300!\3300:\270(\300!\200\001\360\014\000\005!\240\017\250v\260Q\260a\330\004\037\230\177\250f\260A\260Q\330\004\024\220O\2406\250\021\250!\330\004\010\210\007\210u\220A\220Q\330\010\014\210E\220\025\220a\220q\330\014\020\220\005\220U\230!\2301\330\020\034\230A\230U\240#\240U\250/\270\021\270%\270|\3101\310E\320QU\320UV\200\001\360\014\000\005!\240\017\250v\260Q\260a\330\004\037\230\177\250f\260A\260Q\330\004\024\220O\2406\250\021\250!\330\004\010\210\007\210u\220A\220Q\330\010\014\210E\220\025\220a\220q\330\014\020\220\005\220U\230!\2301\330\020""\037\230q\240\004\240L\260\001\260\024\260S\270\005\270\\\310\021\310$\310b\320PQ\200\001\360\014\000\005!\240\017\250v\260Q\260a\330\004\037\230\177\250f\260A\260Q\330\004\024\220O\2406\250\021\250!\330\004\t\210\027\220\005\220Q\220a\330\010\014\210E\220\025\220a\220q\330\014\020\220\005\220U\230!\2301\330\020\037\230q\240\005\240\\\260\021\260$\260d\270&\320@S\320ST\320TY\320Y\\\320\\]\200\001\360\014\000\007 \230q\240\005\240V\2501\250A\330 %\240V\2501\250A\330 %\240V\2501\250A\330 %\240V\2501\250A\330 &\240f\250A\250Q\330 .\250f\260A\260Q\330 *\250.\270\001\330 \047\320\047;\2701\330 *\250&\260\001\330 *\250%\250q\330 *\250,\260a\330 *\250\047\260\021\200\001\360\014\000\007 \230q\320 7\260v\270Q\270a\330 9\270\026\270q\300\001\330 9\270\026\270q\300\001\330 \047\320\047@\300\001\330 \047\320\047@\300\001\330 \047\320\047>\270a\330 *\250$\250a\330 *\250$\250a\330 *\250.\270\001\200\001\360\014\000\007*\250\021\250)\2606\270\021\270!\330*;\2706\300\021\300!\330*3\2606\270\021\270!\330*3\2606\270\021\270!\330*3\2606\270\021\270!\330*4\260I\270Q\330*1\3201B\300!\330*4\260I\270Q\330*4\260I\270Q\330*4\3204D\300A\330*4\260I\270Q\200\001\360\014\000\0072\260\021\260!\2606\270\021\270!\330-.\250f\260A\260Q\330-4\260F\270!\2707\300%\300q\310\001\330-7\260t\2701\330-7\260v\270Q\330-7\260s\270!\330-7\260w\270a\330-7\260q\270\001\330-7\3207G\300q\200\001\360\014\000\0072\260\021\3202C\3006\310\021\310!\3302C\3006\310\021\310!\3302C\3006\310\021\310!\3302C\3006\310\021\310!\3302;\2706\300\021\300!\3302<\270I\300Q\33029\3209J\310!\3302<\270I\300Q\3302<\320<M\310Q\3302<\320<L\310A\3302<\320<M\310Q\200\001\360\016\000\005\030\220q\230\005\230R\230q\240\006\240a\240q\250\005\250Q\250a\330\006=\270Q\320>O\310v\320UV\320VW\330>O\310v\320UV\320VW\330>?\330>G\300v\310Q\310a\330>G\300v\310Q\310a\330>H\310\t\320QR\330>E\320EV\320VW\330>H\310\t\320QR\330>H\310\001\310\021\330>E\320EV\320VW\330>H\320HX\320XY\330>H\310\t\320QR\200\001\360\016\000\007(\240q\250\006\250f\260A\260Q\330(.""\250f\260A\260Q\330(.\250f\260A\260Q\330(.\250f\260A\260Q\330(6\260f\270A\270Q\330(2\260.\300\001\330(/\320/C\3001\330(/\320/K\3101\330(/\320/E\300Q\330(2\260&\270\001\330(2\260/\300\021\330(2\260\047\270\021\200\001\360\016\000\0071\260\001\3201J\310&\320PQ\320QR\33012\260&\270\001\270\021\33012\260&\270\001\270\021\33012\260&\270\001\270\021\33018\3208Q\320QR\33018\3208O\310q\33018\3208]\320]^\33018\3208R\320RS\3301;\2704\270q\3301;\2701\270A\3301;\2708\3001\200\001\360\016\000\0078\260q\3208P\320PV\320VW\320WX\3308P\320PV\320VW\320WX\3308P\320PV\320VW\320WX\3308A\300\026\300q\310\001\3308B\300)\3101\3308?\320?P\320PQ\3308?\320?[\320[\\\3308B\300)\3101\3308B\320BZ\320Z[\3308B\320BR\320RS\3308B\320BZ\320Z[\200\001\360\020\000\007 \230q\240\005\240V\2501\250A\330 %\240V\2501\250A\330 %\240V\2501\250A\330 %\240V\2501\250A\330 &\240f\250A\250Q\330 .\250f\260A\260Q\330 *\250.\270\001\330 \047\320\047;\2701\330 *\250&\260\001\330 *\250%\250q\330 *\320*>\270a\330 *\250*\260A\330 *\250,\260a\330 *\250\047\260\021\200\001\360\020\000\0075\260A\260Q\260f\270A\270Q\33056\260f\270A\270Q\3305<\270F\300!\3007\310%\310q\320PQ\3305<\270F\300!\3305<\270F\300!\3305?\270t\3001\3305?\270v\300Q\3305?\270s\300!\3305?\270w\300a\3305?\270q\300\001\3305?\320?O\310q\200\001\360\020\000\007@\001\270q\300\006\300f\310A\310Q\330@F\300f\310A\310Q\330@F\300f\310A\310Q\330@I\310\026\310q\320PQ\330@J\310)\320ST\330@G\320GX\320XY\330@G\320Gc\320cd\330@G\320Ge\320ef\330@J\310)\320ST\330@J\310&\320PQ\330@J\320JZ\320Z[\330@J\310&\320PQ\200\001\360\022\000\007$\2401\240B\240f\250A\250Q\330$,\250F\260!\2601\330$=\270V\3001\300A\330$=\270V\3001\300A\330$&\240f\250A\250Q\330$&\240f\250A\250Q\330$,\250F\260!\2601\330$+\320+D\300A\330$+\320+D\300A\330$+\320+B\300!\330$+\320+P\320PQ\330$.\250b\260\001\330$.\250a\250q\330$.\250n\270A\330$.\250h\260a\330$.\320.>\270a\200\001\360\024\000\007\024\2201\220E\230\026\230q\240\001\330\024\031\230\026\230q\240\001\330\024\031\230\026\230q\240\001\330\024\036\230f""\240A\240Q\330\024\031\230\026\230q\240\001\330\024\032\230&\240\001\240\021\330\024\"\240&\250\001\250\021\330\024(\250\006\250a\250q\330\024\036\230n\250A\330\024\033\320\033/\250q\330\024\033\2309\240A\330\024\036\230f\240A\330\024\036\230e\2401\330\024\036\320\0362\260!\330\024\036\320\0360\260\001\330\024\036\230l\250!\330\024\036\230j\250\001\330\024\036\230g\240Q\200\001\360\024\000\007\031\230\001\320\031-\250V\2601\260A\330\0310\260\006\260a\260q\330\0312\260&\270\001\270\021\330\0312\260&\270\001\270\021\330\031\033\2306\240\021\240!\330\031\033\2306\240\021\240!\330\031\032\230&\240\001\240\021\330\031 \320 9\270\021\330\031 \320 9\270\021\330\031 \320 7\260q\330\031 \320 E\300Q\330\031#\2402\240Q\330\031#\2401\240A\330\031#\240:\250Q\330\031#\240;\250a\330\031#\240>\260\021\330\031#\320#7\260q\200\001\360\024\000\007(\240q\250\001\330(-\250V\2601\260A\330(-\250V\2601\260A\330(-\250V\2601\260A\330(4\260F\270!\2701\330(-\250V\2601\260A\330(.\250f\260A\260Q\330(-\250V\2601\260A\330(8\270\006\270a\270q\330(6\260f\270A\270Q\330(/\250y\270\001\330(2\260&\270\001\330(2\260%\260q\330(2\260%\260q\330(2\260.\300\001\330(2\260,\270a\330(2\3202B\300!\330(2\260.\300\001\330(2\260/\300\021\200\001\360\024\000\0072\260\021\260\"\260F\270!\2701\3302K\3106\320QR\320RS\3302K\3106\320QR\320RS\33024\260F\270!\2701\33024\260F\270!\2701\3302A\300\026\300q\310\001\33023\2606\270\021\270!\33029\3209R\320RS\33029\3209R\320RS\33029\3209P\320PQ\33029\3209^\320^_\33029\3209S\320ST\3302<\270O\3101\3302<\270B\270a\3302<\270A\270Q\3302<\320<P\320PQ\3302<\270M\310\021\200\001\360\024\000\0075\260A\3205I\310\026\310q\320PQ\3305N\310f\320TU\320UV\3305N\310f\320TU\320UV\33057\260v\270Q\270a\33057\260v\270Q\270a\3305D\300F\310!\3101\3305=\270V\3001\300A\3305<\320<U\320UV\3305<\320<U\320UV\3305<\320<S\320ST\3305<\320<a\320ab\3305<\320<[\320[\\\3305?\270r\300\021\3305?\270q\300\001\3305?\270\177\310a\3305?\270x\300q\3305?\320?S\320ST\200\001\360\030\000\005\014\320\013 \240\006\240a\240s""\250#\320-R\320RX\320XY\320YZ\330\006:\270!\270>\310\026\310q\320PQ\330;<\270F\300!\3001\330;T\320TZ\320Z[\320[\\\330;T\320TZ\320Z[\320[\\\330;<\270F\300!\3001\330;<\270F\300!\3001\330;<\270F\300!\3001\330;<\270F\300!\3001\330;B\320B[\320[\\\330;B\320B[\320[\\\330;B\320BY\320YZ\330;B\320Bg\320gh\330;B\300,\310a\330;B\320BR\320RS\330;B\320BZ\320Z[\330;B\300.\320PQ\330;B\320BW\320WX\330;E\300Q\300a\330;E\300Q\300a\330;<\270N\310!\200\001\360\036\000\007(\240q\250\r\260V\2701\270A\330(5\260V\2701\270A\330()\250\026\250q\260\001\330(A\300\026\300q\310\001\330(A\300\026\300q\310\001\330()\250\026\250q\260\001\330()\250\026\250q\260\001\330()\250\026\250q\260\001\330(1\260\026\260q\270\001\330()\250\026\250q\260\001\330(/\320/H\310\001\330(/\320/H\310\001\330(/\320/F\300a\330(/\320/T\320TU\330(/\250|\2701\330(/\250y\270\001\330(/\250\177\270a\330(/\320/F\300a\330(/\250}\270A\330(/\250}\270A\330(/\320/D\300A\330(/\320/@\300\001\330(2\260!\2601\330(2\260!\2601\330()\250\036\260q\200\001\360\036\000\007,\2501\250A\330,:\270&\300\001\300\021\330,9\270\026\270q\300\001\330,-\250V\2601\260A\330,E\300V\3101\310A\330,E\300V\3101\310A\330,-\250V\2601\260A\330,-\250V\2601\260A\330,-\250V\2601\260A\330,-\250V\2601\260A\330,3\3203L\310A\330,3\3203L\310A\330,3\3203J\310!\330,3\3203X\320XY\330,3\260<\270q\330,3\3203C\3001\330,3\3203K\3101\330,3\260>\300\021\330,3\260=\300\001\330,3\3203H\310\001\330,3\3203D\300A\330,6\260a\260q\330,6\260a\260q\330,-\250^\2701\200\001\360\036\000$%\330#$\330\004\007\200s\210\047\220\025\220d\230\047\240\027\250\001\330\n)\250\021\250%\250v\260Q\260a\330*/\250v\260Q\260a\330*0\260\006\260a\260q\330*+\2506\260\021\260!\330*+\2506\260\021\260!\330*/\250v\260Q\260a\330*1\3201A\300\021\330*1\3201B\300!\330*4\260D\270\001\330*4\260J\270a\330*4\260A\260Q\330*4\3204F\300a\330*4\260F\270!\330*4\260F\270!\330*4\260F\270!\330*4\260F\270!\330*4\260A\260Q\330*4\260E\270\021\330*4\260A\260Q\330*4\260A\260Q\330*4\260A\260Q\330*4\260B\260a\330*4\260H\270A\340\n/\250q""\260\005\260V\2701\270A\33005\260V\2701\270A\33006\260f\270A\270Q\33001\260\026\260q\270\001\33001\260\026\260q\270\001\33005\260V\2701\270A\33007\3207G\300q\33007\3207H\310\001\3300:\270$\270a\3300:\270*\300A\3300:\270!\2701\3300:\320:L\310A\3300:\270&\300\001\3300:\270&\300\001\3300:\270&\300\001\3300:\270!\2701\3300:\270%\270q\3300:\270!\2701\3300:\270!\2701\3300:\270!\2701\3300:\270(\300!\200\001\360 \000\007\047\240a\240q\250\006\250a\250q\330\047(\250\006\250a\250q\330\047(\250\006\250a\250q\330\047(\250\006\250a\250q\330\047(\250\006\250a\250q\330\0471\3201K\3101\330\0471\3201C\3001\330\0471\3201D\300A\330\0471\260\024\260Q\330\0471\3201K\3101\330\0471\260\021\260!\330\0471\260\021\260!\330\0471\260\025\260a\330\0471\3201B\300!\330\0471\3201B\300!\330\0471\260\021\260!\330\0471\260\021\260!\330\0471\260\021\260!\330\0471\260\021\260!\330\0471\260\030\270\021\330\0471\260\034\270Q\200\001\360\"\000\047(\330&\047\330\004\007\200s\210#\210U\220$\220g\230W\240A\330\n,\250A\250U\260&\270\001\270\021\330-2\260&\270\001\270\021\330-3\2606\270\021\270!\330-.\250f\260A\260Q\330-.\250f\260A\260Q\330-2\260&\270\001\270\021\330-4\260F\270!\330-4\260F\270!\330-4\3204D\300A\330-4\3204E\300Q\330-7\260t\2701\330-7\260z\300\021\330-7\260q\270\001\330-7\3207I\310\021\330-7\260v\270Q\330-7\260v\270Q\330-7\260v\270Q\330-7\260v\270Q\330-7\260q\270\001\330-7\260u\270A\330-7\260q\270\001\330-7\260q\270\001\330-7\260q\270\001\330-7\260r\270\021\330-7\260x\270q\340\n2\260!\2605\270\006\270a\270q\33038\270\006\270a\270q\33039\270\026\270q\300\001\33034\260F\270!\2701\33034\260F\270!\2701\33038\270\006\270a\270q\3303:\270&\300\001\3303:\270&\300\001\3303:\320:J\310!\3303:\320:K\3101\3303=\270T\300\021\3303=\270Z\300q\3303=\270Q\270a\3303=\320=O\310q\3303=\270V\3001\3303=\270V\3001\3303=\270V\3001\3303=\270Q\270a\3303=\270U\300!\3303=\270Q\270a\3303=\270Q\270a\3303=\270Q\270a\3303=\270X\300Q\200\001\360$\000\005\014\320\013 \240\006\240a\240s\250#\320-R\320RX\320XY\320YZ\330\006:\270!""\2701\270F\300!\3001\330;T\320TZ\320Z[\320[\\\330;T\320TZ\320Z[\320[\\\330;<\270F\300!\3001\330;<\270F\300!\3001\330;<\270F\300!\3001\330;<\270F\300!\3001\330;B\320B[\320[\\\330;B\320B[\320[\\\330;B\320BY\320YZ\330;B\320Bg\320gh\330;B\300,\310a\330;B\320BR\320RS\330;B\320BZ\320Z[\330;B\300.\320PQ\330;B\320BW\320WX\330;E\300_\320TU\330;E\300X\310Q\330;E\300R\300q\330;E\300Q\300a\330;E\300Q\300a\330;<\270N\310!\330;E\320EY\320YZ\330;E\300]\320RS\330;E\320EZ\320Z[\200\001\360$\000\007*\250\021\250!\2506\260\021\260!\330*+\2506\260\021\260!\330*+\2506\260\021\260!\330*+\2506\260\021\260!\330*+\2506\260\021\260!\330*1\260\026\260q\330*1\260\026\260q\330*4\3204N\310a\330*4\3204F\300a\330*4\3204G\300q\330*4\260D\270\001\330*4\3204N\310a\330*4\260A\260Q\330*4\260A\260Q\330*4\260E\270\021\330*4\3204E\300Q\330*4\3204E\300Q\330*4\260A\260Q\330*4\260A\260Q\330*4\260A\260Q\330*4\260A\260Q\330*4\260H\270A\330*4\260L\300\001\200\001\360&\000\007(\240q\250\001\250\026\250q\260\001\340(A\300\026\300q\310\001\340(A\300\026\300q\310\001\340()\250\026\250q\260\001\340()\250\026\250q\260\001\340()\250\026\250q\260\001\340(1\260\026\260q\270\001\340()\250\026\250q\260\001\340(/\320/H\310\001\330(/\320/H\310\001\330(/\320/F\300a\330(/\320/T\320TU\330(/\250|\2701\330(/\250y\270\001\330(/\320/?\270q\330(/\320/G\300q\330(/\250~\270Q\330(/\320/D\300A\330(2\260/\300\021\330(2\260(\270!\330(2\260\"\260A\330(2\260!\2601\330(2\260!\2601\330()\250\036\260q\330(2\3202F\300a\330(2\260-\270q\330(2\3202G\300q\200\001\360&\000\007,\2501\250A\330,-\250V\2601\260A\330,E\300V\3101\310A\330,E\300V\3101\310A\330,-\250V\2601\260A\330,-\250V\2601\260A\330,-\250V\2601\260A\330,-\250V\2601\260A\330,3\3203L\310A\330,3\3203L\310A\330,3\3203J\310!\330,3\3203X\320XY\330,3\260<\270q\330,3\3203C\3001\330,3\3203K\3101\330,3\260>\300\021\330,3\3203H\310\001\330,6\260o\300Q\330,6\260h\270a\330,6\260b\270\001\330,6\260a\260q\330,6\260a\260q\330,-\250^\2701\330,6\3206J\310!\330,6\260m\3001\330,6\3206K\3101\200A\340\n\030""\230\001\230\025\230d\240!\330\031\036\230d\240!\330\031\036\230d\240!\330\031\036\230d\240!\330\031\036\230d\240!\330\031\036\230d\240!\330\031\036\230d\240!\330\031\032\230$\230d\240!\330\031\032\230$\230d\240!\330\031\032\230$\230d\240!\330\031\032\230$\230d\240!\330\031\032\230$\230d\240!\330\031\032\230$\230d\240!\330\031\032\230$\230d\240!\200A\360\010\000\t\r\210E\220\025\220a\220t\2304\230q\330\014\020\220\005\220U\230!\2304\230t\240>\260\021\260!\330\020\024\220D\230\014\240A\240R\240q\250\005\250Q";
20712 PyObject *data = NULL;
20713 #define __Pyx_DecompressString_UNUSED
20714 #define __Pyx_DecompressString_LZSS_UNUSED
20716 PyObject **stringtab = __pyx_mstate->__pyx_string_tab;
20717 Py_ssize_t pos = 0;
20718 for (
int i = 0; i < 231; i++) {
20719 Py_ssize_t bytes_length = str_length_index[i].length;
20720 PyObject *
string = PyUnicode_DecodeUTF8(bytes + pos, bytes_length, NULL);
20721 if (likely(
string) && i >= 12) PyUnicode_InternInPlace(&
string);
20722 if (unlikely(!
string)) {
20724 __PYX_ERR(0, 1, __pyx_L1_error)
20726 stringtab[i] = string;
20727 pos += bytes_length;
20729 for (
int i = 231; i < 287; i++) {
20730 Py_ssize_t bytes_length = bytes_length_index[i-231].length;
20731 PyObject *
string = PyBytes_FromStringAndSize(bytes + pos, bytes_length);
20732 stringtab[i] = string;
20733 pos += bytes_length;
20734 if (unlikely(!
string)) {
20736 __PYX_ERR(0, 1, __pyx_L1_error)
20740 for (Py_ssize_t i = 0; i < 287; i++) {
20741 if (unlikely(PyObject_Hash(stringtab[i]) == -1)) {
20742 __PYX_ERR(0, 1, __pyx_L1_error)
20745 #if CYTHON_IMMORTAL_CONSTANTS
20747 PyObject **table = stringtab + 231;
20748 for (Py_ssize_t i=0; i<56; ++i) {
20749 #if PY_VERSION_HEX >= 0x030F0000
20750 PyUnstable_SetImmortal(table[i]);
20751 #elif CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
20752 if ((PY_SSIZE_T_MAX <= _Py_IMMORTAL_REFCNT_LOCAL))
break;
20753 #if PY_VERSION_HEX < 0x030E0000
20754 if (_Py_IsOwnedByCurrentThread(table[i]) && Py_REFCNT(table[i]) == 1)
20756 if (PyUnstable_Object_IsUniquelyReferenced(table[i]))
20759 Py_SET_REFCNT(table[i], ((Py_ssize_t)_Py_IMMORTAL_REFCNT_LOCAL + 1));
20762 if ((PY_SSIZE_T_MAX < _Py_IMMORTAL_INITIAL_REFCNT))
break;
20763 Py_SET_REFCNT(table[i], _Py_IMMORTAL_INITIAL_REFCNT);
20778 unsigned int argcount : 5;
20779 unsigned int num_posonly_args : 1;
20780 unsigned int num_kwonly_args : 1;
20781 unsigned int nlocals : 5;
20782 unsigned int flags : 10;
20783 unsigned int first_line : 11;
20784} __Pyx_PyCode_New_function_description;
20789static PyObject* __Pyx_PyCode_New(
20790 const __Pyx_PyCode_New_function_description descr,
20791 PyObject *
const *varnames,
20792 PyObject *filename,
20793 PyObject *funcname,
20794 PyObject *line_table,
20795 PyObject *tuple_dedup_map
20799static int __Pyx_CreateCodeObjects(__pyx_mstatetype *__pyx_mstate) {
20800 PyObject* tuple_dedup_map = PyDict_New();
20801 if (unlikely(!tuple_dedup_map))
return -1;
20803 const __Pyx_PyCode_New_function_description descr = {17, 0, 0, 17, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 7};
20804 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nFreeDOF_element, __pyx_mstate->__pyx_n_u_freeLocal_element, __pyx_mstate->__pyx_n_u_detJ, __pyx_mstate->__pyx_n_u_sqrt_det_g, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_elementBarycenters, __pyx_mstate->__pyx_n_u_quad_a, __pyx_mstate->__pyx_n_u_quad_f, __pyx_mstate->__pyx_n_u_w_dV_r, __pyx_mstate->__pyx_n_u_u, __pyx_mstate->__pyx_n_u_gradu, __pyx_mstate->__pyx_n_u_a, __pyx_mstate->__pyx_n_u_f, __pyx_mstate->__pyx_n_u_r, __pyx_mstate->__pyx_n_u_rt0vdofs, __pyx_mstate->__pyx_n_u_w_dV_m, __pyx_mstate->__pyx_n_u_mt};
20805 __pyx_mstate_global->__pyx_codeobj_tab[0] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_postProcessRT0velocityFromP1nc, __pyx_mstate->__pyx_kp_b_iso88591_s_d_vQa_vQa_0_aq_6_6_vQa_11A_11, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[0]))
goto bad;
20808 const __Pyx_PyCode_New_function_description descr = {19, 0, 0, 19, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 71};
20809 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_rowptr, __pyx_mstate->__pyx_n_u_colind, __pyx_mstate->__pyx_n_u_nFreeDOF_element, __pyx_mstate->__pyx_n_u_freeLocal_element, __pyx_mstate->__pyx_n_u_detJ, __pyx_mstate->__pyx_n_u_sqrt_det_g, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_elementBarycenters, __pyx_mstate->__pyx_n_u_quad_a, __pyx_mstate->__pyx_n_u_quad_f, __pyx_mstate->__pyx_n_u_w_dV_r, __pyx_mstate->__pyx_n_u_u, __pyx_mstate->__pyx_n_u_gradu, __pyx_mstate->__pyx_n_u_a, __pyx_mstate->__pyx_n_u_f, __pyx_mstate->__pyx_n_u_r, __pyx_mstate->__pyx_n_u_rt0vdofs, __pyx_mstate->__pyx_n_u_w_dV_m, __pyx_mstate->__pyx_n_u_mt};
20810 __pyx_mstate_global->__pyx_codeobj_tab[1] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_postProcessRT0velocityFromP1nc_s, __pyx_mstate->__pyx_kp_b_iso88591_s_U_gWA_AU_2_36_fAQ_fAQ_2_4F_4F, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[1]))
goto bad;
20813 const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 6, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 141};
20814 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_detJ, __pyx_mstate->__pyx_n_u_quad_a, __pyx_mstate->__pyx_n_u_phi, __pyx_mstate->__pyx_n_u_gradphi, __pyx_mstate->__pyx_n_u_a, __pyx_mstate->__pyx_n_u_rt0vdofs_element};
20815 __pyx_mstate_global->__pyx_codeobj_tab[2] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_updateRT0velocityWithAveragedPot, __pyx_mstate->__pyx_kp_b_iso88591_2_6_fAQ_4F_7_q_7t1_7vQ_7s_7wa_7, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[2]))
goto bad;
20818 const __Pyx_PyCode_New_function_description descr = {8, 0, 0, 8, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 157};
20819 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_rowptr, __pyx_mstate->__pyx_n_u_colind, __pyx_mstate->__pyx_n_u_detJ, __pyx_mstate->__pyx_n_u_quad_a, __pyx_mstate->__pyx_n_u_phi, __pyx_mstate->__pyx_n_u_gradphi, __pyx_mstate->__pyx_n_u_a, __pyx_mstate->__pyx_n_u_rt0vdofs_element};
20820 __pyx_mstate_global->__pyx_codeobj_tab[3] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_updateRT0velocityWithAveragedPot_2, __pyx_mstate->__pyx_kp_b_iso88591_5AQfAQ56fAQ5_F_7_qPQ5_F_5_F_5_t, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[3]))
goto bad;
20823 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 177};
20824 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_x_element, __pyx_mstate->__pyx_n_u_rt0vdofs_element, __pyx_mstate->__pyx_n_u_v_element};
20825 __pyx_mstate_global->__pyx_codeobj_tab[4] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getElementRT0velocityValues, __pyx_mstate->__pyx_kp_b_iso88591_9F_1_F_1_F_1_Ya_Q_Ya, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[4]))
goto bad;
20828 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 187};
20829 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_x_elementBoundary, __pyx_mstate->__pyx_n_u_rt0vdofs_element, __pyx_mstate->__pyx_n_u_v_elementBoundary};
20830 __pyx_mstate_global->__pyx_codeobj_tab[5] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getElementBoundaryRT0velocityVal, __pyx_mstate->__pyx_kp_b_iso88591_F_1_F_1_F_1_F_1_55Fa_55EQ_55Fa, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[5]))
goto bad;
20833 const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 198};
20834 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_elementBoundaryElementsArray, __pyx_mstate->__pyx_n_u_x_elementBoundary_global, __pyx_mstate->__pyx_n_u_rt0vdofs_element, __pyx_mstate->__pyx_n_u_v_elementBoundary_global};
20835 __pyx_mstate_global->__pyx_codeobj_tab[6] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getGlobalElementBoundaryRT0veloc, __pyx_mstate->__pyx_kp_b_iso88591_1_1I_qPQ1I_qPQ1I_qPQ188TTU1_SST, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[6]))
goto bad;
20838 const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 5, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 210};
20839 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_exteriorElementBoundariesArray, __pyx_mstate->__pyx_n_u_elementBoundaryElementsArray, __pyx_mstate->__pyx_n_u_x_elementBoundary_global, __pyx_mstate->__pyx_n_u_rt0vdofs_element, __pyx_mstate->__pyx_n_u_v_elementBoundary_global};
20840 __pyx_mstate_global->__pyx_codeobj_tab[7] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getGlobalExteriorElementBoundary, __pyx_mstate->__pyx_kp_b_iso88591_9_9WW__9QQWWXXY9QQWWXXY9_9__9CC, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[7]))
goto bad;
20843 const __Pyx_PyCode_New_function_description descr = {16, 0, 0, 16, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 224};
20844 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_uQuadratureWeights_element, __pyx_mstate->__pyx_n_u_elementBarycenters, __pyx_mstate->__pyx_n_u_aElementQuadWeights, __pyx_mstate->__pyx_n_u_detJ, __pyx_mstate->__pyx_n_u_uQuadratureWeights_elementBounda, __pyx_mstate->__pyx_n_u_x, __pyx_mstate->__pyx_n_u_u, __pyx_mstate->__pyx_n_u_gradu, __pyx_mstate->__pyx_n_u_x_elementBoundary, __pyx_mstate->__pyx_n_u_u_elementBoundary, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_a, __pyx_mstate->__pyx_n_u_f, __pyx_mstate->__pyx_n_u_r, __pyx_mstate->__pyx_n_u_rt0vdofs, __pyx_mstate->__pyx_n_u_rt0potential};
20845 __pyx_mstate_global->__pyx_codeobj_tab[8] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_postProcessRT0potentialFromP1nc, __pyx_mstate->__pyx_kp_b_iso88591_aq_aq_aq_aq_aq_aq_11K1_11C1_11D, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[8]))
goto bad;
20848 const __Pyx_PyCode_New_function_description descr = {18, 0, 0, 18, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 262};
20849 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_rowptr, __pyx_mstate->__pyx_n_u_colind, __pyx_mstate->__pyx_n_u_uQuadratureWeights_element, __pyx_mstate->__pyx_n_u_elementBarycenters, __pyx_mstate->__pyx_n_u_aElementQuadWeights, __pyx_mstate->__pyx_n_u_detJ, __pyx_mstate->__pyx_n_u_uQuadratureWeights_elementBounda, __pyx_mstate->__pyx_n_u_x, __pyx_mstate->__pyx_n_u_u, __pyx_mstate->__pyx_n_u_gradu, __pyx_mstate->__pyx_n_u_x_elementBoundary, __pyx_mstate->__pyx_n_u_u_elementBoundary, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_a, __pyx_mstate->__pyx_n_u_f, __pyx_mstate->__pyx_n_u_r, __pyx_mstate->__pyx_n_u_rt0vdofs, __pyx_mstate->__pyx_n_u_rt0potential};
20850 __pyx_mstate_global->__pyx_codeobj_tab[9] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_postProcessRT0potentialFromP1nc_2, __pyx_mstate->__pyx_kp_b_iso88591_6_6_6_6_6_1_q_1_q_44Na_44Fa_44G, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[9]))
goto bad;
20853 const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 304};
20854 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_w_dS_f, __pyx_mstate->__pyx_n_u_ebq_n, __pyx_mstate->__pyx_n_u_ebq_v, __pyx_mstate->__pyx_n_u_BDMmat_element};
20855 __pyx_mstate_global->__pyx_codeobj_tab[10] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_buildLocalBDM1projectionMatrices, __pyx_mstate->__pyx_kp_b_iso88591_q_V1A_V1A_V1A_V1A_fAQ_V1A_6fAQ, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[10]))
goto bad;
20858 const __Pyx_PyCode_New_function_description descr = {10, 0, 0, 10, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 320};
20859 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_degree, __pyx_mstate->__pyx_n_u_w_dS_f, __pyx_mstate->__pyx_n_u_ebq_n, __pyx_mstate->__pyx_n_u_ebq_v, __pyx_mstate->__pyx_n_u_q_basis_vals, __pyx_mstate->__pyx_n_u_w_int_test_grads, __pyx_mstate->__pyx_n_u_w_int_div_free, __pyx_mstate->__pyx_n_u_piola_trial_fun, __pyx_mstate->__pyx_n_u_edgeFlags, __pyx_mstate->__pyx_n_u_BDMmat_element};
20860 __pyx_mstate_global->__pyx_codeobj_tab[11] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_buildLocalBDM2projectionMatrices, __pyx_mstate->__pyx_kp_b_iso88591_q_V1A_V1A_V1A_4F_1_V1A_fAQ_V1A, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[11]))
goto bad;
20863 const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 350};
20864 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_BDMmat_element, __pyx_mstate->__pyx_n_u_BDMmatPivots_element};
20865 __pyx_mstate_global->__pyx_codeobj_tab[12] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_factorLocalBDM1projectionMatrice, __pyx_mstate->__pyx_kp_b_iso88591_vQa_7vQa_3_00DA, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[12]))
goto bad;
20868 const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 357};
20869 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_BDMmat_element, __pyx_mstate->__pyx_n_u_BDMmatPivots_element};
20870 __pyx_mstate_global->__pyx_codeobj_tab[13] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_factorLocalBDM2projectionMatrice, __pyx_mstate->__pyx_kp_b_iso88591_vQa_7vQa_3_00DA, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[13]))
goto bad;
20873 const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 6, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 364};
20874 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_BDMmat_element, __pyx_mstate->__pyx_n_u_BDMmatPivots_element, __pyx_mstate->__pyx_n_u_w_dS_f, __pyx_mstate->__pyx_n_u_ebq_n, __pyx_mstate->__pyx_n_u_ebq_velocity, __pyx_mstate->__pyx_n_u_q_vdofs};
20875 __pyx_mstate_global->__pyx_codeobj_tab[14] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_solveLocalBDM1projection, __pyx_mstate->__pyx_kp_b_iso88591_q_V1A_V1A_V1A_V1A_fAQ_fAQ_1_q_a, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[14]))
goto bad;
20878 const __Pyx_PyCode_New_function_description descr = {8, 0, 0, 8, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 383};
20879 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_BDMmat_element, __pyx_mstate->__pyx_n_u_BDMmatPivots_element, __pyx_mstate->__pyx_n_u_w_dS_f, __pyx_mstate->__pyx_n_u_ebq_n, __pyx_mstate->__pyx_n_u_w_interior_gradients, __pyx_mstate->__pyx_n_u_ebq_velocity, __pyx_mstate->__pyx_n_u_q_velocity, __pyx_mstate->__pyx_n_u_q_vdofs};
20880 __pyx_mstate_global->__pyx_codeobj_tab[15] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_solveLocalBDM2projection, __pyx_mstate->__pyx_kp_b_iso88591_q_V1A_V1A_V1A_V1A_fAQ_fAQ_1_q_a_2, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[15]))
goto bad;
20883 const __Pyx_PyCode_New_function_description descr = {10, 0, 0, 10, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 406};
20884 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_BDMmat_element, __pyx_mstate->__pyx_n_u_BDMmatPivots_element, __pyx_mstate->__pyx_n_u_w_dS_f, __pyx_mstate->__pyx_n_u_ebq_n, __pyx_mstate->__pyx_n_u_w_interior_gradients, __pyx_mstate->__pyx_n_u_w_interior_divfree, __pyx_mstate->__pyx_n_u_ebq_velocity, __pyx_mstate->__pyx_n_u_q_velocity, __pyx_mstate->__pyx_n_u_q_vdofs, __pyx_mstate->__pyx_n_u_edgeFlags};
20885 __pyx_mstate_global->__pyx_codeobj_tab[16] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_buildBDM2rhs, __pyx_mstate->__pyx_kp_b_iso88591_1E_q_q_q_fAQ_q_aq_nA_q_9A_fA_e1, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[16]))
goto bad;
20888 const __Pyx_PyCode_New_function_description descr = {7, 0, 0, 7, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 435};
20889 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_BDMmat_element, __pyx_mstate->__pyx_n_u_BDMmatPivots_element, __pyx_mstate->__pyx_n_u_elementBoundaryElementsArray, __pyx_mstate->__pyx_n_u_elementBoundariesArray, __pyx_mstate->__pyx_n_u_w_dS_f, __pyx_mstate->__pyx_n_u_ebq_global_flux, __pyx_mstate->__pyx_n_u_q_vdofs};
20890 __pyx_mstate_global->__pyx_codeobj_tab[17] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_solveLocalBDM1projectionFromFlux, __pyx_mstate->__pyx_kp_b_iso88591_q_fAQ_fAQ_fAQ_fAQ_6fAQ_2_C1_K1, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[17]))
goto bad;
20893 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 4, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 455};
20894 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_q_v, __pyx_mstate->__pyx_n_u_p1_vdofs, __pyx_mstate->__pyx_n_u_q_velocity, __pyx_mstate->__pyx_n_u_nVDOFs_element};
20895 __pyx_mstate_global->__pyx_codeobj_tab[18] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getElementBDM1velocityValuesLagr, __pyx_mstate->__pyx_kp_b_iso88591_j_ar_V1Baq_xvRq_c_q_az_q_6fAQ_6, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[18]))
goto bad;
20898 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 4, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 471};
20899 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_q_v, __pyx_mstate->__pyx_n_u_p1_vdofs, __pyx_mstate->__pyx_n_u_q_velocity, __pyx_mstate->__pyx_n_u_nVDOFs_element};
20900 __pyx_mstate_global->__pyx_codeobj_tab[19] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getElementBDM2velocityValuesLagr, __pyx_mstate->__pyx_kp_b_iso88591_z_q_3a_6_S_xvRq_c_q_az_q_9_q_9, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[19]))
goto bad;
20903 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 5, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 493};
20904 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_q_v, __pyx_mstate->__pyx_n_u_vdofs, __pyx_mstate->__pyx_n_u_q_velocity, __pyx_mstate->__pyx_n_u_nVDOF_element, __pyx_mstate->__pyx_n_u_nDOF_trial_element};
20905 __pyx_mstate_global->__pyx_codeobj_tab[20] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getElementLDGvelocityValuesLagra, __pyx_mstate->__pyx_kp_b_iso88591_E_q_6_V2Q_S_6_AZvQa_Qj_aq_8_aq, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[20]))
goto bad;
20908 const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 6, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 509};
20909 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_elementBoundaryElementsArray, __pyx_mstate->__pyx_n_u_exteriorElementBoundariesArray, __pyx_mstate->__pyx_n_u_ebqe_v, __pyx_mstate->__pyx_n_u_p1_vdofs, __pyx_mstate->__pyx_n_u_ebqe_velocity, __pyx_mstate->__pyx_n_u_nVDOFs_element};
20910 __pyx_mstate_global->__pyx_codeobj_tab[21] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getGlobalExteriorElementBoundary_2, __pyx_mstate->__pyx_kp_b_iso88591_m6_Bm6_AQ_xvRq_c_q_DA_RXXYYZERR, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[21]))
goto bad;
20913 const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 6, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 528};
20914 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_elementBoundaryElementsArray, __pyx_mstate->__pyx_n_u_exteriorElementBoundariesArray, __pyx_mstate->__pyx_n_u_ebqe_v, __pyx_mstate->__pyx_n_u_p1_vdofs, __pyx_mstate->__pyx_n_u_ebq_global_velocity, __pyx_mstate->__pyx_n_u_nVDOFs_element};
20915 __pyx_mstate_global->__pyx_codeobj_tab[22] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getGlobalElementBoundaryBDM1velo, __pyx_mstate->__pyx_kp_b_iso88591_1_q_OvUVVXXYYZ_xvRq_c_q_DAV6QRR, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[22]))
goto bad;
20918 const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 6, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 547};
20919 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_elementBoundaryElementsArray, __pyx_mstate->__pyx_n_u_exteriorElementBoundariesArray, __pyx_mstate->__pyx_n_u_ebq_v, __pyx_mstate->__pyx_n_u_p1_vdofs, __pyx_mstate->__pyx_n_u_ebq_velocity, __pyx_mstate->__pyx_n_u_nVDOFs_element};
20920 __pyx_mstate_global->__pyx_codeobj_tab[23] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getElementBoundaryBDM1velocityVa, __pyx_mstate->__pyx_kp_b_iso88591_l_2_q_1_xvRq_c_q_vQa_GvQa_GvQa, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[23]))
goto bad;
20923 const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 567};
20924 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_elementBoundaryQuadratureWeights, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_v_elementBoundary, __pyx_mstate->__pyx_n_u_rt0vdofs_element};
20925 __pyx_mstate_global->__pyx_codeobj_tab[24] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_projectElementBoundaryVelocityTo, __pyx_mstate->__pyx_kp_b_iso88591_2_6_236_236_236_2_2_AQ2_MQ2_LA, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[24]))
goto bad;
20928 const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 5, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 580};
20929 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_elementBoundaryElementsArray, __pyx_mstate->__pyx_n_u_elementBoundariesArray, __pyx_mstate->__pyx_n_u_elementBoundaryQuadratureWeights, __pyx_mstate->__pyx_n_u_flux_elementBoundary, __pyx_mstate->__pyx_n_u_rt0vdofs_element};
20930 __pyx_mstate_global->__pyx_codeobj_tab[25] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_projectElementBoundaryFluxToRT0f, __pyx_mstate->__pyx_kp_b_iso88591_Q_NfTUUV_NfTUUV_NfTUUV_fAQ_55QQ, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[25]))
goto bad;
20933 const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 6, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 595};
20934 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nodeArray, __pyx_mstate->__pyx_n_u_elementNodesArray, __pyx_mstate->__pyx_n_u_abs_det_J, __pyx_mstate->__pyx_n_u_x_element, __pyx_mstate->__pyx_n_u_rt0vdofs_element, __pyx_mstate->__pyx_n_u_v_element};
20935 __pyx_mstate_global->__pyx_codeobj_tab[26] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getElementRT0velocityValuesFluxR, __pyx_mstate->__pyx_kp_b_iso88591_6_6_36_36_36_4IQ_11B_4IQ_4IQ_44, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[26]))
goto bad;
20938 const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 6, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 613};
20939 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nodeArray, __pyx_mstate->__pyx_n_u_elementNodesArray, __pyx_mstate->__pyx_n_u_abs_det_J, __pyx_mstate->__pyx_n_u_x_elementBoundary, __pyx_mstate->__pyx_n_u_rt0vdofs_element, __pyx_mstate->__pyx_n_u_v_elementBoundary};
20940 __pyx_mstate_global->__pyx_codeobj_tab[27] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getElementBoundaryRT0velocityVal_2, __pyx_mstate->__pyx_kp_b_iso88591_2_2C6_2C6_2C6_2C6_2_6_2_IQ299J, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[27]))
goto bad;
20943 const __Pyx_PyCode_New_function_description descr = {7, 0, 0, 7, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 631};
20944 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nodeArray, __pyx_mstate->__pyx_n_u_elementNodesArray, __pyx_mstate->__pyx_n_u_elementBoundaryElementsArray, __pyx_mstate->__pyx_n_u_abs_det_J, __pyx_mstate->__pyx_n_u_x_elementBoundary_global, __pyx_mstate->__pyx_n_u_rt0vdofs_element, __pyx_mstate->__pyx_n_u_v_elementBoundary_global};
20945 __pyx_mstate_global->__pyx_codeobj_tab[28] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getGlobalElementBoundaryRT0veloc_2, __pyx_mstate->__pyx_kp_b_iso88591_8q8PPVVWWX8PPVVWWX8PPVVWWX8A_q, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[28]))
goto bad;
20948 const __Pyx_PyCode_New_function_description descr = {8, 0, 0, 8, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 650};
20949 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nodeArray, __pyx_mstate->__pyx_n_u_elementNodesArray, __pyx_mstate->__pyx_n_u_elementBoundaryElementsArray, __pyx_mstate->__pyx_n_u_exteriorElementBoundariesArray, __pyx_mstate->__pyx_n_u_abs_det_J, __pyx_mstate->__pyx_n_u_x_ebqe, __pyx_mstate->__pyx_n_u_rt0vdofs_element, __pyx_mstate->__pyx_n_u_v_ebqe};
20950 __pyx_mstate_global->__pyx_codeobj_tab[29] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getGlobalExteriorElementBoundary_3, __pyx_mstate->__pyx_kp_b_iso88591_q_fAQ_FfAQ_FfAQ_I_qPQ_J_ST_GGXX, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[29]))
goto bad;
20953 const __Pyx_PyCode_New_function_description descr = {7, 0, 0, 8, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 671};
20954 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nodeArray, __pyx_mstate->__pyx_n_u_elementNodesArray, __pyx_mstate->__pyx_n_u_abs_det_J, __pyx_mstate->__pyx_n_u_x, __pyx_mstate->__pyx_n_u_element_locations, __pyx_mstate->__pyx_n_u_rt0vdofs_element, __pyx_mstate->__pyx_n_u_v_element, __pyx_mstate->__pyx_n_u_nPoints};
20955 __pyx_mstate_global->__pyx_codeobj_tab[30] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_getRT0velocityValuesFluxRep_arbi, __pyx_mstate->__pyx_kp_b_iso88591_q_Rq_aq_Qa_Q_OvUVVW_OvUVVW_GvQa, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[30]))
goto bad;
20958 const __Pyx_PyCode_New_function_description descr = {9, 0, 0, 9, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 692};
20959 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_dS, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_fluxCorrection, __pyx_mstate->__pyx_n_u_velocity, __pyx_mstate->__pyx_n_u_velocity_element};
20960 __pyx_mstate_global->__pyx_codeobj_tab[31] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_fluxCorrectionVelocityUpdate, __pyx_mstate->__pyx_kp_b_iso88591_1BfAQ_F_1_V1A_V1A_fAQ_fAQ_F_1_D, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[31]))
goto bad;
20963 const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 6, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 718};
20964 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_pwcW, __pyx_mstate->__pyx_n_u_pwcV, __pyx_mstate->__pyx_n_u_fluxCorrection};
20965 __pyx_mstate_global->__pyx_codeobj_tab[32] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_computeFluxCorrectionPWC, __pyx_mstate->__pyx_kp_b_iso88591_q_7vQa_9_q_9_q_a_a_a, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[32]))
goto bad;
20968 const __Pyx_PyCode_New_function_description descr = {10, 0, 0, 10, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 734};
20969 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_dS, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_sqrt_det_g, __pyx_mstate->__pyx_n_u_alphaFactor, __pyx_mstate->__pyx_n_u_fluxCorrection, __pyx_mstate->__pyx_n_u_conservationResidual};
20970 __pyx_mstate_global->__pyx_codeobj_tab[33] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_sunWheelerGSsweep, __pyx_mstate->__pyx_kp_b_iso88591_V1A_0_aq_2_2_6_6_9_9_7q_EQ_2Q_1, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[33]))
goto bad;
20973 const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 4, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 794};
20974 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_val, __pyx_mstate->__pyx_n_u_I, __pyx_mstate->__pyx_n_u_i};
20975 __pyx_mstate_global->__pyx_codeobj_tab[34] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_setU, __pyx_mstate->__pyx_kp_b_iso88591_A_E_at4q_U_4t_D_ARq_Q, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[34]))
goto bad;
20978 const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 802};
20979 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_other};
20980 __pyx_mstate_global->__pyx_codeobj_tab[35] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_copyData, __pyx_mstate->__pyx_kp_b_iso88591_A_d_d_d_d_d_d_d_d_d_d_d_d_d_d, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[35]))
goto bad;
20983 const __Pyx_PyCode_New_function_description descr = {1, 0, 0, 1, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1};
20984 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_self};
20985 __pyx_mstate_global->__pyx_codeobj_tab[36] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_tree_fragment, __pyx_mstate->__pyx_n_u_reduce_cython, __pyx_mstate->__pyx_kp_b_iso88591_Q, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[36]))
goto bad;
20988 const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 3};
20989 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_self, __pyx_mstate->__pyx_n_u_pyx_state};
20990 __pyx_mstate_global->__pyx_codeobj_tab[37] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_tree_fragment, __pyx_mstate->__pyx_n_u_setstate_cython, __pyx_mstate->__pyx_kp_b_iso88591_Q, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[37]))
goto bad;
20993 const __Pyx_PyCode_New_function_description descr = {19, 0, 0, 19, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 819};
20994 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_elementNodes, __pyx_mstate->__pyx_n_u_dofMapl2g, __pyx_mstate->__pyx_n_u_nodeStarElements, __pyx_mstate->__pyx_n_u_nodeStarElementNeighbors, __pyx_mstate->__pyx_n_u_nElements_node, __pyx_mstate->__pyx_n_u_fluxElementBoundaries, __pyx_mstate->__pyx_n_u_elementResidual, __pyx_mstate->__pyx_n_u_vAverage, __pyx_mstate->__pyx_n_u_dx, __pyx_mstate->__pyx_n_u_w, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_nodeStarFactor, __pyx_mstate->__pyx_n_u_conservationResidual, __pyx_mstate->__pyx_n_u_vConservative, __pyx_mstate->__pyx_n_u_vConservative_element};
20995 __pyx_mstate_global->__pyx_codeobj_tab[38] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationResidualPWL, __pyx_mstate->__pyx_kp_b_iso88591_q_q_A_q_A_q_q_q_q_1_q_q_H_H_Fa, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[38]))
goto bad;
20998 const __Pyx_PyCode_New_function_description descr = {15, 0, 0, 15, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 874};
20999 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_elementNodes, __pyx_mstate->__pyx_n_u_dofMapl2g, __pyx_mstate->__pyx_n_u_dofStarElements, __pyx_mstate->__pyx_n_u_dofStarElementNeighbors, __pyx_mstate->__pyx_n_u_nElements_dof, __pyx_mstate->__pyx_n_u_internalNodes, __pyx_mstate->__pyx_n_u_fluxElementBoundaries, __pyx_mstate->__pyx_n_u_fluxBoundaryNodes, __pyx_mstate->__pyx_n_u_w, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_nodeStarFactor};
21000 __pyx_mstate_global->__pyx_codeobj_tab[39] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationJacobianPWL, __pyx_mstate->__pyx_kp_b_iso88591_q_V1A_5V1A_q_A_q_A_q_q_q_q_1_q, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[39]))
goto bad;
21003 const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 4, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 915};
21004 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nElements_node, __pyx_mstate->__pyx_n_u_internalNodes, __pyx_mstate->__pyx_n_u_fluxBoundaryNodes, __pyx_mstate->__pyx_n_u_nodeStarFactor};
21005 __pyx_mstate_global->__pyx_codeobj_tab[40] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationFluxPWL, __pyx_mstate->__pyx_kp_b_iso88591_1N_1_q_A_1, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[40]))
goto bad;
21008 const __Pyx_PyCode_New_function_description descr = {2, 0, 0, 2, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 926};
21009 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nElements_node, __pyx_mstate->__pyx_n_u_nodeStarFactor};
21010 __pyx_mstate_global->__pyx_codeobj_tab[41] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationFluxPWL_noN, __pyx_mstate->__pyx_kp_b_iso88591_0_vQa18_a12, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[41]))
goto bad;
21013 const __Pyx_PyCode_New_function_description descr = {19, 0, 0, 19, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 932};
21014 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nNodes_owned, __pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_elementNodes, __pyx_mstate->__pyx_n_u_nodeStarElements, __pyx_mstate->__pyx_n_u_nodeStarElementNeighbors, __pyx_mstate->__pyx_n_u_nElements_node, __pyx_mstate->__pyx_n_u_fluxElementBoundaries, __pyx_mstate->__pyx_n_u_elementResidual, __pyx_mstate->__pyx_n_u_vAverage, __pyx_mstate->__pyx_n_u_dx, __pyx_mstate->__pyx_n_u_w, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_nodeStarFactor, __pyx_mstate->__pyx_n_u_conservationResidual, __pyx_mstate->__pyx_n_u_vConservative, __pyx_mstate->__pyx_n_u_vConservative_element};
21015 __pyx_mstate_global->__pyx_codeobj_tab[42] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationResidualPWL_2, __pyx_mstate->__pyx_kp_b_iso88591_1A_V1A_EV1A_EV1A_V1A_V1A_V1A_V1, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[42]))
goto bad;
21018 const __Pyx_PyCode_New_function_description descr = {10, 0, 0, 10, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 978};
21019 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_skipflag_elementBoundaries, __pyx_mstate->__pyx_n_u_elementResidual, __pyx_mstate->__pyx_n_u_dx, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_conservationResidual, __pyx_mstate->__pyx_n_u_vConservative};
21020 __pyx_mstate_global->__pyx_codeobj_tab[43] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationResidualPWL_3, __pyx_mstate->__pyx_kp_b_iso88591_2_F_12K6QRRS2K6QRRS24F_124F_12A, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[43]))
goto bad;
21023 const __Pyx_PyCode_New_function_description descr = {15, 0, 0, 15, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1006};
21024 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nNodes_owned, __pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_elementNodes, __pyx_mstate->__pyx_n_u_nodeStarElements, __pyx_mstate->__pyx_n_u_nodeStarElementNeighbors, __pyx_mstate->__pyx_n_u_nElements_node, __pyx_mstate->__pyx_n_u_internalNodes, __pyx_mstate->__pyx_n_u_fluxElementBoundaries, __pyx_mstate->__pyx_n_u_fluxBoundaryNodes, __pyx_mstate->__pyx_n_u_w, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_nodeStarFactor};
21025 __pyx_mstate_global->__pyx_codeobj_tab[44] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationJacobianPWL_2, __pyx_mstate->__pyx_kp_b_iso88591_1A_9_q_V1A_EV1A_EV1A_V1A_V1A_V1, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[44]))
goto bad;
21028 const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 5, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1046};
21029 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_nNodes_owned, __pyx_mstate->__pyx_n_u_nElements_node, __pyx_mstate->__pyx_n_u_internalNodes, __pyx_mstate->__pyx_n_u_fluxBoundaryNodes, __pyx_mstate->__pyx_n_u_nodeStarFactor};
21030 __pyx_mstate_global->__pyx_codeobj_tab[45] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationFluxPWL_opt, __pyx_mstate->__pyx_kp_b_iso88591_q_6fAQ_5V1A_Q_A_q, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[45]))
goto bad;
21033 const __Pyx_PyCode_New_function_description descr = {18, 0, 0, 18, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1059};
21034 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_elementNodes, __pyx_mstate->__pyx_n_u_nodeStarElements, __pyx_mstate->__pyx_n_u_nodeStarElementNeighbors, __pyx_mstate->__pyx_n_u_nElements_node, __pyx_mstate->__pyx_n_u_fluxElementBoundaries, __pyx_mstate->__pyx_n_u_elementResidual, __pyx_mstate->__pyx_n_u_vAverage, __pyx_mstate->__pyx_n_u_dx, __pyx_mstate->__pyx_n_u_w, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_nodeStarFactor, __pyx_mstate->__pyx_n_u_conservationResidual, __pyx_mstate->__pyx_n_u_vConservative, __pyx_mstate->__pyx_n_u_vConservative_element};
21035 __pyx_mstate_global->__pyx_codeobj_tab[46] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationResidualPWL_4, __pyx_mstate->__pyx_kp_b_iso88591_as_RRXXYYZ_1F_1_TTZZ_TTZZ_F_1_F, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[46]))
goto bad;
21038 const __Pyx_PyCode_New_function_description descr = {12, 0, 0, 12, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1104};
21039 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_elementNodes, __pyx_mstate->__pyx_n_u_nodeStarElements, __pyx_mstate->__pyx_n_u_nodeStarElementNeighbors, __pyx_mstate->__pyx_n_u_nElements_node, __pyx_mstate->__pyx_n_u_fluxElementBoundaries, __pyx_mstate->__pyx_n_u_w, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_nodeStarFactor};
21040 __pyx_mstate_global->__pyx_codeobj_tab[47] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationJacobianPWL_3, __pyx_mstate->__pyx_kp_b_iso88591_as_RRXXYYZ_qPQ_F_1_TTZZ_TTZZ_F, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[47]))
goto bad;
21043 const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 5, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1138};
21044 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_max_nN_owned, __pyx_mstate->__pyx_n_u_elementNodes, __pyx_mstate->__pyx_n_u_nodeStarElements, __pyx_mstate->__pyx_n_u_nodeStarFactor, __pyx_mstate->__pyx_n_u_subdomain_U};
21045 __pyx_mstate_global->__pyx_codeobj_tab[48] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_subdomain_U_copy_global2local, __pyx_mstate->__pyx_kp_b_iso88591_AQ_0_aq_0_aq_L_A_nA, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[48]))
goto bad;
21048 const __Pyx_PyCode_New_function_description descr = {5, 0, 0, 5, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1151};
21049 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_max_nN_owned, __pyx_mstate->__pyx_n_u_elementNodes, __pyx_mstate->__pyx_n_u_nodeStarElements, __pyx_mstate->__pyx_n_u_nodeStarFactor, __pyx_mstate->__pyx_n_u_subdomain_U};
21050 __pyx_mstate_global->__pyx_codeobj_tab[49] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_subdomain_U_copy_local2global, __pyx_mstate->__pyx_kp_b_iso88591_AQ_0_aq_0_aq_L_A_nA, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[49]))
goto bad;
21053 const __Pyx_PyCode_New_function_description descr = {10, 0, 0, 10, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1164};
21054 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_interiorElementBoundaries, __pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_exteriorElementBoundariesToSkip, __pyx_mstate->__pyx_n_u_dS, __pyx_mstate->__pyx_n_u_n, __pyx_mstate->__pyx_n_u_elementResidual, __pyx_mstate->__pyx_n_u_velocity, __pyx_mstate->__pyx_n_u_conservationResidual};
21055 __pyx_mstate_global->__pyx_codeobj_tab[50] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateConservationResidualGlo, __pyx_mstate->__pyx_kp_b_iso88591_5A5I_qPQ5NfTUUV5NfTUUV57vQa57vQ, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[50]))
goto bad;
21058 const __Pyx_PyCode_New_function_description descr = {7, 0, 0, 7, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1192};
21059 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_exteriorElementBoundaries, __pyx_mstate->__pyx_n_u_elementBoundaryElements, __pyx_mstate->__pyx_n_u_elementBoundaryLocalElementBound, __pyx_mstate->__pyx_n_u_skipflag_elementBoundaries, __pyx_mstate->__pyx_n_u_flux, __pyx_mstate->__pyx_n_u_w, __pyx_mstate->__pyx_n_u_residual};
21060 __pyx_mstate_global->__pyx_codeobj_tab[51] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_updateSelectedExteriorElementBou, __pyx_mstate->__pyx_kp_b_iso88591_1_1J_PQQR12_12_12_188QQR188Oq18, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[51]))
goto bad;
21063 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 4, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1211};
21064 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_updateCoef, __pyx_mstate->__pyx_n_u_advectiveVelocity, __pyx_mstate->__pyx_n_u_velocity, __pyx_mstate->__pyx_n_u_nPoints};
21065 __pyx_mstate_global->__pyx_codeobj_tab[52] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_updateAdvectiveVelocityPointEval, __pyx_mstate->__pyx_kp_b_iso88591_xuBhfAXU_1_AQ_5V1HE_77H_7xq, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[52]))
goto bad;
21068 const __Pyx_PyCode_New_function_description descr = {4, 0, 0, 5, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1221};
21069 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_updateCoef, __pyx_mstate->__pyx_n_u_diffusionTensor, __pyx_mstate->__pyx_n_u_grad_phi, __pyx_mstate->__pyx_n_u_velocity, __pyx_mstate->__pyx_n_u_nPoints};
21070 __pyx_mstate_global->__pyx_codeobj_tab[53] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_updateDiffusiveVelocityPointEval, __pyx_mstate->__pyx_kp_b_iso88591_xuBhfAXU_1_AQ_5V1HE_7_a_7xq_7xq, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[53]))
goto bad;
21073 const __Pyx_PyCode_New_function_description descr = {6, 0, 0, 7, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1233};
21074 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_updateCoef, __pyx_mstate->__pyx_n_u_rowptr, __pyx_mstate->__pyx_n_u_colind, __pyx_mstate->__pyx_n_u_diffusionTensor, __pyx_mstate->__pyx_n_u_grad_phi, __pyx_mstate->__pyx_n_u_velocity, __pyx_mstate->__pyx_n_u_nPoints};
21075 __pyx_mstate_global->__pyx_codeobj_tab[54] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_updateDiffusiveVelocityPointEval_2, __pyx_mstate->__pyx_kp_b_iso88591_xuBhfAXU_1_q_08_axuAQ0107vQ07vQ, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[54]))
goto bad;
21078 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 3, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1249};
21079 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_alpha, __pyx_mstate->__pyx_n_u_elementResidual, __pyx_mstate->__pyx_n_u_elementResidualPWL};
21080 __pyx_mstate_global->__pyx_codeobj_tab[55] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_calculateElementResidualPWL, __pyx_mstate->__pyx_kp_b_iso88591_2_5V1A_U__A_q, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[55]))
goto bad;
21083 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 9, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1259};
21084 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_ebq_velocity, __pyx_mstate->__pyx_n_u_permutations, __pyx_mstate->__pyx_n_u_ebq_v_par_local, __pyx_mstate->__pyx_n_u_ebN, __pyx_mstate->__pyx_n_u_k, __pyx_mstate->__pyx_n_u_I, __pyx_mstate->__pyx_n_u_nElementBoundaries, __pyx_mstate->__pyx_n_u_nQuadraturePoints, __pyx_mstate->__pyx_n_u_nSpace};
21085 __pyx_mstate_global->__pyx_codeobj_tab[56] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_copyElementBoundaryVelocityToPar, __pyx_mstate->__pyx_kp_b_iso88591_vQa_fAQ_O6_uAQ_E_aq_U_1_q_L_S_b, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[56]))
goto bad;
21088 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 9, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1273};
21089 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_ebq_velocityAverage, __pyx_mstate->__pyx_n_u_permutations, __pyx_mstate->__pyx_n_u_ebq_v_par_local, __pyx_mstate->__pyx_n_u_ebN, __pyx_mstate->__pyx_n_u_k, __pyx_mstate->__pyx_n_u_I, __pyx_mstate->__pyx_n_u_nElementBoundaries, __pyx_mstate->__pyx_n_u_nQuadraturePoints, __pyx_mstate->__pyx_n_u_nSpace};
21090 __pyx_mstate_global->__pyx_codeobj_tab[57] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_addAverageToParVec, __pyx_mstate->__pyx_kp_b_iso88591_vQa_fAQ_O6_Qa_E_aq_U_1_q_d_SSTT, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[57]))
goto bad;
21093 const __Pyx_PyCode_New_function_description descr = {3, 0, 0, 9, (
unsigned int)(CO_OPTIMIZED|CO_NEWLOCALS), 1287};
21094 PyObject*
const varnames[] = {__pyx_mstate->__pyx_n_u_ebq_velocity, __pyx_mstate->__pyx_n_u_permutations, __pyx_mstate->__pyx_n_u_ebq_v_par_local, __pyx_mstate->__pyx_n_u_ebN, __pyx_mstate->__pyx_n_u_k, __pyx_mstate->__pyx_n_u_I, __pyx_mstate->__pyx_n_u_nElementBoundaries, __pyx_mstate->__pyx_n_u_nQuadraturePoints, __pyx_mstate->__pyx_n_u_nSpace};
21095 __pyx_mstate_global->__pyx_codeobj_tab[58] = __Pyx_PyCode_New(descr, varnames, __pyx_mstate->__pyx_kp_u_proteus_cpostprocessing_pyx, __pyx_mstate->__pyx_n_u_copyParVecToElementBoundaryVeloc, __pyx_mstate->__pyx_kp_b_iso88591_vQa_fAQ_O6_uAQ_E_aq_U_1_AU_U_1E, tuple_dedup_map);
if (unlikely(!__pyx_mstate_global->__pyx_codeobj_tab[58]))
goto bad;
21097 Py_DECREF(tuple_dedup_map);
21100 Py_DECREF(tuple_dedup_map);
21105static int __Pyx_InitGlobals(
void) {
21106 int __pyx_lineno = 0;
21107 const char *__pyx_filename = NULL;
21108 int __pyx_clineno = 0;
21110 if (likely(__Pyx_init_co_variables() == 0 && __Pyx_init_tpflags_variables() == 0));
else
21112 if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error)
21115 if (likely(__Pyx_init_assertions_enabled() == 0));
else
21117 if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error)
21120 #if CYTHON_COMPILING_IN_LIMITED_API
21122 PyObject *builtins = PyEval_GetBuiltins();
21123 if (likely(builtins)) {
21124 PyObject *type_name = PyUnicode_FromStringAndSize(
"frozendict",
sizeof(
"frozendict")-1);
21125 if (likely(type_name)) {
21126 PyObject *frozendict_type = PyObject_GetItem(builtins, type_name);
21127 Py_DECREF(type_name);
21128 if (!frozendict_type && PyErr_ExceptionMatches(PyExc_KeyError)) {
21130 frozendict_type = (PyObject*) &PyDict_Type;
21131 Py_INCREF(frozendict_type);
21133 __pyx_mstate_global->__Pyx_PyFrozenDictType = frozendict_type;
21139 if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error)
21148 #ifdef NPY_FEATURE_VERSION
21149 #ifndef NO_IMPORT_ARRAY
21150 if (unlikely(_import_array() == -1)) {
21151 PyErr_SetString(PyExc_ImportError,
"numpy.core.multiarray failed to import "
21152 "(auto-generated because you didn't call 'numpy.import_array()' after cimporting numpy; "
21153 "use '<void>numpy._import_array' to disable if you are certain you don't need it).");
21158 if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error)
21161 if (likely(__pyx_CommonTypesMetaclass_init(__pyx_m) == 0));
else
21163 if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error)
21166 #if CYTHON_COMPILING_IN_LIMITED_API
21168 PyObject *typesModule=NULL;
21169 typesModule = PyImport_ImportModule(
"types");
21171 __pyx_mstate_global->__Pyx_CachedMethodType = PyObject_GetAttrString(typesModule,
"MethodType");
21172 Py_DECREF(typesModule);
21177 if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error)
21185static int __Pyx_InitAfterSharedUtility(
void) {
21186 int __pyx_lineno = 0;
21187 const char *__pyx_filename = NULL;
21188 int __pyx_clineno = 0;
21190 if (likely(__pyx_CyFunction_init(__pyx_m) == 0));
else
21192 if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 1, __pyx_L1_error)
21203#pragma warning( push )
21208#pragma warning( disable : 4127 )
21218static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(
const char *modname) {
21219 PyObject *m = NULL, *p = NULL;
21221 m = PyImport_ImportModule(modname);
21223 p = PyObject_GetAttrString(m,
"RefNannyAPI");
21225 r = PyLong_AsVoidPtr(p);
21229 return (__Pyx_RefNannyAPIStruct *)
r;
21234#if CYTHON_USE_EXC_INFO_STACK && CYTHON_FAST_THREAD_STATE
21235static _PyErr_StackItem *
21236__Pyx_PyErr_GetTopmostException(PyThreadState *tstate)
21238 _PyErr_StackItem *exc_info = tstate->exc_info;
21239 while ((exc_info->exc_value == NULL || exc_info->exc_value == Py_None) &&
21240 exc_info->previous_item != NULL)
21242 exc_info = exc_info->previous_item;
21249#if CYTHON_FAST_THREAD_STATE
21250static CYTHON_INLINE
void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
21251 #if CYTHON_USE_EXC_INFO_STACK && PY_VERSION_HEX >= 0x030B00a4
21252 _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate);
21253 PyObject *exc_value = exc_info->exc_value;
21254 if (exc_value == NULL || exc_value == Py_None) {
21259 *value = exc_value;
21261 *type = (PyObject*) Py_TYPE(exc_value);
21263 *tb = PyException_GetTraceback(exc_value);
21265 #elif CYTHON_USE_EXC_INFO_STACK
21266 _PyErr_StackItem *exc_info = __Pyx_PyErr_GetTopmostException(tstate);
21267 *type = exc_info->exc_type;
21268 *value = exc_info->exc_value;
21269 *tb = exc_info->exc_traceback;
21271 Py_XINCREF(*value);
21274 *type = tstate->exc_type;
21275 *value = tstate->exc_value;
21276 *tb = tstate->exc_traceback;
21278 Py_XINCREF(*value);
21282static CYTHON_INLINE
void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
21283 #if CYTHON_USE_EXC_INFO_STACK && PY_VERSION_HEX >= 0x030B00a4
21284 _PyErr_StackItem *exc_info = tstate->exc_info;
21285 PyObject *tmp_value = exc_info->exc_value;
21286 exc_info->exc_value = value;
21287 Py_XDECREF(tmp_value);
21291 PyObject *tmp_type, *tmp_value, *tmp_tb;
21292 #if CYTHON_USE_EXC_INFO_STACK
21293 _PyErr_StackItem *exc_info = tstate->exc_info;
21294 tmp_type = exc_info->exc_type;
21295 tmp_value = exc_info->exc_value;
21296 tmp_tb = exc_info->exc_traceback;
21297 exc_info->exc_type = type;
21298 exc_info->exc_value = value;
21299 exc_info->exc_traceback = tb;
21301 tmp_type = tstate->exc_type;
21302 tmp_value = tstate->exc_value;
21303 tmp_tb = tstate->exc_traceback;
21304 tstate->exc_type = type;
21305 tstate->exc_value = value;
21306 tstate->exc_traceback = tb;
21308 Py_XDECREF(tmp_type);
21309 Py_XDECREF(tmp_value);
21310 Py_XDECREF(tmp_tb);
21316#if CYTHON_COMPILING_IN_CPYTHON
21317static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) {
21319 a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*);
21323 return b == &PyBaseObject_Type;
21325static CYTHON_INLINE
int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) {
21327 if (a == b)
return 1;
21331 n = PyTuple_GET_SIZE(mro);
21332 for (i = 0; i <
n; i++) {
21333 if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b)
21338 return __Pyx_InBases(a, b);
21340static CYTHON_INLINE
int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, PyTypeObject *b) {
21342 if (cls == a || cls == b)
return 1;
21346 n = PyTuple_GET_SIZE(mro);
21347 for (i = 0; i <
n; i++) {
21348 PyObject *base = PyTuple_GET_ITEM(mro, i);
21349 if (base == (PyObject *)a || base == (PyObject *)b)
21354 return __Pyx_InBases(cls, a) || __Pyx_InBases(cls, b);
21359#if CYTHON_FAST_THREAD_STATE
21360static CYTHON_INLINE
void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
21361#if PY_VERSION_HEX >= 0x030C00A6
21362 PyObject *tmp_value;
21363 assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value)));
21365 #if CYTHON_COMPILING_IN_CPYTHON
21366 if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb))
21368 PyException_SetTraceback(value, tb);
21370 tmp_value = tstate->current_exception;
21371 tstate->current_exception = value;
21372 Py_XDECREF(tmp_value);
21376 PyObject *tmp_type, *tmp_value, *tmp_tb;
21377 tmp_type = tstate->curexc_type;
21378 tmp_value = tstate->curexc_value;
21379 tmp_tb = tstate->curexc_traceback;
21380 tstate->curexc_type = type;
21381 tstate->curexc_value = value;
21382 tstate->curexc_traceback = tb;
21383 Py_XDECREF(tmp_type);
21384 Py_XDECREF(tmp_value);
21385 Py_XDECREF(tmp_tb);
21388static CYTHON_INLINE
void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
21389#if PY_VERSION_HEX >= 0x030C00A6
21390 PyObject* exc_value;
21391 exc_value = tstate->current_exception;
21392 tstate->current_exception = 0;
21393 *value = exc_value;
21397 *type = (PyObject*) Py_TYPE(exc_value);
21399 #if CYTHON_COMPILING_IN_CPYTHON
21400 *tb = ((PyBaseExceptionObject*) exc_value)->traceback;
21403 *tb = PyException_GetTraceback(exc_value);
21407 *type = tstate->curexc_type;
21408 *value = tstate->curexc_value;
21409 *tb = tstate->curexc_traceback;
21410 tstate->curexc_type = 0;
21411 tstate->curexc_value = 0;
21412 tstate->curexc_traceback = 0;
21418#if CYTHON_COMPILING_IN_CPYTHON
21419static CYTHON_INLINE
int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) {
21421 return __Pyx_IsAnySubtype2((PyTypeObject*)err, (PyTypeObject*)exc_type1, (PyTypeObject*)exc_type2);
21423 return __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2);
21426static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
21428 assert(PyExceptionClass_Check(exc_type));
21429 n = PyTuple_GET_SIZE(tuple);
21430 for (i=0; i<
n; i++) {
21431 if (exc_type == PyTuple_GET_ITEM(tuple, i))
return 1;
21433 for (i=0; i<
n; i++) {
21434 PyObject *t = PyTuple_GET_ITEM(tuple, i);
21435 if (likely(PyExceptionClass_Check(t))) {
21436 if (__Pyx_inner_PyErr_GivenExceptionMatches2(exc_type, NULL, t))
return 1;
21442static CYTHON_INLINE
int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject* exc_type) {
21443 if (likely(err == exc_type))
return 1;
21444 if (likely(PyExceptionClass_Check(err))) {
21445 if (likely(PyExceptionClass_Check(exc_type))) {
21446 return __Pyx_inner_PyErr_GivenExceptionMatches2(err, NULL, exc_type);
21447 }
else if (likely(PyTuple_Check(exc_type))) {
21448 return __Pyx_PyErr_GivenExceptionMatchesTuple(err, exc_type);
21452 return PyErr_GivenExceptionMatches(err, exc_type);
21454static CYTHON_INLINE
int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *exc_type1, PyObject *exc_type2) {
21455 assert(PyExceptionClass_Check(exc_type1));
21456 assert(PyExceptionClass_Check(exc_type2));
21457 if (likely(err == exc_type1 || err == exc_type2))
return 1;
21458 if (likely(PyExceptionClass_Check(err))) {
21459 return __Pyx_inner_PyErr_GivenExceptionMatches2(err, exc_type1, exc_type2);
21461 return (PyErr_GivenExceptionMatches(err, exc_type1) || PyErr_GivenExceptionMatches(err, exc_type2));
21466#if CYTHON_FAST_THREAD_STATE
21467static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
21469 n = PyTuple_GET_SIZE(tuple);
21470 for (i=0; i<
n; i++) {
21471 if (exc_type == PyTuple_GET_ITEM(tuple, i))
return 1;
21473 for (i=0; i<
n; i++) {
21474 if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i)))
return 1;
21478static CYTHON_INLINE
int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) {
21480 PyObject *exc_type;
21481#if PY_VERSION_HEX >= 0x030C00A6
21482 PyObject *current_exception = tstate->current_exception;
21483 if (unlikely(!current_exception))
return 0;
21484 exc_type = (PyObject*) Py_TYPE(current_exception);
21485 if (exc_type == err)
return 1;
21487 exc_type = tstate->curexc_type;
21488 if (exc_type == err)
return 1;
21489 if (unlikely(!exc_type))
return 0;
21491 #if CYTHON_AVOID_BORROWED_REFS
21492 Py_INCREF(exc_type);
21494 if (unlikely(PyTuple_Check(err))) {
21495 result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err);
21497 result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err);
21499 #if CYTHON_AVOID_BORROWED_REFS
21500 Py_DECREF(exc_type);
21507#if CYTHON_FAST_THREAD_STATE
21508static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb)
21510static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb)
21513 PyObject *local_type = NULL, *local_value, *local_tb = NULL;
21514#if CYTHON_FAST_THREAD_STATE
21515 PyObject *tmp_type, *tmp_value, *tmp_tb;
21516 #if PY_VERSION_HEX >= 0x030C0000
21517 local_value = tstate->current_exception;
21518 tstate->current_exception = 0;
21520 local_type = tstate->curexc_type;
21521 local_value = tstate->curexc_value;
21522 local_tb = tstate->curexc_traceback;
21523 tstate->curexc_type = 0;
21524 tstate->curexc_value = 0;
21525 tstate->curexc_traceback = 0;
21527#elif __PYX_LIMITED_VERSION_HEX >= 0x030C0000
21528 local_value = PyErr_GetRaisedException();
21530 PyErr_Fetch(&local_type, &local_value, &local_tb);
21532#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000
21533 if (likely(local_value)) {
21534 local_type = (PyObject*) Py_TYPE(local_value);
21535 Py_INCREF(local_type);
21536 local_tb = PyException_GetTraceback(local_value);
21539 PyErr_NormalizeException(&local_type, &local_value, &local_tb);
21540#if CYTHON_FAST_THREAD_STATE
21541 if (unlikely(tstate->curexc_type))
21543 if (unlikely(PyErr_Occurred()))
21547 if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0))
21551 Py_XINCREF(local_tb);
21552 Py_XINCREF(local_type);
21553 Py_XINCREF(local_value);
21554 *type = local_type;
21555 *value = local_value;
21557#if CYTHON_FAST_THREAD_STATE
21558 #if CYTHON_USE_EXC_INFO_STACK
21560 _PyErr_StackItem *exc_info = tstate->exc_info;
21561 #if PY_VERSION_HEX >= 0x030B00a4
21562 tmp_value = exc_info->exc_value;
21563 exc_info->exc_value = local_value;
21566 Py_XDECREF(local_type);
21567 Py_XDECREF(local_tb);
21569 tmp_type = exc_info->exc_type;
21570 tmp_value = exc_info->exc_value;
21571 tmp_tb = exc_info->exc_traceback;
21572 exc_info->exc_type = local_type;
21573 exc_info->exc_value = local_value;
21574 exc_info->exc_traceback = local_tb;
21578 tmp_type = tstate->exc_type;
21579 tmp_value = tstate->exc_value;
21580 tmp_tb = tstate->exc_traceback;
21581 tstate->exc_type = local_type;
21582 tstate->exc_value = local_value;
21583 tstate->exc_traceback = local_tb;
21585 Py_XDECREF(tmp_type);
21586 Py_XDECREF(tmp_value);
21587 Py_XDECREF(tmp_tb);
21588#elif __PYX_LIMITED_VERSION_HEX >= 0x030b0000
21589 PyErr_SetHandledException(local_value);
21590 Py_XDECREF(local_value);
21591 Py_XDECREF(local_type);
21592 Py_XDECREF(local_tb);
21594 PyErr_SetExcInfo(local_type, local_value, local_tb);
21597#if __PYX_LIMITED_VERSION_HEX < 0x030C0000
21602 Py_XDECREF(local_type);
21603 Py_XDECREF(local_value);
21604 Py_XDECREF(local_tb);
21610#if CYTHON_COMPILING_IN_CPYTHON
21611static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {
21613 ternaryfunc call = Py_TYPE(func)->tp_call;
21614 if (unlikely(!call))
21615 return PyObject_Call(func, arg, kw);
21616 if (unlikely(Py_EnterRecursiveCall(
" while calling a Python object")))
21618 result = (*call)(func, arg, kw);
21619 Py_LeaveRecursiveCall();
21620 if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
21623 "NULL result without error in PyObject_Call");
21630#if CYTHON_COMPILING_IN_CPYTHON
21631static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {
21632 PyObject *self, *result;
21634 cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func);
21635 self = __Pyx_CyOrPyCFunction_GET_SELF(func);
21636 if (unlikely(Py_EnterRecursiveCall(
" while calling a Python object")))
21638 result = cfunc(self, arg);
21639 Py_LeaveRecursiveCall();
21640 if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
21643 "NULL result without error in PyObject_Call");
21650#if CYTHON_COMPILING_IN_LIMITED_API
21651static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject *
const*args,
size_t nargs, PyObject *kwargs) {
21652 PyObject *argstuple;
21653 PyObject *result = 0;
21655 argstuple = PyTuple_New((Py_ssize_t)nargs);
21656 if (unlikely(!argstuple))
return NULL;
21657 for (i = 0; i < nargs; i++) {
21658 Py_INCREF(args[i]);
21659 if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) != (0))
goto bad;
21661 result = __Pyx_PyObject_Call(func, argstuple, kwargs);
21663 Py_DECREF(argstuple);
21667#if CYTHON_VECTORCALL && !(CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY)
21668 #if CYTHON_COMPILING_IN_CPYTHON
21669static CYTHON_INLINE vectorcallfunc __Pyx_PyVectorcall_Function(PyObject *callable) {
21670 PyTypeObject *tp = Py_TYPE(callable);
21671 #if defined(__Pyx_CyFunction_USED)
21672 if (__Pyx_CyFunction_CheckExact(callable)) {
21673 return __Pyx_CyFunction_func_vectorcall(callable);
21676 if (!PyType_HasFeature(tp, Py_TPFLAGS_HAVE_VECTORCALL)) {
21679 assert(PyCallable_Check(callable));
21680 Py_ssize_t offset = tp->tp_vectorcall_offset;
21681 assert(offset > 0);
21682 vectorcallfunc ptr;
21683 memcpy(&ptr, (
char *) callable + offset,
sizeof(ptr));
21687 #define __Pyx_PyVectorcall_Function(callable) PyVectorcall_Function(callable)
21690static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject *
const *args,
size_t nargsf, PyObject *kwargs) {
21691 Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(nargsf);
21692#if CYTHON_COMPILING_IN_CPYTHON
21693 if (nargs == 0 && kwargs == NULL) {
21694 if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS))
21695 return __Pyx_PyObject_CallMethO(func, NULL);
21697 else if (nargs == 1 && kwargs == NULL) {
21698 if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O))
21699 return __Pyx_PyObject_CallMethO(func, args[0]);
21702 if (kwargs == NULL) {
21703 #if CYTHON_VECTORCALL
21704 #if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY
21705 return PyObject_Vectorcall(func, args, nargsf, NULL);
21707 vectorcallfunc
f = __Pyx_PyVectorcall_Function(func);
21709 return f(func, args, nargsf, NULL);
21715 return __Pyx_PyObject_Call(func, __pyx_mstate_global->__pyx_empty_tuple, kwargs);
21717 #if CYTHON_COMPILING_IN_LIMITED_API
21718 return __Pyx_PyObject_FastCall_fallback(func, args, (
size_t)nargs, kwargs);
21719 #elif CYTHON_COMPILING_IN_PYPY
21720 return PyObject_VectorcallDict(func, args, (
size_t) nargs, kwargs);
21722 return PyObject_VectorcallDict(func, args, nargsf, kwargs);
21727static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {
21728 PyObject* owned_instance = NULL;
21729 if (tb == Py_None) {
21731 }
else if (tb && !PyTraceBack_Check(tb)) {
21732 PyErr_SetString(PyExc_TypeError,
21733 "raise: arg 3 must be a traceback or None");
21736 if (value == Py_None)
21738 if (PyExceptionInstance_Check(type)) {
21740 PyErr_SetString(PyExc_TypeError,
21741 "instance exception may not have a separate value");
21745 type = (PyObject*) Py_TYPE(value);
21746 }
else if (PyExceptionClass_Check(type)) {
21747 PyObject *instance_class = NULL;
21748 if (value && PyExceptionInstance_Check(value)) {
21749 instance_class = (PyObject*) Py_TYPE(value);
21750 if (instance_class != type) {
21751 int is_subclass = PyObject_IsSubclass(instance_class, type);
21752 if (!is_subclass) {
21753 instance_class = NULL;
21754 }
else if (unlikely(is_subclass == -1)) {
21757 type = instance_class;
21761 if (!instance_class) {
21764 args = PyTuple_New(0);
21765 else if (PyTuple_Check(value)) {
21769 args = PyTuple_Pack(1, value);
21772 owned_instance = PyObject_Call(type, args, NULL);
21774 if (!owned_instance)
21776 value = owned_instance;
21777 if (!PyExceptionInstance_Check(value)) {
21778 PyErr_Format(PyExc_TypeError,
21779 "calling %R should have returned an instance of "
21780 "BaseException, not %R",
21781 type, Py_TYPE(value));
21786 PyErr_SetString(PyExc_TypeError,
21787 "raise: exception class must be a subclass of BaseException");
21791 PyObject *fixed_cause;
21792 if (cause == Py_None) {
21793 fixed_cause = NULL;
21794 }
else if (PyExceptionClass_Check(cause)) {
21795 fixed_cause = PyObject_CallObject(cause, NULL);
21796 if (fixed_cause == NULL)
21798 }
else if (PyExceptionInstance_Check(cause)) {
21799 fixed_cause = cause;
21800 Py_INCREF(fixed_cause);
21802 PyErr_SetString(PyExc_TypeError,
21803 "exception causes must derive from "
21807 PyException_SetCause(value, fixed_cause);
21809 PyErr_SetObject(type, value);
21811#if PY_VERSION_HEX >= 0x030C00A6
21812 PyException_SetTraceback(value, tb);
21813#elif CYTHON_FAST_THREAD_STATE
21814 PyThreadState *tstate = __Pyx_PyThreadState_Current;
21815 PyObject* tmp_tb = tstate->curexc_traceback;
21816 if (tb != tmp_tb) {
21818 tstate->curexc_traceback = tb;
21819 Py_XDECREF(tmp_tb);
21822 PyObject *tmp_type, *tmp_value, *tmp_tb;
21823 PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb);
21825 PyErr_Restore(tmp_type, tmp_value, tb);
21826 Py_XDECREF(tmp_tb);
21830 Py_XDECREF(owned_instance);
21835#if CYTHON_COMPILING_IN_CPYTHON
21836static CYTHON_INLINE
void __Pyx_copy_object_array(PyObject *
const *CYTHON_RESTRICT src, PyObject** CYTHON_RESTRICT dest, Py_ssize_t length) {
21839 for (i = 0; i < length; i++) {
21840 v = dest[i] = src[i];
21847#if !(PY_VERSION_HEX >= 0x030F0000 && !CYTHON_COMPILING_IN_LIMITED_API)
21848CYTHON_UNUSED
static PyObject *
21849__Pyx_PyTuple_FromArray(PyObject *
const *src, Py_ssize_t
n) {
21851 return __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple);
21853 PyObject *res = PyTuple_New(
n);
21854 if (unlikely(res == NULL))
return NULL;
21855 #if CYTHON_COMPILING_IN_CPYTHON
21856 __Pyx_copy_object_array(src, ((PyTupleObject*)res)->ob_item,
n);
21859 for (i = 0; i <
n; i++) {
21861 if (unlikely(__Pyx_PyTuple_SET_ITEM(res, i, src[i]) < (0))) {
21872#ifndef __Pyx_DEFINED_PyObject_CompareStrStrBoolEq
21873#define __Pyx_DEFINED_PyObject_CompareStrStrBoolEq
21874static CYTHON_INLINE
int __Pyx_PyObject_CompareStrStrBoolEq(PyObject* s1, PyObject* s2) {
21875 #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
21876 int result = PyUnicode_Equal(s1, s2);
21877 #if !CYTHON_COMPILING_IN_CPYTHON
21878 if (unlikely(result == -1))
return -1;
21880 if (result == 0)
goto __pyx_return_false;
else goto __pyx_return_true;
21882 int result = PyUnicode_Compare(s1, s2);
21883 if (unlikely((result == -1) && PyErr_Occurred()))
return -1;
21884 if (result == 0)
goto __pyx_return_true;
else goto __pyx_return_false;
21892static CYTHON_INLINE
int __Pyx_PyObject_CompareBoolEq_str_str(PyObject *op1, PyObject *op2,
int pyop) {
21893 CYTHON_UNUSED_VAR(pyop);
21894 if (unlikely(op1 == Py_None)) {
21895 if (op2 == Py_None)
goto __pyx_return_true;
else goto __pyx_return_false;
21897 if (unlikely(op2 == Py_None)) {
21898 if (op1 == Py_None)
goto __pyx_return_true;
else goto __pyx_return_false;
21901 if (likely(op1 != Py_None)) {
21902 if (op1 == op2)
goto __pyx_return_true;
21903 if (likely(op2 != Py_None)) {
21904 return __Pyx_PyObject_CompareStrStrBoolEq(op1, op2);
21906 goto __pyx_richcmp;
21909 if ((0))
goto __pyx_richcmp;
21910 if ((0))
goto __pyx_return_true;
21911 if ((0))
goto __pyx_return_false;
21913 return __Pyx_PyObject_RichCompareBool(op1, op2, Py_EQ);
21921#if CYTHON_VECTORCALL
21922static CYTHON_INLINE PyObject * __Pyx_GetKwValue_FASTCALL(PyObject *kwnames, PyObject *
const *kwvalues, PyObject *
s)
21924 Py_ssize_t i,
n = __Pyx_PyTuple_GET_SIZE(kwnames);
21925 #if !CYTHON_ASSUME_SAFE_SIZE
21926 if (unlikely(
n == -1))
return NULL;
21928 for (i = 0; i <
n; i++)
21930 PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i);
21931 #if !CYTHON_ASSUME_SAFE_MACROS
21932 if (unlikely(!namei))
return NULL;
21934 if (
s == namei)
return kwvalues[i];
21936 for (i = 0; i <
n; i++)
21938 PyObject *namei = __Pyx_PyTuple_GET_ITEM(kwnames, i);
21939 #if !CYTHON_ASSUME_SAFE_MACROS
21940 if (unlikely(!namei))
return NULL;
21942 int eq = __Pyx_PyUnicode_Equals(
s, namei);
21943 if (unlikely(eq != 0)) {
21944 if (unlikely(eq < 0))
return NULL;
21945 return kwvalues[i];
21950#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030d0000 || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_GRAAL
21951CYTHON_UNUSED
static PyObject *__Pyx_KwargsAsDict_FASTCALL(PyObject *kwnames, PyObject *
const *kwvalues) {
21952 Py_ssize_t i, nkwargs;
21954#if !CYTHON_ASSUME_SAFE_SIZE
21955 nkwargs = PyTuple_Size(kwnames);
21956 if (unlikely(nkwargs < 0))
return NULL;
21958 nkwargs = PyTuple_GET_SIZE(kwnames);
21960 dict = PyDict_New();
21961 if (unlikely(!dict))
21963 for (i=0; i<nkwargs; i++) {
21964#if !CYTHON_ASSUME_SAFE_MACROS
21965 PyObject *key = PyTuple_GetItem(kwnames, i);
21966 if (!key)
goto bad;
21968 PyObject *key = PyTuple_GET_ITEM(kwnames, i);
21970 if (unlikely(PyDict_SetItem(dict, key, kwvalues[i]) < 0))
21982static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
21983 PyObject *args[2] = {NULL, arg};
21984 return __Pyx_PyObject_FastCall(func, args+1, 1 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
21988static CYTHON_INLINE
int __Pyx_IgnoreGivenException(PyObject *given_exception, PyObject *ignorable_exception) {
21989 if (PyErr_GivenExceptionMatches(given_exception ? given_exception : PyErr_Occurred(), ignorable_exception)) {
21997#if CYTHON_USE_TYPE_SLOTS
21998static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {
21999 PyTypeObject* tp = Py_TYPE(obj);
22000 if (likely(tp->tp_getattro))
22001 return tp->tp_getattro(obj, attr_name);
22002 return PyObject_GetAttr(obj, attr_name);
22007#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000
22008static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *args, PyObject *kwargs) {
22010 PyObject *selfless_args = PyTuple_GetSlice(args, 1, PyTuple_Size(args));
22011 if (unlikely(!selfless_args))
return NULL;
22012 result = PyObject_Call(method, selfless_args, kwargs);
22013 Py_DECREF(selfless_args);
22017static PyObject *__Pyx_SelflessCall(PyObject *method, PyObject *
const *args, Py_ssize_t nargs, PyObject *kwnames) {
22018 return PyObject_Vectorcall(method, args ? args+1 : NULL, nargs ? (
size_t) nargs-1 : 0, kwnames);
22021static PyMethodDef __Pyx_UnboundCMethod_Def = {
22022 "CythonUnboundCMethod",
22023 __PYX_REINTERPRET_FUNCION(PyCFunction, __Pyx_SelflessCall),
22024#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030C0000
22025 METH_VARARGS | METH_KEYWORDS,
22027 METH_FASTCALL | METH_KEYWORDS,
22031static int __Pyx_TryUnpackUnboundCMethod(__Pyx_CachedCFunction* target) {
22032 PyObject *method, *result=NULL;
22033 method = __Pyx_PyObject_GetAttrStr(target->type, *target->method_name);
22034 if (unlikely(!method))
22037#if CYTHON_COMPILING_IN_CPYTHON
22038 if (likely(__Pyx_TypeCheck(method, &PyMethodDescr_Type)))
22040 PyMethodDescrObject *descr = (PyMethodDescrObject*) method;
22041 target->func = descr->d_method->ml_meth;
22042 target->flag = descr->d_method->ml_flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST);
22045#if CYTHON_COMPILING_IN_PYPY
22047 if (PyCFunction_Check(method))
22052#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY
22053 self = PyObject_GetAttrString(method,
"__self__");
22054 if (!self && !__Pyx_IgnoreException(PyExc_AttributeError)) {
22058 self = PyCFunction_GET_SELF(method);
22060 self_found = (self && self != Py_None);
22061#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY
22065 PyObject *unbound_method = PyCFunction_New(&__Pyx_UnboundCMethod_Def, method);
22066 if (unlikely(!unbound_method))
return -1;
22068 result = unbound_method;
22071#if !CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
22072 if (unlikely(target->method)) {
22076 target->method = result;
22081#if CYTHON_COMPILING_IN_CPYTHON
22082static CYTHON_INLINE PyObject* __Pyx_CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObject* self) {
22083 int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc);
22084 if (likely(was_initialized == 2 && cfunc->func)) {
22085 if (likely(cfunc->flag == METH_NOARGS))
22086 return __Pyx_CallCFunction(cfunc, self, NULL);
22087 if (likely(cfunc->flag == METH_FASTCALL))
22088 return __Pyx_CallCFunctionFast(cfunc, self, NULL, 0);
22089 if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS))
22090 return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, NULL, 0, NULL);
22091 if (likely(cfunc->flag == (METH_VARARGS | METH_KEYWORDS)))
22092 return __Pyx_CallCFunctionWithKeywords(cfunc, self, __pyx_mstate_global->__pyx_empty_tuple, NULL);
22093 if (cfunc->flag == METH_VARARGS)
22094 return __Pyx_CallCFunction(cfunc, self, __pyx_mstate_global->__pyx_empty_tuple);
22095 return __Pyx__CallUnboundCMethod0(cfunc, self);
22097#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
22098 else if (unlikely(was_initialized == 1)) {
22099 __Pyx_CachedCFunction tmp_cfunc = {
22104 tmp_cfunc.type = cfunc->type;
22105 tmp_cfunc.method_name = cfunc->method_name;
22106 return __Pyx__CallUnboundCMethod0(&tmp_cfunc, self);
22109 PyObject *result = __Pyx__CallUnboundCMethod0(cfunc, self);
22110 __Pyx_CachedCFunction_SetFinishedInitializing(cfunc);
22114static PyObject* __Pyx__CallUnboundCMethod0(__Pyx_CachedCFunction* cfunc, PyObject* self) {
22116 if (unlikely(!cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0))
return NULL;
22117 result = __Pyx_PyObject_CallOneArg(cfunc->method, self);
22122static CYTHON_INLINE PyObject* __Pyx_PyDict_Items(PyObject* d) {
22123 return __Pyx_CallUnboundCMethod0(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_items, d);
22127static CYTHON_INLINE PyObject* __Pyx_PyDict_Values(PyObject* d) {
22128 return __Pyx_CallUnboundCMethod0(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_values, d);
22132#if CYTHON_AVOID_BORROWED_REFS
22133static int __Pyx_PyDict_NextRef(PyObject *p, PyObject **ppos, PyObject **pkey, PyObject **pvalue) {
22134 PyObject *next = NULL;
22137 PyObject *dictview = pkey ? __Pyx_PyDict_Items(p) : __Pyx_PyDict_Values(p);
22138 if (unlikely(!dictview))
goto bad;
22139 *ppos = PyObject_GetIter(dictview);
22140 Py_DECREF(dictview);
22142 *ppos = PyObject_GetIter(p);
22144 if (unlikely(!*ppos))
goto bad;
22146 next = PyIter_Next(*ppos);
22148 if (PyErr_Occurred())
goto bad;
22151 if (pkey && pvalue) {
22152 *pkey = __Pyx_PySequence_ITEM(next, 0);
22153 if (unlikely(*pkey))
goto bad;
22154 *pvalue = __Pyx_PySequence_ITEM(next, 1);
22155 if (unlikely(*pvalue))
goto bad;
22166#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d0000
22167 PyErr_FormatUnraisable(
"Exception ignored in __Pyx_PyDict_NextRef");
22169 PyErr_WriteUnraisable(__pyx_mstate_global->__pyx_n_u_Pyx_PyDict_NextRef);
22171 if (pkey) *pkey = NULL;
22172 if (pvalue) *pvalue = NULL;
22176static int __Pyx_PyDict_NextRef(PyObject *p, Py_ssize_t *ppos, PyObject **pkey, PyObject **pvalue) {
22177 int result = PyDict_Next(p, ppos, pkey, pvalue);
22178 if (likely(result == 1)) {
22179 if (pkey) Py_INCREF(*pkey);
22180 if (pvalue) Py_INCREF(*pvalue);
22187static void __Pyx_RaiseDoubleKeywordsError(
22188 const char* func_name,
22191 PyErr_Format(PyExc_TypeError,
22192 "%s() got multiple values for keyword argument '%U'", func_name, kw_name);
22196#if CYTHON_COMPILING_IN_CPYTHON
22197static CYTHON_INLINE PyObject *__Pyx_CallUnboundCMethod2(__Pyx_CachedCFunction *cfunc, PyObject *self, PyObject *arg1, PyObject *arg2) {
22198 int was_initialized = __Pyx_CachedCFunction_GetAndSetInitializing(cfunc);
22199 if (likely(was_initialized == 2 && cfunc->func)) {
22200 PyObject *args[2] = {arg1, arg2};
22201 if (cfunc->flag == METH_FASTCALL) {
22202 return __Pyx_CallCFunctionFast(cfunc, self, args, 2);
22204 if (cfunc->flag == (METH_FASTCALL | METH_KEYWORDS))
22205 return __Pyx_CallCFunctionFastWithKeywords(cfunc, self, args, 2, NULL);
22207#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
22208 else if (unlikely(was_initialized == 1)) {
22209 __Pyx_CachedCFunction tmp_cfunc = {
22214 tmp_cfunc.type = cfunc->type;
22215 tmp_cfunc.method_name = cfunc->method_name;
22216 return __Pyx__CallUnboundCMethod2(&tmp_cfunc, self, arg1, arg2);
22219 PyObject *result = __Pyx__CallUnboundCMethod2(cfunc, self, arg1, arg2);
22220 __Pyx_CachedCFunction_SetFinishedInitializing(cfunc);
22224static PyObject* __Pyx__CallUnboundCMethod2(__Pyx_CachedCFunction* cfunc, PyObject* self, PyObject* arg1, PyObject* arg2){
22225 if (unlikely(!cfunc->func && !cfunc->method) && unlikely(__Pyx_TryUnpackUnboundCMethod(cfunc) < 0))
return NULL;
22226#if CYTHON_COMPILING_IN_CPYTHON
22227 if (cfunc->func && (cfunc->flag & METH_VARARGS)) {
22228 PyObject *result = NULL;
22229 PyObject *args = PyTuple_New(2);
22230 if (unlikely(!args))
return NULL;
22232 PyTuple_SET_ITEM(args, 0, arg1);
22234 PyTuple_SET_ITEM(args, 1, arg2);
22235 if (cfunc->flag & METH_KEYWORDS)
22236 result = __Pyx_CallCFunctionWithKeywords(cfunc, self, args, NULL);
22238 result = __Pyx_CallCFunction(cfunc, self, args);
22244 PyObject *args[4] = {NULL, self, arg1, arg2};
22245 return __Pyx_PyObject_FastCall(cfunc->method, args+1, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
22250static int __Pyx_ValidateDuplicatePosArgs(
22252 PyObject **
const argnames[],
22253 PyObject **
const *first_kw_arg,
22254 const char* function_name)
22256 PyObject **
const *name = argnames;
22257 while (name != first_kw_arg) {
22258 PyObject *key = **name;
22259 int found = PyDict_Contains(kwds, key);
22260 if (unlikely(found)) {
22261 if (found == 1) __Pyx_RaiseDoubleKeywordsError(function_name, key);
22270#if CYTHON_USE_UNICODE_INTERNALS
22271static CYTHON_INLINE
int __Pyx_UnicodeKeywordsEqual(PyObject *s1, PyObject *s2) {
22273 Py_ssize_t len = PyUnicode_GET_LENGTH(s1);
22274 if (len != PyUnicode_GET_LENGTH(s2))
return 0;
22275 kind = PyUnicode_KIND(s1);
22276 if (kind != PyUnicode_KIND(s2))
return 0;
22277 const void *data1 = PyUnicode_DATA(s1);
22278 const void *data2 = PyUnicode_DATA(s2);
22279 return (memcmp(data1, data2, (
size_t) len * (
size_t) kind) == 0);
22282static int __Pyx_MatchKeywordArg_str(
22284 PyObject **
const argnames[],
22285 PyObject **
const *first_kw_arg,
22286 size_t *index_found,
22287 const char *function_name)
22289 PyObject **
const *name;
22290 #if CYTHON_USE_UNICODE_INTERNALS
22291 Py_hash_t key_hash = ((PyASCIIObject*)key)->hash;
22292 if (unlikely(key_hash == -1)) {
22293 key_hash = PyObject_Hash(key);
22294 if (unlikely(key_hash == -1))
22298 name = first_kw_arg;
22300 PyObject *name_str = **name;
22301 #if CYTHON_USE_UNICODE_INTERNALS
22302 if (key_hash == ((PyASCIIObject*)name_str)->hash && __Pyx_UnicodeKeywordsEqual(name_str, key)) {
22303 *index_found = (size_t) (name - argnames);
22307 #if CYTHON_ASSUME_SAFE_SIZE
22308 if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key))
22311 int cmp = PyUnicode_Compare(name_str, key);
22312 if (cmp < 0 && unlikely(PyErr_Occurred()))
goto bad;
22314 *index_found = (size_t) (name - argnames);
22322 while (name != first_kw_arg) {
22323 PyObject *name_str = **name;
22324 #if CYTHON_USE_UNICODE_INTERNALS
22325 if (unlikely(key_hash == ((PyASCIIObject*)name_str)->hash)) {
22326 if (__Pyx_UnicodeKeywordsEqual(name_str, key))
22327 goto arg_passed_twice;
22330 #if CYTHON_ASSUME_SAFE_SIZE
22331 if (PyUnicode_GET_LENGTH(name_str) == PyUnicode_GET_LENGTH(key))
22334 if (unlikely(name_str == key))
goto arg_passed_twice;
22335 int cmp = PyUnicode_Compare(name_str, key);
22336 if (cmp < 0 && unlikely(PyErr_Occurred()))
goto bad;
22337 if (cmp == 0)
goto arg_passed_twice;
22344 __Pyx_RaiseDoubleKeywordsError(function_name, key);
22349static int __Pyx_MatchKeywordArg_nostr(
22351 PyObject **
const argnames[],
22352 PyObject **
const *first_kw_arg,
22353 size_t *index_found,
22354 const char *function_name)
22356 PyObject **
const *name;
22357 if (unlikely(!PyUnicode_Check(key)))
goto invalid_keyword_type;
22358 name = first_kw_arg;
22360 int cmp = PyObject_RichCompareBool(**name, key, Py_EQ);
22362 *index_found = (size_t) (name - argnames);
22365 if (unlikely(cmp == -1))
goto bad;
22369 while (name != first_kw_arg) {
22370 int cmp = PyObject_RichCompareBool(**name, key, Py_EQ);
22371 if (unlikely(cmp != 0)) {
22372 if (cmp == 1)
goto arg_passed_twice;
22379 __Pyx_RaiseDoubleKeywordsError(function_name, key);
22381invalid_keyword_type:
22382 PyErr_Format(PyExc_TypeError,
22383 "%.200s() keywords must be strings", function_name);
22388static CYTHON_INLINE
int __Pyx_MatchKeywordArg(
22390 PyObject **
const argnames[],
22391 PyObject **
const *first_kw_arg,
22392 size_t *index_found,
22393 const char *function_name)
22395 return likely(PyUnicode_CheckExact(key)) ?
22396 __Pyx_MatchKeywordArg_str(key, argnames, first_kw_arg, index_found, function_name) :
22397 __Pyx_MatchKeywordArg_nostr(key, argnames, first_kw_arg, index_found, function_name);
22399static void __Pyx_RejectUnknownKeyword(
22401 PyObject **
const argnames[],
22402 PyObject **
const *first_kw_arg,
22403 const char *function_name)
22405 #if CYTHON_AVOID_BORROWED_REFS
22406 PyObject *pos = NULL;
22408 Py_ssize_t pos = 0;
22410 PyObject *key = NULL;
22411 __Pyx_BEGIN_CRITICAL_SECTION(kwds);
22412 #if CYTHON_AVOID_BORROWED_REFS
22413 while (__Pyx_PyDict_NextRef(kwds, &pos, &key, NULL))
22415 (void) __Pyx_PyDict_NextRef;
22416 while (PyDict_Next(kwds, &pos, &key, NULL))
22419 PyObject**
const *name = first_kw_arg;
22420 while (*name && (**name != key)) name++;
22422 size_t index_found = 0;
22423 int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name);
22426 PyErr_Format(PyExc_TypeError,
22427 "%s() got an unexpected keyword argument '%U'",
22428 function_name, key);
22430 #if CYTHON_AVOID_BORROWED_REFS
22436 #if CYTHON_AVOID_BORROWED_REFS
22440 __Pyx_END_CRITICAL_SECTION();
22441 #if CYTHON_AVOID_BORROWED_REFS
22444 assert(PyErr_Occurred());
22446static int __Pyx_ParseKeywordDict(
22448 PyObject **
const argnames[],
22449 PyObject *values[],
22450 Py_ssize_t num_pos_args,
22451 Py_ssize_t num_kwargs,
22452 const char* function_name,
22453 int ignore_unknown_kwargs)
22455 PyObject**
const *name;
22456 PyObject**
const *first_kw_arg = argnames + num_pos_args;
22457 Py_ssize_t extracted = 0;
22458#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments)
22459 if (unlikely(!PyArg_ValidateKeywordArguments(kwds)))
return -1;
22461 name = first_kw_arg;
22462 while (*name && num_kwargs > extracted) {
22463 PyObject * key = **name;
22466 #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
22467 found = PyDict_GetItemRef(kwds, key, &value);
22469 value = PyDict_GetItemWithError(kwds, key);
22474 if (unlikely(PyErr_Occurred()))
goto bad;
22478 if (unlikely(found < 0))
goto bad;
22479 values[name-argnames] = value;
22484 if (num_kwargs > extracted) {
22485 if (ignore_unknown_kwargs) {
22486 if (unlikely(__Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name) == -1))
22489 __Pyx_RejectUnknownKeyword(kwds, argnames, first_kw_arg, function_name);
22497static int __Pyx_ParseKeywordDictToDict(
22499 PyObject **
const argnames[],
22501 PyObject *values[],
22502 Py_ssize_t num_pos_args,
22503 const char* function_name)
22505 PyObject**
const *name;
22506 PyObject**
const *first_kw_arg = argnames + num_pos_args;
22508#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments)
22509 if (unlikely(!PyArg_ValidateKeywordArguments(kwds)))
return -1;
22511 if (PyDict_Update(kwds2, kwds) < 0)
goto bad;
22512 name = first_kw_arg;
22514 PyObject *key = **name;
22516#if !CYTHON_COMPILING_IN_LIMITED_API && (PY_VERSION_HEX >= 0x030d00A2 || defined(PyDict_Pop))
22517 int found = PyDict_Pop(kwds2, key, &value);
22519 if (unlikely(found < 0))
goto bad;
22520 values[name-argnames] = value;
22522#elif __PYX_LIMITED_VERSION_HEX >= 0x030d0000
22523 int found = PyDict_GetItemRef(kwds2, key, &value);
22525 if (unlikely(found < 0))
goto bad;
22526 values[name-argnames] = value;
22527 if (unlikely(PyDict_DelItem(kwds2, key) < 0))
goto bad;
22530 #if CYTHON_COMPILING_IN_CPYTHON
22531 value = _PyDict_Pop(kwds2, key, kwds2);
22533 value = __Pyx_CallUnboundCMethod2(&__pyx_mstate_global->__pyx_umethod_PyDict_Type_pop, kwds2, key, kwds2);
22535 if (value == kwds2) {
22538 if (unlikely(!value))
goto bad;
22539 values[name-argnames] = value;
22544 len = PyDict_Size(kwds2);
22546 return __Pyx_ValidateDuplicatePosArgs(kwds, argnames, first_kw_arg, function_name);
22547 }
else if (unlikely(len == -1)) {
22554static int __Pyx_ParseKeywordsTuple(
22556 PyObject *
const *kwvalues,
22557 PyObject **
const argnames[],
22559 PyObject *values[],
22560 Py_ssize_t num_pos_args,
22561 Py_ssize_t num_kwargs,
22562 const char* function_name,
22563 int ignore_unknown_kwargs)
22565 PyObject *key = NULL;
22566 PyObject**
const * name;
22567 PyObject**
const *first_kw_arg = argnames + num_pos_args;
22568 for (Py_ssize_t pos = 0; pos < num_kwargs; pos++) {
22569#if CYTHON_AVOID_BORROWED_REFS
22570 key = __Pyx_PySequence_ITEM(kwds, pos);
22572 key = __Pyx_PyTuple_GET_ITEM(kwds, pos);
22574#if !CYTHON_ASSUME_SAFE_MACROS
22575 if (unlikely(!key))
goto bad;
22577 name = first_kw_arg;
22578 while (*name && (**name != key)) name++;
22580 PyObject *value = kwvalues[pos];
22581 values[name-argnames] = __Pyx_NewRef(value);
22583 size_t index_found = 0;
22584 int cmp = __Pyx_MatchKeywordArg(key, argnames, first_kw_arg, &index_found, function_name);
22586 PyObject *value = kwvalues[pos];
22587 values[index_found] = __Pyx_NewRef(value);
22589 if (unlikely(cmp == -1))
goto bad;
22591 PyObject *value = kwvalues[pos];
22592 if (unlikely(PyDict_SetItem(kwds2, key, value)))
goto bad;
22593 }
else if (!ignore_unknown_kwargs) {
22594 goto invalid_keyword;
22598 #if CYTHON_AVOID_BORROWED_REFS
22605 PyErr_Format(PyExc_TypeError,
22606 "%s() got an unexpected keyword argument '%U'",
22607 function_name, key);
22610 #if CYTHON_AVOID_BORROWED_REFS
22617static int __Pyx_ParseKeywords(
22619 PyObject *
const *kwvalues,
22620 PyObject **
const argnames[],
22622 PyObject *values[],
22623 Py_ssize_t num_pos_args,
22624 Py_ssize_t num_kwargs,
22625 const char* function_name,
22626 int ignore_unknown_kwargs)
22628 if (CYTHON_VECTORCALL && likely(PyTuple_Check(kwds)))
22629 return __Pyx_ParseKeywordsTuple(kwds, kwvalues, argnames, kwds2, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs);
22631 return __Pyx_ParseKeywordDictToDict(kwds, argnames, kwds2, values, num_pos_args, function_name);
22633 return __Pyx_ParseKeywordDict(kwds, argnames, values, num_pos_args, num_kwargs, function_name, ignore_unknown_kwargs);
22637static void __Pyx_RaiseArgtupleInvalid(
22638 const char* func_name,
22640 Py_ssize_t num_min,
22641 Py_ssize_t num_max,
22642 Py_ssize_t num_found)
22644 Py_ssize_t num_expected;
22645 const char *more_or_less;
22646 if (num_found < num_min) {
22647 num_expected = num_min;
22648 more_or_less =
"at least";
22650 num_expected = num_max;
22651 more_or_less =
"at most";
22654 more_or_less =
"exactly";
22656 PyErr_Format(PyExc_TypeError,
22657 "%.200s() takes %.8s %" CYTHON_FORMAT_SSIZE_T
"d positional argument%.1s (%" CYTHON_FORMAT_SSIZE_T
"d given)",
22658 func_name, more_or_less, num_expected,
22659 (num_expected == 1) ?
"" :
"s", num_found);
22663static void __Pyx_ArgTypeError(PyObject *obj, PyTypeObject *type,
const char *name,
int exact)
22665 __Pyx_TypeName type_name;
22666 __Pyx_TypeName obj_type_name;
22667 PyObject *extra_info = __pyx_mstate_global->__pyx_empty_unicode;
22668 int from_annotation_subclass = 0;
22669 if (unlikely(!type)) {
22670 PyErr_SetString(PyExc_SystemError,
"Missing type object");
22672 }
else if (exact == 2) {
22673 if (__Pyx_TypeCheck(obj, type)) {
22674 from_annotation_subclass = 1;
22675 extra_info = __pyx_mstate_global->__pyx_kp_u_Note_that_Cython_is_deliberately;
22678 type_name = __Pyx_PyType_GetFullyQualifiedName(type);
22679 #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
22680 if (unlikely(!type_name))
return;
22682 obj_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(obj));
22683 #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
22684 if (unlikely(!obj_type_name))
goto obj_type_name_failed;
22686 PyErr_Format(PyExc_TypeError,
22687 "Argument '%.200s' has incorrect type (expected " __Pyx_FMT_TYPENAME
", got " __Pyx_FMT_TYPENAME
")"
22688#
if __PYX_LIMITED_VERSION_HEX < 0x030C0000
22691 , name, type_name, obj_type_name
22692#
if __PYX_LIMITED_VERSION_HEX < 0x030C0000
22693 , (from_annotation_subclass ?
". " :
""), extra_info
22696#if __PYX_LIMITED_VERSION_HEX >= 0x030C0000
22697 if (exact == 2 && from_annotation_subclass) {
22699 PyObject *vargs[2];
22700 vargs[0] = PyErr_GetRaisedException();
22701 vargs[1] = extra_info;
22702 res = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_kp_u_add_note, vargs, 2, NULL);
22704 PyErr_SetRaisedException(vargs[0]);
22707 __Pyx_DECREF_TypeName(obj_type_name);
22708#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
22709obj_type_name_failed:
22711 __Pyx_DECREF_TypeName(type_name);
22716static CYTHON_INLINE
int __Pyx_ArgTypeTest(PyObject *obj, PyTypeObject *type,
int none_allowed,
const char *name,
int exact) {
22717 if (likely(Py_IS_TYPE(obj, type) | (none_allowed && (obj == Py_None))))
22719 if (!exact && likely(type) && likely(__Pyx_TypeCheck(obj, type)))
22721 __Pyx_ArgTypeError(obj, type, name, exact);
22726static CYTHON_INLINE npy_intp __Pyx_div_npy_intp(npy_intp a, npy_intp b,
int b_is_constant) {
22727 npy_intp
q = a / b;
22728 npy_intp
r = a -
q*b;
22729 npy_intp adapt_python = (b_is_constant ?
22730 ((
r != 0) & ((
r < 0) ^ (b < 0))) :
22731 ((
r != 0) & ((
r ^ b) < 0))
22733 return q - adapt_python;
22737static void __Pyx_RejectKeywords(
const char* function_name, PyObject *kwds) {
22738 PyObject *key = NULL;
22739 if (CYTHON_VECTORCALL && likely(PyTuple_Check(kwds))) {
22740 key = __Pyx_PySequence_ITEM(kwds, 0);
22742#if CYTHON_AVOID_BORROWED_REFS
22743 PyObject *pos = NULL;
22745 Py_ssize_t pos = 0;
22747#if !CYTHON_COMPILING_IN_PYPY || defined(PyArg_ValidateKeywordArguments)
22748 if (unlikely(!PyArg_ValidateKeywordArguments(kwds)))
return;
22750 __Pyx_PyDict_NextRef(kwds, &pos, &key, NULL);
22751#if CYTHON_AVOID_BORROWED_REFS
22756 PyErr_Format(PyExc_TypeError,
22757 "%s() got an unexpected keyword argument '%U'",
22758 function_name, key);
22764static CYTHON_INLINE
int __Pyx_Is_Little_Endian(
void)
22770 S.u32 = 0x01020304;
22771 return S.u8[0] == 4;
22775static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx,
22776 __Pyx_BufFmt_StackElem* stack,
22777 const __Pyx_TypeInfo* type) {
22778 stack[0].field = &ctx->root;
22779 stack[0].parent_offset = 0;
22780 ctx->root.type = type;
22781 ctx->root.name =
"buffer dtype";
22782 ctx->root.offset = 0;
22784 ctx->head->field = &ctx->root;
22785 ctx->fmt_offset = 0;
22786 ctx->head->parent_offset = 0;
22787 ctx->new_packmode =
'@';
22788 ctx->enc_packmode =
'@';
22789 ctx->new_count = 1;
22790 ctx->enc_count = 0;
22792 ctx->is_complex = 0;
22793 ctx->is_valid_array = 0;
22794 ctx->struct_alignment = 0;
22795 while (type->typegroup ==
'S') {
22797 ctx->head->field = type->fields;
22798 ctx->head->parent_offset = 0;
22799 type = type->fields->type;
22802static int __Pyx_BufFmt_ParseNumber(
const char** ts) {
22804 const char* t = *ts;
22805 if (*t <
'0' || *t >
'9') {
22808 count = *t++ -
'0';
22809 while (*t >=
'0' && *t <=
'9') {
22811 count += *t++ -
'0';
22817static int __Pyx_BufFmt_ExpectNumber(
const char **ts) {
22818 int number = __Pyx_BufFmt_ParseNumber(ts);
22820 PyErr_Format(PyExc_ValueError,\
22821 "Does not understand character buffer dtype format string ('%c')", **ts);
22824static void __Pyx_BufFmt_RaiseUnexpectedChar(
char ch) {
22825 PyErr_Format(PyExc_ValueError,
22826 "Unexpected format string character: '%c'", ch);
22828static const char* __Pyx_BufFmt_DescribeTypeChar(
char ch,
int is_complex) {
22830 case '?':
return "'bool'";
22831 case 'c':
return "'char'";
22832 case 'b':
return "'signed char'";
22833 case 'B':
return "'unsigned char'";
22834 case 'h':
return "'short'";
22835 case 'H':
return "'unsigned short'";
22836 case 'i':
return "'int'";
22837 case 'I':
return "'unsigned int'";
22838 case 'l':
return "'long'";
22839 case 'L':
return "'unsigned long'";
22840 case 'q':
return "'long long'";
22841 case 'Q':
return "'unsigned long long'";
22842 case 'f':
return (is_complex ?
"'complex float'" :
"'float'");
22843 case 'd':
return (is_complex ?
"'complex double'" :
"'double'");
22844 case 'g':
return (is_complex ?
"'complex long double'" :
"'long double'");
22845 case 'T':
return "a struct";
22846 case 'O':
return "Python object";
22847 case 'P':
return "a pointer";
22848 case 's':
case 'p':
return "a string";
22849 case 0:
return "end";
22850 default:
return "unparsable format string";
22853static size_t __Pyx_BufFmt_TypeCharToStandardSize(
char ch,
int is_complex) {
22855 case '?':
case 'c':
case 'b':
case 'B':
case 's':
case 'p':
return 1;
22856 case 'h':
case 'H':
return 2;
22857 case 'i':
case 'I':
case 'l':
case 'L':
return 4;
22858 case 'q':
case 'Q':
return 8;
22859 case 'f':
return (is_complex ? 8 : 4);
22860 case 'd':
return (is_complex ? 16 : 8);
22862 PyErr_SetString(PyExc_ValueError,
"Python does not define a standard format string size for long double ('g')..");
22865 case 'O':
case 'P':
return sizeof(
void*);
22867 __Pyx_BufFmt_RaiseUnexpectedChar(ch);
22871static size_t __Pyx_BufFmt_TypeCharToNativeSize(
char ch,
int is_complex) {
22873 case '?':
case 'c':
case 'b':
case 'B':
case 's':
case 'p':
return 1;
22874 case 'h':
case 'H':
return sizeof(short);
22875 case 'i':
case 'I':
return sizeof(int);
22876 case 'l':
case 'L':
return sizeof(long);
22877 case 'q':
case 'Q':
return sizeof(PY_LONG_LONG);
22878 case 'f':
return sizeof(float) * (is_complex ? 2 : 1);
22879 case 'd':
return sizeof(double) * (is_complex ? 2 : 1);
22880 case 'g':
return sizeof(
long double) * (is_complex ? 2 : 1);
22881 case 'O':
case 'P':
return sizeof(
void*);
22883 __Pyx_BufFmt_RaiseUnexpectedChar(ch);
22888typedef struct {
char c;
short x; } __Pyx_st_short;
22889typedef struct {
char c;
int x; } __Pyx_st_int;
22890typedef struct {
char c;
long x; } __Pyx_st_long;
22891typedef struct {
char c;
float x; } __Pyx_st_float;
22892typedef struct {
char c;
double x; } __Pyx_st_double;
22893typedef struct {
char c;
long double x; } __Pyx_st_longdouble;
22894typedef struct {
char c;
void *x; } __Pyx_st_void_p;
22895typedef struct {
char c; PY_LONG_LONG x; } __Pyx_st_longlong;
22896static size_t __Pyx_BufFmt_TypeCharToAlignment(
char ch,
int is_complex) {
22897 CYTHON_UNUSED_VAR(is_complex);
22899 case '?':
case 'c':
case 'b':
case 'B':
case 's':
case 'p':
return 1;
22900 case 'h':
case 'H':
return sizeof(__Pyx_st_short) -
sizeof(
short);
22901 case 'i':
case 'I':
return sizeof(__Pyx_st_int) -
sizeof(
int);
22902 case 'l':
case 'L':
return sizeof(__Pyx_st_long) -
sizeof(
long);
22903 case 'q':
case 'Q':
return sizeof(__Pyx_st_longlong) -
sizeof(PY_LONG_LONG);
22904 case 'f':
return sizeof(__Pyx_st_float) -
sizeof(
float);
22905 case 'd':
return sizeof(__Pyx_st_double) -
sizeof(
double);
22906 case 'g':
return sizeof(__Pyx_st_longdouble) -
sizeof(
long double);
22907 case 'P':
case 'O':
return sizeof(__Pyx_st_void_p) -
sizeof(
void*);
22909 __Pyx_BufFmt_RaiseUnexpectedChar(ch);
22917typedef struct {
short x;
char c; } __Pyx_pad_short;
22918typedef struct {
int x;
char c; } __Pyx_pad_int;
22919typedef struct {
long x;
char c; } __Pyx_pad_long;
22920typedef struct {
float x;
char c; } __Pyx_pad_float;
22921typedef struct {
double x;
char c; } __Pyx_pad_double;
22922typedef struct {
long double x;
char c; } __Pyx_pad_longdouble;
22923typedef struct {
void *x;
char c; } __Pyx_pad_void_p;
22924typedef struct { PY_LONG_LONG x;
char c; } __Pyx_pad_longlong;
22925static size_t __Pyx_BufFmt_TypeCharToPadding(
char ch,
int is_complex) {
22926 CYTHON_UNUSED_VAR(is_complex);
22928 case '?':
case 'c':
case 'b':
case 'B':
case 's':
case 'p':
return 1;
22929 case 'h':
case 'H':
return sizeof(__Pyx_pad_short) -
sizeof(
short);
22930 case 'i':
case 'I':
return sizeof(__Pyx_pad_int) -
sizeof(
int);
22931 case 'l':
case 'L':
return sizeof(__Pyx_pad_long) -
sizeof(
long);
22932 case 'q':
case 'Q':
return sizeof(__Pyx_pad_longlong) -
sizeof(PY_LONG_LONG);
22933 case 'f':
return sizeof(__Pyx_pad_float) -
sizeof(
float);
22934 case 'd':
return sizeof(__Pyx_pad_double) -
sizeof(
double);
22935 case 'g':
return sizeof(__Pyx_pad_longdouble) -
sizeof(
long double);
22936 case 'P':
case 'O':
return sizeof(__Pyx_pad_void_p) -
sizeof(
void*);
22938 __Pyx_BufFmt_RaiseUnexpectedChar(ch);
22942static char __Pyx_BufFmt_TypeCharToGroup(
char ch,
int is_complex) {
22946 case 'b':
case 'h':
case 'i':
22947 case 'l':
case 'q':
case 's':
case 'p':
22949 case '?':
case 'B':
case 'H':
case 'I':
case 'L':
case 'Q':
22951 case 'f':
case 'd':
case 'g':
22952 return (is_complex ?
'C' :
'R');
22958 __Pyx_BufFmt_RaiseUnexpectedChar(ch);
22963static void __Pyx_BufFmt_RaiseExpected(__Pyx_BufFmt_Context* ctx) {
22964 if (ctx->head == NULL || ctx->head->field == &ctx->root) {
22965 const char* expected;
22967 if (ctx->head == NULL) {
22971 expected = ctx->head->field->type->name;
22974 PyErr_Format(PyExc_ValueError,
22975 "Buffer dtype mismatch, expected %s%s%s but got %s",
22976 quote, expected, quote,
22977 __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex));
22979 const __Pyx_StructField* field = ctx->head->field;
22980 const __Pyx_StructField* parent = (ctx->head - 1)->field;
22981 PyErr_Format(PyExc_ValueError,
22982 "Buffer dtype mismatch, expected '%s' but got %s in '%s.%s'",
22983 field->type->name, __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex),
22984 parent->type->name, field->name);
22987static int __Pyx_BufFmt_ProcessTypeChunk(__Pyx_BufFmt_Context* ctx) {
22989 size_t size, offset, arraysize = 1;
22990 if (ctx->enc_type == 0)
return 0;
22991 if (ctx->head->field->type->arraysize[0]) {
22993 if (ctx->enc_type ==
's' || ctx->enc_type ==
'p') {
22994 ctx->is_valid_array = ctx->head->field->type->ndim == 1;
22996 if (ctx->enc_count != ctx->head->field->type->arraysize[0]) {
22997 PyErr_Format(PyExc_ValueError,
22998 "Expected a dimension of size %zu, got %zu",
22999 ctx->head->field->type->arraysize[0], ctx->enc_count);
23003 if (!ctx->is_valid_array) {
23004 PyErr_Format(PyExc_ValueError,
"Expected %d dimensions, got %d",
23005 ctx->head->field->type->ndim, ndim);
23008 for (i = 0; i < ctx->head->field->type->ndim; i++) {
23009 arraysize *= ctx->head->field->type->arraysize[i];
23011 ctx->is_valid_array = 0;
23012 ctx->enc_count = 1;
23014 group = __Pyx_BufFmt_TypeCharToGroup(ctx->enc_type, ctx->is_complex);
23016 const __Pyx_StructField* field = ctx->head->field;
23017 const __Pyx_TypeInfo* type = field->type;
23018 if (ctx->enc_packmode ==
'@' || ctx->enc_packmode ==
'^') {
23019 size = __Pyx_BufFmt_TypeCharToNativeSize(ctx->enc_type, ctx->is_complex);
23021 size = __Pyx_BufFmt_TypeCharToStandardSize(ctx->enc_type, ctx->is_complex);
23023 if (ctx->enc_packmode ==
'@') {
23024 size_t align_at = __Pyx_BufFmt_TypeCharToAlignment(ctx->enc_type, ctx->is_complex);
23025 size_t align_mod_offset;
23026 if (align_at == 0)
return -1;
23027 align_mod_offset = ctx->fmt_offset % align_at;
23028 if (align_mod_offset > 0) ctx->fmt_offset += align_at - align_mod_offset;
23029 if (ctx->struct_alignment == 0)
23030 ctx->struct_alignment = __Pyx_BufFmt_TypeCharToPadding(ctx->enc_type,
23033 if (type->size != size || type->typegroup != group) {
23034 if (type->typegroup ==
'C' && type->fields != NULL) {
23035 size_t parent_offset = ctx->head->parent_offset + field->offset;
23037 ctx->head->field = type->fields;
23038 ctx->head->parent_offset = parent_offset;
23041 if ((type->typegroup ==
'H' || group ==
'H') && type->size == size) {
23043 __Pyx_BufFmt_RaiseExpected(ctx);
23047 offset = ctx->head->parent_offset + field->offset;
23048 if (ctx->fmt_offset != offset) {
23049 PyErr_Format(PyExc_ValueError,
23050 "Buffer dtype mismatch; next field is at offset %" CYTHON_FORMAT_SSIZE_T
"d but %" CYTHON_FORMAT_SSIZE_T
"d expected",
23051 (Py_ssize_t)ctx->fmt_offset, (Py_ssize_t)offset);
23054 ctx->fmt_offset += size;
23056 ctx->fmt_offset += (arraysize - 1) * size;
23059 if (field == &ctx->root) {
23061 if (ctx->enc_count != 0) {
23062 __Pyx_BufFmt_RaiseExpected(ctx);
23067 ctx->head->field = ++field;
23068 if (field->type == NULL) {
23070 field = ctx->head->field;
23072 }
else if (field->type->typegroup ==
'S') {
23073 size_t parent_offset = ctx->head->parent_offset + field->offset;
23074 if (field->type->fields->type == NULL)
continue;
23075 field = field->type->fields;
23077 ctx->head->field = field;
23078 ctx->head->parent_offset = parent_offset;
23084 }
while (ctx->enc_count);
23086 ctx->is_complex = 0;
23090__pyx_buffmt_parse_array(__Pyx_BufFmt_Context* ctx,
const char** tsp)
23092 const char *ts = *tsp;
23093 int i = 0,
number, ndim;
23095 if (ctx->new_count != 1) {
23096 PyErr_SetString(PyExc_ValueError,
23097 "Cannot handle repeated arrays in format string");
23100 if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1)
return -1;
23101 ndim = ctx->head->field->type->ndim;
23102 while (*ts && *ts !=
')') {
23104 case ' ':
case '\f':
case '\r':
case '\n':
case '\t':
case '\v':
continue;
23107 number = __Pyx_BufFmt_ExpectNumber(&ts);
23108 if (
number == -1)
return -1;
23109 if (i < ndim && (
size_t)
number != ctx->head->field->type->arraysize[i]) {
23110 PyErr_Format(PyExc_ValueError,
23111 "Expected a dimension of size %zu, got %d",
23112 ctx->head->field->type->arraysize[i],
number);
23115 if (*ts !=
',' && *ts !=
')') {
23116 PyErr_Format(PyExc_ValueError,
23117 "Expected a comma in format string, got '%c'", *ts);
23120 if (*ts ==
',') ts++;
23124 PyErr_Format(PyExc_ValueError,
"Expected %d dimension(s), got %d",
23125 ctx->head->field->type->ndim, i);
23129 PyErr_SetString(PyExc_ValueError,
23130 "Unexpected end of format string, expected ')'");
23133 ctx->is_valid_array = 1;
23134 ctx->new_count = 1;
23138static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx,
const char* ts) {
23143 if (ctx->enc_type != 0 && ctx->head == NULL) {
23144 __Pyx_BufFmt_RaiseExpected(ctx);
23147 if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1)
return NULL;
23148 if (ctx->head != NULL) {
23149 __Pyx_BufFmt_RaiseExpected(ctx);
23159 if (!__Pyx_Is_Little_Endian()) {
23160 PyErr_SetString(PyExc_ValueError,
"Little-endian buffer not supported on big-endian compiler");
23163 ctx->new_packmode =
'=';
23168 if (__Pyx_Is_Little_Endian()) {
23169 PyErr_SetString(PyExc_ValueError,
"Big-endian buffer not supported on little-endian compiler");
23172 ctx->new_packmode =
'=';
23178 ctx->new_packmode = *ts++;
23182 const char* ts_after_sub;
23183 size_t i, struct_count = ctx->new_count;
23184 size_t struct_alignment = ctx->struct_alignment;
23185 ctx->new_count = 1;
23187 if (*ts !=
'\x7B') {
23188 PyErr_SetString(PyExc_ValueError,
"Buffer acquisition: Expected '\x7B' after 'T'");
23191 if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1)
return NULL;
23193 ctx->enc_count = 0;
23194 ctx->struct_alignment = 0;
23197 for (i = 0; i != struct_count; ++i) {
23198 ts_after_sub = __Pyx_BufFmt_CheckString(ctx, ts);
23199 if (!ts_after_sub)
return NULL;
23202 if (struct_alignment) ctx->struct_alignment = struct_alignment;
23207 size_t alignment = ctx->struct_alignment;
23209 if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1)
return NULL;
23211 if (alignment && ctx->fmt_offset % alignment) {
23212 ctx->fmt_offset += alignment - (ctx->fmt_offset % alignment);
23217 if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1)
return NULL;
23218 ctx->fmt_offset += ctx->new_count;
23219 ctx->new_count = 1;
23220 ctx->enc_count = 0;
23222 ctx->enc_packmode = ctx->new_packmode;
23228 if (*ts !=
'f' && *ts !=
'd' && *ts !=
'g') {
23229 __Pyx_BufFmt_RaiseUnexpectedChar(
'Z');
23232 CYTHON_FALLTHROUGH;
23233 case '?':
case 'c':
case 'b':
case 'B':
case 'h':
case 'H':
case 'i':
case 'I':
23234 case 'l':
case 'L':
case 'q':
case 'Q':
23235 case 'f':
case 'd':
case 'g':
23236 case 'O':
case 'p':
23237 if ((ctx->enc_type == *ts) && (got_Z == ctx->is_complex) &&
23238 (ctx->enc_packmode == ctx->new_packmode) && (!ctx->is_valid_array)) {
23239 ctx->enc_count += ctx->new_count;
23240 ctx->new_count = 1;
23245 CYTHON_FALLTHROUGH;
23247 if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1)
return NULL;
23248 ctx->enc_count = ctx->new_count;
23249 ctx->enc_packmode = ctx->new_packmode;
23250 ctx->enc_type = *ts;
23251 ctx->is_complex = got_Z;
23253 ctx->new_count = 1;
23258 while(*ts !=
':') ++ts;
23262 if (__pyx_buffmt_parse_array(ctx, &ts) < 0)
return NULL;
23266 int number = __Pyx_BufFmt_ExpectNumber(&ts);
23267 if (
number == -1)
return NULL;
23268 ctx->new_count = (size_t)
number;
23275static CYTHON_INLINE
void __Pyx_SafeReleaseBuffer(Py_buffer* info) {
23276 if (unlikely(info->buf == NULL))
return;
23277 if (info->suboffsets == __Pyx_minusones) info->suboffsets = NULL;
23278 PyBuffer_Release(info);
23280static void __Pyx_ZeroBuffer(Py_buffer* buf) {
23283 buf->strides = __Pyx_zeros;
23284 buf->shape = __Pyx_zeros;
23285 buf->suboffsets = __Pyx_minusones;
23287static int __Pyx__GetBufferAndValidate(
23288 Py_buffer* buf, PyObject* obj,
const __Pyx_TypeInfo* dtype,
int flags,
23289 int nd,
int cast, __Pyx_BufFmt_StackElem* stack)
23292 if (unlikely(PyObject_GetBuffer(obj, buf, flags) == -1)) {
23293 __Pyx_ZeroBuffer(buf);
23296 if (unlikely(buf->ndim != nd)) {
23297 PyErr_Format(PyExc_ValueError,
23298 "Buffer has wrong number of dimensions (expected %d, got %d)",
23303 __Pyx_BufFmt_Context ctx;
23304 __Pyx_BufFmt_Init(&ctx, stack, dtype);
23305 if (!__Pyx_BufFmt_CheckString(&ctx, buf->format))
goto fail;
23307 if (unlikely((
size_t)buf->itemsize != dtype->size)) {
23308 PyErr_Format(PyExc_ValueError,
23309 "Item size of buffer (%" CYTHON_FORMAT_SSIZE_T
"d byte%s) does not match size of '%s' (%" CYTHON_FORMAT_SSIZE_T
"d byte%s)",
23310 buf->itemsize, (buf->itemsize > 1) ?
"s" :
"",
23311 dtype->name, (Py_ssize_t)dtype->size, (dtype->size > 1) ?
"s" :
"");
23314 if (buf->suboffsets == NULL) buf->suboffsets = __Pyx_minusones;
23317 __Pyx_SafeReleaseBuffer(buf);
23322#if CYTHON_COMPILING_IN_LIMITED_API
23323static CYTHON_INLINE PyObject* __Pyx__PyFrozenDict_New(PyObject* frozendict_type, PyObject* it) {
23324 return PyObject_CallFunctionObjArgs(frozendict_type, it, NULL);
23329#if CYTHON_USE_TYPE_SLOTS && !CYTHON_COMPILING_IN_PYPY
23330static int __Pyx_GetItemInt_wraparound(PyObject *o, PySequenceMethods *sm, Py_ssize_t *i) {
23332 if (likely(sm->sq_length)) {
23333 Py_ssize_t l = sm->sq_length(o);
23334 if (likely(l >= 0)) {
23337 if (!PyErr_ExceptionMatches(PyExc_OverflowError))
23347static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {
23349 if (unlikely(!j))
return NULL;
23350 r = PyObject_GetItem(o, j);
23354static PyObject *__Pyx_GetItemInt_Generic_size(PyObject *o, Py_ssize_t i) {
23355 return __Pyx_GetItemInt_Generic(o, PyLong_FromSsize_t(i));
23357static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
23358 int wraparound,
int boundscheck,
int unsafe_shared) {
23359 CYTHON_MAYBE_UNUSED_VAR(unsafe_shared);
23360#if CYTHON_AVOID_BORROWED_REFS
23361 CYTHON_UNUSED_VAR(boundscheck);
23362 Py_ssize_t wrapped_i = i;
23363 if (wraparound & unlikely(i < 0)) {
23364 Py_ssize_t size = __Pyx_PyList_GET_SIZE(o);
23365 #if !CYTHON_ASSUME_SAFE_SIZE
23366 if (unlikely(size < 0))
return NULL;
23370 return __Pyx_PyList_GetItemRef(o, wrapped_i);
23371#elif CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS
23372 Py_ssize_t wrapped_i = i;
23373 Py_ssize_t size = (wraparound | boundscheck) ? PyList_GET_SIZE(o) : -1;
23374 if (wraparound & unlikely(i < 0)) {
23377 if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, size))) {
23378 return __Pyx_PyList_GET_ITEM_REF(o, wrapped_i, unsafe_shared);
23380 return __Pyx_GetItemInt_Generic_size(o, i);
23384 return PySequence_GetItem(o, i);
23387static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
23388 int wraparound,
int boundscheck,
int unsafe_shared) {
23389 CYTHON_MAYBE_UNUSED_VAR(unsafe_shared);
23390#if CYTHON_AVOID_BORROWED_REFS
23391 CYTHON_UNUSED_VAR(boundscheck);
23392 Py_ssize_t wrapped_i = i;
23393 if (wraparound & unlikely(i < 0)) {
23394 Py_ssize_t size = __Pyx_PyTuple_GET_SIZE(o);
23395 #if !CYTHON_ASSUME_SAFE_SIZE
23396 if (unlikely(size < 0))
return NULL;
23400 #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_COMPILING_IN_LIMITED_API
23401 return PySequence_ITEM(o, wrapped_i);
23403 if (unlikely(wrapped_i < 0)) {
23404 PyErr_SetString(PyExc_IndexError,
"tuple index out of range");
23407 return PySequence_GetItem(o, wrapped_i);
23409#elif CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS
23410 Py_ssize_t wrapped_i = i;
23411 Py_ssize_t size = (wraparound | boundscheck) ? PyTuple_GET_SIZE(o) : -1;
23412 if (wraparound & unlikely(i < 0)) {
23415 if ((!boundscheck) || likely(__Pyx_is_valid_index(wrapped_i, size))) {
23416 return __Pyx_NewRef(__Pyx_PyTuple_GET_ITEM(o, wrapped_i));
23418 return __Pyx_GetItemInt_Generic_size(o, i);
23422 return PySequence_GetItem(o, i);
23425#if CYTHON_USE_TYPE_SLOTS && !CYTHON_COMPILING_IN_PYPY
23426static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast_mapping(PyObject *o, binaryfunc getitem, Py_ssize_t i) {
23427 PyObject *
r, *key = PyLong_FromSsize_t(i);
23428 if (unlikely(!key))
return NULL;
23429 r = getitem(o, key);
23434static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i,
23435 int wraparound,
int boundscheck,
int unsafe_shared) {
23436 CYTHON_MAYBE_UNUSED_VAR(unsafe_shared);
23437#if CYTHON_ASSUME_SAFE_SIZE
23438 if (PyList_CheckExact(o)) {
23439 return __Pyx_GetItemInt_List_Fast(o, i, wraparound, boundscheck, unsafe_shared);
23441 #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
23442 if (PyTuple_CheckExact(o)) {
23443 return __Pyx_GetItemInt_Tuple_Fast(o, i, wraparound, boundscheck, unsafe_shared);
23447 if ((!wraparound || i >= 0) & PyList_CheckExact(o)) {
23448 return boundscheck ? __Pyx_PyList_GetItemRef(o, i) : __Pyx_PyList_GET_ITEM_REF(o, i, unsafe_shared);
23451#if CYTHON_USE_TYPE_SLOTS && !CYTHON_COMPILING_IN_PYPY
23452 if (PyDict_CheckExact(o)) {
23453 return __Pyx_GetItemInt_Fast_mapping(o, PyDict_Type.tp_as_mapping->mp_subscript, i);
23454 #if defined(PyFrozenDict_CheckExact)
23455 }
else if (PyFrozenDict_CheckExact(o)) {
23456 return __Pyx_GetItemInt_Fast_mapping(o, PyFrozenDict_Type.tp_as_mapping->mp_subscript, i);
23460 PyTypeObject *obj_type = Py_TYPE(o);
23461 int seq_or_mapping = __Pyx_PyType_GetFlags(obj_type) & (Py_TPFLAGS_SEQUENCE|Py_TPFLAGS_MAPPING);
23462 if (seq_or_mapping != Py_TPFLAGS_SEQUENCE) {
23463 PyMappingMethods *mm = obj_type->tp_as_mapping;
23464 if (mm && mm->mp_subscript)
23465 return __Pyx_GetItemInt_Fast_mapping(o, mm->mp_subscript, i);
23467 PySequenceMethods *sm = obj_type->tp_as_sequence;
23468 if (likely(sm && sm->sq_item)) {
23469 if (wraparound && (i < 0) && unlikely(__Pyx_GetItemInt_wraparound(o, sm, &i) == -1))
23471 return sm->sq_item(o, i);
23473 if (seq_or_mapping == Py_TPFLAGS_SEQUENCE) {
23474 PyMappingMethods *mm = obj_type->tp_as_mapping;
23475 if (likely(mm && mm->mp_subscript))
23476 return __Pyx_GetItemInt_Fast_mapping(o, mm->mp_subscript, i);
23480 if (!PyMapping_Check(o)) {
23481 return PySequence_GetItem(o, i);
23486 return __Pyx_GetItemInt_Generic_size(o, i);
23490#if __PYX_LIMITED_VERSION_HEX < 0x030d0000
23491static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(
void) {
23492 __Pyx_PyThreadState_declare
23493 __Pyx_PyThreadState_assign
23494 if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError)))
23495 __Pyx_PyErr_Clear();
23498static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) {
23500#if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
23501 (void) PyObject_GetOptionalAttr(obj, attr_name, &result);
23504#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS
23505 PyTypeObject* tp = Py_TYPE(obj);
23506 if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) {
23507 return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1);
23510 result = __Pyx_PyObject_GetAttrStr(obj, attr_name);
23511 if (unlikely(!result)) {
23512 __Pyx_PyObject_GetAttrStr_ClearAttributeError();
23519#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
23520static __Pyx_TypeName
23521__Pyx_PyType_GetFullyQualifiedName(PyTypeObject* tp)
23523 PyObject *module = NULL, *name = NULL, *result = NULL;
23524 #if __PYX_LIMITED_VERSION_HEX < 0x030b0000
23525 name = __Pyx_PyObject_GetAttrStr((PyObject *)tp,
23526 __pyx_mstate_global->__pyx_n_u_qualname);
23528 name = PyType_GetQualName(tp);
23530 if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name)))
goto bad;
23531 module = __Pyx_PyObject_GetAttrStr((PyObject *)tp,
23532 __pyx_mstate_global->__pyx_n_u_module);
23533 if (unlikely(module == NULL) || unlikely(!PyUnicode_Check(module)))
goto bad;
23534 if (PyUnicode_CompareWithASCIIString(module,
"builtins") == 0) {
23539 result = PyUnicode_FromFormat(
"%U.%U", module, name);
23540 if (unlikely(result == NULL))
goto bad;
23543 Py_XDECREF(module);
23551 result = __Pyx_NewRef(__pyx_mstate_global->__pyx_kp_u_);
23558static void __Pyx_RaiseErrorWithType(PyObject* exc_type,
const char* message, PyTypeObject *type_obj) {
23559 __Pyx_TypeName type_name = __Pyx_PyType_GetFullyQualifiedName(type_obj);
23560 #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
23561 if (unlikely(!type_name))
return;
23563 PyErr_Format(exc_type, message, type_name);
23564 __Pyx_DECREF_TypeName(type_name);
23568#if CYTHON_USE_TYPE_SLOTS
23569static PyObject *__Pyx_PyObject_GetIndex(PyObject *obj, PyObject *index) {
23570 PyObject *runerr = NULL;
23571 Py_ssize_t key_value;
23572 key_value = __Pyx_PyIndex_AsSsize_t(index);
23573 if (likely(key_value != -1 || !(runerr = PyErr_Occurred()))) {
23574 return __Pyx_GetItemInt_Fast(obj, key_value, 1, 1, 1);
23576 if (PyErr_GivenExceptionMatches(runerr, PyExc_OverflowError)) {
23578 __Pyx_RaiseErrorWithObjectType(
23580 "cannot fit '" __Pyx_FMT_TYPENAME
"' into an index-sized integer",
23585static PyObject *__Pyx_PyObject_GetItem_Slow(PyObject *obj, PyObject *key) {
23586 if (likely(PyType_Check(obj))) {
23587 if ((PyTypeObject*)obj == &PyType_Type) {
23588 return Py_GenericAlias(obj, key);
23590 PyObject *meth = __Pyx_PyObject_GetAttrStrNoError(obj, __pyx_mstate_global->__pyx_n_u_class_getitem);
23592 if (PyErr_Occurred()) {
23596 PyObject *result = __Pyx_PyObject_CallOneArg(meth, key);
23601 __Pyx_RaiseTypeErrorWithObjectType(
23602 "'" __Pyx_FMT_TYPENAME
"' object is not subscriptable", obj);
23605static PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject *key) {
23606 PyTypeObject *tp = Py_TYPE(obj);
23607 PyMappingMethods *mm = tp->tp_as_mapping;
23608 PySequenceMethods *sm = tp->tp_as_sequence;
23609 if (likely(mm && mm->mp_subscript)) {
23610 return mm->mp_subscript(obj, key);
23612 if (likely(sm && sm->sq_item)) {
23613 return __Pyx_PyObject_GetIndex(obj, key);
23615 return __Pyx_PyObject_GetItem_Slow(obj, key);
23620static void __Pyx_RaiseBufferIndexError(
int axis) {
23621 PyErr_Format(PyExc_IndexError,
23622 "Out of bounds on buffer access (axis %d)", axis);
23626static void __Pyx_RaiseErrorWithTypes1(PyObject* exc_type,
const char *message,
const char *arg, PyTypeObject *type_obj1, PyTypeObject *type_obj2) {
23627 __Pyx_TypeName type_name1 = __Pyx_PyType_GetFullyQualifiedName(type_obj1);
23628 #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
23629 if (unlikely(!type_name1))
return;
23631 __Pyx_TypeName type_name2 = __Pyx_PyType_GetFullyQualifiedName(type_obj2);
23632 #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
23633 if (unlikely(!type_name2))
goto type2_failed;
23635 PyErr_Format(exc_type, message, arg, type_name1, type_name2);
23636 __Pyx_DECREF_TypeName(type_name2);
23637#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
23640 __Pyx_DECREF_TypeName(type_name1);
23644#if !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_GRAAL || CYTHON_COMPILING_IN_LIMITED_API)
23645#if CYTHON_USE_TYPE_SLOTS || __PYX_LIMITED_VERSION_HEX >= 0x030A0000
23646#ifndef __Pyx_DEFINED_BinopTypeError
23647#define __Pyx_DEFINED_BinopTypeError
23648static void __Pyx_BinopTypeError(PyObject *op1, PyObject *op2,
const char* op,
int inplace) {
23649 char opname[4] = {op[0], op[1], 0, 0};
23651 opname[op[1] ? 2 : 1] =
'=';
23653 __Pyx_RaiseErrorWithObjectTypes1(
23655 "unsupported operand type(s) for %.3s: '" __Pyx_FMT_TYPENAME
"' and '" __Pyx_FMT_TYPENAME
"'",
23660#ifndef __Pyx_DEFINED_PyNumber_Add_xfloat_object
23661#define __Pyx_DEFINED_PyNumber_Add_xfloat_object
23662static PyObject* __Pyx_PyNumber_Add_xfloat_object(PyObject *op1, PyObject *op2,
int inplace) {
23663 if (PyLong_CheckExact(op2)) {
23665 #if CYTHON_USE_PYLONG_INTERNALS
23666 if (__Pyx_PyLong_IsCompact(op2)) {
23667 Py_ssize_t compact_op2 = __Pyx_PyLong_CompactValue(op2);
23668 if (compact_op2 == 0)
return __Pyx_NewRef(op1);
23669 int_op2 = (double) compact_op2;
23673 int_op2 = PyLong_AsDouble(op2);
23674 if (unlikely((int_op2 == -1.) && PyErr_Occurred()))
return NULL;
23675 #if !CYTHON_USE_PYLONG_INTERNALS
23676 if (int_op2 == 0.)
return __Pyx_NewRef(op1);
23679 double float_op1 = __Pyx_PyFloat_AS_DOUBLE(op1);
23680 #if !CYTHON_ASSUME_SAFE_MACROS
23681 if (unlikely((float_op1 == -1.) && PyErr_Occurred()))
return NULL;
23683 return PyFloat_FromDouble(float_op1 + int_op2);
23685 if (PyLong_Check(op2)) {
23686 binaryfunc slot_func = __Pyx_PyType_GetSubSlot(&PyFloat_Type, tp_as_number, nb_add, binaryfunc);
23687 if (likely(slot_func)) {
23688 return slot_func(op1, op2);
23691 #if CYTHON_USE_TYPE_SLOTS || __PYX_LIMITED_VERSION_HEX >= 0x030A0000
23693 PyTypeObject *type_op2 = Py_TYPE(op2);
23694 binaryfunc slot_func = __Pyx_PyType_GetSubSlot(type_op2, tp_as_number, nb_add, binaryfunc);
23695 if (likely(slot_func)) {
23696 PyObject *result = slot_func(op1, op2);
23697 if (likely(result != Py_NotImplemented)) {
23702 __Pyx_BinopTypeError(op1, op2,
"+", inplace);
23706 return (inplace) ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2);
23710#ifndef __Pyx_DEFINED_PyNumber_Add_xint_object
23711#define __Pyx_DEFINED_PyNumber_Add_xint_object
23712static PyObject* __Pyx_PyNumber_Add_xint_object(PyObject *op1, PyObject *op2,
int inplace) {
23713 if (PyFloat_CheckExact(op2)) {
23715 #if CYTHON_USE_PYLONG_INTERNALS
23716 if (__Pyx_PyLong_IsCompact(op1)) {
23717 Py_ssize_t compact_op1 = __Pyx_PyLong_CompactValue(op1);
23718 if (compact_op1 == 0)
return __Pyx_NewRef(op2);
23719 int_op1 = (double) compact_op1;
23723 int_op1 = PyLong_AsDouble(op1);
23724 if (unlikely((int_op1 == -1.) && PyErr_Occurred()))
return NULL;
23725 #if !CYTHON_USE_PYLONG_INTERNALS
23726 if (int_op1 == 0.)
return __Pyx_NewRef(op2);
23729 double float_op2 = __Pyx_PyFloat_AS_DOUBLE(op2);
23730 #if !CYTHON_ASSUME_SAFE_MACROS
23731 if (unlikely((float_op2 == -1.) && PyErr_Occurred()))
return NULL;
23733 return PyFloat_FromDouble(int_op1 + float_op2);
23735 #if CYTHON_USE_TYPE_SLOTS || __PYX_LIMITED_VERSION_HEX >= 0x030A0000
23737 PyTypeObject *type_op2 = Py_TYPE(op2);
23738 binaryfunc slot_func = __Pyx_PyType_GetSubSlot(type_op2, tp_as_number, nb_add, binaryfunc);
23739 if (likely(slot_func)) {
23740 PyObject *result = slot_func(op1, op2);
23741 if (likely(result != Py_NotImplemented)) {
23746 __Pyx_BinopTypeError(op1, op2,
"+", inplace);
23750 return (inplace) ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2);
23754static CYTHON_INLINE PyObject* __Pyx__PyNumber_Add_object_object(PyObject *op1, PyObject *op2,
int inplace) {
23755 if (PyFloat_CheckExact(op1)) {
23756 if (PyFloat_CheckExact(op2)) {
23757 double float_op2 = __Pyx_PyFloat_AS_DOUBLE(op2);
23758 #if !CYTHON_ASSUME_SAFE_MACROS
23759 if (unlikely((float_op2 == -1.) && PyErr_Occurred()))
return NULL;
23761 double float_op1 = __Pyx_PyFloat_AS_DOUBLE(op1);
23762 #if !CYTHON_ASSUME_SAFE_MACROS
23763 if (unlikely((float_op1 == -1.) && PyErr_Occurred()))
return NULL;
23765 return PyFloat_FromDouble(float_op1 + float_op2);
23767 return __Pyx_PyNumber_Add_xfloat_object(op1, op2, inplace);
23769 if (PyLong_CheckExact(op1)) {
23770 if (PyLong_CheckExact(op2)) {
23771 #if CYTHON_USE_PYLONG_INTERNALS
23772 if (__Pyx_PyLong_IsCompact(op1)) {
23773 Py_ssize_t int_op1 = __Pyx_PyLong_CompactValue(op1);
23774 if (int_op1 == 0)
return __Pyx_NewRef(op2);
23775 if (__Pyx_PyLong_IsCompact(op2)) {
23776 Py_ssize_t int_op2 = __Pyx_PyLong_CompactValue(op2);
23777 if (int_op2 == 0)
return __Pyx_NewRef(op1);
23778 return PyLong_FromSsize_t(int_op1 + int_op2);
23781 else if (__Pyx_PyLong_IsZero(op2))
return __Pyx_NewRef(op1);
23783 binaryfunc slot_func = __Pyx_PyType_GetSubSlot(&PyLong_Type, tp_as_number, nb_add, binaryfunc);
23784 if (likely(slot_func)) {
23785 return slot_func(op1, op2);
23788 return __Pyx_PyNumber_Add_xint_object(op1, op2, inplace);
23790 return (inplace) ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2);
23795static PyObject *__Pyx_AllocateExtensionType(PyTypeObject *t,
int is_final) {
23796 if (is_final || likely(!__Pyx_PyType_HasFeature(t, Py_TPFLAGS_IS_ABSTRACT))) {
23797 allocfunc alloc_func = __Pyx_PyType_GetSlot(t, tp_alloc, allocfunc);
23798 return alloc_func(t, 0);
23800 newfunc tp_new = __Pyx_PyType_TryGetSlot(&PyBaseObject_Type, tp_new, newfunc);
23801 #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
23803 PyObject *new_str = PyUnicode_FromString(
"__new__");
23804 if (likely(new_str)) {
23805 PyObject *o = PyObject_CallMethodObjArgs((PyObject *)&PyBaseObject_Type, new_str, t, NULL);
23806 Py_DECREF(new_str);
23812 return tp_new(t, __pyx_mstate_global->__pyx_empty_tuple, 0);
23817static CYTHON_INLINE
int __Pyx_CallSlotAsVectorcallUnpackDict(Py_ssize_t args_size, PyObject *keys_dict, PyObject **args, PyObject *kwnames) {
23818 Py_ssize_t pos = 0, i = 0;
23819 PyObject *key, *value;
23820 while (PyDict_Next(keys_dict, &pos, &key, &value)) {
23822 args[args_size+i] = value;
23824 if (unlikely(__Pyx_PyTuple_SET_ITEM(kwnames, i, key) == -1)) {
23833#if CYTHON_VECTORCALL_TPNEW
23834static PyObject * __Pyx_CallTpnewAsVectorcall(__Pyx_tpnewvectorcallfunc
f, PyTypeObject* o, PyObject *a, PyObject *k) {
23835 Py_ssize_t k_size = k ? __Pyx_PyDict_GET_SIZE(k) : 0;
23836#if !CYTHON_ASSUME_SAFE_SIZE
23837 if (unlikely(k_size < 0))
return NULL;
23839 Py_ssize_t a_size = __Pyx_PyTuple_GET_SIZE(a);
23840#if !CYTHON_ASSUME_SAFE_SIZE
23841 if (unlikely(a_size < 0))
return NULL;
23843#if CYTHON_ASSUME_SAFE_MACROS
23845 return f(o, &PyTuple_GET_ITEM(a, 0), a_size, NULL);
23848 if (k_size == 0 && a_size == 0) {
23849 return f(o, NULL, 0, NULL);
23852 PyObject *stack_args[5];
23853 PyObject **args = stack_args;
23854 Py_ssize_t maxnargs = PY_SSIZE_T_MAX /
sizeof(PyObject*) - 1;
23855 if (a_size > maxnargs - k_size) {
23859 Py_ssize_t total_size = a_size + k_size;
23860 if (total_size > 5) {
23861 args = (PyObject**)PyMem_Malloc(((
size_t)total_size)*
sizeof(PyObject*));
23862 if (unlikely(!args)) {
23867 PyObject * result = NULL;
23868 PyObject *kwnames = NULL;
23869 int unpack_dict_result;
23871 for (; i < a_size; ++i) {
23872 args[i] = __Pyx_PyTuple_GET_ITEM(a, i);
23873#if !CYTHON_ASSUME_SAFE_MACROS
23874 if (unlikely(!args[i]))
goto cleanup;
23877#if !CYTHON_ASSUME_SAFE_MACROS
23881 kwnames = PyTuple_New(k_size);
23882 if (unlikely(!kwnames))
goto cleanup;
23883 __Pyx_BEGIN_CRITICAL_SECTION(k);
23884 unpack_dict_result = __Pyx_CallSlotAsVectorcallUnpackDict(a_size, k, args, kwnames);
23885 __Pyx_END_CRITICAL_SECTION();
23886 if (unlikely(unpack_dict_result == -1))
goto cleanup;
23888 result =
f(o, args, a_size, kwnames);
23890 Py_XDECREF(kwnames);
23891 for (i=a_size; i<total_size; ++i) {
23892 Py_XDECREF(args[i]);
23894 if (args != stack_args) {
23902#if CYTHON_VECTORCALL_TPNEW
23903static PyObject *__Pyx_CallNewInitFromVectorcall(PyTypeObject *t, PyObject *
const *args,
size_t nargsf, PyObject *kwnames) {
23904 newfunc tp_new = __Pyx_PyType_GetSlot(t, tp_new, newfunc);
23905 if (unlikely(!tp_new)) {
23906 __Pyx_RaiseErrorWithType(PyExc_TypeError,
"cannot create " __Pyx_FMT_TYPENAME
" instances", t);
23909 Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(nargsf);
23910 PyObject *result = NULL, *args_tuple = NULL, *kwds_dict = NULL;
23911 Py_ssize_t kw_size = kwnames ? __Pyx_PyTuple_GET_SIZE(kwnames) : 0;
23912#if !CYTHON_ASSUME_SAFE_SIZE
23913 if (unlikely(kw_size == -1)) {
23918 kwds_dict = __Pyx_PyDict_NewPresized(kw_size);
23919 if (unlikely(!kwds_dict)) {
23922 for (Py_ssize_t i=0; i<kw_size; ++i) {
23923 PyObject *
v = args[nargs + i];
23924 PyObject *k = __Pyx_PyTuple_GET_ITEM(kwnames, i);
23925#if !CYTHON_ASSUME_SAFE_MACROS
23926 if (unlikely(!k)) {
23930 if (unlikely(PyDict_SetItem(kwds_dict, k,
v) < 0)) {
23936 args_tuple = __Pyx_PyTuple_FromArray(args, nargs);
23937 if (unlikely(!args_tuple)) {
23941 args_tuple = __Pyx_NewRef(__pyx_mstate_global->__pyx_empty_tuple);
23943 result = tp_new(t, args_tuple, kwds_dict);
23944 if (unlikely(!result)) {
23947 if (PyObject_TypeCheck(result, t)) {
23948 initproc tp_init = __Pyx_PyObject_GetSlot(result, tp_init, initproc);
23949 if (tp_init && unlikely(tp_init(result, args_tuple, kwds_dict) < 0)) {
23954 Py_XDECREF(args_tuple);
23955 Py_XDECREF(kwds_dict);
23961static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethod0(PyObject* obj, PyObject* method_name) {
23962#if CYTHON_VECTORCALL && (__PYX_LIMITED_VERSION_HEX >= 0x030C0000 || !CYTHON_COMPILING_IN_LIMITED_API)
23963 return PyObject_VectorcallMethod(method_name, &obj, 1 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
23964#elif CYTHON_COMPILING_IN_LIMITED_API
23965 return PyObject_CallMethodObjArgs(obj, method_name, NULL);
23967 return PyObject_CallMethodNoArgs(obj, method_name);
23972#if !CYTHON_USE_TYPE_SLOTS
23973CYTHON_UNUSED
static Py_ssize_t __Pyx_GetTypeDictOffset(PyObject *tp,
int require_cython_valid_result) {
23974 PyObject *tp_dictoffset_o;
23975 Py_ssize_t tp_dictoffset;
23976 tp_dictoffset_o = PyObject_GetAttrString(tp,
"__dictoffset__");
23977 if (unlikely(!tp_dictoffset_o))
return -1;
23978 tp_dictoffset = PyLong_AsSsize_t(tp_dictoffset_o);
23979 Py_DECREF(tp_dictoffset_o);
23980 if (unlikely(require_cython_valid_result && tp_dictoffset == 0)) {
23983 "'type' doesn't have a dictoffset");
23985 }
else if (unlikely(require_cython_valid_result && tp_dictoffset < 0)) {
23988 "'type' has an unexpected negative dictoffset. "
23989 "Please report this as Cython bug");
23992 return tp_dictoffset;
23997static void __Pyx_RaiseErrorWithType1(PyObject* exc_type,
const char* message,
const char *arg, PyTypeObject *type_obj) {
23998 __Pyx_TypeName type_name = __Pyx_PyType_GetFullyQualifiedName(type_obj);
23999 #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
24000 if (unlikely(!type_name))
return;
24002 PyErr_Format(exc_type, message, arg, type_name);
24003 __Pyx_DECREF_TypeName(type_name);
24007#if CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_LIMITED_API || CYTHON_USE_TYPE_SPECS
24008static int __Pyx_validate_bases_tuple(
const char *type_name,
int has_dictoffset, PyObject *bases) {
24010#if CYTHON_ASSUME_SAFE_SIZE
24011 n = PyTuple_GET_SIZE(bases);
24013 n = PyTuple_Size(bases);
24014 if (unlikely(
n < 0))
return -1;
24016 if (!has_dictoffset) {
24018#if CYTHON_AVOID_BORROWED_REFS
24019 b = PySequence_GetItem(bases, 0);
24021#elif CYTHON_ASSUME_SAFE_MACROS
24022 b = PyTuple_GET_ITEM(bases, 0);
24024 b = PyTuple_GetItem(bases, 0);
24027#if CYTHON_USE_TYPE_SLOTS
24028 has_dictoffset = ((PyTypeObject*)b)->tp_dictoffset != 0;
24030 Py_ssize_t dictoffset = __Pyx_GetTypeDictOffset(b, 0);
24031 has_dictoffset = dictoffset != 0;
24033#if CYTHON_AVOID_BORROWED_REFS
24036#if !CYTHON_USE_TYPE_SLOTS
24037 if (dictoffset == -1 && PyErr_Occurred())
return -1;
24040 for (i = 1; i <
n; i++)
24043#if CYTHON_AVOID_BORROWED_REFS
24044 PyObject *b0 = PySequence_GetItem(bases, i);
24045 if (!b0)
return -1;
24046#elif CYTHON_ASSUME_SAFE_MACROS
24047 PyObject *b0 = PyTuple_GET_ITEM(bases, i);
24049 PyObject *b0 = PyTuple_GetItem(bases, i);
24050 if (!b0)
return -1;
24052 b = (PyTypeObject*) b0;
24053 if (!__Pyx_PyType_HasFeature(b, Py_TPFLAGS_HEAPTYPE))
24055 __Pyx_RaiseErrorWithType(
24056 PyExc_TypeError,
"base class '" __Pyx_FMT_TYPENAME
"' is not a heap type", b);
24057#if CYTHON_AVOID_BORROWED_REFS
24062 if (!has_dictoffset)
24064 Py_ssize_t b_dictoffset = 0;
24065#if CYTHON_USE_TYPE_SLOTS
24066 b_dictoffset = b->tp_dictoffset;
24068 b_dictoffset = __Pyx_GetTypeDictOffset((PyObject*)b, 0);
24069 if (b_dictoffset == -1 && PyErr_Occurred())
goto dictoffset_return;
24071 if (b_dictoffset) {
24072 __Pyx_RaiseErrorWithType1(
24074 "extension type '%.200s' has no __dict__ slot, "
24075 "but base type '" __Pyx_FMT_TYPENAME
"' has: "
24076 "either add 'cdef dict __dict__' to the extension type "
24077 "or add '__slots__ = [...]' to the base type",
24079#if !CYTHON_USE_TYPE_SLOTS
24082#if CYTHON_AVOID_BORROWED_REFS
24088#if CYTHON_AVOID_BORROWED_REFS
24097CYTHON_UNUSED
static int __Pyx_PyType_HasMultipleInheritance(PyTypeObject *t) {
24099 PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*);
24103 t = __Pyx_PyType_GetSlot(t, tp_base, PyTypeObject*);
24107static int __Pyx_PyType_Ready(PyTypeObject *t) {
24108#if CYTHON_USE_TYPE_SPECS || !CYTHON_COMPILING_IN_CPYTHON
24109 (void)__Pyx_PyObject_CallMethod0;
24110#if CYTHON_USE_TYPE_SPECS
24111 (void)__Pyx_validate_bases_tuple;
24113 return PyType_Ready(t);
24116 if (!__Pyx_PyType_HasMultipleInheritance(t)) {
24117 return PyType_Ready(t);
24119 PyObject *bases = __Pyx_PyType_GetSlot(t, tp_bases, PyObject*);
24120 if (bases && unlikely(__Pyx_validate_bases_tuple(t->tp_name, t->tp_dictoffset != 0, bases) == -1))
24123 int gc_was_enabled;
24124 #if PY_VERSION_HEX >= 0x030A00b1
24125 gc_was_enabled = PyGC_Disable();
24126 (void)__Pyx_PyObject_CallMethod0;
24128 PyObject *ret, *py_status;
24129 PyObject *gc = NULL;
24130 #if (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM+0 >= 0x07030400) &&\
24131 !CYTHON_COMPILING_IN_GRAAL
24132 gc = PyImport_GetModule(__pyx_mstate_global->__pyx_kp_u_gc);
24134 if (unlikely(!gc)) gc = PyImport_Import(__pyx_mstate_global->__pyx_kp_u_gc);
24135 if (unlikely(!gc))
return -1;
24136 py_status = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_isenabled);
24137 if (unlikely(!py_status)) {
24141 gc_was_enabled = __Pyx_PyObject_IsTrue(py_status);
24142 Py_DECREF(py_status);
24143 if (gc_was_enabled > 0) {
24144 ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_disable);
24145 if (unlikely(!ret)) {
24150 }
else if (unlikely(gc_was_enabled == -1)) {
24155 t->tp_flags |= Py_TPFLAGS_HEAPTYPE;
24156#if PY_VERSION_HEX >= 0x030A0000
24157 t->tp_flags |= Py_TPFLAGS_IMMUTABLETYPE;
24159 r = PyType_Ready(t);
24160 t->tp_flags &= ~Py_TPFLAGS_HEAPTYPE;
24161 #if PY_VERSION_HEX >= 0x030A00b1
24162 if (gc_was_enabled)
24165 if (gc_was_enabled) {
24166 PyObject *tp, *
v, *tb;
24167 PyErr_Fetch(&tp, &
v, &tb);
24168 ret = __Pyx_PyObject_CallMethod0(gc, __pyx_mstate_global->__pyx_kp_u_enable);
24169 if (likely(ret ||
r == -1)) {
24171 PyErr_Restore(tp,
v, tb);
24187#if CYTHON_COMPILING_IN_LIMITED_API
24188static PyObject *__Pyx_GetTypeTypeDict(PyTypeObject *tp) {
24189 static Py_ssize_t tp_dictoffset = 0;
24190 if (unlikely(tp_dictoffset == 0)) {
24191 tp_dictoffset = __Pyx_GetTypeDictOffset((PyObject*)(&PyType_Type), 1);
24192 if (unlikely(tp_dictoffset == -1 && PyErr_Occurred())) {
24197 return *(PyObject**)((
char*)tp + tp_dictoffset);
24202static int __Pyx__DelItemOnTypeDict(PyTypeObject *tp, PyObject *k) {
24205#if CYTHON_COMPILING_IN_LIMITED_API
24206 tp_dict = __Pyx_GetTypeTypeDict(tp);
24207 if (unlikely(!tp_dict))
return -1;
24209 tp_dict = tp->tp_dict;
24211 result = PyDict_DelItem(tp_dict, k);
24212 if (likely(!result)) PyType_Modified(tp);
24217static int __Pyx__SetItemOnTypeDict(PyTypeObject *tp, PyObject *k, PyObject *
v) {
24220#if CYTHON_COMPILING_IN_LIMITED_API
24221 tp_dict = __Pyx_GetTypeTypeDict(tp);
24222 if (unlikely(!tp_dict))
return -1;
24224 tp_dict = tp->tp_dict;
24226 result = PyDict_SetItem(tp_dict, k,
v);
24227 if (likely(!result)) {
24228 PyType_Modified(tp);
24229 if (unlikely(PyObject_HasAttr(
v, __pyx_mstate_global->__pyx_n_u_set_name))) {
24230 PyObject *setNameResult = PyObject_CallMethodObjArgs(
v, __pyx_mstate_global->__pyx_n_u_set_name, (PyObject *) tp, k, NULL);
24231 if (!setNameResult)
return -1;
24232 Py_DECREF(setNameResult);
24239static int __Pyx_setup_reduce_is_named(PyObject* meth, PyObject* name) {
24241 PyObject *name_attr;
24242 name_attr = __Pyx_PyObject_GetAttrStrNoError(meth, __pyx_mstate_global->__pyx_n_u_name);
24243 if (likely(name_attr)) {
24244 ret = PyObject_RichCompareBool(name_attr, name, Py_EQ);
24248 if (unlikely(ret < 0) && __Pyx_IgnoreException(PyExc_Exception)) {
24251 Py_XDECREF(name_attr);
24254static PyObject *__Pyx_setup_reduce_get_reduce_attribute(PyObject *type_obj, PyObject *name,
int allow_not_present) {
24255#if CYTHON_USE_PYTYPE_LOOKUP
24256 CYTHON_UNUSED_VAR(allow_not_present);
24257 return _PyType_Lookup((PyTypeObject*)type_obj, name);
24259 if (allow_not_present) {
24260 return __Pyx_PyObject_GetAttrStrNoError(type_obj, name);
24262 return __Pyx_PyObject_GetAttrStr(type_obj, name);
24266static int __Pyx_setup_reduce(PyObject* type_obj) {
24268 PyObject *object_reduce = NULL;
24269 PyObject *object_getstate = NULL;
24270 PyObject *object_reduce_ex = NULL;
24271 PyObject *reduce = NULL;
24272 PyObject *reduce_ex = NULL;
24273 PyObject *reduce_cython = NULL;
24274 PyObject *setstate = NULL;
24275 PyObject *setstate_cython = NULL;
24276 PyObject *getstate = NULL;
24277 getstate = __Pyx_setup_reduce_get_reduce_attribute(type_obj, __pyx_mstate_global->__pyx_n_u_getstate, 1);
24278 if (!getstate && PyErr_Occurred()) {
24282 object_getstate = __Pyx_setup_reduce_get_reduce_attribute((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_getstate, 1);
24283 if (!object_getstate && PyErr_Occurred()) {
24286 if (object_getstate != getstate) {
24290 object_reduce_ex = __Pyx_setup_reduce_get_reduce_attribute((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce_ex, 0);
24291 if (unlikely(!object_reduce_ex))
goto __PYX_BAD;
24292 reduce_ex = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_ex);
if (unlikely(!reduce_ex))
goto __PYX_BAD;
24293 if (reduce_ex == object_reduce_ex) {
24294 object_reduce = __Pyx_setup_reduce_get_reduce_attribute((PyObject*)&PyBaseObject_Type, __pyx_mstate_global->__pyx_n_u_reduce, 0);
24295 if (!object_reduce)
goto __PYX_BAD;
24296 reduce = __Pyx_PyObject_GetAttrStr(type_obj, __pyx_mstate_global->__pyx_n_u_reduce);
if (unlikely(!reduce))
goto __PYX_BAD;
24297 int try_to_replace_reduce = (reduce == object_reduce);
24298 if (!try_to_replace_reduce) {
24299 try_to_replace_reduce = __Pyx_setup_reduce_is_named(reduce, __pyx_mstate_global->__pyx_n_u_reduce_cython);
24300 if (unlikely(try_to_replace_reduce < 0)) {
24304 if (try_to_replace_reduce) {
24305 reduce_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython);
24306 if (likely(reduce_cython)) {
24307 ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce, reduce_cython);
if (unlikely(ret < 0))
goto __PYX_BAD;
24308 ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_reduce_cython);
if (unlikely(ret < 0))
goto __PYX_BAD;
24309 }
else if (reduce == object_reduce || PyErr_Occurred()) {
24312 setstate = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate);
24313 int try_to_replace_setstate;
24315 PyObject *exc = PyErr_Occurred();
24316 if (exc && !__Pyx_IgnoreGivenException(exc, PyExc_Exception)) {
24319 try_to_replace_setstate = 1;
24321 try_to_replace_setstate = __Pyx_setup_reduce_is_named(setstate, __pyx_mstate_global->__pyx_n_u_setstate_cython);
24322 if (unlikely(try_to_replace_setstate < 0)) {
24326 if (try_to_replace_setstate) {
24327 setstate_cython = __Pyx_PyObject_GetAttrStrNoError(type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython);
24328 if (likely(setstate_cython)) {
24329 ret = __Pyx_SetItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate, setstate_cython);
if (unlikely(ret < 0))
goto __PYX_BAD;
24330 ret = __Pyx_DelItemOnTypeDict((PyTypeObject*)type_obj, __pyx_mstate_global->__pyx_n_u_setstate_cython);
if (unlikely(ret < 0))
goto __PYX_BAD;
24331 }
else if (!setstate || PyErr_Occurred()) {
24335 PyType_Modified((PyTypeObject*)type_obj);
24340 if (!PyErr_Occurred()) {
24341 __Pyx_RaiseErrorWithType(
24342 PyExc_RuntimeError,
24343 "Unable to initialize pickling for " __Pyx_FMT_TYPENAME,
24344 (PyTypeObject*)type_obj);
24348#if !CYTHON_USE_PYTYPE_LOOKUP
24349 Py_XDECREF(object_reduce);
24350 Py_XDECREF(object_reduce_ex);
24351 Py_XDECREF(object_getstate);
24352 Py_XDECREF(getstate);
24354 Py_XDECREF(reduce);
24355 Py_XDECREF(reduce_ex);
24356 Py_XDECREF(reduce_cython);
24357 Py_XDECREF(setstate);
24358 Py_XDECREF(setstate_cython);
24363#ifndef __PYX_HAVE_RT_ImportType_3_3_0
24364#define __PYX_HAVE_RT_ImportType_3_3_0
24365static PyTypeObject *__Pyx_ImportType_3_3_0(PyObject *module,
const char *module_name,
const char *class_name,
24366 size_t size,
size_t alignment,
enum __Pyx_ImportType_CheckSize_3_3_0 check_size)
24368 PyObject *result = 0;
24369 Py_ssize_t basicsize;
24370 Py_ssize_t itemsize;
24371#if defined(Py_LIMITED_API) || (defined(CYTHON_COMPILING_IN_LIMITED_API) && CYTHON_COMPILING_IN_LIMITED_API)
24372 PyObject *py_basicsize;
24373 PyObject *py_itemsize;
24375 result = PyObject_GetAttrString(module, class_name);
24378 if (!PyType_Check(result)) {
24379 PyErr_Format(PyExc_TypeError,
24380 "%.200s.%.200s is not a type object",
24381 module_name, class_name);
24384#if !( defined(Py_LIMITED_API) || (defined(CYTHON_COMPILING_IN_LIMITED_API) && CYTHON_COMPILING_IN_LIMITED_API) )
24385 basicsize = ((PyTypeObject *)result)->tp_basicsize;
24386 itemsize = ((PyTypeObject *)result)->tp_itemsize;
24389 return (PyTypeObject *)result;
24391 py_basicsize = PyObject_GetAttrString(result,
"__basicsize__");
24394 basicsize = PyLong_AsSsize_t(py_basicsize);
24395 Py_DECREF(py_basicsize);
24397 if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred())
24399 py_itemsize = PyObject_GetAttrString(result,
"__itemsize__");
24402 itemsize = PyLong_AsSsize_t(py_itemsize);
24403 Py_DECREF(py_itemsize);
24405 if (itemsize == (Py_ssize_t)-1 && PyErr_Occurred())
24409 if (size % alignment) {
24410 alignment = size % alignment;
24412 if (itemsize < (Py_ssize_t)alignment)
24413 itemsize = (Py_ssize_t)alignment;
24415 if ((
size_t)(basicsize + itemsize) < size) {
24416 PyErr_Format(PyExc_ValueError,
24417 "%.200s.%.200s size changed, may indicate binary incompatibility. "
24418 "Expected %zd from C header, got %zd from PyObject",
24419 module_name, class_name, size, basicsize+itemsize);
24422 if (check_size == __Pyx_ImportType_CheckSize_Error_3_3_0 &&
24423 ((
size_t)basicsize > size || (
size_t)(basicsize + itemsize) < size)) {
24424 PyErr_Format(PyExc_ValueError,
24425 "%.200s.%.200s size changed, may indicate binary incompatibility. "
24426 "Expected %zd from C header, got %zd-%zd from PyObject",
24427 module_name, class_name, size, basicsize, basicsize+itemsize);
24430 else if (check_size == __Pyx_ImportType_CheckSize_Warn_3_3_0 && (
size_t)basicsize > size) {
24431 if (PyErr_WarnFormat(NULL, 0,
24432 "%.200s.%.200s size changed, may indicate binary incompatibility. "
24433 "Expected %zd from C header, got %zd from PyObject",
24434 module_name, class_name, size, basicsize) < 0) {
24438 return (PyTypeObject *)result;
24440 Py_XDECREF(result);
24446#if __PYX_LIMITED_VERSION_HEX < 0x030d0000
24447static CYTHON_INLINE
int __Pyx_HasAttr(PyObject *o, PyObject *
n) {
24449 if (unlikely(!PyUnicode_Check(
n))) {
24450 PyErr_SetString(PyExc_TypeError,
24451 "hasattr(): attribute name must be string");
24454 r = __Pyx_PyObject_GetAttrStrNoError(o,
n);
24456 return (unlikely(PyErr_Occurred())) ? -1 : 0;
24465CYTHON_UNUSED
static PyObject *
24466__Pyx_PyList_FromArray(PyObject *
const *src, Py_ssize_t
n) {
24467 PyObject *res = PyList_New(
n);
24468 if (unlikely(res == NULL))
return NULL;
24469 #if CYTHON_COMPILING_IN_CPYTHON
24470 __Pyx_copy_object_array(src, ((PyListObject*)res)->ob_item,
n);
24473 for (i = 0; i <
n; i++) {
24475 if (unlikely(__Pyx_PyList_SET_ITEM(res, i, src[i]) < (0))) {
24485static int __Pyx__Import_GetModule(PyObject *qualname, PyObject **module) {
24486 PyObject *imported_module = PyImport_GetModule(qualname);
24487 if (unlikely(!imported_module)) {
24489 if (PyErr_Occurred()) {
24494 *
module = imported_module;
24497static int __Pyx__Import_Lookup(PyObject *qualname, PyObject *
const *imported_names, Py_ssize_t len_imported_names, PyObject **module) {
24498 PyObject *imported_module;
24499 PyObject *top_level_package_name;
24501 int status, module_found;
24502 Py_ssize_t dot_index;
24503 module_found = __Pyx__Import_GetModule(qualname, &imported_module);
24504 if (unlikely(!module_found || module_found == -1)) {
24506 return module_found;
24508 if (imported_names) {
24509 for (i = 0; i < len_imported_names; i++) {
24510 PyObject *imported_name = imported_names[i];
24511#if __PYX_LIMITED_VERSION_HEX < 0x030d0000
24512 int has_imported_attribute = PyObject_HasAttr(imported_module, imported_name);
24514 int has_imported_attribute = PyObject_HasAttrWithError(imported_module, imported_name);
24515 if (unlikely(has_imported_attribute == -1))
goto error;
24517 if (!has_imported_attribute) {
24521 *
module = imported_module;
24524 dot_index = PyUnicode_FindChar(qualname,
'.', 0, PY_SSIZE_T_MAX, 1);
24525 if (dot_index == -1) {
24526 *
module = imported_module;
24529 if (unlikely(dot_index == -2))
goto error;
24530 top_level_package_name = PyUnicode_Substring(qualname, 0, dot_index);
24531 if (unlikely(!top_level_package_name))
goto error;
24532 Py_DECREF(imported_module);
24533 status = __Pyx__Import_GetModule(top_level_package_name, module);
24534 Py_DECREF(top_level_package_name);
24537 Py_DECREF(imported_module);
24541 Py_DECREF(imported_module);
24545static PyObject *__Pyx__Import(PyObject *name, PyObject *
const *imported_names, Py_ssize_t len_imported_names, PyObject *qualname, PyObject *moddict,
int level) {
24546 PyObject *module = 0;
24547 PyObject *empty_dict = 0;
24548 PyObject *from_list = 0;
24553 module_found = __Pyx__Import_Lookup(qualname, imported_names, len_imported_names, &module);
24554 if (likely(module_found == 1)) {
24556 }
else if (unlikely(module_found == -1)) {
24559 #if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030f00a6
24560 empty_dict = PyFrozenDict_New(NULL);
24562 empty_dict = PyDict_New();
24564 if (unlikely(!empty_dict))
24566 if (imported_names) {
24567 from_list = __Pyx_PyList_FromArray(imported_names, len_imported_names);
24568 if (unlikely(!from_list))
24572 const char* package_sep = strchr(__Pyx_MODULE_NAME,
'.');
24573 if (package_sep != (0)) {
24574 module = PyImport_ImportModuleLevelObject(
24575 name, moddict, empty_dict, from_list, 1);
24576 if (unlikely(!module)) {
24577 if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError)))
24585 module = PyImport_ImportModuleLevelObject(
24586 name, moddict, empty_dict, from_list, level);
24589 Py_XDECREF(from_list);
24590 Py_XDECREF(empty_dict);
24595static PyObject *__Pyx_Import(PyObject *name, PyObject *
const *imported_names, Py_ssize_t len_imported_names, PyObject *qualname,
int level) {
24596 return __Pyx__Import(name, imported_names, len_imported_names, qualname, __pyx_mstate_global->__pyx_d, level);
24600static CYTHON_INLINE PyObject *__Pyx_PyDict_SetDefault(PyObject *d, PyObject *key, PyObject *default_value) {
24602#if __PYX_LIMITED_VERSION_HEX >= 0x030F0000 || (!CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4)
24603 PyDict_SetDefaultRef(d, key, default_value, &value);
24604#elif CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX >= 0x030C0000
24605 PyObject *args[] = {d, key, default_value};
24606 value = PyObject_VectorcallMethod(__pyx_mstate_global->__pyx_n_u_setdefault, args, 3 | PY_VECTORCALL_ARGUMENTS_OFFSET, NULL);
24607#elif CYTHON_COMPILING_IN_LIMITED_API
24608 value = PyObject_CallMethodObjArgs(d, __pyx_mstate_global->__pyx_n_u_setdefault, key, default_value, NULL);
24610 value = PyDict_SetDefault(d, key, default_value);
24611 if (unlikely(!value))
return NULL;
24618#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && PY_VERSION_HEX < 0x030F00a3
24619 static PyObject *__Pyx_PyImport_AddModuleObjectRef(PyObject *name) {
24620 PyObject *module_dict = PyImport_GetModuleDict();
24622 if (PyMapping_GetOptionalItem(module_dict, name, &m) < 0) {
24625 if (m != NULL && PyModule_Check(m)) {
24629 m = PyModule_NewObject(name);
24632 if (PyDict_CheckExact(module_dict)) {
24634 (void)PyDict_SetDefaultRef(module_dict, name, m, &new_m);
24638 if (PyObject_SetItem(module_dict, name, m) != 0) {
24645 static PyObject *__Pyx_PyImport_AddModuleRef(
const char *name) {
24646 if ((PY_VERSION_HEX >= 0x030E0000) && Py_Version >= 0x030E0100) {
24647 return PyImport_AddModuleRef(name);
24649 PyObject *py_name = PyUnicode_FromString(name);
24650 if (!py_name)
return NULL;
24651 PyObject *module = __Pyx_PyImport_AddModuleObjectRef(py_name);
24652 Py_DECREF(py_name);
24655#elif __PYX_LIMITED_VERSION_HEX < 0x030d0000
24656 static PyObject *__Pyx_PyImport_AddModuleRef(
const char *name) {
24657 PyObject *module = PyImport_AddModule(name);
24658 Py_XINCREF(module);
24664static PyObject *__Pyx_FetchSharedCythonABIModule(
void) {
24665 return __Pyx_PyImport_AddModuleRef(__PYX_ABI_MODULE_NAME);
24669static int __Pyx_VerifyCachedType(PyObject *cached_type,
24671 Py_ssize_t expected_basicsize) {
24672 Py_ssize_t basicsize;
24673 if (!PyType_Check(cached_type)) {
24674 PyErr_Format(PyExc_TypeError,
24675 "Shared Cython type %.200s is not a type object", name);
24678 if (expected_basicsize == 0) {
24681#if CYTHON_COMPILING_IN_LIMITED_API && CYTHON_OPAQUE_OBJECTS
24682 if (expected_basicsize < 0) {
24683 basicsize = PyType_GetTypeDataSize((PyTypeObject*)cached_type);
24687 #if CYTHON_COMPILING_IN_LIMITED_API
24688 PyObject *py_basicsize;
24689 py_basicsize = PyObject_GetAttrString(cached_type,
"__basicsize__");
24690 if (unlikely(!py_basicsize))
return -1;
24691 basicsize = PyLong_AsSsize_t(py_basicsize);
24692 Py_DECREF(py_basicsize);
24693 py_basicsize = NULL;
24694 if (unlikely(basicsize == (Py_ssize_t)-1) && PyErr_Occurred())
return -1;
24696 basicsize = ((PyTypeObject*) cached_type)->tp_basicsize;
24699 if ((expected_basicsize >= 0) ?
24700 (basicsize != expected_basicsize) :
24701 (basicsize < -expected_basicsize)) {
24702 PyErr_Format(PyExc_TypeError,
24703 "Shared Cython type %.200s has the wrong size, try recompiling",
24711#if __PYX_LIMITED_VERSION_HEX < 0x030C0000
24712static PyObject* __Pyx_PyType_FromMetaclass(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) {
24713 PyObject *result = __Pyx_PyType_FromModuleAndSpec(module, spec, bases);
24714 if (result && metaclass) {
24715 PyObject *old_tp = (PyObject*)Py_TYPE(result);
24716 Py_INCREF((PyObject*)metaclass);
24717 Py_SET_TYPE(result, metaclass);
24719 PyType_Modified((PyTypeObject*)result);
24724#define __Pyx_PyType_FromMetaclass(me, mo, s, b) PyType_FromMetaclass(me, mo, s, b)
24726static PyTypeObject *__Pyx_FetchCommonTypeFromSpec(PyTypeObject *metaclass, PyObject *module, PyType_Spec *spec, PyObject *bases) {
24727 PyObject *abi_module = NULL, *cached_type = NULL, *abi_module_dict, *new_cached_type, *py_object_name;
24728 int get_item_ref_result;
24729 const char* object_name = strrchr(spec->name,
'.');
24730 object_name = object_name ? object_name+1 : spec->name;
24731 py_object_name = PyUnicode_FromString(object_name);
24732 if (!py_object_name)
return NULL;
24733 abi_module = __Pyx_FetchSharedCythonABIModule();
24734 if (!abi_module)
goto done;
24735 abi_module_dict = PyModule_GetDict(abi_module);
24736 if (!abi_module_dict)
goto done;
24737 get_item_ref_result = __Pyx_PyDict_GetItemRef(abi_module_dict, py_object_name, &cached_type);
24738 if (get_item_ref_result == 1) {
24739 if (__Pyx_VerifyCachedType(
24742 spec->basicsize) < 0) {
24746 }
else if (unlikely(get_item_ref_result == -1)) {
24749 cached_type = __Pyx_PyType_FromMetaclass(
24751 CYTHON_USE_MODULE_STATE ? module : abi_module,
24753 if (unlikely(!cached_type))
goto bad;
24754 new_cached_type = __Pyx_PyDict_SetDefault(abi_module_dict, py_object_name, cached_type);
24755 if (unlikely(new_cached_type != cached_type)) {
24756 if (unlikely(!new_cached_type))
goto bad;
24757 Py_DECREF(cached_type);
24758 cached_type = new_cached_type;
24759 if (__Pyx_VerifyCachedType(
24762 spec->basicsize) < 0) {
24767 Py_DECREF(new_cached_type);
24770 Py_XDECREF(abi_module);
24771 Py_DECREF(py_object_name);
24772 assert(cached_type == NULL || PyType_Check(cached_type));
24773 return (PyTypeObject *) cached_type;
24775 Py_XDECREF(cached_type);
24776 cached_type = NULL;
24781static PyObject* __pyx_CommonTypesMetaclass_get_module(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED
void* context) {
24782 return PyUnicode_FromString(__PYX_ABI_MODULE_NAME);
24784#if __PYX_LIMITED_VERSION_HEX < 0x030A0000
24785static PyObject* __pyx_CommonTypesMetaclass_call(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED PyObject *args, CYTHON_UNUSED PyObject *kwds) {
24786 PyErr_SetString(PyExc_TypeError,
"Cannot instantiate Cython internal types");
24789static int __pyx_CommonTypesMetaclass_setattr(CYTHON_UNUSED PyObject *self, CYTHON_UNUSED PyObject *attr, CYTHON_UNUSED PyObject *value) {
24790 PyErr_SetString(PyExc_TypeError,
"Cython internal types are immutable");
24794static PyGetSetDef __pyx_CommonTypesMetaclass_getset[] = {
24795 {
"__module__", __pyx_CommonTypesMetaclass_get_module, NULL, NULL, NULL},
24798static PyType_Slot __pyx_CommonTypesMetaclass_slots[] = {
24799 {Py_tp_getset, (
void *)__pyx_CommonTypesMetaclass_getset},
24800 #if __PYX_LIMITED_VERSION_HEX < 0x030A0000
24801 {Py_tp_call, (
void*)__pyx_CommonTypesMetaclass_call},
24802 {Py_tp_new, (
void*)__pyx_CommonTypesMetaclass_call},
24803 {Py_tp_setattro, (
void*)__pyx_CommonTypesMetaclass_setattr},
24807static PyType_Spec __pyx_CommonTypesMetaclass_spec = {
24808 __PYX_TYPE_MODULE_PREFIX
"_common_types_metatype",
24811 Py_TPFLAGS_IMMUTABLETYPE |
24812 Py_TPFLAGS_DISALLOW_INSTANTIATION |
24813 Py_TPFLAGS_DEFAULT,
24814 __pyx_CommonTypesMetaclass_slots
24816static int __pyx_CommonTypesMetaclass_init(PyObject *module) {
24817 __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module);
24818 PyObject *bases = PyTuple_Pack(1, &PyType_Type);
24819 if (unlikely(!bases)) {
24822 mstate->__pyx_CommonTypesMetaclassType = __Pyx_FetchCommonTypeFromSpec(NULL, module, &__pyx_CommonTypesMetaclass_spec, bases);
24824 if (unlikely(mstate->__pyx_CommonTypesMetaclassType == NULL)) {
24831#if CYTHON_COMPILING_IN_LIMITED_API
24832static CYTHON_INLINE
int __Pyx__IsSameCyOrCFunctionNoMethod(PyObject *func,
void (*cfunc)(
void)) {
24833 if (__Pyx_CyFunction_Check(func)) {
24834 return __Pyx_as_CyFunctionObject(func)->func_methoddef->ml_meth == (PyCFunction) cfunc;
24835 }
else if (PyCFunction_Check(func)) {
24836 return PyCFunction_GetFunction(func) == (PyCFunction) cfunc;
24840static CYTHON_INLINE
int __Pyx__IsSameCyOrCFunction(PyObject *func,
void (*cfunc)(
void)) {
24841 if ((PyObject*)Py_TYPE(func) == __pyx_mstate_global->__Pyx_CachedMethodType) {
24843 PyObject *newFunc = PyObject_GetAttr(func, __pyx_mstate_global->__pyx_n_u_func);
24844 if (unlikely(!newFunc)) {
24848 result = __Pyx__IsSameCyOrCFunctionNoMethod(newFunc, cfunc);
24849 Py_DECREF(newFunc);
24852 return __Pyx__IsSameCyOrCFunctionNoMethod(func, cfunc);
24855static CYTHON_INLINE
int __Pyx__IsSameCyOrCFunction(PyObject *func,
void (*cfunc)(
void)) {
24856 if (PyMethod_Check(func)) {
24857 func = PyMethod_GET_FUNCTION(func);
24859 return __Pyx_CyOrPyCFunction_Check(func) && __Pyx_CyOrPyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc;
24862static CYTHON_INLINE
void __Pyx__CyFunction_SetClassObj(__pyx_CyFunctionObject*
f, PyObject* classobj) {
24863#if CYTHON_COMPILING_IN_LIMITED_API
24864 __Pyx_Py_XDECREF_SET(
24865 __Pyx__CyFunction_GetClassObj(
f),
24866 ((classobj) ? __Pyx_NewRef(classobj) : NULL));
24868 __Pyx_Py_XDECREF_SET(
24869 ((PyCMethodObject *) (
f))->mm_class,
24870 (PyTypeObject*)((classobj) ? __Pyx_NewRef(classobj) : NULL));
24873static CYTHON_INLINE PyObject *__Pyx_CyFunction_InitDefaults(PyObject *func, PyTypeObject *defaults_type) {
24874 __pyx_CyFunctionObject *m = __Pyx_as_CyFunctionObject(func);
24875 m->defaults = PyObject_CallObject((PyObject*)defaults_type, NULL);
24876 if (unlikely(!m->defaults))
24878 return m->defaults;
24880static CYTHON_INLINE
void __Pyx_CyFunction_SetDefaultsTuple(PyObject *func, PyObject *tuple) {
24881 __pyx_CyFunctionObject *m = __Pyx_as_CyFunctionObject(func);
24882 m->defaults_tuple = tuple;
24885static CYTHON_INLINE
void __Pyx_CyFunction_SetDefaultsKwDict(PyObject *func, PyObject *dict) {
24886 __pyx_CyFunctionObject *m = __Pyx_as_CyFunctionObject(func);
24887 m->defaults_kwdict = dict;
24890static CYTHON_INLINE
void __Pyx_CyFunction_SetAnnotationsDict(PyObject *func, PyObject *dict) {
24891 __pyx_CyFunctionObject *m = __Pyx_as_CyFunctionObject(func);
24892 m->func_annotations = dict;
24897#if !CYTHON_USE_TYPE_SPECS
24899static int __Pyx_call_type_traverse(PyObject *o,
int always_call, visitproc visit,
void *arg) {
24900 if (!always_call) {
24901 PyTypeObject *base = __Pyx_PyObject_GetSlot(o, tp_base, PyTypeObject*);
24902 unsigned long flags = PyType_GetFlags(base);
24903 if (flags & Py_TPFLAGS_HEAPTYPE) {
24907 Py_VISIT((PyObject*)Py_TYPE(o));
24913#if CYTHON_COMPILING_IN_LIMITED_API
24914static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) {
24916 CYTHON_UNUSED_VAR(typ);
24918 return __Pyx_NewRef(func);
24919 #if __PYX_LIMITED_VERSION_HEX >= 0x030C0000
24921 PyObject *args[] = {func, self};
24922 result = PyObject_Vectorcall(__pyx_mstate_global->__Pyx_CachedMethodType, args, 2, NULL);
24925 result = PyObject_CallFunctionObjArgs(__pyx_mstate_global->__Pyx_CachedMethodType, func, self, NULL);
24930static PyObject *__Pyx_PyMethod_New(PyObject *func, PyObject *self, PyObject *typ) {
24931 CYTHON_UNUSED_VAR(typ);
24933 return __Pyx_NewRef(func);
24934 return PyMethod_New(func, self);
24939#if CYTHON_VECTORCALL
24940static PyObject *__Pyx_PyVectorcall_FastCallDict_kw(PyObject *func, __pyx_vectorcallfunc vc, PyObject *
const *args,
size_t nargs, PyObject *kw)
24942 PyObject *res = NULL;
24944 PyObject **newargs;
24945 PyObject **kwvalues;
24947 #if CYTHON_AVOID_BORROWED_REFS
24953 PyObject *key, *value;
24954 unsigned long keys_are_strings;
24955 #if !CYTHON_ASSUME_SAFE_SIZE
24956 Py_ssize_t nkw = PyDict_Size(kw);
24957 if (unlikely(nkw == -1))
return NULL;
24959 Py_ssize_t nkw = PyDict_GET_SIZE(kw);
24961 newargs = (PyObject **)PyMem_Malloc((nargs + (
size_t)nkw) *
sizeof(args[0]));
24962 if (unlikely(newargs == NULL)) {
24966 for (j = 0; j < nargs; j++) newargs[j] = args[j];
24967 kwnames = PyTuple_New(nkw);
24968 if (unlikely(kwnames == NULL)) {
24969 PyMem_Free(newargs);
24972 kwvalues = newargs + nargs;
24975 keys_are_strings = Py_TPFLAGS_UNICODE_SUBCLASS;
24976 while (__Pyx_PyDict_NextRef(kw, &pos, &key, &value)) {
24977 keys_are_strings &=
24978 #if CYTHON_COMPILING_IN_LIMITED_API
24979 PyType_GetFlags(Py_TYPE(key));
24981 Py_TYPE(key)->tp_flags;
24983 #if !CYTHON_ASSUME_SAFE_MACROS
24984 if (unlikely(PyTuple_SetItem(kwnames, i, key) < 0))
goto cleanup;
24986 PyTuple_SET_ITEM(kwnames, i, key);
24988 kwvalues[i] = value;
24991 if (unlikely(!keys_are_strings)) {
24992 PyErr_SetString(PyExc_TypeError,
"keywords must be strings");
24995 res = vc(func, newargs, nargs, kwnames);
24997 #if CYTHON_AVOID_BORROWED_REFS
25000 Py_DECREF(kwnames);
25001 for (i = 0; i < nkw; i++)
25002 Py_DECREF(kwvalues[i]);
25003 PyMem_Free(newargs);
25006static CYTHON_INLINE PyObject *__Pyx_PyVectorcall_FastCallDict(PyObject *func, __pyx_vectorcallfunc vc, PyObject *
const *args,
size_t nargs, PyObject *kw)
25008 Py_ssize_t kw_size =
25009 likely(kw == NULL) ?
25011#if !CYTHON_ASSUME_SAFE_SIZE
25014 PyDict_GET_SIZE(kw);
25016 if (kw_size == 0) {
25017 return vc(func, args, nargs, NULL);
25019#if !CYTHON_ASSUME_SAFE_SIZE
25020 else if (unlikely(kw_size == -1)) {
25024 return __Pyx_PyVectorcall_FastCallDict_kw(func, vc, args, nargs, kw);
25030__Pyx_CyFunction_get_doc_locked(__pyx_CyFunctionObject *op)
25032 if (unlikely(op->func_doc == NULL)) {
25033#if CYTHON_COMPILING_IN_LIMITED_API
25034 const char *doc = op->func_methoddef->ml_doc;
25036 const char *doc = ((PyCFunctionObject*)op)->m_ml->ml_doc;
25039 op->func_doc = PyUnicode_FromString(doc);
25040 if (unlikely(op->func_doc == NULL))
25043 Py_INCREF(Py_None);
25047 Py_INCREF(op->func_doc);
25048 return op->func_doc;
25051__Pyx_CyFunction_get_doc(PyObject *op_in,
void *closure) {
25053 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25054 CYTHON_UNUSED_VAR(closure);
25055 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25056 result = __Pyx_CyFunction_get_doc_locked(op);
25057 __Pyx_END_CRITICAL_SECTION();
25061__Pyx_CyFunction_set_doc(PyObject *op_in, PyObject *value,
void *context)
25063 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25064 CYTHON_UNUSED_VAR(context);
25065 if (value == NULL) {
25069 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25070 __Pyx_Py_XDECREF_SET(op->func_doc, value);
25071 __Pyx_END_CRITICAL_SECTION();
25075__Pyx_CyFunction_get_name_locked(__pyx_CyFunctionObject *op)
25077 if (unlikely(op->func_name == NULL)) {
25078#if CYTHON_COMPILING_IN_LIMITED_API
25079 const char *name = op->func_methoddef->ml_name;
25081 const char *name = ((PyCFunctionObject*)op)->m_ml->ml_name;
25083 op->func_name = PyUnicode_InternFromString(name);
25084 if (unlikely(op->func_name == NULL))
25087 Py_INCREF(op->func_name);
25088 return op->func_name;
25091__Pyx_CyFunction_get_name(PyObject *op,
void *context)
25093 PyObject *result = NULL;
25094 CYTHON_UNUSED_VAR(context);
25095 __Pyx_BEGIN_CRITICAL_SECTION(op);
25096 result = __Pyx_CyFunction_get_name_locked(__Pyx_as_CyFunctionObject(op));
25097 __Pyx_END_CRITICAL_SECTION();
25101__Pyx_CyFunction_set_name(PyObject *op_in, PyObject *value,
void *context)
25103 CYTHON_UNUSED_VAR(context);
25104 if (unlikely(value == NULL || !PyUnicode_Check(value))) {
25105 PyErr_SetString(PyExc_TypeError,
25106 "__name__ must be set to a string object");
25109 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25111 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25112 __Pyx_Py_XDECREF_SET(op->func_name, value);
25113 __Pyx_END_CRITICAL_SECTION();
25117__Pyx_CyFunction_get_qualname(PyObject *op_in,
void *context)
25119 CYTHON_UNUSED_VAR(context);
25120 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25122 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25123 Py_INCREF(op->func_qualname);
25124 result = op->func_qualname;
25125 __Pyx_END_CRITICAL_SECTION();
25129__Pyx_CyFunction_set_qualname(PyObject *op_in, PyObject *value,
void *context)
25131 CYTHON_UNUSED_VAR(context);
25132 if (unlikely(value == NULL || !PyUnicode_Check(value))) {
25133 PyErr_SetString(PyExc_TypeError,
25134 "__qualname__ must be set to a string object");
25137 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25139 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25140 __Pyx_Py_XDECREF_SET(op->func_qualname, value);
25141 __Pyx_END_CRITICAL_SECTION();
25144#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
25146__Pyx_CyFunction_get_dict(__pyx_CyFunctionObject *op,
void *context)
25148 CYTHON_UNUSED_VAR(context);
25149 if (unlikely(op->func_dict == NULL)) {
25150 op->func_dict = PyDict_New();
25151 if (unlikely(op->func_dict == NULL))
25154 Py_INCREF(op->func_dict);
25155 return op->func_dict;
25159__Pyx_CyFunction_get_globals(PyObject *op_in,
void *context)
25161 CYTHON_UNUSED_VAR(context);
25162 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25163 Py_INCREF(op->func_globals);
25164 return op->func_globals;
25167__Pyx_CyFunction_get_closure(PyObject *op,
void *context)
25169 CYTHON_UNUSED_VAR(op);
25170 CYTHON_UNUSED_VAR(context);
25171 Py_INCREF(Py_None);
25175__Pyx_CyFunction_get_code(PyObject *op_in,
void *context)
25177 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25178 PyObject* result = (op->func_code) ? op->func_code : Py_None;
25179 CYTHON_UNUSED_VAR(context);
25184__Pyx_CyFunction_init_defaults(__pyx_CyFunctionObject *op, PyObject *op_obj) {
25186 PyObject *res = op->defaults_getter(op_obj);
25187 if (unlikely(!res))
25189 #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
25190 op->defaults_tuple = PyTuple_GET_ITEM(res, 0);
25191 Py_INCREF(op->defaults_tuple);
25192 op->defaults_kwdict = PyTuple_GET_ITEM(res, 1);
25193 Py_INCREF(op->defaults_kwdict);
25195 op->defaults_tuple = __Pyx_PySequence_ITEM(res, 0);
25196 if (unlikely(!op->defaults_tuple)) result = -1;
25198 op->defaults_kwdict = __Pyx_PySequence_ITEM(res, 1);
25199 if (unlikely(!op->defaults_kwdict)) result = -1;
25206__Pyx_CyFunction_set_defaults(PyObject *op_in, PyObject* value,
void *context) {
25207 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25208 CYTHON_UNUSED_VAR(context);
25211 }
else if (unlikely(value != Py_None && !PyTuple_Check(value))) {
25212 PyErr_SetString(PyExc_TypeError,
25213 "__defaults__ must be set to a tuple object");
25216 PyErr_WarnEx(PyExc_RuntimeWarning,
"changes to cyfunction.__defaults__ will not "
25217 "currently affect the values used in function calls", 1);
25219 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25220 __Pyx_Py_XDECREF_SET(op->defaults_tuple, value);
25221 __Pyx_END_CRITICAL_SECTION();
25225__Pyx_CyFunction_get_defaults_locked(PyObject *op_in) {
25226 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25227 PyObject* result = op->defaults_tuple;
25228 if (unlikely(!result)) {
25229 if (op->defaults_getter) {
25230 if (unlikely(__Pyx_CyFunction_init_defaults(op, op_in) < 0))
return NULL;
25231 result = op->defaults_tuple;
25240__Pyx_CyFunction_get_defaults(PyObject *op,
void *context) {
25241 PyObject* result = NULL;
25242 CYTHON_UNUSED_VAR(context);
25243 __Pyx_BEGIN_CRITICAL_SECTION(op);
25244 result = __Pyx_CyFunction_get_defaults_locked(op);
25245 __Pyx_END_CRITICAL_SECTION();
25249__Pyx_CyFunction_set_kwdefaults(PyObject *op_in, PyObject* value,
void *context) {
25250 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25251 CYTHON_UNUSED_VAR(context);
25254 }
else if (unlikely(value != Py_None && !PyDict_Check(value))) {
25255 PyErr_SetString(PyExc_TypeError,
25256 "__kwdefaults__ must be set to a dict object");
25259 PyErr_WarnEx(PyExc_RuntimeWarning,
"changes to cyfunction.__kwdefaults__ will not "
25260 "currently affect the values used in function calls", 1);
25262 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25263 __Pyx_Py_XDECREF_SET(op->defaults_kwdict, value);
25264 __Pyx_END_CRITICAL_SECTION();
25268__Pyx_CyFunction_get_kwdefaults_locked(PyObject *op_in) {
25269 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25270 PyObject* result = op->defaults_kwdict;
25271 if (unlikely(!result)) {
25272 if (op->defaults_getter) {
25273 if (unlikely(__Pyx_CyFunction_init_defaults(op, op_in) < 0))
return NULL;
25274 result = op->defaults_kwdict;
25283__Pyx_CyFunction_get_kwdefaults(PyObject *op,
void *context) {
25285 CYTHON_UNUSED_VAR(context);
25286 __Pyx_BEGIN_CRITICAL_SECTION(op);
25287 result = __Pyx_CyFunction_get_kwdefaults_locked(op);
25288 __Pyx_END_CRITICAL_SECTION();
25291static int __Pyx_CyFunction_set_annotate_in_dict_if_exists(PyObject *op_in, PyObject *value);
25293__Pyx_CyFunction_set_annotations(PyObject *op_in, PyObject* value,
void *context) {
25294 CYTHON_UNUSED_VAR(context);
25295 if (!value || value == Py_None) {
25297 }
else if (unlikely(!PyDict_Check(value))) {
25298 PyErr_SetString(PyExc_TypeError,
25299 "__annotations__ must be set to a dict object");
25302 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25304 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25305 __Pyx_Py_XDECREF_SET(op->func_annotations, value);
25306 __Pyx_END_CRITICAL_SECTION();
25307 if (unlikely(__Pyx_CyFunction_set_annotate_in_dict_if_exists(op_in, Py_None) < 0))
return -1;
25311__Pyx_CyFunction_get_dict_if_exists(PyObject *op_in, PyObject **dict) {
25314#if CYTHON_COMPILING_IN_PYPY
25315 *dict = PyObject_GenericGetDict(op_in, NULL);
25316#elif CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX < 0x030C0000
25317 *dict = __Pyx_as_CyFunctionObject(op_in)->func_dict;
25319 PyObject **dictptr = _PyObject_GetDictPtr(op_in);
25320 *dict = likely(dictptr) ? *dictptr : NULL;
25322 return *dict ? 1 : 0;
25325__Pyx_CyFunction_get_annotate_from_dict_if_exists(PyObject *op_in, PyObject **annotate) {
25329 dict_found = __Pyx_CyFunction_get_dict_if_exists(op_in, &dict);
25330 if (!dict_found)
return 0;
25331 return __Pyx_PyDict_GetItemRef(dict, __pyx_mstate_global->__pyx_n_u_annotate, annotate);
25334__Pyx_CyFunction_set_annotate_in_dict_if_exists(PyObject *op_in, PyObject *value) {
25337 dict_found = __Pyx_CyFunction_get_dict_if_exists(op_in, &dict);
25338 if (!dict_found)
return 0;
25340 return PyDict_SetItem(dict, __pyx_mstate_global->__pyx_n_u_annotate, value);
25342#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d0000
25343 return PyDict_Pop(dict, __pyx_mstate_global->__pyx_n_u_annotate, NULL);
25345 int result = PyDict_Contains(dict, __pyx_mstate_global->__pyx_n_u_annotate);
25347 result = PyDict_DelItem(dict, __pyx_mstate_global->__pyx_n_u_annotate);
25354__Pyx_CyFunction_set_annotate_in_dict(PyObject *op_in, PyObject *value) {
25357#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
25358 dict = __Pyx_CyFunction_get_dict(__Pyx_as_CyFunctionObject(op_in), NULL);
25360 dict = PyObject_GenericGetDict(op_in, NULL);
25362 if (unlikely(!dict))
return -1;
25363 result = PyDict_SetItem(dict, __pyx_mstate_global->__pyx_n_u_annotate, value);
25368__Pyx_CyFunction_get_annotations_locked(__pyx_CyFunctionObject *op) {
25369 PyObject* result = op->func_annotations;
25370 if (unlikely(!result)) {
25371 result = PyDict_New();
25372 if (unlikely(!result))
return NULL;
25373 op->func_annotations = result;
25379__Pyx_CyFunction_get_annotations(PyObject *op_in,
void *context) {
25380 PyObject *annotate = NULL;
25381 PyObject *result = NULL;
25382 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25383 CYTHON_UNUSED_VAR(context);
25384 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25385 result = __Pyx_XNewRef(op->func_annotations);
25386 __Pyx_END_CRITICAL_SECTION();
25387 if (result)
return result;
25388 if (unlikely(__Pyx_CyFunction_get_annotate_from_dict_if_exists(op_in, &annotate) < 0))
return NULL;
25389 if (!annotate || annotate == Py_None) {
25390 Py_XDECREF(annotate);
25391 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25392 result = __Pyx_CyFunction_get_annotations_locked(op);
25393 __Pyx_END_CRITICAL_SECTION();
25396 PyObject *format = PyLong_FromLong(1L);
25397 if (likely(format)) {
25398 if (!Py_EnterRecursiveCall(
" cyfunction __annotations__.__get__")) {
25399 result = __Pyx_PyObject_CallOneArg(annotate, format);
25400 Py_LeaveRecursiveCall();
25404 Py_DECREF(annotate);
25405 if (unlikely(!result))
return NULL;
25406 if (unlikely(!PyDict_Check(result))) {
25407 PyErr_SetString(PyExc_TypeError,
"__annotate__ must return a dict");
25411 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25412 __Pyx_Py_XDECREF_SET(op->func_annotations, __Pyx_NewRef(result));
25413 __Pyx_END_CRITICAL_SECTION();
25416static PyObject *__Pyx_CyFunction_annotate_impl(PyObject *self, PyObject *arg) {
25417 CYTHON_UNUSED_VAR(arg);
25418 if (unlikely(!self)) {
25419 PyErr_SetString(PyExc_SystemError,
"cython __annotate__ called without 'self' argument");
25423 if (Py_EnterRecursiveCall(
" in cyfunction annotate")) {
25426 result = __Pyx_CyFunction_get_annotations(self, NULL);
25427 Py_LeaveRecursiveCall();
25431__Pyx_CyFunction_get_annotate(PyObject *op_in,
void *context);
25433__Pyx_CyFunction_set_annotate(PyObject *op_in, PyObject* value,
void *context) {
25434 CYTHON_UNUSED_VAR(context);
25435 if (value == NULL) {
25436 PyErr_SetString(PyExc_TypeError,
"__annotate__ cannot be deleted");
25439 if (unlikely(value != Py_None && !PyCallable_Check(value))) {
25440 PyErr_SetString(PyExc_TypeError,
"__annotate__ must be callable or None");
25443 if (unlikely(__Pyx_TypeCheck(value, &PyCFunction_Type))) {
25444#if !CYTHON_ASSUME_SAFE_MACROS && !CYTHON_COMPILING_IN_PYPY
25445 PyCFunction cfunction = PyCFunction_GetFunction(value);
25446 if (unlikely(!cfunction))
return -1;
25447 PyObject *value_self = PyCFunction_GetSelf(value);
25448 if (unlikely(!value_self && PyErr_Occurred()))
return -1;
25450 PyCFunction cfunction = PyCFunction_GET_FUNCTION(value);
25451 PyObject *value_self = PyCFunction_GET_SELF(value);
25453 if (cfunction == __Pyx_CyFunction_annotate_impl && value_self == op_in) {
25454 return __Pyx_CyFunction_set_annotate_in_dict_if_exists(op_in, NULL);
25457 if (value != Py_None) {
25458 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25459 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25460 Py_CLEAR(op->func_annotations);
25461 __Pyx_END_CRITICAL_SECTION();
25463 return __Pyx_CyFunction_set_annotate_in_dict(op_in, value);
25465#if __PYX_LIMITED_VERSION_HEX < 0x030B0000
25467__Pyx_CyFunction_get_is_coroutine_value(__pyx_CyFunctionObject *op) {
25468 int is_coroutine = op->flags & __Pyx_CYFUNCTION_COROUTINE;
25469 if (is_coroutine) {
25470 PyObject *is_coroutine_value, *module, *fromlist, *marker = __pyx_mstate_global->__pyx_n_u_is_coroutine;
25471 fromlist = PyList_New(1);
25472 if (unlikely(!fromlist))
return NULL;
25474#if CYTHON_ASSUME_SAFE_MACROS
25475 PyList_SET_ITEM(fromlist, 0, marker);
25477 if (unlikely(PyList_SetItem(fromlist, 0, marker) < 0)) {
25478 Py_DECREF(fromlist);
25482 module = PyImport_ImportModuleLevelObject(__pyx_mstate_global->__pyx_n_u_asyncio_coroutines, NULL, NULL, fromlist, 0);
25483 Py_DECREF(fromlist);
25484 if (unlikely(!module)) {
25485 goto ignore_or_error;
25487 is_coroutine_value = __Pyx_PyObject_GetAttrStr(module, marker);
25489 if (likely(is_coroutine_value)) {
25490 return is_coroutine_value;
25493 if (!__Pyx_IgnoreException(PyExc_Exception)) {
25497 return __Pyx_PyBool_FromLong(is_coroutine);
25500__Pyx_CyFunction_get_is_coroutine(PyObject *op_in,
void *context) {
25501 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25503 CYTHON_UNUSED_VAR(context);
25504 if (op->func_is_coroutine) {
25505 return __Pyx_NewRef(op->func_is_coroutine);
25507 result = __Pyx_CyFunction_get_is_coroutine_value(op);
25508 if (unlikely(!result))
25510 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25511 if (op->func_is_coroutine) {
25513 result = __Pyx_NewRef(op->func_is_coroutine);
25515 op->func_is_coroutine = __Pyx_NewRef(result);
25517 __Pyx_END_CRITICAL_SECTION();
25521static void __Pyx_CyFunction_raise_argument_count_error(PyObject *func,
const char* message, Py_ssize_t size) {
25522#if CYTHON_COMPILING_IN_LIMITED_API
25523 PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL);
25524 if (!py_name)
return;
25525 PyErr_Format(PyExc_TypeError,
25526 "%.200S() %s (%" CYTHON_FORMAT_SSIZE_T
"d given)",
25527 py_name, message, size);
25528 Py_DECREF(py_name);
25530 const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name;
25531 PyErr_Format(PyExc_TypeError,
25532 "%.200s() %s (%" CYTHON_FORMAT_SSIZE_T
"d given)",
25533 name, message, size);
25536static void __Pyx_CyFunction_raise_type_error(PyObject *func,
const char* message) {
25537#if CYTHON_COMPILING_IN_LIMITED_API
25538 PyObject *py_name = __Pyx_CyFunction_get_name(func, NULL);
25539 if (!py_name)
return;
25540 PyErr_Format(PyExc_TypeError,
25543 Py_DECREF(py_name);
25545 const char* name = ((PyCFunctionObject*)func)->m_ml->ml_name;
25546 PyErr_Format(PyExc_TypeError,
25551#if CYTHON_COMPILING_IN_LIMITED_API
25553__Pyx_CyFunction_get_module(PyObject *op_in,
void *context) {
25554 CYTHON_UNUSED_VAR(context);
25555 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25556 Py_INCREF(op->func_module);
25557 return op->func_module;
25560__Pyx_CyFunction_set_module(PyObject *op_in, PyObject* value,
void *context) {
25561 CYTHON_UNUSED_VAR(context);
25562 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25563 if (value == NULL) {
25567 PyObject *old = op->func_module;
25568 op->func_module = value;
25573static PyGetSetDef __pyx_CyFunction_getsets[] = {
25574 {
"func_doc", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0},
25575 {
"__doc__", (getter)__Pyx_CyFunction_get_doc, (setter)__Pyx_CyFunction_set_doc, 0, 0},
25576 {
"func_name", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0},
25577 {
"__name__", (getter)__Pyx_CyFunction_get_name, (setter)__Pyx_CyFunction_set_name, 0, 0},
25578 {
"__qualname__", (getter)__Pyx_CyFunction_get_qualname, (setter)__Pyx_CyFunction_set_qualname, 0, 0},
25579#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
25580 {
"func_dict", (getter)__Pyx_CyFunction_get_dict, (setter)PyObject_GenericSetDict, 0, 0},
25581 {
"__dict__", (getter)__Pyx_CyFunction_get_dict, (setter)PyObject_GenericSetDict, 0, 0},
25583 {
"func_dict", (getter)PyObject_GenericGetDict, (setter)PyObject_GenericSetDict, 0, 0},
25584 {
"__dict__", (getter)PyObject_GenericGetDict, (setter)PyObject_GenericSetDict, 0, 0},
25586 {
"func_globals", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0},
25587 {
"__globals__", (getter)__Pyx_CyFunction_get_globals, 0, 0, 0},
25588 {
"func_closure", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0},
25589 {
"__closure__", (getter)__Pyx_CyFunction_get_closure, 0, 0, 0},
25590 {
"func_code", (getter)__Pyx_CyFunction_get_code, 0, 0, 0},
25591 {
"__code__", (getter)__Pyx_CyFunction_get_code, 0, 0, 0},
25592 {
"func_defaults", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0},
25593 {
"__defaults__", (getter)__Pyx_CyFunction_get_defaults, (setter)__Pyx_CyFunction_set_defaults, 0, 0},
25594 {
"__kwdefaults__", (getter)__Pyx_CyFunction_get_kwdefaults, (setter)__Pyx_CyFunction_set_kwdefaults, 0, 0},
25595 {
"__annotations__", (getter)__Pyx_CyFunction_get_annotations, (setter)__Pyx_CyFunction_set_annotations, 0, 0},
25596 {
"__annotate__", (getter)__Pyx_CyFunction_get_annotate, (setter)__Pyx_CyFunction_set_annotate, 0, 0},
25597#if __PYX_LIMITED_VERSION_HEX < 0x030B0000
25598 {
"_is_coroutine", (getter)__Pyx_CyFunction_get_is_coroutine, 0, 0, 0},
25600#if CYTHON_COMPILING_IN_LIMITED_API
25601 {
"__module__", (getter)__Pyx_CyFunction_get_module, (setter)__Pyx_CyFunction_set_module, 0, 0},
25605static PyMemberDef __pyx_CyFunction_members[] = {
25606#if !CYTHON_COMPILING_IN_LIMITED_API
25607 {
"__module__", T_OBJECT, offsetof(PyCFunctionObject, m_module), 0, 0},
25609#if PY_VERSION_HEX < 0x030C0000 || CYTHON_COMPILING_IN_LIMITED_API
25610 {
"__dictoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_dict),
25611 __PYX_SHARED_RELATIVE_OFFSET | READONLY, 0},
25613#if CYTHON_VECTORCALL
25614#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY
25615 {
"__vectorcalloffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_vectorcall),
25616 __PYX_SHARED_RELATIVE_OFFSET | READONLY, 0},
25618 {
"__vectorcalloffset__", T_PYSSIZET, offsetof(PyCFunctionObject, vectorcall), READONLY, 0},
25620#if CYTHON_COMPILING_IN_LIMITED_API
25621 {
"__weaklistoffset__", T_PYSSIZET, offsetof(__pyx_CyFunctionObject, func_weakreflist),
25622 __PYX_SHARED_RELATIVE_OFFSET | READONLY, 0},
25624 {
"__weaklistoffset__", T_PYSSIZET, offsetof(PyCFunctionObject, m_weakreflist), READONLY, 0},
25630__Pyx_CyFunction_reduce(PyObject *m_in, PyObject *args)
25632 PyObject *result = NULL;
25633 __pyx_CyFunctionObject *m = __Pyx_as_CyFunctionObject(m_in);
25634 CYTHON_UNUSED_VAR(args);
25635 __Pyx_BEGIN_CRITICAL_SECTION(m_in);
25636 Py_INCREF(m->func_qualname);
25637 result = m->func_qualname;
25638 __Pyx_END_CRITICAL_SECTION();
25641static PyMethodDef __pyx_CyFunction_methods[] = {
25642 {
"__annotate_cython__", __Pyx_CyFunction_annotate_impl, METH_O,
25643 "Placeholder __annotate__ function to allow 'functools.wraps' to work "
25644 "on Cython functions."},
25645 {
"__reduce__", (PyCFunction)__Pyx_CyFunction_reduce, METH_NOARGS, 0},
25649__Pyx_CyFunction_get_annotate(PyObject *op_in,
void *context) {
25650 PyObject *annotate = NULL;
25651 CYTHON_UNUSED_VAR(context);
25652 if (unlikely(__Pyx_CyFunction_get_annotate_from_dict_if_exists(op_in, &annotate) < 0))
return NULL;
25653 if (annotate)
return annotate;
25654 PyObject *method = PyCFunction_New(
25655 &__pyx_CyFunction_methods[0],
25659#if CYTHON_COMPILING_IN_LIMITED_API
25660#define __Pyx_CyFunction_weakreflist(cyfunc) ((cyfunc)->func_weakreflist)
25662#define __Pyx_CyFunction_weakreflist(cyfunc) (((PyCFunctionObject*)cyfunc)->m_weakreflist)
25664static PyObject *__Pyx_CyFunction_Init(PyObject *op_in,
25665 PyMethodDef *ml,
int flags, PyObject* qualname,
25666 PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) {
25667 __pyx_CyFunctionObject* op = __Pyx_as_CyFunctionObject(op_in);
25668#if !CYTHON_COMPILING_IN_LIMITED_API
25669 PyCFunctionObject *cf = (PyCFunctionObject*) op;
25671 if (unlikely(op == NULL))
25673#if CYTHON_COMPILING_IN_LIMITED_API
25674 op->func_methoddef = ml;
25676 op->func_module =
module;
25679 __Pyx_CyFunction_weakreflist(op) = NULL;
25680#if !CYTHON_COMPILING_IN_LIMITED_API
25682 cf->m_self = (PyObject *) op;
25684 Py_XINCREF(closure);
25685 op->func_closure = closure;
25686#if !CYTHON_COMPILING_IN_LIMITED_API
25687 Py_XINCREF(module);
25688 cf->m_module =
module;
25690#if PY_VERSION_HEX < 0x030C0000 || CYTHON_COMPILING_IN_LIMITED_API
25691 op->func_dict = NULL;
25693 op->func_name = NULL;
25694 Py_INCREF(qualname);
25695 op->func_qualname = qualname;
25696 op->func_doc = NULL;
25697#if CYTHON_COMPILING_IN_LIMITED_API
25698 op->func_classobj = NULL;
25700 ((PyCMethodObject*)op)->mm_class = NULL;
25702 op->func_globals = globals;
25703 Py_INCREF(op->func_globals);
25705 op->func_code = code;
25706 op->defaults = NULL;
25707 op->defaults_tuple = NULL;
25708 op->defaults_kwdict = NULL;
25709 op->defaults_getter = NULL;
25710 op->func_annotations = NULL;
25711#if __PYX_LIMITED_VERSION_HEX < 0x030B0000
25712 op->func_is_coroutine = NULL;
25714#if CYTHON_VECTORCALL
25715 switch (ml->ml_flags & (METH_VARARGS | METH_FASTCALL | METH_NOARGS | METH_O | METH_KEYWORDS | METH_METHOD)) {
25717 __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_NOARGS;
25720 __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_O;
25722 case METH_METHOD | METH_FASTCALL | METH_KEYWORDS:
25723 __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD;
25725 case METH_FASTCALL | METH_KEYWORDS:
25726 __Pyx_CyFunction_func_vectorcall(op) = __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS;
25728 case METH_VARARGS | METH_KEYWORDS:
25729 __Pyx_CyFunction_func_vectorcall(op) = NULL;
25732 PyErr_SetString(PyExc_SystemError,
"Bad call flags for CyFunction");
25739static int __Pyx__CyFunction_clear(__pyx_CyFunctionObject *m)
25741 Py_CLEAR(m->func_closure);
25742#if CYTHON_COMPILING_IN_LIMITED_API
25743 Py_CLEAR(m->func_module);
25745 Py_CLEAR(((PyCFunctionObject*)m)->m_module);
25747#if PY_VERSION_HEX < 0x030C0000 || CYTHON_COMPILING_IN_LIMITED_API
25748 Py_CLEAR(m->func_dict);
25749#elif PY_VERSION_HEX < 0x030d0000
25750 _PyObject_ClearManagedDict((PyObject*)m);
25752 PyObject_ClearManagedDict((PyObject*)m);
25754 Py_CLEAR(m->func_name);
25755 Py_CLEAR(m->func_qualname);
25756 Py_CLEAR(m->func_doc);
25757 Py_CLEAR(m->func_globals);
25758 Py_CLEAR(m->func_code);
25759#if CYTHON_COMPILING_IN_LIMITED_API
25760 Py_CLEAR(m->func_classobj);
25763 PyObject *cls = (PyObject*) ((PyCMethodObject *) (m))->mm_class;
25764 ((PyCMethodObject *) (m))->mm_class = NULL;
25768 Py_CLEAR(m->defaults_tuple);
25769 Py_CLEAR(m->defaults_kwdict);
25770 Py_CLEAR(m->func_annotations);
25771#if __PYX_LIMITED_VERSION_HEX < 0x030B0000
25772 Py_CLEAR(m->func_is_coroutine);
25774 Py_CLEAR(m->defaults);
25778__Pyx_CyFunction_clear(PyObject *m)
25780 return __Pyx__CyFunction_clear(__Pyx_as_CyFunctionObject(m));
25782static void __Pyx__CyFunction_dealloc(PyObject *m)
25784 __pyx_CyFunctionObject *cyfunc = __Pyx_as_CyFunctionObject(m);
25785 if (__Pyx_CyFunction_weakreflist(cyfunc) != NULL)
25786 PyObject_ClearWeakRefs(m);
25787 __Pyx__CyFunction_clear(cyfunc);
25788 __Pyx_PyHeapTypeObject_GC_Del(m);
25790static void __Pyx_CyFunction_dealloc(PyObject *m)
25792 PyObject_GC_UnTrack(m);
25793 __Pyx__CyFunction_dealloc(m);
25795static int __Pyx_CyFunction_traverse(PyObject *m_in, visitproc visit,
void *arg)
25797 __pyx_CyFunctionObject *m = __Pyx_as_CyFunctionObject(m_in);
25799 int e = __Pyx_call_type_traverse(m_in, 1, visit, arg);
25802 Py_VISIT(m->func_closure);
25803#if CYTHON_COMPILING_IN_LIMITED_API
25804 Py_VISIT(m->func_module);
25806 Py_VISIT(((PyCFunctionObject*)m)->m_module);
25808#if PY_VERSION_HEX < 0x030C0000 || CYTHON_COMPILING_IN_LIMITED_API
25809 Py_VISIT(m->func_dict);
25813#if PY_VERSION_HEX < 0x030d0000
25814 _PyObject_VisitManagedDict
25816 PyObject_VisitManagedDict
25818 ((PyObject*)m, visit, arg);
25819 if (e != 0)
return e;
25822 __Pyx_VISIT_CONST(m->func_name);
25823 __Pyx_VISIT_CONST(m->func_qualname);
25824 Py_VISIT(m->func_doc);
25825 Py_VISIT(m->func_globals);
25826 __Pyx_VISIT_CONST(m->func_code);
25827 Py_VISIT(__Pyx__CyFunction_GetClassObj(m));
25828 Py_VISIT(m->defaults_tuple);
25829 Py_VISIT(m->defaults_kwdict);
25830 Py_VISIT(m->func_annotations);
25831#if __PYX_LIMITED_VERSION_HEX < 0x030B0000
25832 Py_VISIT(m->func_is_coroutine);
25834 Py_VISIT(m->defaults);
25838__Pyx_CyFunction_repr(PyObject *op_in)
25840 __pyx_CyFunctionObject *op = __Pyx_as_CyFunctionObject(op_in);
25842 __Pyx_BEGIN_CRITICAL_SECTION(op_in);
25843 repr = PyUnicode_FromFormat(
"<cyfunction %U at %p>",
25844 op->func_qualname, (
void *)op);
25845 __Pyx_END_CRITICAL_SECTION();
25848static PyObject * __Pyx_CyFunction_CallMethod(PyObject *func, PyObject *self, PyObject *arg, PyObject *kw) {
25849#if CYTHON_COMPILING_IN_LIMITED_API
25850 __pyx_CyFunctionObject *cyfunc = __Pyx_as_CyFunctionObject(func);
25851 PyCFunction meth = cyfunc->func_methoddef->ml_meth;
25852 int flags = cyfunc->func_methoddef->ml_flags;
25854 PyCFunctionObject*
f = (PyCFunctionObject*)func;
25855 PyCFunction meth =
f->m_ml->ml_meth;
25856 int flags =
f->m_ml->ml_flags;
25859 switch (flags & (METH_VARARGS | METH_KEYWORDS | METH_NOARGS | METH_O)) {
25861 if (likely(kw == NULL || PyDict_Size(kw) == 0))
25862 return (*meth)(self, arg);
25864 case METH_VARARGS | METH_KEYWORDS:
25865 return (*(PyCFunctionWithKeywords)(
void(*)(
void))meth)(self, arg, kw);
25867 if (likely(kw == NULL || PyDict_Size(kw) == 0)) {
25868#if CYTHON_ASSUME_SAFE_SIZE
25869 size = PyTuple_GET_SIZE(arg);
25871 size = PyTuple_Size(arg);
25872 if (unlikely(size < 0))
return NULL;
25874 if (likely(size == 0))
25875 return (*meth)(self, NULL);
25876 __Pyx_CyFunction_raise_argument_count_error(
25878 "takes no arguments", size);
25883 if (likely(kw == NULL || PyDict_Size(kw) == 0)) {
25884#if CYTHON_ASSUME_SAFE_SIZE
25885 size = PyTuple_GET_SIZE(arg);
25887 size = PyTuple_Size(arg);
25888 if (unlikely(size < 0))
return NULL;
25890 if (likely(size == 1)) {
25891 PyObject *result, *arg0;
25892 #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
25893 arg0 = PyTuple_GET_ITEM(arg, 0);
25895 arg0 = __Pyx_PySequence_ITEM(arg, 0);
if (unlikely(!arg0))
return NULL;
25897 result = (*meth)(self, arg0);
25898 #if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS)
25903 __Pyx_CyFunction_raise_argument_count_error(
25905 "takes exactly one argument", size);
25910 PyErr_SetString(PyExc_SystemError,
"Bad call flags for CyFunction");
25913 __Pyx_CyFunction_raise_type_error(
25914 func,
"takes no keyword arguments");
25917static CYTHON_INLINE PyObject *__Pyx_CyFunction_Call(PyObject *func, PyObject *arg, PyObject *kw) {
25919 result = __Pyx_CyFunction_CallMethod(func, func, arg, kw);
25922static PyObject *__Pyx_CyFunction_CallAsMethod(PyObject *func, PyObject *args, PyObject *kw) {
25924 __pyx_CyFunctionObject *cyfunc = __Pyx_as_CyFunctionObject(func);
25925#if CYTHON_VECTORCALL
25926 __pyx_vectorcallfunc vc = __Pyx_CyFunction_func_vectorcall(cyfunc);
25928#if CYTHON_ASSUME_SAFE_MACROS && CYTHON_ASSUME_SAFE_SIZE
25929 return __Pyx_PyVectorcall_FastCallDict(func, vc, &PyTuple_GET_ITEM(args, 0), (
size_t)PyTuple_GET_SIZE(args), kw);
25931 (void) &__Pyx_PyVectorcall_FastCallDict;
25932 return PyVectorcall_Call(func, args, kw);
25936 if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) {
25938 PyObject *new_args;
25940#if CYTHON_ASSUME_SAFE_SIZE
25941 argc = PyTuple_GET_SIZE(args);
25943 argc = PyTuple_Size(args);
25944 if (unlikely(argc < 0))
return NULL;
25946 new_args = PyTuple_GetSlice(args, 1, argc);
25947 if (unlikely(!new_args))
25949 self = PyTuple_GetItem(args, 0);
25950 if (unlikely(!self)) {
25951 Py_DECREF(new_args);
25952 PyErr_Format(PyExc_TypeError,
25953 "unbound method %.200S() needs an argument",
25954 cyfunc->func_qualname);
25957 result = __Pyx_CyFunction_CallMethod(func, self, new_args, kw);
25958 Py_DECREF(new_args);
25960 result = __Pyx_CyFunction_Call(func, args, kw);
25964#if CYTHON_VECTORCALL
25965static CYTHON_INLINE
int __Pyx_CyFunction_Vectorcall_CheckArgs(PyObject *func, __pyx_CyFunctionObject *cyfunc, Py_ssize_t nargs, PyObject *kwnames)
25968 if ((cyfunc->flags & __Pyx_CYFUNCTION_CCLASS) && !(cyfunc->flags & __Pyx_CYFUNCTION_STATICMETHOD)) {
25969 if (unlikely(nargs < 1)) {
25970 __Pyx_CyFunction_raise_type_error(
25971 func,
"needs an argument");
25976 if (unlikely(kwnames) && unlikely(__Pyx_PyTuple_GET_SIZE(kwnames))) {
25977 __Pyx_CyFunction_raise_type_error(
25978 func,
"takes no keyword arguments");
25983static PyObject * __Pyx_CyFunction_Vectorcall_NOARGS(PyObject *func, PyObject *
const *args,
size_t nargsf, PyObject *kwnames)
25985 __pyx_CyFunctionObject *cyfunc = __Pyx_as_CyFunctionObject(func);
25986 Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
25988#if CYTHON_COMPILING_IN_LIMITED_API
25989 PyCFunction meth = cyfunc->func_methoddef->ml_meth;
25990 if (unlikely(!meth))
return NULL;
25992 PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth;
25994 switch (__Pyx_CyFunction_Vectorcall_CheckArgs(func, cyfunc, nargs, kwnames)) {
26006 if (unlikely(nargs != 0)) {
26007 __Pyx_CyFunction_raise_argument_count_error(
26008 func,
"takes no arguments", nargs);
26011 return meth(self, NULL);
26013static PyObject * __Pyx_CyFunction_Vectorcall_O(PyObject *func, PyObject *
const *args,
size_t nargsf, PyObject *kwnames)
26015 __pyx_CyFunctionObject *cyfunc = __Pyx_as_CyFunctionObject(func);
26016 Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
26018#if CYTHON_COMPILING_IN_LIMITED_API
26019 PyCFunction meth = cyfunc->func_methoddef->ml_meth;
26020 if (unlikely(!meth))
return NULL;
26022 PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth;
26024 switch (__Pyx_CyFunction_Vectorcall_CheckArgs(func, cyfunc, nargs, kwnames)) {
26036 if (unlikely(nargs != 1)) {
26037 __Pyx_CyFunction_raise_argument_count_error(
26038 func,
"takes exactly one argument", nargs);
26041 return meth(self, args[0]);
26043static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS(PyObject *func, PyObject *
const *args,
size_t nargsf, PyObject *kwnames)
26045 __pyx_CyFunctionObject *cyfunc = __Pyx_as_CyFunctionObject(func);
26046 Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
26048#if CYTHON_COMPILING_IN_LIMITED_API
26049 PyCFunction meth = cyfunc->func_methoddef->ml_meth;
26050 if (unlikely(!meth))
return NULL;
26052 PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth;
26054 switch (__Pyx_CyFunction_Vectorcall_CheckArgs(func, cyfunc, nargs, NULL)) {
26066 return ((__Pyx_PyCFunctionFastWithKeywords)(
void(*)(
void))meth)(self, args, nargs, kwnames);
26068static PyObject * __Pyx_CyFunction_Vectorcall_FASTCALL_KEYWORDS_METHOD(PyObject *func, PyObject *
const *args,
size_t nargsf, PyObject *kwnames)
26070 __pyx_CyFunctionObject *cyfunc = __Pyx_as_CyFunctionObject(func);
26071 PyTypeObject *cls = (PyTypeObject *) __Pyx__CyFunction_GetClassObj(cyfunc);
26072 Py_ssize_t nargs = PyVectorcall_NARGS(nargsf);
26074#if CYTHON_COMPILING_IN_LIMITED_API
26075 PyCFunction meth = cyfunc->func_methoddef->ml_meth;
26076 if (unlikely(!meth))
return NULL;
26078 PyCFunction meth = ((PyCFunctionObject*)cyfunc)->m_ml->ml_meth;
26080 switch (__Pyx_CyFunction_Vectorcall_CheckArgs(func, cyfunc, nargs, NULL)) {
26092 #if PY_VERSION_HEX < 0x030e00A6
26093 size_t nargs_value = (size_t) nargs;
26095 Py_ssize_t nargs_value = nargs;
26097 return ((__Pyx_PyCMethod)(
void(*)(
void))meth)(self, cls, args, nargs_value, kwnames);
26100static PyType_Slot __pyx_CyFunctionType_slots[] = {
26101 {Py_tp_dealloc, (
void *)__Pyx_CyFunction_dealloc},
26102 {Py_tp_repr, (
void *)__Pyx_CyFunction_repr},
26103 {Py_tp_call, (
void *)__Pyx_CyFunction_CallAsMethod},
26104 {Py_tp_traverse, (
void *)__Pyx_CyFunction_traverse},
26105 {Py_tp_clear, (
void *)__Pyx_CyFunction_clear},
26106 {Py_tp_methods, (
void *)__pyx_CyFunction_methods},
26107 {Py_tp_members, (
void *)__pyx_CyFunction_members},
26108 {Py_tp_getset, (
void *)__pyx_CyFunction_getsets},
26109 {Py_tp_descr_get, (
void *)__Pyx_PyMethod_New},
26112static PyType_Spec __pyx_CyFunctionType_spec = {
26113 __PYX_TYPE_MODULE_PREFIX
"cython_function_or_method",
26114 __PYX_SHARED_SIZEOF(__pyx_CyFunctionObject),
26116#ifdef Py_TPFLAGS_METHOD_DESCRIPTOR
26117 Py_TPFLAGS_METHOD_DESCRIPTOR |
26119#if CYTHON_VECTORCALL
26120#if defined(Py_TPFLAGS_HAVE_VECTORCALL)
26121 Py_TPFLAGS_HAVE_VECTORCALL |
26122#elif defined(_Py_TPFLAGS_HAVE_VECTORCALL)
26123 _Py_TPFLAGS_HAVE_VECTORCALL |
26126#if PY_VERSION_HEX >= 0x030C0000 && !CYTHON_COMPILING_IN_LIMITED_API
26127 Py_TPFLAGS_MANAGED_DICT |
26129 Py_TPFLAGS_IMMUTABLETYPE | Py_TPFLAGS_DISALLOW_INSTANTIATION |
26130 Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE,
26131 __pyx_CyFunctionType_slots
26133static int __pyx_CyFunction_init(PyObject *module) {
26134 __pyx_mstatetype *mstate = __Pyx_PyModule_GetState(module);
26135 mstate->__pyx_CyFunctionType = __Pyx_FetchCommonTypeFromSpec(
26136 mstate->__pyx_CommonTypesMetaclassType, module, &__pyx_CyFunctionType_spec, NULL);
26137 if (unlikely(mstate->__pyx_CyFunctionType == NULL)) {
26144static PyObject *__Pyx_CyFunction_New(PyMethodDef *ml,
int flags, PyObject* qualname,
26145 PyObject *closure, PyObject *module, PyObject* globals, PyObject* code) {
26146 (void)&__Pyx_Get_CyFunction_Type;
26147 PyObject *op = __Pyx_CyFunction_Init(
26148 PyObject_GC_New(PyObject, __pyx_mstate_global->__pyx_CyFunctionType),
26149 ml, flags, qualname, closure, module, globals, code
26152 PyObject_GC_Track(op);
26156static PyTypeObject *__Pyx_Get_CyFunction_Type(
void) {
26157 PyTypeObject *tp = __pyx_mstate_global->__pyx_CyFunctionType;
26158 Py_INCREF((PyObject*)tp);
26163#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS
26164static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj) {
26165 PyObject *dict = Py_TYPE(obj)->tp_dict;
26166 return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
26168static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj) {
26169 PyObject **dictptr = NULL;
26170 Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset;
26172#if CYTHON_COMPILING_IN_CPYTHON
26173 dictptr = (likely(offset > 0)) ? (PyObject **) ((
char *)obj + offset) : _PyObject_GetDictPtr(obj);
26175 dictptr = _PyObject_GetDictPtr(obj);
26178 return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
26180static CYTHON_INLINE
int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version) {
26181 PyObject *dict = Py_TYPE(obj)->tp_dict;
26182 if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
26184 return obj_dict_version == __Pyx_get_object_dict_version(obj);
26189#if CYTHON_CLINE_IN_TRACEBACK && CYTHON_CLINE_IN_TRACEBACK_RUNTIME
26190#if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030A0000
26191#define __Pyx_PyProbablyModule_GetDict(o) __Pyx_XNewRef(PyModule_GetDict(o))
26192#elif !CYTHON_COMPILING_IN_CPYTHON || CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
26193#define __Pyx_PyProbablyModule_GetDict(o) PyObject_GenericGetDict(o, NULL);
26195PyObject* __Pyx_PyProbablyModule_GetDict(PyObject *o) {
26196 PyObject **dict_ptr = _PyObject_GetDictPtr(o);
26197 return dict_ptr ? __Pyx_XNewRef(*dict_ptr) : NULL;
26200static int __Pyx_CLineForTraceback(PyThreadState *tstate,
int c_line) {
26201 PyObject *use_cline = NULL;
26202 PyObject *ptype, *pvalue, *ptraceback;
26203 PyObject *cython_runtime_dict;
26204 CYTHON_MAYBE_UNUSED_VAR(tstate);
26205 if (unlikely(!__pyx_mstate_global->__pyx_cython_runtime)) {
26208 __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
26209 cython_runtime_dict = __Pyx_PyProbablyModule_GetDict(__pyx_mstate_global->__pyx_cython_runtime);
26210 if (likely(cython_runtime_dict)) {
26211 __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
26212 use_cline, cython_runtime_dict,
26213 __Pyx_PyDict_SetDefault(cython_runtime_dict, __pyx_mstate_global->__pyx_n_u_cline_in_traceback, Py_False))
26215 if (use_cline == NULL || use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) {
26218 Py_XDECREF(use_cline);
26219 Py_XDECREF(cython_runtime_dict);
26220 __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
26226static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries,
int count,
int code_line) {
26227 int start = 0, mid = 0, end = count - 1;
26228 if (end >= 0 && code_line > entries[end].code_line) {
26231 while (start < end) {
26232 mid = start + (end - start) / 2;
26233 if (code_line < entries[mid].code_line) {
26235 }
else if (code_line > entries[mid].code_line) {
26241 if (code_line <= entries[mid].code_line) {
26247static __Pyx_CachedCodeObjectType *__pyx__find_code_object(
struct __Pyx_CodeObjectCache *code_cache,
int code_line) {
26248 __Pyx_CachedCodeObjectType* code_object;
26250 if (unlikely(!code_line) || unlikely(!code_cache->entries)) {
26253 pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line);
26254 if (unlikely(pos >= code_cache->count) || unlikely(code_cache->entries[pos].code_line != code_line)) {
26257 code_object = code_cache->entries[pos].code_object;
26258 Py_INCREF(code_object);
26259 return code_object;
26261static __Pyx_CachedCodeObjectType *__pyx_find_code_object(
int code_line) {
26262#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS
26263 (void)__pyx__find_code_object;
26266 struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache;
26267#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
26268 __pyx_nonatomic_int_type old_count = __pyx_atomic_incr_acq_rel(&code_cache->accessor_count);
26269 if (old_count < 0) {
26270 __pyx_atomic_decr_acq_rel(&code_cache->accessor_count);
26274 __Pyx_CachedCodeObjectType *result = __pyx__find_code_object(code_cache, code_line);
26275#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
26276 __pyx_atomic_decr_acq_rel(&code_cache->accessor_count);
26281static void __pyx__insert_code_object(
struct __Pyx_CodeObjectCache *code_cache,
int code_line, __Pyx_CachedCodeObjectType* code_object)
26284 __Pyx_CodeObjectCacheEntry* entries = code_cache->entries;
26285 if (unlikely(!code_line)) {
26288 if (unlikely(!entries)) {
26289 entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*
sizeof(__Pyx_CodeObjectCacheEntry));
26290 if (likely(entries)) {
26291 code_cache->entries = entries;
26292 code_cache->max_count = 64;
26293 code_cache->count = 1;
26294 entries[0].code_line = code_line;
26295 entries[0].code_object = code_object;
26296 Py_INCREF(code_object);
26300 pos = __pyx_bisect_code_objects(code_cache->entries, code_cache->count, code_line);
26301 if ((pos < code_cache->count) && unlikely(code_cache->entries[pos].code_line == code_line)) {
26302 __Pyx_CachedCodeObjectType* tmp = entries[pos].code_object;
26303 entries[pos].code_object = code_object;
26304 Py_INCREF(code_object);
26308 if (code_cache->count == code_cache->max_count) {
26309 int new_max = code_cache->max_count + 64;
26310 entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc(
26311 code_cache->entries, ((
size_t)new_max) *
sizeof(__Pyx_CodeObjectCacheEntry));
26312 if (unlikely(!entries)) {
26315 code_cache->entries = entries;
26316 code_cache->max_count = new_max;
26318 for (i=code_cache->count; i>pos; i--) {
26319 entries[i] = entries[i-1];
26321 entries[pos].code_line = code_line;
26322 entries[pos].code_object = code_object;
26323 code_cache->count++;
26324 Py_INCREF(code_object);
26326static void __pyx_insert_code_object(
int code_line, __Pyx_CachedCodeObjectType* code_object) {
26327#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING && !CYTHON_ATOMICS
26328 (void)__pyx__insert_code_object;
26331 struct __Pyx_CodeObjectCache *code_cache = &__pyx_mstate_global->__pyx_code_cache;
26332#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
26333 __pyx_nonatomic_int_type expected = 0;
26334 if (!__pyx_atomic_int_cmp_exchange(&code_cache->accessor_count, &expected, INT_MIN)) {
26338 __pyx__insert_code_object(code_cache, code_line, code_object);
26339#if CYTHON_COMPILING_IN_CPYTHON_FREETHREADING
26340 __pyx_atomic_sub(&code_cache->accessor_count, INT_MIN);
26346#include "compile.h"
26347#include "frameobject.h"
26348#include "traceback.h"
26349#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION)
26350 #ifndef Py_BUILD_CORE
26351 #define Py_BUILD_CORE 1
26353 #include "internal/pycore_frame.h"
26355#if CYTHON_COMPILING_IN_LIMITED_API
26356static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject *scratch_dict,
26357 PyObject *firstlineno, PyObject *name) {
26358 PyObject *replace = NULL;
26359 if (unlikely(PyDict_SetItemString(scratch_dict,
"co_firstlineno", firstlineno)))
return NULL;
26360 if (unlikely(PyDict_SetItemString(scratch_dict,
"co_name", name)))
return NULL;
26361 replace = PyObject_GetAttrString(code,
"replace");
26362 if (likely(replace)) {
26363 PyObject *result = PyObject_Call(replace, __pyx_mstate_global->__pyx_empty_tuple, scratch_dict);
26364 Py_DECREF(replace);
26369static void __Pyx_AddTraceback(
const char *funcname,
int c_line,
26370 int py_line,
const char *filename) {
26371 PyObject *code_object = NULL, *py_py_line = NULL, *py_funcname = NULL, *dict = NULL;
26372 PyObject *replace = NULL, *getframe = NULL, *frame = NULL;
26373 PyObject *exc_type, *exc_value, *exc_traceback;
26376 c_line = __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line);
26378 __Pyx_PyErr_FetchException(&exc_type, &exc_value, &exc_traceback);
26379 code_object = __pyx_find_code_object(c_line ? -c_line : py_line);
26380 if (!code_object) {
26381 code_object = Py_CompileString(
"_getframe()", filename, Py_eval_input);
26382 if (unlikely(!code_object))
goto bad;
26383 py_py_line = PyLong_FromLong(py_line);
26384 if (unlikely(!py_py_line))
goto bad;
26386 py_funcname = PyUnicode_FromFormat(
"%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
26388 py_funcname = PyUnicode_FromString(funcname);
26390 if (unlikely(!py_funcname))
goto bad;
26391 dict = PyDict_New();
26392 if (unlikely(!dict))
goto bad;
26394 PyObject *old_code_object = code_object;
26395 code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname);
26396 Py_DECREF(old_code_object);
26398 if (unlikely(!code_object))
goto bad;
26399 __pyx_insert_code_object(c_line ? -c_line : py_line, code_object);
26401 dict = PyDict_New();
26403 getframe = PySys_GetObject(
"_getframe");
26404 if (unlikely(!getframe))
goto bad;
26405 if (unlikely(PyDict_SetItemString(dict,
"_getframe", getframe)))
goto bad;
26406 frame = PyEval_EvalCode(code_object, dict, dict);
26407 if (unlikely(!frame) || frame == Py_None)
goto bad;
26410 __Pyx_PyErr_RestoreException(exc_type, exc_value, exc_traceback);
26411 Py_XDECREF(code_object);
26412 Py_XDECREF(py_py_line);
26413 Py_XDECREF(py_funcname);
26415 Py_XDECREF(replace);
26418 (
struct _frame*)frame);
26423static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(
26424 const char *funcname,
int c_line,
26425 int py_line,
const char *filename) {
26426 PyCodeObject *py_code = NULL;
26427 PyObject *py_funcname = NULL;
26429 py_funcname = PyUnicode_FromFormat(
"%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
26430 if (!py_funcname)
goto bad;
26431 funcname = PyUnicode_AsUTF8(py_funcname);
26432 if (!funcname)
goto bad;
26434 py_code = PyCode_NewEmpty(filename, funcname, py_line);
26435 Py_XDECREF(py_funcname);
26438 Py_XDECREF(py_funcname);
26441static void __Pyx_AddTraceback(
const char *funcname,
int c_line,
26442 int py_line,
const char *filename) {
26443 PyCodeObject *py_code = 0;
26444 PyFrameObject *py_frame = 0;
26445 PyThreadState *tstate = __Pyx_PyThreadState_Current;
26446 PyObject *ptype, *pvalue, *ptraceback;
26448 c_line = __Pyx_CLineForTraceback(tstate, c_line);
26450 py_code = __pyx_find_code_object(c_line ? -c_line : py_line);
26452 __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
26453 py_code = __Pyx_CreateCodeObjectForTraceback(
26454 funcname, c_line, py_line, filename);
26459 Py_XDECREF(pvalue);
26460 Py_XDECREF(ptraceback);
26463 __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
26464 __pyx_insert_code_object(c_line ? -c_line : py_line, py_code);
26466 py_frame = PyFrame_New(
26469 __pyx_mstate_global->__pyx_d,
26472 if (!py_frame)
goto bad;
26473 __Pyx_PyFrame_SetLineNumber(py_frame, py_line);
26474 PyTraceBack_Here(py_frame);
26476 Py_XDECREF(py_code);
26477 Py_XDECREF(py_frame);
26482#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\
26483 __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0)
26484#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\
26485 __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1)
26486#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\
26488 func_type value = func_value;\
26489 if (sizeof(target_type) < sizeof(func_type)) {\
26490 if (unlikely(value != (func_type) (target_type) value)) {\
26491 func_type zero = 0;\
26492 if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\
26493 return (target_type) -1;\
26494 if (is_unsigned && unlikely(value < zero))\
26495 goto raise_neg_overflow;\
26497 goto raise_overflow;\
26500 return (target_type) value;\
26504#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
26506 static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(
float x,
float y) {
26507 return ::std::complex< float >(x, y);
26510 static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(
float x,
float y) {
26511 return x + y*(__pyx_t_float_complex)_Complex_I;
26515 static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(
float x,
float y) {
26516 __pyx_t_float_complex
z;
26524#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
26526 static CYTHON_INLINE
int __Pyx_c_eq_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
26527 return (a.real == b.real) && (a.imag == b.imag);
26529 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
26530 __pyx_t_float_complex
z;
26531 z.real = a.real + b.real;
26532 z.imag = a.imag + b.imag;
26535 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
26536 __pyx_t_float_complex
z;
26537 z.real = a.real - b.real;
26538 z.imag = a.imag - b.imag;
26541 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
26542 __pyx_t_float_complex
z;
26543 z.real = a.real * b.real - a.imag * b.imag;
26544 z.imag = a.real * b.imag + a.imag * b.real;
26548 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
26550 return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real);
26551 }
else if (fabsf(b.real) >= fabsf(b.imag)) {
26552 if (b.real == 0 && b.imag == 0) {
26553 return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.imag);
26555 float r = b.imag / b.real;
26556 float s = (float)(1.0) / (b.real + b.imag *
r);
26557 return __pyx_t_float_complex_from_parts(
26558 (a.real + a.imag *
r) *
s, (a.imag - a.real *
r) *
s);
26561 float r = b.real / b.imag;
26562 float s = (float)(1.0) / (b.imag + b.real *
r);
26563 return __pyx_t_float_complex_from_parts(
26564 (a.real *
r + a.imag) *
s, (a.imag *
r - a.real) *
s);
26568 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
26570 return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real);
26572 float denom = b.real * b.real + b.imag * b.imag;
26573 return __pyx_t_float_complex_from_parts(
26574 (a.real * b.real + a.imag * b.imag) / denom,
26575 (a.imag * b.real - a.real * b.imag) / denom);
26579 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex a) {
26580 __pyx_t_float_complex
z;
26585 static CYTHON_INLINE
int __Pyx_c_is_zero_float(__pyx_t_float_complex a) {
26586 return (a.real == 0) && (a.imag == 0);
26588 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex a) {
26589 __pyx_t_float_complex
z;
26595 static CYTHON_INLINE
float __Pyx_c_abs_float(__pyx_t_float_complex
z) {
26596 #if !defined(HAVE_HYPOT) || defined(_MSC_VER)
26597 return sqrtf(
z.real*
z.real +
z.imag*
z.imag);
26599 return hypotf(
z.real,
z.imag);
26602 static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
26603 __pyx_t_float_complex
z;
26604 float r, lnr, theta, z_r, z_theta;
26605 if (b.imag == 0 && b.real == (
int)b.real) {
26607 float denom = a.real * a.real + a.imag * a.imag;
26608 a.real = a.real / denom;
26609 a.imag = -a.imag / denom;
26612 switch ((
int)b.real) {
26620 return __Pyx_c_prod_float(a, a);
26622 z = __Pyx_c_prod_float(a, a);
26623 return __Pyx_c_prod_float(
z, a);
26625 z = __Pyx_c_prod_float(a, a);
26626 return __Pyx_c_prod_float(
z,
z);
26632 }
else if ((b.imag == 0) && (a.real >= 0)) {
26633 z.real = powf(a.real, b.real);
26636 }
else if (a.real > 0) {
26641 theta = atan2f(0.0, -1.0);
26644 r = __Pyx_c_abs_float(a);
26645 theta = atan2f(a.imag, a.real);
26648 z_r = expf(lnr * b.real - theta * b.imag);
26649 z_theta = theta * b.real + lnr * b.imag;
26650 z.real = z_r * cosf(z_theta);
26651 z.imag = z_r * sinf(z_theta);
26658#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
26660 static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(
double x,
double y) {
26661 return ::std::complex< double >(x, y);
26664 static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(
double x,
double y) {
26665 return x + y*(__pyx_t_double_complex)_Complex_I;
26669 static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(
double x,
double y) {
26670 __pyx_t_double_complex
z;
26678#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
26680 static CYTHON_INLINE
int __Pyx_c_eq_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
26681 return (a.real == b.real) && (a.imag == b.imag);
26683 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
26684 __pyx_t_double_complex
z;
26685 z.real = a.real + b.real;
26686 z.imag = a.imag + b.imag;
26689 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
26690 __pyx_t_double_complex
z;
26691 z.real = a.real - b.real;
26692 z.imag = a.imag - b.imag;
26695 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
26696 __pyx_t_double_complex
z;
26697 z.real = a.real * b.real - a.imag * b.imag;
26698 z.imag = a.real * b.imag + a.imag * b.real;
26702 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
26704 return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real);
26705 }
else if (fabs(b.real) >= fabs(b.imag)) {
26706 if (b.real == 0 && b.imag == 0) {
26707 return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.imag);
26709 double r = b.imag / b.real;
26710 double s = (double)(1.0) / (b.real + b.imag *
r);
26711 return __pyx_t_double_complex_from_parts(
26712 (a.real + a.imag *
r) *
s, (a.imag - a.real *
r) *
s);
26715 double r = b.real / b.imag;
26716 double s = (double)(1.0) / (b.imag + b.real *
r);
26717 return __pyx_t_double_complex_from_parts(
26718 (a.real *
r + a.imag) *
s, (a.imag *
r - a.real) *
s);
26722 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
26724 return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real);
26726 double denom = b.real * b.real + b.imag * b.imag;
26727 return __pyx_t_double_complex_from_parts(
26728 (a.real * b.real + a.imag * b.imag) / denom,
26729 (a.imag * b.real - a.real * b.imag) / denom);
26733 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex a) {
26734 __pyx_t_double_complex
z;
26739 static CYTHON_INLINE
int __Pyx_c_is_zero_double(__pyx_t_double_complex a) {
26740 return (a.real == 0) && (a.imag == 0);
26742 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex a) {
26743 __pyx_t_double_complex
z;
26749 static CYTHON_INLINE
double __Pyx_c_abs_double(__pyx_t_double_complex
z) {
26750 #if !defined(HAVE_HYPOT) || defined(_MSC_VER)
26751 return sqrt(
z.real*
z.real +
z.imag*
z.imag);
26753 return hypot(
z.real,
z.imag);
26756 static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
26757 __pyx_t_double_complex
z;
26758 double r, lnr, theta, z_r, z_theta;
26759 if (b.imag == 0 && b.real == (
int)b.real) {
26761 double denom = a.real * a.real + a.imag * a.imag;
26762 a.real = a.real / denom;
26763 a.imag = -a.imag / denom;
26766 switch ((
int)b.real) {
26774 return __Pyx_c_prod_double(a, a);
26776 z = __Pyx_c_prod_double(a, a);
26777 return __Pyx_c_prod_double(
z, a);
26779 z = __Pyx_c_prod_double(a, a);
26780 return __Pyx_c_prod_double(
z,
z);
26786 }
else if ((b.imag == 0) && (a.real >= 0)) {
26787 z.real = pow(a.real, b.real);
26790 }
else if (a.real > 0) {
26795 theta = atan2(0.0, -1.0);
26798 r = __Pyx_c_abs_double(a);
26799 theta = atan2(a.imag, a.real);
26802 z_r = exp(lnr * b.real - theta * b.imag);
26803 z_theta = theta * b.real + lnr * b.imag;
26804 z.real = z_r * cos(z_theta);
26805 z.imag = z_r * sin(z_theta);
26812#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
26814 static CYTHON_INLINE __pyx_t_long_double_complex __pyx_t_long_double_complex_from_parts(
long double x,
long double y) {
26815 return ::std::complex< long double >(x, y);
26818 static CYTHON_INLINE __pyx_t_long_double_complex __pyx_t_long_double_complex_from_parts(
long double x,
long double y) {
26819 return x + y*(__pyx_t_long_double_complex)_Complex_I;
26823 static CYTHON_INLINE __pyx_t_long_double_complex __pyx_t_long_double_complex_from_parts(
long double x,
long double y) {
26824 __pyx_t_long_double_complex
z;
26832#if CYTHON_CCOMPLEX && (1) && (!0 || __cplusplus)
26834 static CYTHON_INLINE
int __Pyx_c_eq_long__double(__pyx_t_long_double_complex a, __pyx_t_long_double_complex b) {
26835 return (a.real == b.real) && (a.imag == b.imag);
26837 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_sum_long__double(__pyx_t_long_double_complex a, __pyx_t_long_double_complex b) {
26838 __pyx_t_long_double_complex
z;
26839 z.real = a.real + b.real;
26840 z.imag = a.imag + b.imag;
26843 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_diff_long__double(__pyx_t_long_double_complex a, __pyx_t_long_double_complex b) {
26844 __pyx_t_long_double_complex
z;
26845 z.real = a.real - b.real;
26846 z.imag = a.imag - b.imag;
26849 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_prod_long__double(__pyx_t_long_double_complex a, __pyx_t_long_double_complex b) {
26850 __pyx_t_long_double_complex
z;
26851 z.real = a.real * b.real - a.imag * b.imag;
26852 z.imag = a.real * b.imag + a.imag * b.real;
26856 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_quot_long__double(__pyx_t_long_double_complex a, __pyx_t_long_double_complex b) {
26858 return __pyx_t_long_double_complex_from_parts(a.real / b.real, a.imag / b.real);
26859 }
else if (fabsl(b.real) >= fabsl(b.imag)) {
26860 if (b.real == 0 && b.imag == 0) {
26861 return __pyx_t_long_double_complex_from_parts(a.real / b.real, a.imag / b.imag);
26863 long double r = b.imag / b.real;
26864 long double s = (
long double)(1.0) / (b.real + b.imag *
r);
26865 return __pyx_t_long_double_complex_from_parts(
26866 (a.real + a.imag *
r) *
s, (a.imag - a.real *
r) *
s);
26869 long double r = b.real / b.imag;
26870 long double s = (
long double)(1.0) / (b.imag + b.real *
r);
26871 return __pyx_t_long_double_complex_from_parts(
26872 (a.real *
r + a.imag) *
s, (a.imag *
r - a.real) *
s);
26876 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_quot_long__double(__pyx_t_long_double_complex a, __pyx_t_long_double_complex b) {
26878 return __pyx_t_long_double_complex_from_parts(a.real / b.real, a.imag / b.real);
26880 long double denom = b.real * b.real + b.imag * b.imag;
26881 return __pyx_t_long_double_complex_from_parts(
26882 (a.real * b.real + a.imag * b.imag) / denom,
26883 (a.imag * b.real - a.real * b.imag) / denom);
26887 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_neg_long__double(__pyx_t_long_double_complex a) {
26888 __pyx_t_long_double_complex
z;
26893 static CYTHON_INLINE
int __Pyx_c_is_zero_long__double(__pyx_t_long_double_complex a) {
26894 return (a.real == 0) && (a.imag == 0);
26896 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_conj_long__double(__pyx_t_long_double_complex a) {
26897 __pyx_t_long_double_complex
z;
26903 static CYTHON_INLINE
long double __Pyx_c_abs_long__double(__pyx_t_long_double_complex
z) {
26904 #if !defined(HAVE_HYPOT) || defined(_MSC_VER)
26905 return sqrtl(
z.real*
z.real +
z.imag*
z.imag);
26907 return hypotl(
z.real,
z.imag);
26910 static CYTHON_INLINE __pyx_t_long_double_complex __Pyx_c_pow_long__double(__pyx_t_long_double_complex a, __pyx_t_long_double_complex b) {
26911 __pyx_t_long_double_complex
z;
26912 long double r, lnr, theta, z_r, z_theta;
26913 if (b.imag == 0 && b.real == (
int)b.real) {
26915 long double denom = a.real * a.real + a.imag * a.imag;
26916 a.real = a.real / denom;
26917 a.imag = -a.imag / denom;
26920 switch ((
int)b.real) {
26928 return __Pyx_c_prod_long__double(a, a);
26930 z = __Pyx_c_prod_long__double(a, a);
26931 return __Pyx_c_prod_long__double(
z, a);
26933 z = __Pyx_c_prod_long__double(a, a);
26934 return __Pyx_c_prod_long__double(
z,
z);
26940 }
else if ((b.imag == 0) && (a.real >= 0)) {
26941 z.real = powl(a.real, b.real);
26944 }
else if (a.real > 0) {
26949 theta = atan2l(0.0, -1.0);
26952 r = __Pyx_c_abs_long__double(a);
26953 theta = atan2l(a.imag, a.real);
26956 z_r = expl(lnr * b.real - theta * b.imag);
26957 z_theta = theta * b.real + lnr * b.imag;
26958 z.real = z_r * cosl(z_theta);
26959 z.imag = z_r * sinl(z_theta);
26966static int __Pyx_LargePyLong___Pyx_PyLong_As_int(PyObject *x);
26967static int __Pyx_raise_neg_overflow___Pyx_PyLong_As_int(
void) {
26968 const char* type_name =
"int";
26969 PyErr_Format(PyExc_OverflowError,
26970 "can't convert negative value to %.200s", type_name);
26973static int __Pyx_raise_overflow___Pyx_PyLong_As_int(
void) {
26974 const char* type_name =
"int";
26975 PyErr_Format(PyExc_OverflowError,
26976 "value too large to convert to %.200s", type_name);
26979static CYTHON_INLINE
int __Pyx_PyULong___Pyx_PyLong_As_int(PyObject *x) {
26980 const int is_unsigned = 1;
26981#if CYTHON_USE_PYLONG_INTERNALS
26983 const digit* digits = __Pyx_PyLong_Digits(x);
26984 const Py_ssize_t size = __Pyx_PyLong_DigitCount(x);
26985 if (size == 2 && (8 *
sizeof(
int) > 1 * PyLong_SHIFT)) {
26986 if ((8 *
sizeof(
unsigned long) > 2 * PyLong_SHIFT)) {
26987 __PYX_VERIFY_RETURN_INT(
int,
unsigned long, (((((
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
26988 }
else if ((8 *
sizeof(
int) >= 2 * PyLong_SHIFT)) {
26989 return (
int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
26992 if (size == 3 && (8 *
sizeof(
int) > 2 * PyLong_SHIFT)) {
26993 if ((8 *
sizeof(
unsigned long) > 3 * PyLong_SHIFT)) {
26994 __PYX_VERIFY_RETURN_INT(
int,
unsigned long, (((((((
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
26995 }
else if ((8 *
sizeof(
int) >= 3 * PyLong_SHIFT)) {
26996 return (
int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
26999 if (size == 4 && (8 *
sizeof(
int) > 3 * PyLong_SHIFT)) {
27000 if ((8 *
sizeof(
unsigned long) > 4 * PyLong_SHIFT)) {
27001 __PYX_VERIFY_RETURN_INT(
int,
unsigned long, (((((((((
unsigned long)digits[3]) << PyLong_SHIFT) | (
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27002 }
else if ((8 *
sizeof(
int) >= 4 * PyLong_SHIFT)) {
27003 return (
int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
27008#elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7
27009 if (unlikely(Py_SIZE(x) < 0)) {
27010 goto raise_neg_overflow;
27014 int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
27015 if (unlikely(result < 0))
27017 if (unlikely(result == 1))
27018 goto raise_neg_overflow;
27021 if ((
sizeof(
int) <=
sizeof(
unsigned long))) {
27022 __PYX_VERIFY_RETURN_INT_EXC(
int,
unsigned long, PyLong_AsUnsignedLong(x))
27023 }
else if ((
sizeof(
int) <=
sizeof(
unsigned PY_LONG_LONG))) {
27024 __PYX_VERIFY_RETURN_INT_EXC(
int,
unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
27026 return __Pyx_LargePyLong___Pyx_PyLong_As_int(x);
27028 return __Pyx_raise_neg_overflow___Pyx_PyLong_As_int();
27030 return __Pyx_raise_overflow___Pyx_PyLong_As_int();
27032static CYTHON_INLINE
int __Pyx_PySLong___Pyx_PyLong_As_int(PyObject *x) {
27033 const int is_unsigned = 0;
27034#if CYTHON_USE_PYLONG_INTERNALS
27035 if (__Pyx_PyLong_IsNeg(x)) {
27036 const Py_ssize_t size = __Pyx_PyLong_DigitCount(x);
27037 const digit* digits = __Pyx_PyLong_Digits(x);
27038 if (size == 2 && (8 *
sizeof(
int) > 1 * PyLong_SHIFT)) {
27039 if ((8 *
sizeof(
long) > 2 * PyLong_SHIFT)) {
27040 long ival = - (long) (((((
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0]));
27041 __PYX_VERIFY_RETURN_INT(
int,
long, ival)
27042 }
else if ((8 *
sizeof(
int) - 1 > 2 * PyLong_SHIFT)) {
27043 return (
int) (((int) -1) * (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
27046 if (size == 3 && (8 *
sizeof(
int) > 2 * PyLong_SHIFT)) {
27047 if ((8 *
sizeof(
long) > 3 * PyLong_SHIFT)) {
27048 long ival = - (long) (((((((
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0]));
27049 __PYX_VERIFY_RETURN_INT(
int,
long, ival)
27050 }
else if ((8 *
sizeof(
int) - 1 > 3 * PyLong_SHIFT)) {
27051 return (
int) (((int) -1) * (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
27054 if (size == 4 && (8 *
sizeof(
int) > 3 * PyLong_SHIFT)) {
27055 if ((8 *
sizeof(
long) > 4 * PyLong_SHIFT)) {
27056 long ival = - (long) (((((((((
unsigned long)digits[3]) << PyLong_SHIFT) | (
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0]));
27057 __PYX_VERIFY_RETURN_INT(
int,
long, ival)
27058 }
else if ((8 *
sizeof(
int) - 1 > 4 * PyLong_SHIFT)) {
27059 return (
int) (((int) -1) * (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
27064 const Py_ssize_t size = __Pyx_PyLong_DigitCount(x);
27065 const digit* digits = __Pyx_PyLong_Digits(x);
27066 if (size == 2 && (8 *
sizeof(
int) > 1 * PyLong_SHIFT)) {
27067 if ((8 *
sizeof(
long) > 2 * PyLong_SHIFT)) {
27068 __PYX_VERIFY_RETURN_INT(
int,
unsigned long, (((((
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27069 }
else if ((8 *
sizeof(
int) - 1 > 2 * PyLong_SHIFT)) {
27070 return (
int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
27073 if (size == 3 && (8 *
sizeof(
int) > 2 * PyLong_SHIFT)) {
27074 if ((8 *
sizeof(
long) > 3 * PyLong_SHIFT)) {
27075 __PYX_VERIFY_RETURN_INT(
int,
unsigned long, (((((((
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27076 }
else if ((8 *
sizeof(
int) - 1 > 3 * PyLong_SHIFT)) {
27077 return (
int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
27080 if (size == 4 && (8 *
sizeof(
int) > 3 * PyLong_SHIFT)) {
27081 if ((8 *
sizeof(
long) > 4 * PyLong_SHIFT)) {
27082 __PYX_VERIFY_RETURN_INT(
int,
unsigned long, (((((((((
unsigned long)digits[3]) << PyLong_SHIFT) | (
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27083 }
else if ((8 *
sizeof(
int) - 1 > 4 * PyLong_SHIFT)) {
27084 return (
int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
27090 #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
27091 if ((
sizeof(
int) <=
sizeof(
int)) && (
sizeof(
int) <
sizeof(
long))) {
27092 __PYX_VERIFY_RETURN_INT_EXC(
int,
int, PyLong_AsInt(x))
27095 if ((
sizeof(
int) <=
sizeof(
long))) {
27096 __PYX_VERIFY_RETURN_INT_EXC(
int,
long, PyLong_AsLong(x))
27097 }
else if ((
sizeof(
int) <=
sizeof(PY_LONG_LONG))) {
27098 __PYX_VERIFY_RETURN_INT_EXC(
int, PY_LONG_LONG, PyLong_AsLongLong(x))
27100 return __Pyx_LargePyLong___Pyx_PyLong_As_int(x);
27102 return __Pyx_raise_neg_overflow___Pyx_PyLong_As_int();
27104 return __Pyx_raise_overflow___Pyx_PyLong_As_int();
27106static int __Pyx_LargePyLong___Pyx_PyLong_As_int(PyObject *x) {
27107#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27108#pragma GCC diagnostic push
27109#pragma GCC diagnostic ignored "-Wconversion"
27111 const int neg_one = (int) -1, const_zero = (
int) 0;
27112#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27113#pragma GCC diagnostic pop
27115 const int is_unsigned = neg_one > const_zero;
27118#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API
27119 Py_ssize_t bytes_copied = PyLong_AsNativeBytes(
27120 x, &val,
sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0));
27121 if (unlikely(bytes_copied == -1)) {
27122 }
else if (unlikely(bytes_copied > (Py_ssize_t)
sizeof(val))) {
27123 goto raise_overflow;
27127#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
27128 int one = 1;
int is_little = (int)*(
unsigned char *)&one;
27129 unsigned char *bytes = (
unsigned char *)&val;
27130 ret = _PyLong_AsByteArray((PyLongObject *)x,
27131 bytes,
sizeof(val),
27132 is_little, !is_unsigned);
27133 if ((0))
goto raise_overflow;
27136 PyObject *stepval = NULL, *mask = NULL, *shift = NULL;
27137 int bits, remaining_bits, is_negative = 0;
27138 int chunk_size = (
sizeof(long) < 8) ? 30 : 62;
27139 if (likely(PyLong_CheckExact(x))) {
27140 v = __Pyx_NewRef(x);
27142 v = PyNumber_Long(x);
27143 if (unlikely(!
v))
return (
int) -1;
27144 assert(PyLong_CheckExact(
v));
27147 int result = PyObject_RichCompareBool(
v, Py_False, Py_LT);
27148 if (unlikely(result < 0)) {
27152 is_negative = result == 1;
27154 if (is_unsigned && unlikely(is_negative)) {
27156 PyErr_SetString(PyExc_OverflowError,
27157 "can't convert negative value to int");
27159 }
else if (is_negative) {
27160 stepval = PyNumber_Invert(
v);
27162 if (unlikely(!stepval))
27169 mask = PyLong_FromLong((1L << chunk_size) - 1);
if (unlikely(!mask))
goto done;
27170 shift = PyLong_FromLong(chunk_size);
if (unlikely(!shift))
goto done;
27171 for (bits = 0; bits < (int)
sizeof(int) * 8 - chunk_size; bits += chunk_size) {
27172 PyObject *tmp, *digit;
27174 digit = PyNumber_And(stepval, mask);
27175 if (unlikely(!digit))
goto done;
27176 idigit = PyLong_AsLong(digit);
27178 if (unlikely(idigit < 0))
goto done;
27179 val |= ((int) idigit) << bits;
27180 tmp = PyNumber_Rshift(stepval, shift);
27181 if (unlikely(!tmp))
goto done;
27182 Py_DECREF(stepval); stepval = tmp;
27184 Py_DECREF(shift); shift = NULL;
27185 Py_DECREF(mask); mask = NULL;
27187 long idigit = PyLong_AsLong(stepval);
27188 if (unlikely(idigit < 0))
goto done;
27189 remaining_bits = ((int)
sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1);
27190 if (unlikely(idigit >= (1L << remaining_bits)))
27191 goto raise_overflow;
27192 val |= ((int) idigit) << bits;
27194 if (!is_unsigned) {
27195 if (unlikely(val & (((
int) 1) << (
sizeof(
int) * 8 - 1))))
27196 goto raise_overflow;
27204 Py_XDECREF(stepval);
27210 return __Pyx_raise_overflow___Pyx_PyLong_As_int();
27212static CYTHON_INLINE
int __Pyx_PyLong___Pyx_PyLong_As_int(PyObject *x) {
27213#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27214#pragma GCC diagnostic push
27215#pragma GCC diagnostic ignored "-Wconversion"
27217 const int neg_one = (int) -1, const_zero = (
int) 0;
27218#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27219#pragma GCC diagnostic pop
27221 const int is_unsigned = neg_one > const_zero;
27223 #if CYTHON_USE_PYLONG_INTERNALS
27224 if (unlikely(__Pyx_PyLong_IsNeg(x))) {
27225 goto raise_neg_overflow;
27226 }
else if (__Pyx_PyLong_IsCompact(x)) {
27227 __PYX_VERIFY_RETURN_INT(
int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x))
27231 return __Pyx_PyULong___Pyx_PyLong_As_int(x);
27234 #if CYTHON_USE_PYLONG_INTERNALS
27235 if (__Pyx_PyLong_IsCompact(x)) {
27236 __PYX_VERIFY_RETURN_INT(
int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x))
27240 return __Pyx_PySLong___Pyx_PyLong_As_int(x);
27243#if CYTHON_USE_PYLONG_INTERNALS
27245 return __Pyx_raise_neg_overflow___Pyx_PyLong_As_int();
27247 return __Pyx_raise_overflow___Pyx_PyLong_As_int();
27250static int __Pyx_NonPyLong___Pyx_PyLong_As_int(PyObject *x) {
27252 PyObject *tmp = __Pyx_PyNumber_Long(x);
27253 if (!tmp)
return (
int) -1;
27254 val = __Pyx_PyLong_As_int(tmp);
27258static CYTHON_INLINE
int __Pyx_PyLong_As_int(PyObject *x) {
27259 if (likely(PyLong_Check(x))) {
27260 return __Pyx_PyLong___Pyx_PyLong_As_int(x);
27262 return __Pyx_NonPyLong___Pyx_PyLong_As_int(x);
27267#if CYTHON_VECTORCALL
27268CYTHON_UNUSED
static int __Pyx_CheckVectorcallKwarg(PyObject *kwnames, Py_ssize_t i) {
27269 PyObject *key = __Pyx_PyTuple_GET_ITEM(kwnames, i);
27270#if !CYTHON_ASSUME_SAFE_MACROS
27271 if (unlikely(!key))
return -1;
27273 if (unlikely(!PyUnicode_Check(key))) {
27274 PyErr_SetString(PyExc_TypeError,
"keywords must be strings");
27280CYTHON_UNUSED
static PyObject *__Pyx_MakeKwargDict(PyObject **keys, PyObject **values, Py_ssize_t
n) {
27281 PyObject *out = PyDict_New();
27282 if (unlikely(!out))
return NULL;
27283 for (Py_ssize_t i=0; i<
n; ++i) {
27284 if (unlikely(PyDict_SetItem(out, keys[i], values[i]) < 0)) {
27291CYTHON_UNUSED
static int __Pyx_CheckVectorcallKwarg(PyObject **kwnames, Py_ssize_t i) {
27292 PyObject *key = kwnames[i];
27293 if (unlikely(!PyUnicode_Check(key))) {
27294 PyErr_SetString(PyExc_TypeError,
"keywords must be strings");
27302#if !CYTHON_VECTORCALL
27303static PyObject *__Pyx_Object_VectorcallMethodKwds(PyObject *name, PyObject *
const *args,
size_t nargsf, PyObject *kwnames) {
27305 PyObject *obj = PyObject_GetAttr(args[0], name);
27306 if (unlikely(!obj))
27308 result = __Pyx_Object_VectorcallKwds(obj, args+1, nargsf-1, kwnames);
27315static CYTHON_INLINE PyObject* __Pyx_PyLong_From_int(
int value) {
27316#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27317#pragma GCC diagnostic push
27318#pragma GCC diagnostic ignored "-Wconversion"
27320 const int neg_one = (int) -1, const_zero = (
int) 0;
27321#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27322#pragma GCC diagnostic pop
27324 const int is_unsigned = neg_one > const_zero;
27326 if (
sizeof(
int) <
sizeof(
long)) {
27327 return PyLong_FromLong((
long) value);
27328 }
else if (
sizeof(
int) <=
sizeof(
unsigned long)) {
27329 return PyLong_FromUnsignedLong((
unsigned long) value);
27330#if !CYTHON_COMPILING_IN_PYPY
27331 }
else if (
sizeof(
int) <=
sizeof(
unsigned PY_LONG_LONG)) {
27332 return PyLong_FromUnsignedLongLong((
unsigned PY_LONG_LONG) value);
27336 if (
sizeof(
int) <=
sizeof(
long)) {
27337 return PyLong_FromLong((
long) value);
27338 }
else if (
sizeof(
int) <=
sizeof(PY_LONG_LONG)) {
27339 return PyLong_FromLongLong((PY_LONG_LONG) value);
27343 unsigned char *bytes = (
unsigned char *)&value;
27344#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4
27346 return PyLong_FromUnsignedNativeBytes(bytes,
sizeof(value), -1);
27348 return PyLong_FromNativeBytes(bytes,
sizeof(value), -1);
27350#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000
27351 int one = 1;
int little = (int)*(
unsigned char *)&one;
27352 return _PyLong_FromByteArray(bytes,
sizeof(
int),
27353 little, !is_unsigned);
27355 int one = 1;
int little = (int)*(
unsigned char *)&one;
27356 PyObject *result = NULL, *kwds = NULL;
27357 PyObject *py_bytes = NULL, *order_str = NULL, *from_bytes_str = NULL;;
27358 py_bytes = PyBytes_FromStringAndSize((
char*)bytes,
sizeof(
int));
27359 if (!py_bytes)
goto limited_bad;
27360 from_bytes_str = PyUnicode_FromStringAndSize(
"from_bytes", 10);
27361 if (!from_bytes_str)
goto limited_bad;
27362 order_str = PyUnicode_FromString(little ?
"little" :
"big");
27363 if (!order_str)
goto limited_bad;
27365 PyObject *args[] = { (PyObject*)&PyLong_Type, py_bytes, order_str, Py_True };
27366 if (!is_unsigned) {
27367 PyObject *signed_str = PyUnicode_FromStringAndSize(
"signed", 6);
27368 if (!signed_str)
goto limited_bad;
27369#if CYTHON_VECTORCALL
27370 kwds = PyTuple_Pack(1, signed_str);
27373 PyObject *keys[] = {signed_str};
27374 PyObject *values[] = {Py_True};
27375 kwds = __Pyx_MakeKwargDict(keys, values, 1);
27378 Py_DECREF(signed_str);
27379 if (unlikely(!kwds))
goto limited_bad;
27381 result = __Pyx_Object_VectorcallMethodKwds(from_bytes_str, args, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds);
27385 Py_XDECREF(order_str);
27386 Py_XDECREF(py_bytes);
27387 Py_XDECREF(from_bytes_str);
27394static CYTHON_INLINE PyObject* __Pyx_PyLong_From_long(
long value) {
27395#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27396#pragma GCC diagnostic push
27397#pragma GCC diagnostic ignored "-Wconversion"
27399 const long neg_one = (long) -1, const_zero = (
long) 0;
27400#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27401#pragma GCC diagnostic pop
27403 const int is_unsigned = neg_one > const_zero;
27405 if (
sizeof(
long) <
sizeof(
long)) {
27406 return PyLong_FromLong((
long) value);
27407 }
else if (
sizeof(
long) <=
sizeof(
unsigned long)) {
27408 return PyLong_FromUnsignedLong((
unsigned long) value);
27409#if !CYTHON_COMPILING_IN_PYPY
27410 }
else if (
sizeof(
long) <=
sizeof(
unsigned PY_LONG_LONG)) {
27411 return PyLong_FromUnsignedLongLong((
unsigned PY_LONG_LONG) value);
27415 if (
sizeof(
long) <=
sizeof(
long)) {
27416 return PyLong_FromLong((
long) value);
27417 }
else if (
sizeof(
long) <=
sizeof(PY_LONG_LONG)) {
27418 return PyLong_FromLongLong((PY_LONG_LONG) value);
27422 unsigned char *bytes = (
unsigned char *)&value;
27423#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d00A4
27425 return PyLong_FromUnsignedNativeBytes(bytes,
sizeof(value), -1);
27427 return PyLong_FromNativeBytes(bytes,
sizeof(value), -1);
27429#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000
27430 int one = 1;
int little = (int)*(
unsigned char *)&one;
27431 return _PyLong_FromByteArray(bytes,
sizeof(
long),
27432 little, !is_unsigned);
27434 int one = 1;
int little = (int)*(
unsigned char *)&one;
27435 PyObject *result = NULL, *kwds = NULL;
27436 PyObject *py_bytes = NULL, *order_str = NULL, *from_bytes_str = NULL;;
27437 py_bytes = PyBytes_FromStringAndSize((
char*)bytes,
sizeof(
long));
27438 if (!py_bytes)
goto limited_bad;
27439 from_bytes_str = PyUnicode_FromStringAndSize(
"from_bytes", 10);
27440 if (!from_bytes_str)
goto limited_bad;
27441 order_str = PyUnicode_FromString(little ?
"little" :
"big");
27442 if (!order_str)
goto limited_bad;
27444 PyObject *args[] = { (PyObject*)&PyLong_Type, py_bytes, order_str, Py_True };
27445 if (!is_unsigned) {
27446 PyObject *signed_str = PyUnicode_FromStringAndSize(
"signed", 6);
27447 if (!signed_str)
goto limited_bad;
27448#if CYTHON_VECTORCALL
27449 kwds = PyTuple_Pack(1, signed_str);
27452 PyObject *keys[] = {signed_str};
27453 PyObject *values[] = {Py_True};
27454 kwds = __Pyx_MakeKwargDict(keys, values, 1);
27457 Py_DECREF(signed_str);
27458 if (unlikely(!kwds))
goto limited_bad;
27460 result = __Pyx_Object_VectorcallMethodKwds(from_bytes_str, args, 3 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET, kwds);
27464 Py_XDECREF(order_str);
27465 Py_XDECREF(py_bytes);
27466 Py_XDECREF(from_bytes_str);
27473static long __Pyx_LargePyLong___Pyx_PyLong_As_long(PyObject *x);
27474static long __Pyx_raise_neg_overflow___Pyx_PyLong_As_long(
void) {
27475 const char* type_name =
"long";
27476 PyErr_Format(PyExc_OverflowError,
27477 "can't convert negative value to %.200s", type_name);
27480static long __Pyx_raise_overflow___Pyx_PyLong_As_long(
void) {
27481 const char* type_name =
"long";
27482 PyErr_Format(PyExc_OverflowError,
27483 "value too large to convert to %.200s", type_name);
27486static CYTHON_INLINE
long __Pyx_PyULong___Pyx_PyLong_As_long(PyObject *x) {
27487 const int is_unsigned = 1;
27488#if CYTHON_USE_PYLONG_INTERNALS
27490 const digit* digits = __Pyx_PyLong_Digits(x);
27491 const Py_ssize_t size = __Pyx_PyLong_DigitCount(x);
27492 if (size == 2 && (8 *
sizeof(
long) > 1 * PyLong_SHIFT)) {
27493 if ((8 *
sizeof(
unsigned long) > 2 * PyLong_SHIFT)) {
27494 __PYX_VERIFY_RETURN_INT(
long,
unsigned long, (((((
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27495 }
else if ((8 *
sizeof(
long) >= 2 * PyLong_SHIFT)) {
27496 return (
long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
27499 if (size == 3 && (8 *
sizeof(
long) > 2 * PyLong_SHIFT)) {
27500 if ((8 *
sizeof(
unsigned long) > 3 * PyLong_SHIFT)) {
27501 __PYX_VERIFY_RETURN_INT(
long,
unsigned long, (((((((
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27502 }
else if ((8 *
sizeof(
long) >= 3 * PyLong_SHIFT)) {
27503 return (
long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
27506 if (size == 4 && (8 *
sizeof(
long) > 3 * PyLong_SHIFT)) {
27507 if ((8 *
sizeof(
unsigned long) > 4 * PyLong_SHIFT)) {
27508 __PYX_VERIFY_RETURN_INT(
long,
unsigned long, (((((((((
unsigned long)digits[3]) << PyLong_SHIFT) | (
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27509 }
else if ((8 *
sizeof(
long) >= 4 * PyLong_SHIFT)) {
27510 return (
long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
27515#elif CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7
27516 if (unlikely(Py_SIZE(x) < 0)) {
27517 goto raise_neg_overflow;
27521 int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
27522 if (unlikely(result < 0))
27524 if (unlikely(result == 1))
27525 goto raise_neg_overflow;
27528 if ((
sizeof(
long) <=
sizeof(
unsigned long))) {
27529 __PYX_VERIFY_RETURN_INT_EXC(
long,
unsigned long, PyLong_AsUnsignedLong(x))
27530 }
else if ((
sizeof(
long) <=
sizeof(
unsigned PY_LONG_LONG))) {
27531 __PYX_VERIFY_RETURN_INT_EXC(
long,
unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
27533 return __Pyx_LargePyLong___Pyx_PyLong_As_long(x);
27535 return __Pyx_raise_neg_overflow___Pyx_PyLong_As_long();
27537 return __Pyx_raise_overflow___Pyx_PyLong_As_long();
27539static CYTHON_INLINE
long __Pyx_PySLong___Pyx_PyLong_As_long(PyObject *x) {
27540 const int is_unsigned = 0;
27541#if CYTHON_USE_PYLONG_INTERNALS
27542 if (__Pyx_PyLong_IsNeg(x)) {
27543 const Py_ssize_t size = __Pyx_PyLong_DigitCount(x);
27544 const digit* digits = __Pyx_PyLong_Digits(x);
27545 if (size == 2 && (8 *
sizeof(
long) > 1 * PyLong_SHIFT)) {
27546 if ((8 *
sizeof(
long) > 2 * PyLong_SHIFT)) {
27547 long ival = - (long) (((((
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0]));
27548 __PYX_VERIFY_RETURN_INT(
long,
long, ival)
27549 }
else if ((8 *
sizeof(
long) - 1 > 2 * PyLong_SHIFT)) {
27550 return (
long) (((long) -1) * (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
27553 if (size == 3 && (8 *
sizeof(
long) > 2 * PyLong_SHIFT)) {
27554 if ((8 *
sizeof(
long) > 3 * PyLong_SHIFT)) {
27555 long ival = - (long) (((((((
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0]));
27556 __PYX_VERIFY_RETURN_INT(
long,
long, ival)
27557 }
else if ((8 *
sizeof(
long) - 1 > 3 * PyLong_SHIFT)) {
27558 return (
long) (((long) -1) * (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
27561 if (size == 4 && (8 *
sizeof(
long) > 3 * PyLong_SHIFT)) {
27562 if ((8 *
sizeof(
long) > 4 * PyLong_SHIFT)) {
27563 long ival = - (long) (((((((((
unsigned long)digits[3]) << PyLong_SHIFT) | (
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0]));
27564 __PYX_VERIFY_RETURN_INT(
long,
long, ival)
27565 }
else if ((8 *
sizeof(
long) - 1 > 4 * PyLong_SHIFT)) {
27566 return (
long) (((long) -1) * (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
27571 const Py_ssize_t size = __Pyx_PyLong_DigitCount(x);
27572 const digit* digits = __Pyx_PyLong_Digits(x);
27573 if (size == 2 && (8 *
sizeof(
long) > 1 * PyLong_SHIFT)) {
27574 if ((8 *
sizeof(
long) > 2 * PyLong_SHIFT)) {
27575 __PYX_VERIFY_RETURN_INT(
long,
unsigned long, (((((
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27576 }
else if ((8 *
sizeof(
long) - 1 > 2 * PyLong_SHIFT)) {
27577 return (
long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
27580 if (size == 3 && (8 *
sizeof(
long) > 2 * PyLong_SHIFT)) {
27581 if ((8 *
sizeof(
long) > 3 * PyLong_SHIFT)) {
27582 __PYX_VERIFY_RETURN_INT(
long,
unsigned long, (((((((
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27583 }
else if ((8 *
sizeof(
long) - 1 > 3 * PyLong_SHIFT)) {
27584 return (
long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
27587 if (size == 4 && (8 *
sizeof(
long) > 3 * PyLong_SHIFT)) {
27588 if ((8 *
sizeof(
long) > 4 * PyLong_SHIFT)) {
27589 __PYX_VERIFY_RETURN_INT(
long,
unsigned long, (((((((((
unsigned long)digits[3]) << PyLong_SHIFT) | (
unsigned long)digits[2]) << PyLong_SHIFT) | (
unsigned long)digits[1]) << PyLong_SHIFT) | (
unsigned long)digits[0])))
27590 }
else if ((8 *
sizeof(
long) - 1 > 4 * PyLong_SHIFT)) {
27591 return (
long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
27597 #if __PYX_LIMITED_VERSION_HEX >= 0x030d0000
27598 if ((
sizeof(
long) <=
sizeof(
int)) && (
sizeof(
int) <
sizeof(
long))) {
27599 __PYX_VERIFY_RETURN_INT_EXC(
long,
int, PyLong_AsInt(x))
27602 if ((
sizeof(
long) <=
sizeof(
long))) {
27603 __PYX_VERIFY_RETURN_INT_EXC(
long,
long, PyLong_AsLong(x))
27604 }
else if ((
sizeof(
long) <=
sizeof(PY_LONG_LONG))) {
27605 __PYX_VERIFY_RETURN_INT_EXC(
long, PY_LONG_LONG, PyLong_AsLongLong(x))
27607 return __Pyx_LargePyLong___Pyx_PyLong_As_long(x);
27609 return __Pyx_raise_neg_overflow___Pyx_PyLong_As_long();
27611 return __Pyx_raise_overflow___Pyx_PyLong_As_long();
27613static long __Pyx_LargePyLong___Pyx_PyLong_As_long(PyObject *x) {
27614#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27615#pragma GCC diagnostic push
27616#pragma GCC diagnostic ignored "-Wconversion"
27618 const long neg_one = (long) -1, const_zero = (
long) 0;
27619#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27620#pragma GCC diagnostic pop
27622 const int is_unsigned = neg_one > const_zero;
27625#if PY_VERSION_HEX >= 0x030d00A6 && !CYTHON_COMPILING_IN_LIMITED_API
27626 Py_ssize_t bytes_copied = PyLong_AsNativeBytes(
27627 x, &val,
sizeof(val), Py_ASNATIVEBYTES_NATIVE_ENDIAN | (is_unsigned ? Py_ASNATIVEBYTES_UNSIGNED_BUFFER | Py_ASNATIVEBYTES_REJECT_NEGATIVE : 0));
27628 if (unlikely(bytes_copied == -1)) {
27629 }
else if (unlikely(bytes_copied > (Py_ssize_t)
sizeof(val))) {
27630 goto raise_overflow;
27634#elif PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
27635 int one = 1;
int is_little = (int)*(
unsigned char *)&one;
27636 unsigned char *bytes = (
unsigned char *)&val;
27637 ret = _PyLong_AsByteArray((PyLongObject *)x,
27638 bytes,
sizeof(val),
27639 is_little, !is_unsigned);
27640 if ((0))
goto raise_overflow;
27643 PyObject *stepval = NULL, *mask = NULL, *shift = NULL;
27644 int bits, remaining_bits, is_negative = 0;
27645 int chunk_size = (
sizeof(long) < 8) ? 30 : 62;
27646 if (likely(PyLong_CheckExact(x))) {
27647 v = __Pyx_NewRef(x);
27649 v = PyNumber_Long(x);
27650 if (unlikely(!
v))
return (
long) -1;
27651 assert(PyLong_CheckExact(
v));
27654 int result = PyObject_RichCompareBool(
v, Py_False, Py_LT);
27655 if (unlikely(result < 0)) {
27659 is_negative = result == 1;
27661 if (is_unsigned && unlikely(is_negative)) {
27663 PyErr_SetString(PyExc_OverflowError,
27664 "can't convert negative value to long");
27666 }
else if (is_negative) {
27667 stepval = PyNumber_Invert(
v);
27669 if (unlikely(!stepval))
27676 mask = PyLong_FromLong((1L << chunk_size) - 1);
if (unlikely(!mask))
goto done;
27677 shift = PyLong_FromLong(chunk_size);
if (unlikely(!shift))
goto done;
27678 for (bits = 0; bits < (int)
sizeof(long) * 8 - chunk_size; bits += chunk_size) {
27679 PyObject *tmp, *digit;
27681 digit = PyNumber_And(stepval, mask);
27682 if (unlikely(!digit))
goto done;
27683 idigit = PyLong_AsLong(digit);
27685 if (unlikely(idigit < 0))
goto done;
27686 val |= ((long) idigit) << bits;
27687 tmp = PyNumber_Rshift(stepval, shift);
27688 if (unlikely(!tmp))
goto done;
27689 Py_DECREF(stepval); stepval = tmp;
27691 Py_DECREF(shift); shift = NULL;
27692 Py_DECREF(mask); mask = NULL;
27694 long idigit = PyLong_AsLong(stepval);
27695 if (unlikely(idigit < 0))
goto done;
27696 remaining_bits = ((int)
sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1);
27697 if (unlikely(idigit >= (1L << remaining_bits)))
27698 goto raise_overflow;
27699 val |= ((long) idigit) << bits;
27701 if (!is_unsigned) {
27702 if (unlikely(val & (((
long) 1) << (
sizeof(
long) * 8 - 1))))
27703 goto raise_overflow;
27711 Py_XDECREF(stepval);
27717 return __Pyx_raise_overflow___Pyx_PyLong_As_long();
27719static CYTHON_INLINE
long __Pyx_PyLong___Pyx_PyLong_As_long(PyObject *x) {
27720#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27721#pragma GCC diagnostic push
27722#pragma GCC diagnostic ignored "-Wconversion"
27724 const long neg_one = (long) -1, const_zero = (
long) 0;
27725#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
27726#pragma GCC diagnostic pop
27728 const int is_unsigned = neg_one > const_zero;
27730 #if CYTHON_USE_PYLONG_INTERNALS
27731 if (unlikely(__Pyx_PyLong_IsNeg(x))) {
27732 goto raise_neg_overflow;
27733 }
else if (__Pyx_PyLong_IsCompact(x)) {
27734 __PYX_VERIFY_RETURN_INT(
long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x))
27738 return __Pyx_PyULong___Pyx_PyLong_As_long(x);
27741 #if CYTHON_USE_PYLONG_INTERNALS
27742 if (__Pyx_PyLong_IsCompact(x)) {
27743 __PYX_VERIFY_RETURN_INT(
long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x))
27747 return __Pyx_PySLong___Pyx_PyLong_As_long(x);
27750#if CYTHON_USE_PYLONG_INTERNALS
27752 return __Pyx_raise_neg_overflow___Pyx_PyLong_As_long();
27754 return __Pyx_raise_overflow___Pyx_PyLong_As_long();
27757static long __Pyx_NonPyLong___Pyx_PyLong_As_long(PyObject *x) {
27759 PyObject *tmp = __Pyx_PyNumber_Long(x);
27760 if (!tmp)
return (
long) -1;
27761 val = __Pyx_PyLong_As_long(tmp);
27765static CYTHON_INLINE
long __Pyx_PyLong_As_long(PyObject *x) {
27766 if (likely(PyLong_Check(x))) {
27767 return __Pyx_PyLong___Pyx_PyLong_As_long(x);
27769 return __Pyx_NonPyLong___Pyx_PyLong_As_long(x);
27774#if __PYX_LIMITED_VERSION_HEX < 0x030b0000
27775void __Pyx_init_runtime_version(
void) {
27776 if (__Pyx_cached_runtime_version == 0) {
27777 const char* rt_version = Py_GetVersion();
27778 unsigned long version = 0;
27779 unsigned long factor = 0x01000000UL;
27780 unsigned int digit = 0;
27783 while (
'0' <= rt_version[i] && rt_version[i] <=
'9') {
27784 digit = digit * 10 + (
unsigned int) (rt_version[i] -
'0');
27787 version += factor * digit;
27788 if (rt_version[i] !=
'.')
27794 __Pyx_cached_runtime_version = version;
27798static unsigned long __Pyx_get_runtime_version(
void) {
27799#if __PYX_LIMITED_VERSION_HEX >= 0x030b0000
27800 return Py_Version & ~0xFFUL;
27802 return __Pyx_cached_runtime_version;
27807static int __Pyx_check_binary_version(
unsigned long ct_version,
unsigned long rt_version,
int allow_newer) {
27808 const unsigned long MAJOR_MINOR = 0xFFFF0000UL;
27809 if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR))
27811 if (likely(allow_newer && (rt_version & MAJOR_MINOR) > (ct_version & MAJOR_MINOR)))
27815 PyOS_snprintf(message,
sizeof(message),
27816 "compile time Python version %d.%d "
27817 "of module '%.100s' "
27819 "runtime version %d.%d",
27820 (
int) (ct_version >> 24), (
int) ((ct_version >> 16) & 0xFF),
27822 (allow_newer) ?
"was newer than" :
"does not match",
27823 (
int) (rt_version >> 24), (
int) ((rt_version >> 16) & 0xFF)
27825 return PyErr_WarnEx(NULL, message, 1);
27830#if CYTHON_COMPILING_IN_LIMITED_API
27831 static PyObject* __Pyx__PyCode_New(
int a,
int p,
int k,
int l,
int s,
int f,
27832 PyObject *code, PyObject *
c, PyObject*
n, PyObject *
v,
27833 PyObject *fv, PyObject *cell, PyObject* fn,
27834 PyObject *name,
int fline, PyObject *lnos) {
27835 PyObject *exception_table = NULL;
27836 PyObject *types_module=NULL, *code_type=NULL, *result=NULL;
27837 #if __PYX_LIMITED_VERSION_HEX < 0x030b0000
27838 PyObject *version_info;
27839 PyObject *py_minor_version = NULL;
27841 long minor_version = 0;
27842 #if __PYX_LIMITED_VERSION_HEX >= 0x030b0000
27843 minor_version = 11;
27845 if (!(version_info = PySys_GetObject(
"version_info")))
goto end;
27846 if (!(py_minor_version = PySequence_GetItem(version_info, 1)))
goto end;
27847 minor_version = PyLong_AsLong(py_minor_version);
27848 Py_DECREF(py_minor_version);
27849 if (minor_version == -1 && PyErr_Occurred())
goto end;
27851 if (!(types_module = PyImport_ImportModule(
"types")))
goto end;
27852 if (!(code_type = PyObject_GetAttrString(types_module,
"CodeType")))
goto end;
27853 if (minor_version <= 10) {
27854 result = PyObject_CallFunction(code_type,
"iiiiiiOOOOOOiOOO", a,p, k, l,
s,
f, code,
27855 c,
n,
v, fn, name, fline, lnos, fv, cell);
27857 if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0)))
goto end;
27858 result = PyObject_CallFunction(code_type,
"iiiiiiOOOOOOOiOOOO", a,p, k, l,
s,
f, code,
27859 c,
n,
v, fn, name, name, fline, lnos, exception_table, fv, cell);
27862 Py_XDECREF(code_type);
27863 Py_XDECREF(exception_table);
27864 Py_XDECREF(types_module);
27866 PyObject *exc_type, *exc_value, *exc_tb;
27867 PyErr_Fetch(&exc_type, &exc_value, &exc_tb);
27868 if (PyErr_WarnFormat(
27869 PyExc_RuntimeWarning, 1,
27870 "Code object creation failed in Cython module: %S\nTry recompiling with a more recent version of Cython.",
27871 exc_value ? exc_value : exc_type) == 0) {
27875 Py_DECREF(exc_type);
27876 Py_XDECREF(exc_value);
27877 Py_XDECREF(exc_tb);
27881#elif PY_VERSION_HEX >= 0x030B0000
27882 static PyCodeObject* __Pyx__PyCode_New(
int a,
int p,
int k,
int l,
int s,
int f,
27883 PyObject *code, PyObject *
c, PyObject*
n, PyObject *
v,
27884 PyObject *fv, PyObject *cell, PyObject* fn,
27885 PyObject *name,
int fline, PyObject *lnos) {
27886 PyCodeObject *result;
27888 #if PY_VERSION_HEX >= 0x030C0000
27889 PyUnstable_Code_NewWithPosOnlyArgs
27891 PyCode_NewWithPosOnlyArgs
27893 (a, p, k, l,
s,
f, code,
c,
n,
v, fv, cell, fn, name, name, fline, lnos, __pyx_mstate_global->__pyx_empty_bytes);
27894 #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030c00A1
27895 if (likely(result))
27896 result->_co_firsttraceable = 0;
27900#elif !CYTHON_COMPILING_IN_PYPY
27901 #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
27902 PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
27904 #define __Pyx__PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
27905 PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
27907static PyObject* __Pyx_PyCode_New(
27908 const __Pyx_PyCode_New_function_description descr,
27909 PyObject *
const *varnames,
27910 PyObject *filename,
27911 PyObject *funcname,
27912 PyObject *line_table,
27913 PyObject *tuple_dedup_map
27915 PyObject *code_obj = NULL, *varnames_tuple_dedup = NULL, *code_bytes = NULL;
27916 Py_ssize_t var_count = (Py_ssize_t) descr.nlocals;
27917 PyObject *varnames_tuple = PyTuple_New(var_count);
27918 if (unlikely(!varnames_tuple))
return NULL;
27919 for (Py_ssize_t i=0; i < var_count; i++) {
27920 Py_INCREF(varnames[i]);
27921 if (__Pyx_PyTuple_SET_ITEM(varnames_tuple, i, varnames[i]) != (0))
goto done;
27923 #if CYTHON_COMPILING_IN_LIMITED_API
27924 varnames_tuple_dedup = PyDict_GetItem(tuple_dedup_map, varnames_tuple);
27925 if (!varnames_tuple_dedup) {
27926 if (unlikely(PyDict_SetItem(tuple_dedup_map, varnames_tuple, varnames_tuple) < 0))
goto done;
27927 varnames_tuple_dedup = varnames_tuple;
27930 varnames_tuple_dedup = PyDict_SetDefault(tuple_dedup_map, varnames_tuple, varnames_tuple);
27931 if (unlikely(!varnames_tuple_dedup))
goto done;
27933 #if CYTHON_AVOID_BORROWED_REFS
27934 Py_INCREF(varnames_tuple_dedup);
27936 if (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table != NULL && !CYTHON_COMPILING_IN_GRAAL) {
27937 Py_ssize_t line_table_length = __Pyx_PyBytes_GET_SIZE(line_table);
27938 #if !CYTHON_ASSUME_SAFE_SIZE
27939 if (unlikely(line_table_length == -1))
goto done;
27941 Py_ssize_t code_len = (line_table_length * 2 + 4) & ~3LL;
27942 code_bytes = PyBytes_FromStringAndSize(NULL, code_len);
27943 if (unlikely(!code_bytes))
goto done;
27944 char* c_code_bytes = PyBytes_AsString(code_bytes);
27945 if (unlikely(!c_code_bytes))
goto done;
27946 memset(c_code_bytes, 0, (
size_t) code_len);
27948 code_obj = (PyObject*) __Pyx__PyCode_New(
27949 (
int) descr.argcount,
27950 (
int) descr.num_posonly_args,
27951 (
int) descr.num_kwonly_args,
27952 (
int) descr.nlocals,
27955 code_bytes ? code_bytes : __pyx_mstate_global->__pyx_empty_bytes,
27956 __pyx_mstate_global->__pyx_empty_tuple,
27957 __pyx_mstate_global->__pyx_empty_tuple,
27958 varnames_tuple_dedup,
27959 __pyx_mstate_global->__pyx_empty_tuple,
27960 __pyx_mstate_global->__pyx_empty_tuple,
27963 (
int) descr.first_line,
27964 (__PYX_LIMITED_VERSION_HEX >= (0x030b0000) && line_table) ? line_table : __pyx_mstate_global->__pyx_empty_bytes
27967 Py_XDECREF(code_bytes);
27968 #if CYTHON_AVOID_BORROWED_REFS
27969 Py_XDECREF(varnames_tuple_dedup);
27971 Py_DECREF(varnames_tuple);
27977static CYTHON_SMALL_CODE PyObject *__Pyx_DecompressString(
const char *
s, Py_ssize_t length,
int algo) {
27978#ifdef __Pyx_DecompressString_UNUSED
27979 CYTHON_UNUSED_VAR(
s);
27980 CYTHON_UNUSED_VAR(length);
27981 CYTHON_UNUSED_VAR(algo);
27984 PyObject *module = NULL, *decompress, *compressed_bytes, *decompressed;
27985 const char* module_name = algo == 3 ?
"compression.zstd" : algo == 2 ?
"bz2" :
"zlib";
27986 PyObject *methodname = PyUnicode_FromString(
"decompress");
27987 if (unlikely(!methodname))
return NULL;
27988 #if __PYX_LIMITED_VERSION_HEX >= 0x030e0000
27990 PyObject *fromlist = Py_BuildValue(
"[O]", methodname);
27991 if (unlikely(!fromlist))
goto bad;
27992 module = PyImport_ImportModuleLevel("compression.zstd", NULL, NULL, fromlist, 0);
27993 Py_DECREF(fromlist);
27996 module = PyImport_ImportModule(module_name);
27997 if (unlikely(!module))
goto import_failed;
27998 decompress = PyObject_GetAttr(module, methodname);
27999 if (unlikely(!decompress))
goto import_failed;
28002 char *memview_bytes =
const_cast<char*
>(
s);
28004 #if defined(__clang__)
28005 #pragma clang diagnostic push
28006 #pragma clang diagnostic ignored "-Wcast-qual"
28007 #elif !defined(__INTEL_COMPILER) && defined(__GNUC__)
28008 #pragma GCC diagnostic push
28009 #pragma GCC diagnostic ignored "-Wcast-qual"
28011 char *memview_bytes = (
char*)
s;
28012 #if defined(__clang__)
28013 #pragma clang diagnostic pop
28014 #elif !defined(__INTEL_COMPILER) && defined(__GNUC__)
28015 #pragma GCC diagnostic pop
28018 #if CYTHON_COMPILING_IN_LIMITED_API && !defined(PyBUF_READ)
28019 int memview_flags = 0x100;
28021 int memview_flags = PyBUF_READ;
28023 compressed_bytes = PyMemoryView_FromMemory(memview_bytes, length, memview_flags);
28025 if (unlikely(!compressed_bytes)) {
28026 Py_DECREF(decompress);
28029 decompressed = PyObject_CallFunctionObjArgs(decompress, compressed_bytes, NULL);
28030 Py_DECREF(compressed_bytes);
28031 Py_DECREF(decompress);
28033 Py_DECREF(methodname);
28034 return decompressed;
28036 PyErr_Format(PyExc_ImportError,
28037 "Failed to import '%.20s.decompress' - cannot initialise module strings. "
28038 "String compression was configured with the C macro 'CYTHON_COMPRESS_STRINGS=%d'.",
28039 module_name, algo);
28041 Py_XDECREF(module);
28042 Py_DECREF(methodname);
28048#ifndef __Pyx_DecompressString_LZSS_UNUSED
28050static CYTHON_SMALL_CODE
size_t __pyx_lzss_decompress(
const uint8_t* src, uint8_t* dst,
size_t dst_len) {
28051 size_t pos = 0, out_pos = 0;
28053 uint32_t flags = src[pos++] | 0xFF00;
28054 while (flags & 0x100) {
28056 dst[out_pos++] = src[pos++];
28058 uint32_t lo = src[pos++], hi = src[pos++];
28059 uint32_t end_offset_of_last_occurrence, match_length;
28060 if (!(lo & 0x80)) {
28061 end_offset_of_last_occurrence = lo;
28063 }
else if (!(hi & 0x80)) {
28064 end_offset_of_last_occurrence = 0x80 + (((hi << 2) & 0x180) | (lo & 0x7F));
28065 match_length = hi & 0x1F;
28067 end_offset_of_last_occurrence = 0x80 + ((hi & 0x7F) << 7 | (lo & 0x7F));
28068 match_length = src[pos++];
28071 size_t ref_pos = out_pos - end_offset_of_last_occurrence - match_length;
28072 memcpy(dst + out_pos, dst + ref_pos, match_length);
28073 out_pos += match_length;
28075 if (out_pos >= dst_len)
return pos;
28081static CYTHON_SMALL_CODE PyObject *__Pyx_DecompressString_LZSS(
const char *
s,
size_t compressed_length,
size_t uncompressed_length) {
28082#ifdef __Pyx_DecompressString_LZSS_UNUSED
28083 CYTHON_UNUSED_VAR(
s);
28084 CYTHON_UNUSED_VAR(compressed_length);
28085 CYTHON_UNUSED_VAR(uncompressed_length);
28089 unsigned char *result_data;
28091 result = PyBytes_FromStringAndSize(NULL, (Py_ssize_t) uncompressed_length);
28092 if (unlikely(!result))
return NULL;
28093 result_data = __Pyx_PyBytes_AsWritableUString(result);
28094 if (unlikely(!result_data))
goto bad;
28095 src_length = __pyx_lzss_decompress((
const uint8_t*)
s, result_data, uncompressed_length);
28096 if (unlikely(src_length != compressed_length))
goto decompression_failed;
28098decompression_failed:
28099 PyErr_SetString(PyExc_RuntimeError,
"LZSS string data decompression failed");
28107static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(
const char *
s) {
28108 size_t len = strlen(
s);
28109 if (unlikely(len > (
size_t) PY_SSIZE_T_MAX)) {
28110 PyErr_SetString(PyExc_OverflowError,
"byte string is too long");
28113 return (Py_ssize_t) len;
28115static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(
const char* c_str) {
28116 Py_ssize_t len = __Pyx_ssize_strlen(c_str);
28117 if (unlikely(len < 0))
return NULL;
28118 return __Pyx_PyUnicode_FromStringAndSize(c_str, len);
28120static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(
const char* c_str) {
28121 Py_ssize_t len = __Pyx_ssize_strlen(c_str);
28122 if (unlikely(len < 0))
return NULL;
28123 return PyByteArray_FromStringAndSize(c_str, len);
28125static CYTHON_INLINE
const char* __Pyx_PyObject_AsString(PyObject* o) {
28127 return __Pyx_PyObject_AsStringAndSize(o, &ignore);
28129#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8
28130static CYTHON_INLINE
const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
28131 if (unlikely(__Pyx_PyUnicode_READY(o) == -1))
return NULL;
28132#if CYTHON_COMPILING_IN_LIMITED_API
28134 const char* result;
28135 Py_ssize_t unicode_length;
28136 CYTHON_MAYBE_UNUSED_VAR(unicode_length);
28137 #if __PYX_LIMITED_VERSION_HEX < 0x030A0000
28138 if (unlikely(PyArg_Parse(o,
"s#", &result, length) < 0))
return NULL;
28140 result = PyUnicode_AsUTF8AndSize(o, length);
28142 #if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
28143 unicode_length = PyUnicode_GetLength(o);
28144 if (unlikely(unicode_length < 0))
return NULL;
28145 if (unlikely(unicode_length != *length)) {
28146 PyUnicode_AsASCIIString(o);
28153#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
28154 if (likely(PyUnicode_IS_ASCII(o))) {
28155 *length = PyUnicode_GET_LENGTH(o);
28156 return PyUnicode_AsUTF8(o);
28158 PyUnicode_AsASCIIString(o);
28162 return PyUnicode_AsUTF8AndSize(o, length);
28167static CYTHON_INLINE
const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
28168#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_UTF8
28169 if (PyUnicode_Check(o)) {
28170 return __Pyx_PyUnicode_AsStringAndSize(o, length);
28173 if (PyByteArray_Check(o)) {
28174#if (CYTHON_ASSUME_SAFE_SIZE && CYTHON_ASSUME_SAFE_MACROS) || (CYTHON_COMPILING_IN_PYPY && (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE)))
28175 *length = PyByteArray_GET_SIZE(o);
28176 return PyByteArray_AS_STRING(o);
28178 *length = PyByteArray_Size(o);
28179 if (*length == -1)
return NULL;
28180 return PyByteArray_AsString(o);
28185 int r = PyBytes_AsStringAndSize(o, &result, length);
28186 if (unlikely(
r < 0)) {
28193static CYTHON_INLINE
int __Pyx_PyObject_IsTrue(PyObject* x) {
28194 int is_true = x == Py_True;
28195 if (is_true | (x == Py_False) | (x == Py_None))
return is_true;
28196 else return PyObject_IsTrue(x);
28198static CYTHON_INLINE
int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) {
28200 if (unlikely(!x))
return -1;
28201 retval = __Pyx_PyObject_IsTrue(x);
28205static PyObject* __Pyx_PyNumber_LongWrongResultType(PyObject* result) {
28206 __Pyx_TypeName result_type_name = __Pyx_PyType_GetFullyQualifiedName(Py_TYPE(result));
28207 #if CYTHON_COMPILING_IN_LIMITED_API && __PYX_LIMITED_VERSION_HEX < 0x030d0000
28208 if (unlikely(!result_type_name))
goto bad;
28210 if (PyLong_Check(result)) {
28211 if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1,
28212 "__int__ returned non-int (type " __Pyx_FMT_TYPENAME
"). "
28213 "The ability to return an instance of a strict subclass of int is deprecated, "
28214 "and may be removed in a future version of Python.",
28215 result_type_name)) {
28216 __Pyx_DECREF_TypeName(result_type_name);
28219 __Pyx_DECREF_TypeName(result_type_name);
28222 PyErr_Format(PyExc_TypeError,
28223 "__int__ returned non-int (type " __Pyx_FMT_TYPENAME
")",
28225 __Pyx_DECREF_TypeName(result_type_name);
28230static CYTHON_INLINE PyObject* __Pyx_PyNumber_Long(PyObject* x) {
28231#if CYTHON_USE_TYPE_SLOTS
28232 PyNumberMethods *m;
28234 PyObject *res = NULL;
28235 if (likely(PyLong_Check(x)))
28236 return __Pyx_NewRef(x);
28237#if CYTHON_USE_TYPE_SLOTS
28238 m = Py_TYPE(x)->tp_as_number;
28239 if (likely(m && m->nb_int)) {
28240 res = m->nb_int(x);
28243 if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) {
28244 res = PyNumber_Long(x);
28248 if (unlikely(!PyLong_CheckExact(res))) {
28249 return __Pyx_PyNumber_LongWrongResultType(res);
28252 else if (!PyErr_Occurred()) {
28253 PyErr_SetString(PyExc_TypeError,
28254 "an integer is required");
28258static CYTHON_INLINE Py_ssize_t __Pyx_PyLong_AsSsize_t(PyObject* b) {
28259 #if CYTHON_USE_PYLONG_INTERNALS
28261 const Py_ssize_t size = __Pyx_PyLong_DigitCount(b);
28262 const int is_neg = __Pyx_PyLong_IsNeg(b);
28263 const digit* digits = __Pyx_PyLong_Digits(b);
28264 if (size == 0)
return 0;
28265 #if SIZEOF_SIZE_T * 8 > 1 * PyLong_SHIFT
28267 ival = (Py_ssize_t) (((
size_t)digits[0]));
28270 #if SIZEOF_SIZE_T * 8 > 2 * PyLong_SHIFT
28272 ival = (Py_ssize_t) (((((
size_t)digits[1]) << PyLong_SHIFT) | (
size_t)digits[0]));
28275 #if SIZEOF_SIZE_T * 8 > 3 * PyLong_SHIFT
28277 ival = (Py_ssize_t) (((((((
size_t)digits[2]) << PyLong_SHIFT) | (
size_t)digits[1]) << PyLong_SHIFT) | (
size_t)digits[0]));
28280 #if SIZEOF_SIZE_T * 8 > 4 * PyLong_SHIFT
28282 ival = (Py_ssize_t) (((((((((
size_t)digits[3]) << PyLong_SHIFT) | (
size_t)digits[2]) << PyLong_SHIFT) | (
size_t)digits[1]) << PyLong_SHIFT) | (
size_t)digits[0]));
28285 return PyLong_AsSsize_t(b);
28286 return is_neg ? -ival : ival;
28288 return PyLong_AsSsize_t(b);
28291static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
28292 if (likely(PyLong_Check(b))) {
28293 return __Pyx_PyLong_AsSsize_t(b);
28296 PyObject *x = PyNumber_Index(b);
28297 if (unlikely(!x))
return -1;
28298 ival = __Pyx_PyLong_AsSsize_t(x);
28303static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject* o) {
28304 if (
sizeof(Py_hash_t) ==
sizeof(Py_ssize_t)) {
28305 return (Py_hash_t) __Pyx_PyIndex_AsSsize_t(o);
28309 x = PyNumber_Index(o);
28311 ival = PyLong_AsLong(x);
28316static CYTHON_INLINE PyObject *__Pyx_Owned_Py_None(
int b) {
28317 CYTHON_UNUSED_VAR(b);
28318 return __Pyx_NewRef(Py_None);
28320static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(
long b) {
28321 return __Pyx_NewRef(b ? Py_True: Py_False);
28323static CYTHON_INLINE PyObject * __Pyx_PyLong_FromSize_t(
size_t ival) {
28324 return PyLong_FromSize_t(ival);
28329#if CYTHON_PEP489_MULTI_PHASE_INIT && CYTHON_USE_MODULE_STATE
28330#ifndef CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28331#if (CYTHON_COMPILING_IN_LIMITED_API || PY_VERSION_HEX >= 0x030C0000)
28332 #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 1
28334 #define CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE 0
28337#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE && !CYTHON_ATOMICS
28338#error "Module state with PEP489 requires atomics. Currently that's one of\
28339 C11, C++11, gcc atomic intrinsics or MSVC atomic intrinsics"
28341#if !CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28342#define __Pyx_ModuleStateLookup_Lock()
28343#define __Pyx_ModuleStateLookup_Unlock()
28344#elif !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX >= 0x030d0000
28345static PyMutex __Pyx_ModuleStateLookup_mutex = {0};
28346#define __Pyx_ModuleStateLookup_Lock() PyMutex_Lock(&__Pyx_ModuleStateLookup_mutex)
28347#define __Pyx_ModuleStateLookup_Unlock() PyMutex_Unlock(&__Pyx_ModuleStateLookup_mutex)
28348#elif defined(__cplusplus) && __cplusplus >= 201103L
28350static std::mutex __Pyx_ModuleStateLookup_mutex;
28351#define __Pyx_ModuleStateLookup_Lock() __Pyx_ModuleStateLookup_mutex.lock()
28352#define __Pyx_ModuleStateLookup_Unlock() __Pyx_ModuleStateLookup_mutex.unlock()
28353#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ > 201112L) && !defined(__STDC_NO_THREADS__)
28354#include <threads.h>
28355static mtx_t __Pyx_ModuleStateLookup_mutex;
28356static once_flag __Pyx_ModuleStateLookup_mutex_once_flag = ONCE_FLAG_INIT;
28357static void __Pyx_ModuleStateLookup_initialize_mutex(
void) {
28358 mtx_init(&__Pyx_ModuleStateLookup_mutex, mtx_plain);
28360#define __Pyx_ModuleStateLookup_Lock()\
28361 call_once(&__Pyx_ModuleStateLookup_mutex_once_flag, __Pyx_ModuleStateLookup_initialize_mutex);\
28362 mtx_lock(&__Pyx_ModuleStateLookup_mutex)
28363#define __Pyx_ModuleStateLookup_Unlock() mtx_unlock(&__Pyx_ModuleStateLookup_mutex)
28364#elif defined(HAVE_PTHREAD_H)
28365#include <pthread.h>
28366static pthread_mutex_t __Pyx_ModuleStateLookup_mutex = PTHREAD_MUTEX_INITIALIZER;
28367#define __Pyx_ModuleStateLookup_Lock() pthread_mutex_lock(&__Pyx_ModuleStateLookup_mutex)
28368#define __Pyx_ModuleStateLookup_Unlock() pthread_mutex_unlock(&__Pyx_ModuleStateLookup_mutex)
28369#elif defined(_WIN32)
28370#include <Windows.h>
28371static SRWLOCK __Pyx_ModuleStateLookup_mutex = SRWLOCK_INIT;
28372#define __Pyx_ModuleStateLookup_Lock() AcquireSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex)
28373#define __Pyx_ModuleStateLookup_Unlock() ReleaseSRWLockExclusive(&__Pyx_ModuleStateLookup_mutex)
28375#error "No suitable lock available for CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE.\
28376 Requires C standard >= C11, or C++ standard >= C++11,\
28377 or pthreads, or the Windows 32 API, or Python >= 3.13."
28382} __Pyx_InterpreterIdAndModule;
28384 char interpreter_id_as_index;
28386 Py_ssize_t allocated;
28387 __Pyx_InterpreterIdAndModule table[1];
28388} __Pyx_ModuleStateLookupData;
28389#define __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE 32
28390#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28391static __pyx_atomic_int_type __Pyx_ModuleStateLookup_read_counter = 0;
28393#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28394static __pyx_atomic_ptr_type __Pyx_ModuleStateLookup_data = 0;
28396static __Pyx_ModuleStateLookupData* __Pyx_ModuleStateLookup_data = NULL;
28398static __Pyx_InterpreterIdAndModule* __Pyx_State_FindModuleStateLookupTableLowerBound(
28399 __Pyx_InterpreterIdAndModule* table,
28401 int64_t interpreterId) {
28402 __Pyx_InterpreterIdAndModule* begin = table;
28403 __Pyx_InterpreterIdAndModule* end = begin + count;
28404 if (begin->id == interpreterId) {
28407 while ((end - begin) > __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) {
28408 __Pyx_InterpreterIdAndModule* halfway = begin + (end - begin)/2;
28409 if (halfway->id == interpreterId) {
28412 if (halfway->id < interpreterId) {
28418 for (; begin < end; ++begin) {
28419 if (begin->id >= interpreterId)
return begin;
28423static PyObject *__Pyx_State_FindModule(CYTHON_UNUSED
void* dummy) {
28424 int64_t interpreter_id = PyInterpreterState_GetID(PyInterpreterState_Get());
28425 if (interpreter_id == -1)
return NULL;
28426#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28427 __Pyx_ModuleStateLookupData* data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data);
28429 __pyx_atomic_incr_acq_rel(&__Pyx_ModuleStateLookup_read_counter);
28430 if (likely(data)) {
28431 __Pyx_ModuleStateLookupData* new_data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_acquire(&__Pyx_ModuleStateLookup_data);
28432 if (likely(data == new_data)) {
28433 goto read_finished;
28436 __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter);
28437 __Pyx_ModuleStateLookup_Lock();
28438 __pyx_atomic_incr_relaxed(&__Pyx_ModuleStateLookup_read_counter);
28439 data = (__Pyx_ModuleStateLookupData*)__pyx_atomic_pointer_load_relaxed(&__Pyx_ModuleStateLookup_data);
28440 __Pyx_ModuleStateLookup_Unlock();
28444 __Pyx_ModuleStateLookupData* data = __Pyx_ModuleStateLookup_data;
28446 __Pyx_InterpreterIdAndModule* found = NULL;
28447 if (unlikely(!data))
goto end;
28448 if (data->interpreter_id_as_index) {
28449 if (interpreter_id < data->count) {
28450 found = data->table+interpreter_id;
28453 found = __Pyx_State_FindModuleStateLookupTableLowerBound(
28454 data->table, data->count, interpreter_id);
28458 PyObject *result=NULL;
28459 if (found && found->id == interpreter_id) {
28460 result = found->module;
28462#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28463 __pyx_atomic_decr_acq_rel(&__Pyx_ModuleStateLookup_read_counter);
28468#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28469static void __Pyx_ModuleStateLookup_wait_until_no_readers(
void) {
28470 while (__pyx_atomic_load(&__Pyx_ModuleStateLookup_read_counter) != 0);
28473#define __Pyx_ModuleStateLookup_wait_until_no_readers()
28475static int __Pyx_State_AddModuleInterpIdAsIndex(__Pyx_ModuleStateLookupData **old_data, PyObject* module, int64_t interpreter_id) {
28476 Py_ssize_t to_allocate = (*old_data)->allocated;
28477 while (to_allocate <= interpreter_id) {
28478 if (to_allocate == 0) to_allocate = 1;
28479 else to_allocate *= 2;
28481 __Pyx_ModuleStateLookupData *new_data = *old_data;
28482 if (to_allocate != (*old_data)->allocated) {
28483 new_data = (__Pyx_ModuleStateLookupData *)realloc(
28485 sizeof(__Pyx_ModuleStateLookupData)+(to_allocate-1)*
sizeof(__Pyx_InterpreterIdAndModule));
28490 for (Py_ssize_t i = new_data->allocated; i < to_allocate; ++i) {
28491 new_data->table[i].id = i;
28492 new_data->table[i].module = NULL;
28494 new_data->allocated = to_allocate;
28496 new_data->table[interpreter_id].module =
module;
28497 if (new_data->count < interpreter_id+1) {
28498 new_data->count = interpreter_id+1;
28500 *old_data = new_data;
28503static void __Pyx_State_ConvertFromInterpIdAsIndex(__Pyx_ModuleStateLookupData *data) {
28504 __Pyx_InterpreterIdAndModule *read = data->table;
28505 __Pyx_InterpreterIdAndModule *write = data->table;
28506 __Pyx_InterpreterIdAndModule *end = read + data->count;
28507 for (; read<end; ++read) {
28508 if (read->module) {
28509 write->id = read->id;
28510 write->module = read->module;
28514 data->count = write - data->table;
28515 for (; write<end; ++write) {
28517 write->module = NULL;
28519 data->interpreter_id_as_index = 0;
28521static int __Pyx_State_AddModule(PyObject* module, CYTHON_UNUSED
void* dummy) {
28522 int64_t interpreter_id = PyInterpreterState_GetID(PyInterpreterState_Get());
28523 if (interpreter_id == -1)
return -1;
28525 __Pyx_ModuleStateLookup_Lock();
28526#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28527 __Pyx_ModuleStateLookupData *old_data = (__Pyx_ModuleStateLookupData *)
28528 __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0);
28530 __Pyx_ModuleStateLookupData *old_data = __Pyx_ModuleStateLookup_data;
28532 __Pyx_ModuleStateLookupData *new_data = old_data;
28534 new_data = (__Pyx_ModuleStateLookupData *)calloc(1,
sizeof(__Pyx_ModuleStateLookupData));
28540 new_data->allocated = 1;
28541 new_data->interpreter_id_as_index = 1;
28543 __Pyx_ModuleStateLookup_wait_until_no_readers();
28544 if (new_data->interpreter_id_as_index) {
28545 if (interpreter_id < __PYX_MODULE_STATE_LOOKUP_SMALL_SIZE) {
28546 result = __Pyx_State_AddModuleInterpIdAsIndex(&new_data, module, interpreter_id);
28549 __Pyx_State_ConvertFromInterpIdAsIndex(new_data);
28552 Py_ssize_t insert_at = 0;
28554 __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound(
28555 new_data->table, new_data->count, interpreter_id);
28556 assert(lower_bound);
28557 insert_at = lower_bound - new_data->table;
28558 if (unlikely(insert_at < new_data->count && lower_bound->id == interpreter_id)) {
28559 lower_bound->module =
module;
28563 if (new_data->count+1 >= new_data->allocated) {
28564 Py_ssize_t to_allocate = (new_data->count+1)*2;
28566 (__Pyx_ModuleStateLookupData*)realloc(
28568 sizeof(__Pyx_ModuleStateLookupData) +
28569 (to_allocate-1)*
sizeof(__Pyx_InterpreterIdAndModule));
28572 new_data = old_data;
28576 new_data->allocated = to_allocate;
28579 int64_t last_id = interpreter_id;
28580 PyObject *last_module =
module;
28581 for (Py_ssize_t i=insert_at; i<new_data->count; ++i) {
28582 int64_t current_id = new_data->table[i].id;
28583 new_data->table[i].id = last_id;
28584 last_id = current_id;
28585 PyObject *current_module = new_data->table[i].module;
28586 new_data->table[i].module = last_module;
28587 last_module = current_module;
28591#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28592 __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, new_data);
28594 __Pyx_ModuleStateLookup_data = new_data;
28596 __Pyx_ModuleStateLookup_Unlock();
28599static int __Pyx_State_RemoveModule(CYTHON_UNUSED
void* dummy) {
28600 int64_t interpreter_id = PyInterpreterState_GetID(PyInterpreterState_Get());
28601 if (interpreter_id == -1)
return -1;
28602 __Pyx_ModuleStateLookup_Lock();
28603#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28604 __Pyx_ModuleStateLookupData *data = (__Pyx_ModuleStateLookupData *)
28605 __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, 0);
28607 __Pyx_ModuleStateLookupData *data = __Pyx_ModuleStateLookup_data;
28609 if (data->interpreter_id_as_index) {
28610 if (interpreter_id < data->count) {
28611 data->table[interpreter_id].module = NULL;
28616 __Pyx_ModuleStateLookup_wait_until_no_readers();
28617 __Pyx_InterpreterIdAndModule* lower_bound = __Pyx_State_FindModuleStateLookupTableLowerBound(
28618 data->table, data->count, interpreter_id);
28619 if (!lower_bound)
goto done;
28620 if (lower_bound->id != interpreter_id)
goto done;
28621 __Pyx_InterpreterIdAndModule *end = data->table+data->count;
28622 for (;lower_bound<end-1; ++lower_bound) {
28623 lower_bound->id = (lower_bound+1)->
id;
28624 lower_bound->module = (lower_bound+1)->module;
28628 if (data->count == 0) {
28633#if CYTHON_MODULE_STATE_LOOKUP_THREAD_SAFE
28634 __pyx_atomic_pointer_exchange(&__Pyx_ModuleStateLookup_data, data);
28636 __Pyx_ModuleStateLookup_data = data;
28638 __Pyx_ModuleStateLookup_Unlock();
28645#pragma warning( pop )
void calculateConservationResidualPWL(int nElements_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nNodes_element, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, int *elementNodes, int *nodeStarElements, int *nodeStarElementNeighbors, int *nodeStarOffsets, int *nElements_node, double *elementResidual, double *vAverage, double *starU, double *dX, double *w, double *normal, double *conservationResidual, double *starR, double *vConservative, double *vConservative_element)
void calculateConservationFluxPWL(int nNodes_global, int nNodes_internal, int *nElements_node, int *nodeStarOffsets, int *nodeStarJacobianOffsets, int *internalNodes, double *starR, double *starJ, double *starU)
void calculateConservationResidualGlobalBoundaries(int nElements_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nNodes_element, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, double *dS, double *normal, double *elementResidual, double *velocity, double *conservationResidual)
void calculateConservationJacobianPWL(int nNodes_global, int nNodes_internal, int nElements_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nNodes_element, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, int *elementNodes, int *nodeStarElements, int *nodeStarElementNeighbors, int *nodeStarOffsets, int *nodeStarJacobianOffsets, int *nElements_node, int *internalNodes, double *w, double *normal, double *starJacobian)
void calculateConservationResidualPWL_opt(int nNodes_owned, int nElements_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nNodes_element, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, int *elementNodes, int *nodeStarElements, int *nodeStarElementNeighbors, int *nElements_node, int *fluxElementBoundaries, double *elementResidual, double *vAverage, double *dX, double *w, double *normal, NodeStarFactorStruct *nodeStarFactor, double *conservationResidual, double *vConservative, double *vConservative_element)
void calculateConservationResidualPWL_primative(int nElements_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nNodes_element, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, int *skipflag_elementBoundaries, double *elementResidual, double *dX, double *normal, double *conservationResidual, double *vConservative)
void updateSelectedExteriorElementBoundaryFlux(int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nDOF_test_element, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, int *skipflag_elementBoundaries, double *flux, double *w_dS, double *residual)
Update the element boundary flux on exterior element boundaries.
void calculateConservationJacobianPWL_interiorBoundaries(int nNodes_global, int nElements_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nNodes_element, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, int *elementNodes, int *nodeStarElements, int *nodeStarElementNeighbors, int *nElements_node, int *fluxElementBoundaries, double *w, double *normal, NodeStarFactorStruct *nodeStarFactor)
void getElementBoundaryBDM1velocityValuesLagrangeRep(int nElements_global, int nBoundaries_Element, int nQuadraturePoints_elementBoundary, int nSpace, int nDOF_trial_element, int nVDOF_element, int *elementBoundaryElementsArray, int *exteriorElementBoundariesArray, double *ebq_v, double *p1_velocity_dofs, double *ebq_velocity)
void calculateConservationFluxPWL_noNeumannFix(int nNodes_global, int *nElements_node, NodeStarFactorStruct *nodeStarFactor)
void getElementBoundaryRT0velocityValues(int nElements_global, int nElementBoundaries_element, int nPoints_elementBoundary, int nSpace, double *x_elementBoundary, double *rt0vdofs_element, double *v_elementBoundary)
void getGlobalExteriorElementBoundaryBDM1velocityValuesLagrangeRep(int nExteriorElementBoundaries_global, int nQuadraturePoints_elementBoundary, int nSpace, int nDOF_trial_element, int nVDOF_element, int *elementBoundaryElementsArray, int *exteriorElementBoundariesArray, double *ebqe_v, double *p1_velocity_dofs, double *ebqe_velocity)
void updateRT0velocityWithAveragedPotentialP1nc(int nElements_global, int nQuadraturePoints_element, int nSpace, double *detJ, double *quad_a, double *phi, double *gradphi, double *a, double *rt0vdofs)
int nodeStar_init(int nElements_global, int nNodes_element, int nNodes_global, int *nElements_node, int *nodeStarElementsArray, int *nodeStarElementNeighborsArray, int *N_p, int **subdomain_dim_p, double ***subdomain_L_p, double ***subdomain_R_p, double ***subdomain_U_p, PROTEUS_LAPACK_INTEGER ***subdomain_pivots_p, PROTEUS_LAPACK_INTEGER ***subdomain_column_pivots_p)
void solveLocalBDM2projection(int nElements_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int nDOFs_test_element, int nVDOFs_element, double *BDMprojectionMatFact_element, int *BDMprojectionMatPivots_element, double *w_dS_f, double *ebq_n, double *w_interior_gradients, double *q_velocity, double *ebq_velocity, double *p1_velocity_dofs)
void postProcessRT0velocityFromP1nc(int nElements_global, int nQuadraturePoints_element, int nDOF_test_element, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int *nFreeDOF_element, int *freeLocal_element, double *detJ, double *sqrt_det_g, double *n, double *elementBarycenters, double *quad_a, double *quad_f, double *w_dV_r, double *w_dV_m, double *u, double *gradu, double *a, double *f, double *r, double *mt, double *rt0vdofs)
void postProcessRT0velocityFromP1ncNoMass_sd(int nElements_global, int nQuadraturePoints_element, int nDOF_test_element, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int *rowptr, int *colind, int *nFreeDOF_element, int *freeLocal_element, double *detJ, double *sqrt_det_g, double *n, double *elementBarycenters, double *quad_a, double *quad_f, double *w_dV_r, double *u, double *gradu, double *a, double *f, double *r, double *rt0vdofs)
int nodeStar_copy(int other_N, int *other_subdomain_dim, double **other_subdomain_L, double **other_subdomain_R, double **other_subdomain_U, PROTEUS_LAPACK_INTEGER **other_subdomain_pivots, PROTEUS_LAPACK_INTEGER **other_subdomain_column_pivots, int *N_p, int **subdomain_dim_p, double ***subdomain_L_p, double ***subdomain_R_p, double ***subdomain_U_p, PROTEUS_LAPACK_INTEGER ***subdomain_pivots_p, PROTEUS_LAPACK_INTEGER ***subdomain_column_pivots_p)
void solveLocalBDM1projectionFromFlux(int nElements_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nDOFs_test_element, int nVDOFs_element, double *BDMprojectionMatFact_element, int *BDMprojectionMatPivots_element, int *elementBoundaryElementsArray, int *elementBoundariesArray, double *w_dS_f, double *ebq_global_flux, double *p1_velocity_dofs)
void computeFluxCorrectionPWC(int nElementBoundaries_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, double *pwcW, double *pwcV, double *fluxCorrection)
void fluxCorrectionVelocityUpdate(int nElements_global, int nElementBoundaries_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, double *dS, double *normal, double *fluxCorrection, double *vConservative, double *vConservative_element)
void postprocessDiffusiveVelocityPointEval(int nPoints, int nSpace, double updateCoef, const double *a, const double *grad_phi, double *velocity)
void getGlobalExteriorElementBoundaryRT0velocityValues(int nExteriorElementBoundaries_global, int nPoints_elementBoundary, int nSpace, int *elementBoundaryElementsArray, int *exteriorElementBoundariesArray, double *x_elementBoundary_global, double *rt0vdofs_element, double *v_elementBoundary_global)
void getGlobalExteriorElementBoundaryRT0velocityValuesFluxRep(int nExteriorElementBoundaries_global, int nPoints_elementBoundary_global, int nSpace, int nDetVals_element, double *nodeArray, int *elementNodesArray, int *elementBoundaryElementsArray, int *exteriorElementBoundariesArray, double *abs_det_J, double *x_ebqe, double *rt0vdofs_element, double *v_ebqe)
void getElementRT0velocityValues(int nElements_global, int nPoints_element, int nSpace, double *x_element, double *rt0vdofs_element, double *v_element)
void calculateElementResidualPWL(int nElements, int nDOF_element_res, int nDOF_element_resPWL, double *alpha, double *elementResidual, double *elementResidualPWL)
void postProcessRT0velocityFromP1ncNoMass(int nElements_global, int nQuadraturePoints_element, int nDOF_test_element, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int *nFreeDOF_element, int *freeLocal_element, double *detJ, double *sqrt_det_g, double *n, double *elementBarycenters, double *quad_a, double *quad_f, double *w_dV_r, double *u, double *gradu, double *a, double *f, double *r, double *rt0vdofs)
void subdomain_U_copy_local2global(int max_nN_owned, int nElements_global, int nNodes_element, int *elementNodes, int *nodeStarElements, NodeStarFactorStruct *nodeStarFactor, double *subdomain_U)
void postprocessAdvectiveVelocityPointEval(int nPoints, int nSpace, double updateCoef, const double *f, double *velocity)
void getElementBDM2velocityValuesLagrangeRep(int nElements_global, int nQuadraturePoints_element, int nSpace, int nDOF_trial_element, int nVDOF_element, double *q_v, double *p1_velocity_dofs, double *q_velocity)
void getElementBoundaryRT0velocityValuesFluxRep(int nElements_global, int nElementBoundaries_element, int nPoints_elementBoundary, int nSpace, int nDetVals_element, double *nodeArray, int *elementNodesArray, double *abs_det_J, double *x_elementBoundary, double *rt0vdofs_element, double *v_elementBoundary)
void postProcessRT0velocityFromP1nc_sd(int nElements_global, int nQuadraturePoints_element, int nDOF_test_element, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int *rowptr, int *colind, int *nFreeDOF_element, int *freeLocal_element, double *detJ, double *sqrt_det_g, double *n, double *elementBarycenters, double *quad_a, double *quad_f, double *w_dV_r, double *w_dV_m, double *u, double *gradu, double *a, double *f, double *r, double *mt, double *rt0vdofs)
void getElementBDM1velocityValuesLagrangeRep(int nElements_global, int nQuadraturePoints_element, int nSpace, int nDOF_trial_element, int nVDOF_element, double *q_v, double *p1_velocity_dofs, double *q_velocity)
void calculateConservationResidualPWL_interiorBoundaries(int nElements_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nNodes_element, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, int *elementNodes, int *nodeStarElements, int *nodeStarElementNeighbors, int *nElements_node, int *fluxElementBoundaries, double *elementResidual, double *vAverage, double *dX, double *w, double *normal, NodeStarFactorStruct *nodeStarFactor, double *conservationResidual, double *vConservative, double *vConservative_element)
void getGlobalElementBoundaryRT0velocityValuesFluxRep(int nElementBoundaries_global, int nPoints_elementBoundary_global, int nSpace, int nDetVals_element, double *nodeArray, int *elementNodesArray, int *elementBoundaryElementsArray, double *abs_det_J, double *x_elementBoundary_global, double *rt0vdofs_element, double *v_elementBoundary_global)
void sunWheelerGSsweep(int nElements_global, int nElementBoundaries_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, double *dS, double *normal, double *sqrt_det_g, double *alpha, double *fluxCorrection, double *conservationResidual)
void buildBDM2rhs(int nElements_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nQuadraturePoints_elementInterior, int nSpace, int nDOFs_test_element, int nVDOFs_element, int nDOFs_trial_interior_element, double *BDMprojectionMatFact_element, int *BDMprojectionMatPivots_element, int *edgeFlags, double *w_dS_f, double *ebq_n, double *w_interior_grads, double *w_interior_divfree, double *ebq_velocity, double *q_velocity, double *p1_velocity_dofs)
void postProcessRT0potentialFromP1nc_sd(int nElements_global, int nQuadraturePoints_element, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int *rowptr, int *colind, double *uQuadratureWeights_element, double *elementBarycenters, double *aElementQuadratureWeights, double *detJ, double *uQuadratureWeights_elementBoundary, double *x, double *u, double *gradu, double *x_elementBoundary, double *u_elementBoundary, double *n, double *a, double *f, double *r, double *rt0vdofs, double *rt0potential)
void buildLocalBDM2projectionMatrices(int degree, int nElements_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nQuadraturePoints_elementInterior, int nSpace, int nDOFs_test_element, int nDOFs_trial_boundary_element, int nDOFs_trial_interior_element, int nVDOFs_element, int *edgeFlags, double *w_dS_f, double *ebq_n, double *ebq_v, double *BDMprojectionMat_element, double *q_basis_vals, double *w_int_test_grads, double *w_int_div_free, double *piola_trial_fun)
void subdomain_U_copy_global2local(int max_nN_owned, int nElements_global, int nNodes_element, int *elementNodes, int *nodeStarElements, NodeStarFactorStruct *nodeStarFactor, double *subdomain_U)
void getRT0velocityValuesFluxRep_arbitraryElementMembership(int nElements_global, int nElementBoundaries_element, int nPoints, int nSpace, int nDetVals_element, const double *nodeArray, const int *elementNodesArray, const double *abs_det_J, const double *x, const int *element_locations, const double *rt0vdofs_element, double *v_element)
void updateRT0velocityWithAveragedPotentialP1nc_sd(int nElements_global, int nQuadraturePoints_element, int nSpace, int *rowptr, int *colind, double *detJ, double *quad_a, double *phi, double *gradphi, double *a, double *rt0vdofs)
void projectElementBoundaryFluxToRT0fluxRep(int nElements_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nDOF_RT0V_element, int *elementBoundaryElementsArray, int *elementBoundariesArray, double *elementBoundaryQuadratureWeights, double *flux_elementBoundary, double *rt0vdofs_element)
void solveLocalBDM1projection(int nElements_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int nDOFs_test_element, int nVDOFs_element, double *BDMprojectionMatFact_element, int *BDMprojectionMatPivots_element, double *w_dS_f, double *ebq_n, double *ebq_velocity, double *p1_velocity_dofs)
void factorLocalBDM1projectionMatrices(int nElements_global, int nVDOFs_element, double *BDMprojectionMat_element, int *BDMprojectionMatPivots_element)
void buildLocalBDM1projectionMatrices(int nElements_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, int nDOFs_test_element, int nDOFs_trial_element, int nVDOFs_element, double *w_dS_f, double *ebq_n, double *ebq_v, double *BDMprojectionMat_element)
void getElementLDGvelocityValuesLagrangeRep(int nElements_global, int nQuadraturePoints_element, int nSpace, int nDOF_trial_element, int nVDOF_element, double *q_v, double *velocity_dofs, double *q_velocity)
void getElementRT0velocityValuesFluxRep(int nElements_global, int nElementBoundaries_element, int nPoints_element, int nSpace, int nDetVals_element, double *nodeArray, int *elementNodesArray, double *abs_det_J, double *x_element, double *rt0vdofs_element, double *v_element)
void postprocessDiffusiveVelocityPointEval_sd(int nPoints, int nSpace, double updateCoef, int *rowptr, int *colind, const double *a, const double *grad_phi, double *velocity)
void factorLocalBDM2projectionMatrices(int nElements_global, int nVDOFs_element, double *BDMprojectionMat_element, int *BDMprojectionMatPivots_element)
void projectElementBoundaryVelocityToRT0fluxRep(int nElements_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, double *elementBoundaryQuadratureWeights, double *n, double *v_elementBoundary, double *rt0vdofs_element)
void calculateConservationJacobianPWL_opt(int nNodes_owned, int nNodes_global, int nNodes_internal, int nElements_global, int nInteriorElementBoundaries_global, int nExteriorElementBoundaries_global, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nNodes_element, int nSpace, int *interiorElementBoundaries, int *exteriorElementBoundaries, int *elementBoundaryElements, int *elementBoundaryLocalElementBoundaries, int *elementNodes, int *nodeStarElements, int *nodeStarElementNeighbors, int *nElements_node, int *internalNodes, int *fluxElementBoundaries, int *fluxBoundaryNodes, double *w, double *normal, NodeStarFactorStruct *nodeStarFactor)
int nodeStar_free(int N, int *subdomain_dim, double **subdomain_L, double **subdomain_R, double **subdomain_U, PROTEUS_LAPACK_INTEGER **subdomain_pivots, PROTEUS_LAPACK_INTEGER **subdomain_column_pivots)
void getGlobalElementBoundaryRT0velocityValues(int nElementBoundaries_global, int nPoints_elementBoundary, int nSpace, int *elementBoundaryElementsArray, double *x_elementBoundary_global, double *rt0vdofs_element, double *v_elementBoundary_global)
void postProcessRT0potentialFromP1nc(int nElements_global, int nQuadraturePoints_element, int nElementBoundaries_element, int nQuadraturePoints_elementBoundary, int nSpace, double *uQuadratureWeights_element, double *elementBarycenters, double *aElementQuadratureWeights, double *detJ, double *uQuadratureWeights_elementBoundary, double *x, double *u, double *gradu, double *x_elementBoundary, double *u_elementBoundary, double *n, double *a, double *f, double *r, double *rt0vdofs, double *rt0potential)
void calculateConservationFluxPWL_opt(int nNodes_owned, int nNodes_global, int nNodes_internal, int *nElements_node, int *internalNodes, int *fluxBoundaryNodes, NodeStarFactorStruct *nodeStarFactor)
Python interface to velocity postprocessing library.